Home VPOA: Perception 3D
Post
Cancel

VPOA: Perception 3D

Lien de la note Hackmd

Introduction

Magellium

  • Observation de la terre
    • Analyse et traitement de donnees satelittes
  • Geo-information
  • Imagerie et Applications
    • Essayer d’extraire de la donnee image
  • Infrastructure logicielle

L’entreprise:

  • 248 employes
  • 2 sites

Offres et marche

Imagerie & applications

Activites

  • Image & video
  • Lidar & 3D
  • Robotique

Offre

  • Transfert de technologies
  • Conception, systeme de perception
  • Dev logiciel

Positionnement

Technos cles

  • Capteurs 2D & 3D
  • Detection et reconnaissance d’objets
  • Localisation et navifation
  • Technos informatiques avancees

Synthese

Metier et projets

Responsable technique

  • Definition des architectures et algos
  • Encadrement technique des equipes
  • Echange clients et/ou partenaires

Thematiques

  • Computer vision
  • Robotique d’exploration planetaire
  • Robotique orbitale

Autres

  • Labo vision
  • Deep learning

Projet H-20

Autonomous Decision Making

Assemblage de structures en orbite comme des telescopes

Suite de ADE

T0: en mois

Beaucoup implique au CNES

Robot Simple Fetch Rover (SFR)

MMT2 pour Thales

Computer vision

Comment les eleves decrivent le computer vision ?

“Un truc de GISTRE”

Introduction

Qu’est-ce que la perception ?

Une representation de la realite

On va estimer des choses

  • proprietes geometriques
  • proprietes semantiques
    • Ce qui concerne le sens/la signification

Que peut-on obtenir ?

  • Reconstruction 3D
  • Interpretation semantique
  • Interpretation d’image

De l’objet a l’observation

De l’observation a l’objet

Ce qu’on veut faire en computer vision

Systemes d’acquisition 3D

Tomographie numerique

Rayons X

  • Principe de l’IRM
  • Superposition de coupes 2D successives

Telemetrie par temps de vol

Envoi d’une impulsion pulsee

  • Lumineuse classique: camera ToF

Lidar ToF

Comment on voit derriere l’objet ?

On ne peut pas voir derriere les objets On devine en utilisant des donnees autour et on interpole

Telemetrie par decalage de phase

Envoi d’une impulsion modulee

  • Lumineuse classique: Camera SWIR a modulation de phase
  • Lumineurse Laser: LIDAR
  • Ultrasonore: SONAR
  • Ondes Radio: RADAR

Mesure du decalage de la phase

C’est comme ca qu’on se fait flasher sur l’autoroute

Triangulation

Principe utilise par les geometres, le GPS…

Triangulation active

Pointeur laser

  • Un rayon laser est envoye vers l’objet a mesurer
  • La lumiere diffusee est observee par une camera
  • On peut en deduire la profondeur du point

Laser ligne, profilometrie

  • Une image saisie donne une ligne de points
  • Un unique balayage suffit pour assurer la couverture de la surface

Lumiere structuree

  • Projection d’un motif connu
  • Appariement pixels/motif

Cameras

Avantages:

  • Pas de contact
  • Peu onereux
  • Robuste (~pas de piece mobile, pas d’interferences…)
  • Facilite d’acquisition de grandes quantites de donnees
  • Couverture dense
  • Grande variete de distances
  • Possibilite d’obtenir de l’information 2D et 3D
  • Pas besoin d’eclairage specifique
    • Technique passive
  • Informatino geometrique mais aussi semantique, interpretation de l’image
  • Donnee directement interpretable par l’Homme

Inconvenients:

  • Besoin de lumiere
  • Occlusions
  • Perte d’information
    • Une image est une projection du monde 3D sur un plan 2D
  • Difficulte de l’appariement des pixels
  • Precision relativement faible

Mono-vision passive

  • Utilisation d’image 2D pour avoir un rendu 3D

Stereo-vision

  • Vision d’une meme scene depuis 2 endroits legerements decales l’un par rapport a l’autre
  • Principe de la perception 3D chez l’Homme

Precision et etalonnage

  • Les points 3D sont des mesures geometriques obtenues par des principes physique (lumiere, contact, etc.) et mecaniques
  • Les erreurs systematiques de mesure peuvent etre ameliorees par calibrage/etalonnage

Modelisation de la camera

Geometrie optique

Postulats:

  • La propagation de la lumiere est decrite par des rayons lumineux provenant d’une source de lumiere
  • Un rayon lumineur suis une ligne droite dans un milieu homogene
  • A l’intersection entre 2 milieux homogenes, la lumiere est reflehie ou refractee
  • Le chemin parcouru par un rayon lumineux et reversible
  • L’intersection de rayons lumineux est sans effets

Modelisation de la camera

  • Capteur uniquement

Comment eviter ca ?

On met une lentille :) (Theotime)

  • Pinhole/stenope

Distance focale

Ouverture

Lumiere

  • Sans lumiere, pas d’image (pas de bras pas de chocolats)
  • L’illumination de la scene a une influence importante sur le processus d’acquisition
  • Controler l’illumination est un concept clef
  • GLobalement possible de controler l’illuminatino dans l’industrie
  • Difficile a impossible en milieu exterieur
  • Sinon, agir sur les parametres physiques de la camera
    • Vitesse d’obturation
    • Ouverture
  • Petite vitesse d’obturation et/ou grande vitesse de l’objet $\Rightarrow$ attention au flou de mouvement
  • Logiciel d’auto-exposition
  • Cameras “global shutter” plutot que “rolling shutter”

Lentilles

  • Utilisation d’une lentille pour concentrer la lumiere sur le plan image
    • Amelioration de la luminosite
    • Amelioration de la nettete

Distance focale

Focus

Distance de focus

Hyperfocale

Validite du modele stenope

On peut assimilier une camera munie d’une lentille a une camera stenope si:

  • On considere uniquement le rayon lumineux central
  • On suppose que la mise au point est faite
  • On considere que la distance de focus de la camera avec lentille est equivalenete a la distance focale de la camera stenope
  • On neglige ou corrige les distortions induites par la lentille
  • On ajoute un systeme d’ouverture pour limiter les erreurs

Distortions

Abberations

Probleme des lentilles

  • Aberration chromatique
  • Aberration comatique
    • S’observe notemment sur les telescopes

Malformation capteur

Probleme du capteur

  • Asymetrie des pixels ou “skewness”
  • Souvent negligeable sur les cameras modernes

Bruit

Probleme du capteur

  • Bruit lie a l’electronique
  • Bruit lie a la discretisation des mesures (seulement 255 valeurs possibles)

Geometrie optique

Systeme d’equation

Centre optique

Le point/pixel de coordonnees $(0,0)$ dans l’image correspond au coin superieur gauche

Parametres intrinseques

3D vers image 2D:

\[\begin{bmatrix} u\\ v\\ 1 \end{bmatrix}\sim K \begin{bmatrix} X\\ Y\\ Z \end{bmatrix}\quad\text{Equivalent a un facteur d'echelle pres}\] \[\exists\lambda\text{ tq }\lambda\begin{bmatrix} u\\ v\\ 1 \end{bmatrix} = K \begin{bmatrix} X\\ Y\\ Z \end{bmatrix}\]

Il faut convertir du systeme de cooordonnees du monde vers le system de coorodnnnees de la camera

\[\begin{bmatrix} X_c\\ Y_c\\ Z_c \end{bmatrix}=R\cdot \begin{bmatrix} X\\ Y\\ Z \end{bmatrix} + t\]
  • $R$ une matrice de rotation $3\times 3$
  • $t$ un vecteur translation

Du monde a l’image

Estimation de la matrice camera

  • $P$ une matrice $3\times 4\Rightarrow 12$ inconnues
    • $P\sim K\cdot[R\vert t]$
    • On peut decomposer en $P=[\vert P_1\vert P_2]$
    • $P_1=K\cdot R$ matrice $3times 3$
    • $P_2=k\cdot t$ vecteur $3\times 1$
  • Resectioning:
    • On estime $P$ a partir de parires $\bar x$ et $\bar X$ connues

Estimation de la matrice intrinseque

Plane-based calibration

  • On realise l’acquisition de multiple images d’une surface plane (e.g. damier)

On a donc:

\[\begin{bmatrix} u\\ v\\ 1 \end{bmatrix}\sim K\begin{bmatrix}r_1&r_2&t\end{bmatrix} \begin{bmatrix} X\\ Y\\ 1 \end{bmatrix}=H \begin{bmatrix} X\\ Y\\ 1 \end{bmatrix}\]

Parametres de distorsion

  • Il est possible d’estimer des aprametres caraterisant les distortions radiales et tangentielles
  • Plusieurs modeles de distorsion existent, notamment le modele polynomial de Brown-Conrady

Modele complet

Comment realiser une bonne calibration ?

  • La cible doit etre parfaitement plane
  • Les motifs de type cercles asymetrqiues donnent de meilleurs resultats
  • La distance entre les points doit etre mesuree precisement
  • Il faut correctement definir le nombre de lignes/colonnes de la cible

Controler l’environnement de calibration

  • Pas de sources de lumiere directe
  • Pas d’autres cible/motifs similaires visible
  • Pas de relets
  • Controle de l’exposition

Procedure de calibration

Stereovision

Triangulation

Geometrie epipolaire

Lignes epipolaires

Matrice essentielle $E$

Matrice fondamentale $F$

Rectification

Le fait de rendre 2 images “paralleles”

  • Rend la triangulation facile
  • Facilite l’appariement

Appariement de points

  • Trouver les coordonnees en pixel d’un point 3D dans le plan image des 2 cameras
  • Les points images sont sur la meme ligne lorsque les images sont rectifiees

Plans image paralelles

Calcul de la profondeur

Image de disparite/clarte de profondeur

Calcul des coordonnees 3D

Methodes de correlation

Comment faire pour trouver les points correspondants ?

De facon naive, recherche identique mais on peut avoir des pixels qui ont la meme valeurs et avoir des faux positifs -> selection d’une fenetre

  • pick a window $W$ around $\bar p = (\bar u, \bar v)$
  • build vector $w$
  • Slide the window $w$ along $v=\bar V$ in image 2 and compute $w’(u)$ for each $u$
  • Compute the dot product $w^Tw’(u)$

On peut faire varier la taille de la fenetre

Petite fenetre:

    • Plus de details
    • Plus de bruit

Problemes de la stero-vision

Occlusions

Problemes de la stereo vision

  • Regions homogenes et/ou peu texturees

  • Patterns repetitifs

Influence de la baseline

  • Petite baseline, petit $\frac{B}{Z}$

  • Grande baseline, grand $\frac{B}{Z}$

Disparite entiere

Exemples ans interpolation sous-pixellique:

La fonction de disparite est estimee en appliquant une fonction de la forme:

\[d_{subpix} = d_{int} + f(s_{left}, s_{med}, s_{right})\]

avec $s$ les scores de correlation

On peut simpifier la formulation de cette fonction:

\[d_{subpix}=\begin{cases} d_{int} - 0.5 + f(\frac{l_d}{r_d}) &\text{if } l_d\le r_d\\ d_{int} + 0.5 + f(\frac{r_d}{l_d}) &\text{otherwise} \end{cases}\]

L’utilisation d’une fonction d’interpolation sous-pixellique a pour effet d’introduire de petites erreurs sous la forme d’une sinusoide

Meme si cet effet est difficilement visible sur la carte de disaprtie, il apparait clairement sur la reprojection 3D:

Deep learning

Reseaux de neurones convolutifs:

Etat de l’art

This post is licensed under CC BY 4.0 by the author.