2016-08-04 79 views
0

(我问这在OpenCV中的情况下,但使用其他库或一般的计算机视觉技术,欢迎答案)OpenCV的 - “充盈”从背景减除口罩对象的缺件

在做背景减除这样与使用MOG2一样,对象中经常存在间隙,因此如果要应用掩码,则会丢失数据(请参阅下面的上传示例掩码)。在OpenCV中(最好是在Python中)用什么方法来“关闭”边缘,然后在封闭边缘内填充蒙版(参见手动创建的上传示例图像)?一个关键的问题是,当一块缺少边缘时,OpenCV需要知道如何继续边缘关闭并填充该块。

例如,如果使用背景减法来检测走路的人,然后将掩码应用到图像并进行“填充”,最终结果将是一个人在背景中被掩盖而没有任何大块丢失他们的身体或衣服不像如果没有先做这个面膜只是应用面具。

我的理解可能有一些情况下,过多的皮肤或衣服上的相匹配的背景,因此该方法可能不是在所有情况下完美地工作,但我至少寻找一个非常有效的方法。

这一切背后的目标是能够提取移动物体,以便HAAR/LBP匹配可以在它们上运行,从而更有效地识别它们(由于找到感兴趣的区域)并准确地(由于移除任何可能的背景混乱)。

ORIGINAL

enter image description here

理想的情况下会变成这样的事情

enter image description here

回答

0

我想尝试的第一件事是形态学操作。形态开放过滤出面具中的嘈杂斑点,并通过形态闭合和形态孔填充填补空白。您将不得不尝试为您的特定问题找到最佳的结构元素。