图像二值化及模板匹配matlab实现Word文档格式.docx
《图像二值化及模板匹配matlab实现Word文档格式.docx》由会员分享,可在线阅读,更多相关《图像二值化及模板匹配matlab实现Word文档格式.docx(3页珍藏版)》请在冰豆网上搜索。
rgb_image=imread('
A.bmp'
);
gray_image=rgb2gray(rgb_image);
image=double(gray_image);
ed_image=image;
rgb_back=imread('
B.bmp'
红色部分表示要匹配的两张图片附件所含文件
附件中m文件代码复制内容到剪贴板
代码:
clear;
echo
off;
%for
g=267
%a1=imread([num2str(g),'
.jpg'
]);
gray_back=rgb2gray(rgb_back);
back=double(gray_back);
[y1,y2,x1,x2]=rowcol(back,image);
[M,N]=size(back);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%相关系数法
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%for
i=x1:
5:
x2
for
j=y1:
y2
I=image(i:
i+4,j:
j+4);
%块T=back(i:
aver_I=mean(mean(I));
%块均值aver_T=mean(mean(T));
sub_I=I(1:
5,1:
5)-aver_I;
%每块与均值之差squ_sub_I=sub_I.*sub_I;
%差值平方sum_sub_I=sum(sum(sub_I));
%差值之和sum_squ_sub_I=sum(sum(squ_sub_I));
%差值平方和sub_T=T(1:
5)-aver_T;
squ_sub_T=sub_T.*sub_T;
sum_sub_T=sum(sum(sub_T));
sum_squ_sub_T=sum(sum(squ_sub_T));
mul=sub_I.*sub_T;
sum_mul=sum(sum(mul));
%分子R=sum_mul/((sqrt(sum_squ_sub_I))*(sqrt(sum_squ_sub_T)));
if
R>
0.9
image(i:
j+4)=255;
end
image(x1:
x2,y1)=255;
x2,y2)=255;
image(x1,y1:
y2)=255;
image(x2,y1:
h=mat2gray(image);
figure,imshow(h)
ed1=edge(ed_image,'
canny'
0.08);
ed2=edge(ed_image,'
prewitt'
14);
ed=ed1&
ed2;
%figure,imshow(ed)
%figure,imshow(ed1)
%figure,imshow(ed2)