Archive for March, 2012

To calibrate or not to calibrate…

// March 24th, 2012 // 1 Comment » // Artificial Intelligence, Research

Robot calibration. I would define it as the process by which a robot takes knowledge of the actual position in its body of a given part that is important for it (usually, the sensors), in relation to a given frame of reference (usually the body center). For example, where in the robot body is exactly located the stereo camera, from the center of the robot.

In a perfect world, calibration would never be necessary. The mechanical engineers would design the position of each part and piece of the robot, and hence, everybody would have access to that information just by asking the engineers where did they put that part in the robot.
However, real life is more interesting than that. Designed positions of robot parts NEVER correspond to the actual position in the real robot. This is due to errors performed during construction, tolerances between parts, or even errors in the plan.

To handle this uncertainty, the process of calibration was invented. So, EACH ROBOT has to be calibrated after construction, before starting to use it.

PR2 robot uses a checkboard pattern to calibrate its camera

All type of robots suffer from having to be calibrated, but in the case of Service Robots the situation is more complex, because its number of sensors and parts involved is larger (a different calibration system must be designed for the calibration of each part).
Furthermore, given that current AI systems that control the robot relay on a very precise calibration to work correctly (they cannot handle very well noise and error), having a good calibration system is crucial for a Service Robot.

Current approaches to calibration follow more or less the same approach: the robot is set on a controlled specific environment, and performs some measurements with some of the sensors that need to be calibrated. This is the process followed in hand-eye calibration [1], odometry calibration [2], or laser calibration [3].

All those processes require the robot to perform some specific actions with a very specific setup.
The problem arises when, you have many systems to calibrate (for example in a Service Robot), and also, the robot has to be recalibrated from time to time due to changes in the robot structure (robots suffer changes just by using them!).

Reem robot performs some specific movements to calibrate its arms

So, a more general approach to calibration has to be designed, that avoids the definition of specific calibrators for each part.
And this process has also to be a long life calibration system, that allows the robot calibrate by itself without having to use specific set ups (usually only available at specific locations). Summarizing, the robot must learn its sensorymotor space and adapt it as it changes through its whole life.

Theory towards this end has already been put in place in the work of Philipona and O’Regan [4][5].
In their work, Philipona and O’Regan propose an algorithm that would allow any robot to learn any sensorimotor system, the relations between sensors and motors, and how they related to the physical world… without any previous knowledge of its body or the space around it!.

Applying this theory to the calibration of a robot would allow any robot to calibrate itself, independently on where it is (not necessarily at the factory, but may be at the owner’s home), the sensorymotor configuration, and also adapt itself to changes along its whole life, without having to return to the factory or requiring any specific action from the owner.

At present, such type of calibration system is almost science fiction. I am not aware of anybody using it, but who knows if somebody is already working on this somewhere in the world… may be at Pal Robotics?…

If you are interested just contact me.

References:
[1] Optimal hand-eye calibration, Klaus H. Strobl and Gerd Hirzinger, ICRA 2006
[2] Fast and Easy Systematic and Stochastic Odometry Calibration, A. Kelly, IROS 2004
[3] Laser rangefinder calibration for a walking robot, E. Krotkov, ICRA 1991
[4] Is there something out there? Inferring space from sensorimotor dependencies, D. Philipona, J.K. O’Regan, J.-P. Nadal, 2003
[5] Perception of the structure of the physical world using unknown multimodal sensors and effectors D. Philipona, J.K. O’Regan, NIPS 2003