我在水面上放了一個小白球。風使白球在水中移動。我想用opencv來檢測和跟蹤球。由於背景(水面)是單色的,球也是單色的。我只用hsv中的顏色並設置一個閾值來檢測白色(球)。我認爲這種方式比camshift,tld,Optical flow方法更簡單更好。現在我有一個問題,我發現白色發現球,但有時風很強,水波會發生在球后面。就像PIC如下使用opencv檢測水面白球的最佳方法是什麼?
波也有白色的單純皰疹病毒。所以當我用findcontours來獲得球的邊緣時,我會得到包括球和波的邊緣。我試圖用腐蝕和擴張來消除波浪噪音,但我無法得到一個好的結果。我現在不知道。你能幫助並向我展示如何以更好的方式消除浪潮? 我不確定使用顏色來檢測球是我的最佳選擇。也許我應該嘗試camshift,tld,光流法?你能向我展示你的想法嗎?提前致謝!
非常感謝!你的意思是我應該用光流檢測水的速度和hsv的方法來檢測球。但是當水快速移動時,我應該用光流來檢測球不只是速度還是光流只是用於速度檢測?所以當水移動速度很快,我應該使用另一種方法? –
我的意思是找到每幀中所有像素的速度。如果速度低於閾值(這意味着沒有波),那麼使用HSV方法來檢測球。如果速度超過閾值,則停止使用HSV檢測球。在這種情況下,使用其他方法(目前我不知道哪種方法)。 – skm
非常感謝 –