[英]Preventing Incorrect Template Matching OpenCV
我在項目中使用模板匹配來查找較大圖像subimage
所有位置。 我正在使用OpenCV
方法templateMatch()
和floodFill()
(在Java中)來完成此操作,並且它工作正常,但僅適用於確實包含subimage
較大subimage
。
Imgproc.matchTemplate(image, subimage, result, Imgproc.TM_CCOEFF);
如果較大的圖像不包含該圖像,則會返回大量錯誤位置的列表。 我想要所有位置(如果子圖像存在於較大圖像中),但是如果沒有,則為NONE。 我應該怎么做呢? 如果模板匹配不是正確的方法,那我應該怎么做呢?
順便說一下,我的代碼的結構像這樣的Java opencv模板匹配和泛洪行為。
非常感謝所有幫助!
有一種方法可以嘗試,我知道您提到的問題,無論如何,我找到了解決方案,即您可以對結果圖像進行閾值運算,例如,在sumimage
圖像中找到任何匹配項時進行模板匹配,然后該位置將以白色顯示,當找到匹配好的顏色時,顏色可以更白,因此您可以對圖像進行閾值提取,以找到合適的位置,然后可以找到輪廓或進行其他操作以獲取輪廓位置。 希望它能對您有所幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.