Open Source Robotics

Una raccolta curata di progetti, strumenti e software di robotica open source di alta qualità per la comunità della robotica.

Extrinsic Calibration

  • Detto anche: extrinsics, extrinsic parameters
  • Categoria: Foundations & spatial maths › Frames & transforms
  • Tag: calibration, sensors, coordinate-frames, hand-eye, sensor-fusion

Determinare la posa di corpo rigido di un sensore rispetto al robot o a un altro sensore, così che le misure possano essere collocate in un sistema di coordinate comune.

Definizione

Calibrazione estrinseca (extrinsic calibration) stima la posizione e l'orientamento, una trasformazione rigida in SE(3), di un sensore rispetto a un riferimento: la base del robot, l'end effector, il corpo di un veicolo o un altro sensore. È distinta dalla calibrazione intrinseca, che modella ciò che avviene all'interno di un sensore, come la lunghezza focale o la distorsione dell'obiettivo di una telecamera. Senza parametri estrinseci accurati, un punto rilevato da una telecamera non può essere collocato correttamente nel sistema di riferimento del robot e i dati di più sensori non possono essere fusi.

I metodi dipendono dai sensori coinvolti. Una telecamera sulla mano (eye-in-hand camera) descrive dove è montata una telecamera; la calibrazione estrinseca è la procedura che misura esattamente dove quel montaggio la colloca. Per una telecamera su un braccio robotico, la calibrazione mano-occhio (hand-eye calibration) porta il braccio in molte pose mentre la telecamera inquadra un target fisso, e risolve l'equazione AX = XB, dove A e B sono movimenti relativi della pinza e della telecamera e X è la trasformazione incognita; Tsai e Lenz (1989) ne hanno dato una soluzione molto usata. La stessa equazione con termini diversi gestisce una telecamera fissa che inquadra un target tenuto dalla pinza. La calibrazione telecamera-LiDAR di solito associa caratteristiche di un target, come i piani o i bordi di una scacchiera, viste da entrambi i sensori. La calibrazione telecamera-IMU, come nel toolbox Kalibr, stima la trasformazione e lo sfasamento temporale tra i sensori a partire da una traiettoria continua. Molti sistemi poi affinano i parametri estrinseci online all'interno di uno stimatore di stato.

Piccoli errori estrinseci hanno grandi effetti. Un errore angolare di mezzo grado sposta un punto a un metro di distanza di quasi 9 mm, abbastanza per mancare una presa o disallineare una mappa fusa. I valori del CAD danno un punto di partenza ma raramente corrispondono al robot costruito, e i supporti si spostano con urti, temperatura e manutenzione. La buona pratica è raccogliere dati di calibrazione su un'ampia gamma di pose, verificare il risultato misurando l'errore di riproiezione o di allineamento su dati tenuti da parte, e ricontrollare dopo qualsiasi modifica meccanica.

Perché è importante

Ogni robot che combina la percezione con il movimento o con altri sensori dipende dalla calibrazione estrinseca. Decide se un rilevamento della telecamera cade dove va la pinza, se i dati del LiDAR e della telecamera si allineano e se una stima di stato fusa è coerente.

Applicazioni principali

  • Calibrazione mano-occhio per telecamere montate sul polso e telecamere fisse
  • Allineamento telecamera-LiDAR su veicoli e robot mobili
  • Calibrazione telecamera-IMU per l'odometria visivo-inerziale
  • Sistemi multi-telecamera per motion capture e ricostruzione 3D
  • Registrazione di telecamere fisse rispetto a una cella di lavoro robotica

In pratica

Un laboratorio monta una telecamera di profondità sul polso di un robot per la presa. Il team stampa una scacchiera ChArUco, la fissa sul tavolo e muove il braccio attraverso circa 25 pose che coprono rotazioni diverse, registrando per ciascuna la posa dell'end effector dalla cinematica diretta e la posa della scacchiera dalla telecamera. Un risolutore mano-occhio restituisce la trasformazione dalla telecamera alla flangia. Per validarla, il team fonde immagini di profondità da più pose del polso in un'unica nuvola di punti; con una buona calibrazione il tavolo e gli oggetti si allineano, mentre con una cattiva le superfici appaiono sdoppiate. Il team tocca anche gli angoli della scacchiera con la punta della pinza e confronta quelle posizioni con la stima della telecamera, accettando la calibrazione quando l'errore è di pochi millimetri.

Idee sbagliate comuni

  • Le quote del CAD sono sufficienti — tolleranze di fabbricazione ed errori di montaggio fanno sì che i parametri estrinseci misurati differiscano dai valori di progetto
  • La calibrazione si fa una volta sola — i supporti si spostano nel tempo, quindi i parametri estrinseci vanno ricontrollati dopo urti o modifiche hardware
  • Calibrazione estrinseca e intrinseca sono lo stesso passaggio — gli intrinseci modellano il sensore stesso, gli estrinseci la sua posa; errori nell'uno corrompono l'altro se vengono risolti insieme
  • Conta solo la trasformazione spaziale — per i sensori in movimento, uno sfasamento temporale tra i flussi di dati causa errori simili a quelli di una posa sbagliata

Chi dovrebbe saperlo

  • Ingegneri di percezione e integrazione robotica
  • Ingegneri dei sensori per veicoli autonomi
  • Sviluppatori di stima dello stato e SLAM
  • Ricercatori che costruiscono banchi di prova per la manipolazione

Tecnologie correlate

  • Kalibr
  • Calibrazione mano-occhio di OpenCV (OpenCV Hand-Eye Calibration)
  • Target ChArUco e AprilTag (ChArUco and AprilTag Boards)
  • MoveIt Calibration
  • ROS tf2

Termini correlati

  • Eye-in-Hand Camera
  • Camera Intrinsics
  • Transform
  • Coordinate Frame
  • Sensor Fusion
  • Forward Kinematics

Progetti correlati

  • FAST-LIVO2: Fast, direct LiDAR-inertial-visual odometry from HKU-MARS, published in IEEE T-RO
  • GTSAM: Factor-graph optimization library powering many modern SLAM backends
  • AprilTag: The standard visual fiducial marker system for robot localization and pose estimation
  • Gazebo: Industry-standard open-source robotics simulator with multi-physics and ROS integration
  • image_pipeline: The standard ROS camera stack: calibration, rectification, stereo and depth

Video

  • Camera Intrinsics and Extrinsics - 5 Minutes with Cyrill: Cyrill Stachniss
  • OpenCV Python Camera Calibration (Intrinsic, Extrinsic, Distortion): Kevin Wood | Robotics & AI

Questo sito richiede JavaScript. Attiva JavaScript per esplorare i nostri progetti di robotica open source.