绍兴市网站建设_网站建设公司_字体设计_seo优化
2025/12/26 14:30:41 网站建设 项目流程

Windows 10下配置Miniconda并训练YOLOv5模型

在深度学习项目中,环境配置往往是第一步,也是最容易“踩坑”的一步。尤其是目标检测这类对依赖和硬件要求较高的任务,一个不稳定的Python环境可能直接导致训练失败或性能下降。如果你正在尝试用YOLOv5做自己的目标检测项目,又卡在了环境搭建阶段——别急,这篇文章就是为你准备的。

我们以Windows 10 系统为平台,采用轻量级的Miniconda管理 Python 3.10 环境,一步步带你完成从零开始部署 YOLOv5 模型,并成功启动训练与推理。整个过程兼顾初学者友好性和工程实用性,特别加入了国内镜像加速、GPU支持验证等关键细节,确保你少走弯路。


安装 Miniconda 并配置 Python 3.10 环境

Miniconda 是 Anaconda 的精简版,只包含conda包管理器和 Python,避免了大量预装库带来的臃肿问题,非常适合用于构建干净、独立的深度学习环境。

前往官网下载适用于 Windows 的 Python 3.10 版本安装包:
👉 https://docs.conda.io/en/latest/miniconda.html

推荐选择64-bit Graphical Installer,双击运行即可安装。

📌 小建议:安装路径尽量不要包含中文字符或空格,比如设为C:\Miniconda3D:\Envs\Miniconda,否则后续调用命令行时可能出现路径解析错误。

安装完成后,系统会自动配置环境变量。打开Anaconda Prompt (Miniconda)PowerShell / CMD,输入以下命令检查是否安装成功:

conda --version

如果返回类似conda 23.x.x的版本号,说明安装成功。


加速下载:更换 Conda 和 Pip 镜像源(清华源)

默认情况下,condapip使用的是国外服务器源,下载速度慢且容易中断。使用清华大学开源软件镜像站可以显著提升包安装效率。

配置 Conda 使用清华源

先执行命令生成.condarc文件:

conda config --set show_channel_urls yes

然后进入用户主目录(通常是C:\Users\你的用户名\),找到.condarc文件并用文本编辑器打开(如 VS Code、Notepad++),写入以下内容:

channels: - defaults show_channel_urls: true default_channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2 custom_channels: conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

保存后清除缓存使配置生效:

conda clean -i
配置 Pip 使用清华源

在用户目录下创建pip文件夹,并在其内部新建文件pip.ini,内容如下:

[global] timeout = 6000 index-url = https://pypi.tuna.tsinghua.edu.cn/simple trusted-host = pypi.tuna.tsinghua.edu.cn

这样所有pip install命令都会优先从清华源拉取,大幅提升安装速度。


创建独立虚拟环境隔离依赖

强烈建议为每个项目创建独立的虚拟环境,防止不同项目的依赖冲突。

创建名为yolov5-env的环境并指定 Python 3.10:

conda create -n yolov5-env python=3.10

激活该环境:

conda activate yolov5-env

确认当前使用的 Python 版本:

python --version

输出应为Python 3.10.x,表示环境已正确切换。


开发工具配置:Jupyter Notebook 的实用技巧

Jupyter Notebook 是交互式开发和实验记录的好帮手,尤其适合调试模型片段或可视化中间结果。

在当前环境中安装 Jupyter:

conda install jupyter notebook

启动服务:

jupyter notebook

浏览器将自动打开页面,默认地址是http://localhost:8888

但要注意:默认内核可能指向全局 Python,而不是我们刚创建的yolov5-env。为了能在 Notebook 中正常使用 YOLOv5 的依赖,需要注册当前环境作为内核:

conda install ipykernel python -m ipykernel install --user --name=yolov5-env --display-name "Python (YOLOv5)"

重启 Jupyter 后,在新建 Notebook 时就可以选择 “Python (YOLOv5)” 内核,确保所有代码都在正确的环境中运行。


远程开发支持:SSH 登录与文件传输

如果你使用的是远程服务器或云主机进行训练(例如阿里云、腾讯云、AWS EC2),可以通过 SSH 安全连接。

Windows 10 自带 OpenSSH 客户端,只需启用即可:

  1. 打开「设置」→「应用」→「可选功能」
  2. 点击「添加功能」,安装 “OpenSSH 客户端”

连接远程主机示例:

ssh username@server_ip -p 22

首次连接会提示信任主机指纹,输入yes继续。

上传本地数据或代码可用scp命令:

scp -r ./yolov5-data username@server_ip:/home/username/data/

更进一步,你可以配置 SSH 密钥认证实现免密码登录,既安全又方便日常操作。


下载并部署 YOLOv5 项目

YOLOv5 是由 Ultralytics 开发的高效目标检测框架,广泛应用于工业质检、智能监控、自动驾驶等领域。

GitHub 地址:👉 https://github.com/ultralytics/yolov5

克隆项目到本地:

git clone https://github.com/ultralytics/yolov5.git cd yolov5

确保此时已激活yolov5-env环境:

conda activate yolov5-env

接下来我们将在这个环境中安装所有必要依赖。


安装依赖与启用 GPU 支持(PyTorch + CUDA)

YOLOv5 的依赖定义在requirements.txt中,首先安装基础包:

pip install -r requirements.txt

注意:这一步默认安装的是 CPU 版本的 PyTorch。如果你有 NVIDIA 显卡并希望利用 GPU 加速训练,必须手动替换为支持 CUDA 的版本。

查看本地 CUDA 支持版本

打开命令行,运行:

nvidia-smi

查看顶部显示的 CUDA Version(例如:12.2)。这个值代表显卡驱动支持的最大 CUDA 版本。

💡 关键点:PyTorch 安装时所用的 CUDA 构建版本不能超过此数值。比如你看到的是 12.2,可以选择cu118(即 CUDA 11.8)版本,但不能选更高版本如cu121

访问 PyTorch 官方稳定版下载页获取对应 whl 文件:
🔗 https://download.pytorch.org/whl/torch_stable.html

查找符合以下条件的.whl文件:
- 平台:win_amd64
- Python 版本:cp310(因为我们使用的是 Python 3.10)
- CUDA 版本:如cu118

假设你已将两个文件下载至F:\downloads\,执行如下命令卸载原版并安装新版本:

pip uninstall torch torchvision torchaudio -y pip install F:\downloads\torch-2.0.1+cu118-cp310-cp310-win_amd64.whl pip install F:\downloads\torchvision-0.15.2+cu118-cp310-cp310-win_amd64.whl

安装完成后,验证 GPU 是否可用:

import torch print(torch.__version__) print(torch.cuda.is_available()) # 应输出 True print(torch.cuda.get_device_name(0))

预期输出:

2.0.1+cu118 True NVIDIA GeForce RTX 3060

恭喜!你现在拥有了完整的 GPU 加速能力,训练速度将大幅提升。


准备数据集与标注格式

YOLOv5 使用归一化后的边界框坐标进行标注,每张图片对应一个.txt文件,格式如下:

<class_id> <x_center> <y_center> <width> <height>

其中所有坐标均相对于图像宽高归一化到[0,1]范围。

建议的数据结构组织方式:

dataset/ ├── images/ │ ├── train/ │ │ ├── img1.jpg │ │ └── ... │ └── val/ │ ├── img2.jpg │ └── ... └── labels/ ├── train/ │ ├── img1.txt │ └── ... └── val/ ├── img2.txt └── ...

创建 YAML 配置文件

yolov5/data/目录下创建自定义配置文件,例如mydata.yaml

# 训练与验证集路径 train: ../dataset/images/train val: ../dataset/images/val # 类别数量 nc: 2 # 类别名称列表 names: ['person', 'car']

✅ 注意:nc必须与names列表长度一致;类别索引从 0 开始。


启动 YOLOv5 模型训练

方式一:使用命令行快速启动

在项目根目录下运行训练脚本:

python train.py \ --img 640 \ --batch 16 \ --epochs 50 \ --data data/mydata.yaml \ --weights yolov5s.pt \ --cfg models/yolov5s.yaml \ --name yolov5s_results

参数说明:

参数含义
--img输入图像尺寸(默认 640)
--batch批次大小(根据显存调整)
--epochs训练轮数
--data数据配置文件路径
--weights预训练权重(可选yolov5s/m/l/x.pt
--cfg模型结构配置文件
--name输出结果保存目录名

首次运行时会自动下载yolov5s.pt权重文件。

训练过程中会在runs/train/yolov5s_results/生成日志、权重和可视化图表,包括损失曲线、mAP 变化、各类指标趋势图等。

最终得到两个关键模型文件:
-best.pt:验证集表现最优的权重
-last.pt:最后一个 epoch 的权重


方式二:使用 PyCharm 提升开发效率

对于习惯图形化 IDE 的开发者,PyCharm 是个不错的选择。

配置步骤如下:
  1. 打开 PyCharm → Open Project → 选择yolov5文件夹
  2. 进入 Settings → Project → Python Interpreter
  3. 点击齿轮图标 → Add… → Conda Environment → Existing environment
  4. 解释器路径填写:C:\Miniconda3\envs\yolov5-env\python.exe(请根据实际路径修改)
  5. 确认加载成功后关闭设置窗口

现在你可以直接右键运行train.pydetect.py,并通过控制台实时查看训练进度。

🔍 实用技巧:可在train.py中临时注释某些参数,改为硬编码形式,便于反复调试而不必每次都输入命令行参数。


测试与推理结果查看

训练结束后,使用detect.py对新图片进行推理测试。

将测试图片放入inference/images/目录,运行:

python detect.py \ --weights runs/train/yolov5s_results/weights/best.pt \ --source inference/images/test1.jpg \ --conf-thres 0.4

检测结果将保存在runs/detect/exp/目录下,包含标注框和类别标签。

支持多种输入方式:

--source inference/images/ # 整个文件夹 --source 0 # 摄像头实时检测 --source video.mp4 # 视频文件

打开结果图片查看识别效果,结合业务需求评估准确率、召回率和误检情况。


这套基于Miniconda + Python 3.10 + 清华源加速 + GPU 支持的完整方案,不仅适用于 YOLOv5,也可推广至其他 PyTorch 项目。它解决了新手常遇到的依赖冲突、下载缓慢、GPU 不识别等问题,提供了一个稳定、高效的实验基础。

技术探索的路上难免遇到报错和挫折,但每一个ModuleNotFoundErrorCUDA out of memory都是你深入理解系统的契机。坚持下去,你会发现那些曾经令人头疼的问题,最终都变成了你解决问题的能力。

愿你在 AI 的世界里不断突破边界,用代码看见更多可能。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询