%?£°??¥??
%function [maxHeight,maxWidth,MaxR] =
templateMatcher(im_matched,im_template)
im_matched=imread('D:\matching algorithm\matching\2.jpg');
%im_template=imread('D:\matching algorithm\matching\1.jpg');
rect=[256 178 145 67]
im_template=imcrop(im_matched,rect);
imshow(im_template);
if isrgb(im_matched)
im_matched = rgb2gray(im_matched);
end
if isrgb(im_template)
im_template = rgb2gray(im_template);
end
dim_matched =double(im_matched);
dim_template = double(im_template);
%·?2?
sigmaST = 0.0;
sigmaS = 0.0;
sigmaT = 0.0;
%?à??D?2a?è
%double R
%×?′ó?à??D?2a?è
MaxR = 0.0;
%×?′ó?à??D?3???????
maxWidth=0;
maxHeight=0;
%????sigmaT
tic
[tempheight,tempwidth] = size(im_template);
for n =1:tempheight
for m =1:tempwidth
sigmaT = sigmaT + dim_template(n,m)^2;
end
end
sigmaT = sqrt(sigmaT);
%?òμ?í????D×?′ó?à??D?μ?3???????
[height,width] = size(im_matched);
% width = size(im_matched,2);
for j =1:height-tempheight
for i =1:width-tempwidth
sigmaST = 0;
sigmaS = 0;
for n = 1:tempheight
for m = 1:tempwidth
sigmaS = sigmaS + dim_matched(j+n,i+m)^2;
sigmaST = sigmaST + dim_template(n,m)*dim_matched(j+n,i+m);
end
end
%?????à??D?
sigmaS = sqrt(sigmaS);