基于mxnet的Deep-Feature-Flow源码架构解析

首先声明本人菜鸟一枚,如有任何错误欢迎指正!

继做完Deep-Feature-Flow的PPT后,老大又让跑DFF的代码,但无奈之前专注于caffe框架,但DFF官方只给了mxnet框架上的源码(果然微软人家要推广自己家的框架哇),所以成为组里第一个转战mxnet的实习生【笑哭】。在跑通demo后(跑代码过程见mxnet编译运行DFF),后又花了大概3周的时间研读代码,构建起总的框架,期间收获了很多,也为下一步对DFF的改进打下了基础

----------------------------------------------------主子镇楼-----------------------------------------------------------

一、mxnet下Deep-Feature-Flow的文件夹结构

当打开下载的DFF包后,我们都是一脸萌币的。

首先可以看一下READ_ME文件:包含了Introduction、Disclaimer、License、Requirements、Installation、Demo、Preparation for Training & Testing、Usage等部分内容,可以对整个DFF代码有一个初步的了解(当然是要在看完看透论文的基础上)。

然后我们来看各个文件夹的内容

DFF中主要文件夹

data:包括了训练和测试使用的datasets相关文件

demo:包括了在运行demo时使用到的输入图片,以及用来存储demo生成的标定结果图片。

dff_rfcn:这个文件夹包括了DFF的绝大部分核心代码,包含神经网络的建立文件、用来进行训练和测试的function、class等。本文中,将对这一文件进行重点介绍。

experiments:包括参数的配置文件(./experiments/{rfcn/dff_rfcn}/cfgs)、实验过程的日志文件以及train的源代码(引用了dff_rfcn中的各种函数)

external:包括了与mxnet相关的文件(与我们的源代码基本无关~)

lib:我们在各种安装包里都会见到的文件夹

model:包括了训练所需的模型(ImageNet pre-trained ResNet-v1-101 model and Flying-Chairs pre-trained FlowNet model)

output:用来存储训练及测试过程中的输出(A cache folder would be created automatically to save the model and the log under)

rfcn:包含了rfcn网络的核心源代码

二、各个文件的相互对应与import关系

demo(简化版的experiments)
正式的train和test

三、神经网络搭建文件解析

见后续

四、实验过程:训练与测试

以正式训练时的dff_rfcn_end2end_train.test.py为例:

dff_rfcn_end2end_train.test.py文件:

dff_rfcn_end2end_train.test.py
parse_arg函数

其中train_net()函数是重点,源代码及注释见后续~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,830评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,262评论 4 61
  • 再遇见她之前,我的心好久都没这么晴过了。 生活就是这样,随着时间的流逝,有些人会随着岁月离开你,有些人会穿过汹涌的...
    _栗子侠阅读 353评论 0 0
  • 讲话也好,写文章也好,用《沟通圣经》里的话来说,做到下面几点就会比较有感染力: 清晰 用词要简单明了,内容要有组织...
    Chloe婉阅读 208评论 1 1
  • 是这纷繁的世界缔造了一个玲珑的我,而你的宠溺又使我退化成不谙世事的娇娥。卸掉盔甲,柔软脆弱。烛影摇曳,盈步...
    张倾城阅读 524评论 0 0