De nos jours il existe de nombreux systèmes de reconnaissance des plaques d’immatriculation, ces
systèmes ont deux axes majeurs, qui sont la détection de la plaque d’immatriculation et la
reconnaissance de ses caractères.
Cependant ces systèmes sont contrôlés par diverses conditions liées à la couleur des plaques
connue d’avance, aux arrières plans fixes…., et varient en terme d’extraction des caractéristiques.
Par conséquent ce présent rapport propose un nouveau système de reconnaissance des plaques
d’immatriculation basé sur l’acquisition des images et le traitement par Matlab.
Notre système est constitué de trois étapes majeures, qui sont la phase d’acquisition. Le deuxième
axe consiste à extraire à partir d’une image acquise au niveau de gris par une caméra digitale la
plaque de la voiture en se basant essentiellement sur une méthode de détection de contours. Cette
plaque subit par la suite une segmentation en caractères afin d’être reconnu . Le troisième axe
constitue la phase de la reconnaissance, ces étapes ont été appliquées sur une base de données
des plaques d’immatriculation marocaines.
Les informations extraites peuvent être utilisées pour plusieurs intérêts, comme le contrôle d’accès
et de flux, la surveillance des passages aux frontières et aux péages, la recherche de véhicules
suspects ou encore la lutte contre la criminalité, etc. Ceci rend leurs lectures cruciale et inévitable
dans tous ces domaines.
Les résultats des expérimentations obtenus montrent que la méthode proposée achève des taux
de reconnaissance acceptable.
Etude bibliographique sur les algorithmes de compression sans perte
Systeme de la Reconnaissance des des plaques d'immatriculation marocaines
1. Remerciements
de près ou de loin, d’une manière ou d’une autre, permis, par leur
collaboration, leur soutien et leur avis judicieux, de mener à bien ce mini-
projet .
Nous voudrons exprimer nos remerciements ainsi que nos profonde
gratitude à notre professeur Mr . JILBAB qui nous accordé sa confiance
en nos permettant d’améliorer nos connaissances techniques et aussi nos
compétence dans le domaine de traitement d’image grace a sa rigueur
scientifique, sa large expérience dans ce domaine ainsi que ses
encouragements incessants nous ont été d’une aide précieuse. Ses conseils
avisés, ses critiques pertinentes et ses qualités humaines nous ont été d’une
très grande utilité pour mener à terme ce travail.
C’est pour nous un réel plaisir de remercier toutes les personnes qui ont,
2. De nos jours il existe de nombreux systèmes de reconnaissance des plaques d’immatriculation, ces
systèmes ont deux axes majeurs, qui sont la détection de la plaque d’immatriculation et la
reconnaissance de ses caractères.
Cependant ces systèmes sont contrôlés par diverses conditions liées à la couleur des plaques
connue d’avance, aux arrières plans fixes…., et varient en terme d’extraction des caractéristiques.
Par conséquent ce présent rapport propose un nouveau système de reconnaissance des plaques
d’immatriculation basé sur l’acquisition des images et le traitement par Matlab.
Notre système est constitué de trois étapes majeures, qui sont la phase d’acquisition. Le deuxième
axe consiste à extraire à partir d’une image acquise au niveau de gris par une caméra digitale la
plaque de la voiture en se basant essentiellement sur une méthode de détection de contours. Cette
plaque subit par la suite une segmentation en caractères afin d’être reconnu . Le troisième axe
constitue la phase de la reconnaissance, ces étapes ont été appliquées sur une base de données
des plaques d’immatriculation marocaines.
Les informations extraites peuvent être utilisées pour plusieurs intérêts, comme le contrôle d’accès
et de flux, la surveillance des passages aux frontières et aux péages, la recherche de véhicules
suspects ou encore la lutte contre la criminalité, etc. Ceci rend leurs lectures cruciale et inévitable
dans tous ces domaines.
Les résultats des expérimentations obtenus montrent que la méthode proposée achève des taux
de reconnaissance acceptable.
Résumé
Nowadays there are many license plate recognition systems, these systems have two major axes,
which are the detection of the license plate and the recognition of its characters.
However these systems are controlled by various conditions related to the color of the plates
known in advance, the fixed backgrounds ...., and vary in terms of extraction characteristics.
Therefore, this report proposes a new license plate recognition system based on image acquisition
and Matlab processing.
Our system consists of three major stages, which are the acquisition phase. The second axis is to
extract from a gray-level image by a digital camera the car plate based essentially on a method of
detection of contours. This plate is subsequently subdivided into characters in order to be
recognized. The third axis is the recognition phase, these steps were applied on a database of
Moroccan license plates.
The extracted information can be used for several interests, such as access and flow control, border
and toll monitoring, search for suspicious vehicles or the fight against crime, etc. This makes their
readings crucial and inevitable in all these areas.
The results of the experiments obtained show that the proposed method achieves acceptable
Abstract
3. TABLE DES MATIERES
Introduction générale.................................................................................................................... 3
Chapitre 1 L’acquisition ............................................................................................................. 4
1 INTRODUCTION..................................................................................................................... 4
1.1 Interface caméra - carte d'acquisition.............................................................................. 4
1.1.1 La carte d’acquisition ............................................................................................... 4
1.1.2 La camera ................................................................................................................. 4
1.2 L’Interface de connexion................................................................................................. 5
1.3 Partie logicielle (MATLAB) ........................................................................................... 5
1.4 Créer un objet camera-carte............................................................................................ 5
chapitre 2 Prétraitemant ........................................................................................................... 7
2.1 INTRODUCTION................................................................................................................ 7
2.1.1 Caractéristiques des plaques Marocaines ................................................................. 7
2.1.2 Normes de base de plaques d'immatriculation marocaine........................................ 7
2.1.3 Quelques modèles de plaques d'immatriculation marocaine.................................... 7
2.2 L’algorithme de la reconnaissance des plaques..................................................................... 9
2.2.1 L’images acquises .................................................................................................... 9
2.2.2 Le traitement........................................................................................................... 10
2.2.3 La détection de la plaque........................................................................................ 12
2.2.4 La Ségmentation des caractéres.............................................................................. 14
Chapitre 3 La simulations et les résultats obtenus ............................................................. 18
3.1 INTRODUCTION............................................................................................................... 18
3.2 Reconnaissance et affichage des caractère.......................................................................... 18
3.3 La simulation complete....................................................................................................... 20
CONCLUSION................................................................................................................................ 21
4. 2
LISTE DES FIGURES
Figure 1: la carte Raspberry.................................................................................................................... 4
Figure 2:la caméra PRI............................................................................................................................ 4
Figure 3: L’Interface de connexion caméra Raspberry.......................................................................... 5
Figure 4 :connexion ................................................................................................................................ 5
Figure 5 : Système de reconnaissance des plaques d’immatriculation ................................................ 9
Figure 6 :la base des images acquises.................................................................................................... 9
Figure 7:le traitement de l'image acquise ........................................................................................... 10
Figure 8:Effet de la dilatation à l'aide d'un élément structurant carré 3 × 3...................................... 10
Figure 9 :élimination des trous............................................................................................................ 11
Figure 10:resultats de dilatation.......................................................................................................... 11
Figure 11:suppression de bordures de l'image.................................................................................... 12
Figure 12:La détection de la plaque..................................................................................................... 13
Figure 13:le cadrage de la plaque ........................................................................................................ 13
Figure 14:qulques images de la base des données de la ségmentation............................................. 14
Figure 15:binarisation par seuil............................................................................................................ 15
Figure 16:extraction de la plaque ........................................................................................................ 15
Figure 17:l'outil variable sous Matlab.................................................................................................. 16
Figure 18:la variable créé imgfile ......................................................................................................... 16
Figure 19:segmentation des caractéres............................................................................................... 17
Figure 20:reconnaissance des caractères ............................................................................................ 19
5. 3
Introduction générale
A l’origine, les plaques d’immatriculation ont été inventées et mises en usage réel pour les chariots,
mais pas pour les voitures. Au Canada, la plaque d’immatriculation a d’abord été introduite en 1884
pour un chariot tiré par des chevaux. La première règle de la plaque d’immatriculation du monde est
appliquée en France le 14 Août 1983. Suite à cette règle, toutes les plaques d’immatriculation doivent
être enregistrées avec leurs propres noms, adresse et numéro d’enregistrement. En Allemagne, la
police a fourni à Mr. Chubais Barthes la plaque d’immatriculation, le 14 Avril 1899, qui est la première
plaque d’immatriculation enregistrée dans le monde. Cette plaque est une pièce rectangulaire, dans
laquelle seul « 1 » a été écrit.
La plaque d’immatriculation désigne une voiture d’une manière unique, et son image représente une
information importante pour identifier son propriétaire. En effet, les images plaques peuvent être
utilisées comme support principal pour l’identification homme/véhicule, et pour la gestion des
informations des plaques d’immatriculation afin de contrôler le transport public.
Par conséquent, la reconnaissance des plaques d’immatriculation (Licence Plate Recognition) des
véhicules est une partie critique du transport intelligent moderne, depuis que la plaque
d’immatriculation est devenue un moyen simple et efficace pour identifier les véhicules.
Le système de reconnaissance des plaques a une large gamme d’applications, à savoir :
Gestion de parking : Facilitation voire automatisme du paiement, des entrées et des sorties.
Routes à péage : Permission d’un passage rapide via les postes de péage.
Gestion du trafic des aéroports : Seuls les véhicules autorisés peuvent accéder aux voies
réservées aux transports publics/taxis/.
Contrôle d'accès : La porte s'ouvre uniquement pour les véhicules autorisés. Tous les véhicules
de visite sont automatiquement enregistrés.
Alertes véhicule : La solution (système) émet une alerte automatique lorsqu'un véhicule
figurant sur une liste de surveillance est détecté.
Le présent travail sera organisé comme suit, nous allons présenter notre étude en trois chapitres. Dans
le premier chapitre, nous allons introduire la phase d’acquisition des images qui est basée sur une
camera numérique et la carte Raspberry. Dans le deuxième un ensemble de prétraitements qui vont
améliorer la qualité de l’image. Ces derniers incluent la phase de détection appliquée à un extrait d’une
base de données, ainsi que la phase de segmentation exécutée sur une base des plaques
d’immatriculation marocaines dans le but d’isoler les caractères.Le troisième chapitre sera consacré
aux simulations et les résultats obtenus .
Enfin une conclusion générale sera introduite en présentant une synthèse du travail réalisé, ainsi
qu’une problematique ouverte qui represente des differents contraintes .
6. 4
Chapitre 1
L’acquisition
1 INTRODUCTION
L'arrivée du "tout numérique" et la vulgarisation de l'acquisition d'image pourrait bien annoncer la fin
des cartes d'acquisition vidéo en tant que telles.
Cette mutation vers "le numérique" a une autre conséquence. Avec les cartes basées sur les signaux
analogiques, la connaissance de l'électronique analogique est indispensable pour évaluer
correctement un systéme d'acquisition vidéo. Avec les systémes numériques, cela n'a plus de sens.
1.1 Interface caméra - carte d'acquisition
C'est la première étape de la traduction du signal image. Il s'agit de stocker l'image sur la carte
d'acquisition. Les différents types d'entrée supportés par les cartes d'acquisition correspondent aux
différents types de transfert d'images.
1.1.1 La carte d’acquisition
Figure 1: la carte Raspberry
Le Raspberry est un nano-ordinateur monocarte à processeur ARM conçu par des professeurs du
département informatique de l'université de Cambridge dans le cadre de la fondation Raspberry .
Cet ordinateur, de la taille d'une carte de crédit, est destiné à encourager l'apprentissage de la
programmation informatique ; il permet l'exécution de plusieurs variantes du système
d'exploitation libre GNU/Linux, notamment Debian, et des logiciels compatibles. Mais il fonctionne
également avec l'OS Microsoft Windows : Windows 10 Core et celui de Google, Android .
1.1.2 La camera
La plateforme du Raspberry est équipée d’une carte caméra RPI qui
se branche directement sur le connecteur CSI du Raspberry Pi. Elle est
capable de fournir une image de 5MP ou une vidéo HD 1080p à 30fps
grâce au capteur 2592 x 1944 pixels Omni-vision 5647 à focale fixe.
Figure 2:la caméra PRI
I
7. 5
1.2 L’Interface de connexion
La carte de caméra se fixe au Raspberry Pi via un câble
ruban. Une extrémité du câble ruban va au circuit imprimé de
la caméra et l'autre extrémité au matériel Raspberry Pi lui-
même. Vous devez raccorder correctement le câble ruban,
sinon la caméra ne fonctionnera pas. Sur le circuit imprimé de
la caméra, le support bleu du câble doit être tourné du côté
opposé au circuit imprimé, et sur le matériel Raspberry Pi, il doit
être tourné vers la connexion Ethernet.
Figure 3: L’Interface de connexion caméra Raspberry
1.3 Partie logicielle (MATLAB)
MATLAB associe un environnement de bureau, conçu pour l'analyse par itération et
les processus de conception avec un langage de programmation permettant
d'exprimer directement les mathématiques sous forme de tableaux et de matrices.
Le support package MATLAB pour Raspberry Pi vous permet d'écrire des programmes MATLAB qui
communiquent avec votre carte Raspberry Pi et acquièrent des données à partir des ports GPIO de la
carte, des caméras et autres appareils connectés. MATLAB étant un langage interprété de haut niveau,
il permet de facilement prototyper et affiner des algorithmes pour vos projets Raspberry Pi. MATLAB
inclut des milliers de fonctions mathématiques et de tracés que vous pouvez utiliser dans le cadre de
la programmation Raspberry Pi, couvrant des domaines tels que le traitement vidéo et le traitement
d'image, l'optimisation, les statistiques et le traitement du signal.
1.4 Créer un objet camera-carte
Créez un objet de tableau de caméra en exécutant la commande suivante à l'invite de MATLAB.
clear rpi
rpi = raspi(); %créer une connexion au matériel Raspberry
cam = cameraboard (rpi, 'Resolution' , '640x480' ); %Créer une connexion
au Conseil caméra et affecter la connexion à une poignée, mycam.
Figure 4 :connexion
camera-raspberry-Matlab
8. 6
. Enregistrez une vidéo.
La camera est une poignée pour un objet cameraboard. Affiche les images capturées à partir de la
carte caméra Raspberry Pi dans MATLAB.
Avant une durée ,vous pouvez arrêter l'enregistrement de la vidéo.
La carte caméra Raspberry Pi permet d'utiliser une région du capteur comme zone de capture
d'image. Cette région, appelée région d'intérêt (ROI), est spécifiée en
tant que vecteur normalisé [xywh] où x, y définit le coin supérieur gauche
et w et h spécifient la largeur et la hauteur.
Réduire le retour sur investissement tout en maintenant la taille de
l'image de sortie constante, on obtient un effet de zoom numérique. Le
code MATLAB suivant fait varier les paramètres x et y de la ROI pour effectuer un zoom sur la partie
inférieure droite du capteur. La zone approximative du capteur en cours de capture est indiquée par
un rectangle rouge.
For i = 1: 10
img = snapshot(cam); % Importez et affichez une séquence de dix
images sur votre ordinateur.
image (img);
drawnow;
end
stop (mycam) ;
record(mycam,'myvideo.mp4'); % Record a 10 second video
figure(1);
roi = [0 0 1 1];
cam.ROI = [0 0 1 1];
for i = 1:10
img = snapshot(cam);
end
subplot(211);
image(img);
drawnow;
rect = rectangle('Position',[1 1 320 240]);
rect.EdgeColor = 'red';
for i = 1:200
img = snapshot(cam);
if i > 20
fc = (i - 5)*0.0025;
roi(1:2) = [fc, fc];
roi(3:end) = [1-fc, 1-fc];
cam.ROI = roi;
subplot(211);
rect.Position = roi.*[320 240 320 240];
drawnow;
subplot(212);
image(img);
drawnow;
end
end
9. 7
Chapitre 2
Prétraitemant
2.1 INTRODUCTION
Ces dernières années, le nombre total des véhicules augmente rapidement ce qui provoque
l’apparition fréquente des violations de la circulation, et pour superviser les conducteurs la
reconnaissance des plaques d’immatriculations est devenu un acte primordial pour gérer la circulation.
Dans ce chapitre nous présentons les Normes de base de plaques d'immatriculation marocaine ansi
que le système de reconnaissance utilisé ainsi que l’ensemble des étapes de prétraitement faites à fin
d’extraire l’information pertinente (c.à.d. la plaque d’immatriculation) en éliminant les bruits et en
éclaircissant les caractères de la plaque pour les préparer à la phase reconnaissance des caracteres.
Pour atteindre ce but une étape de localisation de la plaque de l’image, et une étape de segmentation
ont été mise en oeuvre afin d’extraire les caractères.
2.1.1 Caractéristiques des plaques Marocaines
La plaque d’immatriculation au Maroc permet, comme tous les types de plaques minéralogiques
d’identifier les véhicules. Le dispositif de contrôle actuel est la suite de la série commencée en l’an
2000. Cet article vous permettra d’obtenir de plus amples détails sur les plaques marocaines.
2.1.2 Normes de base de plaques d'immatriculation marocaine
La plaque d’immatriculation au Maroc permet, comme tous les types de plaques minéralogiques
d’identifier les véhicules.
Les plaques d’immatriculation au Maroc ont changé de style au début de l’année 2000. C’est
maintenant la troisième “génération” de plaques ; le changement est dû à l’inadéquation et la
saturation de l’ancien système (####-##|#) du fait que le dernier chiffre regroupait toute une région
(les plaques étaient alors principalement différenciées selon les 8 régions que comptait le découpage).
Le nouveau système contient des lettres (arabes) et des chiffres, un peu à la manière des plaques
françaises d’ailleurs. Les plaques sont maintenant du style ##### | A | ##. Elles ont un fond blanc et
les lettres sont en noir. Les plaques arrières doivent être un peu plus larges.
Quand les séries d’une lettre sont épuisées, on passe à deux lettres, en commençant par la première
lettre de l’alphabet arabe : “alif” (équivalent de “a”).
La troisième partie de la plaque est composée d’un nombre d’un ou deux chiffres qui symbolisent cette
fois non pas les régions du royaume, mais plutôt ses préfectures et provinces.
Les voitures vendues après le 1e janvier 2000 portent automatiquement les nouvelles plaques. Il en
est de même pour les voitures qui changent de main à partir de la même date, ainsi que pour les
véhicules qui souhaitent passer au nouveau système.
2.1.3 Quelques modèles de plaques d'immatriculation marocaine
Véhicule automobile :
Fond blanc en matière réfléchissante avec des caractères en relief de couleur noir diamant.
II
I
10. 8
Plaque avant et
arrière sur une ligne :
Plaque arrière sur
deux lignes:
Plaque
d'immatriculation
des véhicules de
collection :
Modèles de plaques
d'immatriculation
dans les séries
spéciales W18 et
WW :
Modèles de plaque
d'un Véhicule
immatriculé dans la
série corps
diplomatique :
Modèle de plaque
d'immatriculation
d'un véhicule
automobile en
circulation
internationale :
Signe distictif du
Maroc
11. 9
2.2 L’algorithme de la reconnaissance des plaques
La nécessité de reconnaitre les véhicules et leurs plaques d’immatriculations a donné naissance à
plusieurs systèmes de reconnaissance.
Dans ce projet on va présenter un système de reconnaissance des plaques d’immatriculation basé sur
le traitement d’image Matlab comme méthodes d’extraction des caractéristiques , ce système est
composé de trois sujets majeurs qui sont : une phase de prétraitements qui inclue une étape de
détection de la plaque ainsi qu’une étape de segmentation, la deuxième phase représente l’étape
d’extraction des caractéres .
2.2.1 L’images acquises
Notre systeme consiste a lire automatiquement les plaques d’immatriculation à partir de la camera
connectée avec notre carte Raspberry .
A titre d’examples des images acquises nous avons prendre des photos des véhicules par une camera
portables prend les caractéristiques suivantes : (13 mégapixels + Auto Focus ,les images générées de
types JPEG .)
La base des images utilisée est la suivantes :
L'image
acquise
Traitement
consiste a convertire
l'image de RGB au niveau
de gris ,plus d'autre
prétraitements inclues
dans cete étape
Détection
permet la
détection de la
région plaque
Ségmentation
consiste a segmenté les
caractères par
décomposition de
l'image en séquences
des sous-images de
symboles individuels
Reconnaissance
et extraction
des caractéres
Figure 5 : Système de reconnaissance des plaques d’immatriculation
Figure 6 :la base des images acquises
12. 10
2.2.2 Le traitement
Le traitement ce fait par le logiciel MATLAB
a) La convertion RGB-gray et le seuillage
1-En premier temps nous avons utilisé la fonction Matlab uigetfile qui nous permet de charger une
image parmi les images qu’on a dans notre base d’images acquises suivant un algorithme à partir d’une
séquence vidéo .
L’algorithme de détection des plaques d’immatriculation pocède comme entrée une image à niveau
de gris pour ça nous avons utilisé la fonction Matlab rgb2gray qui sert à convertire l’image acquise
qui est en couleurs RGB a une image à niveau de gris .
2-Ensuite en binarise l’image soit par la fonction im2bw ou bien par la fonction imextendedmax qui en
plus de la binarisation(Seuillage) de l’image marque les maxima étendus de l'image d'entrée qui
supprimait auparavant tous les maxima régionaux d'une hauteur inférieure à un seuil ce qu’il contribue
à’éclérer l’image acquise.
b) La dilatation verticale et horizontale
La dilatation est un opérateur de base dans le domaine de la morphologie
mathématique Il est généralement appliqué aux images binaires , mais certaines
versions fonctionnent avec des images en niveaux de gris . L’effet de base de
l’opérateur sur une image binaire est d’élargir progressivement les limites des
zones de pixels de premier plan ( c’est-à-dire de pixels blancs). Ainsi, les zones de
pixels de premier plan grossissent tandis que les trous dans ces régions
deviennent plus petits ,c’est pour ça nous avons utilisé la dilatation sur les deux
sens(horizontalement et verticalement) ce qu’il nous aide beaucoup et facilite par
la suite l’étape de détection de la plaque .
Figure 7:le traitement de l'image acquise
1 2
Figure 8:Effet de la dilatation à l'aide
d'un élément structurant carré 3 × 3
13. 11
Premierement on a créé un élément structurant rectangulaire de taille [8 4] par la fonction strel est un
voisinage à valeur binaire, bidimensionnelle, dans lequel les pixels corrects sont inclus dans le calcul
morphologique et les faux pixels ne le sont pas. Le pixel central de l'élément structurant,
appelé origine , identifie le pixel de l'image en cours de traitement.
Ensuite on utilise la fonction imdilate pour dilater l’image par notre rectangle déja créer (Dy).Pour
rendre l’image obtenue plus claire on élimine les bruits par la technique de remplissage des trous
utilisant la fonction imfill pour bien comprend cette étape on présente l’exemple suivant .
Pour la dilatation horizontale il suffit de changer la forme de l’élément rectangulaire créer par
la taille [4 8]. Les résultats de cette étape de traitement sont comme suits :
On fait les deux types la dilatation verticale et horizontal afin de multipliées les résultats des deux
dilatation au but d’avoir une image le maximum possible non bruitée .
c) effacer les frontière de l'image
Pour bien préparer l’image la l’etape de d’étectione de la plaque on ce débarace des structures
lumineuses connectées à la bordure de l'image utilisant un fonction matlab qui s’appelle imclearborder.
BW2 = imfill(BW,'holes');
figure
imshow(BW2)
Image convertie
L’application de
la fonction de
remplissage imfill
Image remplie
Figure 9 :élimination des trous
dilatation
vertcale horizontale
Figure 10:resultats de dilatation
14. 12
Le résultat et comme suit :
Figure 11:suppression de bordures de l'image
2.2.3 La détection de la plaque
La détection de l’emplacement de la plaque d’immatriculation est une étape critique dans les
systèmes de reconnaissance des plaques d’immatriculation, puisqu’il est difficile de détecter la plaque
rapidement, et précisément pour des images avec des background compliqués et des conditions
lumineuses variées. Ce qui nous donne un domaine de recherche vaste dans lequel plusieurs
chercheurs ont proposés des méthodes de détection, qui varient dans leur concept et dans leurs
résultats. Il y’a quatre méthodes de localisation de plaque couramment utilisés : Le premier type est
basé sur la couleur de l’information (c.à.d. la plaque), le deuxième type est basé sur la méthode de la
recherche de la frontière, le troisième type est basé sur la morphologie mathématique, et finalement
le quatrième type basé sur les réseaux de neurones. Tous ces algorithmes peuvent donner des bons
résultats concernant le positionnement de la plaque pour certains cas, mais ils ont aussi des limites .
Pour notre système on va utiliser la méthode basée sur la couleur de l’information(couleur de la
plaque) pour localiser la plaque , cette approche est basée sur la rechereche de la plus grande région
binaire (en tant que plaque) . ce qu’il est montré dans le programme suivant .
On fait passer notre image binaire avec des regions differentes vers une image ou chaque label (ou
region) de notre image aura un label (un numero) different ,ce qui nous a permet par la suite de
programme de trouver le lebel (la region )qui contient un grand indice de région binaire qu’est la
plaque de la véhicule .
Aprés ce traitement de la détection de la plaque nous avons créé un petit algorithme sert a étendre la
région de la plaque par T Pixel Comme indiqué ci-dessous.
« imclearborder»
On constate bien que les
structures de bordures sont
supprimé
15. 13
Alors cette partie de notre programme après de bien trouver la partie qui contient un grand indice de
région binaire par l’outil Matlab find , consiste à remplissez la partie de la plaque par une matrice des
Uns de la même formate de la plaque ,bien sur ceci aprés de créé une matrice des zêros de la meme
dimension de limage d’entrée (on utilise pour ça l’outil Matlab size ) .
le résultat et comme suit :
Pour sophistiquer les choses nous avons ajouté un petit script sur Matlab pour encadrer la plaque par
exemple par un rectangle rouge Comme indiqué ci-dessous .
Cette partie de notre programme nous a permis de cadré notre plaque
selon son emplacement qu’est déja calculée selon l’algorithme de
détection dans la partie précedante ,et on est constaté ça dans la résultat
de la simulation comme il est montré la figure à gauche.
« La détection de la plaque »
Par l’approche basée sur la
rechereche de la plus grande
région binaire .
Figure 12:La détection de la plaque
Figure 13:le cadrage de la plaque
16. 14
2.2.4 La Ségmentation des caractéres
La segmentation des caractères est une opération qui vise à décomposer une image en séquences des
sous-images de symboles individuels. C’est l’un des processus de décision dans un système de
reconnaissance.
On peut classer les approches de segmentation proposées dans la littérature en trois stratégies pures
qui représentent la base de plusieurs approches hybrides.
L’approche classique :
Dans cette approche les segments sont identifiés en fonction des propriétés « caractéristiques
similaires ». Ce processus de découper l’image en composants significatifs est donné sous un nom
spécial « dissection ».
Le critère de la bonne segmentation de cette approche classique est l’accord des propriétés générales
des segments obtenus à ceux attendus pour les caractères valides.
La ségmentation basée sur la reconnaissance :
C’est la approche de ségmentation qu’on a adoptés pour notre projet dont le système cherche les
images qui correspondent à des classes dans son alphabet.
Les méthodes de ce type de segmentation ne sont basées sur aucune dissection mais au contraire,
l’image est divisée systématiquement en plusieurs morceaux qui se chevauchent sans tenir compte de
contenu,ils sont classées dans le cadre d’une tentative de trouver un résultat
(segmentation/reconnaissance) cohérent.
De plus les méthodes de ce type de segmentation appelé aussi « Segmentation-libre » ont comme
principe l’utilisation d’une fenêtre mobile avec une largeur variable pour fournir des séquences de
segmentations indicatives qui sont confirmées (ou non) par une reconnaissance de caractères.
Méthodes globales
Une fonction d’évaluation basée sur le calcul des transitions horizontales noir-blanc et blanc-noir est
tracée en dessous de l’image. Les barres au-dessus de l’image indiquent la région d’activation de la
fonction. Les lignes verticales indiquent les estimations humaines de segmentation.
Dans ces méthodes le système cherche à reconnaître le mot dans son ensemble, évitant ainsi la
nécessité de segmenter en caractères.
Ces méthodes globales sont basées sur un processus holistique qui reconnaît un mot entier comme
une unité, mais elles ont un inconvénient majeur qui est la limitation de l’utilisation pour un lexique
prédéfini puisque la segmentation se fait pour un mot alors la reconnaissance est nécessairement
contrainte à un lexique spécifique.
Figure 14:qulques images de la base des données de la ségmentation
17. 15
Comme nous avons cité par avant on a utilisé une segmentation basée sur la reconnaissance ,pour ça
il faut bien préparer une image contient notre plaque parfaitement binaire dont les caractères sont
purement unité (blanc) pour cela nous avont utilisé le traitement suivant pour notre image de la
voiture à niveau de gris dont le résultat sera multiplié par l’image obtenue par la détection de la plaque
pour qu’on obtient une image qui contient sauf les caratères de la palque .
Alors ce petit traitement consist officiellement a binarisé l’image d’entrée qui est à niveau de gris et
pour pas binariser l’image aleatoirement on cherche a trouvé le niveau de seuil optimal pour la
conversion en une image binaire avec im2bw .la fonction adaptée est graythresh .
~image renvoie un tableau logique de la même taille que notre image obtenue. Just que le tableau
contient des valeurs logiques 1( true) a la place des valeurs logiques 0( false) et vice-versa ce qui nous
a permis de rendre les caractères de la plaques en blanc .
Pour avoir juste la palque nous avons proposé de multiplier l’image binarisée avec l’image obtenue
par la détection de la plaque,la résultat et comme suite .
Im2bw
~
Not
Figure 15:binarisation par seuil
X =
Figure 16:extraction de la plaque
18. 16
Maintenant on est arrivé à la phase la plus importante dans cette partie qui est la segmentation des
caractères .puisqu’on est choisis de travailler avec La segmentation basée sur la reconnaissance nous
somme besoins d’une basse de donnes qui contient des images qui correspondent à des classes dans
son alphabet.
Matlab nous a permis d’utiliser l’outil variable . les étapes à suivre sont comme suite .
On appel cette variable imgfile de telle sorte qu’elle contient les diverses images des alphabets arabes
(ALIF-BAE ...) ansi que les numéros de 0 à 9 ,chaque image correspond à une clase dans son alphabet
ou numéro (figure 18). Les éléments du tableau de cellules contenir le même type de données
<42x24 > logique.
On fait appellée cette variable sur notre programme utilisant la fonction Matlab
Load.
Aprés cette étape revenant à La tache de la segmentation des caractères qu’on a faite selon
l’algorithme suivant .
Figure 17:l'outil variable sous Matlab
Figure 18:la variable créé imgfile
19. 17
Alors nous avons adopté l’utile regioprops de Matlab pour mesurer l’ ensemble de propriétés pour
chaque région étiquetée dans la matrice d'étiquettes L . Utilisant la proprieté 'BoundingBox' dont
Elle détecte le plus petit rectangle contenant la région . en suite on utilise la fonction rectangle pour
tracer un rectangle Vert en utilisant les mêmes valeurs de position détectée par la fonction regioprops.
Le résultat comme suite .
L’application de
« Regioprops» et
« Rectangle » .
Figure 19:segmentation des caractéres
20. 18
Chapitre 3
La simulations et les résultats
obtenus .
3.1 INTRODUCTION
Ce chapitre rassemble la simulation complète de notre système inclut la phase de reconnaissance et
affichage des caractères (le programme complet est en annexe).
3.2 reconnaissance et affichage des caractère
La reconnaissance de plaque d'immatriculation est maintenant utilisée pour comparer chaque
caractère individuel avec la base de données alphanumériques(imgfil) déjà créé sur Matlab en utilisant
la correspondance de modèles.
La correspondance est faite sur un pixel par pixel. Le modèle est de taille 42 × 24 comme il est montré
dans le script suivant.
Alors ce programme consist à chercher sur les variables imgfil la correspondance au caractère
segmenté utilisant la fonction find.dons Z désigne l’emplacement du caractère correspondant dans
notre table et finale-output c’est la discission finale de la reconnaissance .
On utilise le coefficient de corrélation en 2D (corr2)pour comparé les images de base (imgfil) avec les
caractéres segmentés chacun seul .
III
I
21. 19
NB :le coefficient de corrélation égale 1 si les deux images sont les mêmes.On suppose que si ce
coefficient est supérieur juste à 0.45 c’est le caractàre correspondant .
On utilise la fonction max pour avoir le coefficient de correlation maximal.
( voir l’instruction t=[t max(x)])
Pour convertir la valeur du tableau de cellules en valeur ordinaire on utilise cell2mat.
Par exemple prenant le chiffre 3 segmenté.
Après la répétition de cette boucle pour tous les caractères segmentés en sortent a la fin avec le
matricule complet de la vehicule.
On ajoute un petit script pour afficher le matricule complet et d'une façon bien organisée sous un
format .Txt .
« corr2 » « cell2mat »
Exemple de simulation :
.
.
.
Figure 20:reconnaissance des caractères
22. 20
3.3 la simulation complete
le programme complet est en annexe .
L’image acquise L’image à niveau de gris Binarisation
Dilatation Suppression des bordures Detection de la plaque
Extraction de la plaque Segmentation Reconnaissance
23. 21
Le travail suivant représente le fruit d’une recherche dans le domaine de la reconnaissance des plaques
d’immatriculation, dans lequel nous nous sommes intéressés à extraire les caractéristiques des plaques
Marocainnes. Premièrement nous avons exposé les différentes étapes de prétraitement contenant la phase de
détection de la région de la plaque, ainsi qu’une étape de segmentation, pour isoler les caractères de la plaque, en
illustrant ces étapes par des expérimentations. Ensuite nous avons attaqué la phase de reconnaissance des
caractères .
En plus, d’avoir atteint l’objectif final demandé, ce projet nous a été très bénéfique car ilnous a permis de maîtriser
plusieurs techniques et de manipuler des outils très complexes.
La vraie problématique pour identifier des plaques d’immatriculation réside dans le fait de pouvoir faire de la
reconnaissance optique de caractères sur une petite partie d’image extraite de séquences enregistrées, souvent
dans des conditions de grande vitesse et de faible luminosité. De plus, le fait de ne disposer que de très peu
d’images hautes définition par seconde sur la plupart des caméras vidéo entraîne un manque de netteté lors de la
capture de ces images. Pour cela, il faut procéder à un prétraitement de ces images à la détection des contours,
pour permettre une reconnaissance optique assez fiable des caractères.
Comme perspectives, nous souhaiterons améliorer les résultats obtenus afin de résoudre ce probleme.
Enfin,ceprojetétaitunebonneoccasionpourréaliseruntravailtrèsconcret,avecdesobjectifsclairsetbien définis
et de se familiariser avec un environnement de traitement d’image.
CONCLUSION
24. References bibliographiques
[1] Thése Utilisation des outils Matlab pour la segmentation d’image : Application sur des pièces
d’immatriculation Préparé par : khenfi Moussab ET Daikh Aissa .
[2] Article RECOGNITION OF VEHICLE NUMBER PLATE USING MATLAB Ragini Bhat1, Bijender
Mehandia2.
[3] Article Marcin IWANOWSKI Warsaw University of Technology, Institute of Control and Industrial
Electronics EC Joint Research Centre, Institute of Environment and Sustainability Automatic car number plate
detection using morphological image processing .
[4] Mémoire de fin d’études Développement d'une application de détection et de reconnaissance de plaques
d'immatriculation(LAPIA) Réalisé par : - NOR Imane. - SIDHOUM Souad.
[5] Real time face detection/monitor using raspberry pi and Matlab Ali Akbar Shah ; Zulfiqar Ali
Zaidi ; Bhawani Shankar Chowdhry ; Jawaid Daudpoto.
[6] How can I use Raspberry Pi's camera module for real-time acquisition by Matlab/Simulink
https://www.researchgate.net/post/How_can_I_use_Raspberry_Pis_camera_module_for_real
time_acquisition_by_Matlab_Simulink.
[7] Le Raspberry Pi : un nano-ordinateur au service de la science et de l’enseignement Julien Cartailler1 ,
Richard Rocca-Poliméni1.
[8] Build Raspberry Pi projects using high-level programming and block diagrams
https://www.mathworks.com/discovery/raspberry-pi-programming-matlab-simulink.html
[9] Réalisez un système de reconnaissance d’objets avec Raspberry Pi .
https://www.framboise314.fr/i-a-realisez-un-systeme-de-reconnaissance-dobjets-avec-raspberry-pi/
[10] SIRIPHAT POMYEN SIGNAL AND IMAGE PROCESSING WITH MATLAB ON RASPBERRY PI
PLATFORM Master of Science thesis Examiner: Prof. Irek Defee Examiner and topic approved by the
Faculty Council of the Faculty of Computing and Electrical Engineering on 4 February 2015.
[11] https://www.mathworks.com/help/
[12] THÈSE DE DOCTORAT Présentée par : Hinde ANOUAL Discipline : Sciences de l’ingénieur Spécialité
: Informatique et Télécommunications Détection et Localisation de texte dans les images de scènes naturelles :
Application à la détection des plaques d’immatriculation marocaines Soutenue le : 14 Juillet 2012.
[13] Projet de Fiin d’’Etudes Master Application A la reconnaiissance des plaques d’’immatriiculatiion des
véhicules Lieu de stage : Laboratoire systèmes intelligents et applications. Réalisé par : ELOUARIACHI Ilham
Soutenu le : 13 Juin 2016.