ECOLE NATIONALE DES SCIENCES
APPLIQUEES - TANGER
UNIVERSITE ABDELMALEK
ESSAADI
Projet de Fin d’Etudes
Présenté à l’école p...
ii
Avant-Propos
Nom et prénom de l’élève stagiaire de l’ENSA-Tanger
M. Bilal JAMJAMA
Génie des Systèmes Electroniques & Au...
iii
Dédicaces
A mes très chers parents,
A mes chers frères et à mes adorables sœurs,
A toute ma famille,
A tous mes amis,
...
iv
Remerciements
J’exprime toutes mes reconnaissances à M. François BOURZEIX, le manager de
l’équipe « Système Embarqué »,...
v
vi
Résumé
Face au fléau d’insécurité et des accidents routiers que connait le Maroc, s’accentuant
de plus en plus et allan...
vii
Abstract
In response to the scourge of insecurity and road accidents in Morocco, which tends to
be likely accentuated ...
viii
Table des matières
.....................................................................................................
ix
2. Lecture automatique des plaques d’immatriculations ............................................................. 29
...
x
1. Estimation du shift.....................................................................................................
xi
Liste des figures
Figure 1 : Contrats et produites de MAScIR entre 2010 et 2014...........................................
xii
Figure 31 : les étapes essential dans notre algorithme...................................................................
xiii
Liste des tableaux
Tableau 1 : Description du projet ...................................................................
xiv
Acronymes
APNR Automatic Plate Number Recognition
ERP Electronic Road Pricing
LP License Plate
LAPI Lecture automatiqu...
xv
Introduction générale
Dans les dernières décennies, le monde portait un intérêt croissant pour Les systèmes
de transpor...
xvi
développer un algorithme pouvant localiser les plaques d’immatriculation des véhicules dont
la couleur diffère du blan...
17
Chapitre I: Contexte général du projet
I. Introduction
Le présent chapitre permet de situer le projet dans son contexte...
Chapitre I : Contexte général du projet
18
II.Organisme d’accueil
1. Fondation MAScIR
1.1 Aperçu sur la fondation MAScIR
L...
Chapitre I : Contexte général du projet
19
6
17
22 23
35
2010 2011 2012 2013 2014
représentent quelques chiffres qui résum...
Chapitre I : Contexte général du projet
20
 Comité de vérification
Le rôle principal du comité d'audit est de permettre à...
Chapitre I : Contexte général du projet
21
 NanoTech
Nanomaterials et NanoTechnology a pour mission
de mener des recherch...
Chapitre I : Contexte général du projet
22
 Clients importants de MAScIR
MAScIR traite également plusieurs projets pour s...
Chapitre I : Contexte général du projet
23
 Produits embarqués pour la gestion du trafic routier,
 Projets énergétiques....
Chapitre I : Contexte général du projet
24
III.Cahier des charges & plan d’action
1. Contexte du projet
1.1 Problématique
...
Chapitre I : Contexte général du projet
25
L’année dernière, MAScIR a lancé un appel pour un stage PFE ayant comme objecti...
Chapitre I : Contexte général du projet
26
Tableau 2 : Planning proposé par MAScIR
1.1 Taches réalisées
Pour une bonne ges...
27
Chapitre II: Etat d’art et Description de
l’algorithme existant
I. Introduction
Dans ce chapitre nous allons introduire...
Chapitre II : Etat d’art et description de l’algorithme existant
28
II.Etat de l’art
1. Systèmes de transport intelligents...
Chapitre II : Etat d’art et description de l’algorithme existant
29
Card sorte de carte de péage rechargeable, des portail...
Chapitre II : Etat d’art et description de l’algorithme existant
30
I. Localisation de la plaque : responsable de trouver ...
Chapitre II : Etat d’art et description de l’algorithme existant
31
III.Description de l’algorithme existant
1. Chaîne alg...
Chapitre II : Etat d’art et description de l’algorithme existant
32
1.1 Localisation des plaques
La première partie de l’a...
Chapitre II : Etat d’art et description de l’algorithme existant
33
La présence de pixels plus sombres sur les images sour...
Chapitre II : Etat d’art et description de l’algorithme existant
34
 Filtrage Gaussien
Le filtre Gaussien est utilisé, es...
Chapitre II : Etat d’art et description de l’algorithme existant
35
1.2 Fusion
La deuxième partie de l’algorithme existant...
Chapitre II : Etat d’art et description de l’algorithme existant
36
Dans des cas comme le projet radar, les images sont pr...
Chapitre II : Etat d’art et description de l’algorithme existant
37
d’énergies horizontales et verticales, l’augmentation ...
Chapitre II : Etat d’art et description de l’algorithme existant
38
2. Résultat de l’algorithme existant
L'algorithme a un...
Chapitre II : Etat d’art et description de l’algorithme existant
39
écrits en langage Mathematica, c’est ce qui nous a don...
Chapitre II : Etat d’art et description de l’algorithme existant
40
2. Image ToolBox
Image Processing Toolbox fournit un e...
Chapitre II : Etat d’art et description de l’algorithme existant
41
3. OpenCV
OpenCV (Open Source Computer Vision) est une...
Chapitre II : Etat d’art et description de l’algorithme existant
42
V. Conclusion
Jusqu'à maintenant, nous avons proposé d...
43
Chapitre III: Analyse critique de l’algorithme
existant
I. Introduction
Ce chapitre aura pour objectif d'expliciter les...
Chapitre III : Analyse critique de l’existant
44
II.Problématique
L’étape de génération de vecteur de test représente l’ét...
Chapitre III : Analyse critique de l’existant
45
1. Présentation de l’interface graphique du logiciel
Dans le but de répon...
Chapitre III : Analyse critique de l’existant
46
les détails des opérations effectuées
2. Simulation de l’effet de la dist...
Chapitre III : Analyse critique de l’existant
47
entrée. Le cas de la figure 19 (b) est le plus proche de la réalité, car ...
Chapitre III : Analyse critique de l’existant
48
Figure 22 : A gauche une image originale, à droite même image plus flou c...
Chapitre III : Analyse critique de l’existant
49
Figure 24 : A gauche une image originale, à droite même image plus flou o...
Chapitre III : Analyse critique de l’existant
50
Les plaques d’immatriculations en gauche de la figure 26 représentent cel...
Chapitre III : Analyse critique de l’existant
51
 Aucun traitement apporté pour les images de petites tailles. Dans ce ca...
Chapitre III : Analyse critique de l’existant
52
D’après le tableau comparatif, il est donc clair que pour reconstruire un...
53
Chapitre IV: Implémentation d’un nouvel
algorithme de SuperResolution
I. Introduction
Ce chapitre a pour but de décrire...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
54
II.Théorie du Superresolution
1. Introduction
Da...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
55
toujours des obstacles. De ce fait, pour résoudr...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
56
Ainsi, d’après la figure 27, et avec des conditi...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
57
Si l’on fait à présent une translation de moins ...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
58
Il est ainsi remarquable que le mouvement des so...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
59
La reconstruction des images à l’aide de la Supe...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
60
Figure 32 : illustration
visuel du Cross-corréla...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
61
simplifier le calcul. En effet, la convolution d...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
62
Pour tester la fonction d’estimation que nous av...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
63
2. Le positionnement des pixels
Le positionnemen...
Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution
64
Dans l’exemple de la figure ci-dessous, l’objet ...
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
Prochain SlideShare
Chargement dans…5
×

PFE_Report

174 vues

Publié le

0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
174
Sur SlideShare
0
Issues des intégrations
0
Intégrations
26
Actions
Partages
0
Téléchargements
9
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

PFE_Report

  1. 1. ECOLE NATIONALE DES SCIENCES APPLIQUEES - TANGER UNIVERSITE ABDELMALEK ESSAADI Projet de Fin d’Etudes Présenté à l’école pour l’obtention du diplôme national Ingénieur d’Etat en Systèmes Electroniques et Automatiques AMELIORATION DE LA LISIBILITE DU TEXTE DE PLAQUE D'IMMATRICULATION EN UTILISANT LE TRAITEMENT D'IMAGE Effectué au sein de Réalisé par : Bilal Jamjama Encadré par : Aimad El mourabit François Bourzeix Othmane Naggar Année universitaire 2014/2015
  2. 2. ii Avant-Propos Nom et prénom de l’élève stagiaire de l’ENSA-Tanger M. Bilal JAMJAMA Génie des Systèmes Electroniques & Automatiques Intitulé du Projet Amélioration de la lisibilité du texte de plaque d'immatriculation en utilisant le traitement d'image Etablissement d’accueil Moroccan foundation for Advanced Science Innovation and Research – MAScIR Design Center, Rue Mohamed Al Jazouli – Madinat Al Irfane Rabat Nom et prénom de l’encadrant du projet dans l’établissement d’accueil François BOURZEIX Directeur du département SYSTEME EMBARQUE à MAScIR Nom et prénom du co-encadrant du projet dans l’établissement d’accueil Othman NAGGAR Ingénieur en Technologies de l'Information et doctorant à MAScIR Nom et prénom du directeur du projet à l’ENSA Prof. Aimad ElMourabit Date de début et de fin du stage Du 04/02/2015 au 31/08/2015 Cadre de coopération Convention ENSAT/MAScIR Stage de Fin d’Etudes Soutien Financier Stage rémunéré, Restauration assuré
  3. 3. iii Dédicaces A mes très chers parents, A mes chers frères et à mes adorables sœurs, A toute ma famille, A tous mes amis, A tous ceux qui m’ont aimé, ceux que j’ai aimés. Merci beaucoup à vous tous.
  4. 4. iv Remerciements J’exprime toutes mes reconnaissances à M. François BOURZEIX, le manager de l’équipe « Système Embarqué », de m’avoir accueilli au sein de son équipe et de ces efforts continus pour nous assurer de très bonnes conditions logistiques et organisationnelles pour la recherche. Je tiens à remercier encore une fois M. François BOURZEIX, comme encadrant, pour ses remarquables qualités humaines et professionnelles, ses précieux conseils, sa sympathie, toutes les sorties et brainstorming que nous avons effectués ensemble, et surtout son respect envers ma façon de penser et critiquer. Je tiens à exprimer ma gratitude envers mon encadrant interne Mr. Aimad EL MOURABIT pour l’intérêt qu’il a porté à mon travail ainsi que pour son aide, sa disponibilité, ses explications, ses précisions judicieuses, et ses cours durant les trois années d’études. Je remercie infiniment, mon co-encadrant à MAScIR Mr. Othmane NAGGAR pour ses précieux conseils et commentaires qui m’ont permis de progresser dans mon travail, aussi pour sa sympathie et ses idées innovantes. Je tiens vivement aussi à remercier Mr. Omar BOURJA, Mr. Yahiya ZENNAYI, et Mr. Andronic BOANARIJESY, Ingénieurs à MAScIR, pour leur gentillesse et tous les efforts qu’ils ont fournis pour m’aider le long de ce projet afin que le stage se déroule dans les meilleures conditions. finalement, je remercie mes professeurs de l’ENSA de Tanger qui ont fait beaucoup d’efforts pour nous transmettre leurs connaissances : Vos compétences incontestables ainsi que vos qualités humaines vous valent l'admiration et le respect de tous. Je vous adresse mes sincères remerciements pour votre patience et votre encadrement durant toutes ces années !
  5. 5. v
  6. 6. vi Résumé Face au fléau d’insécurité et des accidents routiers que connait le Maroc, s’accentuant de plus en plus et allant de pair avec l’augmentation du parc automobile, et la croissance extrêmement rapide des villes. La fondation MAScIR « Moroccan foundation for Advanced Science, Innovation and Research » cherche désormais à proposer des projets qui ont pour objet les systèmes de transport intelligents. Ce projet de fin d’étude en traite une grande partie. Le but de ce projet est de développer un algorithme ayant la capacité d’extraire des plaques d’immatricules marocaines et de les améliorer à l’aide du traitement d’image. Ce document présente ainsi un récapitulatif sur les différents travaux réalisés durant toute cette période de stage en vue de l’obtention du titre d’ingénieur d’Etat en Génie des Systèmes Electroniques et Automatiques. Ce travail peut être divisé en trois grands points. Le premier point consiste à faire l’état de l’art des solutions existantes et de faire par la suite une analyse critique d’un algorithme existant à l’aide d’un logiciel de génération de vecteurs des tests que nous avons développé. Le deuxième point consiste à développer un algorithme de SuperResolution en se basant sur l’estimation du mouvement des sous-pixels. En dernier lieu vient le troisième point qui s’appuie sur l’intégration de l’algorithme dans des interfaces graphiques faciles à manipuler afin de faire des démonstrations. Mots clés : Systèmes de Transport Intelligents, Traitement d’image, Traitement vidéo SuperResolution, Estimation du mouvement, Sous-pixels.
  7. 7. vii Abstract In response to the scourge of insecurity and road accidents in Morocco, which tends to be likely accentuated over and over in conjunction with the increase of the fleet, and the extremely rapid growth of cities. The foundation MASciR now demonstrates a great commitment in projects which aim the intelligent transport systems. This final project study holds a large part of these projects. The purpose of this project is to develop an algorithm with the ability to extract Moroccan registered plates and to improve them using image processing. This paper presents an overview and a summary on the various works carried out during this period of internship in order to obtain the title of State engineer in Electronic and Automatic Systems Engineering. This work can be divided into three main points; the first point is to make the state of the art of existing solutions and to do subsequently a critical analysis of an existing algorithm using a software generation of test vectors that we developed. The second point is to develop a SuperResolution algorithm based on the estimate of the sub-pixels motion. Finally comes the third point, which is based on the integration of the algorithm in graphic interfaces easily manipulated to do demonstrations. Keywords: Intelligent Transport Systems, SuperResolution, Subpixels Motion Estimation, Image/Video Processing, frequency domain
  8. 8. viii Table des matières .....................................................................................................................................IIAVANT-PROPOS ...........................................................................................................................................IIIDEDICACES ..................................................................................................................................IVREMERCIEMENTS ................................................................................................................................................VIRESUME ............................................................................................................................................VIIABSTRACT .........................................................................................................................VIIITABLE DES MATIERES ................................................................................................................................XILISTE DES FIGURES ...........................................................................................................................XIIILISTE DES TABLEAUX .......................................................................................................................................XIVACRONYMES ..................................................................................................................XVINTRODUCTION GENERALE CHAPITRE I: CONTEXTE GENERAL DU PROJET................................................................................ 17 I. INTRODUCTION.................................................................................................................................. 17 II. ORGANISME D’ACCUEIL ....................................................................................................................... 18 1. Fondation MAScIR .................................................................................................................... 18 1.1 Aperçu sur la fondation MAScIR..................................................................................................... 18 1.2 Structure de la fondation MAScIR.................................................................................................. 19 1.3 Secteurs d’activité de MAScIR........................................................................................................ 20 1.4 Principaux partenaires et clients de la fondation MAScIR ............................................................. 21 2. MAScIR-MicroElectronics.......................................................................................................... 22 2.1 Missions ......................................................................................................................................... 23 2.2 Laboratoires ................................................................................................................................... 23 2.3 Equipements .................................................................................................................................. 23 III. CAHIER DES CHARGES & PLAN D’ACTION............................................................................................. 24 1. Contexte du projet.................................................................................................................... 24 1.1 Problématique................................................................................................................................ 24 1.2 Définition du cahier des charges.................................................................................................... 24 1. Plan d’action............................................................................................................................. 25 1.1 Taches réalisées ............................................................................................................................. 26 II. CONCLUSION..................................................................................................................................... 26 CHAPITRE II: ETAT D’ART ET DESCRIPTION DE L’ALGORITHME EXISTANT ....................................... 27 I. INTRODUCTION.................................................................................................................................. 27 II. ETAT DE L’ART ................................................................................................................................... 28 1. Systèmes de transport intelligents ........................................................................................... 28 1.1 Définition........................................................................................................................................ 28 1.2 Exemples d’applications des STI..................................................................................................... 28
  9. 9. ix 2. Lecture automatique des plaques d’immatriculations ............................................................. 29 2.1 Définition........................................................................................................................................ 29 2.2 Algorithmes de localisation des plaques existant .......................................................................... 30 III. DESCRIPTION DE L’ALGORITHME EXISTANT .......................................................................................... 31 1. Chaine algorithmique de l’algorithme existant ........................................................................ 31 1.1 Localisation des plaques................................................................................................................. 32 1.2 Fusion............................................................................................................................................. 35 2. Résultat de l’algorithme existant.............................................................................................. 38 IV. OUTILS DE DEVELOPPEMENT ............................................................................................................ 38 1. Matlab ...................................................................................................................................... 39 2. Image ToolBox.......................................................................................................................... 40 3. OpenCV..................................................................................................................................... 41 4. MATHIMATICA.......................................................................................................................... 41 V. CONCLUSION..................................................................................................................................... 42 CHAPITRE III: ANALYSE CRITIQUE DE L’EXISTANT ............................................................................ 43 I. INTRODUCTION.................................................................................................................................. 43 II. PROBLEMATIQUE................................................................................................................................ 44 III. DEVELOPPEMENT D’UN LOGICIEL DE GENERATION DES VECTEURS DE TEST ................................................. 44 1. Présentation de l’interface graphique du logiciel..................................................................... 45 2. Simulation de l’effet de la distance........................................................................................... 46 3. Simulation de l’effet du mouvement ........................................................................................ 47 4. Simulation de l’effet des conditions d'éclairages...................................................................... 48 5. Simulation de l’effet du système optique ................................................................................. 48 6. Simulation des différents facteurs provocants le bruit ............................................................. 49 IV. ANALYSE DES RESULTATS DES TESTS SUR L’ALGORITHME ........................................................................ 49 1. Résultats des tests .................................................................................................................... 49 2. Points forts et points faibles de l’algorithme............................................................................ 50 3. Proposition des solutions.......................................................................................................... 51 V. CONCLUSION..................................................................................................................................... 52 CHAPITRE IV: IMPLEMENTATION D’UN NOUVEL ALGORITHME DE SUPERRESOLUTION................... 53 I. INTRODUCTION.................................................................................................................................. 53 II. THEORIE DU SUPERRESOLUTION ............................................................................................................ 54 1. Introduction.............................................................................................................................. 54 2. Notion des sous pixels (Subpixels) ............................................................................................ 55 3. Principe de la SuperResolution ................................................................................................. 58 4. Etat d’art................................................................................................................................... 58 III. IMPLEMENTATION DE L’ALGORITHME DE SUPERRESOLUTION.................................................................. 59
  10. 10. x 1. Estimation du shift.................................................................................................................... 60 2. Le positionnement des pixels.................................................................................................... 63 3. Inpainting ................................................................................................................................. 63 IV. INTERFACES GRAPHIQUES ET DEMONSTRATION :.................................................................................. 65 1. Interface graphique : MAScIR_video_processing ..................................................................... 65 2. Interface graphique : MAScIR_SR_Demo.................................................................................. 68 V. RESULTAT ......................................................................................................................................... 68 VI. CONCLUSION ................................................................................................................................ 69 ........................................................................................................... 71CONCLUSION ET PERSPECTIVES ....................................................................................................... 73BIBLIOGRAPHIE & WEBOGRAPHIE ............................................................................................................................................... 74ANNEXE
  11. 11. xi Liste des figures Figure 1 : Contrats et produites de MAScIR entre 2010 et 2014........................................................................... 19 Figure 2 : Publications & Brevets de MAScIR entre 2010 et 2014......................................................................... 19 Figure 3 : Exemple de carte developpée et fabriquée à MAScIR........................................................................... 20 Figure 4 : Laboratoires de Biotechnologie à MAScIR ............................................................................................ 20 Figure 5 : Un appareil electronique à l’echelle cellulaire ...................................................................................... 21 Figure 6 : Les grands partenaires de MAScIR ........................................................................................................ 22 Figure 7 : Les clients importants de MAScIR ......................................................................................................... 22 Figure 8 : Système de reconnaissance de plaque d'immatriculation .................................................................... 28 Figure 9 : Portail de télépéage (Singapour) .......................................................................................................... 29 Figure 10: Organigramme d’extraction des plaques de l’algorithme devlopé par MAScIR .................................. 32 Figure 11 : a) Exemple d'image format Bayer. b) Histogrammes des composantes RGB de l'image (a). c) Image(a) après équilibration des histogrammes. d) Histogrammes de l'image (c) .............................................. 33 Figure 12 : Organigramme de la fusion des plaques de l’algorithme devlopé par MAScIR .................................. 35 Figure 13 : Effet de la rotation sur la netteté de l’image ...................................................................................... 36 Figure 14 : Energie verticale et horizontale d’une plaque.................................................................................... 36 Figure 15 : Courbes d’énergies alignées après normalisation et exemple de plaque normalise........................... 37 Figure 16 : (a) plaque originale, (b) Résultat de l’algorithme Fusion.................................................................... 38 Figure 17 : Inteface graphique de MATLAB R2013a ............................................................................................. 40 Figure 18 : Logiciel de génération des vecteurs de test ....................................................................................... 45 Figure 19 : A gauche exemple d’un cas simple 2x2 pixels devient un pixel. a droite 1.5x1.5 pixels devient un pixel(b)................................................................................................................................................................... 46 Figure 20 : Simulation d’une plaque s’éloignant de la caméra............................................................................. 47 Figure 21: a) Exemple du flou cinétique avec un objet mobile, b) Exemple du flou sur l’arrière-plan causé par le mouvement de la camera sur l’image à droite.(a)................................................................................................ 47 Figure 22 : A gauche une image originale, à droite même image plus flou cinétique .......................................... 48 Figure 23 : A gauche une image originale, à droite même image après modification d’histogramme ................ 48 Figure 24 : A gauche une image originale, à droite même image plus flou optique............................................. 49 Figure 25 : A gauche une image originale, à droite même image bruité de type salt & pepper........................... 49 Figure 26 : En gauches les images d'entre de l'algorithme les images à droite sont des image de sorties ......... 50 Figure 27 : une figure explicatif qui montre la reprsentaion d’un metre carré sur un pixel de la partie noir du plan ....................................................................................................................................................................... 55 Figure 28 : La reprsentaion d’un metre carré sur un pixel de la partie blanc du plan........................................... 57 Figure 29 : La reprsentaion d’un metre carré sur un pixel des deux parties du plan donne un pixel au niveau de57 Figure 30 : Principe de la SuperResolution........................................................................................................... 58
  12. 12. xii Figure 31 : les étapes essential dans notre algorithme......................................................................................... 59 Figure 32 : illustration visuel du Cross-corrélation................................................................................................ 60 Figure 33 : Organigramme montre les étapes d’estimation de shift implémenté dans notre algorithme ........... 61 Figure 34 : les erreurs d’estimation de shift horizontal et vertical d’un ensemble d’image généré dans le cas de meme taille et diffrente taille................................................................................................................................ 62 Figure 35 : Resultat d’un test de notre algorithme sans l’etape de inpainting montre des pixels manquant dand ‘image avec des point noir .................................................................................................................................... 63 Figure 36 : (a) image originale, (b) image apres la reconstruction a l’aide du Inpainting.................................... 64 Figure 37 : le résultat de l’InPainting sur l’image dans la figure 35...................................................................... 64 Figure 38 : Onglet traitment video de l'interface graphique MAScIR_video_processing,.................................... 66 Figure 39 : Onglet traitment image de l'interface graphique video processing.................................................... 67 Figure 40 : (a) image originale (b) après traitement avec l’interface développé................................................. 67 Figure 41 : En haut une image originale , en bas meme image traité par notre interface ................................... 67 Figure 42 : Interface graphique pour des démonstrations MAScIR_SR_Demo ..................................................... 68 Figure 43 : (a) Images originales, (b) Images après SuperResolution ................................................................... 69 Figure 44 : (a) Image original, (b) Résultats avec notre algorithme SuperResolution. ......................................... 69 Figure 45 : (a) Image original, (b) Résultats avec notre algorithme SuperResolution .......................................... 69
  13. 13. xiii Liste des tableaux Tableau 1 : Description du projet .......................................................................................................................... 24 Tableau 2 : Planning proposé par MAScIR ............................................................................................................ 26 Tableau 3: Tableau comparatif des solutions proposé.......................................................................................... 51
  14. 14. xiv Acronymes APNR Automatic Plate Number Recognition ERP Electronic Road Pricing LP License Plate LAPI Lecture automatique des Plaques d’immatriculation ALPL Automatic License Plate Localization GUI Graphical User Interface SR SuperResolution VIN Vehicle Identification Number ROI Region Of Interest
  15. 15. xv Introduction générale Dans les dernières décennies, le monde portait un intérêt croissant pour Les systèmes de transport intelligents (STI). Les gouvernements des pays développés sont maintenant conscients de la capacité de ces systèmes à améliorer la sécurité intérieure des pays et précisément la sécurité routière en assurant la surveillance des routes, le contrôle automatique de la vitesse, la poursuite des voitures volées, le contrôle d'accès aux frontières, la gestion automatique de péages ainsi que la gestion des systèmes de stationnement. Les STI peuvent jouer un rôle très important dans l'évacuation rapide des masses des personnes en cas des catastrophes et des menaces ou bien aller plus loin en construisant des villes intelligentes. Les STI font appel à plusieurs technologies et disciplines telles que les technologies des capteurs, les technologies des réseaux sans fils… jusqu’au traitement vidéo et l’intelligence artificielle. Le traitement vidéo joue un rôle très important dans l’identification des véhicules par la reconnaissance de la plaque d’immatriculation, c’est-à-dire capturer des images et lire le texte de la plaque d’immatriculation. Habituellement, les systèmes responsables du traitement des vidéos utilisent des images simples avec un contraste élevé et un très faible flou: les photos sont prises pour des véhicules immobiles ou bien en mouvement à basse vitesse en utilisant éventuellement un éclairage dédié. Il en résulte des plaques d'immatriculation extraites en bonne qualité. Au contraire, Dans notre sujet de recherche, nous allons travailler sur des images très floutées avec des changements du climat et d’éclairage, résolution faible, flou optique, flou cinétique, compression avec pertes… etc. Ces images sont issues de deux projets : Projet Radar où le déplacement des voitures sur une autoroute est filmé, la vitesse moyenne des automobiles est de 100 km/h et sans éclairage supplémentaire. De plus, la caméra (installée à une hauteur de 20 m au-dessus d’un pont sur l’autoroute) se trouve à une longue distance des véhicules. Par conséquence, les images obtenues sont de nature floue et bruitée d’autant plus si les véhicules occupent une petite zone de l'image. Projet Gendarmerie où les vidéos sont issues des caméras de surveillance ou celles des smartphones, généralement des caméras de faible résolution, la plupart des vidéos sont filmées par des amateurs dans des conditions difficiles, les images sont alors détériorées. Cela fait un an que le centre de recherche MAScIR a commencé à travailler sur ces deux projets en se concentrant sur les flux vidéo du projet radar. Ainsi, l’équipe du projet a pu
  16. 16. xvi développer un algorithme pouvant localiser les plaques d’immatriculation des véhicules dont la couleur diffère du blanc, améliorer le contraste et déconvoluer le flou cinétique. Malgré ses apports dans la quête de l’objectif du projet, cet algorithme trouve beaucoup de limitations. C’est ainsi que MAScIR a lancé un défi pour perfectionner cet algorithme en commençant par une analyse critique de l’algorithme existant pour identifier ces points ces limitations et les points à améliorer dans le but de trouver des solutions pour les problèmes reconnus voire même chercher d’autres possibilités ou d’autre pistes. Dans ce rapport, nous allons présenter, dans quatre grands chapitres, le travail réalisé afin d’améliorer la lisibilité des plaques d’immatriculation. Ainsi, dans le Chapitre I nous allons présenter le contexte général du projet en introduisant l’organisme d’accueil et en abordant le cahier des charges ainsi que le plan d’action opté pour ce projet. Le Chapitre II fera l’objet d’un état de l’art, des outils utilisés dans la réalisation de ce projet ainsi qu’une description de l’algorithme existant. Dans le Chapitre III, nous allons faire une étude critique de l’algorithme par le développement d’un logiciel de génération de vecteur de test, et présenter la solution proposée pour enlever la limitation de la reconnaissance des plaques d’immatriculation des voitures blanches. Finalement dans le Chapitre IV Nous allons présenter la théorie de la SuperResolution comme solution et discuter comment on a implémenté ce nouvel algorithme. Nous finirons ce chapitre par la description des interfaces graphiques développées et le bilan des résultats obtenus ainsi qu’une conclusion pour souligner les perspectives visées.
  17. 17. 17 Chapitre I: Contexte général du projet I. Introduction Le présent chapitre permet de situer le projet dans son contexte général. Dans un premier temps, il s’agit d’une présentation de: la fondation MAScIR, sa structure, ses domaines d’activités, ses partenaires et ses réalisations. Nous entamerons par la suite les objectifs de notre projet et la démarche que nous avons adoptée dans la conduite de ce travail.
  18. 18. Chapitre I : Contexte général du projet 18 II.Organisme d’accueil 1. Fondation MAScIR 1.1 Aperçu sur la fondation MAScIR La Fondation MAScIR, Moroccan Foundation for Advanced Science, Innovation and Research, est une institution publique à but non lucratif qui a pour objectif la promotion de la recherche scientifique et le développement technologique en vue d’accompagner le développement du Maroc et participer au développement d’une nouvelle économie de savoir. Outre les moyens scientifiques de pointe dont elle dispose, la fondation MAScIR rassemble d’éminents chercheurs et ingénieurs, marocains et étrangers, œuvrant dans des domaines aussi innovants que complémentaires. Initialement fondée en 2007, MAScIR dispose aujourd’hui de 4 plateformes technologiques: Nanotechnologie, Biotechnologies, Microélectronique et Optique Photonique. Par ailleurs, un Conseil Scientifique indépendant, composé de sommités internationales en nanotechnologie et en biotechnologie, assure un suivi régulier des projets et valide les orientations scientifiques des équipes de recherche. Concernant la valorisation et la commercialisation de ses produits, le département de valorisation se charge de la mise en place de la stratégie de commercialisation des résultats de recherche et développement technologique de MAScIR et assure la transition des produits de la fondation du laboratoire au marché. Ce département contribue à une prise de décision en matière de protection de la propriété intellectuelle (PI), de transfert de technologie et de commercialisation. Dans le cadre du développement de ses projets, MAScIR établi au besoin des partenariats avec des universités et/ou des centres de recherche nationaux et internationaux dans une logique de développement de la propriété intellectuelle (PI), de co-développement ou d’offre de service. Le montant d'investissement qui a été consacré à la réalisation du projet MAScIR est de 564 millions DH, qui occupe aujourd’hui une très bonne position comme l’un des leaders de la recherche scientifique au niveau national et régional. En termes de statistiques les 120 chercheurs et ingénieurs de MAScIR sont arrivés à 83 publications et environ 30 brevets en 2014 uniquement [1], et les figures suivantes
  19. 19. Chapitre I : Contexte général du projet 19 6 17 22 23 35 2010 2011 2012 2013 2014 représentent quelques chiffres qui résument les activités de MAScIR durant ces 5 dernières années : 1.2 Structure de la fondation MAScIR La Fondation est gérée par un conseil d’administration qui est investi de pouvoirs de gestion à cet égard. Le Conseil dispose de quatre comités distincts : un Comité d’Investissement, un Comité d’Audit et un Comité de Rémunération qui assurent une gestion rapprochée des sujets relatifs à leur mission.  Conseil d'administration Détermine les orientations stratégiques de MAScIR, veille à leur mise en œuvre et se réunit sur une base régulière. En prenant des décisions, le conseil compte sur le travail régulier des comités spécialisés. 18 38 63 78 83 2010 2011 2012 2013 2014 1 7 13 24 30 2010 2011 2012 2013 2014 1 3 5 8 10 0 4 8 13 20 2010 2011 2012 2013 2014 Processes Products Contrats Produits&procédés Figure 1 : Contrats et produites de MAScIR entre 2010 et 2014 Brevets Publications Figure 2 : Publications & Brevets de MAScIR entre 2010 et 2014
  20. 20. Chapitre I : Contexte général du projet 20  Comité de vérification Le rôle principal du comité d'audit est de permettre à la commission de veiller à la qualité des contrôles internes et l'intégrité de l'information divulguée aux intervenants et aux partenaires.  Comité des rémunérations Il est responsable de faire des recommandations au conseil sur la nomination des administrateurs. Il est également responsable de l'examen de la politique en matière de rémunération de la haute direction au sein de MAScIR.  Comité de suivi Son rôle est de surveiller la mise en œuvre effective et correcte des projets dans le cadre de l'accord signé entre MAScIR et le gouvernement marocain.  Comité d'investissement Le rôle du comité d'investissement est d’assister le conseil d'administration dans l'accomplissement de sa responsabilité de surveillance pour les actifs d'investissement liés à l'équipement scientifique. 1.3 Secteurs d’activité de MAScIR Depuis sa création jusqu’à aujourd’hui, la nanotechnologie, la biomédecine et la microélectronique représentent les institutions de recherche de cette fondation :  MAScIR Micro Créé vers la fin de l’année 2008, MAScIR MicroElectronics a pour objectif de devenir un centre de Recherche et Développement dans le domaine de la microélectronique.  MAScIR bio MAScIR BioTechnology deuxième centre inscrit dans MAScIR œuvrant dans le domaine de la recherche et développement des médicaments et des biocides. Figure 3 : Exemple de carte developpée et fabriquée à MAScIR Figure 4 : Laboratoires de Biotechnologie à MAScIR
  21. 21. Chapitre I : Contexte général du projet 21  NanoTech Nanomaterials et NanoTechnology a pour mission de mener des recherches appliquées, innovantes et à la fine pointe de la technologie pour créer de la propriété intellectuelle et des prototypes dans le domaine des nanomatériaux et des nanotechnologies. Ces recherches sont menées par une équipe internationale de haut calibre travaillant dans un environnement unique et utilisant une infrastructure de pointe. 1.4 Principaux partenaires et clients de la fondation MAScIR  Grands partenaires de MAScIR La fondation MAScIR établit plusieurs partenariats avec des organismes nationaux et internationaux ayant des potentiels importants dans leurs secteurs d’activités et qui contribuent dans le financement des projets de recherche et développement à MAScIR. Parmi ces partenaires on peut citer : IRESEN1 - ONEE - MMC … 1 IRESEN : Institut de Recherche en Energie Solaire et Energies Nouvelles. Il a été créé afin de porter la R&D en sciences appliquées à l’échelle nationale, développer l´innovation et encourager le réseautage. IRESEN a également pour mission d´assurer la définition des axes de recherche, de réaliser, de financer et de piloter des projets de Recherche et de Développement. Figure 5 : Un appareil electronique à l’echelle cellulaire
  22. 22. Chapitre I : Contexte général du projet 22  Clients importants de MAScIR MAScIR traite également plusieurs projets pour ses différents clients qui sont connus par leur créativité et leurs produits innovants comme : ST-Microelectronics - Lear Corporation - Adetel … et bien d’autres. 2. MAScIR-MicroElectronics MAScIR MicroElectronics est un centre d’innovation et de développement des technologies dans le milieu microélectronique. Il se concentre sur le micro packaging, l’ingénierie, les tests de simulation, le design, la qualification, le prototypage de produits micro-électroniques et les systèmes embarqués. Parmi les projets traités par MAScIR MicroElectronics, nous citons :  Design et Micro packaging CSP et PILR,  Tests de fiabilité sur les packages,  Circuits embarqués sur une application wafer level camera fabriqué au Maroc par Nemotek Technologie,  Produits embarqués médicaux et agriculturals à cout réduit, Figure 6 : Les grands partenaires de MAScIR Figure 7 : Les clients importants de MAScIR
  23. 23. Chapitre I : Contexte général du projet 23  Produits embarqués pour la gestion du trafic routier,  Projets énergétiques. 2.1 Missions La mission de MAScIR MicroElectronics est de devenir un centre d’excellence en Microélectronique et en Miniaturisation incluant l’Electronique Digitale et Analogique, le Logiciel, l’Optique et les Technologies de packaging. MAScIR MicroElectronics fournit des services pour des clients industriels, mais elle développe aussi son propre business dans les domaines suivants :  L’intégration et la miniaturisation des systèmes microélectroniques.  L’analyse de fiabilité et défaillance des produits.  Modélisation des systèmes complexes.  Prototypage et industrialisation des produits innovants.  Industrialisation des idées et résultats académiques. 2.2 Laboratoires MAScIR MicroElectronics possède plusieurs laboratoires équipés de technologie avancée:  Chambre blanche  Laboratoire optique  Laboratoire électronique 2.3 Equipements MAScIR MicroElectronics possède des équipements de technologie de pointe, tels que :  Ligne CSP (Chip Scaled Packaging), Ligne SMT (Surface Mount Technology).  SEM (Scanning Electron Microscope), SAM (Scanning Acoustic Microscope).  X-Ray.  AFM (Atomic Force Microscopy).
  24. 24. Chapitre I : Contexte général du projet 24 III.Cahier des charges & plan d’action 1. Contexte du projet 1.1 Problématique La définition de la problématique est une étape primordiale, elle permet de bien comprendre le problème et de mesurer l’écart entre la situation actuelle et celle désirée. Le but est de trouver les solutions les plus adaptées afin de développer le produit convenable. Ce projet a deux grands objectifs : le premier est d’analyser les problèmes de l’algorithme existant pour l’amélioration de la lisibilité des plaques d’immatriculation. Le second objectif est de développer un nouvel algorithme capable de résoudre toute limitation identifiée par l’analyse précédente. Trouver les causes racines, choisir les solutions optimales pour une problématique où cela nécessite une grande compréhension du problème. Dans ce sens, la méthode QQOQCP permet d'avoir des informations élémentaires et suffisantes sur toutes les dimensions du problème, pour identifier ses aspects essentiels. Tableau 1 : Description du projet 1.2 Définition du cahier des charges QQOQCP Quoi Activité : Développement d’un algorithme pour améliorer la lisibilité des LPs. Produit : Algorithme implémenté sur MATLAB, GUI Gendarmerie, GUI Demo. Qui Division : Département Microélectronique. Où MAScIR Quand Du 05/02/2015 au 30/08/2015 Comment  Identifier les causes ainsi que les limitations de l’algorithme existant.  Chercher, proposer, tester et implémenter un nouvel algorithme. Pourquoi  Améliorer la lisibilité des LPs pour les projets gendarmerie.  Faire des démonstrations pour des nouveaux clients.
  25. 25. Chapitre I : Contexte général du projet 25 L’année dernière, MAScIR a lancé un appel pour un stage PFE ayant comme objectif l’amélioration de la netteté des plaques d’immatriculation pour le projet radar. Vers la fin du stage, l’équipe chargée a pu développer un algorithme pour l’extraction des plaques et l’amélioration de la netteté. Malheureusement les résultats se sont révélés peu convaincants. MAScIR a donc décidé de relancer un autre appel de stage PFE avec de nouveaux objectifs qu’on cite ci-dessous :  Résoudre les problèmes de localisation des plaques pour les véhicules blancs.  Identifier les causes des limitations de l’algorithme existant.  Chercher et proposer des solutions pour les problèmes identifiés.  Implémenter un nouvel algorithme.  Intégrer l’algorithme à des interfaces graphiques pour faire des démonstrations pour les clients. 1. Plan d’action Le but de tout projet est de répondre aux exigences du cahier des charges, et de délivrer un livrable dans la date convenue. La planification, l’organisation et le respect des principes de gestion de projets sont alors les clés du succès. MAScIR nous a proposé un planning avec de grandes tâches et une grande flexibilité. De par sa nature qui est purement « recherche », les tâches futures sont en effet dépendantes des résultats obtenus précédemment. Le tableau ci-dessous présente le planning proposé par MAScIR : Planning du stage Phase Durée Détails Livrable Phase 1 3 semaines Etude comparative des différents algorithmes de détection de plaque + test et compréhension des codes Matlab déjà prêts sur des images en bon contraste Slides + mini rapport + code Phase 2 2 semaines Familiarisation avec l’algorithme existant et analyse des problématiques Slides avec les problématiques Phase 3 5 semaines Trouver des algorithmes pour résoudre les problématiques et implémentation sur Matlab Résultats du brainstorming Phase 4 10 semaines Mise en place de la nouvelle solution et test sur des images fourni par l’équipe Radar + finalisation et rapport. Fichier .m
  26. 26. Chapitre I : Contexte général du projet 26 Tableau 2 : Planning proposé par MAScIR 1.1 Taches réalisées Pour une bonne gestion de temps et des moyens investis dans la réalisation d'un projet quelconque, la planification des tâches et des jalons joue un rôle très important dans la réalisation des objectifs. Cependant, lorsque'il s'agit d'un sujet de recherche, la planification des tâches devient plus ou moins délicate. En effet, chaque tâche dépende de ces précédentes et des résultats obtenus de ces dernières. Ainsi, pour surmonter d’éventuelles difficultés en ce sens, nous nous sommes concentré sur les grandes tâches du projets. Nous avons pu établir le diagramme de Gantt réel représenté par la figure ci-dessous pour décrire le déroulement du projet. II.Conclusion Après avoir décrit l’organisme d’accueil MAScIR, présenté la problématique de notre projet ainsi que le cahier des charges et le plan d’action, le chapitre suivant sera consacré à la description détaillée de l’algorithme existant. Une introduction détaillera par ailleurs les systèmes de transport intelligents ainsi que la reconnaissance des plaques d’immatriculations Table 1 : Diagramme de Gantt (voir annexe pour plus de détails )
  27. 27. 27 Chapitre II: Etat d’art et Description de l’algorithme existant I. Introduction Dans ce chapitre nous allons introduire les systèmes de transport intelligents et la lecture automatique des plaques d'immatriculation. Nous allons également décrire et expliquer l'algorithme existant pour finir avec une présentation des différents outils utilisés dans la réalisation de ce projet.
  28. 28. Chapitre II : Etat d’art et description de l’algorithme existant 28 II.Etat de l’art 1. Systèmes de transport intelligents 1.1 Définition Les systèmes de transport intelligents (STI) peuvent être définis comme l'application de l'information et de la technologie des communications à la surface de transport afin d'assurer la sécurité et la mobilité accrue, tout en réduisant l'impact environnemental du transport. L'ajout des communications sans fil offre une occasion puissante et transformatrice pour établir la connectivité de transport qui permet davantage les systèmes coopératives et l'échange dynamique de données en utilisant une large gamme des systèmes et des technologies de pointe [2]. 1.2 Exemples d’applications des STI  Le péage urbain (exemple de la ville de Londres) : Le système du péage urbain de Londres fonctionne grâce à l'analyse des plaques d'immatriculation enregistrées par un réseau d'environ 800 caméras de surveillance disposées en entrée et en sortie de la zone de péage de la ville. Il compare ensuite les données recueillies à une base de données centralisée pour identifier le propriétaire du véhicule et vérifier dans les délais son paiement effectif. Ce péage a permis notamment une réduction de circulation d'environ 20% dans le centre de Londres [3]. Figure 8 : Système de reconnaissance de plaque d'immatriculation  Télépéage : Le télépéage permet aux véhicules de franchir les péages à la vitesse normale du trafic, réduisant ainsi la congestion aux zones de péage (ex : Singapour). Techniquement, le télépéage appelé ERP fonctionne à l'aide d'un boitier de lecture dans le véhicule, d'une Cash
  29. 29. Chapitre II : Etat d’art et description de l’algorithme existant 29 Card sorte de carte de péage rechargeable, des portails d'accès (cf. photo ci-dessus) et d'une centrale informatique. Si la Cash Card est vide ou absente du véhicule, un système LAPI enregistre le numéro d'immatriculation [3]. Figure 9 : Portail de télépéage (Singapour) 2. Lecture automatique des plaques d’immatriculations Comme nous le savons, les véhicules du monde ont un numéro d'identification du véhicule "VIN" qui est en fait un numéro de licence qui stipule une licence légale de participer à la circulation publique. Tout véhicule doit avoir son numéro de licence - écrit sur une plaque d'immatriculation - monté sur son corps et aucun véhicule sans plaque d'immatriculation visible et lisible ne devrait fonctionner sur les routes. Ainsi, dire qu’actuellement il y a1.2 milliard de véhicules [4] sur les routes du monde entier et que le nombre est en croissance rapide, on peut directement penser à des calculateurs pour faire les traitements de ce nombre colossal de données. Ces dernières doivent être préalablement préparées et numérisées. Cette tâche est généralement accomplit par des techniques de traitement d’image pour l’identification des véhicules à l’aide de la lecture automatique des plaques d’immatriculations. 2.1 Définition La lecture automatique des plaques minéralogiques ou lecture automatisée des plaques d’immatriculation (ANPR: Automatic Number Plate Recognition) est une méthode d'identification qui utilise des techniques de traitement d'images et de vision par ordinateur pour extraire le numéro d’identification d’après l’image de la plaque sous format des caractères en code ASCII . Pour qu’on puisse identifier une plaque d'immatriculation on doit combiner ces cinq algorithmes [5] :
  30. 30. Chapitre II : Etat d’art et description de l’algorithme existant 30 I. Localisation de la plaque : responsable de trouver et d'isoler la plaque sur l'image II. Orientation et dimensionnement de la plaque : compensation de l'orientation de la plaque et ajustement des dimensions à la taille nécessaire III. Normalisation : ajustement de l'intensité et du contraste de l'image IV. Segmentation des caractères : localisation des caractères sur la plaque V. Reconnaissance optique de caractères 2.2 Algorithmes de localisation des plaques existants L’étape de localisation des plaques d’immatriculation est l’étape la plus critique dans la reconnaissance automatique des plaques car toutes les étapes suivantes dépendent d’elle. En effet, cette localisation des plaques représente un grand défi vu les différents formats des plaques, les différents styles, la prise de vue et la variation des conditions d’éclairage lors de l’acquisition des images des véhicules [5]. Dans ce paragraphe, nous donnons un résumé descriptif de quelques méthodes existantes de la détection des plaques d’immatriculation des véhicules, en se basant sur l’étude faite dans [6]. Commençant tout d’abord par les méthodes appliquées sur des images binaires, on trouve que la plupart de ces méthodes utilisent une combinaison des calculs statistiques des contours et des opérations morphologiques. Ils supposent également que le changement de luminosité dans la région de la plaque est plus remarquable et plus fréquent que dans la zone extérieure de l’image. Le seul inconvénient de ces méthodes c’est qu’elles peuvent difficilement être appliquées aux images complexes car ils sont trop sensibles aux contours indésirables, c’est pour cette raison qu’elles sont combinées avec des opérations morphologiques pour éliminer ces contours. Quant aux méthodes appliquées sur des images au niveau de gris, on trouve des différents algorithmes qui traitent l’image globalement, partiellement ou complètement après des transformations, à savoir les méthodes partielles dans [7] et [8], où L’image est balayée horizontalement à partir des lignes horizontales avec un calcul de nombre des contours. En fait, si ce nombre dépasse un seuil défini dans la plaque, elle est supposée présente dans ce cas. Sinon, le processus est répété avec un autre seuillage. Cet algorithme est simple et ne dépend ni de la taille ni du style de la plaque ALPL ou la localisation automatique des plaques d’immatriculation est un sujet de recherche très ancien dans la mesure où les chercheurs ont développé plusieurs méthodes en utilisant une multitude des disciplines statistiques, intelligence artificiel, réseaux de neurons, cependant la contrainte du temps réel s’impose toujours à ce niveau.
  31. 31. Chapitre II : Etat d’art et description de l’algorithme existant 31 III.Description de l’algorithme existant 1. Chaîne algorithmique de l’algorithme existant Dans cette partie nous allons décrire brièvement les algorithmes développés par MAScIR, expliquer la chaîne algorithmique et présenter les résultats obtenus. Pour ce faire, nous repartirons le travail en deux parties, la première sera consacrée à la localisation et l’extraction automatique des plaques, au prétraitement et au filtrage. Dans la deuxième partie nous allons expliquer la redondance de l’information à partir d’un flux des images comme étant la méthode utilisée pour l’amélioration de la netteté des plaques.
  32. 32. Chapitre II : Etat d’art et description de l’algorithme existant 32 1.1 Localisation des plaques La première partie de l’algorithme existant a pour objectif d’extraire les plaques d’immatriculation automatiquement, l’entrée de l’algorithme est un dossier contenant des images successives du même véhicule et la sortie est un dossier contenant seulement les images des plaques extraites. L’organigramme ci-dessus nous montre comment partir de la lecture des images jusqu’à l’extraction des plaques.  Modification du format Bayer2 2 Format Bayer : Le format Bayer ou mosaïque est une matrice de filtres de couleur placée devant un capteur photographique numérique. Il est constituée de 50 % de filtres verts, 25 % de filtres rouges et à 25 % de filtres bleus. Le nom vient de son inventeur, Bryce E. Bayer, de la société Eastman Kodak. Figure 10: Organigramme d’extraction des plaques de l’algorithme devlopé par MAScIR
  33. 33. Chapitre II : Etat d’art et description de l’algorithme existant 33 La présence de pixels plus sombres sur les images sources comme le montre la figure 11 (a) était le premier obstacle confronté dû à la variance de sensibilité des capteurs de chaque composant. En effet dans la camera utilisée, l’intensité lumineuse des pixels de la composante rouge avait des valeurs inférieures par rapport aux autres comme le montre la figure 11 (b). Pour résoudre ce problème, l’histogramme de la composante rouge a été multiplié par un coefficient calculé automatiquement pour changer les valeurs des pixels de façon proportionnelle sans changer la forme générale de la courbe. Les figures 11 (c), 11 (d) montrent les résultats obtenus après cette transformation. Figure 11 : a) Exemple d'image format Bayer. b) Histogrammes des composantes RGB de l'image (a). c) Image(a) après équilibration des histogrammes. d) Histogrammes de l'image (c)
  34. 34. Chapitre II : Etat d’art et description de l’algorithme existant 34  Filtrage Gaussien Le filtre Gaussien est utilisé, est un filtre de lissage généralement utilisé pour atténuer un bruit qui corrompt l'information, généralement avant un autre traitement. L’effet de ce filtre sur l’image est assez similaire au filtre moyenneur, dont la moyenne est pondérée : les pixels près du centre ont un poids plus important que les autres. L’intérêt de la pondération est de minimiser la perte d’informations tout en réduisant le bruit global.  Détection de contour et opérations morphologiques Avant de continuer la description de l’algorithme, il faut d’abord mentionner les caractéristiques des plaques que l’équipe de MAScIR à supposer pour développer cet algorithme. Ainsi, l’équipe a supposé que les plaques d’immatricules des véhicules au Maroc sont caractérisées par leur forme rectangulaire, par leurs hauteur et largeur qui peuvent différer légèrement mais comprises entre des seuils bien définis, par leur fond blanc et les caractères en noir. Les prétraitements sont suivis par la détection des contours en utilisant le filtre de Canny. Cette opération est suivie d’une dilatation afin d’améliorer les contours déjà existants pour une meilleure segmentation.  Objets connectés et filtrage par ratio de texture L’étape qui suit les opérations morphologiques3 est de détecter les objets connectés dans l’image et chercher parmi tous les objets connexes les rectangles dont la largeur et la hauteur sont comprises respectivement entre 70-110 pixels et 5-20 pixels. Ces valeurs incluent tous les types des plaques et toutes les positions de la voiture sur l’image.  Extraction de la plaque L’étape finale est l’extraction des plaques. Après la détection des rectangles qui correspondent aux critères cités ci-dessus, il faut extraire le rectangle de la plaque, Pour ce faire, une corrélation avec une plaque prédéfinie est utilisée. Le rectangle qui maximise cette corrélation est la plaque, et ce de par le fond blanc et les caractères noirs spécifiques aux immatriculations. 3 Opérations morphologiques : Comme l’érosion, dilatation, ouverture, et fermeture ce sont des applications de la morphologie mathématique qui est une théorie et technique mathématique et informatique d'analyse de structures qui est liée avec l'algèbre.
  35. 35. Chapitre II : Etat d’art et description de l’algorithme existant 35 1.2 Fusion La deuxième partie de l’algorithme existant a pour objectif d’améliorer le contraste des plaques d’immatriculation en utilisant la fusion. Pour y arriver, il y a toute une procédure à suivre pour préparer les plaques à la fusion qu’on simplifiera dans l’organigramme illustré dans la Figure 12 ci-dessous :  Estimation de PSF4 & déconvolution 4 PSF : Point Spread Function en anglais et la fonction d’étalement du point en français est une fonction mathématique décrivant la réponse d'un système d'imagerie à une source ponctuelle. Figure 12 : Organigramme de la fusion des plaques de l’algorithme devlopé par MAScIR
  36. 36. Chapitre II : Etat d’art et description de l’algorithme existant 36 Dans des cas comme le projet radar, les images sont prises pour des voitures à grande vitesse : le flou cinétique est alors le prédominant sur la plaque. Ainsi le travail réalisé s’est concentré surtout sur l’estimation du flou cinétique. Ce dernier est calculé à l’aide du vecteur de déplacement entre deux frames, et le frame rate de la camera utilisée, en vue de reconstruire l’image initiale de la plaque - dans le cas idéal - via la dé-convolution. MAScIR a utilisé le filtre le plus répandu contre ce flou.  Rotation et redimensionnement Installées sur des ponts, les caméras sont difficiles à être alignées avec le plan de la route, ce qui impacte l’alignement des plaques et engendre des problèmes lors de la fusion. La rotation corrige ce problème mais apporte elle aussi une interpolation sur l’image. L’interpolation se produit chaque fois qu’on tourne ou déforme une image. L'exemple suivant montre comment les détails de l'image peuvent être perdus assez rapidement. La rotation de 90° est sans perte, car aucun pixel n'a jamais à être repositionné sur la frontière entre deux pixels (et donc divisé). Cependant lorsqu’il s’agit d’autres angles, l’image subit des détériorations. Pour éliminer cette dégradation MAScIR a adopté comme solution l’augmentation des nombres des pixels. Agrandir l’image peut diminuer largement cet effet, car en l’agrandissant, on crée des pixels supplémentaires entre les pixels d’origine, l’interpolation affectera ces pixels intermédiaires et non les pixels contenant les informations.  Découpage & normalisation Pour faciliter les opérations d’alignement et le moyennage l’équipe a commencé par un découpage uniquement des caractères de la plaque. La méthode utilisée repose sur le calcul Figure 14 : Energie verticale et horizontale d’une plaque Figure 13 : Effet de la rotation sur la netteté de l’image
  37. 37. Chapitre II : Etat d’art et description de l’algorithme existant 37 d’énergies horizontales et verticales, l’augmentation brusque des valeurs d’énergies correspond aux bords des plaques. Il suffit alors de découper à partir de ces seuils. Ci-dessous les courbes d’énergies des plaques. Après le découpage, l’opération de normalisation revient à harmoniser l’influence de chaque image sur les autres lors de la fusion. Cet opération a pour but d'harmoniser la répartition des niveaux de luminosité de l'image, de telle manière à tendre vers un même nombre de pixel pour chacun des niveaux de l'histogramme. Après cette opération, les courbes d’énergies des plaques se superposent comme le montre la figure suivante :  Alignement & fusion L’alignement permet de s’assurer que les plaques sont réellement superposées, et que les caractères sont sur la même position dans toutes les plaques de la même voiture, ainsi la fusion des plaques aura l’effet souhaitable. Pour ce faire, l’équipe a corrélé une partie de la première plaque (les trois premiers caractères) avec les autres images ce qui leur a permis d’obtenir les coordonnées de ces caractères dans les autres images. Après le calcul de la différence entre les coordonnées, l’équipe a trouvé le déplacement ou la translation qu’il faut effectuer à l’image pour qu’elle soit parfaitement alignée de façon verticale et horizontale. La fusion est la dernière étape de l’algorithme, elle consiste à combiner des images de différentes sources afin de synthétiser de nouvelles images plus riches en information. Dans la littérature, plusieurs techniques permettent l’implémentation de la fusion d’images. L’implémentation la plus simple consiste à additionner les images, c’est d’ailleurs la technique utilisée dans cet algorithme. Figure 15 : Courbes d’énergies alignées après normalisation et exemple de plaque normalise
  38. 38. Chapitre II : Etat d’art et description de l’algorithme existant 38 2. Résultat de l’algorithme existant L'algorithme a une limitation pour les voitures blanches. Ainsi pour avoir des résultats, nous l'avons appliqué sur des voitures non blanches. Il est donc clair d'après la figure ci- dessous que l'algorithme traite bien la netteté des plaques extraites. IV. Outils de développement Avant d’entamer la description des outils utilisés dans la réalisation de ce projet, nous aimerions signaler que la phase du choix des outils de développement était une étape plus ou moins succincte du moment qu’elle n'a pas exigé une étude détaillée. En effet, le logiciel MATLAB était un outil imposé par la fondation MAScIR vu qu'elle possède la licence du Image processing toolbox. De plus, nous avons effectué l'interfaçage entre les bibliothèques d'OpenCV et celles de MATLAB à l'aide de Mex-files pour bénéficier de la richesse des bibliothèques d’OpenCV. Or, plusieurs exemples de traitement d’image sur internet sont Figure 16 : (a) plaque originale, (b) Résultat de l’algorithme Fusion
  39. 39. Chapitre II : Etat d’art et description de l’algorithme existant 39 écrits en langage Mathematica, c’est ce qui nous a donné l’opportunité d’apprendre à utiliser ces outils pendant la période des essais. Dans la suite de cette section, nous allons essayer de décrire chacun de ces outils ainsi que ses domaines d’application. 1. Matlab MATLAB « MATrix LABoratory » est un langage de haut niveau. C’est un environnement interactif facile à utiliser, il intègre le calcul numérique, la visualisation et la programmation. Les utilisations typiques comprennent:  Calcul mathématique  Développement des algorithmes  Modélisation, simulation et prototypage  Analyse des données, exploration visualisation  Visualisation graphique pour les scientifiques et les ingénieurs  Développement d'applications, y compris la construction graphique des interfaces utilisateur.  Interfaçage avec d’autres langages comme le C, C++ ainsi que Java. MATLAB a évolué sur une période de plusieurs années avec la participation de nombreux utilisateurs. Dans les environnements universitaires, il est l'outil pédagogique standard pour des cours d'initiation et de perfectionnement en mathématiques, l'ingénierie et la science. Dans l'industrie, MATLAB est l'outil de choix pour la recherche de haute productivité, le développement, et l'analyse. MATLAB dispose d'une gamme de solutions spécifiques aux applications appelées boîtes à outils. Très important pour la plupart des utilisateurs de MATLAB, boîtes à outils permettent d'apprendre et d'appliquer une technologie spécialisée. Boîtes à outils sont des collections complètes de fonctions MATLAB (M-Files) qui étendent l'environnement MATLAB pour résoudre des catégories particulières de problèmes. Les domaines dans lesquels les boîtes à outils sont disponibles incluent le traitement du signal, les systèmes de contrôle, les réseaux de neurones, la logique floue, les ondelettes, la simulation, et beaucoup d'autres. [10]
  40. 40. Chapitre II : Etat d’art et description de l’algorithme existant 40 2. Image ToolBox Image Processing Toolbox fournit un ensemble complet d'algorithmes de référence standard, des fonctions et applications de traitement d'image, d'analyse, de visualisation et du développement d'algorithmes. Il permet d’effectuer une analyse de l'image, la segmentation d'image, l’amélioration de l'image, la réduction du bruit, des transformations géométriques et l'enregistrement de l'image. De nombreuses fonctions de boîte à outils soutiennent les processeurs multi cœurs, GPU, et la génération de code C. Image Processing Toolbox prend en charge un ensemble diversifié de types d'images, y compris la gamme dynamique élevée, la résolution de giga pixels. Les fonctions de visualisation et d'applications permettent d'explorer les images et les vidéos, d’examiner une région de pixels, d’ajuster la couleur et le contraste, de créer des contours ou des histogrammes et de manipuler des régions d'intérêt (ROI). La boîte à outils prend en charge les flux de travail pour le traitement, l'affichage et la navigation des grandes images. La documentation de Matlab ainsi que le site de Matlab fournissent plus de détails [11]. Figure 17 : Inteface graphique de MATLAB R2013a
  41. 41. Chapitre II : Etat d’art et description de l’algorithme existant 41 3. OpenCV OpenCV (Open Source Computer Vision) est une bibliothèque des fonctions de programmation principalement destinées à la vision par ordinateur en temps réel, développée à l'origine par le centre de recherche d'Intel à Nijni Novgorod (Russie), plus tard, soutenue par Willow Garage et maintenant tenue par Itseez.[1] La bibliothèque est multi-plateforme et gratuite pour une utilisation sous la licence BSD open-source. Les domaines d'application d’OpenCV comprennent:  Outils 2D et 3D  Estimation d’Egomotion  Reconnaissance Faciale  Reconnaissance des gestes  Interaction homme-machine  Robotique mobile  Estimation du mouvement  Identification d’objet  Segmentation et reconnaissance  Stereo vision  Réalité augmentée OpenCV est écrit en C ++ et son interface principale est en C ++, Il y a maintenant des interfaces complètes en Python, Java et MATLAB. L'API pour ces interfaces peut être trouvée dans la documentation en ligne [5]. Des emballages dans d'autres langages tels que C #, Perl, et Ruby ont été développés pour encourager l'adoption par un plus large public. Tous les nouveaux développements et les algorithmes dans OpenCV sont maintenant mis au point dans le C ++ interface. [12] 4. MATHEMATICA Mathematica est un logiciel de calcul utilisé dans de nombreux domaines scientifiques, ingénierie, mathématiques et informatiques, basé sur les mathématiques symboliques. Il a été conçu par Stephen Wolfram et est développé par Wolfram Research de Champaign. Le Wolfram langue est le langage de programmation utilisé dans Mathematica
  42. 42. Chapitre II : Etat d’art et description de l’algorithme existant 42 V. Conclusion Jusqu'à maintenant, nous avons proposé des solutions existantes ainsi que l'algorithme développé par MAScIR et finalement nous avons conclu avec une présentation des outils dont nous aurons besoin dans le développement. Dans les chapitres suivants nous allons expliquer le travail que nous avons effectué d'une manière détaillée.
  43. 43. 43 Chapitre III: Analyse critique de l’algorithme existant I. Introduction Ce chapitre aura pour objectif d'expliciter les problèmes de l'algorithme existant, et de présenter la solution proposée pour reconnaître les vraies limitations de cet algorithme. Une analyse des résultats sera faite par la suite pour lister les causes principales des limitations identifiées.
  44. 44. Chapitre III : Analyse critique de l’existant 44 II.Problématique L’étape de génération de vecteur de test représente l’étape la plus importante dans ce stage, car tout le travail venant par la suite se base sur cette étape. Après avoir compris l’algorithme déjà existant ligne par ligne, nous avons fait des tests sur les images du projet radar, également nous avons effectué des analyses des résultats, des meetings, et des brainstormings avec toute l’équipe de système embaqué à MAScIR, Après tout ce travail, nous n’avons toujours pas pu identifier les types de flous et de bruits détectés au niveau des images issues du projet radar qui sont déjà des combinaisons de flous et de bruit. Pour cela nous avons décidé de trouver d'abord une solution qui va nous aider à analyser les résultats et à définir les limitations de l’algorithme que nous devons résoudre par la suite. Le premier obstacle que nous avons rencontré c’est que nous ne savions pas par où ou quoi commencer puisque l’algorithme a des résultats qui diffèrent des attentes et parfois, ils ne fonctionnent pas de la manière demandée. D’où l’impératif de tabler sur une autre méthode d’analyse : Trouver une méthode minutieuse pour évaluer l’algorithme afin de définir ses points forts et aussi ses limitations. III. Développement d’un logiciel de génération des vecteurs de test Une évaluation pertinente de l’algorithme consiste à lui passer en argument des images dont la quantité ainsi que le type du flou et de bruit sont préalablement contrôlés. C’est ainsi que nous pouvons conclure si le flou est bien compensé et le bruit est bien traité. La solution proposée est alors de développer un logiciel pouvant générer des vecteurs de test pour simuler les effets réels du mouvement, du système optique, de la température, d’une mauvaise conversion, de la poussière…etc. Ce logiciel va nous permettre, en plus de l'analyse critique de l'algorithme, de générer d'autres vecteurs, de façon générique, servant ainsi à tester différents algorithmes de traitement d'image dans le cadre des projets menés soit par l'équipe des systèmes embarqués, soit par des stagiaires et des doctorants dans le cadre des sujets de recherche.
  45. 45. Chapitre III : Analyse critique de l’existant 45 1. Présentation de l’interface graphique du logiciel Dans le but de répondre aux besoins que nous avons exprimés lors d’un brainstorming avec les membres de l’équipe, l’interface du logiciel, représentée dans la figure 18, est développée sous MATLAB. Les besoins sont listés ci-dessous :  Chercher une image de référence  Changer facilement les paramètres  Définir le nombre d’image à générer  Changer la taille des images  Générer un nombre d’images de tailles différentes  Ajouter une quantité du flou cinétique  Faire des translations horizontales et verticales  Modifier l’histogramme  Permettre la rotation des images  Ajouter un bruit gaussien  Ajouter un bruit salt & pepper  Ajouter une quantité du flou optique  Combiner plusieurs types de bruit  Archiver dans un dossier les images générées avec un fichier « .txt » contenant Figure 18 : Logiciel de génération des vecteurs de test
  46. 46. Chapitre III : Analyse critique de l’existant 46 les détails des opérations effectuées 2. Simulation de l’effet de la distance La simulation de l’effet de la distance est très simple. Il est évident qu’en éloignant un objet de la position de la camera, le nombre de pixels représentant cet objet dans l’image diminue. Ainsi, un simple redimensionnent de l’image peut simuler l’effet d’un objet s’éloignant de la camera. Ainsi, dans un premier temps, nous avons redimensionné les images en utilisant les meilleures interpolations existantes comme « bucubic, lanczos3… ». En analysant les résultats obtenus, il s’est avéré que les interpolations ne répondent pas à notre besoin. En effet, une interpolation permet de diminuer la taille en conservant le maximum de détails dans l’image. Ce qui ne simule pas la réalité des images prises à distance. Loin de la camera, un objet est représenté sur moins de pixels que lorsque l’objet est proche. Si l’on suppose que le système optique est parfait et que l’angle d’inclusion de la caméra est négligeable, alors un pixel d’un objet loin va représenter plusieurs pixels qu’une image capturée à une distance plus proche. C’est pour remédier à ce problème, que nous avons développé notre fonction MAScIR_Resize() avec notre interpolation qui prend en considération les fractions réelles d’un pixel. C’est-à-dire un pixel loin peut représenter un pixel et demi, 2.9 pixels proches… etc. L’exemple suivant explique la fonction MAScIR_Resize(): L’objectif de la fonction MAScIR_Resize() est de calculer à partir d’une image d’entrée, (image 1) figure 19, les valeurs des pixels de la même image, (image2), capturée à une distance plus grande. On constate que dans la première, figure 19 (a), quatre pixels sont représentés par un seul pixel dans l’image de sortie de la fonction. Or ce n’est pas ce qui se profile, car en réalité la valeur d’un pixel de sortie s’obtient par la moyenne des valeurs des quatre pixels de l’image en Figure 19 : A gauche exemple d’un cas simple 2x2 pixels devient un pixel. à droite 1.5x1.5 pixels devient un pixel (a) (a) (b) Figu re 19 : A gauc he exem
  47. 47. Chapitre III : Analyse critique de l’existant 47 entrée. Le cas de la figure 19 (b) est le plus proche de la réalité, car chaque 2.25 pixels sont représentés par un pixel. Ainsi chaque partie des pixels d’entrée contribue par un pourcentage dans la valeur du pixel de l’image proche. En général, on utilise la moyenne pondérée dont la formule générale est donnée comme suit : 𝑉𝑎𝑙𝑒𝑢𝑟 𝑑𝑢 𝑁𝑎𝑢𝑣𝑒𝑎𝑢 𝑝𝑖𝑥𝑒𝑙 = ∑ 𝑁𝑖𝑣𝑒𝑎𝑢 𝑑𝑒 𝑔𝑟𝑖𝑠∗𝑆𝑢𝑟𝑓𝑎𝑐𝑒 𝑜𝑐𝑢𝑝é𝑒 𝑝𝑎𝑟 𝑙𝑒 𝑚ê𝑚𝑒 𝑛𝑖𝑣𝑒𝑎𝑢 𝑡𝑎𝑖𝑙𝑙𝑒 𝑑𝑢 𝑛𝑜𝑢𝑣𝑒𝑎𝑢 𝑝𝑖𝑥𝑒𝑙 (1) Les résultats générés par notre logiciel pour simuler une plaque s’éloignant de la caméra sont donnés à la figure 20 : 3. Simulation de l’effet du mouvement Lorsqu’une image est capturée par une caméra, elle ne représente pas un instant de temps. En effet, en raison de contraintes technologiques, l'image ne peut pas être capturée instantanément, elle représente alors la scène sur une période de temps appelée temps d’exposition. Le plus souvent, ce dernier est d’autant bref qu’on ne peut le sentir. Pourtant, lorsqu’il s’agit d’un objet en mouvement rapide, le temps d’exposition peut se manifester en créant un flou cinétique sur l’image. Lorsqu’il s’agit d’une scène d’objets en mouvement, une image de cette scène doit représenter une intégration de toutes les positions de ces objets. Dans une telle image, tout objet mobile par rapport à la caméra se voit flouté ou tâché le long de la direction du mouvement relatif. Cet étalement peut se produire sur un objet qui se Figure 20 : Simulation d’une plaque s’éloignant de la caméra Figure 21 : a) Exemple du flou cinétique avec un objet mobile, b) Exemple du flou sur l’arrière-plan causé par le mouvement de la camera sur l’image à droite. (a) (b)
  48. 48. Chapitre III : Analyse critique de l’existant 48 Figure 22 : A gauche une image originale, à droite même image plus flou cinétique Figure 23 : A gauche une image originale, à droite même image après modification d’histogramme déplace figure 21 (a) ou sur un arrière-plan statique si la caméra est en mouvement figure 21 (b). Pour simuler cet effet, les fonctions implémentées sur MATLAB permettent d’appliquer des flous sur des images à partir de la PSF. Dans le cas du flou cinétique il faut juste spécifier le module et l’angle du vecteur de la vitesse du vecteur. La figure 22 montre l’exemple généré par notre logiciel : 4. Simulation de l’effet des conditions d'éclairages Il est bien connu que l'éclairage a un rôle très important dans le domaine d’imagerie et de photographie d’autant plus s’il s’agit d’un éclairage Outdoor. Un simple changement dans l’éclairage peut influencer sur le contraste de l’image. Ainsi, afin de simuler l’effet de l’éclairage, il faut jouer sur le contraste de l’image. Pour ce faire, il faut modifier l’histogramme de telle façon à simuler plusieurs conditions d’éclairage comme le jour, la nuit, le brouillard,…etc. Dans ce sens, les bibliothèques de MATLAB contiennent une variété de fonctions pouvant modifier l’histogramme d’une image. Ces fonctions nous ont permis de simuler de façon presque exhaustive les cas possibles. La figure 23 représente des générés par le logiciel développé. 5. Simulation de l’effet du système optique Le système optique est une partie critique dans la camera, Ainsi pour obtenir une bonne qualité d’image, La profondeur de champs doit être réglée sur l’objet constituant le centre
  49. 49. Chapitre III : Analyse critique de l’existant 49 Figure 24 : A gauche une image originale, à droite même image plus flou optique. Figure 25 : A gauche une image originale, à droite même image bruité de type salt & pepper d’intérêt dans l’image. Faute de quoi, l’image contiendra un flou optique qu’on appelle aussi « out of focus blur ». La figure 24 illustre un exemple du flou optique généré par notre logiciel : 6. Simulation des différents facteurs provocants le bruit Le bruit est une composante omniprésente dans tout traitement de signal ainsi qu’en domaine de traitement d’image. Dans ce dernier, le bruit est dû à plusieurs facteurs dont on cite: erreurs du capteur, manque d'éclairage, température, distorsion au niveau des circuits électroniques… etc. Dans la littérature, le bruit gaussien est utilisé pour simuler les facteurs ci-dessous. D'autres types peuvent être suite à des erreurs de conversion analogique/numérique ou de transmission qu'on peut simuler avec le bruit salt & pepper comme dans la figure ci-dessous générée par le logiciel développé. IV. Analyse des résultats des tests sur l’algorithme 1. Résultats des tests Après avoir développé le logiciel, nous avons fait une centaine de tests sur l’algorithme en changeant les types et la quantité de flou et du bruit ajoutés à l’image. Pour différentes combinaisons et différents ordres, nous avons obtenu des résultats variés, en voici quelques exemples :
  50. 50. Chapitre III : Analyse critique de l’existant 50 Les plaques d’immatriculations en gauche de la figure 26 représentent celles que nous avons générées par notre logiciel et les résultats obtenus à l’aide de l’algorithme sont représentés à droite. C’est parce que nous maîtrisons maintenant les causes de la détérioration de l’image que nous pouvons reconnaître exactement les points forts et les points faibles de cet algorithme. 2. Points forts et points faibles de l’algorithme Après chaque ensemble de tests, l’équipe se réunit pour discuter les résultats de l’algorithme et chercher de nouveaux tests. Après plusieurs reprises nous nous sommes mis d’accord sur les points suivants :  Points forts :  L’algorithme traite bien les bruits  L’algorithme règle bien le problème de contraste  L’algorithme compense bien le flou cinétique  Points faibles :  Mauvaise estimation du flou cinétique, ce qui parfois détériore l’image.  Aucun traitement du flou optique Figure 26 : En gauches les images d'entre de l'algorithme les images à droite sont des image de sorties
  51. 51. Chapitre III : Analyse critique de l’existant 51  Aucun traitement apporté pour les images de petites tailles. Dans ce cas, l’algorithme peut détériorer l’image davantage 3. Proposition des solutions Après avoir analysé les résultats des tests, nous avons pu conclure que l’algorithme a de grands problèmes lorsqu’il s’agit des images de petites tailles. En effet, nous avons vu que l’image ne subit aucun traitement. Pire encore, l’algorithme se perd des fois avec ce type d’images et apporte une détérioration supplémentaire. Or, les images issues du projet radar sont presque toutes de petite taille et sont illisibles vu la distance et le mouvement (voir annexe 1). Ainsi, notre objectif est de chercher et développer un algorithme capable de reconstruire les caractères d’une image même si elle est de petite taille ou qu’elle ne contienne pas assez d’informations. Pour arriver à cet objectif, il est possible d’adopter l’une des deux solutions suivantes: la première consiste à faire un « Upsampling » pour agrandir la taille et donc avoir plus d’informations sur l’image. La deuxième solution consiste à améliorer la netteté de l’image à l’aide de l’estimation de Kernel5 . Le tableau ci-dessous présente une étude comparative entre les deux solutions : UpSampling Estimation du Kernel Interpolation Superresolution Inconvénients  N’ajoute pas de détails s’ils n’existent pas  Difficile à implémenter  Difficile voire impossible pour les images de petites tailles Avantages  Peut être appliquée sur une seule image  Facile à implémenter  Augmenter la résolution  Amélioration de l’image  Ajouter plus de détails  Restauration de l’image Tableau 3: Tableau comparatif des solutions proposées 5 Kernel : Dans le traitement de l'image, Kernel ou un noyau, matrice de convolution, ou un masque est une petite matrice utile pour le flou, accentuation, l'estampage, détection de bords, et plus encore. Ceci est réalisé au moyen de convolution entre un noyau et une image.
  52. 52. Chapitre III : Analyse critique de l’existant 52 D’après le tableau comparatif, il est donc clair que pour reconstruire une image détériorée la meilleure solution est la SuperResolution. Cette méthode trouve son importance dans sa capabilité de récupérer les détails perdus à l’image. V. Conclusion Jusqu'à présent, nous avons fait une étude de l'existant avec une analyse et des critiques. De plus, nous avons listé les différentes solutions possibles pouvant améliorer la netteté de l'image. Dans le chapitre suivant, nous allons présenter la solution que nous avons adoptée ainsi que l'algorithme que nous avons développé pour répondre au cahier des charges.
  53. 53. 53 Chapitre IV: Implémentation d’un nouvel algorithme de SuperResolution I. Introduction Ce chapitre a pour but de décrire les nouvelles améliorations. On commence par expliquer le principe de SuperResolution ensuite la notion du sous pixel après l’algorithme développé. A la fin on présente les interfaces graphiques dont on a implémenté l’algorithme ainsi que les résultats obtenus.
  54. 54. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 54 II.Théorie du Superresolution 1. Introduction Dans la plupart des applications d'imagerie numérique, des images ou des vidéos à haute résolution sont généralement souhaitées. Le désir de la haute résolution d'image provient de deux domaines d'application principaux: le premier c’est l’amélioration de l'information picturale pour l'interprétation humaine et le deuxième domaine consiste à la représentation de la perception automatique de la machine. La résolution d'image décrit les détails contenus dans une image, plus de résolution implique plus de détails dans l'image. La résolution d'une image numérique peut être classée de différentes façons, dans notre étude on s’intéresse à la résolution spatiale. En premier temps, la résolution spatiale est limitée par les capteurs ou par le système d’acquisition de l’image. Les capteurs modernes sont des capteurs CCD6 ou CMOS7 , le nombre des capteurs dans une unité d’espace détermine la résolution spatiale de l’image à capturer. Il est donc évident que pour augmenter la résolution spatiale, il faut augmenter le nombre de pixels en réduisant la taille des capteurs. Cependant, diminuer la taille des capteurs revient à diminuer la quantité de la lumière incidente sur chaque capteur, ce qui provoque le bruit dit « Shot Noise ». En outre, le coût du matériel des capteurs augmente avec l'augmentation de la densité des capteurs. Par conséquence, la limitation matérielle de la taille du capteur limite la résolution spatiale d'une image capturée. En plus de la limitation des capteurs, la limitation du système optique vient s’ajouter. Elle résulte du flou provenant des lentilles, de l’aberration des objectifs, de la diffraction d’ouverture et du flou cinétique dû au mouvement. La construction des capteurs et des lentilles permettant de capturer des images avec une très haute résolution est très chère et surtout pas pratique pour certaines applications notamment celles de la surveillance ou des Smartphones. Ajoutons à cela, la vitesse du traitement et le stockage des données qui présente 6 CCD : Charge-Coupled Device, ou en français « dispositif à transfert de charge » (DTC)) est le plus simple à fabriquer. Inventé par George E. Smith et Willard Boyle dans les Laboratoires Bell en 1969 (cette invention leur rapportera la moitié du Prix Nobel de physique en 2009), il a rapidement été adopté pour des applications de pointe (imagerie astronomique) puis popularisé sur les caméras et appareils photo. 7 CMOS : Complementarity Metal-Oxide-Semiconductor est composé de photodiodes, où chaque photosite possède son propre convertisseur charge/tension et amplificateur.Leur consommation électrique, beaucoup plus faible que celle des capteurs CCD, leur vitesse de lecture et le plus faible coût de production sont les principales raisons de leur grande utilisation.
  55. 55. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 55 toujours des obstacles. De ce fait, pour résoudre ce problème, il faut accepter la dégradation de l’image et avoir recours au traitement de signal afin de minimiser le coût du matériel. Ces techniques de traitement de signal sont spécialement dénommées SuperResolution (SR en abrégé). La SuperResolution est la reconstruction d’une image à haute résolution en utilisant des images de faible résolution. Cet objectif est atteint en augmentant les fréquences élevées dans une image et en éliminant les dégradations causées par le processus de la capture. L'idée de base derrière la SR est de combiner l'information non redondante contenue dans les frames de faible résolution pour générer une image à haute résolution. La SR est possible seulement s’il existe des mouvements des sous-pixels (subpixels) entre les images qui lui sont passées en argument. 2. Notion des sous pixels (Subpixels) Avant d’entamer l’exemple explicatif de la théorie de la SuperResolution, nous aimerions au préalable faire comprendre la notion du mouvement des sous pixels. Prenons l’exemple d’un plan d’une surface de 2m² réparti en deux rectangles horizontaux : un plan blanc situé en haut et un autre plan noir situé en bas. Un photographe équipé d’une caméra d’un seul pixel est situé à distance telle que le pixel représente 1m² comme illustré par la figure 27. Figure 27 : une figure explicatif qui montre la reprsentaion d’un metre carré sur un pixel de la partie noir du plan
  56. 56. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 56 Ainsi, d’après la figure 27, et avec des conditions parfaites, la couleur du pixel sera noir du moment que le pixel est parfaitement aligné avec le plan noir. Si maintenant, on translate le plan verticalement d’un mètre, comme dans la figure 28, le pixel sera trivialement blanc.
  57. 57. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 57 Si l’on fait à présent une translation de moins d’un mètre, l’équivalent de faire une translation de moins d’un pixel, on aura alors le pixel au niveau de gris. Ce qui est tout à fait normal car il est impossible pour le pixel d’être en même temps noir est blanc. Il représentera toujours la moyenne de la lumière qu’il reçoit. Figure 26 Figure 28 : La reprsentaion d’un metre carré sur un pixel de la partie blanc du plan Figure 29 : La reprsentaion d’un metre carré sur un pixel des deux parties du plan donne un pixel au niveau de
  58. 58. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 58 Il est ainsi remarquable que le mouvement des sous pixels apporte de nouvelles informations qui sont contenues dans l’image. C’est ce principe qui va nous permettre de récupérer les détails perdus à une image. 3. Principe de la SuperResolution Comme nous l’avons introduit, l'idée de base de la SuperResolution est d’utiliser le mouvement des sous pixels pour apporter des informations complémentaires d’un objet pour reconstruire une image de haute résolution. Les images de faible résolution sont représentées à gauche dans la figure 30 ci-dessus. Ces images sont distinguées entre elles par des symboles différents (cercle, rectangle et carré) même si elles représentent la même scène. Cette distinction a pour but d’expliciter l’existence d’un mouvement de sous pixels entre ces images. Afin d’obtenir une haute résolution, l’une des images est prise comme référence (représentée dans ce cas par les cercles dans la figure 30) et à base du traitement de signal il serait possible de déterminer la position des autres images par rapport à l’image référence complétant ainsi les détails manquants. 4. Etat d’art Figure 30 : Principe de la SuperResolution
  59. 59. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 59 La reconstruction des images à l’aide de la SuperResolution était l’un des sujets les plus actifs dans la recherche surtout après le travail de Tsai et Huang en 1984. De ce fait plusieurs techniques et approches sont appliquées depuis le domaine fréquentiel vers le domaine spatial et depuis des perspectives du traitement du signal vers des perspectives de l’apprentissage des machines. Ces techniques et approches étaient tous dans le cadre des thèses de doctorats, et la plus part de ces dernières se trouvaient complexes et nécessite beaucoup de temps et de maitrise de plusieurs aspects. Dans notre cas et vu le manque du temps et que l’objectif du stage est de trouver des démonstrations pour montrer les possibilités et les résultats possible avec SR technique, on s’est basé sur le principe de la SuperResolution et on a essayé de l’implémenter (le détail de chaque étape se fera par la suite). Pour les gens qui veulent faire plus de recherche dans ce domaine, c’est préférable qu’ils commencent par l’article de Kamal Nasrollahi qui contient une comparaison de toutes les techniques qui ont été appliquées. III.implémentation de l’algorithme de SuperResolution L’algorithme que nous avons développé dans le cadre de ce projet est simple et repose sur les principes de base de la SuperResolution pour résoudre les problèmes de lisibilité des plaques et surmonter les limitations que nous avons discutées jusqu’ici. La particularité Figure 31 : les étapes essential dans notre algorithme
  60. 60. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 60 Figure 32 : illustration visuel du Cross-corrélation majeure de notre algorithme c’est qu’il permet de traiter des images de tailles différentes. Chose qui n’a jamais été faite jusqu’à présent dans le monde entier. L’organigramme de la figure 31 illustre le juste nécessaire à la compréhension de l’algorithme et de son exécution. Dans la suite de cette section, nous allons essayer d’expliquer le plus possible les trois grandes étapes du traitement apporté par l’algorithme développé à savoir : l’estimation du shift, le positionnement des pixels et finalement le Inpainting. 1. Estimation du shift L’estimation du shift consiste à estimer le déphasage entre deux images distinctes ou entre deux positions d’un objet en mouvement dans une image. Elle trouve son importance dans l’estimation de la vitesse d’un objet ou dans la reconstruction des scènes 3D…. etc. Dans la littérature, plusieurs méthodes et techniques permettent d’estimer le shift de moins d’un pixel. La méthode la plus répandue et la plus reconnue par son efficacité et sa performance est celle proposée par Samuel T. Thurman et James R. Fienup. En effet, elle permet d’obtenir rapidement les résultats les plus proches du shift réel par rapport aux autres méthodes. La méthode de Samuel et James repose sur la notion de cross-correlation dans le domaine fréquentielle. Commençant tout d’abord par définir la notion de cross-corrélation ainsi que la formule de calcul. En traitement de signal, la cross-corrélation permet de mesurer la similarité entre deux signaux. Elle est couramment utilisée pour chercher et détecter un petit signal faisant partie d’un autre signal plus long. La cross-corrélation a de nombreux domaines d’application tels que la reconnaissance d’objets, le traitement de signal, la tomographie électronique, la cryptanalyse, la neurophysiologie et bien d’autres. Dans l’exemple ci-contre la cross-corrélation des deux signaux (f) et (g) s’obtient en translatant le signal g suivant l’axe de temps par rapport au signal g. L’intégral du produit « f * g » est calculé dans chaque position. Cette intégrale atteint son maximum lorsque les deux signaux se trouvent parfaitement confondus. C’est ainsi que la similarité entre les signaux est mesurée. La fonction que nous avons développée dans ce sens se base sur le même principe sauf, que dans notre cas, nous allons appliquer la cross-corrélation dans le domaine fréquentiel pour
  61. 61. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 61 simplifier le calcul. En effet, la convolution dans le domaine temporel devient un produit dans le domaine fréquentiel. L’organigramme de la figure ci-dessous explique les étapes d’une estimation du shift des sous pixels : La première étape consista à représenter l’image déphasée ainsi que l’image de référence dans le domaine fréquentiel à l’aide de la transformée de Fourier. Il en résulte deux matrices dont les dimensions sont exactement la taille des deux images. Un redimensionnement de ces deux matrices permet d’obtenir la précision voulue. La matrice résultante du produit élément par élément des deux matrices subit une transformée de Fourier inverse pour qu’elle soit ensuite représentée dans le domaine spatial. A ce stade, les coordonnées de la crête maximale des éléments de la matrice permettent à l’aide d’un calcul simple de déduire de combien l’image déphasée a été translatée par rapport à l’image de référence. C’est ainsi que l’estimation du shift est calculée. Figure 33 : Organigramme montre les étapes d’estimation de shift implémenté dans notre algorithme
  62. 62. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 62 Pour tester la fonction d’estimation que nous avons développée, une translation aléatoire suivant les deux axes (x) et (y) est appliquée à des images. La translation réelle est alors sauvegardée pour qu’elle soit comparée avec la translation estimée à l’aide de la fonction. Après avoir fait les tests, nous avons conclu que pour des images de la même taille l’erreur est négligeable entre les deux estimations obtenue et réelle. A titre d’indication, cette erreur est de l’ordre de 0.03 en moyen pour les images de la même taille et de 0.21 pour les images de différentes tailles. Figure 34. Figure 34 : les erreurs d’estimation de shift horizontal et vertical d’un ensemble d’image généré dans le cas de meme taille et diffrente taille
  63. 63. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 63 2. Le positionnement des pixels Le positionnement des pixels est l’étape qui vient juste après l’estimation du shift. Même si elle apparaît simple et facile, cette étape est d’une grande importance. En effet, le positionnement des pixels permet d’augmenter ou de réduire la précision de tout l’algorithme. C’est à ce stade qu’on peut ajuster les paramètres contrôlant la taille de l’image résultante. Plus le nombre d’images est grand plus la précision est meilleure mais au détriment du traitement nécessaire et du temps de calcul. Une fois le positionnement est terminé, il se peut qu’on ait plusieurs images dans la même position, ce qui revient à dire plusieurs valeurs pour un même pixel. Dans ce cas, il est possible soit de prendre comme valeur de pixel la moyenne des valeurs ou bien de prendre la valeur la plus proche du centre de pixel. Après avoir essayé le maximum et le minimum des valeurs ainsi que la valeur la plus proche de celle du pixel, nous avons conclu que la moyenne des valeurs conduit au meilleur résultat. Il est évident que l’estimation ne sera jamais exacte, ajoutons à cela que les images ne seront pas toujours suffisante. Il en résulte qu’un nombre de trous reste encore sur l’image vu le manque d’informations supplémentaires, figure 35. C’est le problème que nous allons surmonter à l’aide de la méthode dite « InPainting » expliquée dans l’étape suivante. 3. Inpainting L’InPainting constitue la dernière étape du traitement apporté par notre algorithme. Il est souvent utilisé pour supprimer un objet d’une image avec conservation d’arrière-plan en remplissant sa place par interpolation ou en se basant sur d’autres méthodes plus sophistiquées. Figure 35 : Resultat d’un test de notre algorithme sans l’etape de inpainting montre des pixels manquant dand ‘image avec des point noir
  64. 64. Chapitre IV : Implémentation d’un nouvel algorithme de SuperResolution 64 Dans l’exemple de la figure ci-dessous, l’objet représenté par l’homme sera enlevé de l’image (a) à l’aide de la méthode Inpainting. Une interpolation permettra de compléter l’image modifiée pour avoir l’image résultante (b). Or, il est donc difficile de récupérer des détails et des informations sur l’image par Inpainting. Et vu que nous nous intéressons à des fréquences élevées dans l’image, nous avons laissé l’Inpainting jusqu’à la fin du positionnement pour qu’il traite seulement les trous restants dans l’image comme illustré dans la figure 37. Figure 36 : (a) image originale, (b) image apres la reconstruction a l’aide du Inpainting Figure 37 : le résultat de l’InPainting sur l’image dans la figure 35

×