Introduction à la vision artificielle Deuxième partie Étalonnage géométrique de la caméra et du système Patrick Hébert Génie électrique et génie informatique.

Slides:



Advertisements
Présentations similaires
Les systèmes d’équationsLes systèmes d’équations Deux contraintes d’égalité qu’on impose simultanément à deux variables forment ce qu’on appelle « un.
Advertisements

Introduction à la notion de fonction 1. Organisation et gestion de données, fonctions 1.1. Notion de fonction ● Déterminer l'image d'un nombre par une.
Géométrie Différentielle – Cubiques d'Hermite Introduction aux courbes paramétriques et à la géométrie différentielle.
Enseigner l’arithmétique en série L Réflexions sur les contenus et les exigences.
Réalisé par R. MARRAKHA. KHAYAR Khayar-marrakh Université Hassan-II Faculté des sciences Aïn chock Casablanca Professeurs assistants - département de physique.
Volée 1316 S3 Cours No 2_3 : Le nombre en 1-2H. Les fonctions du nombre  Dénombrer, énumérer, décrire une collection. Aspect cardinal  Dater, classer,
Chapitre 1 : Cinématique Objectif cinématique : étudier le mouvement des solides sans s’occuper des causes du mouvement  parle de position, trajectoire,
Cours COMPOSANTES DES VECTEURS Dimitri Zuchowski et Marc-Élie Lapointe.
Progression2 Organisation et gestion de données CM Séquences Socle commun Compétences du palier 2 ProgrammesObjectifs d’apprentissage OG1.
NF04 - Automne - UTC1 Version 09/2006 (E.L.) Cours 5-a Problèmes scalaires instationnaires d’ordre 1 en temps Domaines d’application Notions de schémas.
Les PREF, DEC, et jauges outils En tournage, puis en fraisage En fraisage directement P roductique M écanique U sinage Tâche principale : La mise en œuvre.
Projet de programme et recommandations
Recherche des contradictions techniques
COURS DE CRISTALLOGRAPHIE
1.3 COORDONNÉES DES POINTS
Mathématiques Mise à niveau
Représentation de l'information en binaire:
Géométrie épipolaire et reconstruction 3D
Etalonnage d’une caméra (on parle aussi de calibrage)
Dimitri Zuchowski et Marc-Élie Lapointe
Plans d’expériences: Plans factoriels
Chapitre 7: L’algèbre des vecteurs
dans le triangle rectangle
Domaine: Relations R.A.:
Les Plans d’expériences: Plans Factoriels
Homographies Patrick Hébert & Denis Laurendeau (Dernière révision : septembre 2016)
Régression linéaire (STT-2400)
Coordonnées cylindriques
8/23/2018 2:32 AM Cinématique But :
Régularité et algèbre 3.1 L’élève doit pouvoir explorer des relations : a) à partir de suites non numériques à motif croissant impliquant les notions d’aire.
Détection d’objets (obstacles) avec une seule caméra
Regroupement contextuel de cimes dans les images aéroportées
Mosaïques d’images Dyanne Williams
Méthodologie scientifique
Réseaux de neurones appliqués à la reconnaissance de caractères
Deuxième partie LE DOSSIER TECHNIQUE DU MARINGOUIN.
Formation sur les bases de données relationnelles.
Ondes électromagnétique dans la matière
Des mathématiques derrière l’intelligence artificielle
Chapitre 3 : Caractéristiques de tendance centrale
« Dessine-moi un vecteur »
A l’aide du triangle pédagogique de Jean Houssaye
Transformation linéaires
La projection orthogonale à vues multiples
Programme financé par l’Union européenne
CARACTERISTIQUES D’INERTIE DES SOLIDES
Les nombres complexes Saison 1 - Épisode 2. Les nombres complexes Saison 1 - Épisode 2.
Chapitre 4: Les graphiques
Présentation 9 : Calcul de précision des estimateurs complexes
MATHÉMATIQUES FINANCIÈRES I
Sera vu dans le prochain cours.
Un Mécanisme d‘Adaptation Guidé par le Contexte en Utilisant une Représentation par Objets Manuele Kirsch Pinheiro Laboratoire LSR – IMAG, Équipe SIGMA.
Détection d’objets (obstacles) avec une seule caméra
Reconnaissance de formes: lettres/chiffres
SUJETS SPÉCIAUX EN INFORMATIQUE II
Travaux Pratiques de physique
Projection, cosinus et trigonométrie.
SUJETS SPÉCIAUX EN INFORMATIQUE II
GEOMETRIE VECTORIELLE
Points de vue et sémantiques ad hoc
Chapitre 12 : Notion de fonction
chapitre 10 : La Géométrie dans l’Espace.
LE TORSEUR STATIQUE 1) Définition 2) Notation 3) Deux cas particuliers
MATHÉMATIQUES FINANCIÈRES I
Présentation des nouveaux programmes de mathématiques de première des séries technologiques Jessica Parsis.
Fonctions.
Les séquences au 2e cycle du secondaire
Type Tableau Partie 1 : Vecteurs
spécialité mathématiques Première
Dérivation – Fonctions cosinus et sinus
Transcription de la présentation:

Introduction à la vision artificielle Deuxième partie Étalonnage géométrique de la caméra et du système Patrick Hébert Génie électrique et génie informatique Université Laval *collaboration Éric Samson (Revisitée par A. Bendada en 2011 et 2012 et D. Laurendeau en 2014-16) H2017 Design III / GEL-3014

Reconnaître les objets dans les images Structure du cours Le cours d'introduction à la vision couvre en particulier 2 étapes du processus de vision qui sont nécessaires à l'atteinte de ces objectifs : Reconnaître les objets dans les images Traitement des images (première partie) Calculer la position des objets par rapport au robot et celle du robot dans l’environnement Étalonnage géométrique de la caméra et du système (deuxième partie) H2017 Design III / GEL-3014

Calcul de position : un aperçu L'objectif est de connaître la position d'un objet dans l'espace à partir de sa position dans l'image Points Modèle de Points 3D image caméra Paramètres du modèle L'étalonnage sert à déterminer les paramètres du modèle. Il est réalisé une seule fois. Étalonnage H2017 Design III / GEL-3014

Plan de la présentation Notions de base Formation des images Modèle du sténopé (pinhole) Coordonnées homogènes et transformations Changements de repère Étalonnage d'une caméra Modèle utilisé Procédure Utilisation des paramètres Calcul de la position des objets Calcul de la position du robot H2017 Design III / GEL-3014

Le modèle du sténopé demeure valide pour les calculs. Formation des images Sténopé Caméra réelle Le modèle du sténopé demeure valide pour les calculs. H2017 Design III / GEL-3014

Modèle du sténopé Inverseur Non-Inverseur Centre de Axe optique F Centre de Axe optique Point principal projection Inverseur O Z C P = (X,Y,Z)T Point objet Plan image Y F Axe optique d Non-Inverseur O Z d C Centre de P = (X,Y,Z)T projection Point objet Y Plan image H2017 Design III / GEL-3014

Modèle Sténopé : Projection de perspective Plan image Axe optique F O Z C Centre de P' = (X ',Y',Z') T projection Y P = (X,Y,Z) T YF On a :  Y ' = Prévoir les coordonnées images d'un point 3D connu dans le repère de la caméra. Z XF De même en X : X ' = Z Z ' = F H2017 Design III / GEL-3014

Modèle Sténopé : Projection de perspective Équation du rayon projecteur étant donné un point image Il nous faut introduire les notions pour traiter les points qui sont ou seront connus dans un repère autre que celui de la caméra. o x’ x 𝑥=𝑜+𝜆( 𝑥 ′ −𝑜 H2017 Design III / GEL-3014

Plan de la présentation Notions de base Formation des images Modèle du sténopé (pinhole) Coordonnées homogènes et transformations Changements de repère Étalonnage d'une caméra Modèle utilisé Procédure Utilisation des paramètres Calcul de la position des objets Calcul de la position du robot H2017 Design III / GEL-3014

Convention de notation Dans ce qui suit, nous adoptons comme convention que les vecteurs sont exprimés comme des vecteurs colonnes 𝑣= 𝑥 𝑦 𝑧 1 Ainsi, une matrice peut être exprimée par ses vecteurs lignes avec la notation suivante: H2017 Design III / GEL-3014

Coordonnées homogènes Les coordonnées homogènes sont une représentation mathématique permettant de rendre linéaires (calcul matriciel) certaines opérations courantes en vision, robotique et infographie. Simplifie aussi l’écriture des transformations composées. Par exemple : Une translation de la forme correspond à la multiplication matricielle : H2017 Design III / GEL-3014

Coordonnées homogènes : Utilisation  On passe des coord. cartésiennes aux coord. homogènes en ajoutant un "1" comme 4e élément au vecteur. On effectue les opérations (définies par une matrice 4x4). On revient aux coordonnées cartésiennes en divisant tous les éléments du vecteur résultant par W. 𝑥 ″ 𝑦 ″ 𝑧 ″ = 𝑥 ′ 𝑤 𝑦 𝑤 𝑧 𝑤 H2017 Design III / GEL-3014

Coordonnées homogènes : Transformations d’intérêt pour le projet Projection Rotation Translation Changement d'échelle H2017 Design III / GEL-3014

Coordonnées homogènes : Transformations courantes Projection de perspective (selon l'axe Z) Exemple : Projection d'un point P = (X,Y,Z)T 𝑥 ′ 𝑦 ′ 𝑧 ′ = 𝑥𝐹 𝑧 𝑦𝐹 𝑧 𝐹 Retour aux coordonnées cartésiennes H2017 Design III / GEL-3014

Coordonnées homogènes : Transformations courantes Projection de perspective (selon l'axe Z) La troisième ligne est sans intérêt puisque Z’ = F. On peut alors représenter la projection dans une image par une matrice 3x4 H2017 Design III / GEL-3014

Coordonnées homogènes : Transformations d’intérêt Rotation H2017 Design III / GEL-3014

Coordonnées homogènes : Transformations d’intérêt Translation Changement d'échelle ("scaling") H2017 Design III / GEL-3014

Coordonnées homogènes : Combiner les transformations Soit E1, E2, …, EN, N transformations à appliquer, dans l'ordre, au point P dans le même repère de coordonnées. On procède alors comme suit : Ceci peut être réécrit : où On parle ici de pré-multiplication des matrices de rotation H2017 Design III / GEL-3014

Plan de la présentation Notions de base Fonctionnement d'une caméra Formation des images Modèle pinhole Coordonnées homogènes et transformées Changements de repère Étalonnage d'une caméra Modèle utilisé Procédure Utilisation des paramètres Calcul de la position des objets Calcul de la position du robot H2017 Design III / GEL-3014

RP : repère du préhenseur RG : repère global Mise en contexte Rc Robot RG RP RC : repère de la caméra RP : repère du préhenseur RG : repère global H2017 Design III / GEL-3014

Coordonnées homogènes : Changements de repère Transformations rigides Combinaison d'une translation et d'une rotation Préservation des distances et des angles Que devient un point P, connu dans O2, vu de O1? H2017 Design III / GEL-3014

Coordonnées homogènes : Changements de repère Que devient un point P, connu dans O2, vu de O1? H2017 Design III / GEL-3014

Coordonnées homogènes : Changements de repère 2 définitions pour une même matrice 1 - Donne la position du repère 2 par rapport au repère 1 2 - Permet de transformer les coordonnées d'un point exprimées dans le repère 2 en coord. exprimées dans le repère 1 À noter : Transformation inverse H2017 Design III / GEL-3014

Plan de la présentation Notions de base Fonctionnement d'une caméra Formation des images Modèle pinhole Coordonnées homogènes et transformées Changements de repère Étalonnage d'une caméra Modèle utilisé Procédure Utilisation des paramètres Calcul de la position des objets Calcul de la position du robot H2017 Design III / GEL-3014

Étalonnage d'une caméra On veut connaître la relation ("Mapping") entre les points de l'espace (3D, en millimètres) et leur position dans l'image (2D, en pixels). On utilise un modèle simple (mais efficace) pour décrire le processus d'acquisition d'image : point image (en pixel) Paramètres intrinsèques Paramètres extrinsèques point 3D (en mm) L'étalonnage consiste à déterminer les paramètres de ce modèle H2017 Design III / GEL-3014

Étalonnage d'une caméra : Explication du modèle K Le modèle provient de la formule suivante : (si g = 0) point image intrinsèques extrinsèques point 3D Z Y X u v O I c ZG YG XG G (u ,v ) p=(u P=(XG,YG,ZG) Centre de projection Axe optique Centre du plan image Plan image H2017 Design III / GEL-3014

Calibrage d'une caméra : Explication du modèle 1 – Changement de repère Global vers Caméra Z Y X O c ZG YG XG G (u ,v ) P=(X,Y,Z) Centre de projection Axe optique Centre du plan image E CG u v I Plan image H2017 Design III / GEL-3014

Calibrage d'une caméra : Explication du modèle 2 – Projection Pt 3D vers Plan image Z Y X O c ZG YG XG G (u ,v ) P=(X,Y,Z) Centre de projection Axe optique Centre du plan image u v I Plan image p=(X’,Y’,F) H2017 Design III / GEL-3014

Calibrage d'une caméra : Explication du modèle 2 – Projection Pt 3D vers Plan image Z Y X O c ZG YG XG G (u ,v ) P=(X,Y,Z) Centre de projection Axe optique Centre du plan image u v I Plan image p=(X’,Y’) H2017 Design III / GEL-3014

Calibrage d'une caméra : Explication du modèle 3 – Mise à l'échelle du plan image, m vers pixel Z Y X u v O I c ZG YG XG G (u ,v ) P=(X,Y,Z) Centre de projection Axe optique Centre du plan image Plan image p=(sx X’, sy Y’) H2017 Design III / GEL-3014

Calibrage d'une caméra : Explication du modèle 4 – Changement de repère OC vers OI (on suppose g = 0) Z Y X u v O I c ZG YG XG G (u ,v ) P=(X,Y,Z) Centre de projection Axe optique Centre du plan image Plan image p=(u,v) H2017 Design III / GEL-3014

Calibrage d'une caméra : Explication du modèle On multiplie les matrices T, S et Pr pour obtenir la matrice des paramètres intrinsèques : La matrice des paramètres intrinsèques possède une ligne et une colonne de "0". Ceci nous permet de réécrire le modèle de façon plus compacte : avec : Le modèle complet est alors : H2017 Design III / GEL-3014

Équation du rayon projecteur On connait (u, v) et on connait les paramètres de la caméra ; on veut en déduire l’équation de la droite projectrice. 𝑠𝑢 𝑠𝑣 𝑠 = 𝐾 3𝑥3 𝐸 𝐶𝐺 𝑋 𝐺 𝑌 𝐺 𝑍 𝐺 1 = 𝑀 3𝑥4 𝑋 𝐺 𝑌 𝐺 𝑍 𝐺 1 𝑠𝑢 𝑠𝑣 𝑠 = 𝑚 11 𝑚 12 𝑚 13 𝑚 14 𝑚 21 𝑚 22 𝑚 23 𝑚 24 𝑚 31 𝑚 32 𝑚 33 𝑚 34 𝑋 𝐺 𝑌 𝐺 𝑍 𝐺 1 = 𝑚 1 𝑡 𝑚 2 𝑡 𝑚 3 𝑡 𝑋 𝐺 𝑌 𝐺 𝑍 𝐺 1 ⇒𝑢= 𝑚 1 𝑡 • 𝑃 𝑚 3 𝑡 • 𝑃     ,    𝑣= 𝑚 2 𝑡 • 𝑃 𝑚 3 𝑡 • 𝑃 H2017 Design III / GEL-3014

La distorsion radiale… Problème relié à l'utilisation d'une lentille : LA DISTORSION La distorsion n’affecte pas la qualité de l’image mais modifie la position de chaque point. Les déviations sont plus accentuées pour les rayons lumineux qui passent sur les bords des lentilles. Distorsion en coussinet Distorsion en barillet Système sans distorsion H2017 Design III / GEL-3014

La distorsion radiale Le modèle présenté suppose une projection idéale (un sténopé). Or, il y a de la distorsion. Principalement de type radial Nulle au centre et maximale en périphérie Modèle de distorsion radiale Les paramètres du modèle de distorsion sont classés parmi les paramètres intrinsèques de la caméra. H2017 Design III / GEL-3014

Plan de la présentation Notions de base Fonctionnement d'une caméra Formation des images Modèle pinhole Coordonnées homogènes et transformées Changements de repère Étalonnage d'une caméra Modèle utilisé Procédure Utilisation des paramètres Calcul de la position des objets Calcul de la position du robot H2017 Design III / GEL-3014

Étalonnage d'une caméra : Procédure (principe général) Placer une cible d'étalonnage devant la caméra Repérer la position de chaque marqueur de la cible dans l'image On obtient une liste de coordonnées 3D (Global) accompagnées de leur projection dans l'image H2017 Design III / GEL-3014

Étalonnage d'une caméra : Procédure (idée générale) Placer une cible d'étalonnage devant la caméra Repérer la position de chaque marqueur de la cible dans l'image On obtient une liste de coordonnées 3D (global) accompagnées de leur projection dans l'image Chaque pt nous donne 2 équations de plans et on a 11 inconnues (5 intr. + 6 extr. car il y a des contraintes sur R) On construit un système d'équations linéaires qu'on peut résoudre à l'aide des techniques d'algèbre linéaire standards (moindre carrés) mij On extrait, s’il y a lieu, les paramètres explicites a, b, tx … H2017 Design III / GEL-3014

Principe général

Approche de calibrage linéaire Revenons à l’expression 𝑧 𝑝 𝑐 = 𝑚 1 𝑡 𝑚 2 𝑡 𝑚 1 3 𝑡 𝑃  4𝑥1 𝑤𝑜𝑟𝑙𝑑 qu’on peut développer comme suit pour expliciter la procédure de calcul 𝑢 𝑐 𝑣 𝑐 𝑠 = 𝑚 1 𝑡 𝑚 2 𝑡 𝑚 3 𝑡 𝑃  𝑤 où 𝑃  𝑤 = 𝑋 𝑤 𝑌 𝑤 𝑍 𝑤 1 𝑡

Chaque point de calibrage fournit une paire avec laquelle on peut 𝑢 𝑐𝑖 𝑣 𝑐𝑖 𝑠 𝑖 𝑡   𝑃  𝑤𝑖 écrire une équation 𝑢 𝑐𝑖 = 𝑚 1 𝑡 𝑃  𝑤𝑖   𝑚 3 𝑡 𝑃  𝑤𝑖          ,             𝑣 𝑐𝑖 = 𝑚 2 𝑡 𝑃  𝑤𝑖 𝑚 3 𝑡 𝑃  𝑤𝑖 qu’on peut transformer ainsi: 𝑢 𝑐𝑖 𝑚 3 𝑡 − 𝑚 1 𝑡 𝑃 𝑤𝑖 =0 𝑣 𝑐𝑖 𝑚 3 𝑡 − 𝑚 2 𝑡 𝑃 𝑤𝑖 =0 qui sont des équations de plans car, si on les développe, prennent la forme pour 𝑢 𝑐𝑖 avec une forme semblable pour 𝐴 𝑥 𝑤𝑖 +𝐵 𝑦 𝑤𝑖 +𝐶 𝑧 𝑤𝑖 +𝐷=0 𝑣 𝑐𝑖

Les inconnues à estimer sont les . 𝑚 𝑖𝑗 En retravaillant les équations pour et en fonction des on arrive à: 𝑢 𝑐𝑖 𝑣 𝑐𝑖 𝑚 𝑖𝑗 − 𝑃 𝑤𝑖 𝑡 𝑚 1 +0 𝑚 2 + 𝑢 𝑐𝑖 𝑃 𝑤𝑖 𝑡 𝑚 3 =0 0 𝑚 1 − 𝑃 𝑤𝑖 𝑡 𝑚 2 + 𝑣 𝑐𝑖 𝑃 𝑤𝑖 𝑡 𝑚 3 =0 pour chaque point de calibrage i. Si i= 1..n, on a “n” paires de correspondances “point image – point objet” et on peut donc écrire 2n équations sous forme matricielle: 𝑃 𝑤1 𝑡 0 4𝑥1 𝑡 ⋯  𝑃 𝑤𝑛 𝑡 0 4𝑥1 𝑡 0 4𝑥1 𝑡 𝑃 𝑤1 𝑡 ⋯ 0 4𝑥1 𝑡 𝑃 𝑤𝑛 𝑡 − 𝑢 𝑐1 𝑃 𝑤1 𝑡 − 𝑣 𝑐1 𝑃 𝑤1 𝑡 ⋯  − 𝑢 𝑐𝑛 𝑃 𝑤𝑛 𝑡 − 𝑣 𝑐𝑛 𝑃 𝑤𝑛 𝑡 2𝑛𝑥12 𝑚 11 𝑚 12 ⋯ 𝑚 33 𝑚 34 12𝑥1 =0

Ici, le vecteur 12 x 1: 𝑚 11 𝑚 12 ⋯ 𝑚 33 𝑚 34 12𝑥1 est la matrice écrite sous forme de vecteur. 𝑀 L’équation matricielle de la page précédente est un système d’équations linéaire homogène de forme qu’on résout avec une méthode comme la décomposition en valeurs singulières (“Singular Value Decomposition” - SVD). 𝑄 𝑚 = 0

Estimation des paramètres intrinsèques et extrinsèques à partir de la matrice caméra

Dans certaines applications (dont nous discuterons plus tard), la connaissance de la matrice est suffisante. 𝑀 Dans d’autres cas, on peut être intéressé à obtenir les paramètres intrinsèques et extrinsèques du modèle sténopé. Les étapes qui suivent montrent comment ces paramètres intrinsèques et extrinsèques peuvent être obtenus de la matrice . 𝑀

La première étape consiste à decomposer la matrice en deux sous matrices: 𝑀 𝑀 3𝑥4 = 𝐴 3𝑥3 𝑏 3𝑥1 3𝑥4 Avec ce qu’on a vu à la p. 12, on peut écrire: 𝑠 𝑎 1 𝑡 𝑎 2 𝑡 𝑎 3 𝑡 = 𝛼 𝜌 1 𝑡 −𝛼cot(𝜃) 𝜌 2 𝑡 + 𝑢 0 𝜌 3 𝑡 𝛽 sin(𝜃 𝜌 2 𝑡 + 𝑣 0 𝜌 3 𝑡 𝜌 3 𝑡 (1) facteur d’échelle

1- Calcul du facteur d’echelle s Avec la troisième ligne de l’equation (1) on a que : 𝑠 𝑎 3 𝑡 = 𝜌 3 𝑡 (2) et, en prenant le module de chaque côté de (2): ‖𝑠 𝑎 3 𝑡 ‖=‖ 𝜌 3 𝑡 ‖=1 (3) et donc : 𝒔= 𝜺 ‖ 𝒂 𝟑 ‖      𝒐ù   ( 𝜺=∓𝟏 )  (4)

2- Calcul de 𝜌 3 Avec (4) et (2) : 𝜌 3 =𝑠 𝑎 3 (5) 3- Calcul de 𝑢 0 En prenant le produit scalaire de la première ligne de (1) avec on a: 𝜌 3 𝑠 𝑎 1 𝑡 𝜌 3 =𝛼 𝜌 1 𝑡 𝜌 3 −𝛼cot(𝜃) 𝜌 2 𝑡 𝜌 3 + 𝑢 0 𝜌 3 𝑡 𝜌 3 (6) Avec (6) et (5): 𝑢 0 = 𝑠 2 𝑎 1 𝑡 𝑎 3

4- Calcul de 𝑣 0 En prenant le produit scalaire de la deuxième ligne de (1) avec on a: 𝜌 3 𝑠 𝑎 2 𝑡 𝜌 3 = 𝛽 sin(𝜃 𝜌 2 𝑡 𝜌 3 + 𝑣 0 𝜌 3 𝑡 𝜌 3 (7) Avec (7) et (5): 𝑣 0 = 𝑠 2 𝑎 2 𝑡 𝑎 3 (8)

5- Calcul de a En prenant le produit vectoriel de la première ligne de (1) avec et en utilisant une fois de plus (5) on a: 𝜌 3 𝑠 𝑎 1 × 𝜌 3 = 𝑠 2 𝑎 1 × 𝑎 3 =−𝛼 𝜌 2 −cot(𝜃) 𝜌 1 (9) Si on prend le module des vecteurs de chaque côté de l’égalité en (9) on a: 𝑠 2 ‖ 𝑎 1 × 𝑎 3 ‖=‖−𝛼 𝜌 2 −𝛼cot(𝜃) 𝜌 1 ‖= −𝛼 𝜌 2 −𝛼cot(𝜃) 𝜌 1 𝑡 −𝛼 𝜌 2 −𝛼cot(𝜃) 𝜌 1 1 2 (10) En développant (10) et en isolant a, on obtient: 𝛼= 𝑠 2 ‖ 𝑎 1 × 𝑎 3 ‖sin(𝜃 a est > 0 par définition (11)

6- Calcul de b En prenant le produit vectoriel de la deuxième ligne de (1) avec et en utilisant une fois de plus (5) on a: 𝜌 3 𝑠 2 𝑎 2 × 𝑎 3 = 𝛽 sin(𝜃 𝜌 2 + 𝑣 0 𝜌 3 × 𝜌 3 = 𝛽 sin(𝜃 𝜌 2 × 𝜌 3 + 𝑣 0 𝜌 3 × 𝜌 3 = 𝛽 sin(𝜃 𝜌 1 (12) Si on prend le module des vecteurs de chaque côté de l’égalité en (12) on a: 𝑠 2 ‖ 𝑎 2 × 𝑎 3 ‖= 𝛽 sin(𝜃 𝜌 1 𝑡 𝛽 sin(𝜃 𝜌 1 1 2 = ‖𝛽‖ sin(𝜃 (13) En isolant b dans (13) on obtient: 𝛽= 𝑠 2 ‖ 𝑎 2 × 𝑎 3 ‖sin(𝜃 b est > 0 par définition (14)

7- Calcul de q Pour calculer a et b de (11) et (14), il faut connaître q. En revenant à (1), on peut effectuer l’opération suivante: 𝑎 1 × 𝑎 3 𝑡 𝑎 2 × 𝑎 3 = −𝛼𝛽cot(𝜃 𝑠 4 sin(𝜃 (15) On peut aussi prendre le produit du module des deux vecteurs à gauche de (15): ‖ 𝑎 1 × 𝑎 3 ‖  ‖ 𝑎 2 × 𝑎 3 ‖= 𝛼𝛽 𝑠 4 sin(𝜃 2 (16)

Le rapport de (15) et (16) donne: 𝑎 1 × 𝑎 3 𝑡 𝑎 2 × 𝑎 3 ‖ 𝑎 1 × 𝑎 3 ‖  ‖ 𝑎 2 × 𝑎 3 ‖ =−cos(𝜃)   (17) On a donc pour q : 𝜃 = cos −1 − 𝑎 1 × 𝑎 3 𝑡 𝑎 2 × 𝑎 3 ‖ 𝑎 1 × 𝑎 3 ‖‖ 𝑎 2 × 𝑎 3 ‖ (18) Rappelons que q est très près de 90° pour les caméras numériques modernes.

8- Calcul de 𝜌 1 Si on revient à (12): 𝛽 sin(𝜃 𝜌 1 = 𝑠 2 𝑎 2 × 𝑎 3 (12) On peut isoler 𝜌 1 𝜌 1 = 𝑠 2 sin(𝜃 𝛽 𝑎 2 × 𝑎 3 (19) 9- Calcul de 𝜌 2 𝜌 2 = 𝜌 3 × 𝜌 1 (20) Par une propriété de la matrice de rotation.

À cause de (4), il y a deux solutions possibles pour la matrice de rotation dépendant du signe de s. L’ambiguïté peut être levée en observant la géométrie du problème de formation d’image pendant la phase de calibrage en vérifiant la plausabilité de la solution par inspection.

10- Calcul des paramètres extrinsèques de translation En revenant à l’équation de projection de perspective: 𝑧 𝑝 𝑐 = 𝐾 0 𝑅 𝑡 − 𝑅 𝑡 𝑡 𝑃   𝑤𝑜𝑟𝑙𝑑 qu’on peut écrire plus simplement: 𝑧 𝑝 𝑐 = 𝐾 3𝑥3 0 3𝑥1       𝑡 𝑥   𝜌 3𝑥3   𝑡 𝑦       𝑡 𝑧 0 0 0 1 𝑃 𝑤 =𝑠 𝐴 𝑏 𝑃 𝑤 On a que: 𝐾 3𝑥3 𝑡 𝑥 𝑡 𝑦 𝑡 𝑧 =𝑠 𝑏 et donc: 𝑡 𝑥 𝑡 𝑦 𝑡 𝑧 =𝑠 𝐾 −1 𝑏 (21)

En résumé Intrinsèques Extrinsèques 𝒔= 𝜺 ‖ 𝒂 𝟑 ‖      𝒐ù   ( 𝜺=∓𝟏 )  𝜌 3 =𝑠 𝑎 3 𝑢 0 = 𝑠 2 𝑎 1 𝑡 𝑎 3 𝜌 1 = 𝑠 2 sin(𝜃 𝛽 𝑎 2 × 𝑎 3 𝑣 0 = 𝑠 2 𝑎 2 𝑡 𝑎 3 𝜌 2 = 𝜌 3 × 𝜌 1 𝜃 = cos −1 − 𝑎 1 × 𝑎 3 𝑡 𝑎 2 × 𝑎 3 ‖ 𝑎 1 × 𝑎 3 ‖‖ 𝑎 2 × 𝑎 3 ‖ 𝑡 𝑥 𝑡 𝑦 𝑡 𝑧 =𝑠 𝐾 −1 𝑏 𝛼= 𝑠 2 ‖ 𝑎 1 × 𝑎 3 ‖sin(𝜃 𝛽= 𝑠 2 ‖ 𝑎 2 × 𝑎 3 ‖sin(𝜃

Étalonnage d'une caméra : Notes sur les techniques d'étalonnage (1/2) Il existe plusieurs techniques d'étalonnage Zhang, Tsai, Heikkilä, Faugeras, etc. Le type de cible et le modèle de la caméra utilisé changent Le système d'équations à résoudre diffère en fonction de ces variantes L'idée est toujours la même : trouver les paramètres permettant de faire le "mapping" entre les points de l'espace et leurs positions dans l'image. H2017 Design III / GEL-3014

Étalonnage d'une caméra : Notes sur les techniques d'étalonnage (2/2) Prise en compte de la distorsion des lentilles La plupart des techniques incluent des paramètres de distorsion dans leur modèle. L'ajout de ces paramètres rend le système à résoudre non-linéaire. On procède alors en 2 étapes : En supposant la distorsion nulle, on résout le système linéaire. Partant de cette estimation initiale, on détermine les paramètres de distorsion à l'aide de techniques d'optimisation non-linéaires. H2017 Design III / GEL-3014

Méthodes d’étalonnage géométrique avec code disponible sur internet Zhengyou Zhang (Microsoft research) http://research.microsoft.com/~zhang/ Janne Heikkila (Oulu Univ.) http://www.ee.oulu.fi/~jth/calibr/ R. Tsai http://www-cgi.cs.cmu.edu/afs/cs.cmu.edu/user/rgw/www/TsaiCode.html Lien potentiellement intéressant (voir premier lien sur OpenCV): http://www.vision.caltech.edu/bouguetj/calib_doc/htmls/links.html H2017 Design III / GEL-3014

Étalonnage de votre caméra : Méthode de Zhang Simple, robuste et précise Utilise une cible plane Nécessite au moins trois prises de vue (non coplanaires) Prend en compte la distorsion des lentilles Ou celle disponible dans OpenCV Voir diapositives sur OpenCV H2017 Design III / GEL-3014