(Matlab实现多种图像配准.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(Matlab实现多种图像配准

Matlab实现多种图像配准 本文讲述如何利用Matlab Image Processing Toolbox中的图像配准工具实现线性正投影、仿射、投影、多项式、分段线性、局部加权平均配准的过程。 实验平台 X86 PC,Windows XP sp2, Matlab 7.1 资源的获取 图片资源来自/registration/satellite/testimag.html,其中每个压缩包里存有两副图片,每副图片以矩阵形式保存。 matlab工具的使用方法:查看帮助mage Processing Toolbox Users Guide——Image registration。 涉及配准方法简介 该工具箱提供的配准方法均需手工选择图像间的匹配点对(control points pair),均属于交互配准方法。其基本过程为:读入图像数据-在两副图像上选择足够匹配点-选择配准算法,计算变换参数-变换图像。 假设input image(输入图像)为欲进行配准的图像,base image为配准是的参考图像。以下是我参考matlab帮助给出了简介。 1.线性正投影(linear conformal):最简单。平面映射成平面。 当输入输入图像与参考图像对比,只是存在全局的平移、旋转、缩放或其三者组合的差别时(正方形仍对应正方形),选择此配准方法。此方法至少需要2对匹配点。 2.仿射(affine):将平行线转换成平行线。 当输入图像形状存在切变现象(正方形对应平行四边形),选此法。至少需3对匹配点。 3.投影(projective):将直线映射成直线。 如果输入图像呈现倾斜,翘起现象,选此法。至少需4对匹配点。 4.多项式(polynomial):将直线映射成曲线。 如果输入图像出现不规则曲变,采用此法。Matlab中提供有2、3、4次幂的实现,分别至少需要6,10,10对匹配点。 5.分段线性(piecewise linear) 如果输入图像的各个局部之间的退化模式明显不一样,选此法。至少需要4对匹配点。 6.局部加权平均(local weighted mean) 与分段线性一致,但效果较之好。至少需要6对(推荐12对)匹配点。 实验步骤 1.读取图像数据。 因为源图像以矩阵形式存在一个二进制的文件里,用fread可将其读取到变量矩阵中。将读取文件编制成一个子函数(RTIread.m),源代码如下: function imMatrix=RTIread(FILENAME,SIZE) %RTIread Read the image matrix from binary Registration Test Image file. % imMatrix=RTIread(FILENAME,SIZE) opens the file FILENAME, and reads the % number of elements specified by SIZE. % % FILENAME is a string containing the name of the file to be opened. % Valid entries for SIZE are: % N read N elements into a column vector. % inf read to the end of the file. % [M,N] read elements to fill an M-by-N matrix, in column order. % N can be inf, but M cant. % % It returns the image matrix. fid=fopen(FILENAME,r); imMatrix=fread(fid,SIZE,uint8=uint8); fclose(fid); %image(imMatrix); 这里我们选取了两张600×600的图片,文件名为“casitas84”和“casitas86”。运行以下代码读取图像矩阵: % 1. Read the images into the MATLAB workspace. base=RTIread(casitas84,[600,600]); input=RTIread(casitas86,[600,600]); 2.选取匹配点(control points)。 根据预定的配准方法,选定足够的匹配点对。运行下列代码: % 2.Specify control point pairs n the images and save. cpselect(input,base)

文档评论(0)

tt859685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档