YOLOv3 快速上手:Windows 10上的训练环境搭建


前言

在当今快速发展的人工智能领域,对象检测技术扮演着重要的角色。YOLOv3,作为一种先进的实时对象检测系统,因其高效性和准确性而备受瞩目。本教程旨在提供一个入门指南,帮助初学者和开发者在Windows 10平台上快速上手YOLOv3。

我们将基于ultralytics/yolov3——一个在GitHub上广受欢迎的YOLOv3实现——来展示如何在Windows 10上搭建完整的训练环境。从创建Python虚拟环境到配置PyCharm,从运行检测代码到解决常见问题,我们将一步步引导完成整个过程,确保即使是没有深度学习背景的入门者也能顺利进行。


一、前期准备

在开始YOLOv3项目之前,确保我们的系统环境和工具准备齐全。以下是启动这个项目所需的基础设施和资源。

  • Windows 10: 确保我们的计算机运行的是Windows 10操作系统。Windows 10提供了稳定的支持和兼容性,适合开发和测试深度学习应用。
  • Anaconda: 使用Anaconda来管理我们的Python环境和依赖。Anaconda是一种流行的Python数据科学平台,它可以让我们方便地创建和管理多个Python环境。这对于在不同项目中使用不同版本的Python和库非常有用。
  • PyCharm: 选择PyCharm作为集成开发环境(IDE)。PyCharm是一个广受欢迎的Python IDE,提供了许多有用的功能,如代码自动完成、项目管理工具和强大的调试选项。它可以大大提高我们的开发效率。
  • 源代码下载: 访问ultralytics yolov3的GitHub页面:https://github.com/ultralytics/yolov3以下载最新的源代码。GitHub页面提供了详尽的文档、安装指南和使用说明,帮助我们更好地了解和使用YOLOv3。
  • 版本检查: 确认我们下载的是最新版本的YOLOv3。可以在项目的GitHub页面查看最新版本信息,目前我们用到的是v9.6.0
    YOLOv3当前版本
  • 预训练模型: 我们在Releases中可以找到yolov3.pt等预训练模型,下载到与源代码相同的目录,以备后用。
    预训练模型

确保在开始之前检查这些要求,可以帮助我们避免在后续的安装和配置过程中遇到不必要的问题。

二、基础环境准备

为了顺利地开始我们的YOLOv3项目,需要首先准备好基础的开发环境。以下是详细的步骤说明:

1. 创建虚拟环境

  • 虚拟环境名称:在Anaconda中创建一个名为ultralytics的虚拟环境。这将有助于隔离我们的项目依赖,确保环境的一致性。
  • Python版本:选择Python的默认版本3.8.18。这个版本是目前流行的稳定版本,ultralytics需求的库和框架都与之兼容。ultralytics环境

2. 打开Terminal

  • 访问Terminal:在Anaconda准备好Python环境后,点击界面上的绿色箭头图标来打开Terminal终端。这将是我们执行后续安装命令的地方。
    打开Terminal

3. 下载YOLOv3运行环境

  • 安装命令:在Terminal中输入命令pip install ultralytics来安装YOLOv3的运行环境。这个命令将会安装所有必要的依赖和库。

  • 使用国内镜像:为了加速下载和安装过程,我们可以使用国内的镜像源。例如,清华大学开源软件镜像站可以提供更快的下载速度。下面是添加镜像的步骤:

    镜像地址:清华大学开源软件镜像站:https://mirror.tuna.tsinghua.edu.cn/help/anaconda/

    添加的镜像源也可以包括:

    • https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
    • https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ 添加镜像
  • 等待安装:命令执行后,耐心等待所有的依赖和库安装完成。等待安装完成
    运行完成

通过完成这些步骤,我们将建立起一个适合YOLOv3项目的稳定和高效的开发环境。这不仅有助于我们更顺利地进行项目的开发和测试,还可以避免因环境问题带来的潜在麻烦。

三、PyCharm关联

在准备好Python和YOLOv3的环境之后,下一步是将这些配置与PyCharm IDE关联起来。这样可以确保在开发过程中的便利性和高效性。

3.1 运行PyCharm

  • 打开PyCharm:首先,找到我们已经下载的YOLOv3代码。在代码文件夹上右击,选择用PyCharm打开。这样可以确保PyCharm正确地识别项目的结构和设置。

    运行PyCharm

3.2 关联Anaconda虚拟环境

  • 访问设置:在PyCharm打开项目后,点击菜单栏的Settings来进入IDE的设置。

    Settings

  • 添加虚拟环境:在设置界面中,选择项目的Python解释器部分,并点击Add来添加一个新的解释器。

    Add

  • 选择已存在的环境:在添加解释器的窗口中,选择“Conda Environment”然后选择“Existing environment”来指定之前在Anaconda中创建的ultralytics虚拟环境。

    Existing environment

    手动寻找环境:如果PyCharm没有自动检测到我们的Anaconda环境,可以点击...按钮来手动浏览并选择对应的Python解释器位置。
    手动选择

通过这些步骤,我们的PyCharm IDE现在将使用Anaconda中的ultralytics虚拟环境,这意味着所有在这个环境中安装的依赖和库都可以在PyCharm中无缝使用。这样的配置有助于保持开发环境整洁且一致。

四、运行环境检查

在开始编程之前,重要的一步是确保所有必需的包和依赖项已经安装并且是最新的。这将确保代码能够在预期的环境中无缝运行。

1. 检查requirements.txt文件

  • 打开文件:首先,打开项目中的requirements.txt文件。这个文件列出了项目运行所需的所有Python包。

  • 检查依赖:查看requirements.txt文件,注意是否有任何未满足的包需求。例如,我们可能会看到类似“Package requirement ‘gitpython>=3.1.30’ is not satisfied”的黄色警告提示。

    requirements.txt

2. 安装依赖

  • 打开Terminal:在PyCharm中,打开底部的Terminal标签页,点击符号,选择Command Prompt。在这里,我们可以直接运行命令来安装和管理Python包。
    Command Prompt

  • 执行安装命令:在Terminal中输入命令pip install -r requirements.txt。这个命令会自动根据requirements.txt文件中列出的包版本来安装或更新它们。
    pip install -r requirements.txt

  • 等待安装完成:安装过程可能需要几分钟时间,取决于网络速度和计算机性能。监视进度并确保没有错误发生。
    等待安装需求

  • 安装完成:当所有的包都安装完毕后,我们会看到安装完成的消息。这意味着Python环境现在已经准备好运行YOLOv3项目了。

安装完成

通过完成这些步骤,我们可以确保项目的Python环境配置正确,这对于接下来的开发和测试工作至关重要。

五、运行代码

在完成环境的准备和配置之后,接下来的步骤是运行YOLOv3的代码来进行对象检测和模型训练。
我们再次检查yolov3.pt是否已经存到了源代码的根目录。
在这里插入图片描述

5.1 运行检测代码

  • 启动检测脚本:在PyCharm中,在项目中,找到detect.py文件。
  • 修改权重文件:将权重文件修改为yolov3.pt
  • 执行脚本:运行这个脚本,它将使用YOLOv3模型对默认的图像进行对象检测。
  • 查看结果:脚本运行完毕后,查看输出。我们应该能看到对象检测的结果。

修改运行检测代码
运行检测代码

检测代码运行结果
检测结果

5.2 运行训练代码

  • 定位训练脚本:在项目中,找到train.py文件。这个文件包含了用于训练YOLOv3模型的代码。
  • 修改权重文件:我们这里以yolov3-tiny.pt为例,下载链接为:https://github.com/ultralytics/yolov3/releases/download/v9.6.0/yolov3-tiny.pt
  • 启动训练过程:运行train.py脚本以开始训练过程。训练过程可能需要一些时间,这取决于我们的数据集大小和计算机的性能。
  • 监视训练进度:在训练过程中,监视输出的日志信息,以了解训练的进度和效果。

定位训练脚本

下载数据集
开始运行训练代码

完成这些步骤后,我们的运行环境就基本完成了。现在可以使用YOLOv3进行有效的对象检测和模型训练。这些步骤提供了实践经验,让我们更加了解如何在实际项目中使用深度学习模型。

六、常见问题

在使用YOLOv3进行项目开发时,我们可能会遇到一些常见的问题。以下是这些问题的简要概述以及如何解决它们的指南。

6.1 ImportError: cannot import name ‘notf’ from ‘tensorboard.compat’

  • 问题描述:当尝试运行YOLOv3代码时,可能会遇到一个错误,提示无法从tensorboard.compat导入notf
  • 可能原因:这个问题通常发生在TensorFlow已经安装在环境中,但与YOLOv3的某些依赖不兼容时。
  • 解决方案
    • 卸载TensorBoard:使用命令pip uninstall tensorboard来卸载TensorBoard。这通常可以解决兼容性问题。
    • 寻找兼容性方案:如果我们需要使用TensorBoard,那么需要寻找与YOLOv3兼容的TensorBoard版本。

6.2 OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized.

  • 问题描述:在安装或运行YOLOv3时,可能会出现一个关于libiomp5md.dll的错误。
  • 可能原因:这个错误可能发生在没有按照正确的顺序安装YOLOv3所需的依赖时。
  • 解决方案
    • 按顺序安装依赖:为了避免这种问题,建议先执行命令pip install ultralytics来安装YOLOv3的基本运行环境,然后再使用pip install -r requirements.txt来安装其他依赖。这样可以确保依赖项的正确安装顺序,减少兼容性问题。

通过理解这些常见问题及其解决方案,我们可以更顺利地进行YOLOv3项目的开发和运行。这些解决方案能够帮助我们克服可能遇到的技术障碍,确保项目的顺利进行。


总结

通过本教程的指引,我们现在应该能够在Windows 10操作系统上顺利地搭建和运行YOLOv3的训练环境。从创建适当的Python虚拟环境、配置PyCharm,到运行检测和训练脚本,以及处理一些常见的问题,我们已经涵盖了整个设置和使用过程的各个方面。希望这些指导能够助我们顺利地开始YOLOv3项目,并在对象检测领域取得显著成果。
记住,实践是学习的关键,因此不断尝试、调整和优化是迈向成功的重要步骤。

猜你喜欢

转载自blog.csdn.net/qq_31463571/article/details/134786919