我不知道为什么它不能检测到我的模板窗口。我的意思是我在图像上都散布了边界框,就像我发送的detect.jpg一样。你知道这个算法有什么问题吗?并且findtemplate是它的功能,hibbard.jpg是我的图像,window.jpg是我的模板)
function findtemplate(im,temp,th,showtemp)
out=normxcorr2(temp,im);
[m,n] = size(temp);
out = out(m+1:end,n+1:end);
bw = out>th;
if nargin >3
im(1:m , 1:n)=temp;
end
clf
imshow(im,[])
hold on
for k = 1 : length( r )
thisBB = r(k).BoundingBox;
rectangle('Position', thisBB,'EdgeColor','r','LineWidth',2 );
end
im=rgb2gray(imread('hibbard.jpg'));
imshow(im)
temp=rgb2gray(imread('window.jpg'));
imshow(temp)
findtemplate(im,temp,.3);
答案 0 :(得分:0)
对不起,我无法理解您的要求。您无法正确绘制边界框,或者找不到它们?