图像处理:啥是遮挡?
Posted
技术标签:
【中文标题】图像处理:啥是遮挡?【英文标题】:Image Processing: What are occlusions?图像处理:什么是遮挡? 【发布时间】:2011-02-15 09:27:02 【问题描述】:我正在开发一个图像处理项目,我在许多科学论文中遇到了遮挡这个词,遮挡在图像处理的上下文中是什么意思?字典只是给出一个笼统的定义。任何人都可以使用图像作为上下文来描述它们吗?
【问题讨论】:
【参考方案1】:遮挡意味着您想看到某些东西,但由于传感器设置的某些属性或某些事件而无法看到。 它的具体表现方式或您处理问题的方式将因手头的问题而异。
一些例子:
如果您正在开发一个跟踪对象(人、汽车等)的系统,那么如果您正在跟踪的对象被另一个对象隐藏(遮挡),就会发生遮挡。就像两个人从彼此身边走过,或者一辆在桥下行驶的汽车。 这种情况下的问题是当一个对象消失并再次出现时你会做什么。
如果您使用的是测距相机,则遮挡是您没有任何信息的区域。一些激光测距相机的工作原理是将激光束传输到您正在检查的表面上,然后使用相机设置来识别结果图像中激光的撞击点。这给出了该点的 3D 坐标。但是,由于相机和激光不一定对齐,因此检查表面上可能存在相机可以看到但激光无法击中的点(遮挡)。 这里的问题更多是传感器设置问题。
如果场景的某些部分只能被两台摄像机中的一台看到,立体成像也会发生同样的情况。显然无法从这些点收集范围数据。
可能还有更多的例子。
如果您指定了您的问题,那么也许我们可以定义在这种情况下什么是遮挡,以及它会带来什么问题
【讨论】:
谢谢你kigurai!!!我正在为嵌入式处理器实现 SIFT 算法。我现在明白,SIFT 有能力在一定程度上识别这些被部分覆盖(遮挡)的对象。 很高兴能帮上忙。祝你好运!【参考方案2】:遮挡是我们视线的障碍。在这里显示的图像中,我们可以很容易地看到前排的人。但是第二行是部分可见的,而第三行则不那么可见。在这里,我们说第二行被第一行部分遮挡,第三行被第一行和第二行遮挡。 当有很多物体时,我们可以在教室(学生排成一排),交通路口(等待信号的车辆),森林(树木和植物)等中看到这样的遮挡。
【讨论】:
【参考方案3】:遮挡问题是计算机视觉普遍困难的主要原因之一。具体来说,这在 Object Tracking 中问题更大。见下图:
注意,在帧0519
和0835
中,女士的脸不完全可见,而不是在帧0005
中。
还有一张照片,其中男人的脸在所有三个帧中部分隐藏。
请注意下图中红色和绿色边界框中的情侣如何由于遮挡(即被前面的另一个人部分隐藏)而在中间帧中丢失但正确当它们(几乎)完全可见时,在最后一帧中进行跟踪。
图片提供:斯坦福大学,南加州大学
【讨论】:
【参考方案4】:由于其他答案已经很好地解释了遮挡,我只会补充一点。基本上,我们和计算机之间存在语义鸿沟。
计算机实际上将每个图像视为 RGB 图像中每种颜色的值序列,通常在 0-255 范围内。对于图像中的每个点,这些值以 (row, col) 的形式进行索引。因此,如果对象在对象的某些方面隐藏的相机中改变其位置(不显示人的手),计算机将看到不同的数字(或边缘或任何其他特征),因此计算机算法将更改为检测、识别或跟踪对象。
【讨论】:
【参考方案5】:除了上面所说的,我想补充以下几点:
对于对象跟踪,处理遮挡的一个重要部分是编写一个有效的成本函数,该函数将能够区分被遮挡的对象和正在遮挡它的对象。如果成本函数不正确,则对象实例(id)可能会交换并且对象将被错误地跟踪。有很多方法可以编写成本函数,有些方法使用 CNNs[1],而有些方法更喜欢控制和聚合特征[2]。 CNN 模型的缺点是,如果您正在跟踪训练集中的对象而存在不在训练集中的对象,并且第一个对象被遮挡,则跟踪器可能会锁定错误的对象,并且可能会或可能永远无法恢复。这是一个video 展示了这一点。聚合特征的缺点是您必须手动设计成本函数,这可能需要时间,有时还需要掌握高等数学知识。在密集立体视觉重建的情况下,当一个区域被左相机看到而右相机看不到(反之亦然)时,就会发生遮挡。在视差图中,这个被遮挡的区域显示为黑色(因为该区域中的相应像素在其他图像中没有等效像素)。一些技术使用所谓的背景填充算法,用来自背景的像素填充被遮挡的黑色区域。其他重建方法只是让那些没有值的像素在视差图中,因为来自背景填充方法的像素在这些区域可能不正确。波纹管您有使用密集立体方法获得的 3D 投影点。这些点向右旋转了一点(在 3D 空间中)。在所呈现的场景中,视差图中被遮挡的值未重建(带有黑色),由于这个原因,我们在 3D 图像中看到了人背后的黑色“阴影”。
【讨论】:
以上是关于图像处理:啥是遮挡?的主要内容,如果未能解决你的问题,请参考以下文章