图像法向坐标的圆柱投影

10次浏览(过去30天)
Preetham Manjunatha
Preetham Manjunatha 2021年8月1日
编辑: Preetham Manjunatha 2021年8月1日
我试图项目正常图像坐标圆柱投影使用MATLAB的
imwrap
函数。但是输出的图像很糟糕。
文件名=“peppers.png”
image = imread(fileName);
F = 200;
[h, w, bypixs] = size(图像);
K = [f,0,w/2;0 f、h / 2;0, 0, 1];
X = 1:w;
Y = 1:h;
[X,Y] = meshgrid(X,Y);
X = X';
Y = Y';
XYZ = [X(:) Y(:) ones(h*w,1)];
XYZnew = (K \ XYZ')';
= (sin (XYZnew (: 1)), XYZnew(:, 2),因为(XYZnew (: 1)));
B = (k * a ')';
%从同源坐标返回
B = B(:,1:2) ./ B(:,3);
确保warp坐标只在图像范围内。
((B (: 1) < 0) | (B (: 1) > = w) | (B (:, 2) < 0) | (B (:, 2) > = h),:) = 1;
B = pagetranspose(重塑(B, w, h, 2));
%图像扭曲
冰冷= imwarp(图像,B,“FillValues”, [0 0 0]);
显示扭曲的图像
图;
次要情节(1、2、1);imshow(图片)
次要情节(1、2、2);imshow(冰)
下图为输出图片:
任何对解决这个问题的投入都是非常感激的!
2的评论
Preetham Manjunatha
Preetham Manjunatha 2021年8月1日
它应该是这样的:
上图有透明的背景,在我的例子中它是黑色的。圆柱投影是从笛卡尔坐标(或任意坐标)到圆柱坐标的映射。在这里,我试图将给定的正常/规则图像扭曲为柱坐标,以获得更好的panaroma拼接。

登录评论。

答案(0)

社区寻宝

在MATLAB Central中找到宝藏,并发现社区如何帮助您!

开始狩猎!