目标检测算法回顾之定义与挑战
目标检测的定义与挑战目标检测任务的地位定义核心问题理想检测器关键挑战从精度角度看挑战从效率角度看挑战目标检测任务的地位目标检测与分类、分割并称为CV的三大主要任务。目标检测可以看出是分类与分割任务的一座过度桥。定义前面我们讲了目标检测的许多应用,那到底什么是目标检测呢?或者说目标检测的任务是什么?目标检测实际上就是找出图像中所有感兴趣的目标(object),并获得这一目标的类别信息和位置信息。核心
目标检测任务的地位
目标检测与分类、分割并称为CV的三大主要任务,他们之间的区别主要如下图所示。从任务的角度来看,目标检测可以看成是分类与分割任务的一座过度桥。这也是目标检测研究的重要性所在原因之一。
PS: 上面给了一个展示的示例,方便大家快区分。从研究的对象和任务出发来区分
那到底什么是目标检测呢?或者说目标检测的任务是什么呢? 🤔
定义
目标检测实际上就是找出图像中所有感兴趣的目标(object),并获得这一目标的类别信息和位置信息。因此,目标检测任务可以解耦成分类任务和定位任务。
- 与分类的区别:
相比分类,检测给出的是对图片前景和背景的理解,我们需要从背景中分离出感兴趣的目标,并确定这一目标的描述(类别和位置),因此检测模型的输出是一个列表,列表的每一项使用一个数组给出检出目标的类别和位置(常用矩形检测框的坐标表示)。 - 与分割的区别:
分割分为实例的分割(Instance-level)和场景分割(Scene-level),解决“每一个像素属于哪个目标物或场景”的问题。
核心问题
从目标的定位角度出发,目标检测需要解决的核心问题主要有3个:
- 大小的多样性
同一张图像上可能同时出现多个不同或相同的目标,他们之间的大小差异大 - 位置的任意性
目标可以出现在图像的任意位置 - 形态的差异性
同一物体目标的形态差异可能很大,目标可能有各种不同的形状
理想检测器
那么对于一个理想的目标检测器,我们当然希望它能够在解决上述核心问题的前提下,具有高的准确度及效率。
因此,为了实现我们所想要的检测器,我们需要解决什么问题?或者说我们将会面临怎么样的挑战呢?
关键挑战
关键的核心问题对应着关键的挑战,因此,从关键核心问题的两个角度(高精度和高效率)出发来看一下目标检测的挑战有哪些。
从精度角度看挑战
从高准确度的角度来看,在现实场景中常见的挑战主要有:
- 类内的差异性
种类内自身材料、纹理、姿态等带来的多样性干扰,如黄色框图中椅子的制作材料及形态差异很大,但是它们都属于椅子的大类别 - 外部环境的干扰
外部环境带来的噪声干扰,比如蓝色框中光照、迷雾、遮挡等带来的识别及回归挑战。
- 类间的相似性
类间因纹理、姿态所带来的相似性干扰,比如黄色框图中是不同品种的动物,但是它们之间的差异又很小;这里实际上可以衍生为细粒度识别领域 - 集群小目标问题
集群目标检测所面临的数量多,类别多样化的问题,比如行人检测,遥感检测等。
从效率角度看挑战
目标检测是一个非常接地气的实际应用技术,它通常需要应用在实时处理的场景之中,比如自动驾驶系统。而且它还有可能需要同时处理成千上万的数据。因此,除了考虑高准确度还需要考虑处理时间,占用内存,消耗流量等方面的效率问题。
那么面对上面的挑战,我们一般有什么方法去解决它呢?下面给出一个示例短暂快速的了解一番。 😀
一个挑战解决方法的例子
在现实中常见的场景有小目标检测场景。我们认为小目标检测场景就很好的包含了上述所提及的所有可能的问题与挑战。对于低像素问题,多数研究采用图像重构方法来解决,对于易遮挡问题,大多研究通过上下文语义信息来辅助检测,对于小尺寸问题则通过尺度自适应变换来解决,对于大批量数据问题可通过降低参数来实现。
小目标检测是目前工业常见的应用常见,要知道农业,工业,交通这些场景基本上都是小目标检测。除此之外,笔者认为医学中的检测(病理大切片)的细胞或者病灶检测也是属于小目标检测的范畴。所以去看很多医学图像的检测论文,你也会发现面对大切片时,大家基本上也都会多尺度构建的。而且医学图像还有另外一个问题,就是你在高分辨率重构的情况下,怎么保持原来图像的一个真实度。要知道在医学领域中,比如细胞基底膜的厚度增加也会带来影响(基底膜的厚度可能时不同的病理类型)。
更多推荐

所有评论(0)