目标又多又密?多轮迭代的方式进行密集目标检测
❝论文:IterDet: Iterative Scheme for ObjectDetection in Crowded Environments
❞
代码:https://github.com/saic-vul/iterdet
简介
2020年5月莫斯科三星AI研究院提出的文章,针对密集目标进行检测,密集目标检测的难点在于既要检测出不同的目标,又要抑制重复目标框的产生。作者提出了一种「迭代检测」的方案,不论单步检测器还是多步检测器,只需要在训练和推理上做很少的修改,就能简单高效地检测出密集目标。
迭代检测,不用保证每次迭代的召回率,早期,检测部分目标子集,后期将检测的结果和图像再一次输入网络,使检出的目标不再被检测到,迭代检测出复杂的目标子集。
方法
如何迭代
,输入图像: ,history map 为空,检测器 将输入 和 映射为一系列边框 。
「history map 映射方式」:每个像素点的目标个数。
,输入图像: ,history map 由 映射而得,检测器 将输入 和 映射为一系列边框 ;
结束标志:以此类推,直到达到迭代次数或当前迭代未检测到新目标,即 时,结束迭代。
那么最后的检测结果就是每次迭代检测出的目标的全集,即:
要想实现上述方案,有两点必须解决:1)如何将一个检测器 转换为对历史检测敏感的新检测器 ;2)如何让新检测器 在不同的迭代下检测出不同的目标子集。
训练过程
随机地将标注目标框分为: 和 两个集合,且 ,将 制作为history map ,使得模型训练来利用已有的目标框 信息,预测缺失的目标框集合 ,同时,通过不同随机划分 和 ,还可以达到了数据增强的效果。
数据集:
AdaptIS:包含两个子集Toy V1和Toy V2,用于实力分割任务而生成的数据集,现有标注可以使其用于目标检测,且每张图片平均有30个目标,大部分有重叠情况,绝对是一个密集目标检测的数据集。
「Toy V1」:训练集、验证集分别有2000和10000张图像,大小为:96×96。
「Toy V2」:训练集、验证集和测试集分别有25000, 1000和1000张,图片大小为128×128。
「CrowdHuman」:训练集、验证集和测试集分别有15000, 4370和5000张图片,平均每张图的人物数量达到了22.64个,远大于其他主流的人体检测数据集,其中,每个目标有三个标注框:full body, visible body 和 head。官网:www.crowdhuman.org
「WiderPerson」:训练集、验证集和测试集分别有8000,1000和4382张图片,共5个类别:pedestrians, riders, partially visible persons, crowd 和 ignored regions。作者在训练和测试时,将后四类合并为了一类。
官网:www.cbsr.ia.ac.cn/users/sfzhang/WiderPerson
实现细节
采用香港中文大学-商汤科技联合实验室开源的基于Pytorch实现的深度学习目标检测工具箱mmdetection,仓库地址:https://github.com/open-mmlab/mmdetection
,预训练模型包含单步检测器的RetinaNet和两步检测器FasterRCNN,两者的BackBone均采用ResNet-50的默认训练参数,优化器采用Adam,学习率learning rate为0.0001 。
此外,作者修改了两个个地方:1)FPN中每个卷积层之后添加了Batch Normalization;2)未冻结ResNet的第一个block,因为在这个block之前添加了历史映射和可训练的卷积层。
实验指标与结果如下:
搞事情
今年5月,2020 CrowdHuman人体检测大赛启动上线,本届比赛是CrowdHuman人体检测赛的第二期,数据集应该就是论文中的CrowdHuman数据集。官方基于上述论文方法公布了baseline,具体可见:【Ranking第7名,2020 CrowdHuman大赛Baseline发布】
git地址:https://github.com/thuwyh/BAAI-2020-CrowdHuman-Baseline
一些检测结果:
本文分享自微信公众号 - AI搞事情(AI_gsq)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
一致性hash算法
前言 在解决分布式系统中负载均衡问题的时候,我们可以使用Hash算法让固定的一部分请求落到同一台服务器上,这样每台服务器固定处理一部分请求(并维护这些请求的信息),进而起到负载均衡的作用。 但是普通的hash取模算法伸缩性很差,当新增或者下线服务器机器时候,用户id与服务器的映射关系会大量失效。这在分布式缓存系统中,是非常严重的问题。 例如我们原先有10台服务器,故而hash取模我们一般会这么算:hash(key)%10,从而得到一个在0-9之间的余数,确定请求由哪个服务器处理。 此时如果我们上线新服务器,或下线旧服务器,都会使服务器数量发生改变,这时候不论是hash(key)%11还是hash(key)%9,都会使近乎所有的key的hash取模结果和原先不一样,进而引发问题。比如缓存场景中的负载均衡,如果遇到这种情况,会使短时间内近乎所有的key失效,进而引发缓存雪崩。 为了解决这个问题,使得分布式系统可以自由且无顾虑的增减服务器,我们引入了一致性hash算法,利用hash环对其原本的hash取模算法进行了改进。 1 一致性hash算法 一致性哈希算法在1997年由麻省理工学院提出,...
- 下一篇
义柏说丨开源,用 To C 时代网络效应的打法做 To B 基础软件
| 作者:丁宁 | 转载自:义柏资本 |编辑:王皓月 | 设计:朱亿钦 2020年,似乎所有的投资人都开始看 To B 赛道,下行的宏观经济、新冠疫情以及未来可能出现的黑天鹅、逐渐消失的人口红利等因素给了 To B 充分被青睐的理由,但其周期长、增长慢、多数项目制等特点,也让很多周期较短的基金望洋兴叹。 那么有没有一种类型的项目,可以集合 To B 和 To C 两个赛道的优点? 作为一家从诞生之初就专注前沿科技 To B 赛道的精品投行,义柏资本在众多 To B 创业项目中,发现了一些带有 To C 影子的硬核科技项目,而这些项目有一个共同点:都采用了开源模式。 资本市场“团宠” 社区持续壮大 中国资本市场上有一些大家已经基本形成共识的观点:一般项目到了 PE 阶段 PS 已经下降到10以内,有时候 PS 低于6才会觉得是便宜的项目,很多传统上市公司的 PS 甚至不到2。即便是高毛利的软件企业,PS 一般也很少超过12。 但开源不一样,美国的数据库上市公司 MongoDB 即便在美股遭受重创的情况下,依旧保持了20倍以上的 PS,值得注意的是,这是上市3年后的公司,而非一个创企。 事...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8编译安装MySQL8.0.19
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16