Résumé des cours de la première année du Mastère Image

1/52
100%
Rendu du PDF...
Page 1 sur 52Lecteur de document UniversityLib

Résumé des cours de la première année du Mastère Image

Computer Vision, Image Processing, and 3D Techniques · course

Voir tous les documents en intelligence artificielle et données

Ministère de l’Enseignement Supérieur,

de la Recherche Scientifique et de la Technologie

Université de La Manouba

Ecole Nationale des Sciences de l’Informatique

Sujet

Résumé des cours de la première année du Mastère Image « Vision et Techniques 3D, Reconnaissance de formes, Ateliers d’imagerie 1 & 2 »

Réalisé par

Groupe Mastère Image - 1ère année

Supervisé par

Pr. Faouzi GHORBEL

Année universitaire 2008 - 2009

Ce travail a été réalisé par :

Abdelhakim LIMEM « [email protected] »

Dalel BOUSLIMI « [email protected] »

Ghassen BOUSSELMI « [email protected] »

Haithem BOUSSAID « [email protected] »

Hajer FRADI « [email protected] »

Ibtissem BEN OTHMAN « [email protected] »

Majdi JRIBI « [email protected] »

Mariem SOLTANI « [email protected] »

Mariem CHEIKHROUHOU « [email protected] »

Mohamed DEBBABI « [email protected] »

Mohamed Amine MEZGUICH « [email protected] »

Mohamed Nadhir KHEMAKHEM « [email protected] »

Nabila TAYARI « [email protected] »

Olfa BELGUITH « [email protected] »

Sabra MABROUK « [email protected] »

Saima BEN HADJ « [email protected] »

Sarra BEN AZZOUZ « [email protected] »

Sawsen BEN NASR « [email protected] »

Wième GADACHA « [email protected] »

Wissal DRIRA « [email protected] »

Yosra REKIK « [email protected] »

Remerciements

Au terme de ce travail, nous tenons à remercier tous ceux qui ont contribué à la réalisation de ce travail.

Au premier rang, nous tenons à exprimer notre plus grande gratitude et respect à notre professeur Faouzi GHORBEL. Nous le remercions pour nous avoir assisté tout au long de l’élaboration de ces projets et de nous avoir fait profiter de son inestimable expérience et de ses précieux conseils.

Nous voudrons aussi remercier tous les membres du pôle GRIFT du laboratoire Cristal pour nous permettre d’assimiler les connaissances nécessaires pour la réalisation de ces projets.

Nous aimerons bien également adresser nos plus vifs remerciements et transmettre l’expression de notre reconnaissance à ceux qui n’ont pas épargné un effort pour accomplir ce travail collectif.

Table des matières

I Calibration d’une caméra

1 Mise en contexte

1.1 Les dioptres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.1.1 Dioptre plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.1.2 Dioptre sphérique

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2 Exemple de l’oeil humain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.1 Description de l’oeil humain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.2 L’oeil théorique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 Géométrie et calibration des caméras

2.1 Problèmes posés

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2 Rappel sur l’algèbre linéaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.1 Quelques notions utiles

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.2 Transformations linéaires

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.2.1 Cas général . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.2.2 Homothétie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.2.3 Rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.2.4

Symétrie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.3 Transformations affines (Rotations affines) . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.3.1 Coordonnées homogènes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2.3.2 Plan projectif

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3 Calibrage d’une caméra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4

9

10

10

10

11

11

11

12

13

13

14

14

15

15

15

15

16

16

18

19

20

3 Calibrage stéréoscopique

23

3.1 Définition de la stéréoscopie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23

3.2 Descriptif du problème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24

3.3 Mise en correspondance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

25

3.3.1 Droite épipolaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

3.3.2 Définition de l’épipole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

3.3.3 Rectification épipolaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

3.3.4 Capteurs stéréoscopiques actifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31

3.3.4.1 Calibrage d’un capteur actif

. . . . . . . . . . . . . . . . . . . . . . . . . . .

33

3.3.4.2

Limites du capteur actif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

II Moments géométriques

4 Reconnaissance de formes en utilisant les moments géométriques

35

36

4.1 Les moments géométriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

36

4.1.1 Principe de la méthode

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

36

4.1.2 Définition des moments géométriques

. . . . . . . . . . . . . . . . . . . . . . . . . . .

36

4.1.3 Présentation de l’application réalisée . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37

III Algorithme EM (Expectation - Maximization)

5 L’algorithme EM Expectation-Maximization

40

41

5.1 Présentation Générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

41

5.1.1 Utilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

41

5.1.2 Critères d’utilisation

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

41

5.1.3 Présentation générale

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42

5.1.3.1 Phases de l’algorithme

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42

5.1.3.2 Condition d’arrèt

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42

5.1.3.3 Entrées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42

5

5.1.3.4

Sorties

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42

5.2 La Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42

5.3 Utilité de l’algorithme EM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

43

5.3.1 Explication du théorème de l’histogramme : . . . . . . . . . . . . . . . . . . . . . . . .

43

5.3.1.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

44

5.3.1.2 Théorème de l’histogramme : . . . . . . . . . . . . . . . . . . . . . . . . . . .

44

5.3.2 Convergence de l’algorithme EM :

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

44

5.3.3 Utilité de l’estimation par l’algorithme EM :

. . . . . . . . . . . . . . . . . . . . . . .

44

5.3.3.1 Régle de Bayes :

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

45

5.4 Les formules utilisées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

45

5.4.1

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

45

5.4.2 Exécution sur machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

45

IV La méthode de FISHER

6 Réduction des dimensions avec la méthode de Fisher

47

48

6.1 Analyse Discriminante de Fisher

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

48

6.1.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

48

6.1.2 Critère de Fisher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

48

6.2 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

49

6.3 Comparaison avec l’ACP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

51

Table des figures

1.1 Diptre plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2 Dioptre sphérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3 Coupe horizontale schématique de l’oeil humain . . . . . . . . . . . . . . . . . . . . . . . . . .

10

11

11

1.4 L’oeil théorique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

12

2.1 Exemple d’une symétrie par rapport à un plan . . . . . . . . . . . . . . . . . . . . . . . . . .

2.2 Le modèle géométrique d’une caméra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3 Projection de la mire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.1 Modélisation d’un capteur stéréoscopique passif . . . . . . . . . . . . . . . . . . . . . . . . . .

3.2 Le calibrage stéréoscopique

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Publicité

3.3 La géométrie d’un capteur stéréoscopique . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4 Les deux faisceaux des lignes épipolaires et les deux épipoles . . . . . . . . . . . . . . . . . . .

3.5 La rectification épipolaire ramène le capteur stéréo dans une configuration telle que les lignes . . . . . . . . . . . . . . . . . . . . . . . . . . . .

épipolaires sont parallèles aux axes Fyet F (cid:48) y(cid:48)

3.6 Le principe de rectification épipolaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.7 Une image rectifiée s’obtient en appliquant à la caméra correspondante une rotation spatiale.

3.8 Un capteur actif muni d’une caméra et d’un plan de lumière . . . . . . . . . . . . . . . . . . .

3.9 Une configuration montrant un cas typique de la limite d’utilisation d’un capteur actif. . . . .

3.10 Le faisceau laser étant conique, il y a des problèmes d’imprécision lorsque le faisceau rencontre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

une discontinuité de l’objet observé.

3.11 Le faisceau laser a un angle d’incidence proche de 90°, mesuré par rapport à la normale de la . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

surface mesurée.

16

20

21

23

24

25

26

27

28

29

31

33

34

34

4.1

interface initiale de l’application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

38

7

4.2 Un cas où il y a correspondnce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

38

4.3 Un exemple où il n’y a pas de correspondance entre les deux images

. . . . . . . . . . . . . .

39

5.1 Histogramme d’un échantillon Gaussien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

43

5.2

Interface graphique de l’application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

46

6.1 Variables explicatves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

49

6.2 Représentation des données en 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50

6.3 Représentation des données sur le plan (x,y) . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50

6.4 Représentation des données sur le plan de projection . . . . . . . . . . . . . . . . . . . . . . .

51

Première partie

Calibration d’une caméra

9

Chapitre 1

Mise en contexte

Introduction

Dans ce chapitre, nous allons rappeler les différents types de dioptres dans un premier lieu avant de représenter l’exemple de l’oeil humain et ses différentes caractéristiques.

1.1 Les dioptres

Dans cette section, nous allons rappeler les différents types de dioptres ainsi que leurs différentes caractéris- tiques.

1.1.1 Dioptre plan

La figure 1.1 représente un dioptre plan caractérisé par les deux angles « i » et « r » et les deux indices « n1 » et « n2 » tel que : n2.sin(i) = n2.sin(r).

Figure 1.1 – Diptre plan

10

1.1.2 Dioptre sphérique

La figure 1.2 représente un exemple de dioptres sphériques.

Figure 1.2 – Dioptre sphérique

1.2 Exemple de l’oeil humain

1.2.1 Description de l’oeil humain

A titre de rappel, voici une coupe horizontale schématique de l’oeil (Extrait de Optique Physiologique tome 1 Y. Le GRAND Ed. Masson).

Figure 1.3 – Coupe horizontale schématique de l’oeil humain

11

1.2.2 L’oeil théorique

Dans environ trois cas sur quatre, avec une approximation acceptable, l’oeil est stigmatique. Il se comporte dans ces cas comme un système centré.

Pour étudier l’optique de cet oeil, les chercheurs ont été amenés à définir un modèle théorique de l’oeil. Nous choisirons dans notre étude le modèle d’oeil théorique de Y. Le GRAND. C’est un oeil formé de dioptres sphériques centrés sur un même axe. Le cristallin réel inhomogène est remplacé par un cristallin théorique homogène, de géométrie identique et d’indice tel que sa vergence soit la même. Cet oeil théorique est un oeil normal : la proximité du conjugué de la rétine est égale à 0.5 d’environ (vérification que vous pourrez faire à partir des caractéristiques de l’oeil théorique).

Les caractéristiques géométriques de cet oeil figurent sur le schéma suivant (côtés en mm) (Figure 1.4).

Q’ est le centre de rotation de l’oeil sur lequel nous reviendrons.

Figure 1.4 – L’oeil théorique

La pupille est pratiquement tangente à la face antérieure du cristallin (la distance iris - cristallin étant de l’ordre de 0,04 mm).

Les indices des milieux transparents retenus sont :

– pour la cornée : ............................. 1,377 – pour l’humeur aqueuse :.................. 1,337 – pour le cristallin théorique :............. 1,42 – pour le corps vitré :........................ 1,336

Conclusion

Dans ce chapitre, nous avons décrit les différents types de dioptres ainsi que les différents composants de l’oeil humain.

12

Chapitre 2

Géométrie et calibration des caméras

Introduction

Dans ce chapitre nous allons brièvement décrire le modèle géométrique associé au processus de saisie d’image à laide d’une caméra. Ce modèle est caractérisé par un certain nombre de paramètres que nous allons estimer par étalonnage ou calibration ou calibrage. Les paramètres d’une caméra ou paramètres intrinsèques seront estimés en même temps que les paramètres extrinsèques soit les paramètres qui lient un repère associé à la caméra au repère associé à l’objet étalon. Nous allons étudier en détail un modèle projectif de caméra. Nous allons voir par la suite qu’il existe un modèle simplifié -affine- qui peut être utile dans certaines configurations. Nous allons ensuite proposer une technique de calibration d’une caméra linéaire (une barette CCD). Il est utile de signaler que lorsqu’on calibre une caméra, on s’intéresse à la modélisation de l’ensemble de la caméra et du convertisseur analogique digital. Si on change de convertisseur ou de caméra, il faut alors recalibrer l’ensemble.

Ensuite, nous allons décrire un capteur comportant deux caméras (capteur stéréoscopique) et nous allons préciser quelques propriétés de ce capteur qui nous permettrons de faciliter la tâche de mise en correspondance. Un capteur compose de deux caméras est un capteur tridimensionnel puisqu’il nous permet par triangulation passive de calculer la distance d’un objet au capteur. Nous allons étudier également un capteur tridimensionnel à triangulation active ainsi qu’une technique d’étalonnage d’un tel capteur.

2.1 Problèmes posés

Lors de la calibration de caméras, plusieurs problèmes sont rencontrés :

– La mise en correspondance. – Savoir les positions relatives des caméras. – Les distorsions : – géométriques – ...

13

2.2 Rappel sur l’algèbre linéaire

2.2.1 Quelques notions utiles

Orthogonalité soit A une matrice orthogonale.

Aorthogonal =⇒A−1 = tA

=⇒ A.tA = I

Si A =

 alors :

U1 U2 U3

A.tA =

 

−→ −→ ||U1||2 −→ −→ U3 U1. U1. U2 −→ ||U2||2 −→ −→ −→ U2. U1 U2. U3 −→ −→ −→ −→ ||U3||2 U2 U3. U1 U3.

 

Donc, ||

−→ U1|| = ||

−→ U2|| = ||

−→ U3|| et par la suite les vecteurs sont orthonormés 2 à 2.

Notations M (n, m) : l’espace vectoriel des matrices de n lignes et m colonnes.

(M (n, n), +, .) : l’espace vectoriel sur R tel que : dim(M (n, n)) = n2.

Ensemble des matrices orthogonales : Θ(3,R) = {A ∈ MR(3, 3)/tA.A = A.tA = I3}.

Déterminant Soient A et B deux matrices telles que :

A : matrice de n lignes et m colonnes.

B : matrice de m lignes et p colonnes.

Lorsque A = B, on obtient :

det(A.B) = det(A.tA)

= (det(A))2

= ±1

tel que :

det(A.tA) = 1 dans le cas d’une rotation.

det(A.tA) = −1 dans le cas d’une symétrie.

Lorsqu’on a une base directe, det(A.tA) = 1.

14

Remarques importantes – L’ensemble des espaces vectoriels de dimension 1 est l’ensemble des droites passant par l’origine. – L’image d’un connexe est un connexe. – La topologie du groupe de rotation est la topologie du cercle. – Quelle est la dimension du groupe de rotation ? – O(3,R)n’est pas un espace vectoriel car les relations ne sont pas linéaires (||U1||2 = 1). – Le groupe orthogonal est de dimension 3. – detest une fonction de R9vers R. – Les fonctions multi-linéaires alternées sont continues. – La moyenne de deux matrices orthogonales n’est pas orthogonale.

2.2.2 Transformations linéaires

2.2.2.1 Cas général

Soit le système linéaire suivant :

x(cid:48) = a1.x + b1.y + c1.z

y(cid:48) = a2.x + b2.y + c2.z

z(cid:48) = a3.x + b3.y + c3.z

Ce système peut être représenté sous forme de matrice.

 =

x(cid:48) y(cid:48) z(cid:48)

a1 a2 a3

b1 b2 b3

c1 c2 c3

 ∗

x y z

2.2.2.2 Homothétie

L’homothétie ou facteur d’échelle est caractérisée par le rapport α.

Sous forme matricielle, l’homothétie de rapport αdans R3sera notée comme suit :

0 α 0 0 α 0 0 α 0

2.2.2.3 Rotation

Décomposition d’une rotation Une autre représentation des rotations est celle utilisant une décompo- sition de la matrice de rotation en trois matrices de rotation autour de chacun des trois axes.

15

Ces trois matrices sont :

La matrice ((cid:60)) sera donnée par :

(cid:60)x =

(cid:60)y =

(cid:60)y =

1 0 0

0

0

cos α − sin α cos α sin α

cos β 0

0 1 − sin β 0

sin β 0 cos β

cos γ − sin γ cos γ sin γ 0 0

0 0 1

((cid:60)) = (cid:60)z.(cid:60)y.(cid:60)x

et les trois angles α, β et γ s’appellent les angles d’Euler d’après le mathématicien Leonhard Euler (1707 - 1783) qui a étudié les lois régissant les déplacements des solides.

2.2.2.4 Symétrie

Nous allons étudier l’exemple de la symétrie par rapport à un plan.

Figure 2.1 – Exemple d’une symétrie par rapport à un plan

2.2.3 Transformations affines (Rotations affines)

Soit le système (*) suivant :

x(cid:48) = x + a1

y(cid:48) = y + a2

z(cid:48) = z + a3

16

Soit f une fonction linéaire.

f est linéaire si et seulement si :

Soient :

Donc :

On a :

∀α, u, v f (αu + v) = αf (u) + f (v)

u =

Publicité

x1 y1 z1

  et v =

x2 y2 z2

u + v =

x1 + x2 y1 + y2 z1 + z2

f (u + v) =

f (u) + f (v) =

x1 + x2 + a1 y1 + y2 + a2 z1 + z2 + a3

x1 + x2 + 2 ∗ a1 y1 + y2 + 2 ∗ a2 z1 + z2 + 2 ∗ a3

f (u + v) (cid:54)= f (u) + f (v).

Donc, la fonction f n’est pas linéaire. Et par la suite, elle représente une transformation affine qui est la composée d’une transformation linéaire et d’une translation.

Analytiquement,

x(cid:48) = a1.x + b1.y + c1.z + x0

y(cid:48) = a2.x + b2.y + c2.z + y0

z(cid:48) = a3.x + b3.y + c3.z + z0

En notation matricielle, le système précédent sera donné par :

 =

x(cid:48) y(cid:48) z(cid:48)

a1 a2 a3

b1 b2 b3

(cid:124)

 ∗

c1 c2 c3 (cid:123)(cid:122)

x y z

+

(cid:125)

(cid:124)

x0 y0 z0 (cid:123)(cid:122)

(cid:125)

Transformation linéaire Translation

17

Exemples de transformations linéaires – Rotation – Symétrie – Translation

– Facteur non uniforme s’écrivant en notation matricielle sous la forme :

α 0 0 0 β 0 γ 0 0

Définitions – Déplacement : Rotation + Translation. – Anti-déplacement : Symétrie + Translation.

2.2.3.1 Coordonnées homogènes

Translation en coordonnées homogènes La translation se représente en coordonnées homogènes sous la forme :

  

x(cid:48) y(cid:48) z(cid:48) 1

  

  

=

1 0 0 1 0 0 0 0

0 x0 y0 0 z0 1 1 0

  

  

∗

x y z 1

  

=

  

  

x + x0 y + y0 z + z0 1

Transformation affine en coordonnées homogènes Une transformation affine sera notée en coordon- nées homogènes sous la forme :

  

x(cid:48) y(cid:48) z(cid:48) 1

  

  

=

a1 a2 a3 0

b1 b2 b3 0

c1 x0 y0 c2 z0 c3 1 0

  

  

∗

  

x y z 1

Définition On appelle transformation homographique 3D vers 3D, l’application suivante :

  

sx(cid:48) sy(cid:48) sz(cid:48) s

  

=

  

m11 m12 m13 m14 m21 m22 m23 m24 m31 m32 m33 m34 m41 m42 m43 m44

  

  

∗

  

x y z 1

D’où,

sx(cid:48) = m11.x + m12.y + m13.z + m14

sy(cid:48) = m21.x + m22.y + m23.z + m24

sz(cid:48) = m31.x + m32.y + m33.z + m34

s = m41.x + m42.y + m43.z + m44

18

Donc, on obtient le système (**) suivant :

x(cid:48) = m11.x+m12.y+m13.z+m14 m41.x+m42.y+m43.z+m44

y(cid:48) = m21.x+m22.y+m23.z+m24 m41.x+m42.y+m43.z+m44

z(cid:48) = m31.x+m32.y+m33.z+m34 m41.x+m42.y+m43.z+m44

s = m41.x + m42.y + m43.z + m44

Remarque : Homographie à deux variables très utile en reconstruction car utile pour les projections).

f (x) = a∗x+b

c∗x+d = y : homographie à 2 variables (Elle est

Maintenant, on va éliminer la troisième composante du système (**) précédent.

On obtient, sous forme matricielle,

sx(cid:48) sy(cid:48) s

 =

m11 m12 m13 m14 m21 m22 m23 m24 m41 m42 m43 m44

 ∗

  

  

x y z 1

Essayons, donc, de transformer le résultat déjà obtenu sous forme linéaire.

Pour cela, il faut déterminer s.

Relation d’équivalence Soit (cid:60) une relation d’équivalence.

Donc,

– (cid:60) est réflexive : ∀x, x(cid:60)x. – (cid:60) est symétrique : ∀x, y, x(cid:60)y=⇒ y(cid:60)x. – (cid:60) est transitive : ∀x, y, z, x(cid:60)y et y(cid:60)z=⇒ x(cid:60)z.

2.2.3.2 Plan projectif

Remarque – Droite projective : P 1(R) = R2 \ {0} | (cid:60)∗ représente l’ensemble des droites passant par l’origine.

Définition On appelle espace projectif réel (respectivement complexe) de dimension n qu’on note par :

P n(R) = Rn+1 \ {0} | (cid:60)∗ (respectivement P n(C) = Cn+1 \ {0} | (cid:60)∗)

19

Plan projectif réel

P 2(R) = R3 \ {0} | (cid:60)∗

P 3(R) = R4 \ {0} | (cid:60)∗−→ P 2(R) = R3 \ {0} | (cid:60)∗ (plan projectif réel).

  

x y z s

−→

  

 ∗

x y 1

  

(cid:124)

m11 m12 m13 m14 m21 m22 m23 m24 m31 m32 m33 m34 m41 m42 m43 m44 (cid:123)(cid:122)

  

∗

  

x y z s

  

(cid:125)

M

Remarque L’homographie 3D - 2D décrit les projections.

GLP (2, 3) (cid:51) M avec GLP :Group Linear Projective.

La figure 2.2 représente le modèle géométrique d’une caméra montrant ainsi l’homographie 3D - 2D.

Figure 2.2 – Le modèle géométrique d’une caméra

Le point P = (x1, y1, d) situé dans le plan de l’image virtuelle représente la projection du point Q = (X, Y, Z)sur ce plan ce qui explique le passage du 3D au 2D.

Publicité

2.3 Calibrage d’une caméra

Pour calibrer une caméra, il faut déterminer tout d’abord ses paramètres.

Pour cela, nous allons utiliser l’équation suivante en coordonnées homogènes :

 =

  

su sv s

m11 m12 m13 m14 m21 m22 m23 m24 m31 m32 m33 m34 m41 m42 m43 m44

  

  

∗

  

X Y Z 1

20

On peut écrire les coordonnées image d’un point de la scène. On obtient donc :

u = m11x+m12y+m13z+m14 m31x+m32y+m33z+m34

v = m21x+m22y+m23z+m24 m31x+m32y+m33z+m34

Notons au passage que ces deux équations décrivent la droite passant par le centre de projection et le point image (u, v), dans le repère mire soit la droite passant par F et b sur la figure suivante.

Figure 2.3 – Projection de la mire

Le principe de calibrage d’une caméra se présente par le fait qu’un point B dont les coordonnées sont exprimés dans le repère mire se projette en b dont les coordonnées sont exprimés dans le repère image.

Cette droite s’appelle également la droite de vue associée à un point image de coordonnées (u, v). Pour évaluer les coefficients de la matrice M , il suffit d’écrire ce système d’équations pour les points de la mire pour lesquels on mesure la projection dans l’image. Chaque point (Xi, Y i, Zi) se projetant en (ui, vi) fournit deux équations. Ces équations sont linéaires par rapport aux coefficients de la matrice. Il faut donc au moins 6 points pour déterminer les 12 coefficients de la matrice M qui nous intéresse.

Les équations u et v peuvent se réécrire comme une combinaison linéaire des mij :

Xi.m11 + Yi.m12 + Zi.m13 + m14 − ui.Xi.m31 − ui.Yi.m32 − ui.Zi.m33 = ui.m34

Xi.m21 + Yi.m22 + Zi.m23 + m24 − vi.Xi.m31 − vi.Yi.m32 − vi.Zi.m33 = vi.m34

On obtient donc 2n équations pour n points et on peut écrire ces équations sous forme matricielle (les indices indiquent la taille des matrices) :

K2n∗11.x11 = u2n

21

Soit, plus précisément :

    

Xi Yi Zi 0 0 0

0

... 1 0 0 Xi Yi Zi ...

0

0 −uiXi −uiYi −uiZi 1 −viXi −viYi −viZi

    

∗

                

m11 m12 m13 m14 m21 m22 m23 m24 m31 m32 m33

                

    

... uim34 vim34 ...

    

=

Utilisation de la contrainte m34 = 1 Le système défini par l’équation :

est un système homogène.

K2n∗11.x11 = u2n

Afin d’obtenir une solution non triviale, il faut fixer un des coefficients mij. On choisit m34 = 1 ce qui revient à diviser tous les coefficients de la matrice par m34 et à déterminer les paramètres de la caméra à un facteur près. On peut remarquer que m34 n’est autre que la composante en z du vecteur de translation entre le référentiel mire et la référentielle caméra et qu’on peut facilement s’arranger pour que cette composante ne soit pas nulle.

Conclusion

Dans ce chapitre, nous avons décrit les deux types de transformations (linéaire et affine) ainsi que la géométrie d’une caméra.

22

Chapitre 3

Calibrage stéréoscopique

Introduction

La vision par ordinateur prône comme objectif parmi d’autres la reconstruction d’une structure 3D à partir de la capture d’images. Partant de ce fait, la stéréoscopie prend en compte pour réaliser cette finalité l’utilisation de deux caméras. En fait, dans cette partie, on se propose à partir du modèle de projection de chacune des deux caméras ainsi que la transformation géométrique entre ces deux caméras de retrouver les coordonnées spatiales d’un point P ayant comme données ses projections sur les deux images des caméras.

3.1 Définition de la stéréoscopie

On nomme par système stéréoscopique l’utilisation de deux caméras pour obtenir deux projections différentes d’un même point.

Et, le calibrage stéréoscopique consiste à calculer la matrice de transformation entre le repère de la caméra gauche et celle de droite.

Voici une modélisation de ce genre de système :

Figure 3.1 – Modélisation d’un capteur stéréoscopique passif

23

3.2 Descriptif du problème

Le calibrage stéréoscopique consiste à calculer la matrice de transformation entre le repère de la caméra gauche et celle de droite qu’on notera par As.

En fait comme le montre le schéma ci-dessus, chacune des deux caméras lui est reliée un repère.

On considère un point P dont on cherche les coordonnées spatiales et dont les projections sur les deux plans sont p et p’.

Ce point P se trouve en réalité à l’intersection de la droite passante par le centre focal (F) de la caméra gauche et le point p. et celle passante par le centre focal (F’) et le point p’.

Et le problème en tant que tel sera de pouvoir calculer cette intersection.

Pour cela, il va falloir exprimer les deux équations de ces deux droites dans le même repère.

La matrice As ou encore matrice de transformation entre la caméra gauche et la caméra droite.

Et cette transformation est composée de trois rotations et de trois translations.

Figure 3.2 – Le calibrage stéréoscopique

Dans le but de calibrer ce système, on doit :

– calibrer chaque caméra par rapport à une mire unique, cela nous permet de déterminer les deux matrices

de projection perspective relative aux deux caméras.

– extraire les paramètres intrinsèques et extrinsèques de chaque caméra. – construire avec les paramètres extrinsèques les deux matrices Ad et Ag telles que Ad représente la trans- formation du repère mire au repère de la caméra droite et Ag représente la transformation du repère mire au repère de la caméra gauche. – calculer As : As = Ad(Ag) − 1

La matrice As est de cette structure :

As =

r11 r21 r31

r12 r22 r32

r13 r23 r33

bx by bz

On note également le vecteur b = (bxbybz) le vecteur de translation transformant F en F (cid:48).

24

3.3 Mise en correspondance

Nous nous proposons dans cette partie d’établir une mise en correspondance entre les points de l’image de gauche et celle de droite.

Figure 3.3 – La géométrie d’un capteur stéréoscopique

Ce schéma présente :

– Un point P de la scène 3D. – Un point p (resp. p0) qui correspond à la projection de P dans l’image gauche (resp. de droite). – Le centre focal F de la caméra gauche. – Le centre focal F0 de la caméra de droite.

En pratique, nous avons accès aux deux images gauche et droite et nous disposons du point p. Nous cherchons à savoir quel est le point p0de l’image de droite correspondant à p.

On se place dans le repère caméra et donc à partir d’un point pixel image de coordonnées u et v, on peut reconnaître ses coordonnées caméra tel que :

  = C −1.

  = C (cid:48)−1.

x y 1

x(cid:48) y(cid:48) 1

u v 1

u(cid:48) v(cid:48) 1

Avec (x, y, z) les coordonnées par rapport à la caméra gauche et (x(cid:48), y(cid:48), z(cid:48)) les coordonnées par rapport à la caméra de droite.

Tout en ayant que ces coordonnées sont reliés par la formule suivante :

  

X (cid:48) Y (cid:48) Z (cid:48) 1

  

  

  

X Y Z 1

= As.

25

On considère les coordonnées de p dans l’image gauche sont (x, y, 1) tel que : x = X Z coordonnées de p(cid:48) dans l’image gauche sont (x(cid:48), y(cid:48), 1) avec :

et y = Y Z

. De même, les

x(cid:48) = X (cid:48)

Z(cid:48) = r11.X+r12.Y +r13.Z+bx r31.X+r32.Y +r33.Z+bz

Ces formules se simplifient en considérant les relations : X = x.Z, Y = y.Z et p =t (x y 1).

x(cid:48) = Z.r1.p+bx Z.r3.p+bz

y(cid:48) = Z.r2.p+by Z.r3.p+bz

Par ceci, on peut exprimer la position d’un point de l’image de droite en fonction de son correspondant dans l’image gauche, des paramètres du capteur et de la profondeur Z du point P .

En fait, cette équation décrit le lieu des points de l’image de droite pouvant correspondre à un point p de l’image gauche. Il y a pour chaque point de l’image gauche une telle ligne épipolaire (et réciproquement pour chaque point de l’image de droite il y a une ligne épipolaire gauche).

Passons à caractériser la notion d’épipole et de droites épipolaires.

3.3.1 Droite épipolaire

La droite épipolaire est définie dans un système stéréoscopique et par rapport à un point donné de l’image gauche ou droite.

L’équation de cette droite s’obtient en éliminant Z entre les deux dernières équations et on obtient :

(bz.r2.p − by.r3.p).x(cid:48) + (bx.r3.p − bz.r1.p).y(cid:48) = bx.r2.p − by.r1.p

Il est facile de remarquer que toutes ces lignes épipolaires droites forment un faisceau et le point commun de toutes ces lignes s’appelle l’épipole droit et il est facilement obtenu en remplaçant Z par 0. Ce qui nous donne les coordonnées de l’épipole droit dans le repère de droite comme suit :

x

(cid:48)

e = bx bz

(cid:48)

e = by y bz

Figure 3.4 – Les deux faisceaux des lignes épipolaires et les deux épipoles

26

3.3.2 Définition de l’épipole

Toutes les lignes épipolaires droites (respectivement gauches) forment un faisceau et elles convergent vers un point commun appelé épipole droit (respectivement gauche) comme le montre la figure 10.

Si nous considérons le point e de coordonnées (tx, ty, tz, 1). Nous remarquons que e est une solution de l’équation de la droite de l’épipole quelque soit le point p. e n’est autre que l’épipole.

3.3.3 Rectification épipolaire

La rectification épipolaire consiste à disposer les deux caméras de telle façon que leurs axes optiques z et z(cid:48) sont parallèles et lorsque la droite F F (cid:48) est confondue avec les axes horizontaux y et y(cid:48) des deux caméras. C’est-à-dire, les droites épipolaires doivent être parallèles. De cette manière, la matrice de transformation relative de la caméra gauche par rapport à la caméra de droite devient :

A =

  

1 0 0 0

0 1 0 0

0 0 1 0

  

0 b 0 1

Dans ce cas, l’équation d’une ligne épipolaire droite devient tout simplement :

x(cid:48) = x

Ce qui explique le fait que les lignes épipolaires deviennent parallèles, à un point de l’image de gauche se trouvant sur la ligne x correspond la ligne x’ de l’image de droite. Et que par conséquent, les deux épipoles sont à l’infini. Et qui est bien illustré par la figure 3.5.

Figure 3.5 – La rectification épipolaire ramène le capteur stéréo dans une configuration telle que les lignes épipolaires sont parallèles aux axes Fyet F (cid:48) y(cid:48)

27

Dans cette configuration, les deux épipoles sont rejetés à l’infini.

Le principe de la rectification épipolaire s’illustre comme suit :

– un point P de la scène se projette en p et p(cid:48) sur les images initiales et en q et q(cid:48) sur les images rectifiées. La reconstruction de point P peut être faite à partir de p et p(cid:48), soit à partir de q et puisque les centres de projections restent les mêmes, on peut noter que les paramètres intrinsèques de la projection ne sont pas modifiés. Ce qui change est la relation spatiale entre le repère de calibrage et la caméra. La transformation entre les deux positions de la caméra est une rotation dans l’espace.

La figure 3.6 illustre le principe de la rectification épipolaire.

Figure 3.6 – Le principe de rectification épipolaire

Soit (O, X, Y, Z) le repère de la mire. En se plaçant dans le repère de calibrage, nous obtiendrons après application de la calibration du capteur stéréo, les transformations A et A(cid:48) du repère de calibrage vers les repères des caméras gauche et droite.

A =

(cid:19)

(cid:18) (cid:60) t 1 0

A(cid:48) =

(cid:18) (cid:60)(cid:48) 0

(cid:19)

t(cid:48) 1

Chacune de ces transformations se décompose d’une rotation et d’une translation.

La figure 3.7 illustre comment obtenir l’image rectifiée.

28

Figure 3.7 – Une image rectifiée s’obtient en appliquant à la caméra correspondante une rotation spatiale.

Dans ce que suit, nous terminerons la transformation de repère de calibrage au repère de la caméra gauche dans sa position rectifiée. Etant donné que F est l’origine du repère de la caméra gauche, on aura alors :

Respectivement, pour la caméra de droite :

Ainsi, on a la direction de F F (cid:48) :

−−→ OF + t = 0

(cid:60).

−−→ OF (cid:48) + t(cid:48) = 0

(cid:60)(cid:48).

−−→ F F (cid:48) =

−−→ OF (cid:48) −

−−→ OF

= (cid:60)−1.t − (cid:60)(cid:48)−1.t(cid:48)

Publicité

Cette droite n’est pas modifiée lors de la rectification. Choisissons les axes des caméras rectifiées. Pour la caméra de gauche ces axes sont Fx1, Fy1et F z1. L’axe Fy(cid:48) doit être parallèle à la droite F F (cid:48). On obtient donc po