2013-03-29 108 views
0

我可以在我的攝像頭的捕捉中使用cvFindContour繪製輪廓,但現在我想將每個輪廓存儲到某個對象中。從cvFindContour中提取對象

這裏的目標是對相機的捕捉進行實時對象檢測,但我真的不知道如何處理這些輪廓。

有什麼想法嗎?

回答

1

我想每個輪廓存儲到一些對象

那麼,如果你做這樣的事情:在findContours電話後

// detect edges using canny: 
Mat edges; 
Canny(myImg, edges, 100, 200, 3); 

vector<vector<Point> > contours; 
vector<Vec4i> hierarchy; 
findContours(edges, contours, hierarchy, CV_RETR_TREE, CV_CHAIN_APPROX_NONE); 

contours矢量握着你的輪廓已經。

我真的不知道該怎麼做這些輪廓

這是完全不同的問題,那就是你的具體領域,具體的做法非常具體的......沒有人能告訴你什麼正是你應該做的,但你可以研究的一些現有的解決方案,並瞭解更多關於藝術的現狀,找出你做。你需要自己做:)

+0

你好,謝謝你的回覆。 我已經能夠找到並繪製輪廓。它被存儲到一個CvSeq *中,但是如果我想只顯示輪廓數字X例如呢? 我所能做的只是CvSeq *輪廓 - > h_next:s –

+0

@kevinlabille:這就是爲什麼我附加了它應該是什麼樣子的例子。您正在使用C++,因此請勿使用舊的C風格的OpenCV函數。在我的例子中,你有很好的'std :: vector'對象和輪廓。 – LihO