SlideShare une entreprise Scribd logo
1  sur  76
Télécharger pour lire hors ligne
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
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é
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.
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 !
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 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.
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
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
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
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
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
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
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
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
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
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
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.
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
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
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
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
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
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).
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.
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
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
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.
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
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] :
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.
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.
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
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)
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.
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
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
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
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
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]
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
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
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
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.
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.
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
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
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)
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
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 :
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
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.
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
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.
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.
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
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.
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
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
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
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
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
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
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
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
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report
PFE_Report

Contenu connexe

Tendances

RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITLina Meddeb
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATSiwar GUEMRI
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Sofien Benrhouma
 
Rapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben SlimaRapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben SlimaIlef Ben Slima
 
Conception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSConception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSFaissoilMkavavo
 
Présentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsPrésentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsMohamed Ayoub OUERTATANI
 
Analyse trafic-urbain-temps-reel
Analyse trafic-urbain-temps-reelAnalyse trafic-urbain-temps-reel
Analyse trafic-urbain-temps-reelSid Ahmed Benkraoua
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...Mohamed Amine Mahmoudi
 
Reconnaissance faciale
Reconnaissance facialeReconnaissance faciale
Reconnaissance facialeAymen Fodda
 
Presentation pfe
Presentation pfePresentation pfe
Presentation pfezinebcher
 
Rapport Mini Projet : élaborer un moteur de Recherche spécialisé en Education
Rapport Mini Projet : élaborer un moteur de Recherche spécialisé en EducationRapport Mini Projet : élaborer un moteur de Recherche spécialisé en Education
Rapport Mini Projet : élaborer un moteur de Recherche spécialisé en EducationMohamed Amine Mahmoudi
 
Rapport PFE faten_chalbi
Rapport PFE faten_chalbiRapport PFE faten_chalbi
Rapport PFE faten_chalbiFaten Chalbi
 
Rapport interface terminal
Rapport interface terminalRapport interface terminal
Rapport interface terminalBelwafi Bilel
 
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
Rapport pfe Conceptionet Developpement d'une Application web et  Mobile Rapport pfe Conceptionet Developpement d'une Application web et  Mobile
Rapport pfe Conceptionet Developpement d'une Application web et Mobile Raoua Bennasr
 
1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopieRamiJOUDI2
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...Ramzi Noumairi
 
Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique ayoub daoudi
 

Tendances (20)

gestion de projet
gestion de projetgestion de projet
gestion de projet
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRIT
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSAT
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
 
Rapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben SlimaRapport PFE Ilef Ben Slima
Rapport PFE Ilef Ben Slima
 
Rapport final
Rapport finalRapport final
Rapport final
 
Conception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTSConception et Réalisation Application Web Laravel PFE BTS
Conception et Réalisation Application Web Laravel PFE BTS
 
Présentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clientsPrésentation PFE: Système de gestion des réclamations et interventions clients
Présentation PFE: Système de gestion des réclamations et interventions clients
 
Analyse trafic-urbain-temps-reel
Analyse trafic-urbain-temps-reelAnalyse trafic-urbain-temps-reel
Analyse trafic-urbain-temps-reel
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
 
Reconnaissance faciale
Reconnaissance facialeReconnaissance faciale
Reconnaissance faciale
 
ROBOT à base d'Android - Rapport PFE
ROBOT à base d'Android - Rapport PFEROBOT à base d'Android - Rapport PFE
ROBOT à base d'Android - Rapport PFE
 
Presentation pfe
Presentation pfePresentation pfe
Presentation pfe
 
Rapport Mini Projet : élaborer un moteur de Recherche spécialisé en Education
Rapport Mini Projet : élaborer un moteur de Recherche spécialisé en EducationRapport Mini Projet : élaborer un moteur de Recherche spécialisé en Education
Rapport Mini Projet : élaborer un moteur de Recherche spécialisé en Education
 
Rapport PFE faten_chalbi
Rapport PFE faten_chalbiRapport PFE faten_chalbi
Rapport PFE faten_chalbi
 
Rapport interface terminal
Rapport interface terminalRapport interface terminal
Rapport interface terminal
 
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
Rapport pfe Conceptionet Developpement d'une Application web et  Mobile Rapport pfe Conceptionet Developpement d'une Application web et  Mobile
Rapport pfe Conceptionet Developpement d'une Application web et Mobile
 
1601896849 rapport fluttercopie
1601896849 rapport fluttercopie1601896849 rapport fluttercopie
1601896849 rapport fluttercopie
 
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
Projet de fin étude  ( LFIG : Conception et Développement d'une application W...Projet de fin étude  ( LFIG : Conception et Développement d'une application W...
Projet de fin étude ( LFIG : Conception et Développement d'une application W...
 
Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique Rapport du Projet de Fin d'année Génie informatique
Rapport du Projet de Fin d'année Génie informatique
 

Similaire à PFE_Report

Rapport PFE | Eolane | Amélioration de la productivité de l'atelier CMS
Rapport PFE | Eolane | Amélioration de la productivité de l'atelier CMSRapport PFE | Eolane | Amélioration de la productivité de l'atelier CMS
Rapport PFE | Eolane | Amélioration de la productivité de l'atelier CMSZouhair Boufakri
 
rapport-projet-de-fin-detudes
 rapport-projet-de-fin-detudes rapport-projet-de-fin-detudes
rapport-projet-de-fin-detudesAchraf Mokhtari
 
Collecte des données métiers et constitution d'un entrepôt centrale
Collecte des données métiers et constitution d'un entrepôt centraleCollecte des données métiers et constitution d'un entrepôt centrale
Collecte des données métiers et constitution d'un entrepôt centraleoussama Hafid
 
Openerp à la poste maroc
Openerp à la poste marocOpenerp à la poste maroc
Openerp à la poste marocHORIYASOFT
 
Application web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment systemApplication web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment systemSarra ERRREGUI
 
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Bachir Benyammi
 
GESTION ELECTRONIQUE DE DOCUMENT
GESTION ELECTRONIQUE DE DOCUMENTGESTION ELECTRONIQUE DE DOCUMENT
GESTION ELECTRONIQUE DE DOCUMENTSerge Wallas
 
Rapport version finale kouakou aboua pokou alexis
Rapport version finale kouakou aboua pokou alexis Rapport version finale kouakou aboua pokou alexis
Rapport version finale kouakou aboua pokou alexis abouaalexis
 
Rapport belgacem khaled
Rapport belgacem khaledRapport belgacem khaled
Rapport belgacem khaledBoughraraanis
 
Gestion programme moussanada avec openerp
Gestion programme moussanada avec openerpGestion programme moussanada avec openerp
Gestion programme moussanada avec openerpHORIYASOFT
 
Rapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaouiRapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaouiIssaoui Ilyes
 
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdfPE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdfBinocheMf
 
Mise en place d’une application mobile de géolocalisation
Mise en place d’une application mobile de géolocalisationMise en place d’une application mobile de géolocalisation
Mise en place d’une application mobile de géolocalisationCléa Aurianne Leencé BAWE
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop amat samiâ boualil
 
Rapport de projet shell
Rapport de projet shellRapport de projet shell
Rapport de projet shellBilal ZIANE
 
Rapport projet UniceBot
Rapport projet UniceBotRapport projet UniceBot
Rapport projet UniceBottheoopparadigm
 
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...tayebbousfiha1
 
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...
Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...Hajer Dahech
 
Mon Projet Fin d'étude: Conception et développement d'une application de géol...
Mon Projet Fin d'étude: Conception et développement d'une application de géol...Mon Projet Fin d'étude: Conception et développement d'une application de géol...
Mon Projet Fin d'étude: Conception et développement d'une application de géol...rim elaire
 

Similaire à PFE_Report (20)

Rapport PFE | Eolane | Amélioration de la productivité de l'atelier CMS
Rapport PFE | Eolane | Amélioration de la productivité de l'atelier CMSRapport PFE | Eolane | Amélioration de la productivité de l'atelier CMS
Rapport PFE | Eolane | Amélioration de la productivité de l'atelier CMS
 
rapport-projet-de-fin-detudes
 rapport-projet-de-fin-detudes rapport-projet-de-fin-detudes
rapport-projet-de-fin-detudes
 
Collecte des données métiers et constitution d'un entrepôt centrale
Collecte des données métiers et constitution d'un entrepôt centraleCollecte des données métiers et constitution d'un entrepôt centrale
Collecte des données métiers et constitution d'un entrepôt centrale
 
Openerp à la poste maroc
Openerp à la poste marocOpenerp à la poste maroc
Openerp à la poste maroc
 
Application web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment systemApplication web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment system
 
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
Étude et réalisation d’une application de contrôle d’un PC à distance en JAVA...
 
GESTION ELECTRONIQUE DE DOCUMENT
GESTION ELECTRONIQUE DE DOCUMENTGESTION ELECTRONIQUE DE DOCUMENT
GESTION ELECTRONIQUE DE DOCUMENT
 
Rapport version finale kouakou aboua pokou alexis
Rapport version finale kouakou aboua pokou alexis Rapport version finale kouakou aboua pokou alexis
Rapport version finale kouakou aboua pokou alexis
 
Rapport belgacem khaled
Rapport belgacem khaledRapport belgacem khaled
Rapport belgacem khaled
 
Gestion programme moussanada avec openerp
Gestion programme moussanada avec openerpGestion programme moussanada avec openerp
Gestion programme moussanada avec openerp
 
Rapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaouiRapport pfe ingénieur ilyes issaoui
Rapport pfe ingénieur ilyes issaoui
 
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdfPE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
PE - Développeur d'applications multiplateformes-24 Juin-Final.pdf
 
Mise en place d’une application mobile de géolocalisation
Mise en place d’une application mobile de géolocalisationMise en place d’une application mobile de géolocalisation
Mise en place d’une application mobile de géolocalisation
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop
 
Rapport de projet shell
Rapport de projet shellRapport de projet shell
Rapport de projet shell
 
Rapport projet UniceBot
Rapport projet UniceBotRapport projet UniceBot
Rapport projet UniceBot
 
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
 
Rapport de stage
Rapport de stageRapport de stage
Rapport de stage
 
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...
Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...
 
Mon Projet Fin d'étude: Conception et développement d'une application de géol...
Mon Projet Fin d'étude: Conception et développement d'une application de géol...Mon Projet Fin d'étude: Conception et développement d'une application de géol...
Mon Projet Fin d'étude: Conception et développement d'une application de géol...
 

Dernier

JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfInstitut de l'Elevage - Idele
 
Algo II : les piles ( cours + exercices)
Algo II :  les piles ( cours + exercices)Algo II :  les piles ( cours + exercices)
Algo II : les piles ( cours + exercices)Sana REFAI
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...Institut de l'Elevage - Idele
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfInstitut de l'Elevage - Idele
 
présentation sur la logistique (4).
présentation     sur la  logistique (4).présentation     sur la  logistique (4).
présentation sur la logistique (4).FatimaEzzahra753100
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfmia884611
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfInstitut de l'Elevage - Idele
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSKennel
 
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...maach1
 

Dernier (11)

JTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdfJTC 2024 La relance de la filière de la viande de chevreau.pdf
JTC 2024 La relance de la filière de la viande de chevreau.pdf
 
Algo II : les piles ( cours + exercices)
Algo II :  les piles ( cours + exercices)Algo II :  les piles ( cours + exercices)
Algo II : les piles ( cours + exercices)
 
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
JTC 2024 - Leviers d’adaptation au changement climatique, qualité du lait et ...
 
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdfJTC 2024 - DeCremoux_Anomalies_génétiques.pdf
JTC 2024 - DeCremoux_Anomalies_génétiques.pdf
 
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdfJTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
JTC 2024 - SMARTER Retour sur les indicateurs de santé .pdf
 
présentation sur la logistique (4).
présentation     sur la  logistique (4).présentation     sur la  logistique (4).
présentation sur la logistique (4).
 
Câblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdfCâblage, installation et paramétrage d’un réseau informatique.pdf
Câblage, installation et paramétrage d’un réseau informatique.pdf
 
JTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdfJTC 2024 - Réglementation européenne BEA et Transport.pdf
JTC 2024 - Réglementation européenne BEA et Transport.pdf
 
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdfSciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
SciencesPo_Aix_InnovationPédagogique_Atelier_APC.pdf
 
CAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptxCAP2ER_GC_Presentation_Outil_20240422.pptx
CAP2ER_GC_Presentation_Outil_20240422.pptx
 
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
Cours-de-Ponts Cours de Ponts Principes généraux - Conception Méthodes de con...
 

PFE_Report

  • 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. 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. 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. 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. v
  • 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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 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. 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. 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. 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. 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. 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. 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. 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. 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. 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 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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 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. 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. 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. 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. 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. 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. 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. 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. 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. 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 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 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