[問題] opencv關於內部輪廓contour的問題

看板C_and_CPP作者時間14年前 (2009/11/15 04:22), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
使用findcontour找出內外部輪廓 並且用drawcontour畫出來,如下圖 http://www.wretch.cc/album/show.php?i=lordleeber&b=2&f=1319307559&p=2 問題:要如何知道每個外部輪廓之內有幾個內部輪廓? 我想做出的效果是:如果這個輪廓裡面沒有其他輪廓, 那這個輪廓就移除掉(或不顯示)。 感覺opencv裡面應該有可是我又不知道怎麼用:Q ps:我試過像是boundingrect或是contourarea這些函數 用的是相同的*contour,但它們都只有計算外部輪廓而已 ------------------------------------------------------- 另外一個問題是: opencv的"範例:高級圖像處理初步" 最下面畫輪廓的時候使用了 for(;cont;cont = cont->h_next) { cvDrawContours( dst_contours, cont, CV_RGB(255, 0, 0), CV_RGB(255, 0, 0), 0, 1, 8, cvPoint(0, 0) ); //繪製當前輪廓 ............以下略 本來我想先拿掉drawcontour跑一次這個迴圈以求得平均面積 後來我再用一個for迴圈去跑drawcontour 結果這 第二個for迴圈 會完全沒用 輸出圖是一片黑 問題:為什麼不能用第二次? 請賜教,感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.165.232.100 ※ 編輯: Leeber 來自: 118.165.232.100 (11/15 04:27)
文章代碼(AID): #1A_n6V8m (C_and_CPP)
文章代碼(AID): #1A_n6V8m (C_and_CPP)