编译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

测试结果:

编译Darknet----debug历程相关推荐

  1. 创建预编译头 Debug 正常 Release Link Error:预编译头已存在,使用第一个 PCH

    创建预编译头 Debug 正常 Release Link Error Main.obj : error LNK2005: ___@@_PchSym_@00@UmfilkilqUdrmzkkUkilqU ...

  2. windows10下QT6.4.3编译qsqlmysql Debug+Release动态库

    QT6版本以上没有mysql的动态库,需要自己编译,网上找了好多教程都没有成功编译,后面结合多个教程慢慢倒腾 终于成功了,具体操作步骤如下: 1,首先下载安装QT的时候 需要安装它的源码 2,安装完成 ...

  3. windows下编译darknet

    目录 windows下编译darknet 换了编译方案 windows下编译darknet 使用vs2015 配置失败 疯狂报错有位置引用错误 配置环境 cuda版本11.6 报错如下 C:\Prog ...

  4. Keil中使用宏编译来定义DEBUG输出

    使用宏编译来格式化调试信息,是一个不错的方法,即可以在需要的时候打印出信息,还可以格式化我们所需要的输出. #define DEBUG 1 #if (DEBUG == 1) #define DBG(A ...

  5. DOSBox编译汇编程序(debug、MASM)

    学习王爽<汇编语言>时,书中使用的是Debug.exe和Masm5.0进行实验.由于大家的电脑大多使用的是64位的操作系统,不能在系统自带的MS-DOS环境下编写汇编源程序,而每次都开虚拟 ...

  6. Spring源码下载与编译,Debug学习才有效率

    这里写自定义目录标题 一.源码下载 1.github源码下载 2.阅读项目编译文档 2.1.项目编译 (1).解压我们下载好的目录 (2).配置阿里云镜像 (3).编译 (4).遇到的坑 2.2.导入 ...

  7. android jni release,Android NDK 设置编译模式debug和release

    原文:http://stackoverflow.com/questions/14564918/android-ndk-release-build Unless you have created the ...

  8. zedboard u-boot编译的心路历程

    uboot的编译原本以为是一件容易的事情,没想到,这一路下来真心让人纠结,今天就吧这一过程记录下来吧.折腾了好长时间. 必要环境 首先是arm-xilinx交叉变异开发环境,没有的话可以参考我之前的博 ...

  9. android编译脚本下载,Android编译 Fak_aac心路历程

    下载官方库 编译脚本 #!/bin/sh NDK_ROOT=/Users/momo/Library/Android/sdk/ndk-bundle ANDROID_API_VERSION=15 NDK_ ...

  10. Mac LaTeX的Bibtex编译失败Debug记录

    Texlive,使用Texmaker编译,一直出现bibtex的编译错误,显示为no \citation, no \bibdata, no \bibstyle,但是我明明在overleaf里能成功编译 ...

最新文章

  1. hiho_1050_树中的最长路
  2. 【交换机】交换机如何配置光电复用接口
  3. AbstractQueuedSynchronizer理解之一(ReentrantLock)
  4. BNF范式(巴科斯范式)简介
  5. 岛屿类-网格类问题-DFS | 力扣200. 岛屿数量
  6. Arch Linux 没有声音:Intel sound card snd_hda_intel not working 解决方法
  7. java期末考试试卷及答案文库_JAVA期末考试试题及答案.docx
  8. Linux下tensorflow1.13.1 C++ API的编译和使用
  9. 攻击者利用7号信令(SS7)中的漏洞从德国银行偷取钱财
  10. python 修改文件内容3种方法,Python实现修改文件内容的方法分析
  11. 一文带你了解SpringMVC框架的基本使用
  12. 新消费下的国货崛起新模式!
  13. 我的世界java版钻石剑附魔_我的世界钻石剑怎么附魔 钻石剑附魔100级指令
  14. #今日论文推荐# 文字秒变3D?苹果发布最新AI生成模型GAUDI,根据文字提示创建3D场景
  15. CDA数据分析师认证考试模拟题库
  16. modbus虚拟服务器,modbus客户端服务器区别
  17. ANSYS渡槽槽身动水压力的施加(1)——矩形渡槽
  18. Informix IDS 11零碎治理(918检讨)认证指南,第 5 部门: 数据库效劳器使用(3)
  19. linux装机必备软件
  20. matlab四维图形,MATLAB二维、三维、四维绘图

热门文章

  1. pr剪辑打开多个项目_强大的PR版本转换神器来了,太厉害了!
  2. DSP芯片CMD文件中各段的实验验证(上)
  3. 农村小学计算机教育论文,农村中小学信息技术教育的现状分析
  4. week 11 lianxi
  5. 【学习教程】建筑设计全过程碳排放计算与案例分析
  6. ubuntu 下安装qq2012
  7. 正定县2008年下半年投资73亿新开工项目
  8. 普陀区桃浦镇领导一行莅临上海和数集团开展新春走访慰问
  9. 5个好用的平面设计网站
  10. 笔记本蓝牙突然消失了