# Improved Direct Linear Transformation for Parameter Decoupling in Camera Calibration
## 3 Improved Direct Linear Transformation  
### Direct Linear Transformation  
The DLT algorithm dates to the work of [4] or earlier. In [13; 22], the authors analyzed the definition of the world coordinate system and proposed the use of data normalization to reduce the noise impact on the camera calibration parameters. In [10; 23], the authors proposed combining the DLT algorithm with an optimization algorithm to address the camera distortion models. The DLT algorithm consists of two steps: (1) homogeneous equation solving; and (2) parameter factorization. Space point \(P\) and its image \(p\) are related by homography \(M\):  
\[sp\ =\ MP\,\mathrm{with}\,M\ =\ K[R\,|\,T] \tag{10}\]  
where \(K\) is the camera intrinsic matrix. \(m_{ij}\) is the \(i\)-th row and \(j\)-th column element of \(M\). The 12 parameters in \(M_{3\times 4}\) are unknown in the matrix \(M^{{}^{\prime}}_{12\times 1}\). From Equation (10), we have:  
\[AM^{{}^{\prime}}\ =\ 0\,\mathrm{with}\,||M^{{}^{\prime}}|\ =\ C \tag{11}\]  
where \(C\) is a constant, and:  
\[A=\left[ \begin{array}{ccc}P^{T}&0&-uP^{T}\\ 0&P^{T}&-vP^{T}\end{array} \right]\ A=\left[ \begin{array}{ccc}P^{T}&0&-uP^{T} \\ 0&P^{T}&-vP^{T}\end{array} \right] \tag{12}\]  
Because Equation (11) is a homogeneous equation, we assume that \(m_{34}\) is equal to one. The \(M\) matrix can be solved by singular value decomposition. We can then obtain the intrinsic and extrinsic parameters of the camera through factorization. \[t_{z}=1/\sqrt{m_{31}{}^{2}+m_{32}{}^{2}+m_{33}{}^{2}} \tag{13}\]  
\[u_{0}=t_{z}^{2}(m_{11}m_{31}+m_{12}m_{32}+m_{13}m_{33}) \tag{14}\]  
Figure 3: Relationship between the focal distance and translation. Owing to the influence of image noise and distortion, \(M\) contains errors. From Equation (27), we thus have:  
\[ \begin{array}{l}a_{x}+\Delta a_{x}=m_{11}t_{z}+m_{11}\Delta t_{z}+\Delta m_{11}t _{z}+\Delta m_{11}\Delta t_{z}\\ a_{y}+\Delta a_{y}=m_{22}t_{z}+m_{22}\Delta t_{z}+\Delta m_{22}t_{z}+\Delta m_{ 22}\Delta t_{z}\end{array}  \tag{28}\]  
where \(\triangle a_{x}\), \(\triangle t_{z}\), \(\triangle m_{11}\), \(\triangle a_{y}\) and \(\triangle m_{22}\) are errors. \(\Delta m_{11}\Delta t_{z}\) and \(\Delta m_{22}\Delta t_{z}\) are much smaller than the others and can be ignored. Then, we have:  
\[ \begin{array}{l}\Delta a_{x}=m_{11}\Delta t_{z}+\Delta m_{11}t_{z}\\ \Delta a_{y}=m_{22}\Delta t_{z}+\Delta m_{22}t_{z}\end{array}  \tag{29}\]  
On account of \(\Delta t_{z}\gg\Delta m_{11}\) and \(\Delta t_{z}\gg\Delta m_{22}\), we have:  
\[ \begin{array}{l}\Delta a_{x}=m_{11}\Delta t_{z}\\ \Delta a_{y}=m_{22}\Delta t_{z}\end{array}  \tag{30}\]  
Equations (23), (24) and (30) show that a linear relationship exists between the calibration parameters after ignoring some minor errors. We use a simulation to illustrate the size of some of the ignored minor errors. In the simulation, we have \(a_{x}=1454.5\), \(a_{y}=1454.5\), \(u_{0}=700\) pixel and \(v_{0}=512\) pixel; moreover, the size of the pattern is 0.7 m \(\times\) 0.7 m \(\times\) 0.3 m. The relationship of the world coordinate system relative to the camera coordinate system relationship is represented by R = [20; 20; 20] (\({}^{\circ}\)) and \(T=\) [\(-0.25\), \(-0.25\), \(t_{z}\)] (mm). Gaussian noise with a zero mean and a 0.1-pixel standard deviation is added to the projected image points. The analysis of Equations (23) and (24) is shown in Figure 4. The difference between \(\triangle a_{x}\), \(\triangle a_{y}\) and the results of Equations (23) and (24) is small. The analysis of Equation (30) is shown in Figure 5. Because the Euler angles are not equal to 0\({}^{\circ}\), \(\triangle t_{x}\), \(\triangle t_{y}\) and the result of Equation (30) are different. However, the difference is small. Under the influence of image noise and lens distortion, the M matrix of the DLT algorithm contains errors. These errors further affect the accuracy of the calibration parameters.