2016-04-27 152 views
1

此任務來自穩定背景上的跟蹤對象。到目前爲止,我是能夠消除的背景,並獲得二進制掩碼是這樣的:二值圖像中的對象檢測

1

2

我需要得到邊界玩具的矩形沒有連接到它的電源線(在某些幀是很厚)。聽起來很容易,但我想不出一個好辦法。

我試着與我剪裁的玩具模板互相關。這不是很好,再加上我需要矩形才能夠改變它的大小。繩子加了一些混亂。

meanShift()也沒有顯示出良好的結果,因爲繩索和偶爾的噪音。

現在我使用findContours()進行了一些調整,但它對於看起來像是好的圖像仍然產生一些奇怪的邊界。

我一直在想,必須有一些更簡單有效的解決方案。

回答

0

爲了去除連接的電線,我只是簡單地做一個關閉,然後打開。就像你第一次重新連接關閉點,然後你擦除孤立的點並切斷電源線。

然後,您可以使用相應的MatLab函數計算邊界框。

+0

關閉/打開操作完成後,可能會留下一些不需要的斑點。您可以通過輪廓屬性「過濾」輪廓屬性(例如:如果周邊或表面不夠高,則可以忽略輪廓) – Pierre

0

根據您的第二張圖片,關閉過程可能會移除玩具的大部分(因爲玩具身體的邊界很薄),所以(如果我們可以假設玩具和繩子的位置始終垂直)時,應首先使用凸包,然後在「圖像的每一行」中分別尋找厚物體(基於玩具在所有部位的寬度比繩索或噪點多的事實)。在每一行中,長度大於閾值的每條水平線都保留該行,否則將其刪除。通過這種方式,您可以重建玩具的凸包,現在您可以輕鬆地爲其安裝一個矩形。