Camera Calibration
La calibration de caméra, ou étalonnage de caméra, est le processus qui consiste à estimer les paramètres caractéristiques d’une caméra et de son objectif. Ces paramètres, dits intrinsèques et extrinsèques, permettent de modéliser mathématiquement la caméra afin de déterminer la relation géométrique précise entre les points d’une scène tridimensionnelle (3D) et leur projection bidimensionnelle (2D) sur le plan image. L’objectif principal est de corriger les imperfections optiques et de permettre des mesures précises ou une interprétation fiable de la scène observée.
Les concepts fondamentaux de la calibration de caméra reposent en grande partie sur le modèle de caméra sténopé, ou modèle à trou d’épingle (pinhole camera model). Ce modèle idéal décrit la caméra comme une simple boîte percée d’un trou minuscule (le sténopé) par lequel les rayons lumineux issus de la scène passent avant de former une image inversée sur le plan image situé à l’opposé. Bien que simplifié, ce modèle constitue une approximation efficace pour la plupart des caméras conventionnelles et sert de base aux calculs de projection perspective.
Les paramètres intrinsèques décrivent les caractéristiques internes et optiques de l’ensemble caméra-objectif. Parmi les plus importants figurent la distance focale (exprimée en pixels, fx et fy, potentiellement différentes pour les directions x et y du capteur si les pixels ne sont pas carrés) et les coordonnées du point principal (cx, cy). Le point principal est la projection orthogonale du centre optique de l’objectif sur le plan image. Ces paramètres définissent la manière dont la caméra forme une image, indépendamment de sa position ou de son orientation dans l’espace.
Outre la distance focale et le point principal, les paramètres intrinsèques incluent également les coefficients de distorsion. Les lentilles réelles, contrairement au sténopé idéal, introduisent des aberrations géométriques qui déforment l’image. Les distorsions les plus courantes sont la distorsion radiale, qui provoque une déformation des lignes droites en courbes (en barillet ou en coussinet) d’autant plus marquée qu’on s’éloigne du centre de l’image, et la distorsion tangentielle, due à un mauvais alignement des lentilles ou à un parallélisme imparfait entre le plan de la lentille et le plan image. Ces distorsions sont modélisées par une série de coefficients (par exemple, k1, k2, k3 pour la distorsion radiale et p1, p2 pour la distorsion tangentielle).
Les paramètres extrinsèques, quant à eux, décrivent la position et l’orientation de la caméra dans un système de coordonnées mondial défini par l’utilisateur. Ils se composent d’une matrice de rotation (R) et d’un vecteur de translation (T). La matrice de rotation (3×3) définit l’orientation de la caméra (ses trois axes) par rapport aux axes du système de coordonnées mondial, tandis que le vecteur de translation (3×1) spécifie la position du centre optique de la caméra dans ce même système mondial. Ces paramètres lient donc la caméra à son environnement.
La transformation d’un point 3D du monde réel vers sa projection 2D sur l’image implique une série de transformations entre différents systèmes de coordonnées. On distingue typiquement le système de coordonnées mondial (référence de la scène), le système de coordonnées caméra (centré sur la caméra, avec l’axe Z pointant souvent vers la scène), les coordonnées image normalisées (plan image à une distance focale unité) et enfin le système de coordonnées image (en pixels, sur le capteur). L’équation de projection complète combine la matrice des paramètres intrinsèques (K), la matrice de rotation (R) et le vecteur de translation (T) pour former la matrice de projection P = K[R|T], qui mappe directement les coordonnées homogènes d’un point 3D mondial vers ses coordonnées homogènes 2D sur l’image.
L’importance de la calibration de caméra est capitale dans de nombreux domaines, en particulier en vision par ordinateur. Elle est une étape préliminaire indispensable pour la quasi-totalité des tâches qui requièrent une interprétation géométrique de l’information visuelle. Sans une calibration précise, les mesures effectuées à partir des images seraient erronées, et les algorithmes d’analyse d’image pourraient produire des résultats incohérents ou incorrects.
La pertinence de la calibration réside notamment dans sa capacité à permettre des mesures métriques exactes. En connaissant les paramètres de la caméra, il devient possible d’estimer la taille réelle d’objets, leur distance, ou de reconstruire leur forme tridimensionnelle avec une grande fidélité. De plus, la correction des distorsions optiques, rendue possible par l’estimation des coefficients de distorsion, améliore non seulement la qualité visuelle des images (par exemple, en redressant les lignes courbes) mais aussi la précision des algorithmes qui s’appuient sur la détection de formes géométriques ou de points d’intérêt.
L’impact de la calibration est considérable car elle constitue la clé pour passer d’une simple acquisition d’images à une véritable compréhension de la structure tridimensionnelle de la scène. Elle permet aux machines de « voir » le monde d’une manière géométriquement cohérente. Dans des applications critiques comme la navigation de robots ou les véhicules autonomes, une calibration imprécise ou erronée peut avoir des conséquences graves, menant à des décisions incorrectes et potentiellement dangereuses.
Les applications pratiques de la calibration de caméra sont vastes et variées. En reconstruction 3D, elle est fondamentale pour des techniques comme la photogrammétrie ou la Structure from Motion (SfM), qui permettent de créer des modèles numériques tridimensionnels d’objets, de bâtiments ou de paysages à partir de multiples photographies. Par exemple, la cartographie 3D de villes ou la numérisation d’artefacts culturels reposent sur une calibration précise des caméras utilisées. La réalité augmentée (RA) est une autre application majeure, où la calibration permet de superposer de manière réaliste et stable des objets virtuels sur le flux vidéo du monde réel, comme dans les filtres interactifs sur les réseaux sociaux ou les applications d’aide à la décoration intérieure.
Dans le domaine de la robotique, la calibration de caméra est essentielle pour la perception de l’environnement, la navigation autonome, et la manipulation d’objets. Les bras robotiques industriels utilisent des caméras calibrées pour localiser et saisir des pièces avec précision, tandis que les robots mobiles s’en servent pour cartographier leur environnement et éviter les obstacles. Les véhicules autonomes dépendent fortement de caméras calibrées pour la détection des voies de circulation, l’identification des panneaux de signalisation, l’estimation de la distance des autres véhicules et des piétons, et la compréhension globale de la scène de conduite.
L’inspection industrielle bénéficie également grandement de la calibration pour le contrôle qualité automatisé, la détection de défauts sur les chaînes de production, et la mesure dimensionnelle précise de composants manufacturés. Par exemple, l’inspection de la conformité des circuits imprimés ou la mesure de l’alignement de pièces mécaniques sont souvent réalisées à l’aide de systèmes de vision calibrés. En imagerie médicale, la calibration est utilisée pour la reconstruction 3D à partir de diverses modalités d’imagerie (comme les scanners CT ou IRM lorsqu’ils sont combinés avec des systèmes de suivi optique), ainsi que pour le guidage chirurgical assisté par ordinateur, où la position des instruments chirurgicaux est suivie par rapport à l’anatomie du patient.
Il existe plusieurs nuances et variations du concept de calibration de caméra. Une distinction courante est faite entre la calibration monoculaire, qui concerne l’estimation des paramètres d’une seule caméra, et la calibration stéréoscopique. Cette dernière implique la calibration simultanée de deux caméras (ou plus) utilisées en tandem. En plus des paramètres intrinsèques de chaque caméra, la calibration stéréo détermine la relation géométrique rigide entre les caméras, c’est-à-dire la rotation et la translation relatives (la « baseline » étant la distance entre les centres optiques). Un système stéréo calibré permet une triangulation directe pour estimer la profondeur des points de la scène.
Une autre distinction concerne la manière dont la calibration est effectuée. La calibration hors ligne (offline) est la méthode la plus traditionnelle : elle est réalisée avant l’utilisation de la caméra pour sa tâche principale, généralement en utilisant un objet de calibration connu, comme un damier ou une grille de cercles, dont les dimensions et la géométrie sont précisément mesurées. Plusieurs images de cet objet, prises sous différentes orientations, sont utilisées pour résoudre les paramètres. À l’opposé, la calibration en ligne ou auto-calibration (online/self-calibration) vise à estimer les paramètres de la caméra pendant son fonctionnement normal, sans mire spécifique, en se basant sur les caractéristiques naturelles de la scène et les correspondances de points entre plusieurs vues. Cette approche est plus flexible mais souvent plus complexe et potentiellement moins précise.
Les modèles de distorsion eux-mêmes peuvent varier en complexité. Si les modèles polynomiaux pour les distorsions radiales et tangentielles sont les plus courants, des modèles plus sophistiqués peuvent être nécessaires pour des objectifs très grand angle (comme les objectifs fish-eye), qui introduisent des distorsions extrêmes non capturées par les modèles simples. De même, la calibration de types de caméras spécifiques, telles que les caméras omnidirectionnelles (capturant une vue à 360 degrés), les caméras thermiques, ou les caméras à temps de vol (Time-of-Flight, ToF), peut nécessiter des modèles mathématiques et des procédures de calibration adaptés à leur principe de fonctionnement particulier.
Plusieurs concepts sont étroitement liés à la calibration de caméra. La rectification d’image est un processus qui transforme une image pour annuler les effets de la distorsion de l’objectif et, dans le cas de la vision stéréo, pour aligner les lignes épipolaires des deux images afin qu’elles deviennent horizontales et parallèles. Cela simplifie considérablement la recherche de correspondances entre les images. La géométrie épipolaire, qui décrit les contraintes géométriques entre deux vues d’une même scène, est fondamentale pour la calibration stéréo et la reconstruction 3D. Une homographie est une transformation projective entre deux plans, souvent utilisée dans les algorithmes de calibration qui emploient des mires de calibration planes.
Le Bundle Adjustment (ajustement de faisceaux) est une technique d’optimisation globale souvent utilisée comme étape finale pour affiner simultanément les paramètres intrinsèques et extrinsèques de la caméra ainsi que les coordonnées 3D des points de la scène. Il minimise l’erreur de reprojection globale. La Structure from Motion (SfM) est un ensemble de techniques permettant de reconstruire la structure 3D d’une scène et d’estimer le mouvement de la caméra à partir d’une séquence d’images non ordonnées; elle intègre souvent des formes d’auto-calibration ou s’appuie sur des caméras pré-calibrées. De même, le SLAM (Simultaneous Localization and Mapping) est un processus par lequel un robot ou un agent construit une carte de son environnement tout en estimant simultanément sa propre position au sein de cette carte. Une calibration précise de la caméra est cruciale pour la robustesse et la précision des systèmes SLAM.
En termes de synonymie partielle, le terme « resectionnement de caméra » (camera resectioning) fait référence au problème d’estimer uniquement la pose (paramètres extrinsèques) d’une caméra dont les paramètres intrinsèques sont déjà connus. Il est donc une sous-partie du problème global de calibration. Un antonyme conceptuel serait l’utilisation d’une « caméra non calibrée », où les algorithmes de vision tentent d’opérer sans connaissance préalable des paramètres de la caméra. Bien que certains algorithmes puissent fonctionner dans de telles conditions (par exemple, pour la détection d’objets basée sur l’apparence), ils sont généralement plus limités dans leurs capacités géométriques ou doivent faire des hypothèses simplificatrices.
Un bref aperçu historique révèle que les racines de la calibration de caméra se trouvent dans la photogrammétrie, une discipline née au milieu du 19ème siècle pour réaliser des mesures et des cartes à partir de photographies. Les principes mathématiques ont été développés pour la topographie et la cartographie. L’essor de la vision par ordinateur dans les années 1970 et 1980 a conduit à un regain d’intérêt et à des développements significatifs des modèles de caméra et des méthodes de calibration, adaptés aux besoins de l’informatique. Des travaux pionniers, comme ceux de Roger Tsai dans les années 1980, ont proposé des solutions robustes pour la calibration 3D. Plus tard, la méthode de Zhengyou Zhang, utilisant une simple mire plane et publiée au tournant du millénaire, a grandement simplifié le processus et l’a rendu accessible à un plus large public. Depuis, l’évolution s’est poursuivie vers des méthodes encore plus flexibles, robustes, incluant l’auto-calibration, et l’adaptation à une gamme croissante de capteurs d’imagerie. La large disponibilité de bibliothèques logicielles open-source, comme OpenCV, a également joué un rôle majeur dans la démocratisation de la calibration de caméra.
Les avantages de la calibration de caméra sont nombreux et significatifs. Elle permet d’obtenir des mesures métriques précises à partir d’images, ce qui est essentiel pour des applications comme le contrôle dimensionnel ou la cartographie. Elle améliore considérablement la performance et la fiabilité des algorithmes de vision par ordinateur en fournissant un modèle géométrique correct de la formation de l’image. Elle est indispensable pour la reconstruction 3D de scènes et d’objets, ainsi que pour la création d’expériences de réalité augmentée immersives et crédibles. Enfin, la correction des défauts optiques des lentilles améliore la qualité intrinsèque des données visuelles exploitées.
Cependant, la calibration de caméra présente aussi des inconvénients, des défis et des limitations. Le processus de calibration, surtout lorsqu’il est effectué manuellement avec une mire, peut être fastidieux, chronophage et nécessiter un environnement contrôlé et un équipement spécifique (la mire de calibration elle-même doit être fabriquée avec précision). La précision de la calibration obtenue est fortement dépendante de plusieurs facteurs : la qualité de fabrication de la mire, la précision de la détection des points de référence sur la mire, l’uniformité de l’éclairage, le nombre et la diversité des poses de la mire par rapport à la caméra, et la qualité de l’algorithme d’optimisation utilisé. De plus, les paramètres de la caméra, en particulier les intrinsèques, peuvent varier avec le temps en raison de facteurs environnementaux (température, humidité) ou mécaniques (chocs, vibrations, changements de mise au point). Cela peut nécessiter des recalibrations périodiques pour maintenir un haut niveau de précision. L’estimation de modèles de distorsion très complexes peut également s’avérer numériquement instable ou nécessiter un très grand nombre de données. L’auto-calibration, bien que plus flexible, est mathématiquement plus difficile, peut souffrir d’ambiguïtés, et est souvent moins stable ou moins précise que la calibration classique utilisant une mire.
Enfin, il existe des limitations inhérentes au concept. Le modèle sténopé, même augmenté de coefficients de distorsion, reste une approximation du processus physique complexe de formation d’une image par un système optique réel. Il peut ne pas modéliser parfaitement toutes les subtilités optiques, en particulier pour des systèmes d’imagerie très spécialisés. La calibration est généralement spécifique à une configuration donnée de la caméra, incluant l’objectif monté et le réglage de la mise au point (focus). Si la mise au point est modifiée de manière significative après la calibration, les paramètres intrinsèques, notamment la distance focale effective et le point principal, peuvent changer, invalidant la calibration précédente. Certains systèmes optiques, comme ceux avec une mise au point variable ou des zooms, posent des défis supplémentaires car leurs paramètres intrinsèques changent dynamiquement.