Dédicace
<<Réussir, c’est les combles de mes rêves que dire donc qu’on le partage avec les personnes qu’on
aime ne se demander jamais plus >>
Ce travail est le fruit de tes sacrifices que tu as consenti pour mon éducation et ma formation, je ne te
remerciement jamais assez. Que Dieu te protège et t’accorde une longue vie.
A ma tendre maman
Celle que j’adore tellement, ma raison d’être, ma raison de vivre la lanterne qui éclaire mon chemin,
puisse dieu, le tout puissant, te préserver et l’accorder santé et joie.
Pour tous le soutient et la coopération qu’ils m’ont offerte. Qu’elle trouve dans ce travail
L’expression de mon profond respect et reconnaissance. Que les garde tous, et leurs préserve bonheur
et santé.
Pour vos encouragements et pour avoir été là pour moi chaque fois que j’en avais besoin.
A tous ceux qui m’aiment, a tous ceux que j’aime que cette modeste dédicace puisse vous témoigner
ma profonde gratitude pour votre immense amour, votre confiance et vos paroles apaisantes qui m’ont
toujours fait garder le sourire.
A tous ceux qui ont contribué de près ou de loin pour la réussite de ce projet, veuillez trouver
ici le respect et la reconnaissance que j’éprouve pour vous.
i
ISMAIK 2019/2020
Remerciements
Nous tenons, tout d’abord, à remercier Dieu le tout puissant et miséricordieux, qui nous a donné la
force et la force et la patience d’accomplir ce modeste travail.
Au terme de ce travail qui a été réalisé au sein d’Institut Supérieur des Mathématiques
Appliquées et de l'Informatique à Kairouan, nous voudrons bien présenter nous remerciements à tous
ceux qui ont contribué à son bon déroulement.
Nous tenons également à remercier notre encadreur Madame SAFFAR Dhikra pour son accueil, sa
bienveillance, la générosité de ses efforts et pour ses précieux conseils qu’elle nous a toujours
prodigués.
Nous tenons aussi à remercier l’entreprise T.U.C.S pour l’accueil qui nous a été réservé et
particulièrement Monsieur HAJRI Mongi, tuteur de stage, pour la mission qi nous a été confiée, pour
son aide son soutien, ainsi que pour ses conseils pour réussir ce projet.
C’est un grand honneur pour nous que vous avez bien voulu accepter de juger notre projet de fin d’étude.
Nous présentons aussi notre profonde gratitude à tous nos enseignants qui ont contribué à notre
formation durant nos études.
ii
ISMAIK 2019/2020
Tableau de matière
Contents
Dédicace ...................................................................................................................................................... i
Remerciements ........................................................................................................................................... ii
Introduction..................................................................................................................................................4
3. Organigramme de l’entreprise.........................................................................................................5
Conclusion ...................................................................................................................................................8
Introduction................................................................................................................................................ 10
1.Caméra Pi ............................................................................................................................................ 12
2. Raspberry pi ....................................................................................................................................... 14
Conclusion ................................................................................................................................................. 21
Introduction................................................................................................................................................ 23
Conclusion ................................................................................................................................................. 39
Introduction................................................................................................................................................ 41
1. Python .......................................................................................................................................... 42
2. Flask............................................................................................................................................. 43
3. Vs Code ....................................................................................................................................... 43
4. Bootstrap ...................................................................................................................................... 43
1. Fonctionnement ............................................................................................................................ 44
2. Installation.................................................................................................................................... 45
IV. Démonstration.................................................................................................................................. 48
Conclusion ................................................................................................................................................. 56
v
ISMAIK 2019/2020
vii
ISMAIK 2019/2020
viii
ISMAIK 2019/2020
Introduction générale
Les systèmes embarqués sont utilisés dans d’innombrables domaines. L’exemple le plus concret est sans
aucun doute les supercalculateurs des voitures. Cette unité de calcul gère de nombreux composants du
véhicule. Il va enclencher certains éléments en fonction des événements. C’est de cette façon que les
airbags seront activés si l’on est face à une collision. De même, le freinage assisté permettra d’éviter une
éventuelle perte de contrôle.
Au cours de ces dernières années, les cartes intelligentes se sont particulièrement démarquées dans ce
domaine. Ces dispositifs peuvent notamment être utilisés comme des pocket PCs. Il suffira de les
connecter à un écran et à un clavier pour pouvoir les employer comme un ordinateur miniature. Ces
équipements sont désormais compatibles à la technologie Wireless. On peut donc connecter différents
périphériques en Bluetooth ou encore établir une connexion en WiFi. Cette innovation élargit grandement
les possibilités d’autant plus que les systèmes embarqués sont maintenant plus accessibles. Les intéressés
peuvent passer commande auprès d’un fournisseur présent sur internet.
Dans nos jours, les systèmes embarqués font une partie principale de la plupart des machines. L’un de
ses usages est traduit sous forme algorithmique ce qu’il est réaliste de l’être humain. De nombreuses
opérations pertinentes de l’analyse d’image et déjà effectuées peuvent aujourd'hui être résolues
automatiquement par des systèmes de vision artificielle, et ceci dans des domaines très diversifiés. Nous
pouvons citer entre l'autre la détection, la commande de qualité lors de la fabrication du matériel, les
applications dans l'imagerie médicale ...
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 des 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.
1
ISMAIK 2019/2020
Les systèmes de reconnaissances des plaques sont utilisés pour contrôler efficacement la circulation et
l’application de sécurité telles que le contrôle d'accès aux zones restreintes et le suivi des véhicules
recherchés.
Avec l'augmentation du nombre de véhicules, il devient difficile de trouver une place de stationnement
appropriée pour un individu.
C’est dans ce cadre que s’inscrit notre projet de fin d’études réalisé pour l’obtention du diplôme de
mastère en administration et sécurité des systèmes informatiques et réseaux au sein de la société Tunisien
Universal Communication System (T.U.C.S). Consistant à la conception, le développement et la
réalisation d’un système de contrôle d’accès des véhicules à un parking à travers la détection et la
reconnaissance des leurs plaques d’immatriculation via le Raspberry. Fréquemment, il est nécessaire
d’identifier les plaques d’immatriculation des véhicules pour la sécurité. 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.
Dans le premier chapitre intitulé « Etude préalable » nous commencerons par une présentation de la
société d’accueil et une étude du projet et de ses objectifs et nous le terminerons par présenter les
exigences fonctionnelles et non fonctionnelles du système proposé .
Le deuxième chapitre intitulé « Architectures et technologies utilisé » sera consacré pour présenter les
systèmes de transport intelligents et la lecture automatique des plaques d'immatriculation et la deuxième
partie qui présente la Raspberry pi 3 modèle B+ qui consiste à justifier le choix de la carte et à la présenter
ainsi que ses caractéristiques, ses composants et le système d’exploitation. Nous allons également décrire
et expliquer la méthodologie du système.
Le troisième intitulé « Etude conceptuelle » sera consacré à la conception de notre système en utilisant
le langage de modélisation UML.
Enfin, nous terminerons ce rapport avec une conclusion générale et nous proposerons les perspectives de
notre travail.
2
ISMAIK 2019/2020
Chapitre1:
Etude préalable
3
ISMAIK 2019/2020
Introduction
Ce chapitre est consacré à la présentation projet. Dans la première section nous allons tout d’abord
présenter l’entreprise T.U.C.S au sein de laquelle mon stage a été réalisé en décrivant brièvement sa
structure, les différentes activités. La deuxième partie, nous enchainons par une présentation du sujet et
l’analyse des besoins.
4
ISMAIK 2019/2020
2. Fiche technique
Le tableau 1 représente quelques informations relatives à la société dans laquelle nous avons effectué
notre stage de projet de fin d’étude.
Siège social :
1 Rue de parfumerie, Centre EL KSAR, Zone Industrielle Ksar Said 2086 Manouba, TUNISIE
Type activité :
Développement des systèmes embarqués
Email :
info@tucs.tn
Numéros de Téléphone
+216 23 651 718
3. Organigramme de l’entreprise
1. Contexte du projet :
L’identification automatique des plaques minéralogiques est une technologie incontournable qui
constitue à ce jour le seul moyen technique permettant d’identifier de manière certaine un véhicule sans
nécessiter la collaboration du conducteur et l’installation d’un équipement spécifique à bord du véhicule.
Le déploiement de cette technologie dans le monde entier connait une forte croissance touchant plusieurs
environnements publics tel que les axes routiers, les parkings, les aéroports, les hôtels….
Notre projet tente de résoudre certains problèmes d'espace de stationnement dans une organisation
typique. Notre projet affiche la place de parking totale disponible et permet en même temps uniquement
au véhicule autorisé d'entrer dans le parking. Ceci est réalisé en utilisant la technique de la lecture
automatique de plaques d’immatriculation.
2. Objectif de projet :
La société vise à développer une solution avec des ressources humaines et matérielles. Cette solution a
les caractéristiques suivantes :
3. Travail demandé
Les principaux objectifs de notre projet sont :
Mettre en œuvre l’image de la voiture détecter par la caméra, l’image capturée est ensuite traitée par
Raspberry Pi et les caractères sont extraits de la plaque d'immatriculation du véhicule. Les caractères de
la plaque d'immatriculation sont mis en correspondance avec la base de données et si une correspondance
est trouvée, Raspberry Pi envoie un signal au diode vert pour s'allume comme étant l'ouverture de la porte
pendant un certain intervalle de temps si la matricule est autorisée sinon la raspberry envoie le signal au
diode rouge qui s’allume. Le même processus se répète lorsqu'un véhicule sort.
1. Exigences fonctionnelles :
Le développement est divisé en quatre parties principales :
Reconnaissance des plaques pendant le jour et la nuit et dans toutes les conditions
climatiques (pluie, soleil, nuage, …).
Envoi des matricules via wifi à un serveur de gestion d’accès.
7
ISMAIK 2019/2020
Enregistrement des plaques d’immatriculation détectées dans une base de données.
Configuration et gestion de deux listes des véhicules autorisés et non-autorisés dans
la base de données : ajout, suppression et modification.
Exportation de l'historique des reconnaissances à partir de différents filtres : plaque
d'immatriculation, date et heure.
Conclusion
Ce chapitre nous a permis de présenter le contexte général de notre projet à travers la description de
l’organisme d’accueil, du cadre de projet, et des besoins à satisfaire. Dans le prochain chapitre nous
présenterons une étude théorique et nous décrirons la méthode utilisée pour la réalisation de ce projet.
8
ISMAIK 2019/2020
Chapitre2:
Architectures et
technologie
utilisées
9
ISMAIK 2019/2020
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.
1. Définition :
La lecture automatique de plaques minéralogiques utilise la reconnaissance optique de caractères (OCR)
sur les images prises par des caméras. Lorsque les plaques d'immatriculation des véhicules néerlandais
ont été modifiées en 2002, un des changements concerna la police de caractères, dans lesquelles de petits
espaces ont été introduits dans certaines lettres (telles que P et R) pour les rendre plus distinctes, et donc
plus lisibles par tels systèmes. Certaines plaques d'immatriculation varient dans la taille des caractères et
leur position. Les systèmes de lecture automatique de plaques minéralogiques doivent savoir traiter ces
différences pour être vraiment efficaces.
Pour qu’on puisse identifier une plaque d'immatriculation on doit combiner ces cinq algorithmes :
10
ISMAIK 2019/2020
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, L’image est balayée horizontalement à partir des lignes
horizontales avec un calcul de nombre des contours.
3. Filtrage bilatéral
Le filtre bilatéral 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.
On a supposé que les plaques d’immatricules des véhicules 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.
11
ISMAIK 2019/2020
5. Extraction de la plaque
L’étape finale est l’extraction des plaques. Après la détection des rectangles qui correspondent aux
critères, 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.
1.Caméra Pi
1.1. Définition :
Les modules de caméra Raspberry Pi sont des produits officiels de la Fondation Raspberry Pi. Le modèle
original de 5 mégapixels a été publié en 2013, et un module de caméra de 8 mégapixels v2 a été publié
en 2016. Pour les deux itérations, il existe des versions lumière visible et infrarouge. Une caméra de haute
qualité de 12 mégapixels a été lancée en 2020. Il n'y a pas de version infrarouge de la caméra HQ, mais
le filtre IR peut être retiré si nécessaire.
Poids 3g 3g
12
ISMAIK 2019/2020
Résolution 2592 × 1944 3280 × 2464 4056 x 3040
du capteur
pixels pixels pixels
Zone 3,76 × 2,74 3,68 x 2,76 6,287 mm x
d'image du mm (4,6 mm 4,712 mm
mm
capteur de diagonale) (7,9 mm de
diagonale)
Taille de 1,4 µm × 1,4 1,12 µm x 1,55 µm x
µm 1,12 µm 1,55 µm
pixel
Figure 2.1:Caméra Pi V2
13
ISMAIK 2019/2020
2. Raspberry pi
Le Raspberry Pi est un ordinateur de la taille d'une carte de crédit qui se branche sur notre téléviseur et
un clavier, qui peut être utilisé pour de nombreuses choses que notre bureau moyen fait dans les feuilles
de calcul. Traitement de texte, jeux et lecture de vidéo haute définition. Le raspberry pi est une série de
petits ordinateurs monocartes qui utilisent Linux comme système d'exploitation. C'est une sorte de
processeur qui fournit différents ports comme la vidéo et le réseau pour l'interaction.
2.1.1. Modèle A :
Figure 2.3:Modèle A
14
ISMAIK 2019/2020
2.1.2. Modèle A+
Figure 2.4:Modèle A+
2.1.3. Modèle B
Figure 2.5:Modèle B
2.1.4. Modèle B+
Figure 2.6:Modèle B+
15
ISMAIK 2019/2020
Chacun de ces modèles ayant des caractéristiques bien spécifiques pour cela nous avons décidé de
présenter les caractéristiques de chaque modèle dans un schéma qui fait une comparaison entre ces
différents modèles.
16
ISMAIK 2019/2020
Processeur ARM
HDMI
Le port « Universal Serial Bus » est un port série qui sert à communiquer le Raspberry aux autres
périphériques.
Port Ethernet
GPIO
« General Purpose Input/Output » Le Raspberry Pi à des pins qui sont des ports d’Entrée/Sortie
permettent la connexion d’autres composantes électroniques.
17
ISMAIK 2019/2020
Slot carte SD
Le Raspberry utilise un périphérique externe de stockage (micro SD) supplémentaire pour fonctionner.
La carte mémoire permettra de stocker les données et le système d’exploitation du Raspberry.
Raspbian : Est une distribution GNU/Linux basée sur la célèbre Debian. Raspbian est la
distribution la plus simple et plus appropriée pour utiliser le Raspberry Pi.
Fedora : Est une distribution GNU/Linux sponsorisée par Red Hat. La version disponible à
travers BerryBoot est la version 21 (sortie en 2014). L'environnement de bureau proposé est
MATE.
Ubuntu 15.04 MATE : Est une distribution GNU/Linux reposant originellement sur Dans notre
projet, nous avons utilisés le système d’exploitation Raspbian
Raspbian est simple à utiliser et il est spécialement conçue et optimisée pour tourner sur un Raspberry Pi
équipé d’un processeur ARM.
18
ISMAIK 2019/2020
III. Méthodologie
Le mécanisme de fonctionnement de toutes les pièces est décrit en détail ci-dessous ; Le modèle logiciel
utilise la technologie de traitement d'image. L'algorithme est divisé en parties suivantes : capture d'image,
prétraitement, extraction de région de plaque, segmentation de caractère dans la plaque d'immatriculation
extraite, reconnaissance de caractères, comparaison avec la base de données et indiquer le résultat.
19
ISMAIK 2019/2020
Capture d’image :
La première étape est la capture d'image. L'image est capturée par l'appareil électronique Pi Camera
ou Webcam. L'image capturée est stockée au format JPEG. Plus tard, il est converti en image en échelle
de gris.
Prétraitement :
L'étape suivante après la capture de l'image est le prétraitement de l'image. Lorsque l'image est
capturée, il y a beaucoup de perturbations et de bruits présents dans l'image pour lesquels l'image ne peut
pas être utilisée correctement. Alors dans cette étape, les bruits de l'image doivent être éliminés pour
obtenir un résultat précis.
Traitement gris :
Cette étape implique la conversion de l'image en niveaux de gris. Les images couleur sont
converties en image grise. Selon la valeur R, V, B de l'image, il calcule la valeur de la valeur de gris et
obtient en même temps l'image de gris.
Filtrage médian :
Le filtrage médian est l'étape pour supprimer les bruits de l'image. Gris niveau ne peut pas
supprimer les bruits. Donc, pour rendre l'image exempte de filtrage des médias de bruit.
Conclusion
Dans ce chapitre la première partie est consacré au fonctionnement de système de la lecture et la détection
de la plaque d’immatriculation des voitures. Deuxième partie dédiée à la présentation du Raspberry Pi 3
B, Ainsi les spécificités de la partie logicielle utilisée.
21
ISMAIK 2019/2020
Chapitre3:
Etude
Conceptuelle
22
ISMAIK 2019/2020
Introduction
Dans ce chapitre, nous commencerons par la spécification des besoins. Ensuite, nous présenterons la
conception de quelques cas d’utilisation pour spécifier de façon détaillée les différents aspects statiques
et dynamiques de notre système en effectuant le diagramme de classe et les diagrammes de séquences.
Enfin, on va élaborer le schéma de la base de données de l’application.
23
ISMAIK 2019/2020
La polyvalence et la souplesse
S’adapte aux projets simples
La modélisation exploitée par les humains et les machines
La clarté des aspects techniques
UML se décompose de plusieurs diagrammes, chacun d’eux a un rôle spécifique de représentation des
concepts d’un système logiciel mais, pour réaliser notre projet on va utiliser seulement les suivants :
Représente le point de vue fonctionnelle du logiciel c’est-à-dire l’ensemble des fonctionnalités à satisfaire
pour les utilisateurs du système à travers les concepts de cas d’utilisations d’acteurs et leurs relations.
Diagramme de classe :
Diagramme statique qui représente le point de vue logique du logiciel à travers le concept de classe et les
relations entre classes.
Diagramme de séquence :
Les diagrammes de séquences sont la représentation graphique des interactions entre les acteurs et le
système selon un ordre chronologique dans la formulation Unified Modeling Language.
Diagramme d’activité :
24
ISMAIK 2019/2020
Formaliser la conception d’application.
Faciliter la communication entre les différents intervenants au sein d’un projet informatique.
Ainsi UML présente plusieurs caractéristiques par rapport aux autres langages :
Son indépendance : par rapport aux langages des programmations, aux domaines d’application et
aux processus.
Sa notion graphique : permet d’exprimer visuellement une solution objet ce qui facilite la
comparaison et l’évaluation de solution.
2.1. Modèle en V
Une représentation graphique en V, possède des boites qui s’appellent : Spécification, conception ; qui
se divise en deux travaux, analyse des besoins et faisabilité, codage, test et finalement la validation.
La signification de chacune des noms des différentes boites est assez claire :
La spécification décrit le quoi, la conception décrit le comment, etc. Il s’agit des disciplines classiques
du développement logiciel.
25
ISMAIK 2019/2020
Figure 3.1:Modèle en V
Le modèle en V reste actuellement le cycle de vie le plus connu et certainement le plus utilisé.
Validation finale montante et confirmation de la validation descendante.
2.3. Avantages du Modèle en V
L’avantage principal d’un modèle en V est sa nécessité d’une formalisation des fonctionnalités du produit
et de ce qui sera fait sur le projet. Il assure nettement de bien approfondir et de se poser les questions
appropriées dès le début du projet, quel que soit du côté client ou prestataire.
26
ISMAIK 2019/2020
Concernant notre système nous considérons les acteurs suivants :
Authentifier.
Gérer les véhicules.
Gérer l’historiques.
Capturer.
27
ISMAIK 2019/2020
28
ISMAIK 2019/2020
3.1. Raffinement des cas d’utilisation
3.1.1. Raffinement du cas d’utilisation « Gérer voitures »
29
ISMAIK 2019/2020
b. Description détaillée du cas d'utilisation « Modifier voiture »
30
ISMAIK 2019/2020
3.1.2. Raffinement du cas d’utilisation « Gérer historiques »
31
ISMAIK 2019/2020
Tableau 3.1.2 : Description détaillée du CU « Supprimer historique »
32
ISMAIK 2019/2020
Tableau 3.2.1: Description détaillée du CU « Capturer photo »
33
ISMAIK 2019/2020
Scénario normal : 1/traiter la plaque détectée
2/reconnaitre les chiffres et
symboles
3/requête de la base de données
4. Diagramme d’activité
Le diagramme d'activité est fixé à une catégorie de classe et décrit le flux d'activités dans cette catégorie.
Le flux est appelé « flux de contrôle. » Elle indique la part prise par chaque objet l'exécution d'une tâche
et sera enrichi par les conditions de séquençage.
34
ISMAIK 2019/2020
35
ISMAIK 2019/2020
La figure 3.7 représente le diagramme de séquence relatif au cas d’utilisation « Ajouter voiture ». Nous
faisons une référence dans ce diagramme à celui du cas d’utilisation « S’authentifier »
La figure 3.8 représente le diagramme de séquence relatif au cas d’utilisation « Modifier voiture ». Nous
faisons une référence dans ce diagramme à celui du cas d’utilisation « S’authentifier »
36
ISMAIK 2019/2020
La figure 3.9 représente le diagramme de séquence relatif au cas d’utilisation « Supprimer voiture ».
Nous faisons une référence dans ce diagramme à celui du cas d’utilisation « S’authentifier »
37
ISMAIK 2019/2020
6. Diagramme de classe
Figure 3.10 représente le diagramme de classe de notre application qui est constitué des classes : Client,
Technicien, Voiture et Historique.
38
ISMAIK 2019/2020
Conclusion
Dans ce chapitre, nous avons présenté la phase de conception de notre système à travers l’élaboration des
diagrammes de cas d’utilisation, de séquence, de classe et de déploiement. Nous arrivons à la phase de
développement et de réalisation qui est la concrétisation finale du résultat de cette démarche conceptuelle.
39
ISMAIK 2019/2020
Chapitre4:
Réalisation
40
ISMAIK 2019/2020
Introduction
1. Environnement matériel :
PC Portable
Système d’exploitation : Windows 7
Processeur : Intel Core (2Ghz)
RAM : 4 GO
Carte Raspberry PI 3 model B+
Caméra pi V2
Adaptateur vidéo (optionnel, pour l’installation)
Carte sd
Led
Bouton
2. Environnement logiciel :
SDFormater
Est un programme qui vous fournit un accès facile et rapide à tous les formats de carte mémoire comme
SD.
MongoDB
Est un logiciel qui vous permet de créer facilement des images ISO amorçables.
Tesseract
41
ISMAIK 2019/2020
Pour les diagrammes UML et la notation de modélisation de processus métier de OMG (Object
Management Group). Outre la prise en charge de la modélisation, il offre des fonctionnalités de
génération de rapports d’ingénierie, y compris la génération de code.
C’est un ensemble de techniques informatiques qui réalisent une reconnaissance de la forme des
caractères, après captation d’image par procédé optique. Le résultat est souvent transmis sous forme d’un
fichier. Nous avons testé un ensemble d’OCR, et nous avons opté pour le choix de « Tess4J» pour
l’importance de son taux de reconnaissance.
1. Python
Python est considérer comme étant un langage de programmation interprété (transformation instantanée
en langage machine en cohérence avec la lecture)
Le code d'octet Python est exécuté dans l'interpréteur Python utilisé dans :
2. Flask
Flask est un Framework open-source de développement web en Python. Son but principal est d'être léger,
afin de garder la souplesse de la programmation Python, associé à un système de Template.
3. Vs Code
Visual Studio Code est un éditeur de code extensible développé par Microsoft pour Windows, Linux et
macOS2.
4. Bootstrap
Bootstrap une source gratuite et ouverte pour le développement et la création de sites et des application
web.
Il est basé sur HTML, CSS, et Java Script (JS) pour faciliter le développement de sites et d’application
réactif et mobiles dont le design permet à une page web o une application, de détecter la taille et
orientation de l’écran du visiteur et d’adapter automatiquement l’affichage.
43
ISMAIK 2019/2020
1. Fonctionnement
Pour parvenir à ce travail il y a différentes étapes à suivre. Parce que le Raspberry Pi est juste mini-
ordinateur monocarte. Donc, nous aurons besoin d'autres composants en plus de notre carte Raspberry
pi.
44
ISMAIK 2019/2020
2. Installation
2.1. Reformater la carte microSD :
Pour commencer à utiliser Raspberry Pi nous devons reformater la carte microSD que
nous utiliserons pour télécharger le système d'exploitation. Ainsi, reformater supprimera
tous les fichiers et efface complètement la carte.
45
ISMAIK 2019/2020
2.4.Configurer le Raspberry Pi :
Lorsque Raspbian commence à charger un groupe de lignes de messages apparaîtra. Cela
continuera jusqu'à ce que le processus de démarrage soit terminée. Ensuite, l'écran
d'accueil Raspbian apparaît.
46
ISMAIK 2019/2020
Nous avons exécuté les commandes suivantes dans une session du terminal pour faire la
mise à jour avec la dernière version de tous les paquets, après avoir installé le système
d’exploitation :
47
ISMAIK 2019/2020
Après, la première chose qu’il essayer est de prendre une simple photo de l'image vue
par la caméra " raspistill " est la commande correspondante sur Raspbian pour prendre
une photo.
Raspistill -o image.jpg
IV. Démonstration
1. Partie embarquée :
Notre projet combine les capacités du matériel et des logiciels en un seul système
automatique intégré. L'objectif est de fournir un système de gestion de stationnement
pour les plaques d'immatriculation :
L’image capturée est ensuite traitée par Raspberry Pi et les caractères sont extraits de la
plaque d'immatriculation du véhicule.
48
ISMAIK 2019/2020
49
ISMAIK 2019/2020
Pour faire la comparaison entre les images dans la base de données et les images
détectés, on utilise la fonction difflib.
50
ISMAIK 2019/2020
51
ISMAIK 2019/2020
- La mauvaise résolution de l’image, soit parce que la plaque est trop loin ou parfois
résultant de
- Les objets qui cachent une partie de la plaque, bien souvent, une barre de remorquage,
ou la saleté sur la plaque,
2. Partie Web
1.1. Interface pour s’authentifier
La première interface montrée dans la figure 4.12 est celle de l’identification du
technicien du parking, là où il va enter son login et mot de passe dans les champs
correspondants pour pouvoir accéder à la page d’accueil de l’application.
Une fois que le technicien a cliqué sur le bouton « connexion », le système vérifie les
données entrées. En cas d’échec, un message d’erreur sera affiché.
52
ISMAIK 2019/2020
53
ISMAIK 2019/2020
54
ISMAIK 2019/2020
Lorsque nous ajoutons une voiture, on peut voir les détails tels que le client auquel
appartient cette voiture et l’historique de cette dernière comme le montre la figure 4.17
55
ISMAIK 2019/2020
Conclusion
Dans ce chapitre nous avons présenté l’implémentation de quelques cas d’utilisations
pour achever l’architecture logicielle de notre application. Nous avons exposé quelques
interfaces utilisateurs, aussi nous avons décrit les environnements matériels et logiciels
que nous avons utilisé pour l’implémentation de notre système.
56
ISMAIK 2019/2020
Conclusion générale
L’objectif de notre travail est de développer un système de détection et de
reconnaissance de plaques minéralogiques ayant la capacité d’extraire les caractères
d’immatriculation.
Après avoir présenté la société d'accueil et la problématique de notre projet, nous avons
présenté les différentes technologies utilises pour l’accomplissement de ce travail ainsi
que la méthodologie utilisée pour la reconnaissance des plaques d’immatriculation.
Nous avons réussi à détecter avec une grande précision les chiffres formant la matricule
du véhicule. En fait la reconnaissance nécessite le passage par les différentes étapes de
prétraitement tels que la détection de Canny Edge, la segmentation d'image, l’OCR, etc.
En plus, d’avoir atteint l’objectif final demandé, ce projet nous a été très bénéfique car
il nous a permis de maîtriser plusieurs techniques, de manipuler des outils très
complexes, se familiariser avec le langage de programmation Python et explorer ses
riches bibliothèques et aussi manipuler et réaliser un système embarqué.
La vraie problématique pour identifier des plaques d’immatriculation réside dans le fait
de pouvoir faire de la reconnaissance optique des 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.
On peut citer comme perspectives de notre projet, nous souhaiterons améliorer les
résultats obtenus afin de résoudre ce problème. Aussi, d'autres technologies peuvent être
utilisées pour l'identification des véhicules, comme par exemple la RFID. Cette
technologie est aujourd'hui utilisée dans de nombreuses applications. Les véhicules
57
ISMAIK 2019/2020
Enfin, ce projet était une bonne occasion pour réaliser un travail très concret, avec des
objectifs clairs et bien définis et il a été très bénéfique car il nous a permis de maîtriser
plusieurs techniques et de manipuler des outils très complexes.
58
ISMAIK 2019/2020
Références webographies
https://openclassrooms.com/fr/paths/68-developpeur-dapplication-python
https://python.doctor/
http://dictionnaire.sensagent.leparisien.fr/Lecture%20automatique%20de%20pl
aques%20min%C3%A9ralogiques/fr-fr/
https://www.researchgate.net/post/How_can_I_use_Raspberry_Pis_camera_mo
dule_for_real-time_acquisition_by_python
https://www.generationrobots.com/fr/402927-raspberry-pi-3-modele-b.html
https://projects.raspberrypi.org/en
https://community.ibm.com/community/user/legacy
https://pymotion.com/lecture-plaques-dimmatriculation/
http://isidoredd.documentation.developpement-
durable.gouv.fr/documents/CETTEXST005348/CETTEXST005348_2.pdf
https://fr.wikipedia.org/wiki/Filtre_m%C3%A9dian
https://opensource.google/projects/tesseract?fbclid=IwAR3puGtyu0I9Jbmyb1
Q0QCGb4-kkGR84lK_wVm_r9aBqWXI2Ja8CvYwrsdU
https://docs.python.org/3/library/difflib.html?fbclid=IwAR3puGtyu0I9Jbmyb1
Q0QCGb4-kkGR84lK_wVm_r9aBqWXI2Ja8CvYwrsdU
59