RETROUVER LE POINT DE VUE : À PARTIR D’UN CARRÉ AU SOL ... · Calcul de la focale (points de...

Post on 02-Feb-2020

0 views 0 download

Transcript of RETROUVER LE POINT DE VUE : À PARTIR D’UN CARRÉ AU SOL ... · Calcul de la focale (points de...

RETROUVER LE POINT DE VUE : À PARTIR D’UN CARRÉ AU SOL, PARALLÈLE AU PLAN DE PROJECTION

RETROUVER LE POINT DE VUE : À PARTIR D’UN CARRÉ AU SOL, PARALLÈLE AU PLAN DE PROJECTION

Exemple : L'École d'Athènes (Raphaël)

RETROUVER LE POINT DE VUE : À PARTIR DE DEUX POINTS DE FUITE HORIZONTAUX

Point principal (projection orthogonale du centre optique dans le plan image)

Ligne de terre

Image d’un cube

RETROUVER LE POINT DE VUE : À PARTIR DE DEUX POINTS DE FUITE HORIZONTAUX

Deux points de fuite correspondant à des directions orthogonales

RETROUVER LE POINT DE VUE : À PARTIR DE DEUX POINTS DE FUITE HORIZONTAUX

Ligne d’horizon (contient le point principal)

RETROUVER LE POINT DE VUE : À PARTIR DE DEUX POINTS DE FUITE HORIZONTAUX

Axe principal

RETROUVER LE POINT DE VUE : À PARTIR DE DEUX POINTS DE FUITE HORIZONTAUX

Comme les deux directions des points de fuite sont perpendiculaires, le centre optique est sur ce cercle

RETROUVER LE POINT DE VUE : À PARTIR DE DEUX POINTS DE FUITE HORIZONTAUX

Le centre optique est ici !

RETROUVER LE POINT DE VUE : À PARTIR DE DEUX POINTS DE FUITE HORIZONTAUX

Calcul de la focale (points de fuite p1, p2 mesurés en coordonnées homogènes dans l’image) :– V1 = K-1p1 => vecteur 3D parallèle à la direction du point de fuite p1 dans

le repère caméra

– V2 = K-1p2 => vecteur 3D parallèle à la direction du point de fuite p2 dans le repère caméra

– Les deux directions sont perpendiculaires => V1.V2 = 0

=> (K-1p1)T K-1p2=0

=> p1T K-TK-1p2=0

=> p1T(KKT)-1p2=0

( ) )1,,(et )1,,( si )(

100

010

001

1000000

1000

0

212

2

2

1-T0

0

wwvvwvwvv

u

vuvuvvuuff

f

ff

vu

==+−=⇒

==⇒

= ppKKK ωα

α

APPLICATION : INTÉGRATION 3D DANS UNE PHOTOGRAPHIE AVEC SKETCHUP

APPLICATION : INTÉGRATION 3D DANS UNE PHOTOGRAPHIE AVEC SKETCHUP

RECONSTRUCTION DE LA SCÈNE À L’AIDE DES RAYONS INVERSES

« Projection inverse » de la face au sol

RECONSTRUCTION DE LA SCÈNE À L’AIDE DES RAYONS INVERSES

Cube reconstruit

APPLICATION : MODÉLISATION À PARTIR D’UNE PHOTOGRAPHIE AVEC SKETCHUP

APPLICATION : MODÉLISATION À PARTIR D’UNE PHOTOGRAPHIE AVEC SKETCHUP

APPLICATION : MODÉLISATION À PARTIR D’UNE PHOTOGRAPHIE AVEC SKETCHUP

APPLICATION : MODÉLISATION À PARTIR D’UNE PHOTOGRAPHIE AVEC SKETCHUP

APPLICATION : MODÉLISATION À PARTIR D’UNE PHOTOGRAPHIE AVEC SKETCHUP

2. VISION BINOCULAIRE

VISION BINOCULAIRE = STÉRÉOVISION

Deux caméras observent la scène en même temps

Une seule caméra observe la scène à deux instants différents (caméra en mouvement)

GÉOMETRIE DE DEUX CAMÉRAS

1. VISION BINOCULAIRE

LA CONTRAINTE ÉPIPOLAIRE

Droite épipolaire

Épipole

LE FAISCEAU ÉPIPOLAIRE

LE FAISCEAU ÉPIPOLAIRE

Courtesy Oxford, Visual Geometry Group

CALCUL DU MOUVEMENT

1. VISION BINOCULAIRE

CALCUL DU MOUVEMENT

On suppose K et K’ connues ⇒ trouver R,t (mouvement relatif) tels que tous les "rayons inverses" se croisent ⇒ on

obtient les points 3D en sous-produit

CALCUL DU MOUVEMENT

La géométrie épipolaire définit une transformation point x ⇒ droite l’

Cette transformation dépend uniquement des matrices de projection P=K[I|0] et P’=K’[R|t] (pas de la structure)

On démontre qu’elle est linéaire et peut être écrite sous la forme

l’=Fx où l’ est un vecteur de taille 3 représentant la droite l’ et F est une matrice 3x3 appelée matrice fondamentaleLa matrice fondamentale F peut être calculée à partir de 8 correspondances de points entre les deux images

Si K et K’ sont connus, on peut extraire R et t de F

TRIANGULATION

1. VISION BINOCULAIRE

LE PROBLÈME DE LA TRIANGULATION

Connaissant une correspondance de deux point x et x’ et les matrices de projection P et P’, calculer le point 3D X

Problème : en présence de bruit, les rayons inverses ne se croisent pas (les points mesurés ne sont pas exactement sur les droites épipolaires)

SOLUTION GÉOMÉTRIQUE

Calculer le point au milieu du plus petit segment reliant les deux rayons inverses

SOLUTION ALGÉBRIQUE

Utiliser λx=PX et λ’x’=P’X pour résoudre X

λx=PX ⇒ x x (PX) = 0

En procédant de même pour la deuxième caméra, on obtient AX=0, avec

Avantage : peut être étendu à plus de deux vues

Inconvénient : ne minimise pas une erreur ayant un sens physique

MINIMISATION D’UNE ERREUR GÉOMÉTRIQUE

RECONSTRUCTION DENSE

1. VISION BINOCULAIRE

RECONSTRUCTION DENSE

La contrainte épipolaire est très utile pour l’appariement dense (exemple sur images rectifiées)

Courtesy Oxford, Visual Geometry

Group

RECONSTRUCTION DENSE

Courtesy Oxford, Visual Geometry Group

Image de gauche Image de droite

RECONSTRUCTION DENSE

Vue du nuage de points reconstruitstriangulé et texturé

Courtesy Oxford, Visual Geometry Group

Carte de profondeur

3. VISION MULTIOCULAIRE

VISION MULTIOCULAIRE

SUIVI D’INDICES (TRACKING DE CAMÉRA)

3. VISION MULTI-OCULAIRE

Problème : suivre en temps réel des indices visuels (patchs, contours …)

dans un flux vidéo

SUIVI DE POINTS PAR FLOT OPTIQUE

Quels sont les bons points à suivre et comment les suivre ?

SUIVI DE POINTS PAR FLOT OPTIQUE

SUIVI DE POINTS PAR FLOT OPTIQUE

On cherche des points faciles à retrouver dans le cas d’une translation 2D de l’image

Pour quels points x la translation d peut-elle être détectée de manière fiable ?

Shi and C. Tomasi. Good features to track. CVPR'94.

SUIVI DE POINTS PAR FLOT OPTIQUE

Le Jacobien de diss(d) vaut 0 quand diss(d) est minimal

SUIVI DE POINTS PAR FLOT OPTIQUE

Conduit au système linéaire :

Peut être résolu de manière fiable quand les deux valeurs propres de Z sont larges (le système est alors bien conditionné)

POINTS DE HARRIS

gxgy (gx)2 (gy)2

Gauss(.)*gxgy Gauss(.)*(gx)2 Gauss(.)*(gy)2

POINTS DE HARRIS

Points de Harris : maxima locaux de min(λ1,λ2)

APPLICATION : REALITÉ AUGMENTÉE

Suivi de points et images clés

[Lepetit et al.], EPFL Lausanne

APPLICATION : REALITÉ AUGMENTÉE

APPLICATION : REALITÉ AUGMENTÉE

[Klein & Drummond ISMAR’2004] Cambridge University

Suivi de contours + capteur optique (leds)

APPLICATION : REALITÉ AUGMENTÉE

Tracking par synthèse

APPLICATION : REALITÉ AUGMENTÉE

Tracking par synthèse d’un modèle 3D obtenu à l’aide d’une Kinect

[Petit et al. ISMAR 2013] INRIA Rennes

Des points sont suivis dans plusieurs image (KLT, Harris, …)

Optimisation globale (bundle adjustment) permettant de reconstruire les points en même temps que les points de vue de caméra

Logiciels de matchmoving : Boujou, Voodoo Camera Tracker, …

Courtesy Oxford, Visual Geometry Group

APPLICATION : STRUCTURE FROM MOTION (MATCHMOVING)

LIMITES DU SUIVI D’INDICES

Limites du suivi d’indices visuels :– Nécessite une initialisation

– Dérives et échecs de suivi possibles ⇒ nécessite des réinitialisations

Pour pallier ces problèmes, on s’intéresse à la reconnaissanced’indices visuels :– Reconnaissance d’indices artificiels

– Reconnaissance d’indices naturels à l’aide de descripteurs de points invariants par :

• Changement d’échelle

• Rotation 2D

• Transformation affine 2D

• Dans une certaine mesure, changement de point de vue