Robotics-Perception-week2[2]

1 minute read

Two Method Of Perception Matrix with 4 pointsPermalink

线性代数推导Permalink

  • 参考
  • 对于点xx经过HH变换后有如下公式 [yx1]=H[xy1]=[h11h12h13h21h22h23h31h32h33][xy1]\begin{aligned} \begin{bmatrix} y'\\x'\\1 \end{bmatrix} &= \mathbf{H} \begin{bmatrix} x\\y\\1 \end{bmatrix}\\ &= \begin{bmatrix} h_{11}&h_{12}&h_{13}\\ h_{21}&h_{22}&h_{23}\\ h_{31}&h_{32}&h_{33} \end{bmatrix} \begin{bmatrix} x\\y\\1 \end{bmatrix}\\ \end{aligned}
  • 根据一个点,我们可以得到两个方程组 x=h11x+h12y+h13h31x+h32y+h33y=h21x+h22y+h23h31x+h32y+h33\begin{aligned} x' &= \frac{h_{11}x+h_{12}y+h_{13}}{h_{31}x+h_{32}y+h_{33}}\\ y' &= \frac{h_{21}x+h_{22}y+h_{23}}{h_{31}x+h_{32}y+h_{33}}\\ \end{aligned}
  • 其中h31x+h32y+h33h_{31}x+h_{32}y+h_{33} 用于表示一个未知的倍数变量
  • 表示成矩阵形式有 [xy1000xxxyx000xy1yxyyy][h11h12h13h21h22h23h31h32h33]=0\begin{bmatrix} x&y&1&0&0&0&-x'x&-x'y&-x'\\ 0&0&0&x&y&1&-y'x&-y'y&-y'\\ \end{bmatrix} \begin{bmatrix} h_{11}\\ h_{12}\\ h_{13}\\ h_{21}\\ h_{22}\\ h_{23}\\ h_{31}\\ h_{32}\\ h_{33}\\ \end{bmatrix}=0
  • 4点联立,有 [x1y11000x1x1x1y1x1000x1y11y1x1y1y1y1x2y21000x2x2x2y2x2000x2y21y2x2y2y2y2x3y31000x3x3x3y3x3000x3y31y3x3y3y3y3x4y41000x4x4x4y4x4000x4y41y4x4y4y4y4][h11h12h13h21h22h23h31h32h33]=0\begin{bmatrix} x_1&y_1&1&0&0&0&-x_1'x_1&-x_1'y_1&-x_1'\\ 0&0&0&x_1&y_1&1&-y_1'x_1&-y_1'y_1&-y_1'\\ x_2&y_2&1&0&0&0&-x_2'x_2&-x_2'y_2&-x_2'\\ 0&0&0&x_2&y_2&1&-y_2'x_2&-y_2'y_2&-y_2'\\ x_3&y_3&1&0&0&0&-x_3'x_3&-x_3'y_3&-x_3'\\ 0&0&0&x_3&y_3&1&-y_3'x_3&-y_3'y_3&-y_3'\\ x_4&y_4&1&0&0&0&-x_4'x_4&-x_4'y_4&-x_4'\\ 0&0&0&x_4&y_4&1&-y_4'x_4&-y_4'y_4&-y_4'\\ \end{bmatrix} \begin{bmatrix} h_{11}\\ h_{12}\\ h_{13}\\ h_{21}\\ h_{22}\\ h_{23}\\ h_{31}\\ h_{32}\\ h_{33}\\ \end{bmatrix}=0
  • 当左侧矩阵可逆时,方程又解,令h3h_3为1,求解其他hh

构造基向量Permalink

  • 我们需要求映射HH, 使得Ha=a,,Hd=d\mathbf{Ha=a’},\dotsc, \mathbf{Hd=d’}
  • 由于a,b,c\mathbf{a,b,c}三点线性无关,因此,总可以找到一种比例α,β,γ\alpha, \beta, \gamma 使得αa+βb+γc=d\alpha \mathbf{a} + \beta \mathbf{b} + \gamma \mathbf{c} = \mathbf{d}
  • 写成矩阵形式为 A[111]=[αaβbγc][111]=dA\begin{bmatrix} 1\\1\\1 \end{bmatrix} =\begin{bmatrix} \alpha \mathbf{a}&\beta \mathbf{b}&\gamma \mathbf{c} \end{bmatrix} \begin{bmatrix} 1\\1\\1 \end{bmatrix} =d
  • 同理, 由于空间不变性,在射影空间中,a,b,c\mathbf{a’,b’,c’}依然线性无关 B[111]=[αaβbγc][111]=dB\begin{bmatrix} 1\\1\\1 \end{bmatrix} = \begin{bmatrix} \alpha' \mathbf{a'}&\beta' \mathbf{b'}&\gamma' \mathbf{c'} \end{bmatrix} \begin{bmatrix} 1\\1\\1 \end{bmatrix} =\mathbf{d'}
  • 那么我们可以变换一下,有 [111]=A1d=B1dBA1d=dHd=d\begin{aligned} &\begin{bmatrix} 1\\1\\1 \end{bmatrix} =\mathbf{A^{-1}d=B^{-1}d'}\\ &\mathbf{BA^{-1}d=d'}\\ &\mathbf{Hd=d'} \end{aligned}
  • H=BA1\mathbf{H=BA^{-1}}即为所求矩阵

计算例子(1)Permalink

(1,0,0)(0,1,0)(0,0,0)(1,1,1)(1,0,0)(0,1,0)(0,0,0)(2,1,1)\begin{matrix} (1,0,0)\\(0,1,0)\\(0,0,0)\\(1,1,1) \end{matrix} \rightarrow \begin{matrix} (1,0,0)\\(0,1,0)\\(0,0,0)\\(2,1,1) \end{matrix} M=[200010001]M=\begin{bmatrix} 2&0&0\\ 0&1&0\\ 0&0&1 \end{bmatrix}

计算例子(2)Permalink

(0,0,1)(1,1,1)(1,0,1)(0,1,1)(0,0,1)(1,1,1)(1,0,0)(0,1,0)\begin{matrix} (0,0,1)\\(1,1,1)\\(1,0,1)\\(0,1,1) \end{matrix} \rightarrow \begin{matrix} (0,0,1)\\(1,1,1)\\(1,0,0)\\(0,1,0) \end{matrix} A=[100010111]A=\begin{bmatrix} -1&0&0\\ 0&-1&0\\ -1&-1&1 \end{bmatrix}

计算例子(3)Permalink

(1,0,0)(0,1,0)(0,0,1)(1,1,1)(2,0,1)(0,1,1)(1,2,1)(1,1,1) \begin{matrix} (1,0,0)\\(0,1,0)\\(0,0,1)\\(1,1,1) \end{matrix} \rightarrow \begin{matrix} (-2,0,1)\\(0,1,-1)\\(-1,2,-1)\\(-1,1,1) \end{matrix}
A=[2301053213531] A=\begin{bmatrix} -\frac{2}{3}&0&1\\ 0&\frac{5}{3}&-2\\ \frac{1}{3}&-\frac{5}{3}&1 \end{bmatrix}

Cross-ratio[交比定理]Permalink

CR = lambda ac,ad,bc,bd: ac*bd/bc/ad
  • 定义: Cross-ratio A,B;C,D=ACAD:BCBD{A,B;C,D}=\frac{AC}{AD}:\frac{BC}{BD}
  • A,B;C,D=A,B;C,D{A,B;C,D} = {A’,B’;C’,D’}
  • 性质
    • 影射[Perception transform]不变性
  • 利用三角形面积证明
{A,B;C,D}=ACAD:BCBD=ACBDADBC=SACOSBDOSADOSBCO=AOCOsin(AOC)BODOsin(BOD)AODOsin(AOD)BOCOsin(BOC)=sin(AOC)sin(BOD)sin(AOD)sin(BOC) \begin{aligned} \{A,B;C,D\}&=\frac{AC}{AD}:\frac{BC}{BD}\\ &=\frac{AC·BD}{AD·BC}\\ &=\frac{S_{\triangle ACO}·S_{\triangle BDO}}{S_{\triangle ADO}·S_{\triangle BCO}}\\ &=\frac{AO·CO\sin(\angle AOC)·BO·DO\sin(\angle BOD)}{AO·DO\sin(\angle AOD)·BO·CO\sin(\angle BOC)}\\ &=\frac{\sin(\angle AOC)\sin(\angle BOD)}{\sin(\angle AOD)\sin(\angle BOC)} \end{aligned}
  • 因此,交比只与角度有关,因此是定值

利用交比定理计算Permalink

20210803230153

  • 求解火车到下一个火车站的距离
  • 由图知,AB=2,AC=4,CD=4A’B’=2,A’C’=4,C’D’=4
  • A,B;C,D=ACAD:BCBD=16{A’,B’;C’,D’}=\frac{A’C’}{A’D’}:\frac{B’C’}{B’D’}=\frac{1}{6}
  • 已知AC=50kmAC=50km, from image next station 50km
  • A,B;C,D=A,B;C,D=ACBC{A’,B’;C’,D’}={A,B;C,D}=\frac{AC}{BC}, 由于D点在无穷远,因此,ADBD1\frac{AD}{BD}\simeq1
  • BC=33.33kmBC=33.33km

寻找灭点[Vanishing point]Permalink

20210803231138

  • 求解灭点D在图像中的位置
  • 根据图片,有ACAD:BCBD=ACBC\frac{A’C’}{A’D’}:\frac{B’C’}{B’D’}=\frac{AC}{BC}
  • 因为是瓷砖
  • 所以ACBC=2\frac{AC}{BC}=2
  • 那么如果已知A,C,DA’,C’,D’的位置,即可计算出DD’的位置

Categories: ,

Updated: