1

该任务来自于在稳定的背景上跟踪对象。到目前为止,我能够删除背景并获得这样的二进制掩码:

1

2

我需要在没有连接绳索的情况下获得玩具的边界矩形(在某些框架上它很厚)。听起来很容易,但我想不出一个好的方法来做到这一点。

我尝试与我裁剪的玩具模板进行互相关。这不是很好,而且我需要矩形来改变它的大小。绳子增加了一些混乱。

meanShift()由于绳索和偶尔的噪音,也没有显示出好的结果。

现在我使用findContours()了一些调整,但它仍然会在看起来不错的图像上产生一些奇怪的界限。

我一直在想必须有一些更简单有效的解决方案。

4

2 回答 2

0

根据你的第二张图片,关闭过程可能会移除玩具的很大一部分(因为玩具身体的边缘很薄),所以(如果我们可以假设玩具和绳索的位置总是垂直的)你应该首先使用凸包,然后在“图像的每一行”中分别寻找较厚的物体(基于玩具在所有部分的宽度都远大于绳索或噪声点的事实)。在每一行中,每条长度超过阈值的水平线,保留​​该线,否则将其删除。通过这种方式,您将仅重建玩具的凸包,现在您可以轻松地将矩形拟合到它。

于 2016-12-10T08:51:58.630 回答
0

为了移除连接的绳索,我只需先关闭然后打开。像这样,您首先重新连接关闭点,然后擦除隔离点并切断电源线。

然后您可以使用相应的 MatLab 函数计算边界框。

于 2016-04-28T07:29:38.627 回答