《基于Matlab的图像特征识别及匹配(共6页).doc》由会员分享,可在线阅读,更多相关《基于Matlab的图像特征识别及匹配(共6页).doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上基于Matlab的图像匹配定位知识点:最小距离分类法是里面最基本的一种分类方法,它是通过求出未知类别X到事先已知的各类别(如A,B,C等等)中心向量的距离D,然后将待分类的向量X归结为这些距离中最小的那一类的分类方法。匹配之前,需要先将图像转换为灰度图,函数为rgb2gray,由于matlab对浮点型支持较为完善,我们还需将图像数据类型更改为double,函数为im2double。之后再将原始图像补0,这样才能遍历图像的每一点,函数padarray。1 测试1;(代码见matlab code(1)数据库图像不变,改变图像A:Figure 1数据库图像YBFigure
2、2图像A每对匹配计算时间:5s左右病人图像大小:767kb数据库图像大小:896字节每次运算时间:5到8s不等计算机运行内存:32GB数据库图像图像匹配并定位成功定位误差较大错误定位定位准确率YB20张11张3张6张55%(1)成功定位结果(2)差的定位结果(3)错误定位matlab code%(1)clear;close all template_rgb = imread(C:UsersyhjyfDesktop图像pipeitest01模版图B/1.jpg); src_rgb = imread(C:UsersyhjyfDesktop图像pipeitest01匹配图A/1.bmp); %转换为
3、灰度图 template=rgb2gray(template_rgb); template = im2double(template); src=rgb2gray(src_rgb); src = im2double(src); figure(name,模板匹配结果), subplot(1,2,1),imshow(template_rgb),title(模板), %球的模板与原始图像的大小 tempSize=size(template); tempHeight=tempSize(1); tempWidth=tempSize(2); srcSize=size(src); srcHeight=src
4、Size(1); srcWidth=srcSize(2); %在图片的右侧与下侧补0 %By default, paddarray adds padding before the first element and after the last element along the specified dimension. srcExpand=padarray(src,tempHeight-1 tempWidth-1,post); %初始化一个距离数组 tmp:mj template:x %参见数字图像处理 Page561 distance=zeros(srcSize); for height=
5、1:srcHeight for width= 1:srcWidth tmp=srcExpand(height:(height+tempHeight-1),width:(width+tempWidth-1); %diff= template-tmp; %distance(height,width)=sum(sum(diff.2); %计算决策函数 distance(height,width)=sum(sum(template*tmp-0.5.*(tmp*tmp); end end %寻找决策函数最大时的索引 maxDis=max(max(distance); x, y=find(distance=maxDis); %绘制匹配结果 subplot(1,2,2),imshow(src_rgb);title(匹配结果),hold on rectangle(Position,x y tempWidth tempHeight,LineWidth,2,LineStyle,-,EdgeColor,r), hold off专心-专注-专业