模板匹配與定位配準一般是相輔相成的。html
一般來講,若是不考慮180°的翻轉,源和目標各有「一個點,一個傾斜角度」就能夠用於定位配準。算法
圖像配準:一般指定一幅圖像爲參考圖像,另外一幅圖像爲待配準圖像,配準的目的是經過某種幾何變換使待配準圖像與參考圖像的座標達到一致。spa
從算子vector_angle_to_rigid的簽名就能清晰看出這一點:htm
vector_angle_to_rigid( : : Row1, Column1, Angle1, Row2, Column2, Angle2 : HomMat2D)blog
它只須要輸入「源」的定位點座標、傾斜角度,以及「目標」的定位點座標、傾斜角度,它就能生成一個仿射變換矩陣用於配準。get
所以常見的定位方式有:模板
① 兩點定位file
② 點線定位model
③ 模板匹配二維碼
兩點定位案例圖:
點線定位案例圖:
模板匹配定位案例圖:
通常的配準思路:
假如要將左側的二維碼精準地貼入右側的「條碼粘貼槽」中,其算法思路以下。
① 擬合抓取二維碼的四條邊線,這四條邊線相交會有4個角點;
② 將對角線的兩個角點連起來,這兩條連線會有一個交點,這個點定義爲該圖形的中心點;
③ 用相似的方法求得「條碼粘貼槽」的中心點座標;
④ 經過直線擬合的方式分別求二維碼和「條碼粘貼槽」的傾斜角度;
⑤ 根據獲得的兩個點座標和兩個傾斜角,完成配準工做。
定位的典型應用:
常見的模板匹配方法:
① 基於形狀(輪廓特徵匹配)
② 基於互相關(基於灰度,NCC)
拓展閱讀:
《探究算子find_shape_model中參數MaxOverlap的準確意思》