模板匹配:模板匹配是一種最原始、最基本的模式識別方法,研究某一特定物件物的圖案位於影象的什麼地方,進而識別物件物,這就是乙個匹配問題。它是影象處理中最基本、最常用的匹配方法。模板匹配具有自身的侷限性,主要表現在它只能進行平行移動,若原影象中的匹配目標發生旋轉或大小變化,該演算法無效。
工作方法:在待測的影象上,從左到右、從上到下計算模板影象與重疊子影象匹配度
)#模板影象
target = cv.imread(r"c:\pics\samples\data\lena-1.png"
)#原影象
cv.imshow(
"template image"
, tpl)
cv.imshow(
"target image"
, target)
methods =
[cv.tm_sqdiff_normed, cv.tm_ccorr_normed, cv.tm_ccoeff_normed]
#標準平方差匹配 ,標準相關匹配,標準相關係數匹配
th, tw = tpl.shape[:2
]#模板的高寬
for md in methods:
# print(md)
result = cv.matchtemplate(target, tpl, md)
#畫素點的相關度量值
min_val, max_val, min_loc, max_loc = cv.minmaxloc(result)
#尋找匹配最值(大小和位置)
if md == cv.tm_sqdiff_normed:
tl = min_loc
else
: tl = max_loc
br =
(tl[0]
+tw, tl[1]
+th)
;#確定匹配區域
cv.rectangle(target, tl, br,(0
,0,255),
2)#將匹配區域繪製到原圖上
cv.imshow(
"match-"
+np.
str(md)
, target)
# cv.imshow("match-" + np.str(md), result)
src = cv.imread(r"c:\pics\samples\data\lena-1.png"
)cv.namedwindow(
"input image"
, cv.window_autosize)
cv.imshow(
"input image"
, src)
template_demo(
)cv.waitkey(0)
cv.destroyallwindows(
)
人臉檢測原理及示例 OpenCV Python
opencv是intel開源計算機視覺庫 computerversion 它由一系列c函式和少量 c 類構成,實現了影象處理和計算機視覺方面的很多通用演算法。opencv 擁有包括 300 多個c函式的跨平台的中 高層 api。它不依賴於其它的外部庫 儘管也可以使用某些外部庫。opencv 對非商業...
OpenCV模板匹配
include include opencv2 opencv.hpp using namespace std using namespace cv int main int argc,char argv load reference image img imread argv 1 always ch...
opencv模板匹配
模板匹配是一種用於在源影象s中尋找定位給定目標影象t 即模板影象 的技術。其原理很簡單,就是通過一些相似度準則來衡量兩個影象塊之間的相似度similarity s,t 2.用途 模板匹配方法常用於一些平面影象處理中,例如印刷中的數字 工業零器件等小尺寸目標影象識別分類。3.方法 模板匹配中,源影象和...