坐标系转换

阅读: 评论:0

坐标系转换

坐标系转换

布尔莎模型变换关系理解

[ X 2 Y 2 Z 2 ] = [ X 1 Y 1 Z 1 ] + [ T x T y T z ] + [ D R z − R y − R z D R x R y − R x D ] [ X 1 Y 1 Z 1 ] (1) tag{1} begin{bmatrix} X_2 \ Y_2 \ Z_2 end{bmatrix} = begin{bmatrix} X_1 \ Y_1 \ Z_1 end{bmatrix} + begin{bmatrix} T_x \ T_y \ T_z end{bmatrix} + begin{bmatrix} D & R_z & -R_y \ -R_z & D & R_x \ R_y & -R_x & D end{bmatrix} begin{bmatrix} X_1 \ Y_1 \ Z_1 end{bmatrix} ​X2​Y2​Z2​​ ​= ​X1​Y1​Z1​​ ​+ ​Tx​Ty​Tz​​ ​+ ​D−Rz​Ry​​Rz​D−Rx​​−Ry​Rx​D​ ​X1​Y1​Z1​​ ​(1)

式中 : 式中: 式中:
X 1 , Y 1 , Z 1 − − − − 原坐标系坐标,单位 : m e t e r (参考 p r o j ); X_1,Y_1,Z_1 ----原坐标系坐标,单位:meter(参考proj); X1​,Y1​,Z1​−−−−原坐标系坐标,单位:meter(参考proj);
X 2 , Y 2 , Z 2 − − − − 新坐标系坐标,单位 : m e t e r (参考 p r o j ); X_2,Y_2,Z_2 ----新坐标系坐标,单位:meter(参考proj); X2​,Y2​,Z2​−−−−新坐标系坐标,单位:meter(参考proj);
T x , T y , T z , R x , R y , R z , D − − − − 7 个转换参数: 3 个平移参数【单位 : m e t e r (参考 p r o j )】、 3 个旋转参数【计算单位 : r a d i a n ,展示单位: a r c s e c o n d s (参考超图),但是在 p r o j 中计算和展示都是 a r c s e c o n d s (参考 p r o j )】、 1 个尺度参数【单位 : p p m (参考 p r o j )】; T_x,T_y,T_z,R_x,R_y,R_z,D ----7个转换参数:3个平移参数【单位:meter(参考proj)】、3个旋转参数【计算单位: radian,展示单位:arc seconds(参考超图),但是在proj中计算和展示都是 arc seconds(参考proj)】、1个尺度参数【单位:ppm(参考proj)】; Tx​,Ty​,Tz​,Rx​,Ry​,Rz​,D−−−−7个转换参数:3个平移参数【单位:meter(参考proj)】、3个旋转参数【计算单位:radian,展示单位:arcseconds(参考超图),但是在proj中计算和展示都是arcseconds(参考proj)】、1个尺度参数【单位:ppm(参考proj)】;

各个单位换算关系

Arc Second:角度测量单位(参考MathWorld)
1 Arc Second = 1/60 of an arc minute = 1/3600 of a degree

ppm指的是"parts per million",即每百万单位中的部分数(参考RapidTable)
1ppm = 0.0001% = 1/1000000

进一步换算:
[ X 2 Y 2 Z 2 ] = [ X 1 Y 1 Z 1 ] + [ T x + D X 1 + R z Y 1 − R y Z 1 T y − R z X 1 + D Y 1 + R x Z 1 T z + R y X 1 − R x Y 1 + D Z 1 ] (2) tag{2} begin{bmatrix} X_2 \ Y_2 \ Z_2 end{bmatrix} = begin{bmatrix} X_1 \ Y_1 \ Z_1 end{bmatrix} + begin{bmatrix} T_x + DX_1 + R_zY_1 - R_yZ_1 \ T_y - R_zX_1 + DY_1 + R_xZ_1 \ T_z + R_yX_1 - R_xY_1 + DZ_1 end{bmatrix} ​X2​Y2​Z2​​ ​= ​X1​Y1​Z1​​ ​+ ​Tx​+DX1​+Rz​Y1​−Ry​Z1​Ty​−Rz​X1​+DY1​+Rx​Z1​Tz​+Ry​X1​−Rx​Y1​+DZ1​​ ​(2)

又 ∵ 又because 又∵
[ T x + D X 1 + R z Y 1 − R y Z 1 T y − R z X 1 + D Y 1 + R x Z 1 T z + R y X 1 − R x Y 1 + D Z 1 ] = P [ T x T y T z R x R y R z D ] = [ P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8 P 9 P 10 P 11 P 12 P 13 P 14 P 15 P 16 P 17 P 18 P 19 P 20 P 21 ] [ T x T y T z R x R y R z D ] begin{bmatrix} T_x + DX_1 + R_zY_1 - R_yZ_1 \ T_y - R_zX_1 + DY_1 + R_xZ_1 \ T_z + R_yX_1 - R_xY_1 + DZ_1 end{bmatrix} =Pbegin{bmatrix} T_x \ T_y \ T_z \ R_x \ R_y \ R_z \ D end{bmatrix} = begin{bmatrix} P_1 & P_2 & P_3 & P_4 & P_5 & P_6 & P_7 \ P_8 & P_9 & P_{10} & P_{11} & P_{12} & P_{13} & P_{14} \ P_{15} & P_{16} & P_{17} & P_{18} & P_{19} & P_{20} & P_{21} end{bmatrix} begin{bmatrix} T_x \ T_y \ T_z \ R_x \ R_y \ R_z \ D end{bmatrix} ​Tx​+DX1​+Rz​Y1​−Ry​Z1​Ty​−Rz​X1​+DY1​+Rx​Z1​Tz​+Ry​X1​−Rx​Y1​+DZ1​​ ​=P ​Tx​Ty​Tz​Rx​Ry​Rz​D​ ​= ​P1​P8​P15​​P2​P9​P16​​P3​P10​P17​​P4​P11​P18​​P5​P12​P19​​P6​P13​P20​​P7​P14​P21​​ ​Tx​Ty​Tz​Rx​Ry​Rz​D​

⇒ [ T x + D X 1 + R z Y 1 − R y Z 1 T y − R z X 1 + D Y 1 + R x Z 1 T z + R y X 1 − R x Y 1 + D Z 1 ] = [ P 1 T x + P 2 T y + P 3 T z + P 4 R x + P 5 R y + P 6 R z + P 7 D P 8 T x + P 9 T y + P 10 T z + P 11 R x + P 12 R y + P 13 R z + P 14 D P 15 T x + P 16 T y + P 17 T z + P 18 R x + P 19 R y + P 20 R z + P 21 D ] Rarr begin{bmatrix} T_x + DX_1 + R_zY_1 - R_yZ_1 \ T_y - R_zX_1 + DY_1 + R_xZ_1 \ T_z + R_yX_1 - R_xY_1 + DZ_1 end{bmatrix} = begin{bmatrix} P_1T_x + P_2T_y + P_3T_z + P_4R_x + P_5R_y + P_6R_z + P_7D \ P_8T_x + P_9T_y + P_{10}T_z + P_{11}R_x + P_{12}R_y + P_{13}R_z + P_{14}D \ P_{15}T_x + P_{16}T_y + P_{17}T_z + P_{18}R_x + P_{19}R_y + P_{20}R_z + P_{21}D end{bmatrix} ⇒ ​Tx​+DX1​+Rz​Y1​−Ry​Z1​Ty​−Rz​X1​+DY1​+Rx​Z1​Tz​+Ry​X1​−Rx​Y1​+DZ1​​ ​= ​P1​Tx​+P2​Ty​+P3​Tz​+P4​Rx​+P5​Ry​+P6​Rz​+P7​DP8​Tx​+P9​Ty​+P10​Tz​+P11​Rx​+P12​Ry​+P13​Rz​+P14​DP15​Tx​+P16​Ty​+P17​Tz​+P18​Rx​+P19​Ry​+P20​Rz​+P21​D​

⇒ P 1 = 1 , P 2 = 0 , P 3 = 0 , P 4 = 0 , P 5 = − Z 1 , P 6 = Y 1 , P 7 = X 1 P 8 = 0 , P 9 = 1 , P 10 = 0 , P 11 = Z 1 , P 12 = 0 , P 13 = − X 1 , P 14 = Y 1 P 15 = 0 , P 16 = 0 , P 17 = 1 , P 18 = − Y 1 , P 19 = X 1 , P 20 = 0 , P 21 = Z 1 Rarr \ P_1=1, P_2=0, P_3=0, P_4=0, P_5=-Z_1, P_6=Y_1, P_7=X_1 \ P_8=0, P_9=1, P_{10}=0,P_{11}=Z_1, P_{12}=0, P_{13}=-X_1,P_{14}=Y_1 \ P_{15}=0,P_{16}=0,P_{17}=1,P_{18}=-Y_1,P_{19}=X_1,P_{20}=0, P_{21}=Z_1 ⇒P1​=1,P2​=0,P3​=0,P4​=0,P5​=−Z1​,P6​=Y1​,P7​=X1​P8​=0,P9​=1,P10​=0,P11​=Z1​,P12​=0,P13​=−X1​,P14​=Y1​P15​=0,P16​=0,P17​=1,P18​=−Y1​,P19​=X1​,P20​=0,P21​=Z1​

⇒ P = [ 1 0 0 0 − Z 1 Y 1 X 1 0 1 0 Z 1 0 − X 1 Y 1 0 0 1 − Y 1 X 1 0 Z 1 ] Rarr P= begin{bmatrix} 1 & 0 & 0 & 0 & -Z_1 & Y_1 & X_1 \ 0 & 1 & 0 & Z_1 & 0 & -X_1 & Y_1 \ 0 & 0 & 1 & -Y_1 & X_1 & 0 & Z_1 end{bmatrix} ⇒P= ​100​010​001​0Z1​−Y1​​−Z1​0X1​​Y1​−X1​0​X1​Y1​Z1​​

∴ ( 2 ) 式变换为: therefore (2)式变换为: ∴(2)式变换为:
[ X 2 Y 2 Z 2 ] = [ X 1 Y 1 Z 1 ] + [ 1 0 0 0 − Z 1 Y 1 X 1 0 1 0 Z 1 0 − X 1 Y 1 0 0 1 − Y 1 X 1 0 Z 1 ] [ T x T y T z R x R y R z D ] (3) tag{3} begin{bmatrix} X_2 \ Y_2 \ Z_2 end{bmatrix} = begin{bmatrix} X_1 \ Y_1 \ Z_1 end{bmatrix} + begin{bmatrix} 1 & 0 & 0 & 0 & -Z_1 & Y_1 & X_1 \ 0 & 1 & 0 & Z_1 & 0 & -X_1 & Y_1 \ 0 & 0 & 1 & -Y_1 & X_1 & 0 & Z_1 end{bmatrix} begin{bmatrix} T_x \ T_y \ T_z \ R_x \ R_y \ R_z \ D end{bmatrix} ​X2​Y2​Z2​​ ​= ​X1​Y1​Z1​​ ​+ ​100​010​001​0Z1​−Y1​​−Z1​0X1​​Y1​−X1​0​X1​Y1​Z1​​ ​Tx​Ty​Tz​Rx​Ry​Rz​D​ ​(3)

基于最小二乘与多对同名点对计算参数

设存在 n 对同名点对: ( X a , Y a , Z a ) 1 → ( X b , Y b , Z b ) 1 , ⋯ , ( X a , Y a , Z a ) n → ( X b , Y b , Z b ) n . 设存在n对同名点对:(X_a,Y_a,Z_a)_1 rarr (X_b,Y_b,Z_b)_1,cdots,(X_a,Y_a,Z_a)_n rarr (X_b,Y_b,Z_b)_n. 设存在n对同名点对:(Xa​,Ya​,Za​)1​→(Xb​,Yb​,Zb​)1​,⋯,(Xa​,Ya​,Za​)n​→(Xb​,Yb​,Zb​)n​.
令 令 令
θ = [ T x T y T z R x R y R z D ] theta =begin{bmatrix} T_x \ T_y \ T_z \ R_x \ R_y \ R_z \ D end{bmatrix} θ= ​Tx​Ty​Tz​Rx​Ry​Rz​D​
v i = ( X b − X a , Y b − Y a , Z b − Z a ) i T , v_i=(X_b - X_a,Y_b - Y_a,Z_b - Z_a)^T_i, vi​=(Xb​−Xa​,Yb​−Ya​,Zb​−Za​)iT​,
P i = [ 1 0 0 0 − Z a Y a X a 0 1 0 Z a 0 − X a Y a 0 0 1 − Y a X a 0 Z a ] i , P_i= begin{bmatrix} 1 & 0 & 0 & 0 & -Z_a & Y_a & X_a \ 0 & 1 & 0 & Z_a & 0 & -X_a & Y_a \ 0 & 0 & 1 & -Y_a & X_a & 0 & Z_a end{bmatrix}_i, Pi​= ​100​010​001​0Za​−Ya​​−Za​0Xa​​Ya​−Xa​0​Xa​Ya​Za​​ ​i​,
i = 1 , ⋯ , n i=1,cdots,n i=1,⋯,n

根据式 ( 3 ) ,代入样本值得到方程组如下: 根据式(3),代入样本值得到方程组如下: 根据式(3),代入样本值得到方程组如下:
{ P 1 θ = v 1 P 2 θ = v 2 ⋮ P n θ = v n begin{dcases} P_1theta = v_1 \ P_2theta = v_2 \ vdots \ P_ntheta = v_n end{dcases} ⎩ ⎧​P1​θ=v1​P2​θ=v2​⋮Pn​θ=vn​​
则变换为矩阵方程为: 则变换为矩阵方程为: 则变换为矩阵方程为:
v = P θ v = Ptheta v=Pθ
P = [ P 1 P 2 ⋮ P n ] , v = [ v 1 v 2 ⋮ v n ] P= begin{bmatrix} P_1 \ P_2 \ vdots \ P_n end{bmatrix}, v= begin{bmatrix} v_1 \ v_2 \ vdots \ v_n end{bmatrix} P= ​P1​P2​⋮Pn​​ ​,v= ​v1​v2​⋮vn​​

考虑 v = P θ 无解,需要从 P 的列空间中找出最接近 v 的向量 u ( u 可以理解为 v 在 P 的列空间中的投影,理解如下图所示:) 考虑v = Ptheta无解,需要从P的列空间中找出最接近v的向量u(u可以理解为v在P的列空间中的投影,理解如下图所示:) 考虑v=Pθ无解,需要从P的列空间中找出最接近v的向量u(u可以理解为v在P的列空间中的投影,理解如下图所示:)

如上图所示, p 是 b 在 [ a 1 a 2 ] 列空间中的投影。 如上图所示,p是b在begin{bmatrix} a_1 & a_2 end{bmatrix} 列空间中的投影。 如上图所示,p是b在[a1​​a2​​]列空间中的投影。
令 e = v − u ,最小二乘就是找到 ∥ e ∥ 2 最小的点,最小二乘就是指向量长度的最小平方。 令e=v-u,最小二乘就是找到parallel e parallel^2最小的点,最小二乘就是指向量长度的最小平方。 令e=v−u,最小二乘就是找到∥e∥2最小的点,最小二乘就是指向量长度的最小平方。

由上可知, u 位于 P 的列空间中,即 u 是 P 的各列的线性组合: 由上可知,u位于P的列空间中,即u是P的各列的线性组合: 由上可知,u位于P的列空间中,即u是P的各列的线性组合:
令 P 的列空间为 P = [ C 1 C 2 ⋯ C m ] 令P的列空间为 P= begin{bmatrix} C_1 & C_2 & cdots & C_m end{bmatrix} 令P的列空间为P=[C1​​C2​​⋯​Cm​​]
故存在 u = C 1 θ 1 ~ + C 2 θ 2 ~ + ⋯ + C m θ m ~ 故存在 u=C_1tilde{theta_1} + C_2tilde{theta_2} + cdots + C_mtilde{theta_m} 故存在u=C1​θ1​~​+C2​θ2​~​+⋯+Cm​θm​~​
即 P θ ~ = u 有解。 即Ptilde{theta}=u有解。 即Pθ~=u有解。

e = v − u = v − P θ ~ e=v-u=v-Ptilde{theta} e=v−u=v−Pθ~
e 正交于 P 的列空间,存在: e正交于P的列空间,存在: e正交于P的列空间,存在:
e ⊥ C 1 , e ⊥ C 2 , ⋯ , e ⊥ C m e perp C_1,e perp C_2,cdots,e perp C_m e⊥C1​,e⊥C2​,⋯,e⊥Cm​

由向量点积关系式可得: 由向量点积关系式可得: 由向量点积关系式可得:

⇒ { C 1 T ( v − P θ ~ ) = 0 C 2 T ( v − P θ ~ ) = 0 ⋮ C m T ( v − P θ ~ ) = 0 Rarr begin{dcases} C_1^T(v-Ptilde{theta})=0 \ C_2^T(v-Ptilde{theta})=0 \ vdots \ C_m^T(v-Ptilde{theta})=0 end{dcases} ⇒⎩ ⎧​C1T​(v−Pθ~)=0C2T​(v−Pθ~)=0⋮CmT​(v−Pθ~)=0​

⇒ [ C 1 T C 2 T C 3 T ⋮ C m T ] ( v − P θ ~ ) = [ 0 0 0 ⋮ 0 ] Rarr begin{bmatrix} C_1^T \ C_2^T \ C_3^T \ vdots \ C_m^T end{bmatrix} (v-Ptilde{theta})= begin{bmatrix} 0 \ 0 \ 0 \ vdots \ 0 end{bmatrix} ⇒ ​C1T​C2T​C3T​⋮CmT​​ ​(v−Pθ~)= ​000⋮0​

∵ P = [ C 1 C 2 ⋯ C m ] because P= begin{bmatrix} C_1 & C_2 & cdots & C_m end{bmatrix} ∵P=[C1​​C2​​⋯​Cm​​]
∴ P T = [ C 1 T C 2 T ⋮ C m T ] therefore P^T = begin{bmatrix} C_1^T \ C_2^T \ vdots \ C_m^T end{bmatrix} ∴PT= ​C1T​C2T​⋮CmT​​

⇒ P T ( v − P θ ~ ) = 0 Rarr P^T(v-Ptilde{theta})=0 ⇒PT(v−Pθ~)=0
⇒ P T P θ ~ = P T v Rarr P^TPtilde{theta}=P^Tv ⇒PTPθ~=PTv
⇒ θ ~ = ( P T P ) − 1 P T v Rarr tilde{theta}=(P^TP)^{-1}P^Tv ⇒θ~=(PTP)−1PTv

即 θ ~ = ( P T P ) − 1 P T v 为基于最小二乘计算出来的最接近实际参数的转换值 即tilde{theta}=(P^TP)^{-1}P^Tv为基于最小二乘计算出来的最接近实际参数的转换值 即θ~=(PTP)−1PTv为基于最小二乘计算出来的最接近实际参数的转换值

本文发布于:2024-02-01 13:54:30,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170676687137071.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:坐标系
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23