将极地图像转换为笛卡尔坐标

时间:2013-04-17 14:08:41

标签: matlab cartesian polar-coordinates

我正在尝试将极地图像转换为笛卡尔坐标。

examples to convert image to polar coordinates do it explicitly - want a slick matrix method

我认为使用上面使用的方法将是一块蛋糕,但它真的不是! 如果有人在我的代码中发现错误,请告诉我!

phi=(0:.01:1)*2*pi;
r=0:.01:2;

psi=r<0.5;



psi_c=cos(phi).'*psi;

[P R z]=find(psi_c);
L=500;

X=R.*cos(P);
Y=R.*sin(P);

Xmin=min(X);Xmax=max(X);
Ymin=min(Y);Ymax=max(Y);


F=TriScatteredInterp(X,Y,z);


[Xi,Yi]=meshgrid(linspace(-Xmax,Xmax,L),linspace(-Ymax,Ymax,L));
Zi=F(Xi,Yi);

我觉得非常奇怪的事实是,当我改变phi时,它会发生根本性的改变而不是我期望的方式!

干杯!

1 个答案:

答案 0 :(得分:0)

[X,Y] = pol2cart(THETA,RHO)

如果从极地网格转换为笛卡儿式。

同样地,

[X,Y] = pol2cart(THETA,RHO,Z)

将圆柱形网格转换为相应的笛卡儿。

但我不确定那些功能是你需要的。