YOLOv2源码分析
文章平均质量分 94
分析目标检测中的一个标志性方法YOLOv2源码的具体实现。由于作者在论文中很多细节没有提及,所有分析源码对于我们学习很有帮助
coordinate_blog
这个作者很懒,什么都没留下…
展开
-
YOLOv2源码分析--reorg layer
文章全部YOLOv2源码分析reorg layer中最关键的代码如下void reorg_cpu(float *x, int w, int h, int c, int batch, int stride, int forward, float *out){ int b,i,j,k; int out_c = c/(stride*stride); for(b = 0; b < b原创 2018-01-02 09:25:02 · 8260 阅读 · 8 评论 -
YOLOv2源码分析(六)
文章全部YOLOv2源码分析我们再次回到了parse_network_cfg函数 //parse_network_cfg else if(lt == ACTIVE){ l = parse_activation(options, params); }接着看后面这个parse_activation函数0x01 parse_activa原创 2017-12-27 14:36:00 · 3773 阅读 · 3 评论 -
YOLOv2源码分析(五)
0x01 make_convolutional_layer终于又回到了make_convolutional_layer这个函数//make_convolutional_layer if(binary){ l.binary_weights = calloc(l.nweights, sizeof(float)); l.cweights = calloc(l.nwe原创 2017-12-22 17:47:46 · 2656 阅读 · 3 评论 -
YOLOv2源码分析(四)
0x01 backward_convolutional_layervoid backward_convolutional_layer(convolutional_layer l, network net){ int i, j; int m = l.n/l.groups; //每组卷积核的个数 int n = l.size*l.size*l.c/l原创 2017-12-21 17:03:20 · 2653 阅读 · 6 评论 -
YOLOv2源码分析(三)
接着上一讲没有讲完的make_convolutional_layer函数0x01 make_convolutional_layer //make_convolutional_layer l.forward = forward_convolutional_layer; l.backward = backward_convolutional_layer; l.update原创 2017-12-20 10:13:30 · 3333 阅读 · 17 评论 -
YOLOv2源码分析(二)
0x01 parse_network_cfg我们继续前面没有说完的parse_network_cfg //parse_network_cfg node *n = sections->front; if(!n) error("Config file has no sections"); 我么先要了解一下list结构typedef struct list{ int s原创 2017-12-19 10:03:45 · 4291 阅读 · 3 评论 -
YOLOv2源码分析(一)
0x00 写在开头写这一系列文章主要是想解析yolov2的具体实现,因为在作者的论文中有很多地方没有进行详细表述,所以不看源代码的话很难知道幕后具体做了什么。另一点是学习一下别人写一个网络的思路,因为你要知道作者的代码相当于自己写了一个小型框架(函数的接口设计的可能不是非常好)。0x01 从main函数开始int main(int argc, char **argv){ //test_re原创 2017-12-18 11:35:47 · 6548 阅读 · 22 评论