2013-04-17 2 views
0

Я пытаюсь преобразовать изображение в полярных координатах.Преобразование изображения в координатах с точностью до декартовых

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, он делает радикальные изменения, а не так, как я ожидал!

Cheers!

ответ

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

в случае преобразования из полярной сетки в декартовую.

Аналогично,

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

преобразовать цилиндрическую сетку в соответствующий декартовой.

Но я не уверен, что эти функции вам нужны.

+0

К сожалению, они не ... pol2cart не обрабатывает 2D-матрицы (хотя имя функции - pol2cart) – user2291072

 Смежные вопросы

  • Нет связанных вопросов^_^