基于MATLAB的图像拼接技术实验报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于MATLAB的图像拼接技术实验报告 学 院:数信学院 专业班级: 12级信息工程1班 姓名学号: 实验名称:基于MATLAB的图像拼接技术 实验目的:利用图像拼接技术得到超宽视角的图像,用来虚拟实际场景。 实验原理: 基于相位相关的图像拼接技术是一种基于频域的方法,通过求得图像在频域上是相位相关特点来找到特征位置,从而进行图像拼接。其基本原理是基于傅氏功率谱的相关技术。该方法仅利用互功率谱中的相位信息进行图像配准,对图像间的亮度变化不敏感,而且所获得的相关峰尖突出,具有一定的鲁棒性和较高的配准精度。 基于相位相关法进行图像拼接的基本原理如下:假设f(x,y)表示尺寸 为MN的图像,该函数的二维离散傅里叶变换(DFT)为: 其中,F(u,v)是复变函数;u、v是频率变量,u=0,1,…,M-1,v=0,1,…,N-1;x、y是空间或图像变量。 二维离散傅里叶逆变换(IDFT)为: 其中,x=0,1,…,M-1;y=0,1,…,N-1。 设两幅图像、的重叠位置为(,),则图像、的互功率谱为: 其中,*为共轭符号,对上式两边进行傅里叶逆变换将在(,)处产生一个 函数。因此,只要检测上式傅里叶逆变换结果最大值的位置,就可以获得两幅图像间的评议量(,。具体算法步骤如下: ①读入两幅图片、(函数输入),并转换为灰度图像; ②分别对、做二维傅里叶变换,即: A=() B=() 则通过A、B的简单的矩阵运算得到另一矩阵,即: =B*.conj(A)/norm(B*.conj(A),1) 矩阵的二维傅里叶逆变换C在(,)处取得最大,可通过遍历比较C(i,j)大小即可找到该位置,并作为函数返回值。 四 实验程序 tic x=[1 2;0 1]; a=imread(7.jpg); %读取图片 b=imread(8.jpg); figure imshow(a); figure imshow(b); imwrite(b,160.jpg); IMG={a,b}; %将图片存为元胞结构 num=size(IMG,2); %计算图片个数 move_ht=0; %累计平移量初值 move_wd=0; for count=1:num-1 input1=IMG{count}; %读取图象 input11=imresize(rgb2gray(input1),[300,200]); %将图象转为灰度图像 input2=IMG{count+1}; input12=imresize(rgb2gray(input2),[300,200]); F1=fft2(double(input11)); %二维傅里叶变换 F2=fft2(double(input12)); pdm=exp(1i*(angle(F1)-angle(F2))); %求互功率谱 cps=real(ifft2(pdm)); %傅里叶反变换,取冲激函数的实部 [i1,j1]=find(cps==max(max(cps))); %需找峰值点 HtTrans=i1-1; %得到平移量 WdTrans=j1-1; if(i1size(input2,1)/2) HtTrans=HtTrans-size(cps,1); end if(j1size(input2,2)/2) WdTrans=WdTrans-size(cps,2); end move_ht=HtTrans; %最终平移量 move_wd=WdTrans; ht=move_ht;wd=move_wd; move_ht=move_ht+ht; %计算累计平移量

文档评论(0)

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

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

1亿VIP精品文档

相关文档