gpt4 book ai didi

image - 对转换后的图像应用逆变换并不能给出原始图像

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

我有一个投影变换t:

t = [0.646     0.110    9.339e-05;
0.0113 0.551 -1.004e-05;
307.649 1131.141 1]

当我将此变换应用于图像,然后将此变换的逆应用于生成的图像时,我期待回到第一张图像。但我不是!

tProj = projective2d(t);
img1 = imwarp(original,tProj);
figure(1); imshow(img1);

tProj2 = projective2d(inv(t));
img2 = imwarp(img1,tProj2);
figure(2); imshow(img2);

原始图像

Original Image

原图变换

Original Image

原图变换的逆变换

Original Image

最佳答案

你非常接近。您还必须引用空间位置对象(通过 imref2d 对象)以帮助捕获输出图像的完整空间位置。在反转图像时,您将其指定为 imwarp 的附加输入。除此之外,您还必须从第一个 imwarp 调用中捕获输出 imref2d 对象。一旦你拥有了这些对象,你就可以使用它来进行逆向变形以恢复原始图像。请注意,由于扭曲的图像超出了原始图像的尺寸,您将有一些零填充。

换句话说:

t = [0.646     0.110    9.339e-05;
0.0113 0.551 -1.004e-05;
307.649 1131.141 1];

original = imread('/image/lZzdT.jpg');

tProj = projective2d(t);
[img1, ra] = imwarp(original, tProj); % New
figure(1); imshow(img1);

tProj2 = projective2d(inv(t));
img2 = imwarp(img1,ra,tProj2); % New
figure(2); imshow(img2);

这是反转扭曲图像后得到的输出图像:

enter image description here

关于image - 对转换后的图像应用逆变换并不能给出原始图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54578204/

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