Image processing 笛卡尔坐标到球面坐标转换的具体情况为Φ;是零和θ;是不确定的,相位展开

Image processing 笛卡尔坐标到球面坐标转换的具体情况为Φ;是零和θ;是不确定的,相位展开,image-processing,interpolation,phase,spatial-interpolation,Image Processing,Interpolation,Phase,Spatial Interpolation,下面是球面坐标到笛卡尔坐标的转换 X = r cosθ sinΦ Y = r sinθ sinΦ Z = rcosΦ 我们使用反向计算从笛卡尔坐标计算球坐标,笛卡尔坐标定义为 r = √(x^2+y^2+z^2 ) θ = atan⁡(Y./X) Φ = atan⁡(√(X^2+Y^2 )./Z) 当Y和X为零时会出现问题,因此θ可以取任意值,因此在Matlab计算过程中,这会导致NAN(不是数字),这使得θ不连续。是否有任何插值技术来消除这种不连续性,以及在这种情况下如何解释θ θ

下面是球面坐标到笛卡尔坐标的转换

X = r cosθ sinΦ 
Y = r sinθ sinΦ 
Z = rcosΦ
我们使用反向计算从笛卡尔坐标计算球坐标,笛卡尔坐标定义为

r = √(x^2+y^2+z^2 ) 
θ = atan⁡(Y./X) 
Φ = atan⁡(√(X^2+Y^2 )./Z)
当Y和X为零时会出现问题,因此θ可以取任意值,因此在Matlab计算过程中,这会导致NAN(不是数字),这使得θ不连续。是否有任何插值技术来消除这种不连续性,以及在这种情况下如何解释θ

θ是一个在不同点的矩阵,它给出了以下结果,它有跳跃和黑色补丁,代表不连续性,而我需要生成平滑变化的后续图像。请查看获得的θ并通过单击链接更正θ变化,并提出一些更改建议。

在从笛卡尔坐标系转换为球面坐标系时,这里所写的公式是正确的,但您首先需要了解它们的物理意义

“r”是点到原点的距离。θ是从正x轴到通过将给定点投影到XY平面而形成的直线的角度。Φ是从正z轴到连接原点和给定点的线的角度。

比如说,对于X和Y坐标为0的点,这意味着它位于z轴上,因此,它在XY平面上的投影位于原点上。所以我们不能精确地确定原点与X轴的夹角。但请注意,由于点位于Z轴上,因此Φ=0或π(取决于Z是正还是负)

因此,在编写这个问题的代码时,您可以采用这种方法,首先检查Φ,如果它是0或π,那么θ=0(默认情况下)。 我希望这能达到目的。

NAN(不是数字)在Matlab中默认显示为零,如图1所示,它会导致不连续。θ可以有0到2*pi之间的任何值,但在检查matlab函数cart2sph后,它表明matlab的实现将默认值视为pi/2。那么有没有空间插值技术可以解决这个问题呢。