图像处理:什么是遮挡?

84

我正在开发一个图像处理项目,在许多科学论文中看到了遮挡这个词,那么在图像处理的上下文中遮挡是什么意思呢?字典只给出了一个一般性的定义。有人可以使用图像来描述它们吗?

5个回答

133
遮挡意味着有些你想看到的东西,但由于你的传感器设置或某些事件的属性,无法看到。 它如何表现或如何解决问题将因具体问题而异。
举几个例子: 如果你正在开发一个跟踪对象(人,汽车等)的系统,则当你正在跟踪的对象被另一个对象隐藏(遮挡)时,就会出现遮挡。比如两个人相互经过,或者一辆车从桥下通过。 在这种情况下,问题是当一个对象消失并重新出现时该怎么做。
如果你正在使用一个范围摄像头,那么遮挡是指你没有任何信息的区域。一些激光范围摄像头的工作原理是向你要检查的表面发送一束激光束,然后使用一个摄像机设置来识别该激光在生成的图像中的碰撞点。这给出了该点的3D坐标。然而,由于摄像机和激光不一定对齐,因此在检查的表面上可能存在摄像机可以看到但激光无法命中的点(遮挡)。 在这里,问题更多地是传感器设置的问题。
在立体成像中也可能会出现相同的问题,如果场景的某些部分只被两个摄像机中的一个看到,则显然无法收集任何范围数据。
可能还有更多的例子。 如果您指定您的问题,那么也许我们可以定义在这种情况下遮挡的含义以及它所涉及的问题。

3
谢谢,kigurai!!! 我正在为嵌入式处理器实现SIFT算法。我现在明白了,SIFT有一定的能力来识别部分覆盖(遮挡)的物体。 - HaggarTheHorrible
很高兴能够帮助。祝你好运! - Hannes Ovrén

33
遮挡问题是计算机视觉普遍存在的主要原因之一,具体来说,在目标跟踪中这个问题更加棘手。请参见下面的图像:enter image description here 注意,如图所示,在帧 05190835 中,与帧 0005 中的脸部相比,女士的脸部并没有完全显示出来。
以下还有一张图片,其中这位男士的脸在所有三个画面中都被部分隐藏。partial occlusion 请注意,在下面的图像中,由于遮挡(即在他们前面部分被其他人躲起来),红色和绿色边界框中的夫妇的跟踪在中间帧中丢失,但当他们变得(几乎)完全可见时在最后一帧中正确地跟踪。enter image description here 图片来源:Stanford,USC

12

遮挡是阻碍我们视线的东西。在这里显示的图像中,我们可以轻松地看到前排的人们。但第二排只能部分可见,第三排则更不可见。在这里,我们说第二排被第一排部分遮挡,而第三排则被第一排和第二排遮挡。 当有很多物体时,我们可以在教室(学生按行坐)、交通十字路口(车辆等待信号)和森林(树木和植物)等地方看到这样的遮挡。 输入图像描述


5

除了前面所说的,我还想补充以下内容:

  • 对于目标跟踪,处理遮挡的关键是编写高效的代价函数,能够区分被遮挡的对象和遮挡它的对象。如果代价函数不正确,则对象实例(ids)可能会交换,导致跟踪错误。有许多方法可以编写代价函数,一些方法使用卷积神经网络[1],而另一些则更喜欢具有更多控制并聚合特征的方法。[2] CNN模型的缺点在于,如果您在未出现于训练集中的对象存在的情况下跟踪训练集中的对象,并且第一个对象被遮挡,那么跟踪器可能会附着在错误的对象上,有可能永远无法恢复。这里有一个视频演示了这个问题。聚合特征的缺点是你必须手动设计代价函数,这需要时间和有时候需要一些高级数学知识。
  • 在密集的立体视觉重建中,遮挡发生在左相机看到而右边没有看到的区域(或反之)。在视差图中,这个被遮挡的区域显示为黑色(因为该区域的对应像素在另一幅图像中没有等效的像素)。一些技术使用所谓的背景填充算法,用来从背景填充该遮挡区域。其他重建方法则简单地让那些视差图中没有值的像素保持不变,因为来自背景填充方法的像素可能在那些区域不正确。以下是使用密集立体方法获得的三维投影点。这些点向右旋转了一点(在三维空间中)。在这种情况下,视差图中被遮挡的值未被重建(黑色),因此在3D图像中我们看到黑色“阴影”在人身后。

    enter image description here


3
由于其他答案已经很好地解释了遮挡,所以我只会补充一些内容。基本上,我们和计算机之间存在语义差距。
计算机实际上将每个图像视为值序列,通常在RGB图像中的每种颜色的范围为0-255。这些值以(row, col)的形式索引每个图像点。因此,如果对象相对于摄像机改变其位置,其中某些方面被隐藏(例如人的手没有显示),计算机将看到不同的数字(或边缘或任何其他特征),因此这将更改计算机算法来检测、识别或跟踪对象。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接