mmdetection梳理

1. 为什么使用mmdetection
mmdetection造了很好的轮子,对于检测分割之类的任务确实可以很大地提高code效率

 

2. 安装注意事项
一定要按照官方!!!的步骤一步一步来
比如mmcv一定要装mmcv-full
比如pytorch一定要和你的cuda版本匹配

 

3. mmdetection梳理
这里可以参考https://zhuanlan.zhihu.com/p/113775697
https://juejin.im/post/6844904133560893447
还有一个重要的文档,官方解说 https://mmdetection.readthedocs.io/en/latest/tutorials/new_modules.html

(1)在我看来,mmdetection将整个工程划分成两大模块,dataset和model,这些模块在/mmdetection/mmdet/下的文件夹:
dataset
model,又包括backbone,neck,head,roi_extractor,loss,optimizer

(2)当这些模块被构建的时候,都是经过builder.py这个文件一级一级创建的

可以看到,builder用到一个重要的类, Registry,这个类是mmcv的registry.py里定义的。
我认为这个类的作用就是建立一个类似dict的类,名字就是给定的名字,然后通过register_module函数建立一个字典,这个字典的key是你给定的字符串,值是一个类

所以有时候定义类的时候,要在类的前面加上装饰器,调用Registry.register_module()这个函数

类Registry还有一个重要函数 build_from_cfg()

就是这个函数把你在configs下定的这些要求加到类里

 

后记: 如何使用多GPU训练?并且制定gpu的id:
在服务器的命令口输入
CUDA_VISIBLE_DEVICES=1,2 dist_train.sh ${CONFIG_FILE} 4

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值