前言:

目标检测是计算机视觉领域中的一个重要研究方向,同时也是解决分割、场景理解、目标跟踪、图像描述和事件检测等更高层次视觉任务的基础。在现实场景中,由于小目标是的大量存在,因此小目标检测具有广泛的应用前景,在自动驾驶、智慧医疗、缺陷检测和航拍图像分析等诸多领域发挥着重要作用。那么到底啥样的才算是小目标呢?以及其难点和好用的方法呢?

1.小目标定义

在不同场景下定义小目标的标准不尽相同,但现有的定义方式按学术上可主要分为两类:

(1)基于相对尺度

即从目标与图像的相对比例这一角度考虑来对小目标进行定义。Chen[1]等对小目标做了如下定义:同一类别中所有目标实例的相对面积,即边界框面积与图像面积之比的中位数在0.08%~0.58%之间。除此以外,较为常见的还有以下几种:①目标边界框的宽高与图像的宽高比例小于一定值,较为通用的比例值为0.1;②目标边界框面积与图像面积的比值开方小于一定值,较为通用的值为0.03;③根据目标实际覆盖像素与图像总像素之间比例来对小目标进行定义。

(2)基于绝对尺度:

即从目标绝对像素大小这一角度考虑来对小目标进行定义。目前最为通用的定义来自于目标检测领域的通用数据集——MS COCO数据集,将小目标定义为分辨率小于32像素×32像素的目标。除了MS COCO之外,还有其他基于绝对尺度的定义,如在航空图像数据集DOTA与人脸检测数据集WIDER FACE中都将像素值范围在[10,50]之间的目标定义为小目标。在行人识别数据集CityPersons中,将小目标定义为了高度小于75像素的目标。基于航空图像的小行人数据集TinyPerson则将小目标定义为像素值范围在[20,32]之间的目标。

2.技术难点

(1)可利用特征较少

小目标相比于大/中目标分辨率低,信息较少,难以提取到具有鉴别力的特征。

(2)定位精度要求高

小目标在图像中位置过小且极易受到环境干扰,网络预测时偏移一个像素则对小目标的影响是巨大的。

(3)现有数据集中小目标占比少

现有数据集较少关注小目标这一特别类型。同时,小目标不易标注,人力成本巨大,而且对误差更为敏感。

(4)样本不均衡

训练时通过设定阈值来判断锚框是否属于正样本,这样会导致不同尺寸目标的样本不均衡问题。因此,当人工设定的锚框与真实边框相差较大时,会导致模型忽略小目标的检测。

(5)小目标聚集

小目标更容易出现聚集的现象,这时网络模型的预测边框可能会因非极大值抑制过滤掉大量正确边框,导致漏掉小目标,或是边框距离过近,导致模型难以收敛。

(6)网络结构

目前现有算法针对小目标特性的优化设计不多,加之小目标自身特性所带来的难度,导致现有算法在小目标检测上普遍表现不佳。

3.比较好的传统或深度学习方法

(1)多尺度学习

多尺度是同时结合深层语义信息和浅层表征信息对小目标进行预测,是一种提升小目标检测性能的有效策略。

(2)上下文学习

上下文关系通常指场景中目标与场景或者目标与目标之间的约束和依赖关系,上下文学习即使学习这种关系,以此充分利用了图像中与目标相关的信息,能够有效提升小目标检测的性能[2]。基于上下文学习可分为两类:①隐式上下文特征,即指目标区域周围的背景特征或全局的场景特征。②显示上下文推理,指利用场景中明确的上下文信息来辅助推断目标的位置或类别。

(3)无锚机制

一种摆脱锚框机制的思路是将目标检测任务转换为关键点的估计,即基于关键点的目标检测方法,该方法主要包含两个大类:①基于角点的检测,通过对从卷积特征图中学习到的角点分组来预测目标边界框。②基于中心的检测[3]。预测出左上角和右下角的角点以及中心关键点,然后通过角点匹配确定边界框,最后利用预测的中心点消除角点不匹配引起的不正确的边界框。

(4)优化损失函数

在网络的训练过程中,小目标更容易受到随机误差的影响。[4]提出一种依据目标尺寸设定不同权重的损失函数。[5]将级联思想与焦距损失相结合,提出了Cascade RetinaNet。[6]提出了一种考虑前景背景之间平衡的损失函数,均有效提升了小目标的检测性能。

参考文献:

[1]CHEN C, LIU M Y, TUZEL O, et al. RCNN for small object detection[C]//Proceeding of Asian Conference on Computer Vision. Cham: Springer, 2016: 214230

[2]OLIVA A,TORRALBA A.The role of context in object recognition[J].Trends in Cognitive Sciences,2007,11(12): 520-527.

[3]DUAN K, BAI S, XIE L, et al. Centernet: Keypoint triplets for object detection[C]// Proceedings of the IEEE/CVF International Conference on Computer Vision. New York: IEEE, 2019: 6569-6578.

[4]REDMON J, FARHADI A. YOLO9000: Better, faster, stronger[C]// Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2017: 72637271

[5]DENG C,WANG M,LIU L,et al.Extended feature pyramid network for small object detection[EB/OL].(2020-05-16)[2020-04-09].

[6]LIN T Y, GOYAL P, GIRSHICK R, et al. Focal loss for dense object detection[C]// Proceedings of the IEEE International Conference on Computer Vision. New York: IEEE, 2017: 2980-2988.

[7]高新波,莫梦竟成,汪海涛等.小目标检测研究进展[J].数据采集与处理,2021,36(03):391-417.

END

往期精彩回顾适合初学者入门人工智能的路线及资料下载(图文+视频)机器学习入门系列下载中国大学慕课《机器学习》(黄海广主讲)机器学习及深度学习笔记等资料打印《统计学习方法》的代码复现专辑机器学习交流qq群955171419,加入微信群请扫码

【CV】小目标检测问题中“小目标”如何定义?其主要技术难点在哪?相关推荐

  1. 目标检测项目中面对高分辨率图像的滑动窗口技术(二)(代码开源,超简便API封装,直接调用进行切图及保存)

    在上篇博客简单介绍了滑动窗口技术以及切图程序的使用文档,这篇展示对子图进行反向拼接到原图上(用于对测试集子图预测后结果汇总到原图上)的程序代码以及使用说明. 所需模块:numpy.pandas.mat ...

  2. 【目标检测】56、目标检测超详细介绍 | Anchor-free/Anchor-based/Backbone/Neck/Label-Assignment/NMS/数据增强

    文章目录 1.双阶段和单阶段目标检测器 1.1 双阶段目标检测器 1.1.1 R-CNN 1.1.2 SPP 1.1.3 Fast R-CNN 1.1.4 Faster R-CNN 1.2 单阶段目标 ...

  3. 目标检测、视觉弱监督学习、大脑多模态成像技术等CV综述来了!图像图形学发展年度报告综述专刊!...

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 点击进入-> CV 微信技术交流群 中国图象图形学学会 和中国图象图形学报联合重磅发布 2021年图像 ...

  4. 目标检测算法中ROI提取方法比较+源码分析

    本文主要介绍ROI提取结构在目标检测框架中的作用,并结合源码,理解它的实现方式.包含的算法有:ROI-pooling,ROI-align,Deformable-psroi-pooling. 目前,主流 ...

  5. 目标检测扩(六)一篇文章彻底搞懂目标检测算法中的评估指标计算方法(IoU(交并比)、Precision(精确度)、Recall(召回率)、AP(平均正确率)、mAP(平均类别AP) )

    ​ 基本在目标检测算法中会碰到一些评估指标.常见的指标参数有:IoU(交并比).Precision(精确度).Recall(召回率).AP(平均正确率).mAP(平均类别AP)等.这些评估指标是在评估 ...

  6. 目标检测任务中常用的数据集格式(voc、coco、yolo)

    在目标检测任务中,常见的数据集格式有三种,分别为voc(xml).coco(json).yolo(txt). 一.Pascal VOC Pascal VOC数据集是目标检测的常用的大规模数据集之一,从 ...

  7. 目标检测模型中NMS、soft-NMS、softer-NMS的原理、LNMS文本检测系列(python代码实现)

    非极大值抑制NMS的作用: 是目标检测框架中的后处理模块,主要用于删除高度冗余的bbox. ?一.NMS[参考] 非极大值抑制NMS的过程: 根据置信度得分进行排序: 选择置信度最高的边界框添加到最终 ...

  8. 算法的trick_目标检测算法中的常见trick

    目标检测算法中的常见trick 最近忙着打比赛,感觉看论文也很难静下心来了.基本上看得相当匆忙,主要还是以应用为主.上周压力比较大,没有来得及更新,感觉再不更就说不过去了. 因为比赛比较追求perfo ...

  9. 『论文阅读笔记』目标检测模型中的性能评价方式-IOU、precision/recall、mAP、PR、Fps!

    目标检测模型中的性能评估标准-IOU.precision/recall.mAP.PR.Fps! 文章目录 一.交并比IOU 二.精确率(precision)和召回率(recall) 三.P-R(pre ...

最新文章

  1. Linux入门基础思维导图
  2. mysql为什么需要中间件_究竟为什么要引入数据库中间件
  3. ubuntu16.04 + kinetic +turtlebot2配置
  4. Java:注解(Annotation)自定义注解入门
  5. 关于Android屏幕适配
  6. composer 设置代理
  7. python自定义函数的参数调用_python | 自定义函数
  8. 打开,另存为,属性,打印等14个JS代码
  9. 简单测试Content-Length和Chunked两种不同的数据传输方式
  10. Linux 上免费的视频转换器FFmpeg
  11. Java证书工具keytool用法总结
  12. VS2008安装错误,解决方案
  13. 常用软件过程模型-快速原型模型,快速原型模型有哪几种?各有何特点?
  14. SQL如何还原数据库
  15. 【机器学习】网络表征学习、网络嵌入必读论文
  16. uniapp路线规划
  17. python编号/排序/翻转/并行迭代使用场景及作用
  18. xiuno 邮箱设置
  19. Color Constancy 色彩恒常性(1)White Patch Retinex
  20. AI帮我画出了小说里的人物,我这么多年的小说好像白看了。。。

热门文章

  1. 任正非:为什么华为选择与西工大合作,而没选清华北大,mysql连接查询原理
  2. 猿来小课Python视频老师简述让程序员崩溃的瞬间
  3. 初探交换机虚拟化技术m-lag
  4. vue+elementUI中使用Echarts (懒人无脑版)
  5. vscode配置C++环境(图文详解)
  6. airbnb 数据分析报告
  7. 使用 Authing + Lambda 轻松替代 AWS Cognito
  8. SpringBoot笔记通俗易懂版
  9. Javascript兼容IE8
  10. html中将文字设置成红色,怎样用css将文字改为红色?