# Camera Calibration in High-Speed Robotic Assembly Operations
## 2 State of the Art
The distance between the camera and the measurement plane is then determined using a point in the image plane \(p_{I}\) with a scale factor 1, the intrinsic matrix of the camera \(K\), the transformation matrix from the measurement plane frame to the image frame \(T\), and the corresponding point in the measurement plane \(p_{M}\). \[\lambda p_{I}=KTp_{M} \tag{2}\]  
Robotic vision is also an essential tool in surgical applications, where robot precision is the single most important parameter. [PERSON] et al. [23] developed a novel calibration technique using a da Vinci Research Kit robot. The method does not depend on the placement of the calibration board within the robot workspace. Also, the calibration of the robot kinematic structure is separated from the camera calibration. While using homogenous transformation matrices for calculations, as shown above, the calibration board has several points distributed in a circular pattern. Thus, the calibration approach is based on polar coordinates. By knowing the center of the set of acquired points and the radius of the circle over which the points are distributed, the pose of every calibration point is determined with respect to the camera. The best fitting plane is determined by using the centroid of the set of points **c** (with the points denoted as \(p\)) and the normal vector \(n\), with the optimal estimations calculated as below. \[\{\hat{c},\hat{n}\}=argmin_{c_{s},\ |n|_{2}=1}\sum_{i-1}^{n}\Bigl{(}(p_{i}-c)^{T}n \Bigr{)}^{2} \tag{3}\]  
[PERSON] et al. [24] outlined the problems occurring when using cameras, among which is lens distortion. Due to this phenomena, straight lines appear as curvatures in the image, as shown in Figure 1.  
The research performed by [PERSON] et al. focused on Stereo Vision Systems (SVS) by using two cameras for detection. The main reasons for accuracy loss in these systems were identified as image digitalization and lens distortion. In this case, a board with 63 points distributed in a grid pattern was used. The test points were illustrated as crosses on the board. The camera calibration was performed by estimating the horizontal and vertical angles for each cross. Then, the information regarding these angles was extracted from each camera. Using the estimated angles, the adjustment angles were determined using the least square method. Then, the angles provided by the cameras were modified by the adjustment angles to compensate for errors. Many research works dealing with camera calibration for robotic vision systems are based on the method presented by [PERSON] [25]. This approach established a set of  
Figure 1: Different types of lens distortion: (**a**) real image; (**b**) barrel distortion; (**c**) pincushion distortion; (**d**) mustache distortion. guidelines that were followed by many studies afterward [26; 27; 28; 29; 30; 31; 32; 33]. The Zhang algorithm is based on a planar pattern used for calibration. To provide sufficient input data, the pattern must be presented to the camera in different (at least two) orientations. The method uses points in the measurement plane that are projected on the image plane. Then, the intrinsic and extrinsic parameters of the camera are determined through matrix calculation. The results are then refined through maximum likelihood inference. The radial distortion is compensated through a set of coefficients obtained through the linear least squares method. One of the main disadvantages of the Zhang method--and subsequently, of all methods based on that one--is the requirement of a planar calibration pattern. Although the pattern is easy to create, it is still required. Furthermore, this approach makes the calibration process a separate task that requires the robot to interrupt the application in order to perform the calibration. The solution proposed by this study bypasses this issue by developing a calibration procedure that can be performed in real-time as a part of the application performed by the robot.