Comment appliquer le dewarping sur les Lepton® 3.1R et Lepton UW
1 Introduction
Les caméras infrarouges (IR) Lepton 3.1R et Lepton UW utilisent respectivement un champ de vision large (WFOV) de 95° et un objectif WFOV de 160°. La distorsion du cylindre est créée par l’objectif WFOV, ce qui entraîne une augmentation légèrement supérieure du centre de l’image par rapport aux bords. Cela fait apparaître des lignes droites autour du bord de l’image. La distorsion du cylindre n’est pas souhaitable pour de nombreuses applications d’imagerie. Cette note d’application décrit l’application d’une correction de distorsion (dewarping) sur les sorties Lepton 3.1R et Lepton UW à l’aide des fonctions intégrées OpenCV.
2 Distorsion d’image
2.1 Présentation
Un objectif WFOV permet à l'imageur de capturer plus dans une scène, mais provoque une distorsion, ce qui donne l'impression que les objets sont déformés. En général, deux types de distorsion peuvent exister dans une caméra : radiale et tangentielle. La distorsion radiale se produit lorsque les lignes droites se courbent vers l’intérieur ou l’extérieur du centre, tandis que la distorsion tangentielle se produit lorsque l’objectif est incliné par rapport au plan de l’image et que l’image semble inclinée. Pour corriger la distorsion de l’objectif, calibrez la caméra pour calculer les matrices de transformation, qui corrigent la cartographie de la caméra dans le plan d’image.

FIGURE 1. DISTORSION RADIALE (GAUCHE) ET DISTORSION TANGENTIELLE (DROITE)
La procédure d’étalonnage varie légèrement mathématiquement entre Lepton 3.1R et Lepton UW. Ils ont des objectifs différents, de sorte qu’ils n’imagerient pas le même type de distorsion géométrique. Bien que les deux semblent avoir une distorsion radiale, les images Lepton 3.1R se composent de bordures linéaires, tandis que Lepton UW a des bordures circulaires, communément appelées effet fisheye. La cartographie du contenu de la scène en lignes droites pour le Lepton UW est plus complexe en raison des frontières extrêmement déformées. Différents modèles de distorsion correspondant au type d’objectif sont intégrés pour l’étalonnage afin de compenser cette distinction : un modèle de distorsion rectiligne grand angle pour Lepton 3.1R et un modèle de distorsion fisheye pour Lepton UW.
2.2 Application de la transformation Dewarp
Pour corriger toute distorsion d’objectif avec la méthode OpenCV, les caméras sont étalonnées en capturant des modèles de test pour modéliser la distorsion. Il est difficile de capturer les modèles d’étalonnage à l’aide d’une caméra IR. Il est donc recommandé d’utiliser les matrices par défaut caractérisant la distorsion de la caméra ci-dessous. Un bref guide sur la façon de capturer le modèle d’étalonnage est décrit à la section 2.3.

FIGURE 2. MATRICES DE LA CAMÉRA
Ces matrices, ainsi que l’image d’entrée, sont transmises en tant qu’image d’arguments dans la fonction intégrée OpenCV suivante pour corriger le mappage du plan caméra/image. Un exemple de code dans Python à des fins de démonstration est fourni à la section 2.4.
Lepton 3.1R :
Lepton UW :

Remarquez qu’il existe une matrice de caméra et une nouvelle matrice de caméra. Les deux représentent les paramètres intrinsèques de la caméra ; la seule différence est que la matrice de la caméra définit les paramètres intrinsèques d’origine de la caméra, tandis que la nouvelle matrice de la caméra évolue et déplace la matrice de la caméra d’origine. Sans spécifier la nouvelle matrice de caméra dans la fonction sans distorsion, elle utilise la matrice de caméra par défaut, qui produit une image rectiligne avec le même IFOV que son entrée. Le compromis pour obtenir des lignes droites est que certains pixels dans les coins de l’image d’entrée sont perdus. L’application de la nouvelle matrice de caméra de version tous pixels présentée ci-dessus permet de conserver tous les pixels de l’entrée, mais elle introduit des pixels noirs autour des bordures. Les figures 3 et 4 montrent l’exemple d’entrée et les sorties possibles.
![]()
FIGURE 3. LEPTON 3.1R - ORIGINAL (GAUCHE), SORTIE RECTILIGNE (CENTRE) ET SORTIE VERSION TOUS PIXELS (DROITE)
![]()
FIGURE 4. LEPTON UW - ORIGINAL (GAUCHE), SORTIE RECTILIGNE (CENTRE) ET SORTIE VERSION TOUS PIXELS (DROITE)
2.3 Étalonnage de la caméra
Étant donné que le site Web OpenCV fournit une explication détaillée et un exemple de code d’application du processus d’étalonnage, cette note d’application ne couvre pas les détails. La documentation est disponible à l’adresse https://docs.opencv.org/3.4/d4/d94/tutorial_camera_calibration.html.
Comme indiqué dans la section 2.2, effectuer des captures de modèle d’étalonnage en IR n’est pas simple. Veuillez suivre le guide ci-dessous pour effectuer des captures efficaces pour l’étalonnage de la caméra IR.
1. Configuration
- Utilisez un modèle d’étalonnage de grille circulaire, car il n’est pas idéal d’afficher un damier thermique. Les grilles circulaires asymétriques ou symétriques fonctionnent.
- Une grille circulaire de 8x8 est recommandée.
- Une impression papier du motif d’étalonnage collé sur du carton et brièvement éclairé par des lumières à haute énergie, sinon le soleil peut créer un contraste thermique.
2. Prise de vue
- Disposez d’au moins une grille circulaire 6x6 pour Lepton 3.1R et une grille circulaire 4x4 pour Lepton UW visible dans la capture.
- Certains cercles peuvent être flous près des bords de l’image en raison du WFOV.
- Chaque capture de la grille circulaire ne doit occuper que des parties du champ de vision.
- La collection de captures doit couvrir la plupart des zones du champ de vision, c’est-à-dire une ou deux captures de la grille circulaire près du centre et huit à dix captures autour de la bordure du champ de vision.
- Dix à douze captures au total fourniront un étalonnage optimisé, et les captures supplémentaires ne sont pas avantageuses.

FIGURE 5. EXEMPLE DE MODÈLE D’ÉTALONNAGE LEPTON 3.1R AU CENTRE (GAUCHE), EN BAS À DROITE (CENTRE) ET EN BAS AU CENTRE (DROITE)

FIGURE 6. EXEMPLE DE CAPTURE DU MODÈLE D’ÉTALONNAGE LEPTON UW AU CENTRE (GAUCHE), EN BAS À DROITE (CENTRE) ET EN BAS AU CENTRE (DROITE)
2.4 Assistance
L’exemple de script Lepton_Dewarp_example.py1 peut être téléchargé ici.
Pour obtenir une assistance technique, consultez le Centre d’assistance FLIR à l’adresse http://support.flir.com.
