官术网_书友最值得收藏!

2.2.1 模板匹配算法

圖像的表示單元是像素。像素的描述形式有很多,常用的是RGB三通道描述方式。根據像素的各個通道的灰度值,可以對游戲圖像進行一系列處理。圖2-3是基于模板匹配算法的圖像識別。模板匹配的思想是在一幅圖像中尋找與模板圖像最匹配的部分。

圖2-3 模板匹配的過程

Step1:從原圖像的左上角開始,從左向右、從上到下,步長為1,采用滑動窗口的方式,依次計算模板圖像和窗口子圖像的相似度。

Step2:把相似結果存儲在結果矩陣中。

Step3:最終在結果矩陣中找到最佳匹配值。相似度越高,則最佳匹配值越大,結果矩陣中對應部分越亮。

OpenCV中提供了接口函數cv2.matchTemplate(src,tmpl,method)進行模板匹配,其中method表示選擇的匹配方法。可用的方法包括如下幾種。

(1)平方差匹配

CV_TM_SQDIFF:最好的匹配對應的匹配值為0。匹配越差,匹配值越大。

(2)標準平方差匹配

CV_TM_SQDIFF_NORMED:最好的匹配對應的匹配值為0。匹配越差,匹配值越大。

(3)相關匹配

CV_TM_CCORR:值越大,表示匹配程度越高。0表示最差的匹配效果。

(4)標準相關匹配

CV_TM_CCORR_NORMED:值越大,表示匹配程度越高。0表示最差的匹配效果。

(5)相關匹配

CV_TM_CCOEFF:1表示完美匹配,-1表示糟糕的匹配,0表示沒有任何相關性。

(6)標準相關匹配

CV_TM_CCOEFF_NORMED:1表示完美匹配,-1表示糟糕的匹配,0表示沒有任何相關性。

基于像素值的方案是對相同位置的兩張圖像的像素值進行匹配,要求在相同檢測位置的像素值大小要相等或相近。但是在實際測試過程中,因為異形屏、手機分辨率、劉海屏或Bug調試界面的不同,會導致圖像的大小和UI差異比較大,模板匹配算法很難適配這種情況。基于特征點的方案可以解決這些問題。

主站蜘蛛池模板: 连州市| 侯马市| 呈贡县| 会理县| 扎兰屯市| 吉水县| 封开县| 牟定县| 屏东市| 深泽县| 舒兰市| 砀山县| 沛县| 正蓝旗| 汾西县| 山阳县| 古浪县| 营山县| 拉孜县| 平乐县| 舞钢市| 彭水| 綦江县| 威远县| 泰兴市| 田东县| 福贡县| 永济市| 海口市| 香港 | 江达县| 岗巴县| 偃师市| 永宁县| 大同市| 临沭县| 八宿县| 湘西| 灵璧县| 黑水县| 林西县|