2012-10-17 55 views
4

我正在嘗試製作一個項目「使用相機確定物體的速度2D」。這只是2D速度。我想在OpenCV中使用Lucas Kanade算法。但是我無法分辨哪個coner屬於我的物體,而且我找不到要跟蹤的物體的質心(這是白色物體放置在黑色背景中,此物體具有任何形狀,例如:square,elip,.. )。如何跟蹤物體的質心來確定運動的距離?我需要使用Lucas Kanade算法來製作這個項目嗎?請幫幫我。「使用相機確定物體的速度2D」 - 如何跟蹤物體的質心?

+0

嘗試此[鏈接](http://stackoverflow.com/questions/77936/whats-the-best-way-to-calculate-a-3d-or-n-d-centroid)。也許它會幫助你。 – Afaq

回答

2

爲了獲得需要做兩件事情的物體的速度,首先需要檢測每個圖像中的對象(以及它凝結到質心作爲​​已建議的),其次則需要在不同的檢測到的對象相關聯圖片。一旦你完成了,速度可以通過簡單的運動速度方程=距離/時間來計算。

協會是容易的,如果你只檢測每幅圖像在一個對象(只是假設的檢測對象),但這種方法容易在現實世界中,打破。

檢測你的對象是,我相信你有困難。如果真的像單個白色物體一樣簡單,而不是純黑色背景,那麼找到質心應該很簡單,只需簡單地平均所有白色像素的座標即可。如果您的圖像嘈雜,則需要先進行一些清理,例如形態學關閉和打開操作,以消除小的噪點。

+0

謝謝克里斯。這是一個很好的解決方案,我認爲是。你能幫我解答一個問題嗎?有人想讓我在OpenCV中使用Lucas Kanade算法來確定速度。我非常仔細地閱讀這個算法。但在這種情況下,我不明白這種算法有什麼用處? (對不起,我的英語) – user1752846

+1

LK光學流程算法將爲您追蹤一組點,而這組曲線將有助於您提供速度。如果您可以在問題中添加一些圖片,則可能會更容易進一步提供幫助。 – Chris