detectron2是怎么建立模型的?以SparseInst代码为例【结论版】

 看SparseInst论文发现论文里有些地方没讲清楚;遂找SparseInst源码来看模型结构

我选择从推理代码来找模型结构:

经探索,在SparseInst代码里,推理需要执行代码

python demo.py --config-file configs/sparse_inst_r50_base.yaml --input datasets/coco/val2017/* --output image_results --opt MODEL.WEIGHTS sparse_inst_r50_base_ff9809.pth  INPUT.MIN_SIZE_TEST 512

查阅得知建立模型很可能在

 找到VisualizationDemo的实现:

发现关键代码在

self.predictor = DefaultPredictor(cfg)

 如此得到的self.predictor(image)可以直接接受图片,所以self.predictor就是模型网络部分。

搜索文本DefaultPredictor得知DefaultPredictor在detectron2.engine.defaults包下

 查询DefaultPredictor定义得知build_model(self.cfg)是实际用来创建模型的部分

 而build_model的定义在detectron2.modeling包下

 查找到build_model的定义如下

上方代码里的get方法会跳转到使用装饰器注册模块,这就是SparseInst的网络结构

继续向下运行,可以看到decoder的定义文件

即可查到最开始问题的答案

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值