2014-09-02 104 views
0

背景扣除。 MOG和MOG2原來是無用的,因爲他們認爲第一幀是背景。繪製檢測到的物體OpenCV?

所以我做了逐幀減法。像這樣
enter image description here

我的問題是現在只繪製檢測到的物體白色。
順便說一句,我沒有嘗試內置的FindContours()方法&在圖像中獲得了成千上萬的輪廓。

回答

2

對於findContours()您可能會誤導您。該方法假定二進制圖像作爲輸入,如果它不是十分二進制的,則將非零像素視爲1,而不管它是哪種顏色或灰度。​​

因此,您的圖像幾乎是二元化的,您可以觀察黑白區域。黑色區域被視爲背景,非黑色區域(非零)被視爲前景像素區域。 findContours()沒有做任何事情比「標記」連貫的前景像素(是區域)多或少。所以你得到一個向量列表(每個檢測區域的一個點向量)。

爲了檢測整個總線對象,你可能要查找的:convexHull 這是(如果我沒有記錯)vertrices名單也描述所有(先前發現的)區域內的區域。因此,您可能需要先減去異常值(如街道或影像底部的陰影)。

也很有趣:convexityDefects 和:approxPolyDP