最全面的Darknet安装指南:Windows与Linux系统环境搭建实战
【免费下载链接】darknet YOLOv4 / Scaled-YOLOv4 / YOLO - Neural Networks for Object Detection (Windows and Linux version of Darknet ) 项目地址: https://gitcode.com/gh_mirrors/dar/darknet
你是否在安装Darknet时遇到过环境配置难题?本文将帮助你在Windows和Linux系统上顺利搭建Darknet环境,实现YOLOv4等目标检测模型的快速部署。读完本文,你将能够:
了解Darknet的基本概念和应用场景掌握Windows和Linux系统下的安装步骤解决常见的环境配置问题验证安装结果并运行示例检测
什么是Darknet?
Darknet是一个轻量级的开源神经网络框架,特别适用于实时目标检测。它支持YOLO(You Only Look Once)系列算法,包括最新的YOLOv4、YOLOv7等模型。Darknet由C语言编写,具有高效、灵活的特点,可在CPU和GPU上运行,适用于各种实时检测场景。
Darknet的主要特点包括:
支持多种神经网络架构(YOLOv2, YOLOv3, YOLOv4, YOLOv7等)高效的CPU和GPU计算能力易于安装和使用支持Windows和Linux系统可定制化程度高
安装前准备
在开始安装Darknet之前,需要确保系统满足以下要求:
硬件要求
CPU:支持SSE2指令集的现代处理器GPU(可选):NVIDIA显卡,计算能力3.0及以上(推荐GTX 1050及以上)内存:至少4GB RAM(推荐8GB及以上)硬盘空间:至少1GB可用空间
软件要求
软件最低版本推荐版本CMake3.183.20及以上CUDA(GPU支持)10.211.0及以上cuDNN(GPU支持)8.0.28.2及以上OpenCV2.44.0及以上Git任意版本最新版
Windows系统安装步骤
步骤1:安装依赖软件
安装Git:从Git官网下载并安装Git for Windows安装CMake:从CMake官网下载并安装CMake 3.18及以上版本安装Visual Studio:推荐安装Visual Studio 2019或2022(需安装C++开发组件)安装OpenCV:
从OpenCV官网下载Windows版本解压到指定目录(如C:\opencv)设置环境变量:添加OpenCV_DIR = C:\opencv\build
步骤2:配置GPU支持(可选)
如果你的系统有NVIDIA显卡,建议安装CUDA和cuDNN以获得更好的性能:
安装CUDA:从NVIDIA官网下载并安装CUDA Toolkit 10.2或更高版本安装cuDNN:从NVIDIA开发者网站下载对应CUDA版本的cuDNN库将cuDNN文件复制到CUDA安装目录
步骤3:获取Darknet源码
打开命令提示符,执行以下命令克隆Darknet仓库:
git clone https://gitcode.com/gh_mirrors/dar/darknet.git
cd darknet
步骤4:编译Darknet
使用CMake编译Darknet:
打开CMake GUI,设置源码路径和构建路径点击"Configure",选择合适的Visual Studio版本根据需要勾选GPU、CUDNN、OPENCV等选项点击"Generate"生成项目文件用Visual Studio打开生成的项目,编译解决方案
或者使用PowerShell脚本自动编译:
.\scripts\setup.ps1
Linux系统安装步骤
步骤1:安装依赖软件
打开终端,执行以下命令安装必要的依赖:
sudo apt update
sudo apt install -y build-essential git cmake libopencv-dev
步骤2:配置GPU支持(可选)
安装CUDA:
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin
sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub
sudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/ /"
sudo apt update
sudo apt install -y cuda
安装cuDNN:
从NVIDIA开发者网站下载cuDNN解压并复制文件到CUDA目录: tar -xzvf cudnn-10.2-linux-x64-v8.0.2.39.tgz
sudo cp cuda/include/cudnn*.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
步骤3:获取Darknet源码
git clone https://gitcode.com/gh_mirrors/dar/darknet.git
cd darknet
步骤4:编译Darknet
修改Makefile以启用所需功能:
sed -i 's/GPU=0/GPU=1/' Makefile # 启用GPU支持(如果已安装CUDA)
sed -i 's/CUDNN=0/CUDNN=1/' Makefile # 启用cuDNN支持
sed -i 's/OPENCV=0/OPENCV=1/' Makefile # 启用OpenCV支持
编译Darknet:
make -j$(nproc)
验证安装结果
下载预训练权重
Darknet提供了多种预训练模型权重,可用于测试安装是否成功:
# 下载YOLOv4权重
wget https://github.com/AlexeyAB/darknet/releases/download/darknet_yolo_v3_optimal/yolov4.weights
运行目标检测测试
执行以下命令对示例图片进行目标检测:
# Windows
darknet.exe detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights data/dog.jpg
# Linux
./darknet detector test cfg/coco.data cfg/yolov4.cfg yolov4.weights data/dog.jpg
如果一切正常,程序将输出检测结果,并生成包含检测框的图片。
常见问题解决
编译错误:找不到OpenCV
确保OpenCV已正确安装,并设置了正确的环境变量。对于Linux系统,可以尝试:
sudo ldconfig /usr/local/lib
对于Windows系统,确保OpenCV的bin目录已添加到系统PATH中。
GPU支持问题
如果编译时遇到CUDA相关错误,请检查CUDA和cuDNN的安装是否正确,版本是否匹配。可以通过以下命令验证CUDA安装:
nvcc --version
运行时错误:内存不足
尝试减小输入图片尺寸或使用更小的模型(如yolov4-tiny):
./darknet detector test cfg/coco.data cfg/yolov4-tiny.cfg yolov4-tiny.weights data/dog.jpg
总结与下一步
通过本文的步骤,你已经成功在Windows或Linux系统上安装了Darknet。现在你可以:
尝试使用不同的YOLO模型进行目标检测训练自己的目标检测模型探索Darknet的其他功能,如视频流检测、实时摄像头检测等
官方文档:README.md 配置文件示例:cfg/ 脚本工具:scripts/
如果遇到其他问题,可以查阅Darknet的官方文档或在GitHub上提交issue寻求帮助。祝你在目标检测的旅程中取得成功!
资源与扩展阅读
Darknet GitHub仓库:https://gitcode.com/gh_mirrors/dar/darknetYOLOv4论文:https://arxiv.org/abs/2004.10934预训练模型库:https://github.com/AlexeyAB/darknet/wiki/YOLOv4-model-zoo自定义目标检测训练教程:How to train (to detect your custom objects)
希望本文对你有所帮助,如果觉得有用,请点赞收藏,并关注获取更多AI相关教程!
【免费下载链接】darknet YOLOv4 / Scaled-YOLOv4 / YOLO - Neural Networks for Object Detection (Windows and Linux version of Darknet ) 项目地址: https://gitcode.com/gh_mirrors/dar/darknet