Coder Social home page Coder Social logo

hgpvision / darknet Goto Github PK

View Code? Open in Web Editor NEW
1.6K 1.6K 489.0 2.1 MB

darknet深度学习框架源码分析:详细中文注释,涵盖框架原理与实现语法分析

License: MIT License

Makefile 0.17% Python 0.23% Shell 0.14% C 93.73% C++ 0.24% Cuda 5.45% Objective-C 0.03%

darknet's People

Contributors

hgpvision avatar lamhocn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

darknet's Issues

YOLO代码框架一览图

感谢大神的工作,真的非常帮助理解! 但是想问下,大神有没有考虑过通过什么软件生成函数和文件之间的调用关系一览。这样能够提高大家对代码工程框架的整体认识。再次表示感谢!!!!

关于cudnn影响计算结果的问题

在这次的项目测试中我发现cudnn似乎会影响最后的分类结果。
我的网络是resnet18.cfg,我通过修改Makefile文件 编译出了 GPU、CPU、GPU+cudnn版本,测试同一张图片的分类情况,发现GPU和CPU结果一致,然而cudnn会使结果差距很多(比如90变成70+)。
遇到相同问题或者了解情况的朋友可以发表一下自己的看法

问好

hi, 我对darknet这款小框架也很感兴趣,刚刚开始接触。如你所说,想以此为跳板了解更底层的东西。关于darknet或许我们可以多交流一下

删除最后分类层的权重

save_weights_upto(net, filename, net.n);

楼主 您好 我想问一下 我想删除掉分类模型的 后面用于分类的 卷积层的权重 是不是在这一行设置 net.n变为net.n-3就行啊(这个3是 最后的avgpool convolution softmax) 我想把darknet53.weights变成 darknet53.conv.74

你好,可以解读一下region_layer源代码吗?

你好,可以解读一下region_layer源代码吗?实在费解,关于yolo9000的训练总是有各种问题,针对imagenet分类数据,只传类标不传bbox会报错。但是随意给定每张分类图像一个box,但是在算法运行时遇到这样的框就只传分类损失,不传bbox的。能做检测,分类效果还可以,但是定位很差。很想知道yolo9000具体是怎么训练的

yolo参数保存

您好,我想对yolo中间计算参数进行量化,我该如何提取保存中间计算结果,可以帮助我吗?

模型压缩

你好~我想基于darknet做神经网络模型的压缩和推理的加速,请问怎么修改里面的c代码呢?

layer.h问题

layer.h层结构体中没有mask等变量,是不是因为没有更新yolov3版啊~

有意义

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

box derivative(box a, box b)

I can't understand the processing of box derivative(box a, box b)(box.c); what is the function of this processing?

编译时遭遇的问题

已还原cu。

aimhabo@Y430P:~/darknet-hgpvision$ make
gcc -DOPENCV pkg-config --cflags opencv -DGPU -I/usr/local/cuda/include/ -DCUDNN -Wall -Wfatal-errors -Ofast -DOPENCV -DGPU -DCUDNN -c ./src/gemm.c -o obj/gemm.o
gcc -DOPENCV pkg-config --cflags opencv -DGPU -I/usr/local/cuda/include/ -DCUDNN -Wall -Wfatal-errors -Ofast -DOPENCV -DGPU -DCUDNN -c ./src/utils.c -o obj/utils.o
./src/utils.c: In function ‘fgetl’:
./src/utils.c:376:14: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
fgets(&line[curr], readsize, fp);
^
gcc -DOPENCV pkg-config --cflags opencv -DGPU -I/usr/local/cuda/include/ -DCUDNN -Wall -Wfatal-errors -Ofast -DOPENCV -DGPU -DCUDNN -c ./src/cuda.c -o obj/cuda.o
gcc -DOPENCV pkg-config --cflags opencv -DGPU -I/usr/local/cuda/include/ -DCUDNN -Wall -Wfatal-errors -Ofast -DOPENCV -DGPU -DCUDNN -c ./src/deconvolutional_layer.c -o obj/deconvolutional_layer.o
gcc -DOPENCV pkg-config --cflags opencv -DGPU -I/usr/local/cuda/include/ -DCUDNN -Wall -Wfatal-errors -Ofast -DOPENCV -DGPU -DCUDNN -c ./src/convolutional_layer.c -o obj/convolutional_layer.o
> ./src/convolutional_layer.c: In function ‘cudnn_convolutional_setup’:
./src/convolutional_layer.c:153:5: error: too few arguments to function ‘cudnnSetConvolution2dDescriptor’
cudnnSetConvolution2dDescriptor(l->convDesc, l->pad, l->pad, l->stride, l->stride, 1, 1, CUDNN_CROSS_CORRELATION);
^
compilation terminated due to -Wfatal-errors.

make: *** [obj/convolutional_layer.o] 错误 1

这是版本问题么?请问cuda和cudnn版本应该是?

如何引用opencv

我想在代码里面加入opencv,然后发现opencv是C++编译的,然后darknet是C编译。请问下如何解决这个问题

阅读Darknet代码

作者您好,我才开始学这个,想问一下,应该怎么循序渐进的阅读你这个项目的代码?

分类和bounding box的先后问题

你好,想请教一个问题,yolov2在test的时候,分类和bounding box是同时产生的还是有先后顺序的呢?因为我在作二分类的时候,最终会输出一个结果,但是bounding box却框到其他位置去了,那么这个结果是bounding box框住的那个结果吗?

关于yolo的group机制

你好,我最近在用yolo训练,想用yolo的groups机制来训练,但是在源码中和cfg中都修改过groups,但是实际训练还是groups=1,请问怎么正确使用groups

显存问题

貌似用darknet训练过程中,在执行tensorflow训练就会强行中断darknet的过程,反过来却不行,这是为什么啊

im2col.c 注释貌似错误

第70行的注释貌似有误,每个卷积核中不同channel的map的权重参数本身就是不一样的

注释

注释在哪里呢,怎么看不到

咨询darknet里面的.weights文件

你好,我现在在学习yolo算法,因为实验室条件限制,很难训练所以想加载已经训练好的模型,但是因为墙的原因目前能下载到的权重就只有darknet提供的那些,但是并不理解.weights文件存放的顺序,目前使用PYTHON自带的struct.unpack方法读出了其中的数据,但是读出的数据数目和里面实际存的不一致。,因此怀疑是自己搞错了,请问你可否在.weights文件的数据存储方式方面给我一些帮助

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.