2014-09-29 49 views
0

在斷層掃描成像的理論中,正弦圖被記錄,其是在樣本的不同角度處的一系列投影。對這些投影進行FFT可以在頻率空間中對樣本的極座標進行切片。正弦二維FFT正弦圖。在Matlab中的極座標網格插值

命令[X,Y] = pol2cart(THETA,RHO)不會自動執行。那麼,如何在Matlab中以二維數字方式實現極座標網格插值?

回答

2

你需要做一個相變:

theta = 0:0.1:2*pi; 
rho = linspace(0,1,numel(theta)); 
[x,y] = pol2cart(-theta+pi/2,rho); 

figure; 
subplot(1,2,1); 
polar(theta,rho); 
subplot(1,2,2); 
plot(y,x); 
axis([-1 1 -1 1]); 
grid on; 

enter image description here

1

的函數[X,Y] = pol2cart(THETA,RHO)僅執行的座標值的轉換,即,X = RHO * cos(THETA)和Y = RHO * sin(THETA)。但是,您需要的是數據數組的轉換,因此pol2cart()對您的問題無能爲力。

您可以參考函數interp2()。另一方面,由於這個問題是COMPLEX數據的插值問題,我不確定interp2()是否可以直接完成這項工作。我也需要複雜插值的理論。