如何使用Matlab中的函数normxcorr2解释2幅图像之间的漂移?

时间:2017-01-16 23:19:38

标签: image matlab image-processing cross-correlation

我是Matlab的初学者,我需要在两张图像之间移除漂移(由于显微镜在不同时间拍摄图像而存在),以便它们可以比较。我想通过交叉关联两个图像的四个角来计算漂移。 为了识别我的漂移,我使用函数normxcorr2找到了这段代码:

c = normxcorr2(picture1,picture2);
[max_c, imax] = max(abs(c(:))); %find the max value 
[ypeak, xpeak] = ind2sub(size(c),imax(1)); %Find peak in cross-correlation.
corr_offset = round([(xpeak-(size(c,2)+1)/2) (ypeak-(size(c,1)+1)/2)]);
offset = corr_offset;
xoffset = offset(1);
yoffset = offset(2);

我找到了以下结果:

xpeak=195
ypeak=136
max_c=0.7250
offset=[-1,1]
xoffset=-1
yoffset=-1

我对如何解释这些结果感到有点困惑。这是否意味着y方向的漂移为-0.7250,x方向的漂移为-0.7250?这个结果是像素还是米?

这是我的两张照片: picture1

picture2

感谢您的帮助!

0 个答案:

没有答案