User:IntegralPython/sandbox: Difference between revisions

Content deleted Content added
No edit summary
Hand-eye calibration problem: translation into math text
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>[https://arxiv.org/abs/1907.12425] </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>[https://www.nist.gov/publications/overview-robot-sensor-calibration-methods-evaluation-perception-systems?pub_id=910651]</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===
Line 13:
 
====Separable solutions====
Given the equation {{math|AX{{=}}ZB}}, it is possible to decompose the equation into a purely rotational and translational part; methods utilizing this are referred to as separable methods. Where {{math|'''R'''<sub>A</sub>}} represents a 3x33×3 rotation matrix and {{math|'''t'''<sub>A</sub>}} a 3x13×1 translation vector, the equation can be broken into two parts:<ref>[https://arxiv.org/pdf/1907.12425.pdf]</ref>
:{{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 Rx{{math|'''R'''<sub>x</sub>}} and Rz{{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">[https://tsapps.nist.gov/publication/get_pdf.cfm?pub_id=910651]</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||</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>https://link.springer.com/article/10.1007/s11548-017-1646-x</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/]
Line 28:
*[https://arxiv.org/abs/1706.03498]
{{collapse bottom}}
 
==What is algebra?==
{{collapse top| What is Algebra}}