2010-04-09 156 views
2

我想檢測標誌物在網絡攝像頭視頻飼料和一個3D對象覆蓋了 - 幾乎完全一樣:http://www.morethantechnical.com/2009/06/28/augmented-reality-with-nyartoolkit-opencv-opengl/檢測標記用的OpenCV和Python

我知道的ARToolKit是最好的模塊對於這一點,但我希望只使用python中的opencv,因爲我不知道c/C++足夠使用artoolkit。我希望有人能夠讓我走上正確的軌道,檢測標記並確定它的位置和方向等,因爲我不知道如何去做這件事或者我應該使用什麼功能。

回答

2

OpenCV沒有標記檢測/追蹤功能。但它提供了所需的所有算法,因此實現您自己的算法相當容易。 您所指的文章僅使用OpenCV進行視頻抓取。標記檢測由源自ARToolkit的NyARToolkit完成。 NyARToolkit具有適用於Java,C#和ActionScript的版本。

ARToolkit主要是用純C編寫的,而不使用花哨的C++特性。它可能比你想象的更容易使用。該文檔包含很好的解釋教程。例如http://www.hitl.washington.edu/artoolkit/documentation/devstartup.htm

即使您決定不使用ARToolkit,入門文檔也可以幫助您瞭解標記檢測的過程。

0

我認爲使用python和打開CV執行標記檢測最常用的方法是使用SURF描述符。 我發現這個video非常有用,你可以在this page找到鏈接的代碼。 Here you can download the code。我不知道如何用3d對象覆蓋它,但我相信你可以用pygame或matplotlib做些什麼。