| 查看: 2339 | 回复: 0 | ||
xiashaoyan新虫 (正式写手)
|
[求助]
配准图像时,求互相关函数的最大值位置的疑问
|
|
看了一些求基准图像和配准图像的互相关值的最大值对应的位置,我现在看到有两种方法, 第一种是使用MATLAB里面自带的normxcorr2函数,我看了mathwork网站上有一个求互相关量最大值位置的程序:(参考网址为:http://cn.mathworks.com/help/images/ref/normxcorr2.html) onion = rgb2gray(onion); peppers = rgb2gray(peppers); Perform cross-correlation and display result as surface. c = normxcorr2(onion,peppers); [ypeak, xpeak] = find(c==max(c( ));yoffSet = ypeak-size(onion,1); xoffSet = xpeak-size(onion,2); 可是有一个疑问是,为什么在求出互相关量最大值位置后还要减去基准图像的尺寸呢?(也即为什么yoffSet = ypeak-size(onion,1)??xoffSet = xpeak-size(onion,2);??) 第二种方法是采用两副图像进行互相关运算,计算的程序,我找了网上的程序为: (参考网址为:http://www.mathworks.com/matlabc ... /dftregistration.m) buf1ft是基准图像,buf2ft是配准待图像 [m,n]=size(buf1ft); CC = ifft2(buf1ft.*conj(buf2ft));%先计算buf1ft与buf2ft共轭的傅立叶变换,得到互相关函数的频谱,然后求结果ifft2得到互相关函数 %% 计算互相关函数的最大值及最大值的位置 [max1,loc1] = max(CC); [max2,loc2] = max(max1); rloc=loc1(loc2); cloc=loc2; CCmax=CC(rloc,cloc); md2 = fix(m/2); nd2 = fix(n/2); if rloc > md2 row_shift = rloc - m - 1; else row_shift = rloc - 1; end if cloc > nd2 col_shift = cloc - n - 1; else col_shift = cloc - 1; end 这里我同样有一个,就是为什么求出互相关量最大值的位置后还要减去一个1或者减去1+基准图像的尺寸呢?(也即:row_shift = rloc - m - 1??或者row_shift = rloc - 1),还有为什么rloc > md2时,就得 row_shift = rloc - m - 1,其中的具体含义是什么呢? 两种方法计算最大值对应的位置,我思索了半天想,最后计算的结果表示什么意思,是表示配准时两幅图像的偏差量吗? |
» 猜你喜欢
真诚求助:手里的省社科项目结项要求主持人一篇中文核心,有什么渠道能发核心吗
已经有8人回复
寻求一种能扛住强氧化性腐蚀性的容器密封件
已经有5人回复
论文投稿,期刊推荐
已经有6人回复
请问哪里可以有青B申请的本子可以借鉴一下。
已经有4人回复
孩子确诊有中度注意力缺陷
已经有14人回复
请问下大家为什么这个铃木偶联几乎不反应呢
已经有5人回复
请问有评职称,把科研教学业绩算分排序的高校吗
已经有5人回复
2025冷门绝学什么时候出结果
已经有3人回复
天津工业大学郑柳春团队欢迎化学化工、高分子化学或有机合成方向的博士生和硕士生加入
已经有4人回复
康复大学泰山学者周祺惠团队招收博士研究生
已经有6人回复
找到一些相关的精华帖子,希望有用哦~
求matlab高手帮忙画复杂函数的函数图像
已经有6人回复
做多源图像配准的课题,关于论文创新,求建议
已经有4人回复
求 图像配准 算法的测试数据库
已经有6人回复
【求助】两幅灰度有差异,但内容一致的图像能够进行配准吗
已经有6人回复
科研从小木虫开始,人人为我,我为人人













));
回复此楼
点击这里搜索更多相关资源