Content deleted Content added
→Simultaneous solutions: expanded with info |
→Hand-eye calibration problem: filling in references |
||
Line 7:
==Hand-eye calibration problem==
{{collapse top| Hand-eye calibration problem}}
In robotics, the '''hand-eye calibration problem''', or the '''robot-sensor calibration problem''', is the problem of determining the transformation between a robot [[end-effector]] and a camera or the transformation between a robot base and the world coordinate system.<ref> Amy Tabb, Khalil M. Ahmad Yousef. [https://arxiv.org/abs/1907.12425 "Solving the Robot-World Hand-Eye(s) Calibration Problem with Iterative Methods."] 29 Jul 2019.</ref> It takes the form of {{math|AX{{=}}ZB}}, where ''A'' and ''B'' are two systems, usually a robot base and a camera, and {{math|X}} and {{math|Z}} are unknown transformation matrices. A highly studied special case of the problem occurs where {{math|X{{=}}Z}}, taking the form of the problem {{math|AX{{=}}XB}}. Solutions to the problem take the forms of several types of methods, including "separable closed-form solutions, simultaneous closed-form solutions, and iterative solutions".<ref>Mili I. Shah, Roger D. Eastman, Tsai Hong Hong. [https://www.nist.gov/publications/overview-robot-sensor-calibration-methods-evaluation-perception-systems?pub_id=910651 "An Overview of Robot-Sensor Calibration Methods for Evaluation of Perception Systems."] 22 March, 2012</ref> The covariance of {{math|X}} in the equation can be calculated for any randomly perturbed matrices {{math|A}} and {{math|B}}.<ref>https://arxiv.org/pdf/1706.03498.pdf</ref>
===Methods===
Many different methods and solutions developed to solve the problem, broadly defined as either Separable, simultaneous solutions. Each type of solution has specific advantages and disadvantages as well as formulations and applications to the problem. A common theme throughout all of the methods is the common use of [[quaternion]]s to represent rotation matrices.
====Separable solutions====
Line 16:
:{{math|'''R'''<sub>A</sub>'''R'''<sub>X</sub>{{=}}'''R'''<sub>Z</sub>'''R'''<sub>B</sub>}}
:{{math|'''R'''<sub>A</sub>'''t'''<sub>X</sub>+'''t'''<sub>A</sub>{{=}}'''R'''<sub>Z</sub>'''t'''<sub>B</sub>+'''t'''<sub>Z</sub>}}
Equation 2 becomes linear if {{math|'''R'''<sub>Z</sub>}} is known. As such, the most frequent approach is to {{math|'''R'''<sub>x</sub>}} and {{math|'''R'''<sub>z</sub>}} using the first equation then using it to solve for the second two variables in the second equation. Rotation is represented using [[quaternion]]s, allowing for a linear solution to be found. While separable methods are useful, any error in the estimation for the rotation matrices is compounded when being applied to the translation vector.<ref name="tsapps">Mili Shah, et al. [https://tsapps.nist.gov/publication/get_pdf.cfm?pub_id=910651 "An Overview of Robot-Sensor Calibration Methods for Evaluation of Perception Systems."]</ref> Other solutions avoid this problem.
====Simultaneous solutions====
Line 22:
====Iterative solutions====
Iterative solutions are another method used to solve the problem of error propagation. One example of an iterative solution is a program based on minimizing {{math|{{!}}{{!}}AX−XB{{!}}{{!}}}}. As the program iterates, it will converge on a solution to {{math|X}} independent to the initial robot orientation of {{math|'''R'''<sub>B</sub>}}. Solutions can also be two-step iterative processes, and like simultaneous solutions can also decompose the equations into [[dual quaternion]]s.<ref>Zhiqiang Zhang, et al. [https://link.springer.com/article/10.1007/s11548-017-1646-x "A computationally efficient method for hand–eye calibration."] 19 July, 2017.</ref> However, while iterative solutions to the problem are generally simultaneous and accurate, they can be computationally taxing to carry out and may not always converge on the optimal solution.<ref name="tsapps"/>
*[http://math.loyola.edu/~mili/Calibration/]
|