我有 1024 X 256 极坐标数据(行 - 半径,列角度)需要绘制为图像。我从文件交换中获得了一个可以执行此操作的 m 文件 (clickhere) .但是,对于大图像来说它真的很慢。我相信有一种快速的方法可以使用我正在苦苦挣扎的冲浪功能来做到这一点。 (见下面的代码)
data = data; % load any polar data
depth = 4.5; %imaging depth in mm
offset = 0.5;
theta = [(0:2*pi/size(data,2):2*pi-1/size(data,2))]*180/pi;
rho = [0:(depth-offset)/size(data,1):(depth-offset)-1/size(data,1)] + offset;
[THETA,RR] = meshgrid(theta,rho);
[A,B] = pol2cart(THETA,RR);
figure
surf(A,B,data,'edgecolor','none'),
view(0,90)
xlabel('x [mm]')
ylabel('y [mm]')
axis tight
结果似乎不正确。
知道我做错了什么吗?谢谢!
是的,你的问题很简单:
pol2cart Transform polar to Cartesian coordinates.
[X,Y] = pol2cart(TH,R) transforms corresponding elements of data
stored in polar coordinates (angle TH, radius R) to Cartesian
coordinates X,Y. The arrays TH and R must the same size (or
either can be scalar). ***TH must be in radians***.
解决方法:去掉180/pi
我是一名优秀的程序员,十分优秀!