# Non-Cooperative Spacecraft Pose Measurement with Binocular Camera and TOF Camera Collaboration
## 4 Experiment and Analysis  
### Numerical Simulation  
In the simulation setting, the image resolution of the left and right cameras was 2048 \(\times\) 2048 pixels, the rotation matrix between the two cameras was \(\mathbf{R}_{\text{c}}=\mathbf{I}_{3\times 3}\), and the baseline, B, was 100 mm. The TOF resolution was 640 \(\times\) 480 pixels, the rotation matrix between the left camera and TOF camera was \(\mathbf{R}_{\text{cp}}=\mathbf{I}_{3\times 3}\), and the distance from left camera to the TOF camera was 50 mm. The target rotated 180 degrees around the rolling axis in this simulation experiment. A total of 90 frames were collected. The angles of the X-, Y, and Z-axis are described as the yaw, pitch, and roll angle below, respectively. Figure 11a,b present the X-, Y-, and Z-axis position and Euler angle curve results during the low-speed rotation process. It can be concluded that the absolute transformation also represents the position error curve. The maximum error of the X-, Y-, and Z-axis positions was 0.27, 0.88, and 1.94 mm. There is no doubt that the trend of the roll angle motion was consistent with the actual situation. The maximum error of the X-, Y-, and Z-axis angles was 0.32\({}^{\circ}\), 0.31\({}^{\circ}\), and  
two grayscale cameras (LUCID TRI032S-MC) and one TOF camera (LUCID HLT003S-001). The grayscale camera and TOF camera parameters are shown in Table 1. The non-cooperative satellite model was a 0.5 \(\times\) 0.5 m cube model. The light in the space was handled through a solar simulator. The rotational movement of the target was controlled by the ABB robotic arm. The ground truth was acquired by setting the dynamic data in advance and then driving the robotic arm to complete the corresponding movement through the program in the manipulator base coordinate system. The most important thing is that the frequency of the robotic arm movement and camera system acquisition was consistent. The accuracy of the ground truth was verified by an electronic total station. The premise of this scheme is that some reflection plates need to be artificially set on the satellite model. The circular calibration board was used to acquire the conversion relationship from the total station system to the camera system. In fact, the ground truth needs to be obtained every time through the above calibration scheme. However, due to the continuous motion, the preset dynamics data are regarded as the ground truth. The diagram is shown in Figure 12. Figure 13 illustrates the ground verification system. \begin{table}
\begin{tabular}{c c c} \hline \hline  & **Grayscale Camera** & **TOF Camera** \\ \hline Sensor size & 2048 \(\times\) 1536 (pixel) & 640 \(\times\) 480 (pixel) \\ Pixel size & 3.45 \(\upmu\)m & 10 \(\upmu\)m \\ Field of view & 41 \(\times\) 31 (\({}^{\circ}\)) & 69 \(\times\) 51 (\({}^{\circ}\)) \\ Focal length & 12 mm & 8 mm \\ \hline \hline \end{tabular}
\end{table} 
Table 1: Camera parameters. Figure 12: Schematic diagram to verify the accuracy of the ground truth. Figure 13: Schematic diagram of the ground verification system: (**a**) composite measurement system; (**b**) diagram of the non-cooperative target; (**c**) solar illumination simulator. Then, the calibration work mentioned above was carried out. The internal parameters of the left camera and right camera were:  
\[R_{\text{kl}}= \begin{bmatrix}1761.482&0&1030.910\\ 0&1758.598&781.315\\ 0&0&1\end{bmatrix} ,\ R_{\text{kr}}= \begin{bmatrix}1808.867&0&1027.288\\ 0&1807.775&773.017\\ 0&0&1\end{bmatrix}  \tag{24}\]  
The calibration results of the external parameters were:  
\[R_{\text{c}}= \begin{bmatrix}0.9988&-0.0004&-0.0481\\ 0.002&0.999&-0.0042\\ 0.0481&0.0042&0.9988\end{bmatrix} ,\ T_{\text{c}}= \begin{bmatrix}-72.134,-61.88 7,-19.996\end{bmatrix} ^{\text{T}}\ (\text{mm}) \tag{25}\]  
According to the joint calibration algorithm proposed in this paper, the calibration results from the camera coordinate system to the point cloud coordinate system were:  
\[R_{\text{cp}}=