从imwarp扭转或“unwarping”形象。结果不像预期的那样吗?

48视图(30天)
例如,我有一个,第一个图片有白边的黑色矩形。我经使用A_warped = imwarp (A, tform)我得到第二个图像。假设我想返回到原始图像扭曲。为什么结果不是原始图像,如果我使用,例如,imwarp (A_warped,反(tform)) ?而结果是第三形象。我想这可能与周围的黑色添加以外的扭曲的形象。
3评论
ilay
ilay 2017年12月18日
我也有同样的问题。你也许找到解决方案了吗?这是我的例子:

登录置评。

答案(1)

Rene Heijdens
Rene Heijdens 2018年4月5日
编辑:Rene Heijdens 2018年4月5日
嗨!我一直挣扎在同样的问题。我必须放置一个虚拟旗帜旁边,所以图像转换为一个正方形字段。不幸的是,转换矩阵的逆不给适当的结果。
这是第一个(正确的)转换。
这是最终的逆变换
这些图像生成的代码如下所示。
rgbImage = imread (“tennismatch.jpg”);
负载(“cornerPoints.mat”);
% tennisfield大小
p2 = [1 1;1098年1;1 2378;1098 2378);
%计算transformtion矩阵和相应的逆
tform = fitgeotrans (p, p2,“射影”);
invtform =反转(tform);
%生成转换后的图像
imWarp = imWarp (rgbImage tform);
图();imshow (imWarp);
imWarp = imWarp (imWarp invtform);
图();imshow (imWarp);
熟悉这个问题还是有一些技巧可以帮助,那就太好了!任何帮助将不胜感激。
提前谢谢。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!