# Dynamic Synthesis of Three -- Point Circle Peripheral Docking Technology Pose
## 3 Visual Positioning System
### Modules and Algorithms  
The main body of the algorithm for the reconstructed vehicle visual positioning system is composed of the following parts: image preprocessing, distortion correction, label feature extraction, label combination clustering, label identification, and label position calculation. The software includes a camera imaging module, a visual image preprocessing module, a tag detection and recognition algorithm module, and a tag position information calculation module. Tag image acquisition is realized with the camera imaging module, which is composed of the OV2640 optical chip and the Omni Visio lens. The road sign position identification label is composed of three marking points, which are fixed above the three locking holes of the passive rear frame. The location tag is surrounded by the identification tag, as shown in Figure 8. The principle is to ensure that there are no blind areas in the moving range of the active vehicle body during the docking process. The infrared light source of the driving car adopts near\(-\)infrared light and an 850 nm light\(-\)emitting diode. To reduce the interference pixels of ambient visible light, a narrowband filter (corresponding band) is set in front of the camera lens to ensure that only the artificial beacon is imaged. Image processing, i.e., binary processing, is carried out after road signs are collected. Feature extraction of the marked points in the binary image is performed, and then, the clustering processing is carried out to calculate the tag combination. Finally, according to the triangle formed by three marker points, the identity information of the label is extracted. The position and azimuth of the camera relative to each tag's coordinate system are calculated by the tag position information calculation module. The label coordinate system that identifies the marked points according to the three positions is called the landmark coordinate system. To calculate the relative relationship between the camera coordinate system and the landmark coordinate system, the rotation matrix and translation matrix between the two coordinate systems are derived. First, the camera coordinate system and landmark coordinate system are established, as shown in Figure 9. The origin of the active car body's camera coordinate system is the intersection of the optical axis of the camera and the light\(-\)sensitive chip, which is located at the point O\({}_{\rm d}\) above the fine pupil of the tail frame of the active vehicle body, where the \(X-\)axis is the O\({}_{\rm d}\)A\({}_{\rm d}\) connection, the \(Y-\)axis is the O\({}_{\rm d}\)B\({}_{\rm d}\) connection, and the \(Z-\)axis is the direction along the optical axis outward, pointing to the target vehicle body. The camera coordinate system (active car body) is O\({}_{\rm d}\)X\({}_{\rm d}\)Y\({}_{\rm d}\)Z\({}_{\rm d}\). There are three marking points,  
Figure 8: Identification of location. Figure 7: Working principle of the visual positioning system. \(\rm O_{p}\) (lower center), \(\rm A_{p}\) (upper left side), and \(\rm B_{p}\) (upper right side), above the three lock bodies of the target car body tail frame. The origin of the landmark coordinate system is the marking point \(\rm O_{p}\) of the lowest center. The \(\rm O_{p}A_{p}\) connection is in the \(\rm X\) direction, the \(\rm O_{p}B_{p}\) connection is in the \(\rm Y\) direction, and the vertical outward direction is in the \(\rm Z\) direction. The landmark coordinate system (target car body) is \(\rm OX_{p}Y_{p}Z_{p}\). The location coordinates of the three marked points of OAB are (0,0,0), (L,0,0), and (0,L,0), and \(\rm L\) is the distance of OA. Mapping relationship of camera coordinate system and guide coordinate system is shown in Figure 10.  
Figure 10: Mapping relationship of camera coordinate system and guide coordinate system. Figure 9: Establishment of coordinate systems. (**a**) Camera coordinate system. (**b**) Landmark coordinate system.