yolov5制作docker镜像并在容器中使用

说明:本教程为将yolov5制作为docker镜像,通过容器实现yolov5的调用。

一、建立包含yolov5所需库的dockerfile,基于普通深度学习dockerfile修改,具体dockerfile文件内容如下:

# 继承PyTorch的cuda镜像
FROM pytorch/pytorch:1.11.0-cuda11.3-cudnn8-devel

LABEL maintainer = "787255035@qq.com"
LABEL version = "0.2"
LABEL description = "prepare deep learning environment"

# 指定docker镜像中,默认的工作路径是/PD
WORKDIR /home/lwf/PD/yolov5

COPY ./yolov5/ /home/lwf/PD/yolov5/

RUN rm /etc/apt/sources.list.d/cuda.list \
    && rm /etc/apt/sources.list.d/nvidia-ml.list \
    && apt-get update \
    && pip config set global.index-url https://pypi.douban.com/simple/ \
    && apt install -y libgl1-mesa-glx \
    && apt-get install -y libglib2.0-dev \
    && pip install gitpython>=3.1.30 \
    && pip install pandas==2.0.0 \
    && pip install seaborn==0.12.2 \
    matplotlib>=3.3 \
    numpy>=1.18.5 \
    opencv-python==4.6.0.66 \
    #    opencv-python-headless \
    Pillow>=7.1. \
    psutil  # system resources \
    PyYAML>=5.3.1 \
    requests>=2.23.0 \
    scipy>=1.4.1 \
    thop>=0.1.1  # FLOPs computation \
    torch>=1.7.0  # see https://pytorch.org/get-started/locally (recommended) \
    torchvision>=0.8.1 \
    tqdm>=4.64.0 \
    setuptools>=65.5.1 # Snyk vulnerability fix \
        prefetch_generator

以上文件中COPY ./yolov5/ /home/lwf/PD/yolov5/实现将本地dockerfile所在当前文件夹下的yolov5工程拷贝至镜像中,为后期实现数据与代码互相隔离。

二、在当前文件夹下开启终端,运行以下指令制作镜像:

docker build -t lwf/pd:1.0 .

需要对库进行下载,等待镜像制作完成,使用docker images指令查看是否制作成功。

三、创建容器,对需要宿主机链接的文件进行链接:

docker run -it --gpus all -v /home/nvidia/Liuwf/docker_work/PestDetection/input_img:/home/lwf/PD/yolov5/input_img -v /home/nvidia/Liuwf/docker_work/PestDetection/output_path:/home/lwf/PD/yolov5/output_path -v /home/nvidia/Liuwf/docker_work/PestDetection/weights:/home/lwf/PD/yolov5/weights lwf/pd:1.0

四、在相应文件夹下放置对应文件后,指令运行代码:

python detect.py --save-txt  #需要保存坐标文件传入此参数--save-txt

对应链接宿主机目录下可查看工程运行后文件。

五、补充:已有容器查看指令

docker ps -a

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
您好!对于训练 YOLOv5Docker 镜像,您可以按照以下步骤进行操作: 1. 首先,确保您已经安装了 Docker 并且具有适当的权限。 2. 下载 YOLOv5 的源代码。您可以在 https://github.com/ultralytics/yolov5 找到它。 3. 进入下载的源代码目录。 4. 创建 Dockerfile 文件。您可以使用文本编辑器创建一个名为 Dockerfile 的文件,并将以下内容添加到文件: ``` FROM pytorch/pytorch:latest WORKDIR /usr/src/app COPY . . RUN pip install -r requirements.txt CMD ["python", "train.py"] ``` 5. 确保在源代码目录存在名为 requirements.txt 的文件,并在其列出所需的依赖项。 6. 打开终端或命令提示符,进入包含 Dockerfile 和源代码的目录。 7. 构建 Docker 镜像。在终端或命令提示符运行以下命令: ``` docker build -t yolov5 . ``` 这将根据 Dockerfile 构建一个名为 yolov5镜像。请确保您在命令末尾有一个点,它指示 Docker 在当前目录查找 Dockerfile。 8. 等待镜像构建完成。这可能需要一些时间,具体取决于您的系统性能和网络速度。 9. 运行 Docker 容器。在终端或命令提示符运行以下命令: ``` docker run -it yolov5 ``` 这将在新的容器启动 yolov5 镜像。 10. 在容器进行 YOLOv5 训练。一旦容器启动,您可以使用适当的命令运行 YOLOv5 的训练脚本。 请注意,这只是一个基本的示例,您可能需要根据自己的需求进行适当的修改和配置。希望这可以帮助到您!如果您有任何其他问题,请随时提问。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值