RPC
2017/06/02 Jin Katagi
Keep writing.
How to solve RPC
In this page, I just only show Terrain-dependent Approach (= using GCPs approach).
Least-Squares solutions[1]
参考文献[1]の式変形を追っていく。
r をベクトルの内積の形で表すと
r = \frac{(1, Z, Y, X, \ldots , Y^3, X^3)\cdot(a_{0}, a_{1}, \ldots , a_{19})^T}{(1, Z, Y, X, \ldots , Y^3, X^3)\cdot{(1, b_{1}, \ldots , b_{19})^T}}
となる。 この誤差を v_rとすると、
v_r = \frac{(1, Z, Y, X, \ldots , Y^3, X^3)\cdot(a_{0}, a_{1}, \ldots , a_{19})^T}{(1, Z, Y, X, \ldots , Y^3, X^3)\cdot{(1, b_{1}, \ldots , b_{19})^T}} - r
となる。ここでrの右辺の分母をB( =(1, Z, Y, X, \ldots , Y^3, X^3)\cdot{(1, b_{1}, \ldots , b_{19})^T})と置くと
\begin{array}{lll}
v_r & = & \frac{(1, Z, Y, X, \ldots , Y^3, X^3)\cdot(a_{0}, a_{1}, \ldots , a_{19})^T}{\cdot{B}} - r \\
& = & \frac{(1, Z, Y, X, \ldots , Y^3, X^3)\cdot(a_{0}, a_{1}, \ldots , a_{19})^T}{\cdot{B}} - \frac{r}{B}B \\
& = & \frac{(1, Z, Y, X, \ldots , Y^3, X^3)\cdot(a_{0}, a_{1}, \ldots , a_{19})^T}{\cdot{B}} - \frac{r}{B}(1 + (Z, Y, X, \ldots , Y^3, X^3)\cdot(b_{1}, \ldots , b_{19})^T) \\
& = & \frac{(1, Z, Y, X, \ldots , Y^3, X^3)\cdot(a_{0}, a_{1}, \ldots , a_{19})^T}{\cdot{B}} - \frac{r}{B} - \frac{(Z, Y, X, \ldots , Y^3, X^3)\cdot(b_{1}, \ldots , b_{19})^T)}{B} \\
& = & \frac{1}{B}((1, Z, Y, X, \ldots , Y^3, X^3)\cdot(a_{0}, a_{1}, \ldots , a_{19})^T - r(Z, Y, X, \ldots , Y^3, X^3)\cdot(b_{1}, \ldots , b_{19})^T) - \frac{r}{B} \\
& = & \frac{1}{B}((1, Z, Y, X, \ldots , Y^3, X^3 , rZ, rY, rX, \ldots , rY^3, rX^3)\cdot(a_{0}, \ldots , a_{19}, b_{1}, \ldots , b_{19})^T) - \frac{r}{B} \\
& = & \frac{1}{B}((1, Z, Y, X, \ldots , Y^3, X^3 , rZ, rY, rX, \ldots , rY^3, rX^3)\cdot {\bm j} - \frac{r}{B}
\end{array}
ここで {\bm j}=(a_{0}, \ldots , a_{19}, b_{1}, \ldots , b_{19})^T)とした。
この {\bm j}を、最小二乗法を用いて求めていく。
今、GCPをn個取ったとする。
k番目のGCPを {(X_k, Y_k, Z_k)}とし、対応する誤差を v_{rk}とするとすべてのGCPにおける誤差は
\begin{array}{lll}
\begin{bmatrix}
v_{r1} \\
v_{r2} \\
\vdots \\
v_{rn}
\end{bmatrix}
& = &
\begin{bmatrix}
\frac{1}{B_1} & 0 & \ldots& 0 \\
0 & \frac{1}{B_2} & 0 & \vdots \\
\vdots & & & \\
0 & \ldots & 0 & \frac{1}{B_n}
\end{bmatrix}
\cdot
\begin{bmatrix}
1 & Z_1 & \ldots & -r_{1} X^3_{1} \\
1 & Z_2 & \ldots & -r_{2} X^3_{2} \\
\vdots & & & \\
1 & Z_n & \ldots & -r_{n} X^3_{n}
\end{bmatrix}
\cdot
{\bm j}
-
\begin{bmatrix}
\frac{1}{B_1} & 0 & \ldots& 0 \\
0 & \frac{1}{B_2} & 0 & \vdots \\
\vdots & & & \\
0 & \ldots & 0 & \frac{1}{B_n}
\end{bmatrix}
\cdot
\begin{bmatrix}
r_1 \\
r_2 \\
\vdots \\
r_n
\end{bmatrix}
\end{array}
よって
{\bm v_r} = {\bm W_r} {\bm M} {\bm j} - {\bm W_r} {\bm R}
これを最小化するために、 v_{r}^T \cdot v_rを求めると
\begin{array}{lll}
v_{r}^T \cdot v_r
& = & ({\bm W_r} {\bm M} {\bm j} - {\bm W_r} {\bm R})^T \cdot ({\bm W_r} {\bm M} {\bm j} - {\bm W_r} {\bm R}) \\
& = & {\bm j^T}{\bm M^T}{\bm W_r^T}{\bm W_r}{\bm M}{\bm j} - 2{\bm j^T}{\bm M^T}{\bm W_r^T}{\bm W_r}{\bm R} + {\bm R^T}{\bm W_r^T}{\bm W_r}{\bm R} \\
& = & {\bm j^T}{\bm M^T}{\bm W^2_r}{\bm M}{\bm j} - 2{\bm j^T}{\bm M^T}{\bm W^2_r}{\bm R} + {\bm R^T}{\bm W^2_r}{\bm R}
\end{array}
f({\bm j})=v_{r}^T \cdot v_rとし、jについて微分すると
f({\bm j} + \delta {\bm j}) - f({\bm j})
= 2 \delta {\bm j^T}{\bm M^T}{\bm W^2_r}{\bm M}{\bm j} - 2 \delta {\bm j^T}{\bm M}{\bm W^T}{\bm W}{\bm R}
よって
{\bm M^T} {\bm W^2_r} {\bm M} {\bm j} - {\bm M^T} {\bm W^2_r} {\bm R} = 0
Regularization of the Normal Equation[1]
Bibliography
- Tao, v., Hu, Y., 2001. A Comprehensive Study of the Rational Function Model for Photogrammetric Processing, PE&RS, 67(12), pp. 1347-1357.link
- Hu, Y., Tao V., Croitoru A., ISPRS 2004.
Keyword(s):
References:[とらりもんHOME] [リモセンの基礎]