圖像匹配

本章節為您介紹如何使用模板匹配的方法進行元素的尋找點擊操作,FIRERPA 支援使用模板匹配以及特徵點匹配(SIFT)。在開始前,您需要了解關於圖像匹配的基本資訊,圖像匹配分為模板匹配和特徵點匹配,模板匹配適合解析度相同的裝置,更加高效。特徵點匹配適合不同解析度的螢幕,但是部分閾值可能需要根據不同裝置螢幕的大小進行微調。

提示

所有匹配流程均在 FIRERPA 伺服端進行,不佔用本機資源,但由於行動端效能限制效率較低,對效能有需求的可在本機自行截圖匹配。

匹配介面

圖像匹配介面是一個稍微複雜的介面,但是大部分情況下,您所需要調整的只是 thresholddistance 參數,您也可以在下列參數釋義中找到各個參數的含義。介面的主要形式如下,預設情況下進行全螢幕匹配並使用模板匹配方法進行。此介面主要用於節省您主機的運算資源,對效能或識別結果有要求的也可使用截圖介面自行進行截圖匹配。

d.find_similar_image(data, threshold=0.0, distance=250, scale=1.0, area=FindImageArea.FIA_WHOLE_SCREEN, method=FindImageMethod.FIM_TEMPLATE)
欄位描述
data待匹配圖像的位元組資料(裁切圖)
threshold丟棄閾值(相似度)
distance最大特徵點距離(僅特徵匹配)
scale縮放匹配(提高效能,不適用於模板匹配)
area匹配區域(限定區域提高效能)
method匹配方法

匹配方法

匹配方法支援模板匹配以及特徵點匹配,模板匹配適用於紋理明顯,目標形狀固定的情況,但對旋轉、尺度變化、光照變化不夠魯棒。特徵點匹配通過檢測圖像特徵點如角點、邊緣並描述特徵,然後在兩幅圖像中進行匹配。對旋轉、尺度變化、光照變化等具有較強的魯棒性,適用於場景複雜的匹配任務。

匹配方法描述
FindImageMethod.FIM_TEMPLATE模板匹配
FindImageMethod.FIM_FEATURE特徵點匹配

匹配區域

匹配區域主要用來平衡行動端的效能,大部分情況下,需要匹配的項目在螢幕的固定區域,您可以通過指定其所在區域來減小圖像大小,從而減少匹配時的計算量。

匹配區域描述
FindImageArea.FIA_WHOLE_SCREEN全螢幕匹配
FindImageArea.FIA_LEFT匹配左半螢幕
FindImageArea.FIA_TOP_LEFT匹配左上角螢幕
FindImageArea.FIA_TOP匹配上半螢幕
FindImageArea.FIA_TOP_RIGHT匹配右上角螢幕
FindImageArea.FIA_RIGHT匹配右半螢幕
FindImageArea.FIA_BOTTOM_RIGHT匹配右下角螢幕
FindImageArea.FIA_BOTTOM匹配下半螢幕
FindImageArea.FIA_BOTTOM_LEFT匹配左下角螢幕