编译Darknet----debug历程
编译Darknet
git clone https://github.com/pjreddie/darknet
修改Makefile文件
GPU=1
CUDNN=1
OPENCV=1
OPENMP=0
DEBUG=0
cd darknet make
安装CUDA:
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pinsudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pubsudo add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/ /"sudo apt-get updatesudo apt-get -y install cuda
参考链接:https://developer.nvidia.com/zh-cn/cuda-downloads
下载CUDNN,并安装;
参考链接:https://developer.nvidia.com/rdp/cudnn-archive
安装完,重启:
sudo reboot
因为pjreddie版的darknet的代码比较老旧了,依赖于cudnn7.x,所以在一个CUDA11.1+cudnn8.x的环境下编译pjreddie版的darknet的话,会报错。
解决方案:修改src/src/convolutional_layer.c文件
开头处添加:
define PRINT_CUDNN_ALGO 0 #define MEMORY_LIMIT 2000000000
。。。。。。
参考链接:https://blog.csdn.net/qq_41580422/article/details/113399820
由于OpenCV版本过高(opencv 4.4),修改src/image_opencv.cpp
将第63行修改为:
//IplImage ipl = m; IplImage ipl = cvIplImage(m);
参考链接:https://blog.csdn.net/baidu_34172099/article/details/107178158
修改Makefile
路径根据自己的内容进行修改
参考链接:https://blog.csdn.net/Chen_qi_hai/article/details/104598145
原来是cuda版本高,不支持运算,所以解决方法是 注释部分:
在这里插入图片描述
参考链接:https://blog.csdn.net/weixin_41194129/article/details/113798723
编译成功,进行简单测试:
下载权重:
cd darknet
wget https://pjreddie.com/media/files/yolov3.weights
wget https://pjreddie.com/media/files/yolov3-tiny.weights
./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg
出现这个问题的原因是显存炸了。
./darknet detect cfg/yolov3-tiny.cfg yolov3-tiny.weights data/dog.jpg
使用Darknet深度学习框架训练模型:
下载已经标注好的数据集;
将数据集VOC(.xml)转换从YOLO(.txt)
划分数据集(galss_train.txt)和训练集(glass_val.txt)
修改data/voc.names文件:
修改cfg/voc.data,针对自己的路径作出修改
修改cfg/yolov3-tiny.cfg
需要改两处这样的地方,需要修改classes,filter=3(classes+1+4);*
下载预训练权重:
wget https://pjreddie.com/media/files/yolov3_tiny.weights ./darknet partial ./cfg/yolov3-tiny.cfg ./yolov3-tiny.weights ./yolov3-tiny.conv.15 15
训练模型:
sudo ./darknet detector train cfg/voc.data cfg/yolov3-tiny.cfg yolov3-tiny.conv.15 sudo ./darknet detector train cfg/voc.data cfg/yolov3-tiny.cfg backup/yolov3-tiny_10000.weights -map
模型会自动保存;
模型测试:
./darknet detector test cfg/voc.data cfg/yolov3-tiny.cfg backup/yolov3-tiny_10000.weights data/11.png
测试结果:
- 分享
- 举报
-
浏览量:272次2023-12-25 14:23:01
-
浏览量:214次2023-12-21 16:28:56
-
浏览量:308次2023-07-05 10:17:52
-
2024-01-22 10:56:03
-
浏览量:1614次2020-08-17 18:03:03
-
浏览量:3066次2022-02-24 09:00:15
-
浏览量:469次2023-07-05 10:18:03
-
浏览量:7238次2022-07-29 18:09:52
-
浏览量:2771次2018-07-16 22:58:35
-
2024-01-22 16:01:53
-
浏览量:268次2024-02-20 10:27:52
-
浏览量:363次2024-02-04 17:13:47
-
浏览量:4312次2020-08-29 19:35:34
-
浏览量:5852次2020-09-28 16:30:39
-
浏览量:4875次2019-12-28 10:33:46
-
浏览量:2208次2017-11-20 12:34:12
-
浏览量:2776次2017-11-21 13:53:36
-
浏览量:3884次2020-08-11 10:39:44
-
浏览量:233次2023-11-24 15:35:13
- 什么是深度学习?初学者教程
- 海思 AI 芯片 (Hi3559A V100) 算法开发(三) 在 PC 仿真库使用 YOLOv3 进行图片目标检测以及 NMS、YOLO 讲解
- 估算图像间的投影关系
- 基于Pytorch的从零开始的目标检测 | 附源码
- 从滑动窗口到YOLO、Transformer:目标检测的技术革新
- Nvidia Jetson 平台 DeepStream-6.0.1 部署 YoloV5-6.0 实现目标检测
- 目标检测:如何有效实现YOLOv8
- 语义分割系列24-PointRend(pytorch实现)
- WIDER数据集的相关标注,逐一显示landmark dataset所有图片的标注
- 基于深度学习框架的离网DOA估计
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
四叶草~
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明