
1. YOLO环境搭建全景指南作为计算机视觉领域最流行的目标检测算法之一YOLO(You Only Look Once)以其实时性和高准确率著称。但在实际应用中环境搭建往往是新手面临的第一个挑战。本文将基于Ubuntu 20.04系统详细解析从零开始搭建YOLOv5开发环境的完整流程涵盖硬件准备、软件依赖、环境配置到最终验证的全套方案。特别提示建议使用NVIDIA显卡进行YOLO开发CPU模式虽然可行但训练速度会显著降低。本文以RTX 3060显卡为例其他NVIDIA显卡可参考类似配置。1.1 硬件基础要求YOLO环境对硬件有一定要求以下是推荐配置GPUNVIDIA显卡(建议RTX 2060及以上)内存16GB及以上存储至少50GB可用空间(用于存放数据集和模型)CUDA兼容性需确认显卡支持的CUDA版本验证显卡兼容性的命令nvidia-smi输出应包含显卡型号和驱动版本信息。如果没有输出可能需要先安装NVIDIA驱动。1.2 软件依赖全景图完整的YOLO开发环境包含多个层级底层驱动NVIDIA显卡驱动计算平台CUDA cuDNN深度学习框架PyTorchYOLO实现ultralytics/yolov5辅助工具Python环境、OpenCV等2. 分步环境搭建实录2.1 NVIDIA驱动安装首先确保系统已安装合适的NVIDIA驱动。对于Ubuntu系统推荐使用官方PPAsudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update ubuntu-drivers devices # 查看推荐驱动版本 sudo apt install nvidia-driver-525 # 安装推荐版本安装完成后重启系统再次运行nvidia-smi确认驱动正常工作。2.2 CUDA工具包安装YOLOv5推荐使用CUDA 11.3以下是安装步骤从NVIDIA官网下载对应版本的CUDA Toolkit执行安装命令wget https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux.run sudo sh cuda_11.3.0_465.19.01_linux.run安装时注意不要选择安装驱动(已单独安装)确保勾选了CUDA Toolkit记住安装路径(默认/usr/local/cuda-11.3)安装完成后将CUDA加入环境变量echo export PATH/usr/local/cuda-11.3/bin:$PATH ~/.bashrc echo export LD_LIBRARY_PATH/usr/local/cuda-11.3/lib64:$LD_LIBRARY_PATH ~/.bashrc source ~/.bashrc验证安装nvcc --version2.3 cuDNN安装cuDNN是NVIDIA提供的深度学习加速库需单独安装从NVIDIA开发者网站下载对应CUDA 11.3的cuDNN解压并复制文件tar -xzvf cudnn-11.3-linux-x64-v8.2.1.32.tgz sudo cp cuda/include/cudnn*.h /usr/local/cuda-11.3/include sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.3/lib64 sudo chmod ar /usr/local/cuda-11.3/include/cudnn*.h /usr/local/cuda-11.3/lib64/libcudnn*2.4 Python环境配置推荐使用conda创建独立Python环境conda create -n yolo python3.8 conda activate yolo安装基础依赖pip install numpy opencv-python matplotlib seaborn tqdm pandas2.5 PyTorch安装根据CUDA版本安装对应的PyTorchpip install torch1.10.0cu113 torchvision0.11.1cu113 torchaudio0.10.0cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html验证PyTorch能否识别GPUimport torch print(torch.cuda.is_available()) # 应输出True print(torch.version.cuda) # 应显示11.33. YOLOv5项目部署3.1 获取源码克隆官方YOLOv5仓库git clone https://github.com/ultralytics/yolov5 cd yolov5 pip install -r requirements.txt # 安装项目依赖3.2 环境验证使用预训练模型进行快速验证python detect.py --weights yolov5s.pt --source data/images/如果一切正常将在runs/detect/exp目录下看到检测结果图像。4. 常见问题与解决方案4.1 CUDA版本不匹配错误现象运行时提示CUDA版本不兼容 解决方法确认nvcc --version和torch.version.cuda显示版本一致如果不一致重新安装对应版本的PyTorch4.2 显卡内存不足错误现象训练时出现CUDA out of memory 解决方法减小batch-size参数使用更小的模型(yolov5s)尝试混合精度训练(添加--half参数)4.3 依赖冲突错误现象各种奇怪的import错误 解决方法创建全新的conda环境严格按照requirements.txt安装依赖避免混用pip和conda安装5. 高级配置技巧5.1 Docker方式部署对于需要环境隔离的场景可以使用官方Docker镜像docker pull ultralytics/yolov5:latest docker run -it --gpus all ultralytics/yolov5:latest5.2 自定义数据集准备YOLO使用的数据集格式images/存放图像文件labels/存放对应的txt标注文件每个txt文件格式class_id x_center y_center width height(归一化坐标)推荐使用LabelImg工具进行标注保存为YOLO格式。5.3 训练参数调优关键训练参数说明--img输入图像尺寸(建议640)--batch批次大小(根据显存调整)--epochs训练轮次(通常100-300)--data数据集配置文件路径--cfg模型配置文件路径--weights预训练权重路径示例训练命令python train.py --img 640 --batch 16 --epochs 100 --data coco128.yaml --cfg models/yolov5s.yaml --weights yolov5s.pt6. 生产环境部署建议6.1 模型导出YOLOv5支持导出多种格式python export.py --weights yolov5s.pt --include torchscript onnx coreml6.2 性能优化技巧TensorRT加速python export.py --weights yolov5s.pt --include engine --device 0ONNX Runtime推理import onnxruntime sess onnxruntime.InferenceSession(yolov5s.onnx)6.3 长期维护建议定期更新代码库git pull pip install -r requirements.txt --upgrade监控GPU使用情况watch -n 1 nvidia-smi在实际项目中我们发现保持环境独立(使用conda或docker)可以避免大多数依赖问题。对于团队开发建议将环境配置过程脚本化确保所有成员使用完全一致的环境配置。