我正在尋找一種方法來使用matlab在屏幕上查找按鈕的位置。現在我爲此創建了以下代碼: 使用此代碼,我製作了我的計算機的屏幕截圖,將它加載到matlab中並使其加倍。 然後對目標圖像(需要在我的屏幕上找到的圖像)執行相同操作,然後嘗試將其匹配到整個矩陣的矩陣並顯示此圖像左上角的座標。 問題是,用這種方法和1920 * 1080的屏幕分辨率大約需要15分鐘才能完成這個完整的過程。查找圖像的部分圖像的座標
所以我的問題是,有沒有更容易/更快的方式來找到我的屏幕上,或另一個圖像中的圖像coördinates(或中心)?到目前爲止,即使在使用圖像處理工具箱時,我也沒有發現。
clear all
close all
robo = java.awt.Robot;
t = java.awt.Toolkit.getDefaultToolkit();
rectangle = java.awt.Rectangle(t.getScreenSize());
image = robo.createScreenCapture(rectangle);
filehandle = java.io.File('screencapture.png');
javax.imageio.ImageIO.write(image,'png',filehandle);
scrimg=im2double(imread('screencapture.png')); % screenshot
sfimg=im2double(imread('searchfor.png')); % image to look for
[mA,nA,zA] = size(sfimg);
[mB,nB,zB] = size(scrimg);
F = zeros((mB-mA+1)*(nB-nA+1),3);
k = 0;
for p = 1:mB-mA+1
for q = 1:nB-nA+1
for r = 1:zB-zA+1
iets=[p q r];
disp(iets)
if all(all(sfimg==scrimg(p:p+mA-1,q:q+nA-1,r:r+zA-1)))
k = k + 1;
F(k,:) = [p,q,r];
end
end
end
end
F(k+1:end,:) = [];
看看'xcorr2'。 – chappjc