扩展Detectron2的接口与逻辑
研究是以新的方式做事。这给如何在代码中创建抽象带来了压力, 对于任何规模较大的研究工程项目而言,这都是一个挑战:
一方面,它需要非常精简的抽象,来以新方式进行所有操作。打破现有的抽象并将其替换为新的抽象必须应该是便利容易的。
另一方面,这样的项目也需要合理的高层抽象,以便用户可以轻松地以标准方式进行操作,而不必担心仅某些研究人员关心的细节。
在detectron2中,有两种类型的接口可以共同解决这种压力:
仅采用"config"参数的函数和类(在成熟接口的情况下,可以选择额外参数最少的一组)。这些函数和类实现"标准默认"行为:它将从配置中读取所需内容并执行"标准"操作。用户只需要加载一个标准配置并传递它,而不必担心使用了哪些参数以及它们的含义。
具有定义明确自变量的函数和类。
具有定义明确自变量的函数和类是整个系统中一个很小的组成部分。它们需要用户费力地链接在一起,但是可以以更灵活的方式链接在一起。当你需要实现不同于detectron2中包含的"标准默认值"的某些东西时,可以重复使用这些定义明确的组件。
如果你只需要标准行为,请阅读入门指南(https://detectron2.readthedocs.io/tutorials/getting_started.html) 应该足够了。如果你需要将detectron2扩展到自己所需要的, 有关更多详细信息,请参见以下教程:
Detectron2包含一些标准数据集,但是你可以使用自定义数据集。请参阅(https://detectron2.readthedocs.io/tutorials/datasets.html)。
Detectron2包含从数据集创建数据加载器的标准逻辑,但是你也可以编写自己的逻辑。请参阅(https://detectron2.readthedocs.io/tutorials/data_loading.html)。
Detectron2实现许多标准的检测模型,并为你提供重写其行为的方法。请参见使用模型(https://detectron2.readthedocs.io/tutorials/models.html)和编写模型(https://detectron2.readthedocs.io/tutorials/write-models.html)。
Detectron2提供了默认的训练过程,适用于常见的训练任务。你可以使用hooks自定义它,也可以编写自己的训练过程。见(https://detectron2.readthedocs.io/tutorials/training.html)。
原文链接:https://detectron2.readthedocs.io/tutorials/extend.html
☆☆☆为方便大家查阅,小编已将Detectron2专栏文章统一整理到公众号底部菜单栏,同步更新中,关注公众号,点击左下方“文章”,如图:
或点击下方“阅读原文”,进入Detectron2专栏,即可查看系列文章。
☆ END ☆
如果看到这里,说明你喜欢这篇文章,请转发、点赞。微信搜索「uncle_pn」,欢迎添加小编微信「 mthler」,每日朋友圈更新一篇高质量博文(无广告)。
↓扫描二维码添加小编↓
扩展Detectron2的接口与逻辑相关推荐
- 51单片机汇编学习11——扩展原理与接口技术
终于到这一小节了.这一节讲扩展原理与接口技术. 那么什么是扩展原理&接口技术呢?其实主要是3种. 1.扩展一个程序存储器 2.扩展一个数据存储器 3.扩展IO口 1.扩展程序存储器 其实这个扩 ...
- 主分区跟扩展分区的关系以及逻辑分区
主分区能够激活,通常用来引导系统.扩展分区本身并不能直接用来存放数据,逻辑分区是扩展分区进一步分割出来的区块,通常用来存储数据.如果将逻辑分区比作房间,那么扩展分区就好比客房区(包括若干个房间). 通 ...
- 对LinqtoExcel的扩展 【数据有限性,逻辑有效性】
接着上文的内容继续讲,上文中我提到了对Excel操作帮助类库LinqToExcel类库的优缺点和使用方法.我也讲到了自己在使用中碰到的问题,我也开发了一个简单的类库解决,下面就讲解一下这个帮助类. G ...
- 详解微信开放平台第三方平台代小程序开发业务基本接口调用逻辑
详解微信第三方小程序代开发 微信申请第三方之后可以获取授权方的很多权限,主要的是生码和待开发,生码的第三方授权之前已经写了一篇文章,最近做了小程序待开发,总结一下写下来供大家参考 由百牛信息技术bai ...
- 【cocos2d-x从c++到js】22:使用非侵入方式扩展UI系统接口的举例
如何较好的运用脚本语言,使用他的动态性是关键.使用动态性来扩展代码,可以保证非侵入方式.这种方式,把原先的引擎代码和当前自己的二次开发代码隔离开了,便于后续的升级维护.而且,又不像继承那么重量级. 下 ...
- Linux——扩展和缩减、删除逻辑卷
一.查看LVM状态信息: pvdisplay #显示物理卷信息vgdisplay #显示卷组信息lvdisplay #显示逻辑卷信息 二.扩展和缩减卷组: 通过添加额外的物理卷为卷组增加更多磁盘空间, ...
- Linux下的Vlan子接口(逻辑子接口)
一.Vlan子接口基础知识 vlan子接口定义: 通过协议和技术将一个物理接口(interface)虚拟出来的多个逻辑接口.vlan子接口共享物理网卡的流量. 相对子接口而言,这个物理接口称为主接口. ...
- java接口可以扩展抽象类_Java—接口与抽象类
1.语法层面上的区别 1)抽象类可以提供成员方法的实现细节,而接口中只能存在public abstract 方法: 2)抽象类中的成员变量可以是各种类型的,而接口中的成员变量只能是public sta ...
- linux 系统lv扩展_Linux增加LV(逻辑卷)容量
Linux增加LV(逻辑卷)容量 2017-09-29-17:34:13 个人原创博客,转载请注明出处. 查看逻辑卷的相关命令: lvs vgs 命令: [root@arch ~]#vgs VG #P ...
最新文章
- idea access数据库连接_idea代码神器:根据表生成代码
- 数据库面试题【十一、InnoDB引擎的4大特性】
- 查看SecureCRT保存的密码
- linux 根据ip查机器名
- windows任务计划程序 坑
- Windows 11 上大招!正式支持安卓!
- python怎么输出表格中随机数_python 输出一个随机数
- java模拟dos窗口
- Gemini 2 for Mac(重复文件查找清理工具)
- 微信小程序 访问locolhost_微信小程序开发——本地调试
- 华硕网吧服务器型号,华硕服务器-Z10PA-D8 | 专业网吧维护
- 线和面的方程区别_平面方程和直线方程的区别?
- 云桌面到底是干什么的?
- mysql截取前几个字符串_mysql中截取指定字符前后的字符串
- android 设置iptv vlan tag的命令,IPTV+VLAN设置教程
- 漏洞复现----11、GlassFish任意文件读取
- 《我要飞,永远都不会累 》---伤感留言
- 软件工程——成本效益分析
- 如何在网格上绘画【UE4】
- charles安装及设置(三星手机)