hgpvision / darknet

darknet深度学习框架源码分析:详细中文注释,涵盖框架原理与实现语法分析
MIT License
1.6k stars 488 forks source link

有意义 #4

Open LamHoCN opened 6 years ago

LamHoCN commented 6 years ago

无意间查看darknet的时候发现了你的项目,觉得蛮有意义。 因为项目上的需要,用darknet也算比较长时间了,对yolo进行过caffe以及嵌入式单hpp的整体算法移植,对darknet算是烂熟于心了。现在darknet也成了我进行算法验证的直接框架,DeepCompression,mobilenet 等算法也基于darknet进行了验证。并且为darknet的增添了多分支的数据传输结构。 希望可以帮助到你。不过我都是在gpu端进行的改写或者实现。

yuanxy92 commented 6 years ago

@LamHoCN 您好 我是做计算摄像的 demo相机需要跑一些tracking,detection之类的实时应用

现在的框架pytorch, tensorflow, caffe在学术上基本都是用python接口 而且很重 移植到C++上很不方便 最近发现了darknet 决定用这个轻量级的尝试一下

看您的回答 您在这些方面应该很有经验 能否指教一下? 目前opencv出了libdnn,tinydnn, facebook出了caffe2,还有这个darknet,这些框架哪个比较好用呢?(项目对实时性有要求 所以不能去掉python接口 效率太低)

LamHoCN commented 6 years ago

@yuanxy92 建议使用pytorch,或者mxnet(gluon)作为后端进行研究与算法验证,backward不用自己写节省了太多太多的时间与精力。同时你也可能写了半天一两个星期的反向发现还是错误的。 如果在嵌入式端不采用caffe2或者一些大厂出的框架,在后端训练完精度足够的模型,将权重转化成二进制的文件就可以进行移植了。这时你可以手写一个.h或者.hpp进行算法的移植,但是相对比较的繁琐,每层的数据以及权重的指针都需要自己开启与释放,也会要求你对这个算法非常的熟悉,因为一点点的错误最后的结果都是错误的。并且底层的blas讲道理也是拼不过大厂的。 所以建议使用caffe2.