Download as pdf or txt
Download as pdf or txt
You are on page 1of 123

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/292159029

Implementation of a system for measuring the Distance and the Speed of an


object on the DSP DM6437EVM board

Thesis · July 2009

CITATIONS READS

0 511

1 author:

Belal Alshaqaqi
Université Oran 2
22 PUBLICATIONS   137 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Vidéo Surveillance View project

All content following this page was uploaded by Belal Alshaqaqi on 06 February 2016.

The user has requested enhancement of the downloaded file.


République Algérienne Démocratique et Populaire

Ministère de l’Enseignement Supérieur et de la Recherche Scientifique

Université des Sciences et de la Technologie d’Oran

Mohamed BOUDIAF

FACULTE DE GENIE ELECTRIQUE

DEPARTEMENT D’ELECTRONIQUE

MEMOIRE EN VUE DE L’OBTENTION DU DIPLOME DE MAGISTER

SPECIALITE : ELECTRONIQUE

OPTION : TECHNIQUES DE COMMUNICATIONS MODERNES

PRESENTE PAR

Mr ALSHAQAQI Belal

Mesure de Distance et Vitesse d’un objet mobile


par Système de Vision

SOUTENU LE : 08/07/2009

Devant le jury :

Mr A.LOUKIL. MC.USTO-MB Président

Mr A.OUAMRI Prof.USTO-MB Rapporteur

Mr M.OULD MAMMAR MC.Mostaganem Examinateur

Mr M.KECHE MC.USTO-MB Examinateur


Dédicace

‫إھـــﺪاء‬

‫ﺗ‬

i
‫‪Remerciements‬‬

‫ﺷــــﻜﺮ‬
‫ﻟﻦ ﺗﻔﻲ اﻟﻜﻠﻤﺎت ﻟﻮﺻﻒ ﺷﻌﻮري ﺗﺠﺎه أو ﻟﺌﻚ اﻟﺬﯾﻦ ﻣﻨﺤﻮﻧﻲ وﻗﺘﮭﻢ وﺟﮭﺪھﻢ وﻗﺒﻞ ﻛﻞ ﺷﻲء ﻣﻨﺤﻮﻧﻲ ﻋﺎﺋﻠﺔ ﺛﺎﻧﯿﺔ ﻓﻲ‬
‫ﺑﻠﺪي اﻟﺜﺎﻧﻲ اﻟﺠﺰاﺋﺮ ‪.‬‬

‫ﺷﻜﺮي ﻟﻠﺠﺰاﺋﺮ اﻛﺒﺮ ﻣﻦ ﻛﻞ اﻟﻜﻠﻤﺎت اﻟﺘﻲ ﯾﻤﻜﻨﻨﻲ أن اﻋﺒﺮ ﻋﻨﮭﺎ ‪ ،‬وھﻮ ﻓﻲ اﻟﻤﻘﺎم اﻷول ﻟﻤﺨﺒﺮ اﻹﺷﺎرات‬
‫واﻟﺼﻮر ﻓﻠﻘﺪ أﺗﻤﻤﺖ ﺑﮫ اﻵن ﺷﮭﺎدة اﻟﮭﻨﺪﺳﺔ واﻟﻤﺎﺟﺴﺘﯿﺮ ‪،‬وﻋﻨﺪ ذﻛﺮي ﻟﮭﺬا اﻟﻤﺨﺒﺮ أﺗﻘﺪم ﺑﺸﻜﺮي واﻣﺘﻨﺎﻧﻲ‬
‫ﻷﺳﺘﺎذي وﻣﻌﻠﻤﻲ اﻟﺒﺮوﻓﺴﻮر أوﻋﺎﻣﺮي ﻋﺒﺪ اﻟﻌﺰﯾﺰ ﻓﻠﮫ ﻣﻨﻲ ﻛﻞ اﻻﺣﺘﺮام واﻟﺘﺒﺠﯿﻞ ﻟﻤﺎ ﻣﻨﺤﮫ ﻟﻲ ﻣﻦ ﻋﻠﻢ ووﻗﺖ‬
‫وﻣﺘﺎﺑﻌﺔ وﺗﺸﺠﯿﻊ ﻛﺎن ﻟﮫ دور ﻛﺒﯿﺮ ﻓﻲ إﺗﻤﺎﻣﻲ ﻟﺮﺳﺎﻟﺔ اﻟﻤﺎﺟﺴﺘﯿﺮ ﻓﻲ ھﺬا اﻟﻮﻗﺖ اﻟﻘﺼﯿﺮ ﻛﻤﺎ واﺷﻜﺮه ﻋﻠﻰ ﺛﻘﺘﮫ‬
‫اﻟﺘﻲ ﻣﻨﺤﻨﻲ إﯾﺎھﺎ ﺑﺎﻹﺿﺎﻓﺔ إﻟﻰ ﺗﺴﺨﯿﺮه ﻛﺎﻣﻞ اﻹﻣﻜﺎﻧﯿﺎت اﻟﺘﻲ اﺣﺘﺠﺖ إﻟﯿﮭﺎ إﺿﺎﻓﺔ إﻟﻰ ﺗﻮﻓﯿﺮه اﺣﺪث وﺳﺎﺋﻞ‬
‫اﻟﺒﺤﺚ اﻟﻌﻠﻤﻲ إﺿﺎﻓﺔ ﻟﻮﺳﺎﺋﻞ اﻟﺮاﺣﺔ داﺧﻞ اﻟﻤﺨﺒﺮ ‪ .‬ﻛﻤﺎ و أﺗﻮﺟﮫ ﺑﺸﻜﺮي ﻷﺳﺘﺎذي اﻟﻔﺎﺿﻞ اﻟﺪﻛﺘﻮر ﻛﺎش ﻣﺨﺘﺎر‬
‫اﻟﺬي ﻋﻠﻤﻨﻲ اﻟﻜﺜﯿﺮ و أﺟﺰل ﻟﻲ ﻣﻦ ﻋﻄﺎﺋﮫ اﻟﻮاﻓﺮ وﻣﻨﺤﻨﻲ ﻋﺰﯾﻤﺔ ﻓﻲ ﻟﺤﻈﺎت اﻹﺣﺒﺎط ﻣﻜﻨﺘﻨﻲ ﻣﻦ إﺗﻤﺎم ھﺬا‬
‫اﻟﻌﻤﻞ ﻛﻤﺎ و أرﺷﺪﻧﻲ ﻟﺘﻌﻠﻢ إﺗﻘﺎن اﻟﻌﻤﻞ وﻟﻦ اﻧﺴﻲ ﺻﺒﺮه ﻣﻌﻲ ﻛﻤﺎ واﺷﻜﺮه ﻋﻠﻰ ﻣﺸﺎرﻛﺘﮫ ﻓﻲ ﻣﻨﺎﻗﺸﺔ ھﺬه اﻟﺮﺳﺎﻟﺔ‬
‫‪ .‬وﺷﻜﺮي اﻟﻤﺘﺠﺪد دوﻣﺎ ﻷﺳﺘﺎذي اﻟﺪﻛﺘﻮر ﻣﺪﻧﻲ وﻟﺪ ﻣﻌﻤﺮ اﻟﺬي أﻣﺪﻧﻲ ﺑﺎﻗﺘﺮاﺣﺎﺗﮫ اﻟﺘﻲ ﺳﺎﻋﺪﺗﻨﻲ ﻋﻠﻰ إﺗﻤﺎم اﻟﻌﻤﻞ‬
‫ﺑﺎﻹﺿﺎﻓﺔ ﻟﻤﺘﺎﺑﻌﺘﮫ اﻟﻤﺴﺘﻤﺮة ﻟﻲ أﺛﻨﺎء اﻟﻌﻤﻞ ﻛﻤﺎ واﺷﻜﺮه ﻋﻠﻰ ﻣ ﺸﺎرﻛﺘﮫ ﻓﻲ ﻣﻨﺎﻗﺸﺔ ھﺬه اﻟﺮﺳﺎﻟﺔ‪ .‬وﺧﺎﻟﺺ اﻟﺸﻜﺮ‬
‫واﻟﻌﺮﻓﺎن ﻷﺳﺘﺎذي ﺳﻮﯾﺪاﻧﻲ ﺳﻌﯿﺪ ﻋﻠﻰ ﻛﻞ ﻣﺎ ﻣﻨﺤﮫ ﻟﻲ ﻣﻦ وﻗﺖ وﺟﮭﺪ ﻟﻤﺴﺎﻋﺪﺗﻲ ﻓﻲ ﺗﻮﻓﯿﺮ اﻟﻮﺳﺎﺋﻞ اﻟﺘﻲ اﺣﺘﺠﺖ‬
‫ﻟﮭﺎ إﺿﺎﻓﺔ إﻟﻰ ﺗﺸﺠﯿﻌﮫ اﻟﻤﺴﺘﻤﺮ ﻟﻲ ‪.‬ﻛﻤﺎ وأﺗﻮﺟﮫ ﺑﺸﻜﺮي ﻟﻠﺒﺮوﻓﺴﻮر ﺗﺮﺑﺶ ﻣﻜﻲ ﻟﺘﺸﺠﯿﻌﮫ اﻟﻤﺴﺘﻤﺮ ﻟﻲ‬
‫وﻣﺸﺎرﻛﺘﮫ ﻓﻲ ﻣﻨﺎﻗﺸﺔ ھﺬه اﻟﺮﺳﺎﻟﺔ‪.‬ﻛﻤﺎ وأﺗﻮﺟﮫ ﺑﺸﻜﺮي ﻟﻸﺳﺘﺎذ اﻟﺪﻛﺘﻮر ﻟﻮﻛﯿﻞ ﻟﻤﺸﺎرﻛﺘﮫ ﻓﻲ ﻣﻨﺎﻗﺸﺔ ھﺬه اﻟﺮﺳﺎﻟﺔ‪.‬‬

‫وﻛﻞ اﻟﺸﻜﺮ ﻟﻸﺳﺘﺎذ اﻟﺒﺮوﻓﺴﻮر ﺑﻦ راﺷﺪ ﻧﺼﺮاﻟﺪﯾﻦ و ﻟﻸﺳﺘﺎذ اﻟﺪﻛﺘﻮر ﻗﺎدري ﻣﺤﻤﺪ وﻛﻞ ﻣﻦ اﻷﺳﺘﺎذة ‪:‬‬
‫ﺑﺮوﻓﺴﻮر ﺑﻠﻤﻜﻲ و د ﺑﻮﻏﺎﻧﻤﻲ و د ﺑﻦ ﺧﺪة و د ﺣﻤﺎدة و د ﺑﻠﻌﺠﯿﻦ و د رﯾﻤﺎ و ﻛﻞ أﺳﺎﺗﺬﺗﻲ اﻟﺬﯾﻦ ﻛﺎﻧﻮا ﻋﻮﻧﺎ‬
‫وﻧﺒﺮاﺳﺎ ﻟﻲ ‪.‬‬

‫وﺷﻜﺮي ﻟﺰﻣﻼﺋﻲ ﻓﻲ ﻣﺨﺒﺮ اﻹﺷﺎرة واﻟﺼﻮر‪ :‬ﻗﺎدري و أوﻋﺎﻣﺮي وﺑﺮﯾﺰﯾﻨﻲ وﺑﻦ ﻛﺮﻧﻮ و ﻣﻌﺰوز و ﺟﻮب و‬
‫ﺑﻮﻣﺪﯾﻦ و ﻣﺎش و دﺣﻤﺎﻧﻲ و ﯾﺤﯿﺎوي وﺑﻠﻮدﻧﯿﻦ و ﺣﻨﻔﻲ و اﯾﺖ درﻧﺎ و ﺑﻦ راﺑﺢ و ﻟﺪاز وﻛﻞ اﻟﺰﻣﻼء اﻷﻓﺎﺿﻞ ‪.‬‬

‫واﺷﻜﺮ ﻣﺼﻠﺤﺔ اﻷﻣﻦ ﺑﺠﺎﻣﻌﺔ اﻟﻌﻠﻮم واﻟﺘﻜﻨﻮﻟﻮﺟﯿﺎ ﻟﻤﺴﺎﻋﺪﺗﮭﺎ ﻓﻲ ﺗﺴﮭﯿﻞ اﻟﻌﻤﻞ داﺧﻞ اﻟﺤﺮم اﻟﺠﺎﻣﻌﻲ‪.‬‬

‫ﻛﻤﺎ واﺷﻜﺮ أﺻﺪﻗﺎﺋﻲ اﻟﺬﯾﻦ ﺳﺎﻧﺪوﻧﻲ ‪ :‬ﺑﮭﺎء اﻟﺒﺸﯿﺘﻲ و ﺳﻌﯿﺪ أوﺳﻠﯿﻢ وﻣﺎﻟﻚ وﻣﺤﺮز و اﺑﻮھﻮﻟﻲ و اﻟﺰﯾﻨﻲ و ﻗﺸﻄﺔ‬
‫وﻋﺎدل وﻛﻞ أﺻﺪﻗﺎﺋﻲ اﻟﻤﻤﯿﺰﯾﻦ ﺣﻘﺎ ‪.‬‬

‫أﻣﺎ أو ﻟﺌﻚ اﻟﺬﯾﻦ ﻟﻢ ﯾﻨﺘﻈﺮوا ﯾﻮﻣﺎ ﻣﻨﻲ ﻛﻠﻤﺔ ﺷﻜﺮ‪ ،‬ﻓﺄﻗﻮل ﻟﮭﻢ‪ :‬أﺗﻤﻨﻰ أن ﺗﻜﻮﻧﻮا ﻓﺨﻮﯾﻦ ﺣﻘﺎ ﺑﻲ وﻋﻠﻰ وﺟﮫ‬
‫اﻟﺨﺼﻮص أﺑﻲ و أﻣﻲ اﻟﺬﯾﻦ اﻗﺒﻞ اﻷرض ﺗﺤﺖ ﻗﺪﻣﯿﮭﻤﺎ‪ ،‬و إﺧﻮاﻧﻲ ﻋﻤﺮ و إﺑﺮاھﯿﻢ واﺣﻤﺪ وﻓﺘﺤﻲ واﻟﻌﺰﯾﺰة ﻋﻠﻰ‬
‫ﻗﻠﺒﻲ آﯾﺔ‪ .‬وﻣﺮﯾﻢ اﻟﺘﻲ ﻟﻦ ﺗﺴﺘﻄﯿﻊ ﻛﻠﻤﺎﺗﻲ إﯾﻔﺎﺋﮭﺎ ﺣﻘﮭﺎ ﻋﻠﻰ ﻛﻞ ﻣﺎ ﺑﺬﻟﺘﮫ ﻣﻦ اﺟﻠﻲ ﻣﻦ اﺟﻞ إﺗﻤﺎم رﺳﺎﻟﺔ اﻟﻤﺎﺟﺴﺘﯿﺮ‪.‬‬

‫‪ii‬‬
Abréviations

CCD Charge Coupled Devices


CCS Code Composer Studio
DAC Digital-to-Analog Converters
DM Digital Media
DMA Direct Memory Access
DSP Digital Signal Processor
EMIF External Memory Interface
EVM Evaluation Module
IDMA Internal DMA
JTAG Joint Test Action Group
MACS Multiply-Accumulate per Cycle
McBSP Multichannel Buffered Serial Ports
MIPS Million Instructions Per Second
MMACS Millions MACS
NCC Normalized Cross Correlation
NTSC National Television System Committee
OSD On Screen Display
PAL Phase Alternating Line
PCI Peripheral Component Interconnec
PHY PHYisical layer device
PLL Phase Locked Loop
PM Processus de Mesure
RAM Random Access Memory
SAD Sum of Absolute Differences
SSD Sum of Squared Differences
TI Texas Instruments
TSI Transport Stream Interface
UART Universal Asynchronous Receiver/Transmitter
VDCTL Video Display Control Register
VENC Video ENCoder

iii
VLIW Very Long Instruction Word
VPBE Video Processing Back-End
VPCTL Video Port Control Register
VPFE Video Processing Front-End
VPSS Video Processing Subsystem
ZNCC Zero mean Normalized Cross Correlation
ZSAD Zero mean Sum of Absolute Differences
ZSSD Zero mean Sum of Squared Differences

iv
Notations
Repère
Repère dans lequel Etiquetage temporel de destination
l'entité est exprimée

 t 
Mr R

Identifiant de l'image
point 3-D (majuscule) Repère Matrice de
point 2-D (minuscule) (dans le cas de la stéréo)
d'origine transformation

 Les vecteurs  Les matrices

M : un point 3D de coordonnées (X Y Z) t K : désigne la matrice des paramètres


intrinsèques (𝜶𝜶𝒙𝒙 =kx f, 𝜶𝜶𝒚𝒚 =ky f, cx, cy),
m : un point 2D de coordonnées (x y) t
f : la focale,
 Les repères kx , ky : les facteurs d’échelle horizontal
et vertical (en pixel /unité de longueur),
Rw : repère du monde tridimensionnel.
cx, cy : les coordonnées du point
Rc : repère de caméra bidimensionnel. principal
R : désigne la matrice de rotation,

v
Tables des matières

Dédicace .......................................................................................................................... i

Remerciements .............................................................................................................. ii

Abréviations.................................................................................................................. iii

Notations ........................................................................................................................ v

Liste des figures ............................................................................................................ vi

Liste des tableaux ......................................................................................................... xi

Introduction générale ................................................................................................... 1

Chapitre 1

Modélisation et Calibration d’un banc stéréoscopique


1.1 Introduction........................................................................................................... 3

1.2 Modélisation d’une caméra ................................................................................ 3

1.2.1 La fonction de projection perspective linéaire ............................................... 4


1.2.2 Distorsions géométriques ............................................................................... 5
1.2.3 Paramètres extrinsèques ................................................................................. 7
1.2.4 La matrice de projection ................................................................................ 8
1.3 Calibrage d’une caméra ........................................................................................ 8

1.3.1 La calibration hybride .................................................................................. 10


1.4 Modélisation d’un banc de stéréovision ............................................................. 12

1.4.1 L’objectif de l’emploi de deux caméras...................................................... 12


1.4.2 La géométrie épipolaire ............................................................................ 13
1.5 Calibrage du banc de stéréovision ...................................................................... 15

1.6 Conclusion .......................................................................................................... 15


Chapitre 2

La mise en correspondance stéréoscopique


2.1 Introduction......................................................................................................... 16

2.2 Algorithmes de mise en correspondance ............................................................ 16

2.3 Contraintes pour la mise en correspondance ...................................................... 19

2.3.1 Notion de contrainte ..................................................................................... 19


2.3.2 Contraintes épipolaire .................................................................................. 19
2.3.3 Contrainte d’unicité...................................................................................... 19
2.3.4 Contrainte d’ordre ........................................................................................ 20
2.3.5 Contrainte de symétrie ................................................................................. 21
2.4 Conclusion .......................................................................................................... 23

Chapitre 3

Mesure de distance et vitesse d’un objet mobile


3.1 Introduction......................................................................................................... 24

3.2 Détection des objets mobiles .............................................................................. 25

3.3 Mesure de distance et vitesse .............................................................................. 26

3.3.1 Approche de la mono-vision ........................................................................ 26


3.3.1.1 Méthode du champ de vision .................................................................... 26
3.3.1.2 Résultats ................................................................................................... 29
3.3.2 Approche de la stéréovision ......................................................................... 33
3.3.2.1 Description du processus stéréoscopique ................................................. 34
3.3.2.2 Résultats.................................................................................................... 39
3.4 Conclusion ......................................................................................................... 42
Chapitre 4

Implémentation sur la carte DSP DM4637 EVM


4.1 Introduction......................................................................................................... 48

4.1.1 La famille du DSP TMS320 ........................................................................ 48


4.1.2 La famille du DSP TMS320C6000 .............................................................. 48
4.1.3 Architecture du DSP TMS320C64x/C64x+ ............................................... 48
4.2 Processeur de Médias Digitales TMS320DM6437 ............................................ 54

4.2.1 Fonctionnement du DM6437 ....................................................................... 55


4.2.2 Sous-système du traitement de vidéo (VPSS) ............................................. 57
4.2.3 Port Vidéo au Port Vidéo de Communication du TMS320DM64x ............ 59
4.3 Implémentation sur la carte TMS320 DM6437 EVM ....................................... 71

4.4 Conclusion .......................................................................................................... 74

Conclusions et perspectives ........................................................................................ 75

Bibliographie ............................................................................................................... 77

Annexe A ...................................................................................................................... 80

Le détecteur de Harris .............................................................................................. 80

Annexe B ..................................................................................................................... 82

Les résultats expérimentaux.......................................................................................... 82


Liste des figures

Figure 1.1: Le modèle sténopé : la projection m du point M est définie par


l’intersection de la droite (C, M) et du plan image I. ........................................... 4
Figure 1.2 : Les différents types de distorsions. ................................................... 6
Figure 1.3 : Le changement de repère est une transformation rigide
composée d’un rotation puis d’une translation. .................................................... 8
Figure 1.4 : Exemple d’une séquence de 9 images d’une mire de calibrage...... 11
Figure 1.5 : Exemple sur le choix des points de calibration. ............................. 11
Figure 1.6 : Extraction de troisième dimension par deux caméras ..................... 12
Figure 1.7 : La géométrie épipolaire................................................................... 13
Figure 2.1 : Exemple sur la fenêtre de corrélation. ............................................ 16
Figure 2.2 : Contrainte d’unicité . ....................................................................... 20
Figure 2.3 : Contrainte d’ordre ........................................................................... 21
Figure 2.4 : Contrainte de symétrie (vérification bidirectionnelle) . .................. 22
Figure 3.1 : Processus de mesure de distance et vitesse d’un objet mobile. ...... 24
Figure 3.2 : Détection des objets mobiles par la méthode d’inter-frames. ......... 25
Figure 3.3 : Le calcul du champ de vision. ......................................................... 27
Figure 3.4 : Calcul de distance d’un objet par la formule du champ de vision. . 28
Figure 3.5 : Mesure d’une distance proche d’un véhicule détecté. .................. 31
Figure 3.6 : Mesure d’une distance éloignée d’un véhicule détecté .................. 31
Figure 3.7 : Mesure de distance et vitesse par la méthode du champ de vision. 32
Figure 3.8 : Processus stéréoscopique de mesure de distance et vitesse d’un
objet mobile. ....................................................................................................... 33
Figure 3.9 : Calcul de la zone d’intérêt............................................................... 34
Figure 3.10 : Extraction des contours par Sobel dans la zone. .......................... 35
Figure 3.11 : Détection des coins par le détecteur de Harris. ............................. 35
Figure 3.12 : Le suivi du pixel par corrélation (la colonne gauche), la mise en
correspondance (colonne gauche-droite) ............................................................ 36
Figure 3.13 : Le principe du calcul de la distance D d’un objet par
stéréovision. ........................................................................................................ 37
Figure 3.14 : Système de mesure stéréoscopique et ses équipements........... 39
vi
Figure 3.15 : Mesure d’une distance proche d’un véhicule détecté par
stéréovision. ........................................................................................................ 40
Figure 3.16 : Mesure d’une distance éloignée d’un véhicule détecté par
stéréovision. ........................................................................................................ 40
Figure 3.17 : Mesure de distance et vitesse par le processus
stéréoscopique. .................................................................................................. 41
Figure 4.1 : La famille du DSP TMS320C6000. ................................................ 49
Figure 4.2 : Le schéma fonctionnel du DSP TMS320C64x+. ............................ 50
Figure 4.3 : Les voies de données de CPU TMS320C64x+™. .......................... 53
Figure 4.4 : Processeur de Médias Digitales TMS320DM6437. ........................ 54
Figure 4.5 : Schéma fonctionnel du TMS320DM6437. .................................... 56
Figure 4.6 : Diagramme du sous-système du traitement de vidéo (VPSS). ....... 57
Figure 4.7 : Système vidéo de base Digital. ....................................................... 59
Figure 4.8 : Software pilote du port vidéo. ......................................................... 64
Figure 4.9: Zoomer dans le vue hardware : Voyage d’un frame [TI.aug.03]..... 66
Figure 4.10 : Fenêtre OSD mode frame.............................................................. 67
Figure 4.11 : Fenêtre OSD mode champ. ........................................................... 68
Figure 4.12 : Arrangement des pixels dans l’affichage. ..................................... 69
Figure 4.13 : Format de données vidéo- YUV422 [TI.dec.07]. ......................... 70
Figure 4.14 : Représentation des couleurs RGB et YCrCb. ............................... 70
Figure 4.15: Système de mesure par le DSP DM6437 EVM. ............................ 71
Figure 4.16: Mesure de distance proche d’un véhicule à une vitesse = 20
Km/h. .................................................................................................................. 72
Figure 4.17: Mesure de distance d’un véhicule éloignée à une vitesse = 20
Km/h. .................................................................................................................. 73
Figure B.1: Vitesse en fonction de la distance (h=1.28 m, v=20 ± 2 Km/h). ..... 84
Figure B.2: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=20 ±
2 Km/h). .............................................................................................................. 84
Figure B.3: Distance mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=20 ± 2 Km/h). ............................................................................................ 85
Figure B.4: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=20 ± 2 Km/h. .............................................................................................. 85
Figure B.5: Vitesse en fonction de la distance (h=1.28 m, v=40 ± 2 Km/h). ..... 86

vii
Figure B.6: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=40 ±
2 Km/h). .............................................................................................................. 86
Figure B.7: Distance mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=40 ± 2 Km/h). ............................................................................................ 87
Figure B.8: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=40 ± 2 Km/h). ............................................................................................ 87
Figure B.9: Vitesse en fonction de la distance (h=1.28 m, v=60 ± 3 Km/h). ..... 88
Figure B.10: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=60
± 3 Km/h). ........................................................................................................... 88
Figure B.11: Distance mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=60 ± 3 Km/h). ............................................................................................ 89
Figure B.12: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=60 ± 3 Km/h). ............................................................................................ 89
Figure B.13: Vitesse en fonction de la distance (h=1.28 m, v=80 ± 4 Km/h). ... 90
Figure B.14: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=80
± 4 Km/h). ........................................................................................................... 90
Figure B.15: Distance mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=80 ± 4 Km/h). ............................................................................................ 91
Figure B.16: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=80 ± 4 Km/h). ............................................................................................ 91
Figure B.17: Vitesse en fonction de la distance (h=1.28 m, v=100 ± 5 Km/h). . 92
Figure B.18: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=100
± 5 Km/h). ........................................................................................................... 92
Figure B.19: Distance mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=100 ± 5 Km/h). .......................................................................................... 93
Figure B.20: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28
m, v=100 ± 5 Km/h). .......................................................................................... 93
Figure B.21: Vitesse en fonction de la distance (h=2.2 m, v=40 ± 2 Km/h). .... 94
Figure B.22: Distance mesurée et son équivalant dans l’image (h=2.2 m, v=40 ±
2 Km/h). .............................................................................................................. 94
Figure B.23: Distance mesurée en fonction du numéro du frame (temps) (h=2.2
m, v=40 ± 2 Km/h). ............................................................................................ 95
Figure B.24: Vitesse mesurée en fonction du numéro du frame (temps) (h=2.2
m, v=40 ± 2 Km/h). ............................................................................................ 95
Figure B.25: Vitesse en fonction de la distance (h=2.2 m, v=80 ± 4 Km/h). .... 96

viii
Figure B.26: Distance mesurée et son équivalant dans l’image (h=2.2 m, v=80 ±
4 Km/h). .............................................................................................................. 96
Figure B.27: Distance mesurée en fonction du numéro du frame (temps) (h=2.2
m, v=80 ± 4 Km/h). ............................................................................................ 97
Figure B.28: Vitesse mesurée en fonction du numéro du frame (temps) (h=2.2
m, v=80 ± 4 Km/h). ............................................................................................ 97
Figure B.29: Vitesse en fonction de la distance (h=2.2 m, v=110 ± 5 Km/h). .. 98
Figure B.30: Distance mesurée en fonction du numéro du frame (temps) (h=2.2
m, v=110 ± 5 Km/h). .......................................................................................... 98
Figure B. 31: Vitesse en fonction de la distance (h=1.31 m, v=20 ± 2 Km/h, Ф
=10 °). ................................................................................................................. 99
Figure B.32: Distance mesurée et son équivalant dans l’image (h=1.31 m, v=20
± 2 Km/h, Ф =10 °). ............................................................................................ 99
Figure B.33: Distance mesurée en fonction du numéro du frame (temps) (h=1.31
m, v=20 ± 2 Km/h, Ф =10 °). ........................................................................... 100
Figure B.34: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.31
m, v=20 ± 2 Km/h, Ф =10 °). ........................................................................... 100
Figure B.35: Vitesse en fonction de la distance (h=1.31 m, v=50 ± 2 Km/h, Ф
=10 °). ............................................................................................................... 101
Figure B.36: Distance mesurée et son équivalant dans l’image (h=1.31 m, v=50
± 2 Km/h, Ф =10 °). .......................................................................................... 101
Figure B.37: Distance mesurée en fonction du numéro du frame (temps) (h=1.31
m, v=50 ± 2 Km/h, Ф =10 °). ........................................................................... 102
Figure B.38: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.31
m, v=50 ± 2 Km/h, Ф =10 °). ........................................................................... 102
Figure B.39: Vitesse en fonction de la distance par stéréovision (v=20±2
Km/h) . .............................................................................................................. 103
Figure B.40: Distance mesurée en fonction du numéro du frame (temps) par
stéréovision (v=20±2 Km/h). ............................................................................ 103
Figure B.41: Vitesse mesurée en fonction du numéro du frame (temps) par
stéréovision (v=20±2 Km/h). ............................................................................ 104
Figure B.42: Vitesse en fonction de la distance par stéréovision (v=50±2
Km/h). ............................................................................................................... 104
Figure B.43: Distance mesurée en fonction du numéro du frame (temps) par
stéréovision (v=50±2 Km/h). ............................................................................ 105

ix
Figure B.44: Vitesse mesurée en fonction du numéro du frame (temps) par
stéréovision (v=20±2 Km/h). ............................................................................ 105
Figure B.45: Implémentation du l’algorithme de détection. ............................ 106
Figure B.46: Implémentation du l’algorithme du Sobel. .................................. 107
Figure B.47: Mesure de distance d’un piéton éloigné. .................................... 107
Figure B.48: Mesure de distance d’un piéton proche. .................................... 108

x
Liste des tableaux

Tableau 3.1 : Calcul de la distance par l’approche du champ de vision. ........ 29


Tableau 3.2 : Mesure de vitesses aux différentes distances D calculées par la
méthode du champ de vision. .......................................................................... 30
Tableau 4.1 : Le fonctionnement du mode capture vidéo. .............................. 62
Tableau 4.2 : Le fonctionnement du mode affichage vidéo. ........................... 63

xi
Introduction générale

La complexité croissante de l'environnement routier et le besoin d'amélioration de


la sécurité routière expliquent un nombre important de travaux sur l'aide à la conduite.
La voiture du futur devra aider le conducteur à mieux comprendre son environnement
pour l'aider dans ses décisions sans jamais le déresponsabiliser. Elle devra donc être
capable de percevoir aussi bien et même mieux son environnement que ne peut le faire
l'être humain seul et pallier ses déficiences.

L’objectif majeur de cette thèse est la mesure de distance et vitesse d’un objet
mobile par un système de vision passif. L’utilisation d’un tel système comporte de
nombreux aspects, allant du calibrage aux techniques de suivi. Pour des raisons
pratiques évidentes, nous avons scindé le système en une succession de processus.
Ainsi découpé, le processus de détection et de suivi des cibles comporte les aspects
suivants :

1. Le calibrage,
2. La mise en correspondance stéréoscopique,
3. La mesure de distance et vitesse des obstacles ou des cibles,
4. Implémentation sur la carte DSP (DM6437 EVM).

• Chapitre 1 : Modélisation et Calibration d’un banc de stéréovision


Pour pouvoir utiliser un système de vision passif comme outil de mesure, il
est indispensable d’en connaître les propriétés physiques et géométriques. Le
calibrage consiste à utiliser le système, en environnement contrôlé ou non, afin d’en
déduire ses propres paramètres. La précision avec laquelle les paramètres sont estimés
influents sur le fonctionnement finale du système.
Dans ce chapitre traitant le calibrage, nous commençons par la modélisation et le
calibrage d’une caméra prenant en compte les principales distorsions
géométriques liées à son système optique. Puis, nous modélisons un banc de
stéréovision, composé de deux caméras liées rigidement.

1
• Chapitre 2 : Mise en correspondance stéréoscopique
La mise en correspondance stéréoscopique, aussi appelée appariement, est le
processus qui fourni, pour chaque point d’une image de la paire, son correspondant
dans l’autre image. C’est une étape clef du processus de suivi. En première partie du
chapitre, nous présentons le principe général d’appariement. En deuxième partie, nous
verrons les contraintes liées à ce processus.

• Chapitre 3 : Mesure de distance et vitesse d’un objet mobile.


Les capteurs utilisés en vision ne permettent pas une mesure directe de la vitesse. Il
faut donc mettre en œuvre des méthodes spécifiques permettant non seulement de
mesurer le déplacement 3-D, mais aussi de suivre une cible au cours du temps.
Dans ce chapitre, nous commençons par décrire le processus de détection des objets
mobiles, pour ensuite mesurer la distance et la vitesse de ceux-ci par une approche de
la mono-vision et d’autre de la stéréovision.

• Chapitre 4 : Implémentation sur la carte DSP.


Dans ce chapitre, nous implémentons les algorithmes de détection, suivi, mesure de
distance et vitesse sur une carte DSP (DM6437 EVM).

2
Chapitre 1
Modélisation et Calibration d’un banc stéréoscopique

Table des matières

1.1 Introduction........................................................................................................... 3

1.2 Modélisation d’une caméra ................................................................................ 3

1.2.1 La fonction de projection perspective linéaire ............................................... 4


1.2.2 Distorsions géométriques ............................................................................... 5
1.2.3 Paramètres extrinsèques ................................................................................. 7
1.2.4 La matrice de projection ................................................................................ 8
1.3 Calibrage d’une caméra ........................................................................................ 8

1.3.1 La calibration hybride .................................................................................. 10


1.4 Modélisation d’un banc de stéréovision ............................................................. 12

1.4.1 L’objectif de l’emploi de deux caméras...................................................... 12


1.4.2 La géométrie épipolaire ............................................................................ 13
1.5 Calibrage du banc de stéréovision ...................................................................... 15

1.6 Conclusion .......................................................................................................... 15


Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

1.1 Introduction
Dans un processus de vision, il est utile de connaitre la physique de l’instrument qui
fournit les données de base. Cette connaissance permet en particulier de calculer la
position exacte des éléments de la scène à partir d’une image. La calibration consiste à
obtenir les paramètres du modèle de la caméra. Calibrer une caméra consiste à
déterminer ses paramètres intrinsèques et sa position et orientation par rapport au
référentiel du monde. Calibrer un banc de stéréovision, constitué de deux caméras,
consiste à déterminer les paramètres intrinsèques de chacune des caméras, et la
position et orientation relative de ces deux capteurs. Ces paramètres du calibrage sont
nécessaires pour calculer, par triangulation, les coordonnées tridimensionnelles d’un
point correspondant à des pixels appariés dans les deux images.

Dans ce chapitre, nous commençons par la modélisation d’une caméra prenant


en compte les principales distorsions géométriques liées à son système optique,
puis, nous présentons une méthode du calibrage d’une caméra, ensuite, nous
modélisons un banc de stéréovision, composé de deux caméras liées rigidement,
finalement, nous avons étudié le calibrage du banc stéréoscopique.

1.2 Modélisation d’une caméra


Une caméra est un système optronique composé de trois éléments : le premier est la
source (objectif), le deuxième est un élément optique placé entre la source et le
détecteur pour focaliser l’image d’un objet sur ce détecteur, le troisième est le
détecteur qui est un dispositif à transfert de charges [gar.01]. Dans cette section, nous
avons étudié la modélisation géométrique de caméra, conduisant au modèle de
projection perspective dit sténopé, ou trou d’épingle (pinhole), qui associé à un
modèle de distorsion, propose un bon compromis de précision et de simplicité.

Le modèle sténopé est séparé en une partie intrinsèque (interne à la caméra) et une
partie extrinsèque (externe à la caméra). Dans la partie intrinsèque nous développons
la formulation de la fonction de projection, et aussi de distorsion. La pose (position
et orientation) de l’appareil de prise de vue modélisée par la partie extrinsèque du
modèle sténopé.

3
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

1.2.1 La fonction de projection perspective linéaire


Comme le montre la figure 1.1, le modèle sténopé est constitué d’un plan
image I et d’un centre optique C . La principale caractéristique de ce modèle est
que tous les rayons optiques issus d’un point de la scène passent par un unique
point C. L’intersection du rayon optique avec le plan image I définit le point projeté
m.

Avec un système de coordonnées homogènes, la fonction de projection


transformant M en un point de l’image m est modélisée par la matrice K telle que.
𝑚𝑚~𝐾𝐾𝐾𝐾 (1.1)

Figure 1.1: Le modèle sténopé : la projection m du point M est définie par


l’intersection de la droite (C, M) et du plan image I.

où les points m et M sont exprimés en coordonnées homogènes. Le signe ~


signifie que m est égal à un facteur d’échelle près. La fonction se compose
d’une étape de projection et d’une étape de conversion d’unité. La première étape
consiste à projeter le point 3D M dans le plan rétinien (équivalent au plan image)
comme suit :

𝑓𝑓 0 0 0
𝑚𝑚𝑟𝑟 ~ �0 𝑓𝑓 0 0� 𝑀𝑀 (1.2)
0 0 1 0

4
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

L’unique paramètre de cette fonction est la distance focale f. Le point 2D m r obtenu


est exprimé par les mêmes unités que M. Les coordonnées de ce point dans le plan
image (qui est un échantillonnage en pixels du plan rétinien) et les coordonnées
du même point dans le plan rétinien sont liées par l’équation suivante :

𝑘𝑘𝑥𝑥 0 𝑐𝑐𝑥𝑥
𝑚𝑚 ~ � 0 𝑘𝑘𝑦𝑦 𝑐𝑐𝑦𝑦 � 𝑚𝑚𝑟𝑟 (1.3)
0 0 1

où (c x , c y ) sont les coordonnées du point principal (à l’intersection de l’image et de


l’axe optique), k x et k y les facteurs d’échelle horizontal et vertical (en pixel /unité de
longueur). L’application consécutive des équations 1.2 et 1.3 donne la forme de la
matrice K de l’équation 1.1 :
𝑘𝑘𝑥𝑥 0 𝑐𝑐𝑥𝑥 𝑓𝑓 0 0 0 𝛼𝛼𝑥𝑥 0 𝑐𝑐𝑥𝑥 0
𝐾𝐾 = � 0 𝑘𝑘𝑦𝑦 𝑐𝑐𝑦𝑦 � �0 𝑓𝑓 0 0� = � 0 𝛼𝛼𝑦𝑦 𝑐𝑐𝑦𝑦 0� (1.4)
0 0 1 0 0 1 0 0 0 1 0

Les paramètres 𝜶𝜶𝒙𝒙 =k x f, 𝜶𝜶𝒚𝒚 =k y f, c x et c y définissent la partie intrinsèque du


modèle sténopé. Ces paramètres qui vont être déterminés par la calibration.

1.2.2 Distorsions géométriques


Dans un système optique centré, un rayon n’intersecte généralement pas le plan
image. Ces écarts à l’optique paraxiale ne sont plus négligeables si la distance du point
objet à l’axe optique est grande et les angles d’inclinaisons des rayons incidents ne
sont plus petits [pér94]. De plus, il est difficile de réaliser un système optique dont
toutes les lentilles sont parfaitement parallèles, leurs centres optiques parfaitement
colinéaires, et le plan image parallèle au plan du détecteur. Dans ce cas, le modèle
sténopé ne suffit plus à décrire le comportement de la caméra. Il est donc nécessaire
de prendre en compte ces défauts dans le modèle de caméra. L’approche la plus
utilisée consiste à modéliser les distorsions par un modèle paramétrique qui vient
corriger les coordonnées (x, y) du modèle sténopé (équation 2.1) :

𝑥𝑥𝑑𝑑 = 𝑥𝑥 + 𝛿𝛿𝑥𝑥 (𝑥𝑥, 𝑦𝑦) (1.5)

𝑦𝑦𝑑𝑑 = 𝑦𝑦 + 𝛿𝛿𝑦𝑦 (𝑥𝑥, 𝑦𝑦) (1.6)

5
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

où (x, y) sont les coordonnées sans distorsion et (x d , y d ) sont les coordonnées avec
distorsion (le point réellement observé). Comme l’indique les équations 1.5 et 1.6,
l’erreur de positionnement dépend de la position du point. Les défauts les plus
fréquemment rencontrés avec des objectifs standards sont la distorsion radiale, la
distorsion de décentrage, et la distorsion prismatique [WCH92] comme le montre la
figure (1.2). Le plus souvent seule la distorsion radiale est traitée [Tsa87, Bey92,
Zha00]. Ce type de distorsion provient essentiellement d’imperfections dans la
courbure de la lentille.

Distorsion radiale Distorsion de décentrage Distorsion prismatique

Figure 1.2 : Les différents types de distorsions.

Les fonctions de distorsion radiale sont approximées par les fonctions polynomiales
δx et δy. Elles s’écrivent comme suit :

𝛿𝛿𝑥𝑥 (𝑥𝑥, 𝑦𝑦) = (𝑥𝑥 − 𝑐𝑐𝑥𝑥 ) � 𝑘𝑘𝑖𝑖 (𝑥𝑥 2 + 𝑦𝑦 2 )𝑖𝑖 (1.7)


𝑖𝑖=1

𝛿𝛿𝑦𝑦 (𝑥𝑥, 𝑦𝑦) = �𝑦𝑦 − 𝑐𝑐𝑦𝑦 � � 𝑘𝑘𝑖𝑖 (𝑥𝑥 2 + 𝑦𝑦 2 )𝑖𝑖 (1.8)


𝑖𝑖=1

où k i sont les coefficients de distorsions, et (c x , c y ) les coordonnées du centre optique.


En pratique, une approximation d’ordre 3 (i = {1, 2, 3}) suffit à modéliser la distorsion
radiale de la plupart des caméras.

6
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

1.2.3 Paramètres extrinsèques


Les paramètres extrinsèques du modèle expriment une transformation rigide liée à
la pose de la caméra par rapport au repère monde (R W ). Dans la partie
intrinsèque, la fonction de projection perspective (équation 1.1) présuppose que le
système de coordonnées, dans lequel sont exprimés les points 3D, est centré sur la
caméra (C). Par la suite, nous aurons exprimé les coordonnées des points 3D dans un
référentiel R W (système, voiture, monde, etc), différent du R C. Pour pouvoir
appliquer la fonction de projection, il est nécessaire de transformer les
coordonnées M de manière à ce qu’elles soient exprimées dans le repère caméra R C .
𝑤𝑤 𝐶𝐶
Nous notons 𝑀𝑀 un point exprimé dans le repère monde, et 𝑀𝑀 le même point
exprimé dans le repère de la caméra.

Quelle que soit la transformation, elle peut toujours être décomposée en une
rotation suivie d’une translation figure (1.3). L’ordre dans lequel sont appliquées ces
deux opérations est très important car l’opération n’est pas commutative. La fonction
de rotation est notée R et la fonction de translation est notée t. Un point initialement
exprimé dans le repère R W est converti dans le système de coordonnées C par la
transformation suivante :
𝑤𝑤
𝑀𝑀 = 𝑤𝑤𝐶𝐶 𝑅𝑅 𝐶𝐶 𝑀𝑀 + 𝑤𝑤𝐶𝐶 𝑡𝑡 (1.9)

où t est un vecteur à trois composantes, et R est une matrice de taille 3*3 de la forme
suivante :

𝑅𝑅11 𝑅𝑅12 𝑅𝑅13


𝑅𝑅 = �𝑅𝑅21 𝑅𝑅22 𝑅𝑅23 � (1.10)
𝑅𝑅31 𝑅𝑅32 𝑅𝑅33

La transformation rigide correspondante (rotation et translation) peut s’écrire sous la


forme suivante :
𝑅𝑅 𝑡𝑡
𝑇𝑇 = � � (1.11)
0𝑇𝑇 1

7
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

Figure 1.3 : Le changement du repère est une transformation rigide composée


d’un rotation puis d’une translation.

1.2.4 La matrice de projection


En combinant les équations (1.4) et (1.11), nous obtenons la matrice de projection
pour une caméra avec des paramètres intrinsèques et des paramètres extrinsèques
données par la relation suivante :

𝑥𝑥 𝛼𝛼𝑥𝑥 0 𝑐𝑐𝑥𝑥 𝑋𝑋
0 [𝑅𝑅] [𝑡𝑡] 𝑌𝑌
�𝑦𝑦� = � 0 𝛼𝛼𝑦𝑦 𝑐𝑐𝑦𝑦 0� � 𝑇𝑇 �� � (1.12)
[0 ] 1 𝑍𝑍
1 0 0 1 0
1
Ceci nous permet donc de définir une matrice de projection 3×4 d’un point de
l’espace Euclidien 3D de la scène, exprimé dans le repère du monde, en un point de
l’image, exprimé dans le repère 2D.

1.3 Calibrage d’une caméra


Après la description d’un modèle de caméra pour notre application, il importe de
savoir de quelle façon il est possible d’accéder aux valeurs des paramètres du modèle.
C’est le rôle de la phase de calibration. Nous pouvons distinguer trois techniques
principales de calibration :

• La calibration photogramétrique (la calibration classique): La calibration de


la caméra est effectuée en observant un objet (la mire) de calibration dont la

8
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

géométrie dans l’espace euclidien est connue avec une bonne précision. Cette
méthode permet d’aboutir à une calibration très fine. La mire de calibration se
compose généralement de deux ou trois plans orthogonaux entre eux,
supportant un ensemble de points facilement et précisément repérables. Une
alternative consiste à utiliser un même plan qu’on déplace d’une façon connue
avec précision entre chaque prise de vue [Tsa.87].
• La calibration hybride : La technique proposée dans cette catégorie nécessite
l’utilisation d’une mire plane dont les coordonnées bidimensionnelles de
certain points caractéristiques sont connues, basée sur les homographies
définissant les transformations entre les plans de la mire (dans ses différentes
positions successives) et le plan de la caméra (ou des caméras) à calibrer
[Zha.00]. La caméra ou la mire peuvent être déplacées et il n’est pas nécessaire
de connaître à priori les déplacements relatifs effectués. Cette approche se situe
entre la calibration photogramétrique et l’auto calibration puisque la
connaissance préalable de certaines informations dimensionnelles relatives à la
mire est requise et que cette méthode utilise par ailleurs des propriétés de la
géométrie projective elles-aussi exploitées par l’auto calibration.
• L’auto calibration : Les techniques associées à cette catégorie ne nécessitent
l’utilisation d’aucune mire de calibration, elle se base essentiellement sur la
géométrie épipolaire. L’idée consiste à déplacer la caméra dans une scène
statique. La rigidité de la scène fournit généralement deux contraintes [Luo.92]
sur les paramètres intrinsèques de la caméra. Si les images sont prises avec la
même caméra (dont on suppose les paramètres intrinsèques fixes), la mise en
correspondance entre trois images est suffisante pour extraire les paramètres
intrinsèques et extrinsèques [Luo.97, Har.94]. Malgré la flexibilité de cette
approche, celle-ci manque encore de maturité. Vu le nombre de paramètres à
estimer, on n’obtient pas toujours des résultats fiables [Bou.98].
Les calibrations photogramétrique et hybride présentent de meilleurs résultats en terme
de robustesse comparativement aux techniques d’auto calibration. En effet, les
techniques d’auto calibration proposées jusqu’à présent sont adaptées aux
problématiques des systèmes de vision actifs dont les paramètres des caméras varient

9
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

continuellement mais ne conviennent pas aux systèmes qui exigent une précision
importante des informations métriques (la majorité de ces techniques supposent
l’absence de distorsions optiques ou supposent connaître les coordonnées de la
projection du centre optique).
Pour les raisons citées ci-dessus, nous nous sommes plutôt orientés vers la
calibration hybride puisque cette technique, moins précise que la calibration
photogramétrique, fournit néanmoins un compromis tout à fait valable entre la
précision et la flexibilité, répondant ainsi aux exigences que nous nous étions fixées.

1.3.1 La calibration hybride


Cette approche consiste à estimer les paramètres de la caméra à partir de la
géométrie d’une mire connue avec exactitude. Les paramètres à estimer sont alors les
seuls paramètres intrinsèques (4 paramètres intrinsèques et 3 paramètres de distorsion
si on se limite à une correction de la distorsion radiale d’ordre 3) et extrinsèques (3
paramètres pour l’orientation et 3 paramètres pour la position).

Nous considérons n images d’une mire plane composée de p points acquises par
une caméra. La figure (1.4) présente une séquence de 9 images d’une mire de
calibration composée de 156 points. Les points de la mire peuvent être les coins des
carrés qui composent le damier comme le montre la figure (1.5). Une fois les points de
mire extraits, l’estimation des paramètres à minimiser est généralement la somme des
erreurs quadratiques entre les coordonnées des points extraits dans les images et les
coordonnées calculées par le modèle de caméra pour chaque point correspondant de la
mire.

10
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

Figure 1.4 : Exemple d’une séquence de 9 images d’une mire de calibrage.

Figure 1.5 : Exemple sur le choix des points de calibration.

11
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

1.4 Modélisation d’un banc de stéréovision


Nous nous intéressons dans cette section à la modélisation d’un capteur composé de
deux caméras liées rigidement. Nous commençons par la justification de l’emploi
d’une deuxième caméra dans le but de percevoir l’environnement en trois dimensions,
puis nous allons présenter une formulation très répandu dans la littérature, exprime la
relation entre les deux caméras, appelée géométrie épipolaire. La prise en compte de
cette contrainte est très importante, puisqu’elle améliore et accélère le processus
stéréoscopique.

a. Une caméra b. Deux caméras

Figure 1.6 : Extraction de troisième dimension par deux caméras

1.4.1 L’objectif de l’emploi de deux caméras


Si l’on se place d’un point de vue géométrique, une caméra est un capteur qui
transforme tout point visible de l’espace tridimensionnel en point dans l’espace
bidimensionnel de l’image. Cette transformation supprime la troisième dimension cela
se traduit graphiquement par la figure (1.6.a) : les points Q et R de l’espace se
projettent tous deux sur le plan image en un seul et même point p car ils sont sur la
même droite projective (C, P), C est appelé le centre de projection ou centre optique.
Ceci signifie qu’étant donné un point image p, il existe une infinité de points
tridimensionnels pouvant en être la projection. En utilisant deux caméras comme
montre la figure (1.6.b), il est possible de déterminer la position tridimensionnelle du

12
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

point par triangulation. Il existe en effet un seul point de l’espace correspondant à la


paire de projeté {p, q’} et un seul correspondant à {p,r’}. La triangulation consiste
donc à déterminer l’intersection dans l’espace des deux droites projectives. Par
conséquent, il est nécessaire d’exprimer ces droites par rapport à un référentiel
commun. C'est pourquoi il est important de connaître la géométrie du banc de
stéréovision.

1.4.2 La géométrie épipolaire


La géométrie épipolaire est applicable à tout système couplant deux caméras, et ce,
quelque soit le modèle utilisé. Elle exprime la relation qui existe entre les
coordonnées en pixels d’un point dans une image et son correspondant dans l’autre.
Nous commençons par expliquer l’aspect géométrique de cette contrainte, avant
de développer l’aspect algébrique, formalisé par la matrice fondamentale.

Figure 1.7 : La géométrie épipolaire.

• Le point de vue géométrique

Comme le montre la figure 1.7, les centres optiques C l et C r , le point 3D M et ses


projections m l et m r sont tous contenus dans un plan Ω, appelé plan épipolaire. Étant
donnés C l et le point 2D m l , on peut construire le rayon optique issu de m l , c’est à
dire la demi-droite partant du centre optique C l et passant par m l . Par définition, le

13
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

point 3D M appartient au rayon optique issu du m l . Par conséquent, la projection m r


de M dans l’image I r se situe nécessairement sur la projection du rayon optique. Cette
demi-droite de l’image, notée l r est appelé droite épipolaire, et c’est elle qui définit la
contrainte épipolaire. Quel que soit M, le plan épipolaire Ω qui lui est associé
contient la ligne de base (le segment reliant C l et C r ). Étant donné que les droites
épipolaires sont l’intersection du Ω avec les plans images, alors toutes les droites
épipolaires d’une image passent par un unique point e : l’épipole. Les épipoles, notés
e l et e r , correspondent à l’intersection de la ligne de base avec les deux plans images.

Le point de vue algébrique : la matrice fondamentale


La matrice fondamentale F est l’expression algébrique de coplanarité des
points (m l , m r , C l , C r ), appelé contrainte épipolaire. Pour calculer F, commençons
par décrire les matrices de projections P l et P r . Pour simplifier les calculs, nous
imposons que le repère du système de coordonnées de référence coïncide avec celui de
la caméra de droite (on comprend facilement que la matrice fondamentale est
indépendante du choix du système de coordonnées euclidien) :

𝑃𝑃𝑙𝑙 = 𝐾𝐾𝑙𝑙 [𝑅𝑅𝑅𝑅 ] 𝑒𝑒𝑒𝑒 𝑃𝑃𝑟𝑟 = 𝐾𝐾𝑟𝑟 [𝐼𝐼0] (1.13)

et les coordonnées de projections de M dans les deux images sont :

𝑚𝑚𝑙𝑙 ~𝑃𝑃𝑙𝑙 𝑀𝑀 𝑒𝑒𝑒𝑒 𝑚𝑚𝑟𝑟 ~𝑃𝑃𝑟𝑟 𝑀𝑀 (1.14)

En éliminant M des équations précédentes, nous obtenons :

𝑚𝑚𝑙𝑙𝑇𝑇 𝐹𝐹𝑙𝑙𝑙𝑙 𝑚𝑚𝑟𝑟 = 0 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝐹𝐹𝑙𝑙𝑙𝑙 = 𝐾𝐾𝑙𝑙−𝑇𝑇 [𝑡𝑡 ] × 𝑅𝑅𝐾𝐾𝑟𝑟−1 (1.15)

où [𝑡𝑡 ] × est la matrice antisymétrique définie par [𝑡𝑡 ] × x = t x x quel que soit le
vecteur x. La matrice F est définie à un facteur d’échelle près puisque l’équation
(1.15) est toujours valable quand on multiplie F lr par un facteur quelconque.

14
Chapitre 1 Modélisation et Calibration d’un banc stéréoscopique

1.5 Calibrage du banc de stéréovision


Lorsqu’on calibre une seule caméra, on s’intéresse aux paramètres intrinsèques
définis par la matrice K et aux paramètres extrinsèques définis par la transformation
rigide T. lorsqu’on calibre un banc de stéréovision, nous nous intéressons aux deux
ensembles de paramètres intrinsèques définis par les matrices K et K’ et à la position
et l’orientation relative des deux caméras définis par la transformation rigide T s . Les
méthodes classiques calibrent généralement les deux caméras indépendamment Puis
estiment la transformation T s .

Nous noterons, respectivement pour la caméra gauche et la caméra droite, les


transformations rigides T l et T r de la façon suivante :
𝑅𝑅𝑙𝑙 𝑡𝑡𝑙𝑙 𝑅𝑅𝑟𝑟 𝑡𝑡𝑟𝑟
𝑇𝑇𝑙𝑙 = � � 𝑒𝑒𝑒𝑒 𝑇𝑇𝑟𝑟 = � �
0𝑇𝑇 1 0𝑇𝑇 1

Elles relient l’i-ième vue de la mire respectivement au référentiel de la caméra gauche


et à celui de la caméra droite. Pour chaque position de la mire, nous avons la relation
suivante :
𝑇𝑇𝑠𝑠 𝑇𝑇𝑙𝑙 = 𝑇𝑇𝑟𝑟 (1.16)

1.6 Conclusion
Nous avons présenté dans ce chapitre la modélisation d’une caméra, ensuite, nous
avons vu les méthodes de calibrage qui fournies par la littérature, et parmi ces
méthodes, nous avons choisi la calibration hybride qui s’utilise une mire plane,
puisque, elle fournit néanmoins un compromis tout à fait valable entre la précision et
la flexibilité, puis, nous avons vu comment étendre ce modèle au cas stéréoscopique.

15
Chapitre 2
La mise en correspondance stéréoscopique

Table des matières

2.1 Introduction......................................................................................................... 16

2.2 Algorithmes de mise en correspondance ............................................................ 16

2.2.1 Le principe................................................................................................... 16
2.3 Contraintes pour la mise en correspondance ...................................................... 19

2.3.1 Notion de contrainte..................................................................................... 19


2.3.2 Contraintes épipolaire .................................................................................. 19
2.3.3 Contrainte d’unicité...................................................................................... 19
2.3.4 Contrainte d’ordre ........................................................................................ 20
2.3.5 Contrainte de symétrie ................................................................................. 21
2.4 Conclusion .......................................................................................................... 23
Chapitre 2 La mise en correspondance stéréoscopique

2.1 Introduction

Nous allons présenter dans ce chapitre le processus de la mise en correspondance


stéréoscopique. De manière générale, la mise en correspondance stéréoscopique
consiste à retrouver dans les images gauche et droite, les primitives homologues, c’est-
à-dire, les primitives qui sont la projection de la même entité de la scène. Dans le cadre
de nos travaux, les primitives que nous considérons sont les pixels des images. En
première partie du chapitre, nous présentons le principe général d’appariement. En
deuxième partie, nous verrons les contraintes liées à ce processus.

2.2 Algorithmes de la mise en correspondance


2.2.1 Le principe

La mise en correspondance consiste à trouver les points qui se correspondent entre


les images gauche et droite [Mor.08] [Lem.05]. Pour ce faire, les approches
traditionnelles évaluent un à un tous les candidats m d qui pourraient correspondre à
m g et retiennent le meilleur appariement (voir la figure 2.1).

La qualité de l’appariement est exprimée par un critère de corrélation. La fonction de


corrélation quantifie la similarité d’apparence entre deux points. Comme la seule
mesure de corrélation entre deux pixels n’est pas assez discriminante, elle est
généralement calculée sur une fenêtre de pixels, entourant les dits points. Dans la
figure 2.1, le point m g est caractérisé par la fenêtre de pixels A et m d par B. Il
existe plusieurs méthodes pour mesurer la similarité entre deux fenêtres de pixels,
qui nous en détaillerons dans la partie suivante.

A B

Figure 2.1 : Exemple sur la fenêtre de corrélation.

16
Chapitre 2 La mise en correspondance stéréoscopique

Différents critères numériques de corrélation ont été proposés comme critère de


ressemblance entre deux fenêtres de corrélation [Lem.05] [Cha.05] [Nao.06], une prise
autour du pixel m r de l’image gauche et l’autre prise autour d’un pixel m l , candidat
pris sur la même ligne de l’image droite :

• SSD : Sum of Squared Differences ou somme des différences quadratiques


entre termes correspondants des deux fenêtres.
• SAD : Sum of Absolute Differences ou somme de la valeur absolue des
différences entre termes correspondants des deux fenêtres.
• ZSSD : Zero mean Sum of Squared Differences, identique à SSD sauf que, au
préalable, pour chaque fenêtre de corrélation, la moyenne des termes est
d’abord calculée et soustraite à chaque terme. La différence est donc traitée
entre les écarts à la moyenne des termes et non entre les termes eux-mêmes,
ceci permettant d’obtenir un critère invariant aux translations uniformes des
luminances dans une des images.
• ZSAD : Zero mean Sum of Absolute Differences, identique à SAD mais la
différence est effectuée entre les écarts à la moyenne. Le critère est donc aussi
invariant aux variations uniformes de luminance dans une des images.
• NCC : Normalized Cross Correlation, critère souvent utilisé mais aussi le plus
long à calculer. C’est la somme des produits entre les termes correspondants
des fenêtres, normalisée par le produit des moyennes quadratiques calculées
pour chacune des fenêtres.
• ZNCC : Zero mean Normalized Cross Correlation, identique à NCC mais
corrélation croisée entre les écarts à la moyenne. C’est aussi un critère invariant
aux variations de luminance. La formule est explicitée ci-dessous :

17
Chapitre 2 La mise en correspondance stéréoscopique

∑(𝑖𝑖,𝑗𝑗 )∈𝐹𝐹 ��𝐼𝐼𝑔𝑔 (𝑥𝑥+𝑖𝑖,𝑦𝑦 +𝑗𝑗 )−𝐼𝐼���������� ��������������


𝑔𝑔 (𝑥𝑥,𝑦𝑦 )�.(𝐼𝐼𝑑𝑑 (𝑥𝑥+𝑖𝑖+𝑑𝑑,𝑦𝑦+𝑗𝑗 )−𝐼𝐼𝑑𝑑 (𝑥𝑥+𝑑𝑑,𝑦𝑦)�
𝐶𝐶 (𝑥𝑥, 𝑦𝑦, 𝑑𝑑 ) = 2
(2.1)
�∑(𝑖𝑖,𝑗𝑗 )∈𝐹𝐹 �𝐼𝐼𝑔𝑔 (𝑥𝑥+𝑖𝑖,𝑦𝑦+𝑗𝑗 )−𝐼𝐼���������� �������������� 2
𝑔𝑔 (𝑥𝑥,𝑦𝑦 )� .�∑(𝑖𝑖,𝑗𝑗 )∈𝐹𝐹 �𝐼𝐼𝑑𝑑 (𝑥𝑥+𝑖𝑖+𝑑𝑑,𝑦𝑦+𝑗𝑗 )−𝐼𝐼𝑑𝑑 (𝑥𝑥+𝑑𝑑,𝑦𝑦 )�

Avec :

• F : fenêtre de corrélation,
• I g (x,y) et I d (x,y) : les intensités des images gauche et droite,
• d : le décalage horizontal sur x du pixel dans l’image droite appelé disparité.
• C(x,y,d) : valeur du critère au pixel (x,y) pour une disparité d.

Ces critères numériques, en particulier ZNCC, sont longs à calculer. Les critères SAD
ou ZSAD sont les plus simples, mais généralement, ils s’avèrent peu robuste.

18
Chapitre 2 La mise en correspondance stéréoscopique

2.3 Contraintes pour la mise en correspondance


2.3.1 Notion de contrainte

Une contrainte est une propriété liée à une correspondance [Cha.05] [Hor et al.]
[Rui.05] qui découle d’hypothèses faites sur:
• La géométrie du capteur : La principale contrainte utilisée est la contrainte
épipolaire. on appelle cette contrainte une contrainte géométrique.
• La géométrie de la scène : Il s’agit des contraintes d’unicité, d’ordre et de
symétrie.

Les buts de l’utilisation de ces contraintes sont:

• Limiter le nombre de correspondants potentiels pour chaque pixel ;


• Choisir entre plusieurs correspondants potentiels ;

2.3.2 Contraintes épipolaire

La contrainte épipolaire est la seule contrainte géométrique intrinsèque au capteur


stéréoscopique. Cette contrainte est utilisée pour faciliter la mise en correspondance
en réduisant la zone de recherche.
2.3.3 Contrainte d’unicité

La contrainte d’unicité, contrainte binaire, est largement employée en stéréovision


(voir la figure 2.2.a), elle est définie par :
𝑖𝑖,𝑗𝑗 1 𝑖𝑖,𝑗𝑗 𝑖𝑖,𝑗𝑗 2 𝑖𝑖,𝑗𝑗
𝑆𝑆𝑆𝑆 𝑃𝑃𝑔𝑔 + 𝑑𝑑�𝑃𝑃𝑔𝑔 1 � = 𝑃𝑃𝑑𝑑𝑖𝑖,𝑣𝑣 𝒂𝒂𝒂𝒂𝒂𝒂𝒂𝒂𝒂𝒂 ∀ 𝒋𝒋𝟐𝟐 ≠ 𝒋𝒋𝟏𝟏 𝑃𝑃𝑔𝑔 + 𝑑𝑑�𝑃𝑃𝑔𝑔 2 � ≠ 𝑃𝑃𝑑𝑑𝑖𝑖,𝑣𝑣 (2.2)

Si deux pixels différents ont le même correspondant, alors la contrainte d’unicité n’est
pas vérifiée, cette contrainte peut être violée quand un plan de la scène si très incliné
par rapport à l’une des deux caméras, l’effet de raccourcissement peut apparaitre et
ainsi tous les pixels n’ont pas forcément un correspondant unique (voir La figure 2.2
b).

19
Chapitre 2 La mise en correspondance stéréoscopique

. . . . . . . .
𝒊𝒊,𝒋𝒋 𝒊𝒊,𝒋𝒋
. . . . . . . .
𝑷𝑷𝒈𝒈 𝟏𝟏 𝑷𝑷𝒈𝒈 𝟐𝟐 𝑷𝑷𝒊𝒊,𝒗𝒗
𝒅𝒅
Image gauche Image droite
(a)
P1

𝒊𝒊,𝒋𝒋
𝑷𝑷𝒈𝒈 𝟏𝟏

........ ........ 𝑷𝑷𝒊𝒊,𝒗𝒗


𝒊𝒊,𝒋𝒋
𝑷𝑷𝒈𝒈 𝟐𝟐 𝒅𝒅

(b)

Og Od

Figure 2.2 : Contrainte d’unicité : Dans la figure (a), nous pouvons voir les
𝒊𝒊,𝒋𝒋 𝒊𝒊,𝒋𝒋
correspondances entre 𝑷𝑷𝒈𝒈 𝟏𝟏 et 𝑷𝑷𝒊𝒊,𝒗𝒗
𝒅𝒅 et entre 𝑷𝑷𝒈𝒈 𝟐𝟐 et 𝑷𝑷𝒊𝒊,𝒗𝒗
𝒅𝒅 qui ne respectent pas la
contrainte d’unicité. En (b): tous les points qui se trouvent sur le segment de droite
[P 1 P 2 ] se projettent sur le pixel 𝑷𝑷𝒊𝒊,𝒗𝒗
𝒅𝒅 dans l’image droite.

2.3.4 Contrainte d’ordre

La contrainte d’ordre, contrainte binaire, est parfois utilisée en stéréovision (voir la


figure 2.3.a) et elle est définie par :
𝑖𝑖,𝑗𝑗 1 𝑖𝑖,𝑗𝑗 𝑖𝑖,𝑣𝑣1 𝑖𝑖,𝑗𝑗 2 𝑖𝑖,𝑗𝑗 𝑖𝑖,𝑣𝑣2
𝑆𝑆𝑆𝑆 𝑃𝑃𝑔𝑔 + 𝑑𝑑�𝑃𝑃𝑔𝑔 1 � = 𝑃𝑃𝑑𝑑 𝑒𝑒𝑒𝑒 𝑃𝑃𝑔𝑔 + 𝑑𝑑�𝑃𝑃𝑔𝑔 2 � = 𝑃𝑃𝑑𝑑 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 (𝑗𝑗1 − 𝑗𝑗2 )(𝑣𝑣1 − 𝑣𝑣2 ) ≥ 0 (2.3)

Lorsque deux points se trouvent sur la surface d’un objet peu incliné, l’ordre de leurs
projections est le même dans les deux images.
Si l’objet est fortement incliné et si l’objet est opaque, les projections ne sont pas vues
simultanément dans les deux images.
En revanche, si l’objet est transparent, l’ordre des projections n’est pas
respectés.
20
Chapitre 2 La mise en correspondance stéréoscopique

. . . . . . . .
𝒊𝒊,𝒋𝒋 𝒊𝒊,𝒋𝒋
. . . . . . . .
𝑷𝑷𝒈𝒈 𝟏𝟏 𝑷𝑷𝒈𝒈 𝟐𝟐 𝑷𝑷𝒊𝒊,𝒗𝒗
𝒅𝒅
Image gauche Image droite

. . . . . . . . . . . . . . . .
(a)

P1

𝒊𝒊,𝒋𝒋
𝑷𝑷𝒈𝒈 𝟏𝟏

........ ........
𝒊𝒊,𝒗𝒗𝟏𝟏 𝒊𝒊,𝒗𝒗𝟐𝟐
𝒊𝒊,𝒋𝒋
𝑷𝑷𝒈𝒈 𝟐𝟐 𝑷𝑷𝒅𝒅 𝑷𝑷𝒅𝒅

Og (b) Od

Figure 2.3 : Contrainte d’ordre : En (a), nous pouvons voir deux correspondances qui
la respectent la contrainte d’ordre et deux correspondances qui ne la respectent pas En
(b), une vue de dessus d’un capteur binoculaire en configuration parallèle et d’une
scène, montre un exemple de violation de la contrainte d’ordre (le plan transparent
vertical passant par les points P 1 et P 2 , représenté et en tirets, est fortement incliné par
rapport au plan des images).

2.3.5 Contrainte de symétrie

Un des affinements des résultats d’une mise en correspondance les plus employés
est la vérification bidirectionnelle (figure 2.4.a), qui met en œuvre la contrainte de
symétrie. Cette contrainte binaire s’écrit :

𝑖𝑖,𝑗𝑗 𝑖𝑖,𝑗𝑗 𝑖𝑖,𝑗𝑗


𝑆𝑆𝑆𝑆 𝑃𝑃𝑔𝑔 + 𝑑𝑑�𝑃𝑃𝑔𝑔 � = 𝑃𝑃𝑑𝑑𝑖𝑖,𝑣𝑣 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎 𝑃𝑃𝑑𝑑𝑖𝑖,𝑣𝑣 + 𝑑𝑑�𝑃𝑃𝑑𝑑𝑖𝑖,𝑣𝑣 � = 𝑃𝑃𝑔𝑔 (2.4)

21
Chapitre 2 La mise en correspondance stéréoscopique

Deux mises en correspondance sont effectuées, de la gauche vers la droite puis de la


i,j
droite vers la gauche. Si un pixel Pg a pour correspondant le pixel Pdi,v , alors, lors de la
i,j
seconde mise en correspondante, Pdi,v doit avoir pour correspondant Pg . Si ce n’est pas
le cas, la contrainte de symétrie n’est pas respectée. La contrainte de symétrie assure la
contrainte d’unicité, ce qui signifie que si un ensemble de correspondances vérifient la
contrainte de symétrie, alors elles vérifient aussi la contrainte d’unicité.

. . . . . . . .
𝒊𝒊,𝒋𝒋
. . . . . . . .
𝑷𝑷𝒈𝒈 𝟏𝟏 𝑷𝑷𝒊𝒊,𝒗𝒗
𝒅𝒅
Image droite
Image gauche

. . . . . . . . . . . . . . . .
𝒊𝒊,𝒋𝒋
𝑷𝑷𝒈𝒈 𝟐𝟐

(a)

. . . . . . . . . . . . . . . .
Image droite
Image gauche

. . . . . . . . 𝒊𝒊,𝒋𝒋
. . . . . . . .
𝑷𝑷𝒈𝒈 𝟐𝟐

(b)

Figure 2.4 : Contrainte de symétrie (vérification bidirectionnelle) : La contrainte de


symétrie est illustrée en (a) et nous pouvons la comparer à la contrainte de symétrie
𝒊𝒊,𝒋𝒋
faible en (b). Nous pouvons remarquer que les correspondances entre 𝑷𝑷𝒈𝒈 𝟏𝟏 et 𝑷𝑷𝒊𝒊,𝒗𝒗
𝒅𝒅 et
𝒊𝒊,𝒋𝒋
entre𝑷𝑷𝒊𝒊,𝒗𝒗
𝒅𝒅 et 𝑷𝑷𝒈𝒈 sont rejetées lorsqu’on applique la contrainte de symétrie.
𝟐𝟐

22
Chapitre 2 La mise en correspondance stéréoscopique

2.4 Conclusion
Nous avons vu dans ce chapitre le processus de la mise en correspondance
(appariement), l’idée de base consiste à apparier une primitive en la comparant à ses
correspondants possibles, de telle sorte que le couple qui se ressemble le plus soit
retenu comme un couple de primitives homologues. Pour ce faire, nous avons décri
dans la première partie, le principe d’appariement basé sur des méthodes corrélatives,
qui utilisent une fenêtre de corrélation, ensuite, nous avons détaillé les critères ou bien
les contraintes de ressemblances, pour décider qu’une couple de primitives gauche /
droite est correcte ou pas.

23
Chapitre 2 La mise en correspondance stéréoscopique

Chapitre 3
Mesure de distance et vitesse d’un objet mobile

Table des matières

3.1 Introduction......................................................................................................... 24

3.2 Détection des objets mobiles .............................................................................. 25

3.3 Mesure de distance et vitesse .............................................................................. 26

3.3.1 Approche de la mono-vision ........................................................................ 26


3.3.1.1 Méthode du champ de vision .................................................................... 26
3.3.1.2 Résultats ................................................................................................... 29
3.3.2 Approche de la stéréovision ......................................................................... 33
3.3.2.1 Description du processus stéréoscopique ................................................. 34
3.3.2.2 Résultats.................................................................................................... 39
3.4 Conclusion ......................................................................................................... 42
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

3.1 Introduction
L’application automobile qui nous intéresse, à savoir le suivi du véhicule,
nécessite la mise en place d’un processus spécifique à la mesure de vitesse (voir la
figure 3.1). Ce processus requiert des informations synthétiques sur le véhicule,
telle que leur position (distance des véhicules cibles) et leur taille. Ce traitement
intermédiaire s’appelle l’« extraction des objets mobiles » ou « détection des
objets mobiles». Il permet de localiser la cible qui sera ensuite traitée par le
processus de mesure de distance et vitesse.

Dans ce chapitre, nous commençons par décrire le processus de détection des


objets mobiles, pour ensuite mesurer la distance et la vitesse de ceux-ci par une
approche de la mono-vision et d’autre de la stéréovision.
Vidéo

Processus de Mesure (PM)

Détection d’obstacle Mesure de Distance Mesure de Vitesse

Inter-Frame Mono-vision Stéréovision Inter-Frame

Méthode du Mise en
champ de vision correspondance

Figure 3.1 : Processus de mesure de distance et vitesse d’un objet mobile.

24
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

3.2 Détection des objets mobiles

Nous employons une méthode de détection basée sur le calcul de différence


entre les frames de vidéo s’appelle «inter-frame », C'est semblable au principe de
méthode décrite dans [Gup et.al.02]. Pour chaque image (frame) de vidéo « frame
de référence qui ne contient aucun objet mobile I ref », nous prenons la différence
entre cette dernière et l’image courante Ii, qui donnant l'image de différence (voir
la figure 3.2), ensuite l'image de différence est seuilée pour donner un masque
binaire d'objet. Le masque d'objet est une image binaire, sachant que tous les pixels
qui correspondent aux objets ont la valeur 255, et tous les autres pixels prenant 0.

|Iref - Ii|+ seuillage

Image de référence : Iref

Image de différence seuilée: Ids

Image courante : Ii

Figure 3.2 : Détection des objets mobiles par la méthode d’inter-frames.

25
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

3.3 Mesure de distance et vitesse


Nous avons vu dans la section précédente une étape intermédiaire pour localiser
ou positionner l’objet mobile. Dans cette section, nous étudions les approches qui
servent de mesurer la distance et la vitesse du l’objet détecté. Notre processus de
mesure est basé sur deux approches principales, la première approche utilise une seule
caméra (système mono-vision), et l’autre utilise deux caméras (système stéréovision),
nous aurons vu les détails dans les sections suivantes.

3.3.1 Approche de la mono-vision

L’approche de la mono-vision employée une seule caméra pour mesurer la


distance d’un objet mobile détecté. Dans la section suivante, nous détaillons une
approche de la mono-vision s’appelle la méthode du champ de vision.

3.3.1.1 Méthode du champ de vision

Le champ de vision donne le volume de la scène qui peut être observé par la
caméra [ZAY.05]. Il se calcule en fonction des dimensions du capteur (horizontale et
verticale), de la distance focale de l’objectif et des angles de vue. L’exploitation des
notions de champ de vision s’effectue comme suit:

Dans notre cas, nous considérons que :

- La caméra est connue, donc la dimension T C du capteur est aussi connue.


- L’objectif est connu, donc on connaît la distance focale f.
- L’objet est connu, alors on connait son taille réelle T R .

 Mesure de distance

On veut trouver la distance D (Tc, T R ) à une certaine taille d’un objet sous un
angle θ par une méthode trigonométrique simple, et en utilisant les formules suivantes
(voir figure 3.3) :

𝑇𝑇𝐶𝐶 𝑇𝑇𝑅𝑅
tan 𝜃𝜃 = =
𝑓𝑓 𝐷𝐷
𝑇𝑇𝑅𝑅
𝐷𝐷�𝑇𝑇𝐶𝐶 , 𝑇𝑇𝑅𝑅 � = . 𝑓𝑓 (3.1)
𝑇𝑇𝐶𝐶

26
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

TR : Taille réelle du d’objet


TC : Taille du capteur

θ : angle de vue

Objet
C

f : la distance focale

D (Tc, TR) : distance entre la caméra et l’objet


Figure 3.3 : Le calcul du champ de vision.

Ce type de raisonnements géométrique très simples va nous permettre de trouver la


distance de l’objet en fonction de son taille réelle T R et son taille T I dans l’image (voir
figure 3.4), comme indique l’équation suivante :

𝑇𝑇𝑅𝑅
𝐷𝐷(𝑇𝑇𝐼𝐼 , 𝑇𝑇𝑅𝑅 ) = . 𝑓𝑓
𝑇𝑇𝐼𝐼 (3.2)

De l’équation (3.2), nous remarquons qu’une variation de la taille apparente T I du


l’objet dans l’image implique un changement significatif de la distance D, comme le
montre les figures (3.7.a) et (3.7.b).

27
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

TR: taille réelle de


TI: taille Objet
dans l’image

l’Objet
f : la distance focale

D (TI, TR) : distance entre la caméra et l’objet


Figure 3.4 : Calcul de distance d’un objet par la formule du champ de vision.

 Mesure de vitesse
Nous employons le même principe décrit dans la section (3.2) de détection des
objets mobiles, qui se base sur le calcul de différence entre les frames de vidéo «inter-
frame ».
L’exploitation de la vitesse s’effectue comme suit :
1. Calculer la distance de l’objet entre frame (i) et frame (i+1) pour obtenir la
distance Δd ;
2. Calculer la différence entre frame (i) et frame (i+1) pour obtenir le temps Δt.
La relation correspondante est alors :
�𝐷𝐷𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 (𝑖𝑖) − 𝐷𝐷𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 (𝑖𝑖+1) �
𝑣𝑣𝑣𝑣𝑣𝑣𝑣𝑣𝑣𝑣𝑣𝑣𝑣𝑣 = (3.3)
�𝑡𝑡𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 (𝑖𝑖) − 𝑡𝑡𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 (𝑖𝑖+1) �

28
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

3.3.1.2 Résultats

Les résultats présentés dans cette section ont été obtenus sur des séquences
réalisées à l’aide de caméra Sony Miniature 1/3" (U2S-C911), et une carte
d’acquisition Easy TV MPEG à une entrée et une sortie RCA. La caméra a une
distance focale de 8 mm et de 0.8 Lux, avec une résolution horizontale de 420
TVL. Au cours de notre travail, nous avons utilisé Matlab (7.5b) comme langage
de programmation.

Le tableau (3.1) ci-dessous indique les distances calculées par l’approche du


champ de vision.

D (réelle) [m] D [m]

50 51,7651
45 45,5854
40 40,3170
35 35,8390
30 30,4315
25 24,9383
20 20,3085
15 15,2188
10 10,5412
5 5,0002

Tableau 3.1 : Calcul de la distance par l’approche du champ de vision.

D’après les résultats repris dans le tableau (3.1), on déduit que l’intervalle de la
distance, qu’on peut calculer par cette méthode c’est : [5m- 50m].

29
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

Le tableau (3.2) ci-dessous représente quelques résultats des vitesses mesurées à


30 frames par seconde aux différentes distances D.

Vitesse (réelle) Vitesse (mesurée)


D [m]
[km /h] [km /h]
[0 - 18,94]
20 [18 - 22]

[18,94 - 50]
20 [16 – 23,5]

[0 – 22,84] [28 – 32]


30

[22,84 - 50] [26 - 34]


30

[0 – 26,12] [38 – 42]


40

[26,12 - 50] [36 - 44]


40

[0 – 35,83] [58 – 63]


60

[35,83 - 50] [54 - 66]


60

[0 – 42,84] [77 – 82.5]


80

[42,84 - 50] [75 – 85.5]


80

Tableau 3.2 : Mesure de vitesses aux différentes distances D calculées par la


méthode du champ de vision.

Les figures (3.5) et (3.6) représentent quelques résultats de mesure des distances
proche et éloignée d’un véhicule détecté par la méthode de détection décrite dans la
section (3.2). Nous trouvons plus des détails dans l’annexe B.

30
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

Figure 3.5 : Mesure d’une distance proche d’un véhicule détecté.

Figure 3.6 : Mesure d’une distance éloignée d’un véhicule détecté.

31
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

(a)

(b)

Figure 3.7 : Mesure de distance et vitesse par la méthode du champ de vision.

32
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

3.3.2 Approche de la stéréovision


La méthode de la mise en correspondance décrite dans le chapitre précédent,
qui se base sur le calcul de disparité issue de l'appariement de primitives homologues
(pixels) entre les images gauche et droite sert à calculer la distance et la vitesse d’un
objet mobile.
Notre approche stéréoscopique de mesure de distance et vitesse d’un objet mobile
est divisée en plusieurs blocs, comme le montre la figure (3.8).

Caméra 2 Caméra 1

N=0

Séquence 2 Séquence 1

Oui
Le suivi N=1

Non
La mise en correspondance Détection
(Matching)
Oui

Calcul de la
zone d’intérêt
Calcul de la
distance
Sobel dans la
zone d’intérêt
Calcul de la
vitesse
Détection des coins par
détecteur de Harris

N=1

Figure 3.8 : Processus stéréoscopique de mesure de distance et vitesse d’un objet


mobile.

33
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

3.3.2.1 Description du processus stéréoscopique


Dans cette section, nous décrirons les étapes essentielles pour effectuer la
mesure de distance et vitesse d’un véhicule vu par les deux caméras.
1. Détection
- Choisir une séquence de la caméra 1 ;
- Détecter le véhicule par la méthode décrite dans la section (3.2).
2. Calcul de la zone d’intérêt
Pour restreindre le champ du calcul dans l’image, il faut trouver tout d’abord une
zone d’intérêt d’où le véhicule existe, comme le montre la figure (3.9).

Figure 3.9 : Calcul de la zone d’intérêt.

3. Extraction des contours


Pour minimiser le temps du calcul, nous travaillons sur les contours du véhicule,
pour le faire, en appliquant le filtre du Sobel dans la zone d’intérêt, comme
l’indique la figure (3.10).

34
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

Figure 3.10 : Extraction des contours par Sobel dans la zone.

4. Détection des coins


Pour choisir un point à suivre dans la première séquence de caméra 1, nous
appliquons le détecteur de Harris (voir l’annexe A) dans la zone d’intérêt seuilée par
le filtre du Sobel, puis, on choisit le coin bas gauche inférieur, (en rouge dans la figure
3.11).

Figure 3.11 : Détection des coins par le détecteur de Harris.

35
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

5. Le suivi du point par corrélation

Pour déterminer l’homologue du coin choisi de la première image dans la seconde,


les méthodes par corrélation mesurent la ressemblance entre deux pixels, en calculant
un score de corrélation (critère de similarité ZNCC décrit dans le 2ème chapitre)
déterminé sur leur voisinage. Le pixel correspondant dans la deuxième image est alors
choisi comme celui qui maximise cette mesure de ressemblance (figure 3.12). Le point
et son voisinage, support de la mesure, sont appelés fenêtre ou domaine de corrélation.

Figure 3.12 : Le suivi du pixel par corrélation (la colonne gauche), la mise en
correspondance (colonne gauche-droite)

36
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

6. La mesure de distance par stéréovision


Comme le montre la figure (3.13), nous pouvons déterminer la distance D qui
sépare l’objet observé du système de stéréovision par les relations suivantes :
 Caméra droite
− Le point M dans le repère O d exprimé par les coordonnées (X d , Y d , Z d ).

Figure 3.13 : Le principe du calcul de la distance D d’un objet par stéréovision.

− Le projeté du point M dans le plan d’image exprimé par les coordonnées


(x d , z d ) :
𝑋𝑋𝑑𝑑 𝑥𝑥𝑑𝑑
𝑥𝑥𝑑𝑑 = 𝑓𝑓 ⇒ 𝑋𝑋𝑑𝑑 = 𝑍𝑍𝑑𝑑 (3.4)
𝑍𝑍𝑑𝑑 𝑓𝑓

37
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

 Caméra gauche
− Le point M exprimé dans le repère O g par les coordonnées (X g , Y g , Z g ).
− Le projeté du point M exprimé dans le plan d’image par les
coordonnées (x g , z g ):

𝑋𝑋𝑔𝑔 𝑥𝑥𝑔𝑔
𝑥𝑥𝑔𝑔 = 𝑓𝑓 ⇒ 𝑋𝑋𝑑𝑑 = 𝑍𝑍𝑔𝑔 (3.5)
𝑍𝑍𝑔𝑔 𝑓𝑓

En générale :

− Les deux caméras sont reliées par la rotation R, et la translation B :

𝑀𝑀𝑑𝑑 = 𝑅𝑅�𝑀𝑀𝑔𝑔 − 𝐵𝐵� (3.6)

− Les deux axes optiques de caméras gauche et droite sont parallèles, donc :

𝑍𝑍𝑑𝑑 = 𝑍𝑍𝑔𝑔 = 𝐷𝐷 ⇒ 𝑋𝑋𝑑𝑑 = 𝑋𝑋𝑔𝑔 − 𝐵𝐵

de l’équation (3.5) et (3.6), on écrit :

𝑥𝑥𝑔𝑔 𝐷𝐷 𝑥𝑥𝑑𝑑 𝐷𝐷
− 𝐵𝐵 = (3.7)
𝑓𝑓 𝑓𝑓

dont :
𝐵𝐵𝐵𝐵
𝑫𝑫 = 𝑎𝑎𝑎𝑎𝑎𝑎𝑎𝑎: 𝒅𝒅 = 𝑥𝑥𝑔𝑔 − 𝑥𝑥𝑑𝑑 (3.8)
𝑑𝑑

d : La disparité : c’est la différence en position entre les points correspondants dans


les deux images, généralement mesurées en Pixel.
D : La distance entre l’objet et le système stéréo.
B : La distance séparée les deux caméras.

38
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

3.3.2.2 Résultats
Les résultats présentés ici ont été obtenus sur des séquences réalisées à
l’aide de deux caméras HR Sony (PR- 675), équipé d’un capteur CCD de taille
1/3" de résolution 420 TVL et de 0.2 Lux, et d’un objectif de taille 43.7×35.4
mm, dont la distance focale varie de 3mm à 8 mm, et l’angle de vue peut aussi
varier de 35° à 93°. Les caméras sont placées à 10 cm l’une de l’autre. Les
distorsions sont corrigées par la calibration décrite dans le 1er chapitre.
Dans ce qui suit, nous allons présenter quelques résultats issus des
expériences effectuées avec le système stéréoscopique (figure 3.14).

Figure 3.14 : Système de mesure stéréoscopique et ses équipements.

39
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

Figure 3.15 : Mesure d’une distance proche d’un véhicule détecté par stéréovision.

Figure 3.16 : Mesure d’une distance éloignée d’un véhicule détecté par stéréovision.

40
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

(a)

(b)
Figure 3.17 : Mesure de distance et vitesse par le processus stéréoscopique.

41
Chapitre 3 Mesure de distance et vitesse d’un objet mobile

3.4 Conclusion
Les résultats que nous avons obtenus montrent qu’il est parfaitement possible
d’estimer la distance et la vitesse d’un véhicule en mouvement grâce à des
caméras et un ordinateur standards.
Dans la première partie de ce chapitre, nous avons présenté une méthode de
détection d’objets mobiles, qui, en se basant sur le calcul de différence entre les
frames de vidéo, fournit la cible nécessaire au processus de mesure de distance et
vitesse.
Dans la seconde partie de ce chapitre, nous avons exposé une approche de la
mono-vision et d’autre de la stéréovision, la première applique le calcul du champ
de vision qui nécessite la connaissance au préalable de la taille de l’objet réelle et
son équivalant dans l’image. Nous avons aussi vu le système stéréoscopique,
l’utilisation du ce système comporte de nombreux aspects, allant de détection à la
technique de suivi par corrélation.

42
Chapitre 4
Implémentation sur la carte DSP DM4637 EVM

Table des matières

4.1 Introduction......................................................................................................... 48

4.1.1 La famille du DSP TMS320 ........................................................................ 48


4.1.2 La famille du DSP TMS320C6000 .............................................................. 48
4.1.3 Architecture du DSP TMS320C64x/C64x+ ............................................... 48
4.2 Processeur de Médias Digitales TMS320DM6437 ............................................ 54

4.2.1 Fonctionnement du DM6437 ....................................................................... 55


4.2.2 Sous-système du traitement de vidéo (VPSS) ............................................. 57
4.2.3 Port Vidéo au Port Vidéo de Communication du TMS320DM64x ............ 59
4.3 Implémentation sur la carte TMS320 DM6437 EVM ....................................... 71

4.4 Conclusion .......................................................................................................... 74


Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.1 Introduction
La plate-forme du processeur du signal numérique (DSP) de TMS320C6000™ fait
partie de la famille du DSP TMS320™. La génération du DSP TMS320C62x™ et la
génération du DSP TMS320C64x™ comportent les périphériques à virgule fixe dans
la plate-forme du DSP C6000™, et la génération du DSP TMS320C67x™ comporte
les périphériques à virgule flottante dans la plate-forme du DSP C6000. Les C62x™ et
les C64x™ DSPs sont code-compatibles. Chacune des trois générations du DSP utilise
l'architecture de VelociTI™, une architecture de haute performance, architecture
avancée d'instruction du mot très long (Very Long Instruction Word : VLIW), ceux
DSPs faisant à un excellent choix pour les applications multicanales et
multifonctionnelles. Le DSP TMS320C64x+™ est un perfectionnement du C64x DSP
avec un ensemble des fonctionnalités supplémentaires.

4.1.1 La famille du DSP TMS320

La famille du DSP TMS320™ [TI.08] se compose des processeurs à virgule fixe,


virgule flottante, et du multiprocesseur du signal numérique. DSPs TMS320™ ont une
architecture conçue spécifiquement pour le traitement des signaux en temps réel. Les
DSPs TMS320™ donnent des approches adaptables aux problèmes classiques du
traitement du signal. Ils supportent également les applications complexes qui exigent
souvent des opérations multiples d'être effectuées simultanément.

4.1.2 La famille du DSP TMS320C6000

Avec une exécution jusqu'à 8000 millions d'instructions par seconde (MIPS) et
un compilateur C efficace, les DSPs TMS320C6000 (figure 4.1) donnent à des
architectes du système des possibilités illimitées pour différencier leurs produits. La
haute performance, la facilité d'utilisation, et l'évaluation accessible font à la
génération C6000 la solution idéale pour le multicanal.

4.1.3 Architecture du DSP TMS320C64x/C64x+

La figure (4.2) est le schéma fonctionnel du DSP C64x. Les périphériques du


C6000 viennent avec une mémoire programme, qui, sur quelques périphériques, peut
être employée comme un programme cache. Les périphériques ont également des
48
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

tailles variables de mémoire de données. Les périphériques tels qu'un contrôleur de


mémoire d'accès direct (DMA), puissance logique bas, et une interface externe de
mémoire (EMIF) viennent habituellement avec l'unité du traitement central (CPU),
alors les périphériques tels que les portes séries et les ports du serveur sont sur
seulement certains éléments.

Figure 4.1 : La famille du DSP TMS320C6000.

49
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

Figure 4.2 : Le schéma fonctionnel du DSP TMS320C64x+.

50
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.1.3.1 L’unité du traitement central (CPU)

L'unité du traitement central 64x+, dans la figure (4.2), contient :


• Unité du programme fetch,
• 16/32 bits unité d'instruction du dispatch, instruction avancée du packing,
• L’unité d’instruction du décodage,
• Deux voies de données, chacune avec quatre unités fonctionnelles,
• 64 à 32bits registres,
• Registres du control,
• Control Logique,
• Test, émulation, et interruption logique,
• DMA Interne (IDMA) pour des transferts entre les mémoires internes.

Le programme fetch, instruction dispatch, et les unités d'instruction du décodage


peuvent fournir aux unités fonctionnelles jusqu'à huit 32 bits instructions à chaque
cycle d’horloge de CPU. Le traitement des instructions se produit dans chacune des
deux voies de données (A et B), qui contient quatre unités fonctionnelles (L. S. M, et.
D) et 32 32 bits registres d'usage général. Un registre du control des fichiers fournit les
moyens pour configurer et contrôler les diverses opérations du processeur.

4.1.3.2 Mémoire interne

Les DSPs C64x et les C64x+ ont 32 bits, et un espace d'adresse octet- adressable.
La mémoire interne sur fragment (on-chip) est organisée en données séparées et des
espaces du programme. Quand la mémoire hors-fragment (off- chip) est utilisée, ces
espaces sont unifiés sur la plupart des périphériques à un espace d’une seule mémoire
via l'interface de la mémoire externe (EMIF).
Le DSP C64x a deux ports internes de 64-bits pour accéder à la mémoire de données
internes. Le DSP C64x a un seul port interne pour accéder à la mémoire du programme
interne, avec une instruction de fetch de 256 bits. Le DSP 64x+ a un port de lire
seulement de 256 bits pour accéder à la mémoire du programme interne et deux ports
de 256 bits (lire et écrire) pour accéder à la mémoire de données internes.

51
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.1.3.3 voies de données et du control

Les composants de la voie de données pour la CPU sont montrés sur la figure (4.3).
Ces composants sont les suivants :
• Deux registres de fichiers d'usage général (A et B),
• Huit unités fonctionnelles (. L1. L2. S1. S2. M1. M2. D1, et. D2),
• Deux voies de données de charger-de la-mémoire (LD1 et LD2),
• Deux voies de données de stocker-dans la-mémoire (ST1 et ST2),
• Deux voies d'adresse de données (DA1 et DA2),
• Deux registres de fichiers de données du chemin croisé (1X et 2X).
4.1.3.4 Registres de fichiers d'usage général

Il y a deux registres de fichiers d'usage général (A et B) dans les voies de données


de CPU (voir figure 4.3). Chacun de ces fichiers contient 32 32-bits registres (A0-A31
pour le fichier A et B0-B31 pour le fichier B). Les registres d'usage général peuvent
être utilisés pour les données, pointeurs d'adresse de données, ou des registres de
condition.
Le DSP du registre de fichiers d'usage général supporte les données sous forme de
paquet du 8 bits par 64-bits de données à point fixe. Les valeurs les plus grande de 32
bits, tels que 40 bits et les quantités de 64-bits, sont stockées dans des registres pairs.

52
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

Figure 4.3 : Les voies de données de CPU TMS320C64x+™.

53
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.2 Processeur de Médias Digitales TMS320DM6437


Le DM6437 EVM (voir la figure 4.4) est un PCI basé ou une plate-forme du
développement autonome qui permet aux utilisateurs d'évaluer et de développer des
applications de la famille du processeur TI DaVinci TM . Les schémas, la liste des
matériaux, et les notes d'application sont disponibles pour faciliter le développement
du matériel et pour réduire le temps d'arrivé au marché.

Figure 4.4 : Processeur de Médias Digitales TMS320DM6437.

L'EVM vient avec un plein complément des péréphiriques qui s’adaptent à une large
variété d'application du l’environnement. Les péréphiriques principaux sont les
suivants :

• Texas Instruments DM6437 un processeur d’opération jusqu'à 600 Mhz,


• 1 TVP5146M2 décodeur vidéo, supports composés ou S vidéo,
• 4 sorties vidéo DAC - composant, RGB,
• 128 Moctets de la DDR2 DRAM,
• Interfaces UART, CAN I/O,
• 16 Moctets de mémoire Flash non-volatile, 64 Moctets flash NAND, 2 Moctets
SRAM,
• AIC33 Codec stéréo,
• I2C Interface avec eeprom intèrieur et des extenseurs,

54
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

• 10/100 MBS interface d'Ethernet,


• Boot configurables d’options de charge,
• JTAG Incorporé Interface d'émulation,
• 4 utilisateurs LEDs et 4 positions d'utilisateur commutateur,
• Alimentation de tension (+5V),
• Connecteurs d'expansion pour l'usage de la carte fille,
• Interface VLYNQ,
• Interface S/PDIF, analogique, et optique.

4.2.1 Fonctionnement du DM6437

Les DSPs TMS320C64x+™ (y compris le TMS320DM6437) sont la génération à


haute performance du DSP à virgule fixe dans la plate-forme du DSP
TMS320C6000™. Le DM6437 est basé sur l'architecture de troisième génération de
VLIW de VelociTI™ développée par Texas Instruments (TI), faisant à ceux DSPs un
excellent choix pour des applications numériques de médias.

Avec performance jusqu'à 5600 millions d'instructions par seconde (MIPS) à une
fréquence de base de 700 Mhz, le noyau de C64x+ offre des solutions aux défis de
programmation du DSP à rendement élevé. Le noyau du DSP possède la flexibilité
opérationnelle des contrôleurs à grande vitesse et les possibilités numériques des
processeurs cellulaires. Les huit unités fonctionnelles du processeur de noyau du DSP
C64x+ incluent des instructions pour accélérer l'exécution dans les applications vidéo
et image. Le noyau du DSP peut produire quatre 16 bits multiplication-accumulation
(MACs) par cycle pour un total de 2800 millions MACs par seconde (MMACS), ou
huit 8 bits MACs par cycle pour un total de 5600 MMACS.

Le DM6437 a également un hardware logique d'application spécifique, la mémoire on-


chip, et les périphériques additionnels on-chip semblables aux autres périphériques de
plate-forme du DSP C6000. Le noyau DM6437 utilise une architecture cachette de
deux niveaux. Le niveau 1 programme mémoire /cache (L1P) se compose d'un
espace mémoire de 256 Kbit qui peut être configuré en tant que mémoire tracée, et les

55
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

données du niveau 1 (L1D) se compose d'un espace mémoire de 640 Kbit. Le niveau 2
mémoire /cache (L2) se compose d'un espace mémoire 1Mbit qui est partagé entre le
programme et l'espace de données. La mémoire L2 peut être configurée en tant que
mémoire tracée, cache, ou combinaisons des deux.

Figure 4.5 : Schéma fonctionnel du TMS320DM6437.

56
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.2.2 Sous-système du traitement de vidéo (Video Processing Subsystème VPSS)

Le DM6437 inclut un sous-système du traitement de vidéo (VPSS) avec deux


périphériques configurables de vidéo/ image :

– Traitement de vidéo d'entrée (Video Processing Front-End « VPFE ») d'entrée


utilisée pour la capture vidéo,
– Traitement de vidéo de sortie (Video Processing Back-End « VPBE »).

Figure 4.6 : Diagramme du sous-système du traitement de vidéo (VPSS).

4.2.2.1 Video Processing Front-End (VPFE)

Le bloc de VPFE [TI.mar.08] est composé d'un contrôleur CCD (CCDC), un


prévisionneur (Previewer), un module d'histogramme, Auto-Exposition/ d'équilibre
blancs /un module de foyer (H3A), et un Resizer. Le CCDC est capable de connecter
aux décodeurs vidéo communs, des CMOS, et aux CCDs (Charge Coupled Devices).
Le prévisionneur est un moteur du traitement d'images en temps réel qui prend des
données brutes de CMOS ou d'un CCD et convertit le modèle RGB en YUV422.
L'histogramme et les modules de H3A fournissent des informations statistiques sur les
données brutes en couleur à l'usage du DM6437. Le Resizer accepte des données
d'image pour remettre à la côte horizontal et vertical séparé de 1/4x à 4x dans les
incréments de 256/N, où N a lieu entre 64 et 1024.

57
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.2.2.2 Video Processing Back End (VPBE)

Le bloc VPBE [TI.dec.07] est composé d’un écran d'affichage (on-screen


display OSD) et des encodeurs vidéo (VENC). Ces modules fournissent une
interface principale puissante et un affichage flexible.

• Ecran d'affichage (OSD) accélérateur graphique: L'OSD affiche les


données en divers formats pour plusieurs types du hardwar des fenêtres
d’affichages (display windows) et il mélange également les fenêtres
d’affichages dans une seule image d'affichage.
• Encodeur vidéo (VENC) : Le VENC prend l'affichage d’image de l’OSD
et le reformé au format de sortie désirée et des signaux de sorties (données,
horloges, synchro, etc.) qui sont exigés pour connecter aux périphériques
d'affichage.

Le VENC se compose de trois sous-bloques primaires:

– L'encodeur vidéo analogique produit la signalisation pour connecter


au NTSC/PAL d’affichages de télévision, et compris la conversion
vidéo A/D.
– Le contrôleur numérique LCD supporte des interfaces des divers
formats de LCD numérique aussi bien que des sorties numériques
standard YUV pour connecter à une interface de haute- définition
d'encodeurs vidéo et/ou interface DVI/HDMI.
– Générateur de synchronisation pour produire une synchronisation
spécifique requise pour la sortie vidéo analogique aussi bien que de
divers modes de sortie vidéo numériques.

58
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.2.3 Port Vidéo au Port Vidéo de Communication du TMS320DM64x

Le port vidéo est l'un des périphériques essentiels de TMS320DM64x+. Cette


section couvre les fondations du port vidéo de communication et une implémentation
de communication entre deux ports vidéo du DM64x+ pour les streams vidéo BT.656-
et les transferts en mode image [TI.nov.06].

• Port Vidéo de Communication

Cette section couvre les fondations du port vidéo de communication, fournissant


une partie d'information du fond exigée pour implémenter un système où les ports
vidéo sont employés pour communiquer avec d'autres ports vidéo. Le port vidéo lui
même est conçu spécifiquement pour communiquer avec d'autres périphériques vidéo
comme les encodeurs vidéo et les décodeurs vidéo. La figure (4.7) montre une
utilisation standard des ports vidéo.

Port Vidéo Port Vidéo


Décodeur Encodeur
DM6437
Vidéo vidéo

DM6437 EVM

Figure 4.7 : Système vidéo de base digitale.

59
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.2.3.1 Port Vidéo

Le périphérique port vidéo [TI.jun.07] peut fonctionner comme un port capture


vidéo, port d'affichage vidéo, ou interface du transport de stream (transport stream
interface TSI). Il fournit les fonctions suivantes :

4.2.3.1.1 Mode capture vidéo:


– Taux de capture jusqu'à 80 Mhz.
– Deux canaux de 8/10-bit d'entrée-vidéo numérique d'une caméra numérique ou
caméra analogique (utilisée vidéo décodeur). L'entrée-vidéo digitale est sous le
format YCbCr 4:2: 2 avec 8 bits ou de 10 bits de résolution multiplexée au
format ITU-R BT.656.
– Un canal d'entrée-vidéo numérique Y/C 16/20-bit du format YCbCr 4:2:2 sur
séparées Y et Cb/Cr des entrées. Supporte SMPTE 260M, SMPTE 274M,
SMPTE 296M, ITU-BT.1120, etc.
– YCbCr 4:2:2 au YCbCr 4:2:0 conversion horizontale et ½ mesurée dans les 8
bits 4:2 :2.
– Interface directe pour deux canaux de 10 bits ou un canal de 20 bits de vidéo
brute des convertisseurs A/D.
4.2.3.1.2 Mode d'affichage vidéo :
– Taux d'affichage jusqu'à 110 Mhz.
– Un canal de sortie vidéo numérique continue. La sortie vidéo numérique est
YCbCr 4:2:2 avec une résolution de 8/10-bit multiplexée dans le format d'ITU-
R BT.656.
– Un canal de sortie vidéo numérique de Y/C 16/20-bit dans le format YCbCr
4:2 :2 de sur séparées Y et Cb/Cr des sorties. (supporte SMPTE 260M, SMPTE
274M, SMPTE 296M, ITU-BT.1120, etc.).
– YCbCr 4:2:0 au YCbCr 4:2:2 : conversion horizontale et 2× mesurée de sortie
de 8 bits en modes 4:2:2.
– Coupure programmable de BT.656 et Y/C du mode sortie.
– Un canal des données de sorties brutes jusqu'à 20 bits pour l'interface
RAMDACs, deux voies synchronisées de données de sorties brutes.
– Synchroniser un contrôleur vidéo externe ou à un autre port d'affichage vidéo.
60
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

– Utiliser l'horloge externe, le générateur de synchronisation des images fournit


l'image synchronisée programmable qui inclut des masques horizontaux et
verticaux, début de la vidéo active (SAV) et la fin de vidéo active (EAV) code
insertion.
– Générer des synchronisations horizontales et verticales et des signaux
masquant et un frame de synchronisation du signal.
4.2.3.2 Capture Vidéo Mode Sélection

Le mode capture vidéo fonctionne dans un de neuf modes comme énuméré dans le
tableau 4.1. La sélection de TSI (transport stream interface) est faite par l’utilisation
de TSI bit dans le port vidéo registre du control (Video Port Control Register :
VPCTL). Le MODE bits est dans capture vidéo canal x registre du control (Video
Capture channel x Control register VCxCTL). Les Y/C et 16/20-bit modes de capture
brut peuvent seulement être choisis pour le canal A et seulement si le DCDIS bit dans
VPCTL mettant à 0.

Quand fonctionnant comme un canal de capture vidéo brute, aucun choix de données
ou interprétation de données n'est effectué. Le 16/20-bit brut du mode capture est
conçu pour accepter des données des convertisseurs A/D avec une résolution plus
grande que huit bits (utilisée, par exemple, dans l’imagerie médicale).

TSI Bit CMODE Bits Mode Description


entrée-vidéo digital est
8-Bit ITU-R dans YCbCr 4:2:2 avec
0 000 BT.656 8 bits de résolution
Capture multiplexée dans le
format d'ITU-R BT.656

entrée-vidéo digital est


10-Bit ITU-R dans YCbCr 4:2:2 avec
0 001 BT.656 10 bits de résolution
Capture multiplexée dans le
format d'ITU-R BT.656

8-Bit Capture 8 bits de données brutes


0 010 brute au taux
d’échantillonnage

61
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

jusqu'à 80 Mhz.
8 bits ou 10 bits de
10-Bit Capture
données brutes au taux
0 011 brute
d’échantillonnage
jusqu'à 80 Mhz.
L'entrée-vidéo digital
est dans le YCbCr 4:2:
8-Bit Y/C
2 avec une résolution
0 100 Capture
de 8 bits et en parallèle
Y et Cb/Cr ont
multiplexé des canaux.
L'entrée-vidéo digital
est dans le YCbCr 4:2:
10-Bit Y/C 2 avec une résolution
0 101 Capture de 10 bits et en parallèle
Y et Cb/Cr ont
multiplexé des canaux.

16 bits de données
16-Bit Capture
brutes au taux
0 110 brute
d’échantillonnage
jusqu'à 80 Mhz.
20 bits de données
20-Bit Capture
brutes au taux
0 111 brute
d’échantillonnage
jusqu'à 80 Mhz.
8 bits TSI parallèle
1 010 TSI Capture capture au taux jusqu'à
30 Mhz.

Tableau 4.1 : Le fonctionnement du mode capture vidéo.

4.2.3.3 Affichage Vidéo Mode Sélection

Le module d'affichage vidéo fonctionne dans un de trois modes comme énuméré


dans le tableau 4.2. Le DMODE bits est dans registre du control d'affichage vidéo
(Video Display Control Register VDCTL). Les modes d'affichage brut Y/C et 16/20-
bit peuvent seulement être choisis si DCDIS bit dans le port vidéo du registre du
control (VPCTL) mettant à 0.
62
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

CMODE Mode Description


Bits
000 8-Bit ITU-R BT.656 sortie-vidéo digital est dans YCbCr 4:2:2 avec 8 bits de
affichage résolution multiplexée dans le format d'ITU-R BT.656

001 10-Bit ITU-R sortie-vidéo digital est dans YCbCr 4:2:2 avec 10 bits de
BT.656 affichage résolution multiplexée dans le format d'ITU-R BT.656
010 8-Bit affichage brut 8-bit données de sortie

011 10-Bit affichage brut 10-bit données de sortie

100 8-Bit Y/C affichage sortie-vidéo digital est dans le YCbCr 4:2: 2 avec une
résolution de 8 bits et en parallèle Y et Cb/Cr ont
multiplexé des canaux.

101 10-Bit Y/C sortie-vidéo digital est dans le YCbCr 4:2: 2 avec une
affichage résolution de 10 bits et en parallèle Y et Cb/Cr ont
multiplexé des canaux.

110 16-Bit affichage brut 16-bit données de sortie.

111 20-Bit affichage brut 20-bit données de sortie.

Tableau 4.2 : Le fonctionnement du mode affichage vidéo.

4.2.3.4 Software pilote du port vidéo

Le programme pilote du périphérique décrit ici est réellement une partie d'un mini-
pilote d'IOM. C'est-à-dire, il est mis en application comme couche inférieure d'un
modèle de programme pilote du périphérique de deux-couche. La couche supérieure
est le module de FVID (Frame Video driver), qui est un simple emballage sur la
classe pilote du DSP/BIOS GIO. Tandis que GIO fournit un ensemble indépendant et
générique d'APIs et de services pour une large variété de mini-pilotes, FVID fournit
des APIs adaptés aux besoins du client pour la capture et l'affichage de vidéo frame.

63
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

Figure 4.8 : Software pilote du port vidéo.

4.2.3.4.1 Interface FVID API

Le module de FVID présente un API pour les applications du DSP/BIOS qui


exécutent la capture et l'affichage de vidéo. FVID a été implémenté comme un simple
emballage (wrapper) sur la classe pilote de GIO et fournit une interface d'application
spécifique qui a été adaptée aux besoins du client pour la vidéo frame.

Le FVID périphérique du pilote API diffère aux d'autres pilotes de manière qu'il
contrôle la propriété des buffers de données avec l'application. La plupart des pilotes
du périphérique du DSP/BIOS prévues l'application, pour commencer, ils ont le
control des buffers de données et passe l'adresse de ces buffers vers la bas au pilote de
périphérique pour des données proposées d'entrée ou de sortie. Le module FVID, la
capture vidéo et l'affichage des mini-pilotes que cela fonctionne par l'utilisation d’un
modèle inversé dans lequel le pilote du périphérique assume le control initial des
buffers de données. La motivation pour cette approche est que les systèmes vidéo ont
souvent une grande mémoire qui sont optimisés pour le transfert de données à grande
vitesse, plutôt qu'étant assigné du mémoire tas du système. Depuis la taille, l’endroit,

64
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

et les statuts de ces buffers sont placés dans le pilote lui-même, il semble raisonnable
que le pilote aurait le control global.

Des systèmes vidéo frame sont également caractérisés par le multi-buffering efficace
du frame des données. Le double buffering est employé de sorte que quand un buffer
est utilisé pour déplacer des données à ou du hardware d'affichage (et possédé donc par
le pilote), l'autre buffer (est possédé près) soit employé par l'application pour le rendu.
Les deux buffers peuvent alors être permutés pendant un synchro-frame et le processus
sera répété. Triple buffering est employé souvent pour permettre à l'application
d'obtenir un buffer du pilote sans devoir attendre un nouveau synchro-frame.

4.2.3.4.2 Usage du FVID APIs

Comme discuté ci-dessus, le pilote du périphérique a la propriété initiale des


buffers frame et l'application doit assigner ces buffers pour le traitement. Par
conséquent, le rôle principal du FVID APIs est contrôlé la propriété des buffers entre
le pilote du périphérique et l'application. Au cœur de l'interface de FVID sont deux
appels :

– FVID_alloc : Assigner un port vidéo buffer à l'application.


– FVID_exchange. Échanger un buffer d’application-possédé pour un buffer
pilote-possédé.

Une fois que le pilote est initialisé, l'application devra appeler FVID_alloc une fois au
début pour obtenir la propriété initiale du buffer. Après cela, des appels à
FVID_exchange peuvent être employés pour l’échange entre l'application et le pilote.

L'interface de FVID est complètement intégrée dans DSP/BIOS. Pour chaque FVID
canal crée, un objet séparé de synchronisation est initialisé. Les appels à assigner et
l'échange vidéo buffers peuvent être bloquants ou non- bloquants, selon la valeur du
dépassement de durée spécifique quand le canal a été créé.

65
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

Figure 4.9: Zoomer dans le vue hardware : Voyage d’un frame [TI.aug.03].

4.2.3.5 Mode Fenêtre


4.2.3.5.1 Mode Frame

Le mode frame (figure 4.10) permet un progressif frame de données (pleine


résolution verticale) stockées dans la DRAM et les données sont lues séquentiellement,
commençant dès le début d'adresse et sautant chaque autre ligne et en incrémentant par
le 2× l'offset à chaque ligne. La lecture pour le deuxième champ est commencée à
l'offset 1 ligne dès le début d’adresse.

Si le VENC est en mode entrelacé (standard TV mode sortie), des données différentes
sont lues pour chaque champ et le plein frame progressif est fourni à chaque even/odd
champ impair. Dans ce cas, les registres de taille de fenêtre sont programmés au
nombre de lignes dans chaque champ ; c'est-à-dire, le nombre de lignes de VENC
relève pour chaque VSYNC (champ) = 1/2 la taille d'affichage.
66
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

Figure 4.10 : Fenêtre OSD mode frame.

4.2.3.5.2 Mode champ (Field mode)

Le mode champ (figure 4.11) suppose qu'un champ d'affichage est stocké dans la
DRAM et des lignes de données sont lues séquentiellement, commençant dès le début
d'adresse et incrémentant par l'offset à chaque ligne et la répétant pour chaque champ
(ou frame).

Si le VENC est en mode entrelacé (standard TV mode sortie), les mêmes données sont
lues deux fois pour chaque champ. Ces résultats à chaque ligne étant affichés deux
fois, une fois pour chaque champ ; c'est-à-dire, ligne doublée. Dans ce cas, les registres
de taille de fenêtre sont programmés au nombre de lignes dans chaque champ ; c'est-à-
dire, le nombre de lignes le VENC relève pour chaque VSYNC (champ) = 1/2 la taille
d'affichage. Alternativement, si des images vidéo entrelacées doivent être affichées, à
partir d'opération décodée vidéo, l'adresse de début peut être changée à chaque
VSYNC au ping-pong entre les deux champs vidéo actuelle et émettre les données
entrelacées au sortie d'affichage entrelacé.

Si le VENC est en mode progressif, alors le mode champ devrait être employé de sorte
que toutes les données soient lues de la DRAM progressivement de sorte que chaque
ligne soit montrée une fois par frame progressif. Dans ce cas, des registres de taille de
fenêtre sont programmés au nombre de lignes dans chaque frame progressif ; c'est-à-

67
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

dire, le nombre de lignes de VENC lu pour chaque VSYNC (frame) = taille d'affichage
pleine.

Figure 4.11 : Fenêtre OSD mode champ.

68
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.2.3.6 Fenêtres vidéo

Les deux fenêtres vidéo (VIDWIN0 et VIDWIN1) peuvent être affichées


simultanément. Des données référencées par chaque fenêtre vidéo sont lues de la
mémoire externe et affichées dans les deux fenêtres.

La fenêtre vidéo 0 est, donc, typiquement la toile sur laquelle le GUI est construit,
avec les autres fenêtres servant de stockage aux graphiques/recouvrements d'essai,
l'image-dans-image recouverte à l'intermédiaire de VIDWIN1, etc. Le format de
données primaire admis par les fenêtres vidéo est YUV 4:2:2 données intercalées
comme décrites ci-dessous. C'est le format de données de sortie par le VPFE et les
modules redimensionner (resizer). Typiquement, les décodeurs vidéo/image
produisent cette sortie et les encodeurs acceptent aussi bien ce format d'entrée.

Des données de fenêtre OSD sont toujours pressées dans des mots à 32 bits. À partir
du coin gauche supérieur de la fenêtre OSD, toutes les données seront pressées dans
des mots adjacents à 32 bits. La figure 4.12 montre le format des données de fenêtre de
données dans la SDRAM.

Gauche supérieur
P0 P1 P2 P3 P4 P5 P6 P7

Figure 4.12 : Arrangement des pixels dans l’affichage.

4.2.3.6.1 Fenêtre de données vidéo - format YUV422

La fenêtre OSD de données vidéo est dans le format YCbCr 4:2:2. D'autres
formats, par exemple, 4:2:0 et 4:4:4 formats de données intercalés ne sont pas
supportés. Noter que l'ordre des données Cb et Cr dépend de MODE.CS (chroma
swap). La figure (4.13) décrit le cas par défaut de l'ordre Cb/Cr.

Noter que à chaque ligne horizontale des données de fenêtre doit être un multiple de
32 octets, fenêtre de données vidéo doit contenir un multiple de 32 octets /2 octets
/Pixel = 16 Pixel par ligne horizontale.

69
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

Figure 4.13 : Format de données vidéo- YUV422 [TI.dec.07].

4.2.3.6.2 Espace chromatique YCrCb (ou YCbCr)

L'espace chromatique YCrCb ou YCbCr a été développé en tant qu'élément de


l'ITU-R BT.601 pendant le développement d'une norme universel de composante
vidéo numérique. YCbCr est la version offset de l'espace chromatique YUV. Y a une
gamme nominale de 16-235 ; Cb et Cr ont une gamme nominale de 16-240. Il y a
plusieurs formats de prélèvement du YCbCr, tels que le 4:4:4, 4:2:2, et 4:2: 0.

Figure 4.14 : Représentation des couleurs RGB et YCrCb.

Y = (0.2990 · R) + (0.5870 · G) + (0.1140 · B)


Cb = (–0.1687 · R) – (0.3313 · G) + (0.5000 · B) + 128
Cr = (0.5000 · R) – (0.4187 · G) – (0.0813 · B) + 128

R = (1.00000 · Y) + (0.00000 · (Cb – 128)) + (1.40200 · (Cr – 128))


G = (1.00000 · Y) – (0.34414 · (Cb – 128)) – (0.71444 · (Cr – 128))
B = (1.00000 · Y) + (1.72200 · (Cb – 128)) + (0.00000 · (Cr – 128))

70
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.3 Implémentation sur la carte TMS320 DM6437 EVM


Dans cette section, Nous nous intéressons à l’implémentation sur la carte DSP
DM6437 EVM une méthode de la mono-vision du calcul la distance et la vitesse
d’un objet mobile.

La figure suivante montre le système de mesure par le DSP DM6437 EVM.

Caméra
Ecran LCD

DM6437 EVM

Figure 4.15: Système de mesure par le DSP DM6437 EVM.

 Paramètres de la carte DM6437 EVM


• Horloge de la carte = 20000 Khz.
• Vitesse du DSP (CLKOUT) = 594 Mhz.
• 1.683 ns Cycle d’instruction.
• Huit 32-Bit C64x+ Instructions/Cycle
• 4752 MIPS.

71
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

• Niveau d’optimisation : File (-o3).


• Configuration du Projet : Release.
• Nombre des cycles d’acquisition =236 675 220 cycles.
• Nombre du frame =30.
• Cycle total = 330 000 545 cycles.
• Nombre du frame = 21.45.

Figure 4.16: Mesure de distance proche d’un véhicule à une vitesse = 20 Km/h.

72
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

Figure 4.17: Mesure de distance d’un véhicule éloignée à une vitesse = 20 Km/h.

73
Chapitre 4 Implémentation sur la carte DSP DM 6437 EVM

4.4 Conclusion
Dans la première partie de ce chapitre, nous avons présenté en détails la carte DSP
DM6437 EVM, qui est basée sur l'architecture de troisième génération de VLIW (Very
Long Instruction Word) de VelociTI™ développée par Texas Instruments (TI), faisant
à cette carte un excellent choix pour des applications numériques de médias.
La carte DSP DM6437 EVM donne des approches adaptables aux problèmes
classiques du traitement du signal. Ils supportent également les applications
complexes qui exigent souvent des opérations multiples d'être effectuées
simultanément.
Avec une performance de 4752 millions instructions par seconde (MIPS) à une
fréquence de 594 Mhz, Le noyau de cette carte DSP peut produire quatre 16 bits
multiplication-accumulation (MACs) par cycle pour un total de 2800 millions MACs
par seconde (MMACS), ou huit 8 bits MACs par cycle pour un total de 5600
MMACS.

Dans la seconde partie de ce chapitre, nous avons implémenté une méthode de la


mono-vision du calcul la distance et la vitesse d’un objet mobile. Les résultats que
nous avons obtenus montrent la haute performance de DM6437 EVM, et le calcul en
temps réel.

74
Conclusions et perspectives

1. Conclusions
L’objectif de cette thèse était de construire un système permettant de mesurer
de manière précise, la distance et la vitesse d’un objet mobile par un système de
vision, appliqué dans l’environnement routier.

Pour la mesure de la distance et la vitesse d’un véhicule, nous avons mis en


œuvre deux techniques de la mono-vision et d’autre technique de la stéréovision.
Ces techniques requièrent des informations synthétiques sur le véhicule cible,
telle que leur position et leur taille. Pour ce faire, nous avons appliqué un
traitement intermédiaire s’appelle la détection qui se basant sur le calcul de la
différence entre les frames ou bien les images de vidéo.

L’approche de la mono-vision applique le calcul du champ de vision qui


nécessite la connaissance au préalable de la taille de l’objet réelle et son
équivalant dans l’image.

Pour la mesure par stéréovision, nous avons mis en œuvre une technique de
stéréo-corrélation couplant la stéréovision et l’appariement de point par
corrélation. La précision des mesures obtenues dépend à la fois de la qualité
du calibrage du banc de stéréovision, et de la précision d’appariement des
paires d’images stéréoscopiques.

Habituellement le calibrage du banc stéréoscopique est obtenu à partir du


calibrage indépendant de chacune des deux caméras. Pour ce faire, nous avons
appliqué la calibration hybride qui s’utilise une mire plane, puisque, elle fournit
néanmoins un compromis tout à fait valable entre la précision et la flexibilité.

En ce qui concerne l’appariement stéréoscopique des images par


corrélation, nous avons appliqué une méthode basée sur des domaines ou des
fenêtres de corrélation. Cette technique, appelée stéréo-corrélation, calcule les

75
scores de corrélation directement dans les images acquises par le banc
stéréoscopique.

En ce qui concerne l’application en temps réel, nous avons implémenté la


méthode d’interpolation de la mono-vision sur une carte DSP DM6437 EVM.

2. Perspectives
Le travail exploratoire est plus ou moins abouti selon les fonctionnalités, et
pour certaines d’entre elles, nos travaux peuvent être améliorés.

Le premier point à améliorer concerne la résolution de l’image pour les


distances éloignée, nous proposons deux solutions :

• Au niveau du hardware : nous choisissons un objectif à une focale


correspondante aux distances éloignées.
• Au niveau du software : nous travaillons par les fonctions zoom.

Le deuxième point concerne la détection des objets mobiles ou bien les


obstacles, nous proposons une approche modélise la route et détecte les
obstacles uniquement de jour comme la nuit par stéréovision.

Le troisième et dernier point concerne l’implémentation du système


stéréovision dans la carte DSP, et l’optimisation des programmes
implémentés dans la carte DSP DM6437 EVM.

Dans notre travail de future, nous nous intéressons au système embarqué dans
un véhicule, nous prendrons en considération les points suivants :

• L’auto calibration.
• La vidéo stabilisation.

76
Bibliographie

[Bey .92] Horst A. Beyer. Accurate Calibration of CCD Cameras. Dans


IEEE Conferene on Computer Vision and Pattern Reognition
(CVPR'92), 1992.

[Bou.98] S. Bougnoux, From projective to Euclidian space under any


practical situation, a criticism of self-calibration. In
Proceedings of the 6th International Conference on Computer
Vision, pages 790-796, Jan. 1998.

[Cha.05] S.Chambon, Mise en correspondance stéréoscopique


d’images couleur en présence d’occultations, Thèse de
doctorat de l’université Paul Sabatier, 2005.

[Gar.01] D.Garcia, Mesure de formes et de champs de déplacements


tridimensionnels par stéréo-corrélation d’images, Thèse de
l’université de l’institut national polytechnique de Toulouse,
2001.

[Gup et.al.02] S.Gupte, O.Masoud, F.K.Martin, P.Papanikolopoulos ,


Detection and Classification of Vehicles, IEEE transactions
intelligent transportation systems,vol.3,no.1,march 2002

[Har.04] M. Hariti, Une Méthode Rapide D’appariement d’Images


Stéréoscopiques : Application à la Perception de
l’Environnement d’Un Véhicule Routier, Thèse de
l’Université de Technologie de Belfort-Montbéliard,
décembre 2004.

[Hor et al.] R.Horaud,O.Monga, Vision par ordinateur : outils


fondamentaux, ouvrage rédigé avec le concours du Ministère
de l’enseignement supérieur et de la recherche (DIST),
deuxième édition.

[Lem.05] V.Lemonde, Stéréovision embarquée sur véhicule : de l’auto-


calibrage à la détection d’obstacles, Thèse de doctorat de
l’institut national des sciences appliquées de Toulouse, 2005.

77
[Luo.92] Q.-T. Luong. Matrice Fondamentale et calibration Visuelle
sur l’Environnement Vers une plus grande autonomie des
systèmes robotiques. PhD thesis, Université de Paris-Sud,
Centre d’Orsay, Dec. 1992.

[Mor.08] J.Morat, vision stéréoscopique par ordinateur pour la


détection et le suivi de cibles pour une application
automobile, Thèse de doctorat de l’institut national
polytechnique de Grenoble, 2008.

[Nao.06] Architectures pour la stéréovision passive dense temps réel :


application à la stéréovision-Endoscopie, Thèse de doctorat
de l’université Paul Sabatier, 2006.

[Pér.94] José-Philippe Pérez. Optique géométrique et ondulatoire.


Masson, édition quatrième, 1994.

[Rui.05] Perception de l’environnement par stéréovision : application


à la sécurité dans les systèmes de transports terrestres,
Habilitation à diriger des recherches, université des sciences
et Technologie de Lille, 2005.

[TI.aug.03] Texas Instruments , The TMS320DM642 Video Port Mini-


Driver, August 2003.

[TI.augu.03] Texas Instruments, TMS320C6416/C6713 DSK One-Day


Workshop- Student Guide, August 2003

[TI.dec.06] Texas Instruments, Evaluation Module Technical Reference,


December 2006.

[TI.dec.07] Texas Instruments, TMS320DM643x DMP Video Processing


Back End (VPBE), December 2007

[TI.jun.07] Texas Instruments, TMS320C64x DSP Video Port/VCXO


Interpolated Control (VIC) Port, June 2007.

[TI.mar.08] Texas Instruments, TMS320DM643x DMP Video Processing


Front End (VPFE, March 2008.

[TI.nov.06] Texas Instruments, TMS320DM64x Video Port to Video


Port Communication, November 2006.

[TI.oct.06] Texas Instruments, Code Composer Studio Development


Tools v3.3 Getting Started Guide, October 2006.

78
[TI.oct.08] Texas Instruments, TMS320C64x/C64x+ DSP, CPU and
Instruction Set. October 2008.
[Tsa.87] R.Y. Tsai. A versatile camera calibration technique for high-
accuracy 3D machine vision metrology using off-the-shelf tv
cameras and lenses. IEEE Journal of Robotics and
Automation, 3(4): 323-344, August 1987.

[WCH.92] J. Weng, P. Cohen, M. Herniou. Camera calibration with


distortion models and accuracy evaluation. IEEE
Transactions on Pattern Analysis and Machine Intel ligence,
1992.

[ZAY.05] M.ZAYED : Véhicules Intelligents : Etude et développement


d’un capteur intelligent de vision pour l’attelage virtuel,
Présentée à l’Université des Sciences et Technologies de
Lille, 2005.

[Zha.00] Z. Zhang, A Flexible New Technique for Camera


Calibration. IEEE Transactions on Pattern Analysis and
Machine Intelligence. 22(11):1330-1334. 2000.

79
Annexe A
A.1. Le détecteur de Harris

La première étape appliquée par l’algorithme consiste à calculer les dérivées de


l’intensité pixel I (u,v) suivant u et v dans l’image. A l’issue de cette opération,
pour chaque pixel d’abscisse u et d’ordonnée v, une matrice A (u,v) est calculée
suivant.
2
⎡ �𝜕𝜕𝜕𝜕(𝑢𝑢, 𝑣𝑣)� 𝜕𝜕𝜕𝜕(𝑢𝑢, 𝑣𝑣) 𝜕𝜕𝜕𝜕(𝑢𝑢, 𝑣𝑣)⎤
⎢ 𝜕𝜕𝜕𝜕 𝜕𝜕𝜕𝜕 𝜕𝜕𝜕𝜕 ⎥
𝐴𝐴(𝑢𝑢, 𝑣𝑣 ) = ⎢ (𝐴𝐴. 1)
⎢𝜕𝜕𝜕𝜕(𝑢𝑢, 𝑣𝑣) 𝜕𝜕𝜕𝜕(𝑢𝑢, 𝑣𝑣) 𝜕𝜕𝜕𝜕(𝑢𝑢, 𝑣𝑣) 2 ⎥⎥
⎣ 𝜕𝜕𝜕𝜕 � � ⎦
𝜕𝜕𝜕𝜕 𝜕𝜕𝜕𝜕

Les valeurs propres sont calculées très classiquement en résolvant l’équation:


Det (A-λI 2 ) =0, où λ représente les valeurs propres et I 2 est la matrice identité.
S’agissant d’une équation du second degré, les solutions recherchées s’expriment
simplement par :

1
𝜆𝜆 = �𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇(𝐴𝐴) ± �𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇 2 (𝐴𝐴) − 4 𝐷𝐷𝐷𝐷𝐷𝐷 (𝐴𝐴)� (𝐴𝐴. 2)
2

Les quantités Det (A) et Trace (A) représentant respectivement le déterminant


et la trace de la matrice A.
En terme d’interprétation, si les deux valeurs propres (λ 1 , λ 2 ) de la matrice A
sont élevées, cela signifie qu’un petit déplacement dans n’importe quelle direction
à partir du pixel considéré engendrera un changement significatif du niveau de
gris, ce qui se passe exactement dans le cas des coins. Par conséquent, en
analysant les valeurs propres minimums calculées pour chaque pixel, on peut en
déduire si ce dernier constitue effectivement un « coin ». Cette extraction de la
valeur minimale des deux valeurs propres calculées s’exprime par :

𝑓𝑓(𝑥𝑥, 𝑦𝑦) = min(𝜆𝜆1 (𝑢𝑢, 𝑣𝑣), 𝜆𝜆2 (𝑢𝑢, 𝑣𝑣)) (𝐴𝐴. 3)

80
Etant donné un seuil ξ (calculé généralement à partir de l’histogramme des
valeurs propres minimums pour chacun des pixels de l’image), si f (u,v) > ξ, on
peut conclure que le pixel de coordonnées (u v)T est vraisemblablement un coin.
Pour éviter de détecter plusieurs coins liés au coin réel, un candidat n’est
considéré comme tel que s’il est suffisamment loin des N coins déjà détectés, ce
qui se traduit par l’inégalité suivante :

∀𝑖𝑖 < 𝑁𝑁, ‖𝐶𝐶𝑖𝑖 (𝑥𝑥, 𝑦𝑦) − 𝐶𝐶𝑁𝑁 (𝑥𝑥, 𝑦𝑦)‖ ≥ 𝐷𝐷 (𝐴𝐴. 4)

D étant la distance euclidienne minimum qui doit séparer n’importe quelle paire
de coins.

81
Annexe B

Les résultats expérimentaux

B.1 Les résultats de la calibration


• Paramètres intrinsèques de la camera gauche
Focale: fc_gauche = [ 948.40580 941.53714 ] ± [ 6.94042 6.06014 ] pixel

= [7.1130 7.0615 ] mm

Point principal: cc_ gauche = [ 252.74477 263.80030 ] ± [ 14.77079 10.04964 ]

Distortion:

kc_l gauche = [ -0.25426 0.03234 0.00289 -0.01523 0.00000 ]

± [ 0.06197 0.25751 0.00182 0.00565 0.00000 ]

F(mm) H = 4.8*948.40580 focal(pixel)/640

= 7.1130 mm

F(mm) V = 3.6*941.53714 focal(pixel) /480

= 7.0615 mm

• Paramètres intrinsèques de la camera droite

Focale: fc_droite = [ 926.15844 925.36057 ] ± [ 6.04105 5.90167 ] pixel

=[6.9462 6.9402 ] mm

Point principal: cc_ droite = [ 214.16752 271.42333 ] ± [ 13.47542 12.22202 ]

82
Distortion:

kc_ droite = [ -0.34973 0.30297 0.00630 -0.00263 0.00000 ]

± [ 0.06513 0.63385 0.00260 0.00230 0.00000 ]

F(mm) H =4.8*926.15844 focal(pixel)/640

= 6.9462 mm

F(mm) V =3.6*925.36057 focal(pixel)/480

= 6.9402 mm

• Paramètres Extrinsèques (position de la caméra droite par rapport la


caméra gauche):

Vecteur de Rotation:

om = [ 0.01593 -0.00753 -0.00387 ] ± [ 0.01513 0.01920 0.00117 ]

Vecteur de Translation:

T = [ -102.91690 -2.08757 -3.30751 ] ± [ 0.71685 0.52166 4.32224 ]

83
B.2 Les résultats de la méthode de mono-vision (champ de vision)
• Hauteur (h) de la caméra = 1 .28 m
• Vitesse réelle = 20 ± 2 Km/h

50

45

40

35
Vitesse [ Km/h ]

30

25

20

15

10
10 15 20 25 30 35 40
Distance [ M ]

Figure B.1: Vitesse en fonction de la distance (h=1.28 m, v=20 ± 2 Km/h).


50

45

40

35
Distance [ M ]

30

25

20

15

10

5
200 220 240 260 280 300 320
Pixels
Figure B.2: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=20 ± 2
Km/h).

84
50

45

40

35
Distance [ M ]

30

25

20

15

10

5
360 380 400 420 440 460 480 500 520 540 560
Number Frame

Figure B.3: Distance mesurée en fonction du numéro du frame (temps) (h=1.28 m,


v=20 ± 2 Km/h).
50

45

40
Vitesse [ Km/h ]

35

30

25

20

15
380 400 420 440 460 480 500 520 540 560
Number Frame

Figure B.4: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28 m, v=20
± 2 Km/h.

85
• Hauteur (h) de la caméra = 1 .28 m
• Vitesse réelle = 40 ± 2 Km/h

70

65

60

55
Vitesse [ Km/h ]

50

45

40

35

30
10 15 20 25 30 35 40
Distance [ M ]

Figure B.5: Vitesse en fonction de la distance (h=1.28 m, v=40 ± 2 Km/h).

50

45

40

35
Distance [ M ]

30

25

20

15

10

5
200 220 240 260 280 300 320
Pixels

Figure B.6: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=40 ± 2
Km/h).

86
50

45

40

35
Distance [ M ]

30

25

20

15

10

5
250 260 270 280 290 300 310 320 330 340 350
Number Frame

Figure B.7: Distance mesurée en fonction du numéro du frame (temps) (h=1.28 m,


v=40 ± 2 Km/h).

70

65

60

55
Vitesse [ Km/h ]

50

45

40

35

30
310 315 320 325 330 335 340 345 350 355 360
Number Frame

Figure B.8: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28 m, v=40
± 2 Km/h).

87
• Hauteur (h) de la caméra = 1 .28 m
• Vitesse réelle = 60 ± 3 Km/h
80

75

70

65
Vitesse [ Km/h ]

60

55

50

45

40
10 15 20 25 30 35 40
Distance [ M ]

Figure B.9: Vitesse en fonction de la distance (h=1.28 m, v=60 ± 3 Km/h).


50

45

40

35
Distance [ M ]

30

25

20

15

10

5
200 210 220 230 240 250 260 270
Pixels

Figure B.10: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=60 ± 3
Km/h).

88
50

45

40

35
Distance [ M ]

30

25

20

15

10

5
160 170 180 190 200 210 220 230
Number Frame

Figure B.11: Distance mesurée en fonction du numéro du frame (temps) (h=1.28 m,


v=60 ± 3 Km/h).

80

75

70

65
Vitesse [ Km/h ]

60

55

50

45

40
170 180 190 200 210 220
Number Frame
Figure B.12: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28 m,
v=60 ± 3 Km/h).

89
• Hauteur (h) de la caméra = 1 .28 m
• Vitesse réelle = 80 ± 4 Km/h

120

110

100

90

80
Vitesse [ Km/h ]

70

60

50

40

30

20

10
15 20 25 30 35 40 45 50 55
Distance [ M ]

Figure B.13: Vitesse en fonction de la distance (h=1.28 m, v=80 ± 4 Km/h).

55

50

45

40
Distance [ M ]

35

30

25

20

15

10
205 210 215 220 225 230 235 240 245
Pixels

Figure B.14: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=80 ± 4
Km/h).

90
55

50

45

40
Distance [ M ]

35

30

25

20

15

10
180 185 190 195 200 205 210 215 220 225
Number Frame

Figure B.15: Distance mesurée en fonction du numéro du frame (temps) (h=1.28 m,


v=80 ± 4 Km/h).

120

110

100

90

80
Vitesse [ Km/h ]

70

60

50

40

30

20

10
180 185 190 195 200 205 210 215 220
Number Frame

Figure B.16: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28 m,


v=80 ± 4 Km/h).

91
• Hauteur (h) de la caméra = 1 .28 m
• Vitesse réelle = 100 ± 5 Km/h

180

170

160

150
Vitesse [ Km/h ]

140

130

120

110

100

90

80
15 20 25 30 35 40 45 50
Distance [ M ]

Figure B.17: Vitesse en fonction de la distance (h=1.28 m, v=100 ± 5 Km/h).

55

50

45

40

35
Distance [ M ]

30

25

20

15

10

5
200 210 220 230 240 250 260 270
Pixels
Figure B.18: Distance mesurée et son équivalant dans l’image (h=1.28 m, v=100 ± 5
Km/h).

92
55

50

45

40

Distance [ M ]
35

30

25

20

15

10

5
115 120 125 130 135 140 145 150 155 160
Number Frame

Figure B.19: Distance mesurée en fonction du numéro du frame (temps) (h=1.28 m,


v=100 ± 5 Km/h).
180

170

160

150
Vitesse [ Km/h ]

140

130

120

110

100

90

80
115 120 125 130 135 140 145 150 155
Number Frame

Figure B.20: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.28 m,


v=100 ± 5 Km/h).

93
• Hauteur (h) de la caméra = 2.2 m
• Vitesse réelle = 40 ± 2 Km/h
100

90

80

70
Vitesse [ Km/h ]

60

50

40

30

20

10
10 20 30 40 50 60 70
Distance [ M ]

Figure B.21: Vitesse en fonction de la distance (h=2.2 m, v=40 ± 2 Km/h).


70

60

50
Distance [ M ]

40

30

20

10

0
220 240 260 280 300 320 340
Pixels

Figure B.22: Distance mesurée et son équivalant dans l’image (h=2.2 m, v=40 ± 2
Km/h).

94
70

60

50
Distance [ M ]
40

30

20

10

0
150 200 250 300
Number Frame

Figure B.23: Distance mesurée en fonction du numéro du frame (temps) (h=2.2 m,


v=40 ± 2 Km/h).

100

90

80

70
Vitesse [ Km/h ]

60

50

40

30

20

10
160 180 200 220 240 260 280
Number Frame

Figure B.24: Vitesse mesurée en fonction du numéro du frame (temps) (h=2.2 m,


v=40 ± 2 Km/h).

95
• Hauteur (h) de la caméra = 2.2 m
• Vitesse réelle = 80 ± 4 Km/h
120

110

100

90
Vitesse [ Km/h ]

80

70

60

50

40

30
0 10 20 30 40 50 60 70
Distance [ M ]

Figure B.25: Vitesse en fonction de la distance (h=2.2 m, v=80 ± 4 Km/h).

70

60

50
Distance [ M ]

40

30

20

10

0
200 220 240 260 280 300 320 340
Pixels

Figure B.26: Distance mesurée et son équivalant dans l’image (h=2.2 m, v=80 ± 4
Km/h).

96
70

60

50
Distance [ M ]

40

30

20

10

0
110 120 130 140 150 160 170 180
Number Frame

Figure B.27: Distance mesurée en fonction du numéro du frame (temps) (h=2.2 m,


v=80 ± 4 Km/h).
120

110

100

90
Vitesse [ Km/h ]

80

70

60

50

40

30
120 130 140 150 160 170
Number Frame

Figure B.28: Vitesse mesurée en fonction du numéro du frame (temps) (h=2.2 m,


v=80 ± 4 Km/h).

97
• Hauteur (h) de la caméra = 2.2 m
• Vitesse réelle = 110 ± 5 Km/h

180

160
Vitesse [ Km/h ]

140

120

100

80

10 15 20 25 30 35 40
Distance [ M ]

Figure B.29: Vitesse en fonction de la distance (h=2.2 m, v=110 ± 5 Km/h).

45

40

35

30
Distance [ M ]

25

20

15

10

5
140 145 150 155 160 165 170 175
Number Frame

Figure B.30: Distance mesurée en fonction du numéro du frame (temps) (h=2.2 m,


v=110 ± 5 Km/h).

98
• Hauteur (h) de la caméra = 1.31 m
• Vitesse réelle = 20 ± 2 Km/h
• l’angle de roulis Ф =10 °
30

25

20
Vitesse [ Km/h ]

15

10

5 10 15 20 25 30 35
Distance [ M ]

Figure B. 31: Vitesse en fonction de la distance (h=1.31 m, v=20 ± 2 Km/h, Ф =10 °).
40

35

30

25
Distance [ M ]

20

15

10

0
20 40 60 80 100 120 140 160
Pixels

Figure B.32: Distance mesurée et son équivalant dans l’image (h=1.31 m, v=20 ± 2

Km/h, Ф =10 °).

99
45

40

35

30
Distance [ M ]

25

20

15

10

0
40 60 80 100 120 140 160 180 200 220 240
Number Frame

Figure B.33: Distance mesurée en fonction du numéro du frame (temps) (h=1.31 m,


v=20 ± 2 Km/h, Ф =10 °).
40

35

30
Vitesse [ Km/h ]

25

20

15

10

5
80 100 120 140 160 180 200 220
Number Frame

Figure B.34: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.31 m,


v=20 ± 2 Km/h, Ф =10 °).

100
• Hauteur (h) de la caméra = 1.31 m
• Vitesse réelle = 50 ± 2 Km/h
• l’angle de roulis Ф =10 °
100

90

80

70
Vitesse [ Km/h ]

60

50

40

30

20

10

5 10 15 20 25 30 35 40 45 50
Distance [ M ]

Figure B.35: Vitesse en fonction de la distance (h=1.31 m, v=50 ± 2 Km/h, Ф =10 °).

35

30

25
Distance [ M ]

20

15

10

0
20 40 60 80 100 120 140 160 180 200
Pixels
Figure B.36: Distance mesurée et son équivalant dans l’image (h=1.31 m, v=50 ± 2
Km/h, Ф =10 °).

101
40

35

30

25
Distance [ M ]

20

15

10

0
180 200 220 240 260 280 300
Number Frame

Figure B.37: Distance mesurée en fonction du numéro du frame (temps) (h=1.31 m,


v=50 ± 2 Km/h, Ф =10 °).

80

70

60
Vitesse [ Km/h ]

50

40

30

20
230 240 250 260 270 280 290
Number Frame

Figure B.38: Vitesse mesurée en fonction du numéro du frame (temps) (h=1.31 m,


v=50 ± 2 Km/h, Ф =10 °).

102
B.3 Les résultats de l’approche de la stéréovision
• Vitesse réelle = 20 ± 2 Km/h
• Base line =10 cm
• Focale =948.40580 Pixel =7.1130 mm
45

40

35

30
Vitesse [ Km/h ]

25

20

15

10

5 10 15 20 25 30 35 40 45 50
Distance [ M ]

Figure B.39: Vitesse en fonction de la distance par stéréovision (v=20±2 Km/h).


60

55

50

45

40
Distance [ M ]

35

30

25

20

15

10

5
100 150 200 250 300 350
Nombre de Frame

Figure B.40: Distance mesurée en fonction du numéro du frame (temps) par


stéréovision (v=20±2 Km/h).

103
30

25

20
Vitesse [ Km/h ]

15

10

0
180 200 220 240 260 280
Nombre de Frame

Figure B.41: Vitesse mesurée en fonction du numéro du frame (temps) par


stéréovision (v=20±2 Km/h).

• Vitesse réelle = 50 ± 2 Km/h


• Base line =10 cm
• Focale =948.40580 Pixel =7.1130 mm
100

90

80

70
Vitesse [ Km/h ]

60

50

40

30

20

10

5 10 15 20 25 30 35 40 45 50
Distance [ M ]

Figure B.42: Vitesse en fonction de la distance par stéréovision (v=50±2 Km/h).


104
60

55

50

45

40
Distance [ M ]

35

30

25

20

15

10

5
80 100 120 140 160 180 200
Nombre de Frame
Figure B.43: Distance mesurée en fonction du numéro du frame (temps) par
stéréovision (v=50±2 Km/h).
100

90

80

70
Vitesse [ Km/h ]

60

50

40

30

20

10

0
105 110 115 120 125 130 135 140 145 150
Nombre de Frame

Figure B.44: Vitesse mesurée en fonction du numéro du frame (temps) par


stéréovision (v=20±2 Km/h).

105
B.4 Implémentation sur la carte TMS 320 DM6437 EVM

Figure B.45: Implémentation du l’algorithme de détection.

106
Figure B.46: Implémentation du l’algorithme du Sobel.

Figure B.47: Mesure de distance d’un piéton éloigné.

107
Figure B.48: Mesure de distance d’un piéton proche.

108

View publication stats

You might also like