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

news/2024/9/28 18:15:05 标签: java, 开发语言

 看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的定义文件

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


http://www.niftyadmin.cn/n/5681611.html

相关文章

Android常用C++特性之std::none_of

声明:本文内容生成自ChatGPT,目的是为方便大家了解学习作为引用到作者的其他文章中。 std::none_of 是 C 标准库中的一个算法,用于检查范围中的所有元素是否都不满足指定的条件。如果范围内的所有元素都不满足给定的条件,则返回 t…

图灵完备-奇数个信号

前言:我不知道背后逻辑,我没有推测完成,但我成功了。 奇数个信号是图灵完备游戏-成对的麻烦的下一个关卡,大意是在四个输入中,只有奇数个输入true才返回true,否则返回false。关卡要求只能使用三个逻辑元件…

BFS 解决最短路问题详解

BFS 解决最短路问题 题目一:迷宫中离⼊⼝最近的出⼝1. 题⽬链接:2. 题⽬描述:3.算法思路:4.代码 题目二. 最⼩基因变化1. 题⽬链接:2. 题⽬描述:3.算法思路:4.代码 题目三:单词接⻰…

人只活一次,活出一道光吧

人只活一次, 你怎么舍得让自己的短暂的一生是丑陋的, 你怎么舍得让自己短暂的一生, 只是在往下坠落, 即便是坠落, 也应该具有落日般的华丽吧, 你会漫漫的活成一束光, 谁若接近你, 就是接近光, 【人人都想向上,人人都想老而不衰,但现实是当你想活成一道光…

如何使用ssm实现基于web的山东红色旅游信息管理系统的设计与实现

TOC ssm716基于web的山东红色旅游信息管理系统的设计与实现jsp 绪论 1.1研究背景 从古到今,信息的录入,存储,检索都受制于社会生产力的发展,不仅仅浪费大量的人力资源还需要浪费大量的社会物资,并且不能长时间的保…

C++深入学习string类成员函数(4):字符串的操作

引言 在c中,std::string提供了许多字符串操作符函数,让我们能够秦松驾驭文本数据,而与此同时,非成员函数的重载更是为string类增添了别样的魅力,输入输出流的重载让我们像处理基本类型的数据一样方便地读取和输出字符…

测试用例的举例

1. 基于测试公式设计测试用例 通过功能,性能,安全性,界面,安全性,易用,兼容对于一个水杯进行测试用例的设计; 对于一个软件的测试用例设计: 功能:软件本质上能够用来干什…

OpenHarmony(鸿蒙南向)——平台驱动开发【PIN】

往期知识点记录: 鸿蒙(HarmonyOS)应用层开发(北向)知识点汇总 鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~ 持续更新中…… 概述 功能简介 PIN即管脚控制器,用于统一管理各SoC的…