机器学习与计算机视觉(darknet编译)

栏目: 编程工具 · 发布时间: 7年前

内容简介:【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】曾经有一段时间,我自己很喜欢阅读代码,但是对编译代码不是很有兴趣。这其实是本末倒置的做法。真正去学一门语言或者一个开源软件,必须去实际操作、实际编译、实际调试才会有收获。看了几十行、几百行的代码,但是不去编译、不用gdb调试一下,得到的知识总是有限的。所以,这里也建议喜欢阅读代码、但是不喜欢debug的同学可以稍微调整一下自己的习惯。相比较其他的深度学习框架,darknet比较小众。但是darknet结构比

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

曾经有一段时间,我自己很喜欢阅读代码,但是对编译代码不是很有兴趣。这其实是本末倒置的做法。真正去学一门语言或者一个开源软件,必须去实际操作、实际编译、实际调试才会有收获。看了几十行、几百行的代码,但是不去编译、不用gdb调试一下,得到的知识总是有限的。所以,这里也建议喜欢阅读代码、但是不喜欢debug的同学可以稍微调整一下自己的习惯。

相比较其他的深度学习框架,darknet比较小众。但是darknet结构比较清晰,并且不依赖于第三方框架,可以在多个os上面编译成功。下面,就开始进行编译操作。

1、下载代码

git clone https://github.com/pjreddie/darknet.git

2、编译

cd darknet
make

3、目前支持的平台

我自己在ubuntu和mac上面均编译成功

只是如果需要在ubuntu上面编译成功,需要对Makefile稍作修改

-LDFLAGS= -lm -pthread 
+LDFLAGS= -lm -lpthread

4、不同的cpu进行编译

4.1 用arm编译器进行编译

a,确保当前ubuntu中含有arm的gcc、g++编译器,如果没有也没有关系,

shell> sudo apt-get install gcc-arm-linux-gnueabi
shell> sudo apt-get install g++-arm-linux-gnueabi

b,修改makefile

CC=arm-linux-gnueabi-gcc
CPP=arm-linux-gnueabi-g++

c,剩下来的事情就是直接make就可以了

4.2 用aarch64编译器进行编译

a,确保当前ubuntu中含有aarch64的gcc、g++编译器,如果没有也没有关系

shell> sudo apt-get install gcc-aarch64-linux-gnu
shell> sudo apt-get install g++-aarch64-linux-gnu

b,修改makefile

CC=aarch64-linux-gnu-gcc
CPP=aarch64-linux-gnu-g++

c,后面一样,直接make就可以了

5,其他编译事项

GPU=0
CUDNN=0
OPENCV=0
OPENMP=0
DEBUG=0

除了正常的编译之外,darknet还支持5个基本选项。第一个、第二个都和GPU相关,如果自己机器有nvidia独立显卡,可以看看是否可以用的起来。第三个和opencv相关,如果打开,需要本地有opencv的库。比如,sudo apt-get install libopencv-dev。第四个是一个加速选项,之前在x86用过,不清楚arm是否有效果,但是编译没有出错。第五个就是普通的选项,可以在编译的时候添加一些调试信息。

6、编译的效果

如果编译成功,一般会在根目录生成三个文件,分别是libdarknet.a,libdarknet.so和darknet可执行文件。

7、代码入口点

shell> grep "main" * -R -w
examples/darknet.c:int main(int argc, char **argv)

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

第二曲线:跨越“S型曲线”的二次增长

第二曲线:跨越“S型曲线”的二次增长

[英]查尔斯·汉迪(Charles Handy) / 苗青 / 机械工业出版社 / 2017-6 / 49.00

S型曲线是每个组织和企业在预测未来时一定会参考的工具,一切事物的发展都逃不开S型曲线(“第一曲线”)。 然而,从公司组织、企业治理、市场的变化,到个人职业发展、社会人际关系以及未来的教育与社会价值,多维度地探讨这个世界需要重新以不同的角度来思考问题,不能够总是停留在“第一曲线”的世界。 如果组织和企业能在第一曲线到达巅峰之前,找到带领企业二次腾飞的“第二曲线”,并且第二曲线必须在第一曲......一起来看看 《第二曲线:跨越“S型曲线”的二次增长》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码