【问题标题】:Align a Series of Images Together in Matlab在 Matlab 中将一系列图像对齐在一起
【发布时间】:2012-03-19 08:08:33
【问题描述】:

我正在尝试在 matlab 中将一系列图像对齐。

我有一系列非常相似的图像。它们在 x 或 y 方向上略有偏移。图像的每个角都有 4 个十字准线,以帮助对齐。我想对齐它们,使整个系列位于所有四个十字准线之上。我还想在文件对齐后裁剪出文件之间的任何差异。

我一直试图让对齐工作,但我似乎无法在 matlab 中弄清楚。

这里有两张示例图片。 [1][2]

感谢您的帮助!

【问题讨论】:

  • 那么您想要做的是与所有其他图像一起创建一个图像,使用十字架作为固定点?我不能完全理解你的意思
  • 这正是我所需要的!我只需要确保图像全部对齐。

标签: image matlab alignment


【解决方案1】:

试试

%size(img2) <= size(img1) 

img1 = 255-mean(imread('a1.png'),3); 
img2 = 255-mean(imread('a2.png'),3); 

c = normxcorr2(img2,img1); 
[y x] = find(c==max(c(:))); 
y = y-size(img2,1); 
x = x-size(img2,2); 

T = maketform('affine',[1 0 x;0 1 y; 0 0 1]'); 
img2N = imtransform(img2,T,'xdata',[1 size(img1,2)],'ydata',[1 size(img1,1)]); 
imagesc(max(img1,img2N));
axis image 

【讨论】:

    【解决方案2】:

    我猜image registration 是您可能正在寻找的。​​p>

    【讨论】:

    • 图像配准确实有效,但我只是想调整 XY 方向,可能还有一个角度。这些图像的分辨率约为 4500 x 3800 像素,因此注册过程将永远进行!有什么快速堆叠图片的建议吗?
    猜你喜欢
    • 2020-02-04
    • 1970-01-01
    • 2019-12-04
    • 1970-01-01
    • 2013-10-31
    • 2012-11-23
    • 1970-01-01
    • 1970-01-01
    • 2021-02-21
    相关资源
    最近更新 更多