Data: 05/06/2011

1.Objetivo

  • 1.Implementar uma função que transforma um volume em coordenadas cartesianas para coordenadas esféricas (raio, ângulo1, ângulo2).
  • 2.(Opcional) Investigar quais as propriedades continuam válidas na FFT 3D que permitiriam extrapolar o algoritmo de correlação de fase para registro em imagens 3D. É possível encontrar a translação entre 2 volumes usando a Correlação de fase e a FFT 3D?

2.Descrição

Sintase.

[t0,phi,r] = iaptransesp(x,y,z)

Entrada. - x,y,z: Pontos Cartesianos

Saída. - t0 : ângulo theta
  • phi : ângulo phi
  • r : raio

t0 e phi são deslocamentos angulares em radianos medido a partir do eixo x positivo, eo plano xy, respectivamente, e r é a distância desde a origem até um ponto. A notação de coordenadas esféricas não é padrão. Para a função abaixo, o ângulo de PHI é medido em relação ao plano xy.

/media/Attachments/courseIA369O1S2011/luc_15/esperic.png

3.Função

1 from numpy import *
2 
3 def iaptransesp(x,y,z):
4 
5     r = sqrt((x*x) + (y*y) + (z*z))
6     t0 = arctan2(y,x)
7     phi = arctan2(z,sqrt((x*x) + (y*y)))
8     return r,t0,phi
 1 from numpy import *
 2 def iaptransesp2(f,f2):
 3     m,n,q = f.shape
 4     r1 = floor(q/2)
 5     r2 = floor(m/2)
 6     r3 = floor(m/2)
 7     x,y,z = f2
 8     a = min(r1,r2,r3)/f2
 9     b = (2*pi) /f2
10     c = pi/f2
11     z,y,x=indices(f2)
12     return (a*z),(b*y),(c*y)
1 from numpy import *
2 print iaptransesp(1,2,3)
(3.7416573867739413, 1.1071487177940904, 0.93027401411547206)

4.Equação para conversão

Equation