gpt4 book ai didi

image - 两个图像之间的互相关

转载 作者:太空宇宙 更新时间:2023-11-03 19:12:24 25 4
gpt4 key购买 nike

如何在一张图片上随机选择一个点,然后使用互相关在另一张图片上找到它的对应点?

所以基本上我有 image1,我想(自动)在其上选择一个点,然后在 image2 上找到它的对应/相似点。

以下是一些示例图片:

全图:

full image

补丁:

patch

互相关结果:

result of cross correlation

最佳答案

好吧,xcorr2 本质上可以被视为分析所有可能的正向和负向变化,并衡量它们与每个变化的匹配程度。因此,对于大小为 N x N 的图像,结果的大小必须为 (2*N-1) x (2*N-1),其中索引 处的相关性>[N, N] 如果两个图像相等或不偏移,则将是最大的。如果它们移动 10 个像素,则最大相关性将在 [N-10, N] 处,依此类推。因此,您需要减去 N 以获得绝对位移。

使用您的实际代码可能会更容易提供帮助。但是让我们看一个例子:

(A) 我们读取图像并选择两个具有偏移量 da 和 db 的不同子图像

Orig = imread('rice.png');
N = 200; range = 1:N;
da = [0 20];
db = [30 30];
A=Orig(da(1) + range, da(2) + range);
B=Orig(db(1) + range, db(2) + range);

(b) 计算互相关并找到最大值

X = normxcorr2(A, B);
m = max(X(:));
[i,j] = find(X == m);

(C) 使用 recovered shift 将它们拼接在一起

R = zeros(2*N, 2*N);
R(N + range, N + range) = B;
R(i + range, j + range) = A;

(D) 说明事物

figure
subplot(2,2,1), imagesc(A)
subplot(2,2,2), imagesc(B)
subplot(2,2,3), imagesc(X)
rectangle('Position', [j-1 i-1 2 2]), line([N j], [N i])
subplot(2,2,4), imagesc(R);

(E) 比较有意的转变和恢复的转变

delta_orig = da - db
%--> [30 10]
delta_recovered = [i - N, j - N]
%--> [30 10]

如您在 (E) 中所见,我们得到了我们在 (A) 中有意引入的准确转变。

Result of xcorr2


或根据您的情况进行调整:

full=rgb2gray(imread('a.jpg'));
template=rgb2gray(imread('b.jpg'));
S_full = size(full);
S_temp = size(template);

X=normxcorr2(template, full);
m=max(X(:));
[i,j]=find(X==m);

figure, colormap gray
subplot(2,2,1), title('full'), imagesc(full)
subplot(2,2,2), title('template'), imagesc(template),
subplot(2,2,3), imagesc(X), rectangle('Position', [j-20 i-20 40 40])

R = zeros(S_temp);
shift_a = [0 0];
shift_b = [i j] - S_temp;
R((1:S_full(1))+shift_a(1), (1:S_full(2))+shift_a(2)) = full;
R((1:S_temp(1))+shift_b(1), (1:S_temp(2))+shift_b(2)) = template;
subplot(2,2,4), imagesc(R);

enter image description here

但是,为了使此方法正常工作,补丁(模板)和完整图像应该缩放到相同的分辨率。


还可以找到更详细的示例here .

关于image - 两个图像之间的互相关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22269627/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com