输入一堆的点 [ R w c , t w c , p u c ] [R_{wc},t_{wc},p_{uc}] [Rwc,twc,puc]
转化成空间的一系列射线 [ P w i , t w i ] , P w i = t w c , t w i = R w c × p u c [P_{wi},t_{wi}],P_{wi}=t_{wc},t_{wi}=R_{wc}\times p_{uc} [Pwi,twi],Pwi=twc,twi=Rwc×puc
点和射线之间的关系是 P = P i + d i × t i P=P_i+d_i\times t_i P=Pi+di×ti
方程改写为 [ t i ] × P = t i × P i [t_i]^{\times}P=ti\times P_i [ti]×P=ti×Pi
方程的表达式为 A = [ [ t 1 ] × . . . [ t n ] × ] A= \begin{bmatrix} [t_1]^{\times} \\ ... \\ [t_n]^{\times} \end{bmatrix} A=[t1]×...[tn]× b = [ t 1 × P 1 . . . t n × P n ] b= \begin{bmatrix} t_1\times P_1 \\ ... \\ t_n\times P_n \end{bmatrix} b=t1×P1...tn×Pn A x = b Ax = b Ax=b
直线的线性三角化
输入一堆检测的线段 [ R c w , t c w , p u c 1 , p u c 2 ] [R_{cw},t_{cw},p_{uc1},p_{uc2}] [Rcw,tcw,puc1,puc2]
两条检测射线形成的面的法线 n c ⃗ = p u c 1 × p u c 2 \vec{n_c}=p_{uc1}\times p_{uc2} nc=puc1×puc2
直线上点的坐标形成的射线和法线是垂直的 n c ⃗ × P c = 0 n c ⃗ × ( R c w P w + t c w ) = 0 [ n c ⃗ ] × R c w P w = − n c ⃗ × t c w \vec{n_c} \times P_c = 0 \\ \vec{n_c}\times(R_{cw}P_w + t_{cw}) = 0 \\ [\vec{n_c}]^{\times}R_{cw}P_w=-\vec{n_c}\times t_{cw} nc×Pc=0nc×(RcwPw+tcw)=0[nc]×RcwPw=−nc×tcw KaTeX parse error: Expected '}', got '\end' at position 92: …\times}R_{cwn} \̲e̲n̲d̲{bmatrix} b = [ − n c 1 ⃗ × t c w 1 . . . − n c n ⃗ × t c w n ] b= \begin{bmatrix} -\vec{n_{c1}}\times t_{cw1} \\ ... \\ -\vec{n_{cn}}\times t_{cwn} \end{bmatrix} b=−nc1×tcw1...−ncn×tcwn A x = b Ax = b Ax=b