Memoire A Ab
Memoire A Ab
Memoire A Ab
Thème :
Apprentissage profond pour la détection et la
reconnaissance des plaques d’immatriculation des
véhicules
Presenté Par :
Président :
Rapporteurs :
Promotion : 2020-2023
ENASTIC Mémoire de fin d’études pour l’obtention du diplôme de Master
Dédicace
Remerciements
Avant tout, ma profonde et sincère louange à Dieu le Tout-Puissant de m’avoir donné la
force, la patience et le courage pour accomplir ce travail.
Je tiens à remercier le Président de Jury M. AMIR MOUNGACHE, Maître de Confé-
rences (CAMES), pour avoir accepté de présidé ce jury. Je remercie également M. HAGGAR
BACHAR SALIM, Maître-Assistant (CAMES) et M. ALI OUCHAR CHERIF, Maître-
Assistant (CAMES) pour avoir examiné et rapporté ce travail.
Je tiens à exprimer mes sincères remerciements à mon directeur de mémoire M. ABAKAR
MAHAMAT AHMAT, Maitre-Assistant (CAMES), pour la confiance, pour sa disponibilité,
son encouragement, ses conseils judicieux et surtout pour ses orientations lors de la réalisation
de mon travail.
Je tiens également à remercier M. DAOUDA AHMAT MAHAMAT, Maitre-Conférence
(CAMES), pour avoir accepté de supervisé ce travail.
Je souhaite aussi remercier l’équipe pédagogique et administrative de l’Ecole Nationale
Supérieur des TIC pour leurs efforts dans le but de nous offrir une excellente formation.
J’adresse mes sincères remerciements au directeur des études de l’Ecole Nationale Supérieur
des TIC, M. MAHAMAT CHARFADINE NIMANE, Maitre-Assistant (CAMES), pour
son dévouement et ses efforts en faveur de notre réussite.
Un merci particulier à toute ma famille qui a toujours été la source de mon succès, pour
cela je ne saurai jamais comment les remercier.
J’exprime ma gratitude à KHADIDJE OUSMANE KOSSI, FAITCHOU MARIUS
FIDEL, DOURE WILLIAM, BANI RICHARD, KAGBE ASDEBAYE, MAHA-
MAT SALEH SEID, MBAITIBET TOGBET, MBAIRANOUDJI CHARLOT, ainsi
que toute la promotion de master, pour les bons moments passés ensemble et leurs conseils qui
m’ont permis d’améliorer ce travail.
Enfin, à toutes les personnes qui ont contribué de près ou de loin à la réalisation de ce
travail.
Résumé
Grâce aux avancées technologiques en matière de la reconnaissance d’images et de l’intel-
ligence artificielle, de nombreuses applications ont été réalisées dans différents domaines tels
que la sécurité routière, la lutte contre la criminalité, la gestion du trafic etc. La méthode de
traitement d’image classique pour la reconnaissance des plaques d’immatriculation repose sur
l’extraction manuelle de caractéristiques spécifiques, ce qui n’est pas universellement applicable
à tous les scénarios. Afin de résoudre ce problème, les solutions intelligentes et automatisées des
systèmes de la reconnaissance automatique des plaques d’immatriculation sont utilisées. L’ap-
prentissage en profondeur utilise des réseaux de neurones artificiels multicouches pour extraire
des caractéristiques complexes à partir des images. A cet effet pour que ces systèmes soient
efficaces la reconnaissance précise des plaques d’immatriculation est essentielle.
L’objectif de cette étude est de proposer une solution permettant de déterminer l’approche la
plus performante et efficace pour la détection et la reconnaissance des plaques d’immatriculation
des véhicules qui grillent le feu de signalisation . Pour répondre à la problématique, nous avons
entrepris des recherches et études sur les différents travaux liés à la détection des plaques
d’immatriculation dont nous avons fait une synthèse de ces travaux.
Dans ce travail, nous avons utilisé le model CNN YOLOv5 pour la détection de la plaque
d’immatriculation et EasyOCR pour la reconnaissance de la plaque d’immatriculation. Nous
avons évalué l’algorithme YOLOv5 à l’aide d’une base des données contenant 350 images de
véhicules indiens. Les résultats obtenus en considérant 150 époques atteint une précision de 95%
avec un rappel de 94% et le mAP_0,5 est de 95,60% . Ensuite nous avons utilisé le modèle de
détection YOLOv5 ré-entrainé avec l’outil EasyOCR pour tester sur d’autres images provenant
d’une base de données différente, et les résultats étaient satisfaisants.
Mots clés :
CNN, YOLOv5, EasyOCR, Plaque d’immatriculation des véhicules.
Abstract
The technological advances in image recognition and artificial intelligence have led to a
wide range of applications in fields such as road safety, crime-fighting and traffic management.
The traditional image processing method for license plate recognition relies on the manual
extraction of specific features, which is not universally applicable to all scenarios. To solve this
problem, intelligent, automated solutions from automatic license plate recognition systems are
used. Deep learning uses multi-layer artificial neural networks to extract complex features from
images. For these systems to be effective, accurate license plate recognition is essential.
The purpose of this study is to propose a solution that will enable us to determine the most
effective and efficient approach for detecting and recognizing the license plates of vehicles that
run a traffic light. To address the problem, we have undertaken research and studies on the
various works related to license plate detection, and we have summarized these works.
In this research project we have used the CNN YOLOv5 model for license plate detection
and EasyOCR for license plate recognition. We evaluated the YOLOv5 algorithm using a data-
base containing 350 images of Indian vehicles. The results obtained by considering 150 epochs
achieved a precision of 95% with a recall of 94% and a mAP_0.5 of 95.60%. We then used the
re-trained YOLOv5 detection model with the EasyOCR tool to test on other images from a
different database, and the results were satisfactory.
Keywords :
CNN, YOLOv5, EasyOCR, Vehicle License Plate.
Introduction Générale 1
Contexte et Problématique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Objectifs scientifiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Méthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Organisation du mémoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
4 Implémentation et résultats 43
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1 Environnement de travail et outils utilisés . . . . . . . . . . . . . . . . . . . . . 43
4.1.1 Environnements utilisés . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.2 Langage de programmation . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.1.3 Librairies utilisées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.2 Résultats de la simulation de model YOLOv5 . . . . . . . . . . . . . . . . . . . 45
Sigles et abréviations
IA : Intelligence Artificielle
CNN : Convolutional Neural Network (Réseaux de neurones convolutif)
R-CNN : Region-Convolutional Neural Network
YOLO : You Only Look Once (Vous ne regardez qu’une seule fois)
PI : Plaque d’Immatriculation
IoU : Intersection sur Union
OMS : Organisation Mondiale de la Santé
MLP : Multilayer Perceptron (Perceptron multicouche)
ROC : Reconnaissance Optique de Caractères
TIC : Technologie de L’information et de la Communication
HOG : Histogramme de Gradient Orienté
SIFT : Scale Invariant Feature Transform
LBP : Local Binary Pattern (Motif binaire local)
SSD : Single Shot MultiBox Detector (Détecteur multibox à prise unique)
SVM : Support Vector machine(Machines à vecteurs de support)
CPU : Central Processing Unit (unités centrales des traitements)
GPU : Graphics Processing Unit(processeur graphique)
mAP : Mean average precision (précision moyenne moyenne)
FPN : Feature Pyramid Net(Réseaux pyramidaux de fonctionnalités)
PAN : Agrégation de chemins Réseau
LCV : Local Corrélation Voisinage
RAPI : Reconnaissance Automatique des Plaques d’Immatriculation
ALPR : Lecteur Automatique de Plaques d’Immatriculation
INTRODUCTION GÉNÉRALE
Contexte et Problématique
Ces dernières années, le nombre de véhicules a augmenté d’une manière très rapide, vu
le développement de l’industrie et de la population. Cette évolution a engendré de nombreux
problèmes : les embouteillages, la violation des règles des feux de signalisation, les accidents
etc. Les systèmes de contrôle des feux de circulation sont largement utilisés pour surveiller et
contrôler le flux des automobiles à la jonction de nombreuses routes. Ceci permet un mouvement
fluide des véhicules mais malheureusement les systèmes de contrôle des feux de circulation sont
allègrement violés par certains usagers de la voie publique, soit par ignorance soit par incivisme.
Cette violation est source de plusieurs accidents de circulation dont certains sont mortels.
Selon l’Organisation mondiale de la Santé (OMS), le nombre des morts sur les routes conti-
nue d’augmenter et atteint 1,35 million par an [8]. Le Rapport [9] de situation de l’OMS sur la
sécurité routière dans le monde en 2018 souligne que les accidents de la route sont désormais la
principale cause de mortalité chez les enfants et les jeunes de 5 à 29 ans. Ce rapport souligne
également que la situation s’est améliorée dans les pays riches, pas un seul pays à faible revenu
n’a enregistré une réduction du nombre total de décès, en grande partie à cause du manque
de mesures pour améliorer la sécurité. Le risque de mortalité routière reste ainsi trois fois plus
élevé dans les pays à faible revenu que dans les pays à revenu élevé ; avec les taux les plus
élevés en Afrique (26,6 pour 100.000 d’habitants) et les plus bas en Europe (9,3 pour 100.000
d’habitants). Depuis la dernière édition du rapport il y a trois ans, trois régions dans le monde
ont enregistré une baisse des taux de mortalité sur les routes : les Amériques, l’Europe et le
Pacifique occidental, la plus forte réduction ayant été observée dans le Pacifique occidental [9].
C’est dans ce contexte que ce projet se place dans le cadre de la sécurité routière, et plus
précisément dans la détection et la reconnaissance des plaques d’immatriculation des voitures
en infraction au feu de signalisation. L’IA (Intelligence artificielle) est aujourd’hui largement
utilisée dans plusieurs domaines, en particulier dans le domaine de la vision par ordinateur
et du traitement d’image pour la détection d’objets dans une image ou une vidéo capturée
numériquement en temps réel. Les méthodes d’apprentissage en profondeur les plus efficaces
font appel à des réseaux de neurones convolutifs (CNN), d’après plusieurs travaux réalisés par
[10] [11] [12] [13] [14] [15]. Les CNN qui prennent en charge l’algorithme de détection, ont une
précision plus élevée et une vitesse plus rapide comparé à d’autres algorithmes de détection
traditionnels [16] [17] [18].
les systèmes de la reconnaissance automatique de la plaque d’immatriculation offrent un
certains nombre d’avantage que les systèmes traditionnels de surveillance du trafic. Ainsi, la
RAPI(Reconnaissance automatique des plaques d’immatriculation) fait partie d’un plus grand
domaine qui est la détection d’objets au sein des images et des vidéos [10]. L’une des approches
les plus connues dans ce domaine est l’apprentissage en profondeur (le deep learning). En effet,
l’apprentissage profond bénéficie des modèles des réseaux de neurones artificiels qui sont connus
pour leurs capacités d’apprentissage et de mémorisation. Les réseaux de neurones sont devenus
les modèles déterminant de l’apprentissage en profondeur grâce à leur puissance et leur évoluti-
vité. La détection et la reconnaissance automatique des plaques d’immatriculation est un sujet
de recherche fréquent en raison de nombreuses applications pratiques, telles que l’application
du code de la route, le contrôle d’accès aux espaces privés, la surveillance du trafic routier et
bien d’autres. Pourtant, elles sont confrontées à des problèmes d’images floues, d’images captu-
rées la nuit, d’images de mauvaise qualité. En intelligence artificielle, le passage de perceptron
multicouche (MLP) au deep learning est dû à la capacité des réseaux de neurones profonds
à traiter des données de manière plus complexe. Dans [19], les auteurs ont utilisé un modèle
de réseaux de neurones dit : perceptron multicouche (MLP) dans lequel le taux d’erreur est
différent pour chaque ensemble d’entraînement d’images dont ils suggèrent que d’autres outils
neuronaux puissent être exploités tel que le « deep learning ». Le passage du traitement d’image
à l’apprentissage profond pour la détection et la reconnaissance des plaques d’immatriculation
a été une avancée significative et les techniques de l’apprentissage en profondeur ont montré une
performance impressionnante. Dans [20] [14], les auteurs ont mené une étude comparative entre
l’algorithme pour le traitement d’image et l’algorithme d’apprentissage profond dont les résul-
tats montrent que l’apprentissage profond était plus précis, rapide, performant et fonctionnant
en temps réel. Plusieurs modèles d’algorithme d’apprentissage en profondeurs, tels que Faster
R-CNN [11], SSD MobileNet [11] [21], MobileNet SSDv2 [22], YOLO v2 [23], YOLOv3 [15],
YOLOv4 [24] [25], traitent les problèmes de la détection et la reconnaissance de caractères
de la PI (plaque d’immatriculation) dans différents types d’environnements. Chacune de ces
méthodes présentent des performances plus ou moins différentes.
Cela nous amène à nous interroger sur les modèles le plus adéquat à être utilisé pour la
reconnaissance automatique des plaques d’immatriculation des voitures en infraction au feu de
signalisation ?
Le numéro d’immatriculation des véhicules représente un moyen efficace pour identifier les
propriétaires. Ce pendant, quelle méthode de l’apprentissage profond utilisée pour obtenir une
meilleure performance pour la détection et la reconnaissance des plaques d’immatriculation des
véhicules qui grillent le feu de signalisation ?
Objectifs scientifiques
Pour donner une réponse à la problématique, l’objectif principal de ce mémoire est l’utilisa-
tion de l’apprentissage profond, particulièrement les réseaux des neurones convolutifs (CNN).
Cette technique permet la détection et la reconnaissance des plaques d’immatriculation des
véhicules qui grille le feu de signalisation à partir d’une image avec une grande précision. Pour
atteindre notre objectif globale, les objectifs spécifiques se dégagent :
✺ Explorer un état de l’art sur les méthodes des détections et des reconnaissances des
plaques d’immatriculations des véhicules utilisant l’apprentissage profond.
✺ Élaborer un cadre pour la détection et la reconnaissance des plaques d’immatriculation
des véhicules qui grillent le feu de signalisation
✺ Implémenter l’approche proposé et discussions des résultats.
Méthodologie
Pour atteindre notre objectif de recherche, nous adaptons la démarche suivante :
✺ Compréhension du contexte qui s’agit de la détection d’objet dans une image et la
reconnaissance des formes ; d’étudier les méthodes classiques et les méthodes basées
sur les CNN pour la détection d’objet dans une image ; d’établir un état de l’art sur les
algorithmes de l’apprentissage profond pour la détection et la reconnaissance des plaques
d’immatriculation des véhicules.
✺ Présenter le cadre pour la détection et la reconnaissance des plaques d’immatriculation
des véhicules qui ne respectent pas le feu de signalisation. Ce cadre vise à mettre en
place un système capable d’identifier les véhicules en infraction, afin d’assurer le respect
des règles de sécurité routière.
✺ Présenter la mise en œuvre du cadre de détection et de reconnaissance des plaques d’im-
matriculation des véhicules en infraction au feu de signalisation, en évaluant sa perfor-
mance à travers des tests et en exposant les résultats obtenus lors des expérimentations.
Organisation du mémoire
Ce mémoire est organisé en quatre chapitres :
Nous commençons par une introduction générale qui fixe le Contexte et la Problématique,
les objectifs scientifiques, la méthodologie et l’organisation du mémoire.
Le premier chapitre présente une généralité sur la détection d’objets, les concepts relatifs
à l’apprentissage profond et aux réseaux de neurones, ainsi qu’une introduction des plaques
d’immatriculation.
Le deuxième chapitre explique les différentes approches de l’apprentissage profond dans le
domaine de la détection des plaques d’immatriculation et un état de l’art sur les travaux de
recherche connexes. Une étude comparative entre les différents types d’approches permet de
justifier le choix de la méthodologie adoptée.
Le troisième chapitre détaille la méthode que nous avons proposée pour la détection et la
reconnaissance de la plaque d’immatriculation.
Le quatrième chapitre est consacré à l’implémentation de notre travail, la présentation et
discussion des résultats obtenus. Nous terminons le manuscrit, par une conclusion générale et
les perspectives.
CHAPITRE 1
Introduction
Les solutions intelligentes et automatisées de contrôle de la circulation sont utilisées de
manière omniprésente, pour la détection de violation de feu de signalisation, pour la détection
de violation de vitesse, pour la détection de violation de ceinture de sécurité etc.
Pour commencer il nous faut tout d’abord définir les notions importantes liées à l’application
de l’apprentissage profond « Deep Learning » pour la détection des plaques d’immatriculation
des véhicules.
Ce chapitre fournit une généralité sur la détection d’objets dans une image, un aperçu général
sur l’apprentissage automatique. Ensuite, détaille les concepts relatifs à l’apprentissage profond
et aux réseaux de neurones, puis la reconnaissance des forme. Enfin nous présentons les plaques
d’immatriculation.
✺ Déterminer les localisations potentielles de l’objet, soit au moyen d’une fenêtre glissante
sur l’image, soit directement en détectant les points d’intérêt en son sein ;
✺ Extraire des caractéristiques dans l’image permettant d’identifier la classe d’objet visé ;
✺ Classifier automatiquement chaque sous fenêtre comme contenant l’objet recherché, ou
bien apparier les caractéristiques extraites avec celles d’un modèle de référence.
La figure 1.1 montre la structure d’un neurone artificiel qui est composé de :
✺ Entrées : Un neurone artificiel reçoit généralement plusieurs valeurs d’entrée x. Ces
entrées peuvent provenir de données externes ou des sorties d’autres neurones dans le
réseau.
✺ Poids : Les entrées x sont multipliées par les poids w, ils représentent les paramètres
internes du perceptron.
✺ Somme : Toutes les multiplications sont sommées avec ajout d’un biais.
✺ Activation : La somme pondérée passe ensuite à travers une fonction d’activation pour
produire la sortie du neurone
✺ Sortie : La sortie sera donc le résultat de la fonction d’activation
Les réseaux de neurones artificiels sont des modèles mathématiques inspirés de la biologie.
La brique de base de ces réseaux, le neurone artificiel, était issu au départ d’une volonté de mo-
délisation du fonctionnement d’un neurone biologique. Un réseau de neurones est un assemblage
de neurones connectés entre eux qui permet de résoudre de nombreux problèmes d’intelligence
artificielle.
La figure 1.2 représente la structure d’un réseau de neurones.
couche correspond aux neurones d’entrée et la dernière transmet les résultats de sortie. Entre
les deux se trouvent plusieurs couches intermédiaires par lesquelles l’information est traitée.
Cette architecture est propre à l’apprentissage profond et permet que chaque couche analyse
de manière plus précise les données d’entrée.
Plus le réseau de neurones artificiels est profond et donc contient plusieurs couches, plus le
système peut effectuer des tâches complexes. Il est capable de déterminer par lui-même une
représentation de ce qu’il reçoit, que ce soit une image ou un texte. [35].
Par exemple, le modèle de l’apprentissage profond peut être entraîné à l’aide d’un grand nombre
d’images, des images représentant des chats par exemple(voir figure 1.3). Ce type de réseau
neuronal tire son apprentissage des pixels contenus dans les images reçues. Il peut classer des
groupes de pixels en fonction des caractéristiques du chat telles que les griffes, les oreilles, les
yeux indiquant la présence de l’animal dans l’image.
Avec l’apprentissage profond, il suffit de fournir au système un très grand nombre d’images de
chats pour qu’il en retienne de façon autonome les caractéristiques [34].
Les réseaux neuronaux récurrents possèdent des connexions qui constituent des cycles
dirigés. Cela permet aux sorties du LSTM(Réseaux de mémoire à long et court terme)
d’être exploitées comme entrées au niveau de la phase actuelle. La sortie du LSTM se
transforme en une entrée pour la phase actuelle. Elle peut donc mémoriser les entrées
précédentes à l’aide de sa mémoire interne. Dans la pratique, les RNN sont utilisés pour
le sous-titrage d’images, le traitement du langage naturel et la traduction automatique.
✺ Réseaux de fonction de base radiale (RBFN)
Ces algorithmes sont des réseaux neuronaux assez particuliers. Ils exploitent des fonctions
de base radiales en tant que fonctions d’activation. Ils sont constitués d’une couche
d’entrée, d’une couche cachée et d’une couche de sortie. Généralement, les RBFN sont
utilisés dans la classification, la prédiction des séries temporelles et la régression linéaire.
✺ Réseaux de mémoire à long et court terme(LSTM)
Les LSTM sont des dérivés de RNN. Ils peuvent apprendre et mémoriser des dépendances
sur une longue durée. Les LSTM conservent ainsi les informations mémorisées sur le long
terme. Ils sont particulièrement utiles pour prédire des séries chronologiques, car ils se
rappellent des entrées précédentes. Outre ce cas d’utilisation, les LSTM sont également
utilisés pour composer des notes de musique et reconnaître des voix.
✺ Réseaux adversariaux génératifs (GAN)
Les GAN créent de nouvelles instances de données qui s’apparentent aux données d’ap-
prentissage profond. Ils possèdent deux principaux composants : un générateur et un
discriminateur. Si le générateur apprend à produire des informations erronées, le dis-
criminateur, quant à lui, apprend à exploiter ces fausses informations. Les GAN sont
généralement utilisés par les créateurs de jeux vidéo pour améliorer les textures 2D [36].
Une architecture CNN est formée par un empilement de couches de traitement indépen-
dantes :
✺ La couche de convolution (CONV) qui traite les données d’un champ récepteur.
✺ La couche de pooling (POOL), qui permet de compresser l’information en réduisant la
taille de l’image intermédiaire (souvent par sous-échantillonnage).
✺ La couche de correction (ReLU), souvent appelée ReLU en référence à la fonction
d’activation (Unité de rectification linéaire).
✺ La couche entièrement connectée (FC), qui est une couche de type perceptron.
✺ La couche de perte (LOSS).
La figure 1.4 représente l’architecture CNN.
Les couches convolutives constituent le noyau du réseau convolutif. Une convolution est une
opération mathématique qui consiste à appliquer un filtre de convolution qui multiplie chacun
des pixels de la matrice d’entrée par le filtre. Lorsque on applique la convolution au traitement
d’image, on multiplie l’image d’entrée avec une sous-région de cette image (filtre). Le filtre est
aussi connu sous le nom du noyau de convolution, qui est systématiquement appliqué aux don-
nées d’entrée pour créer une carte de caractéristiques [37]. La figure 1.5 représente l’opération
de convolution.
N
Mij = ϕ(bji + Mni−1 .Kni ) (1.1)
X
n=1
Les paramètres des couches de convolution et de max agrégation sont choisis de sorte que
les cartes d’activation de la dernière couche soient de taille 1, ce qui résulte en un vecteur
1D d’attributs. Des couches classiques complètement connectées composées de neurones sont
alors ajoutées au réseau pour réaliser la classification. La dernière couche, dans le cas d’un
apprentissage supervisé, contient autant de neurones que de classes désirées. Cette dernière
couche contient N neurones (nombre des classes dans la base), et une fonction d’activation de
type sigmoïde est utilisée afin d’obtenir des probabilités d’appartenance à chaque classe[37].
La fonction d’activation ϕ est appliquée à la sortie d’une couche de convolution pour limiter
la sortie de chaque neurone et pour introduire des non-linéarités aux activations linéaires géné-
rées par une couche de convolution. Quelques exemples de certaines des fonctions d’activation
populaires utilisées dans les réseaux de neurones pour les tâches de classification et de détection
sont donnés comme suit[37] :
✺ Unité linéaire rectifiée (ReLU) : La couche d’unité linéaire rectifiée (en anglais rectified
linear unit layer) est l’une des fonctions d’activation les plus couramment utilisées dans
l’apprentissage en profond, qui est calculée comme suit :
Les fonctions d’activation ReLU sont très populaires pour la création d’un réseau non
linéaire car il est plus facile de se différencier pour la rétropropagation du gradient.
Même si la fonction ReLU n’est pas différenciable à zéro contrairement à la fonction
d’activation sigmoïdale, qui a des dérivées lisses, elle converge toujours plus rapidement
que la fonction tangente sigmoïde et hyperbolique.
✺ Unité linéaire rectifiée Leaky (Leaky ReLU) : La fonction d’activation Leaky ReLU est
similaire à la fonction ReLU avec une différence clé : elle permet un petit gradient positif
lorsque l’unité est inactive. Un Leaky ReLU est calculé comme suit :
1
σ(x) = (1.4)
1 + e−x
Les valeurs d’entrée négatives plus grandes ont tendance à être plus proches de 0 tandis
que les entrées positives plus grandes sont plus proches de 1. La fonction sigmoïde est
rarement utilisée maintenant car elle souffre des problèmes de saturation de gradient et
2
tanh(x) = (1.5)
1 + e−2x
Conclusion
Dans ce chapitre, nous avons présenté les principales notions autour du domaine de la détec-
tion d’objet, de l’apprentissage profond, et les CNN qui permettent de résoudre de nombreux
problèmes d’intelligence artificiel, tels que la détection d’objets dans une image. Nous avons
également présenté les plaques d’immatriculation.
Dans le prochain chapitre, nous allons détailler les différentes méthodes de l’apprentissage pro-
fond dans le domaine de la détection d’objet et de la reconnaissance des caractères, ainsi qu’un
état de l’art des travaux connexes.
CHAPITRE 2
Introduction
Au cours des dernières années, plusieurs chercheurs se sont concentrés sur les algorithmes
de l’IA dont ces méthodes présentent des performances plus ou moins différentes. L’objectif de
ce mémoire est de proposer un algorithme de l’apprentissage profond pour la détection et la
reconnaissance des plaques d’immatriculation des véhicules en infraction au feu de signalisation.
Dans ce chapitre, nous aborderons en détails les méthodes des algorithmes de l’apprentissage
profond utilisées pour la détection des PI. Ces méthodes font appel aux techniques avancées
d’intelligence artificielle pour traiter et analyser les images, afin de détecter et identifier les
caractères des plaques d’immatriculation.
Dans ce chapitre, nous examinerons de manière détaillée les différentes étapes et méthodes
utilisées dans les algorithmes d’apprentissage profond pour la détection des PI, ainsi que les
avantages et les limites de ces méthodes.
Ce chapitre fera aussi l’objet d’un état de l’art sur l’utilisation des modèles de détection et
reconnaissance des PI.
(a) Image originale, (b) résultat de convolution du visage avec noyau horizontal, (c) résultat
de convolution du visage avec noyau vertical, (d) orientation dégradée de l’ensemble du visage,
(e1) . . .(en) vecteurs de gradient dans chaque cellule, (f1) ... (Fn) histogrammes correspondant
aux cellules calculées en fonction du gradient et de l’amplitude, (g) calcul HOG final.
2.2.1 R-CNN
R-CNN a été proposé pour améliorer la méthode de CNN dans la reconnaissance d’images,
il peut choisir un grand nombre de boîtes englobantes qui pourraient être des cibles finales par
une recherche facultative, puis diviser les différentes zones indépendantes de l’image en utilisant
l’extraction de caractéristiques de CNN. Le fait est qu’une trame de R-CNN se compose de
quatre étapes, notamment la saisie d’images, l’extraction de propositions de régions, le calcul
des caractéristiques CNN et la classification des régions. Le modèle d’algorithme de R-CNN
peut être identifié à plusieurs processus. Premièrement, les CNN peut être entraîné en classant
les images et les zones cibles peuvent être recherchées par la recherche sélective. De plus, ces
zones cibles doivent être redimensionnées à une taille par défaut. Deuxièmement, pour chaque
zone d’image, un vecteur de caractéristiques est généré par la propagation vers l’avant de CNN,
puis doit être saisi dans le SVM binaire. Enfin, le modèle de régression est utilisé pour réduire
les erreurs de positionnement et corriger la zone de délimitation. Pour résumer, CNN, SVM et
le modèle de régression sont inclus dans R-CNN [42].
Le principal avantage du R-CNN est qu’il présente un taux d’erreur inférieur à celui du CNN
conventionnel, en divisant les images en régions individuelles. En outre, un autre avantage est
que le réseau CNN peut extraire automatiquement les caractéristiques de l’image.
En revanche, l’inconvénient comprend plusieurs points : Premièrement, la formation est
échelonnée et les étapes sont compliquées. Deuxièmement, chaque proposition de région doit
extraire des fonctionnalités via le réseau CNN, générant un nombre important de fichiers de
fonctionnalités et occupant trop de mémoire physique. Troisièmement, chaque proposition de
région doit extraire des fonctionnalités via le réseau CNN, ce qui entraîne une vitesse de fonc-
tionnement lente. Enfin, comme SVM est utilisé pour la classification, la formation de bout en
bout ne peut pas être réalisée [42]. La figure 2.3 représente l’architecture R-CNN.
2.2.6 RetinaNet
RetinaNet est l’un des algorithmes représentatifs en une étape et sa structure est illustrée
à la Figure 2.8 Le backbone utilise les structures ResNet et Feature Pyramid Net (FPN). Sur
la base de la structure FPN, un chemin descendant et une connexion horizontale sont ajoutés.
Chaque niveau du FPN est connecté aux réseaux entièrement convolutifs, qui comprennent
deux sous-réseaux indépendants utilisés pour la classification et la régression. La principale
innovation de RetinaNet est l’ajout de Focal Loss au sous-réseau de classification. Étant donné
que le déséquilibre du nombre d’échantillons positifs et négatifs dans la détection cible de
l’algorithme en une étape affectera la perte d’entraînement, Focal Loss attribue différents poids
aux échantillons durs, ce qui résoud efficacement le problème de déséquilibre de classe dans le
modèle de détection cible [49]. La figure 2.8 représente l’architecture RetinaNet.
2.2.7 YOLOv3
Les deux premières versions de YOLO ont été publiées en 2016 et 2017 respectivement.
Cependant, en 2018 une version de YOLO a été publiée, nommées YOLOv3 effectue des pré-
dictions à partir de cartes de caractéristiques à trois niveaux différents. Les cartes de caractéris-
tiques sont divisées en grilles et les cellules des grilles sont placées avec des ancres de différentes
tailles, qui sont acquises en effectuant des K moyennes sur l’ensemble de données. Les ancres
sont étiquetées au premier plan si leur IoU avec une boîte de vérité terrain est supérieure au
seuil de 0,3. Les coordonnées centrales et les tailles des boîtes sont régressées en fonction des
positions et des tailles des ancres. Par rapport à l’utilisation d’une couche entièrement connec-
tée pour prédire directement les coordonnées des cadres de délimitation, le mécanisme basé sur
l’ancrage peut améliorer considérablement le rappel du modèle sur des objets de petite taille.
Au lieu d’une couche softmax, YOLOv3 effectue des classifications avec des classificateurs bi-
naires C, où C est le nombre de classes de l’ensemble de données. Cette modification donne
à YOLOv3 la capacité d’effectuer une classification multi-étiquettes. Suite à l’idée du réseau
résiduel, un réseau fédérateur plus profond Darknet-53 a été adopté dans YOLOv3. De plus,
YOLOv3 applique une stratégie de formation multi-échelle, qui répond davantage à la difficulté
du précédent YOLO à détecter de petits objets. YOLOv3 est compétitif en termes de précision
et de vitesse, et il est robuste dans la détection de différents types d’objets [50]. La figure 2.9
représente l’architecture YOLOv3.
2.2.8 YOLOv4
YOLOv4 se compose de : Colonne vertébrale (CSPDarknet53), Cou(SPP), POÊLE, Tête(
YOLOv3) . YOLO v4 utilise :
✺ Sac de cadeaux (BoF) pour le backbone : augmentation des données CutMix et Mosaic,
régularisation DropBlock, lissage des étiquettes de classe.
✺ Bag of Specials (BoS) pour le backbone : activation Mish, connexions partielles entre
étages (CSP), connexions résiduelles pondérées multi-entrées (MiWRC).
✺ Sac de cadeaux (BoF) pour le détecteur : perte CIoU, CmBN, régularisation DropBlock,
augmentation des données mosaïque, formation auto-adversative, élimination de la sen-
sibilité de la grille, utilisation de plusieurs ancres pour une seule vérité terrain [52].
✺ Bag of Specials (BoS) pour détecteur : activation Mish, bloc SPP, bloc SAM, bloc d’agré-
gation de chemin PAN, DIoU-NMS. La figure 2.10 représente l’architecture YOLOv4.
de données Chars74k qui est couramment utilisé pour la reconnaissance des caractères des PI.
Le modèle a atteint une précision de 91,1% mais le modèle est incapable de reconnaître les
caractères lorsqu’ils sont fortement floutés.
N. Eswar et all, [53] ont mis en œuvre un système de reconnaissance de PI efficace qui
détecte d’abord les véhicules, puis récupère les PI des véhicules pour réduire les faux positifs
lors de la détection des plaques. Ainsi, la méthode proposée, le caractère est reconnu à l’aide de
réseaux de neurones convolutifs (CNN). Les résultats expérimentaux montrent que le modèle
proposé était suffisamment capable de détecter avec succès la PI du véhicule à partir d’images
contenant une scène naturelle et différentes conditions d’éclairage.
Parneet Kaur et all, [54] ont présenté un système RAPI efficace qui utilise un CNN pour la
reconnaissance de caractères. Une combinaison d’opérations de prétraitement et morphologiques
a été appliquée pour améliorer la qualité de l’image d’entrée, ce qui contribue à l’efficacité du
système. Le système possède diverses fonctionnalités, telles que la capacité de reconnaître les
PI multilignes, asymétriques et multipolices. Il fonctionne également efficacement en mode nuit
et peut être utilisé pour différents types de véhicules. Une précision globale de 98,13 % a été
obtenue en utilisant la technique CNN proposée, il existe également certaines limitations, telles
que la reconnaissance de plusieurs PI dans une seule image. La CNN ne peut pas faire la
distinction entre la zone de la plaque et les grilles du véhicule automobile.
Gonçalves et all dans [24] ont introduit une nouvelle approche en deux étapes pour détecter
et reconnaître les plaques d’immatriculation brésiliennes basée sur deux réseaux. Un réseau de
détection conçu spécifiquement pour gérer la détection des plaques d’immatriculation et un
CNN multitâche pour effectuer simultanément la segmentation et la reconnaissance des images
des PI. Ils ont créé une nouvelle fonction de perte utilisée pour améliorer la convergence de
leur réseau de détection. Ils ont également conçu deux techniques d’augmentation des données
pour augmenter le nombre d’échantillons disponibles pour former leurs réseaux. Ensuite, cet
article introduit également un nouvel ensemble de données ALPR contenant 6 660 images. Les
résultats ont démontré que leur approche était capable de détecter 79,3 % PI à l’aide de leur
nouvel ensemble de données proposé. De plus, le réseau de reconnaissance a pu reconnaître 85,6
%de toutes les PI.
Alperen et all, [21] ont proposé une méthode de reconnaissance des PI pour les caméras
de surveillance routière générale. Ainsi, Ils ont utilisé SSD, qui est une technique populaire
de détection d’objets basée sur l’apprentissage en profondeur, à des fins de détection d’objets.
Pour la formation du modèle de détection de caractères, ils ont utilisé 72 000 images de plaques
synthétiques annotées pour apprendre les paramètres du modèle de classification et 18 000
images ont été utilisées pour la validation. À des fins de test, les mêmes 2000 images réelles,
qui sont utilisées pour tester le modèle de détection de plaque, ont été utilisées. Le modèle SSD
proposé atteint généralement une précision globale d’environ 73,3% sur un ensemble de test
composé de 2 000 images réelles.
Pour réduire le temps d’inférence pour le système de reconnaissance de PI en temps réel pour
une faible ressource, Ashrafee et all dans [22] ont utilisé un classificateur haar-cascade comme
filtre au-dessus de leur modèle de détection de base MobileNet SSDv2, il n’y a pas d’ensembles
de données des PI en bengali accessibles au public, pour lesquels ils ont créé un ensemble de
données d’images et vidéo contenant des plaques d’immatriculation à l’état sauvage. Le modèle
a une performance de détection de 82,7% de taux de détection.
[11] Dans de ce travail, l’auteur propose une méthode utilisant des techniques d’apprentis-
sage en profondeur pour résoudre la tâche de détection automatique des PI dont ils ont créé leur
propre base de données et labellisé les images manuellement. Les algorithmes d’apprentissage
utilisés sont : Faster R-CNN et SSD MobileNet qui ont été comparés sous CPU et GPU. Le
premier s’est avéré plus précis mais plus lent et l’utilisation de GPU est beaucoup plus rapide
pour les deux. Les résultats montrent que la perte du modèle Faster R-CNN Inception v2 est
trop faible. Par contre avec le modèle SSD-MobileNet v1 une perte un peu trop. Ils ont conclu
qu’ils ont obtenu une haute précision par le modèle Faster-R-CNN-Inception-v2, et grand temps
d’exécution, dont on ne peut pas utiliser le modèle en temps réel dans les systèmes embarqués.
Le modèle SSD-MobileNet-v1 donne une faible précision et petit temps d’exécution, donc on
peut l’utiliser dans les systèmes embarqués.
[12] Dans cet article, ils ont proposé un nouveau système RAPI en temps réel robuste basé sur
les réseaux de neurones convolutifs (CNN) de détection d’objets YOLO. Pour la segmentation
et la reconnaissance des caractères, ils ont conçu une approche en deux étapes utilisant des
astuces simples d’augmentation des données telles que les PI inversées et les caractères inversés.
L’approche ALPR qui en a résulté a obtenu des résultats impressionnants dans deux ensembles
de données. Tout d’abord, dans le jeu de données SSIG, composé de 2000 images à partir de 101
vidéos de véhicules, le système a atteint un taux de reconnaissance de 93,5%. Deuxièmement, en
ciblant un scénario plus réaliste, ils ont introduit un ensemble de données publiques plus large,
appelé jeu de données UFPR-ALPR, conçu pour ALPR. Cet ensemble de données contient 150
vidéos et 4 500 images capturées lorsque la caméra et les véhicules se déplacent et contient
également différents types de véhicules. Dans leur ensemble de données proposé, les versions
d’essai des systèmes commerciaux ont atteint des taux de reconnaissance inférieurs à 70%.
En revanche, le système a mieux performé, avec un taux de reconnaissance de 78,33%. Pour
optimiser davantage (en termes de vitesse) les étapes de détection des véhicules et également
de corriger l’alignement des PI inclinés et des caractères afin d’améliorer la segmentation et la
reconnaissance des caractères ils ont proposé d’explorer de nouvelles architectures CNN.
Jamtsho et all [23] ont présenté la détection en temps réel de plaque d’immatriculation
pour un motard non casqué à l’aide du détecteur d’objets en temps réel YOLO v2 (You Only
Look Once). Dans cette approche proposée, un seul réseau neuronal convolutif a été déployé
pour détecter automatiquement la PI d’un motocycliste non casqué à partir du flux vidéo. La
méthode de suivi centroïde avec une ligne de référence horizontale a été utilisée pour éliminer
le faux positif généré par le motard casqué à la sortie des images vidéo. Le taux de détection
global de plaque d’immatriculation était de 98%.
Huang et all [55] dans cet article propose une méthode de détection YOLOv3 améliorée pour
les pommes immatures dans le verger. Ils ont utilisé CSPDarknet53 comme réseau fédérateur
2.4 Synthèse
Les études précédentes, notamment [16] [17] [18], ont utilisé les descripteurs HOG, LBP
et SIFT, qui sont des méthodes classiques de détection d’objets dans une image. Cependant,
ces descripteurs ne tiennent pas compte de l’échelle des objets, sont sensibles aux variations
d’éclairage, aux transformations complexes, au bruit et aux rotations, ce qui limite leur précision
et leur fiabilité. Pour pallier ces limites, il est souvent recommandé d’utiliser des techniques
d’apprentissage automatique pour améliorer la détection d’objets. Dans l’étude de [19], les
auteurs ont utilisé l’apprentissage automatique pour la détection des PI, mais cette méthode
présente également des limites, d’où la suggestion d’utiliser l’apprentissage profond. Dans [20] et
[14], les auteurs ont réalisé une étude comparative entre les algorithmes de traitement d’image et
les algorithmes d’apprentissage profond, dont les résultats montrent que l’apprentissage profond
est plus précis, rapide, performant et fonctionne en temps réel. Différents travaux ont été
menés pour la détection des PI, tels que Faster R-CNN [11], SSD MobileNet [11], MobileNet
SSDv2 [22], YOLO v2 [23], YOLOv3 [15] et YOLOv4 [13] [25]. Chacune de ces méthodes
utilise l’apprentissage profond avec des modèles de réseaux de neurones, présentant chacune
leurs avantages et leurs compromis.
En conclusion, les travaux se sont concentrés sur la détection et la localisation précises en
temps réel des PI. Ils ont abordé les problèmes liés à la détection et à la reconnaissance des
caractères dans différents environnements, tels que l’uniformité des modèles des PI, la faible
résolution, l’alignement des plaques inclinées et les différentes conditions d’éclairage. Parmi
les algorithmes étudiés, YOLO est l’algorithme de détection le plus célèbre en raison de sa
précision, de sa rapidité, de sa performance et de son fonctionnement en temps réel. Cependant,
il est important de noter que l’algorithme YOLOv5, qui est plus spécifiquement adapté à notre
problématique, n’a pas été traité dans ces travaux. Nous pensons l’utilisation du modèle de
détection YOLOv5 et de l’outil easyOCR serait une contribution importante pour améliorer le
système RAPI en temps réel. L’utilisation de YOLOv5 permettrait de localiser avec précision les
plaques dans différentes conditions, tandis que l’utilisation de easyOCR permettrait d’extraire
les caractères des plaques pour obtenir l’information complète sur le numéro de la PI de véhicule.
Conclusion
Dans ce chapitre, nous avons abordé les méthodes classiques de détection d’objets, ainsi
que les méthodes basées sur les CNN, leurs fonctionnements et leurs différentes architectures.
Nous avons également examiné leurs avantages et leurs limites. Afin de mieux comprendre l’état
actuel de la recherche dans ce domaine, nous avons fait un état de l’art approfondi des travaux
qui ont été réalisés dans le cadre de la détection de la PI. Les travaux utilisant les méthodes
classiques ont montré de réelles limites. Afin de relever ce défi, plusieurs chercheurs ont intégré
l’apprentissage profond.
Le prochain chapitre expliquera en détail la méthodologie proposée pour détecter les PI en
infraction au feu de signalisation.
CHAPITRE 3
Introduction
L’apprentissage profond, une technique de l’IA, est largement utilisée avec succès dans de
nombreux domaines. En particulier, son utilisation dans la reconnaissance automatique des
plaques d’immatriculation(PI) a considérablement amélioré la précision et l’efficacité de cette
tâche. Les CNN sont spécialement conçus pour extraire les caractéristiques pertinentes des
images, ce qui les rend adaptés à la reconnaissance des PI.
Les modèles de détection d’objets en apprentissage profond sont généralement classés en
deux catégories : les modèles à un étage et les modèles à deux étages. L’approche à deux
étages, est une approche classique les régions d’intérêt sont proposées à l’étape initiale, puis
classifiées et ajustées dans l’étape suivante. Cette méthode est plus lente mais offre une précision
de détection. Elle est utilisée dans des modèles tels que R-CNN, Fast R-CNN , Faster R-
CNN et Mask R-CNN. Par contre, l’approche à un étage est une méthode pour résoudre les
problèmes de classification et de localisation en même temps, elle vise à prédire directement
les régions d’intérêt contenant les objets. Ces modèles, basés sur les CNN tels que YOLO ou
SSD, permettent une détection rapide en prédisant simultanément les coordonnées des boîtes
englobantes et les classes des objets.
Les modèles en un étage ont l’avantage d’être plus rapides que les modèles en deux étages,
ce qui les rend idéaux pour les applications en temps réel.
Dans [21] les auteurs ont proposé la méthode SSD de reconnaissance des PI pour les caméras
de surveillance routière générale mais la précision était faible. La méthode SSD utilise des filtres
à différentes échelles pour détecter des objets à des tailles différentes. Cela permet une meilleure
détection des objets de petite taille, mais peut augmenter la complexité du modèle.
Le célèbre algorithme de détection d’objets YOLO avec plusieurs versions a été mis en œuvre
et a très rapidement fait l’objet de plusieurs recherches [13] [15] [56] [25]. Ainsi, les travaux de
[57] [58] ont étudié le modèle YOLOv5, mais ces travaux n’ont pas été dans le cadre de la
détection de la PI.
De ce constat, nous proposons le modèle YOLOv5 pour la détection des PI, tandis que la
segmentation et la reconnaissance des caractères seront gérées par la reconnaissance optique des
caractères (OCR). Nous détaillerons également le modèle YOLOv5 utilisé dans notre approche,
ainsi que la reconnaissance optique des caractères, plus précisément l’outil easyOCR. Cette
combinaison de techniques nous permettra d’obtenir des résultats précis et efficaces dans la
détection et la reconnaissance des PI.
YOLO est un célèbre algorithme de détection d’objets avec plusieurs versions. Le cœur de
l’algorithme de détection de cible YOLO réside dans la petite taille du modèle et la vitesse
de calcul rapide. La structure de YOLO est simple. Il peut directement sortir la position et
la catégorie de la boîte englobante via le réseau neuronal. La vitesse de YOLO est rapide car
il utilise directement l’image globale pour la détection, ce qui peut encoder les informations
globales et réduire l’erreur de détection de l’arrière-plan en tant qu’objet, pour cette raison,
YOLO s’est développé progressivement [61]. En 2020, la cinquième version de YOLO est sortie.
Par rapport aux méthodes a 2 étages, la vitesse et la précision ont augmenté. Étant donné
que YOLO n’applique pas de réseau distinct pour extraire les régions candidates, il affiche de
meilleures performances en termes de temps de traitement [42]. La structure de base YOLOv5
[58] est divisée en partie réseau de base, partie cou et partie tête.
Le principe de base de YOLOv5 est similaire à YOLOv4 [25]. YOLOv5 est une base d’amé-
lioration de YOLOv4, et YOLOv5 [58] [61] [63] a les meilleures performances en termes de préci-
sion, de rappel et de précision moyenne par rapport à Faster R-CNN, YOLOv3 et YOLOv4 [25].
En outre, YOLOv5 [61] [63] se compose de cinq versions à lui seul, qui sont YOLOv5n(nano)
YOLOv5s(petit), YOLOv5m(moyen), YOLOv5l(grand) et YOLOv5x (très grand). Ceci est
classé en fonction de la taille de stockage de la mémoire, mais le principe est le même ; La prin-
cipale différence entre eux réside dans le nombre de modules d’extraction de caractéristiques
et de noyaux de convolution, la taille des paramètres pour Yolov5n, YOLOv5s, YOLOv5m,
YOLOv5l et YOLOv5x sont respectivement de 4 Mo, 14 Mo, 41 Mo, 89 Mo et 166 Mo, les
auteurs de [17] ont comparé l’expérience de classification des personnes qui portent un masque
ou non a été réalisée indépendamment sur cinq architectures YOLOv5 (n, s, m, l, x) d’abord
sur la formation, puis sur les sous-ensembles d’images de test. L’architecture la plus complexe
YOLOv5x a obtenu les meilleurs résultats dans le sous-ensemble de formation, tandis que les
modèles (m et l) ont obtenu des résultats légèrement inférieurs. YOLOv5n a obtenu les pires
performances en raison de la corrélation entre le nombre de paramètres et la capacité à ap-
prendre le réseau. Ainsi, ils ont conclu que les modèles les plus complexes sont certainement
plus précis. Et aussi ils ont indiqué que lors du choix d’une architecture de réseau optimale, il
est nécessaire de faire un compromis entre la qualité et la vitesse. Pour que les modèles plus
complexes soient compétitifs en termes de vitesse, ils ont besoin d’un matériel plus puissant,
qui n’est pas toujours disponible. Pour notre cas nous avons choisi l’architecture Yolov5s.
YOLOv5 utilise plusieurs stratégies d’optimisation d’algorithmes du domaine des réseaux
de neurones convolutifs tels que les ancres de boîte englobante d’apprentissage automatique,
l’augmentation de données en mosaïque et le réseau partiel à plusieurs étages. Par rapport
aux solutions précédentes, le modèle YOLO a été le premier détecteur d’objets à connecter la
procédure de prédiction des boîtes englobantes avec des étiquettes de classe dans un réseau
différentiable de bout en bout [63].
Tout d’abord, le terminal d’entrée effectue des tâches de prétraitement des données, no-
tamment l’augmentation des données en mosaïque et le remplissage adaptatif des images [65].
Pour pouvoir s’adapter à différents ensembles de données, YOLOv5 intègre le calcul adaptatif
du cadre d’ancrage sur l’entrée, de sorte qu’il peut définir automatiquement la taille initiale du
cadre d’ancrage lorsque l’ensemble de données change.
✺ L’épine dorsale :
Est CNN qui agrège et forme des caractéristiques d’image à différentes granularités.
Il utilise principalement un réseau partiel à plusieurs étages (CSP) [66] et un regrou-
pement de pyramides spatiales (SPP) [67] pour extraire des cartes de caractéristiques
de différentes tailles à partir de l’image d’entrée par convolution multiple et mise en
commun. L’architecture BottleneckCSP est utilisée pour réduire la quantité de calcul
et augmenter la vitesse d’inférence, tandis que la structure SPP réalise l’extraction de
caractéristiques à partir de différentes échelles pour la même carte de caractéristiques, et
peut générer des cartes de caractéristiques à trois échelles, ce qui contribue à améliorer
la précision de la détection.
✺ Le réseau neuronal du cou :
Représente une série de couches pour mélanger et combiner les caractéristiques de
l’image et les transmettre à la prédiction. Dans le réseau du cou, les structures py-
ramidales caractéristiques de FPN (Réseaux pyramidaux de fonctionnalités) et PAN
(agrégation de chemins Réseau) sont utilisées. La structure FPN transmet de fortes
caractéristiques sémantiques des cartes de caractéristiques supérieures aux cartes de ca-
ractéristiques inférieures. Dans le même temps, la structure PAN transmet de fortes
Alors que la fonction d’activation Sigmoïde a été utilisée avec les opérations de convolution
dans la couche de sortie [69].
1
f (x) = (3.2)
1 + e−x
C − (A ∪ B)
GIOU = IOU −
C
(A ∩ B)
IOU = (3.3)
(A ∪ B)
Où A est la boîte de prédiction du modèle, B est la boîte réelle, et C est la boîte minimale
contenant A et B.
Pour la perte de localisation et la perte de classification, le modèle YOLOv5 adopte la
1X
C=− [ylna + (1 − y)ln(1 − a)] (3.4)
n x
Où x est l’échantillon, y est l’étiquette, a est la valeur prédite et n est le nombre total
d’échantillons.
Algorithm 1 YOLOv5
Entrée(s) Images et hyperparamètres : le nombre de classes d’objets, les dimensions de l’image
d’entrée, etc.
1: Prétraitement de l’image
Image = prétraitement (Image entrée)
2: Forward pass à travers le réseau
Sortie = réseau(image)
3: Traitement de la sortie du réseau
Boîtes, scores, classes = post-traitement (Sortie)
Retourner boîtes, scores, classes
présents dans l’image qui sera ensuite transmis au modèle pour l’entrainement. Le détecteur
YOLOv5 ont été entraînés sur de grandes bases de données annotées comme MS-COCO pour
tester leur performance. Cependant, dans le cas d’une application spécifique comme la nôtre,
qui vise à détecter les plaques d’immatriculation des voitures qui grillent le feu de signalisation,
il n’est pas toujours possible de trouver une grosse base de données annotées disponible pour
entraîner le modèle. Pour cela, nous avons téléchargé une base de données contenant 350 images
de véhicules indiens dont nous avons annoté en utilisant le site Web makesens.ai.
Il existe plusieurs outils (Yolo Mark, LabelImg, Bbox-Label-Tool. . .) qui peuvent être utilisés
pour créer les annotations pour chacune des images qui feront partie de l’ensemble d’entraine-
ment. Cela signifie, pour indiquer manuellement le « cadre entourant » contenant chacun des
objets dans l’image et indiquer à quelle classe appartient l’objet.
Précision :
TP
P = (3.5)
TP + FP
Rappel :
TP
P = (3.6)
TP + FN
Précision moyenne : P
P
AP = (3.7)
N um(objets)
Précision moyenne moyenne :
P
AP
mAP = (3.8)
N um(classe)
Conclusion
En conclusion, ce chapitre a fourni une vue d’ensemble de notre approche pour résoudre
notre problématique, nous avons décrit en détail les choix du modèle, l’architecture et la base
des données utilisés pour l’entrainement du modèle, ainsi que l’outil EasyOCR pour la recon-
naissance des caractères.
Dans le prochain chapitre, nous passerons à la mise en œuvre de notre approche et nous
présenterons les logiciels et les outils que nous avons utilisés pour réaliser nos expérimentations.
Nous montrerons également les résultats des tests que nous avons effectués pour évaluer la
performance de notre modèle.
CHAPITRE 4
IMPLÉMENTATION ET RÉSULTATS
Introduction
Nous avons présenté dans le premier chapitre les concepts fondamentaux de l’apprentissage
automatique et l’apprentissage profond, ainsi que la détection d’objet dans une image. Dans le
deuxième chapitre nous avons vu les différentes architectures des modèles de détection d’objet
classiques et les modèles basés sur les CNN, ainsi qu’un état de l’art sur les travaux connexes.
Les deux premiers chapitres donnent un aperçu de l’état actuel afin de mieux comprendre la
méthodologie de notre recherche.
Le présent chapitre se concentre sur la phase expérimentale et les résultats, tout en pré-
sentant les différents logiciels et outils utilisés. Pour implémenter notre système de détection
et reconnaissance des PI, nous allons ré-entrainer le model yolov5 pour la détection des PI
dont nous utilisons l’environnement libre de google Colab. Ensuite, nous utilisons le modèle
ré-entrainé pour détecter et reconnaitre les PI en temps réel. A cet effet nous utilisons l’appli-
cation VS code de l’environnement de développement Anaconda. Enfin, nous examinerons les
résultats obtenus en utilisant les différentes métriques d’évaluation de performances.
Les raisons de le rendre public pourraient être de faire de son logiciel une norme dans le domaine
universitaire pour l’enseignement de l’apprentissage automatique et de la science des données.
Colab prend en charge de nombreuses bibliothèques d’apprentissage automatique populaires et
de haut niveau qui peuvent être facilement chargées dans votre notebook [71].
Pour notre apprentissage nous avons utilisé les ressources de Colab avec RAM 12.7 GB et
Disque de taille 78.2 GB, la version de GPU c’est Tesla 4.
Anaconda : est une distribution libre et open source des langages de programmation Py-
thon et R appliqué au développement d’applications dédiées à la science des données et à
l’apprentissage automatique (traitement de données à grande échelle, analyse prédictive, calcul
scientifique), qui vise à simplifier la gestion des paquets et de déploiement. Les versions de
paquetages sont gérées par le système de gestion de paquets conda [72].
On a choisi IDE VS code 1.83.1(nommé Visual Studio Code) Visual Studio Code est l’éditeur
de code gratuit et multiplateforme de Microsoft. Il a été très populaire parmi les développeurs
de la nouvelle ère et il est livré avec un excellent support pour l’édition de code Python [73].
Easy OCR : EasyOCR est un package Python open-source qui est utilisé pour effectuer
la reconnaissance optique de caractères - OCR (extraire du texte à partir d’images) [78]. pour
extraire du texte à partir d’images. Nous avons utilisé pour la reconnaissance de la PI.
TensorBoard : TensorBoard est une suite d’applications web permettant d’inspecter et de
comprendre les exécutions et les graphiques TensorFlow. Il permet de visualiser en temps réel
les performances réalisées par CNN en cours d’entraînement [79]. Nous utilisons TensorBoard
pour visualiser nos mesures d’entraînement, telles que la perte et la précision de l’entraînement
et de la validation.
Matplotlib : Matplotlib est une librairie graphique 2D (avec un support partiel de la 3D)
qui est la librairie standard pour la visualisation scientifique. Elle est utilisée pour tracer et
visualiser des graphiques via le langage de programmation Python [80].
✺ Pour l’entrainement :
✺ pour la validation :
✺ pour la validation :
A 150 époque les pertes sont sensiblement les mêmes avec celles de 100 époque. Le tableau 4.1
résume les résultats Pertes
A 100 époque, la précision est de 91%, le rappel est de 94% et le mAP_0,5 est de 95%.
A 150 époque, la précision est de 95%, le rappel est de 94% et le mAP_0,5 est de 95,60%.
Après avoir analysé les résultats, nous faisons les observations suivantes : En ce qui concerne la
métrique perte, nous constatons que le taux d’erreur d’apprentissage et de validation diminue
avec le nombre de périodes jusqu’à atteindre une stabilité. En ce qui concerne les métriques
précision, rappel et mAp_0,5 le taux d’apprentissage augmente avec le nombre de périodes, ce
qui reflète le fait qu’à chaque époque le modèle apprend plus d’informations. Le tableau 4.2
résume les résultats performances
4.5 Discussion
Dans cette étude, nous avons évalué les performances de la méthode de détection d’objet
basée sur les CNN, spécifiquement YOLOv5, pour la détection des PI en infraction aux feux
de signalisation. Nous avons adapté le modèle pré-entraîné YOLO sur un ensemble de données
d’images. Les résultats obtenus après avoir testé 350 images annotées manuellement indiquent
que le modèle fonctionne de manière optimale, avec un taux d’erreur de perte de régression de
la boîte englobante de 3% et une perte d’objectivité de 0,5% pour la validation. La précision du
modèle atteint 95% avec un rappel de 94% et le mAP_0,5 est de 95,60%. Nous avons également
testé le modèle sur d’autres images provenant d’une base de données différente, et obtenu de
bons résultats.
En Comparant avec d’autres travaux utilisant les méthodes de la détection des PI, les auteurs
de [52] ont utilisés un modèle CNN à deux couches pour détecter la plaque d’immatriculation
avec 3 types différents d’ensembles de données extraits de l’ensemble de données Chars74k
dont une précision de 91,1%. Dans [25] , les auteurs ont travaillé sur la surveillance du trafic à
l’aide de la plaque d’immatriculation du véhicule, détection et reconnaissance au Bangladesh
où ils ont utilisé le modèle YOLOv4 pour la détection des PI du véhicule, ils ont entrainé le
modèle avec la base Tkinter, dont la performance de la précision moyenne est de 90,50% et
rappel de 86%. Les auteurs de l’étude [22], ont abordé un système de reconnaissance de plaque
d’immatriculation en temps réel au cours duquel ils ont utilisé un classificateur haar-cascade
comme filtre au-dessus de leur modèle de détection de base MobileNet SSDv2, ils ont créé un
ensemble de données d’images et un ensemble de données vidéo contenant des PI dans des
conditions réelles, obtenant un taux de détection de 82,7%.
En conclusion, nos expérimentations ont produit des résultats meilleurs que ceux des études
précédentes. Le tableau ci-dessous présente un récapitulatif de la précision des méthodes utili-
sées pour la détection des PI des véhicules dans notre système proposé, ainsi que dans d’autres
travaux similaires.
Conclusion
Le dernier chapitre de cette étude a été consacré à une simulation visant à évaluer les
performances de l’algorithme YOLOv5. Nous avons entraîné ce modèle jusqu’à 150 époques en
utilisant une base de données contenant 350 images de véhicules indiennes. Nous avons utilisé
plusieurs paramètres d’évaluation, notamment la perte, la précision et le rappel. Les résultats
obtenus ont montré que le modèle a produit des résultats satisfaisants.
Nous avons également testé le modèle reentraîné en utilisant l’outil easyOCR pour la re-
connaissance des caractères des PI sur différentes images et dans des conditions variées. Par
conséquent, nous pouvons conclure que l’algorithme YOLOv5 est performant et capable de
fournir des résultats positifs satisfaisants.
Conclusion
Cette recherche vise à contribuer à l’utilisation de l’algorithme de l’IA, plus précisément
d’étudier l’application de l’apprentissage profond pour le problème de la détection des PI des
véhicules en infraction au feu de signalisation qui a un impact profond sur la sécurité routier
car elle est source de plusieurs accidents de circulation. L’objectif est de trouver le modèle de
l’apprentissage profond qui répond le mieux à ce besoin de détection en obtenant les meilleures
performances possibles.
Nous avons commencé par fournir un aperçu complet sur les différentes notions liées à la
détection d’objets dans une image, ainsi que l’apprentissage profond et les réseaux de neu-
rones. Ensuite, nous avons fait une étude détaillée sur les méthodologies de la détection d’objet
dans une image, puis un état de l’art exposant les différentes méthodes basées sur les modèles
classiques et les modèles des CNN utilisées pour la détection des PI des véhicules.
Par la suite, nous avons présenté le cadre proposé et sa description où nous avons détaillé
le choix de l’algorithme utilisé et son architecture. Pour réaliser ce système nous nous sommes
basés sur les CNN, Nous avons utilisé le model CNN yolov5 pour la détection des PI parce qu’il
a prouvé sa performance dans la détection d’objet en temps réel.
Nous avons évalué l’algorithme YOLOV5 à l’aide d’une base des données contenant 350
images de véhicules indiens que nous avons annoté manuellement, et dont nous avons présenté
et discuté les résultats. Les résultats obtenus étaient très satisfaisants par rapport à d’autres
travaux dans le même thème. La précision du modèle atteint 95% avec un rappel de 94% et le
mAP_0,5 est de 95,60%.
Enfin, nous avons également effectué des tests sur le modèle reentrainé YOLOv5 et easyOCR
pour reconnaître les PI sur d’autres images provenant d’une base de données différente. Nous
avons obtenu de bons résultats, parvenant à atteindre notre objectif avec un minimum d’erreurs
et un taux de précision élevé.
Pour conclure, les objectifs fixés dans ce travail ont été atteints. Cependant, il reste encore
des perspectives et des possibilités d’amélioration qui pourront être réalisées à l’avenir.
Perspectives
Comme perspective pour ce travail, nous proposons de :
BIBLIOGRAPHIE
[1] Hamza Mesai Ahmed, Youcef Djeriri, and NADIR KAIS. Commande de la machine asyn-
chrone à double alimentation – apport des techniques de l’intelligence artificielle. PhD
thesis, 07 2017.
[2] Structure d’un reseau ds neurones, consulté le 14 Aout 2023. https://www.
researchgate.net/profile/Redha-Tir/publication/326066153/figure/fig2/AS:
642875817721876@1530284947757/Architecture-dun-reseau-multi-couches_Q640.
jpg.
[3] Processus d’autoapprentissage, consulté le 25 Aout 2023. https://cdn.
futura-sciences.com/buildsv6/images/mediumoriginal/d/c/d/dcdc8d74ca_
125717_deep-learning.jpg.
[4] Architecture cnn, consulté le 30 Aout 2023. https://user-images.githubusercontent.
com/24530726/172461568-80639e2a-abe8-42ac-841b-90b737dd35fa.png.
[5] Operation de convolution, consulté le 30 Aout 2023. https://www.researchgate.net/
figure/Convolution-operation_fig1_330880103.
[6] Tsung Yi Lin, Priya Goyal, Ross B. Girshick, Kaiming He, and Piotr Dollar. Focal loss for
dense object detection. CoRR, abs/1708.02002, 2017.
[7] Abdelmalik Ouamane. Reconnaissance Biométrique par Fusion Multimodale du Visage 2D
et 3D. PhD thesis, Université Mohamed Khider-Biskra, 2015.
[8] Le rapport de situation de l’oms sur la sécurité routière dans le monde. consulté
le 2 Juillet 2023. https://news.un.org/fr/story/2021/11/1109092#:~:
text=Selon%20le%20Rapport%20de%20situation%20sur%20la%20s%C3%A9curit%C3%
A9,estimation%20de%201%2C35%20million%20de%20morts%20chaque%20ann%C3%A9e.
[9] le bilan mondial annuel sur le rapport de situation de l’oms sur la sécurité routière dans
le monde, consulté le 2 Juillet 2023. https://www.dhnet.be/actu/monde/2018/12/07/
la-route-tue-toujours-plus-voici-le-bilan-mondial-annuel-.
[10] Kaouba Fatima Zohra. L’apprentissage profond avec les modèles de réseaux de neurones
pour la détection des plaques d’immatriculations. Master’s thesis, Université Abdelhamid
Ibn Badis - Mostaganem, 2021.
[11] Malki Yacine and Tiachachat Nassim. Deep learning pour la détection des plaques d’im-
matriculation. Master’s thesis, Université Saad Dahleb - Blida, 2020.
[12] Rayson Laroca, Evair Severo, Luiz A. Zanlorensi, Luiz S. Oliveira, Gabriel Resende Gon-
çalves, William Robson Schwartz, and David Menotti. A robust real-time automatic license
plate recognition based on the YOLO detector. CoRR, abs/1802.09567, 2018.
[13] Adarsh Sham, Paritosh Pandey, Sambhav Jain, and S. Kalaivani. Automatic license plate
recognition using yolov4 and tesseract ocr. INTERNATIONAL JOURNAL OF ELEC-
TRICAL ENGINEERING AND TECHNOLOGY, 12, 05 2021.
[14] SEGHIRIA Youcef Salim TABI Mohammed Riad. Détection et gestion des automobiles
au sein d’un parking par la reconnaissance des matricules avec des techniques avancées.
2019.
[15] Ameni Neffati. Automated classification and dataset creation based on YOLO neural net-
work topologies. PhD thesis, University of Sousse, 2020.
[16] Rodrigo Minetto. Ficha catalográfica elaborada por maria fabiana bezerra muller-
crb8/6162 biblioteca do instituto de matemática, estatística e computação científica-
unicamp.
[17] Elhacene Lazrag MECHTOUNE and Brahim Abdeldjebar MASSARIA. Extraction des ca-
ractéristiquesdiscriminantes basées sur LBP pour laclassification des textures. PhD thesis,
Université Ibn Khaldoun-Tiaret-, 2022.
[18] Dounia Awad. Vers un système perceptuel de reconnaissance d’objets. Theses, Université
de La Rochelle, September 2014.
[19] Ahmed Dhiya Eddine Guendouz and Mohamed Berkane. Conception et réalisation d’un
système de reconnaissance automatique des plaques d’immatriculation algérien. 2020.
[20] Boulahchiche Nadir and Ferkioui Mecheri. Système intelligent de reconnaissance de plaque
d’immatriculation via raspberry pi. Master’s thesis, Université Saad Dahleb - Blida, 2021.
[21] Alperen Elihos, Burak Balci, Bensu Alkan, and Yusuf Artan. Deep learning based seg-
mentation free license plate recognition using roadway surveillance camera images. CoRR,
abs/1912.02441, 2019.
[22] Alif Ashrafee, Akib Mohammed Khan, Mohammad Sabik Irbaz, Al Nasim, and MD Ab-
dullah. Real-time bangla license plate recognition system for low resource video-based
applications. In Proceedings of the IEEE/CVF Winter Conference on Applications of
Computer Vision, pages 479–488, 2022.
[23] Yonten Jamtsho, Panomkhawn Riyamongkol, and Rattapoom Waranusast. Real-time li-
cense plate detection for nonhelmeted motorcyclist using yolo. ict express 7 (1) : 104–109,
2021.
[24] Gabriel Resende Gonçalves, Matheus Alves Diniz, Rayson Laroca, David Menotti, and
William Robson Schwartz. Real-time automatic license plate recognition through deep
multi-task networks. In 2018 31st SIBGRAPI conference on graphics, patterns and images
(SIBGRAPI), pages 110–117. IEEE, 2018.
[25] Akash M. I. Haque M. Onim, S. H. and R. I Hafiz. Traffic surveillance using vehicle license
plate detection and recognition in bangladesh. International Conference on Electrical and
Computer Engineering (ICECE), page 4, 12 2020.
[26] La definition de la détection d’objets dans une image, consulté le 2 Aout 2023. https:
//fr.wikipedia.org/wiki/D%C3%A9tection_d%27objet.
[27] Definition de l’apprentissage automatique, consulté le 2 Aout 2023. https://fr.
wikipedia.org/wiki/Apprentissage_automatique.
[28] Definition de l’apprentissage supervisé, consulté le 2 Aout
2023. https://www.journaldunet.fr/intelligence-artificielle/
guide-de-l-intelligence-artificielle/1501311-apprentissage-supervise/.
[29] Definition de l’apprentissage profond et la vision par ordinateur, consulté le 2
Aout 2023. https://www.journaldunet.fr/web-tech/dictionnaire-de-l-iot/
1489513-computer-vision-definition-et-applications-de-la-vision-par-ordinateur/.
[30] l’apprentissage non supervisé, consulté le 2 Aout 2023. https://www.journaldunet.
fr/intelligence-artificielle/guide-de-l-intelligence-artificielle/
1501309-apprentissage-non-supervise/.
[31] Said Lazrak and Ahmer El Kaab Noureddine. Apprentissage par renforcement. 01 2017.
[32] Le réseau de neurone artificiel. consuté le 10-08-2023. https://datafranca.org/wiki/
Neuroneartificiel.
[33] Merzougui. Support cours de deep learning chapitre2. http://staff.univ-batna2.
dz/sites/default/files/merzougui_ghalia/files/support_de_cours_-deep_
learning-chapitre2-rn.pdf.
[34] Définition de l’apprentissage profond, consulté le 20 Aout
2023. https://www.journaldunet.fr/intelligence-artificielle/
guide-de-l-intelligence-artificielle/1501333-deep-learning-definition-et-principes-
[35] Fonctionnement de l’apprentissage profond, consulté le 20 Aout 2023. https://blog.
hubspot.fr/marketing/deep-learning.
[36] Les types d’algorithmes de l’apprentissage profond, consulté le 25 Aout 2023. https:
//www.jedha.co/formation-ia/algorithmes-deep-learning.
[37] Pierre Buyssens and Abderrahim Elmoataz. Réseaux de neurones convolutionnels multi-
échelle pour la classification cellulaire. In RFIA 2016, Clermont-Ferrand, France, June
2016.
[38] Opeartion de max pooling, consulté le 13 Septembre 2023. https:
//www.researchgate.net/profile/Philippe-Caudal/publication/
357670371/figure/fig52/AS:1109783595745312@1641604436183/
Operation-de-max-pooling-sur-une-carte-de-caracteristiques-Modifie-de-Gholamalinezh
png.
[39] Hounaida Nessaibia. Reconnaissance optique de caractères par réseau de neurones artifi-
ciels : Application aux scripts de la langue arabe. Master’s thesis, Université Larbi Tebessi
- Tebessa, 2020.
[40] Definition de la plaque d’immatriculation, consulté le 2 octobre 2023. https://fr.
wikipedia.org/wiki/Plaque_d%27immatriculation.
[41] D.G. Lowe. Object recognition from local scale-invariant features. In Proceedings of the
Seventh IEEE International Conference on Computer Vision, volume 2, pages 1150–1157
vol.2, 1999.
[42] Richeng Cheng. A survey : Comparison between convolutional neural network and yolo in
image identification. Journal of Physics : Conference Series, 1453(1) :012139, jan 2020.
[43] Architecture rcnn, consulté le 10 octobre 2023. https://jamiekang.github.io/media/
2017-05-27-faster-r-cnn-r-cnn-architecture.jpg.
[44] Architecture fast r-cnn, consulté le 10 octobre 2023. https://jamiekang.github.io/
media/2017-05-27-faster-r-cnn-fast-r-cnn-architecture.jpg.
[45] Architecture faster r-cnn, consulté le 10 octobre 2023. https://lilianweng.github.io/
lil-log/assets/images/faster-RCNN.png.
[46] Architecture mask r-cnn, consulté le 10 octobre 2023. 0development%20with%
20Labellerr/Mask%20R-CNN.webp.
[47] Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, Scott Reed, Cheng-Yang
Fu, and Alexander C Berg. Ssd : Single shot multibox detector. In Computer Vision–
ECCV 2016 : 14th European Conference, Amsterdam, The Netherlands, October 11–14,
2016, Proceedings, Part I 14, pages 21–37. Springer, 2016.
[48] T Zgheib, H Borges, V Feldman, T Guntz, C Di Loreto, O Desmaison, and F Corduant.
Détection d’objets en temps réel : Entraînement de réseaux de neurones convolutifs sur
images réelles et synthétiques. In Conférence Nationale en Intelligence Artificielle 2022
(CNIA 2022), Actes CNIA 2022, Saint-Etienne, France, June 2022.
[49] Lu Tan, Tianran Huangfu, Liyao Wu, and Wenying Chen. Comparison of retinanet, ssd,
and yolo v3 for real-time pill identification. BMC medical informatics and decision making,
21 :1–11, 2021.
[50] Xinbei Jiang, Tianhan Gao, Zichen Zhu, and Yukang Zhao. Real-time face mask detection
method based on yolov3. Electronics, 10(7) :837, 2021.
[51] Architecture globale yolo v4, consulté le 20 octobre 2023. https://www.
researchgate.net/profile/Monalika-Padma-Reddy/publication//figure/fig2/
/YOLOv4-architecture-YOLOv4-consists-of-three-major-components-after-image.
png.
[52] J Andrew Onesimu, Robin D Sebastian, Yuichi Sei, and Lenny Christopher. An intelli-
gent license plate detection and recognition model using deep neural networks. Annals of
Emerging Technologies in Computing (AETiC), 5(4), 2021.
[53] 2020 N. Eswar, Dr. D. Gowri Shankar Reddy. Détection de plaque d’immatriculation de
véhicule basée sur l’opération morphologique. INTERNATIONAL JOURNAL OF ENGI-
NEERING RESEARCH and TECHNOLOGY (IJERT), 09(02), 2020.
[54] Shakeel Ahmed Abdulaziz Alhumam Ruchi Singla Muhammad Fazal Ijaz Parneet Kaur,
Yogesh Kumar. Automatic license plate recognition system for vehicles using a cnn. Com-
puters, Materials, Continua, 71(1) :35–50, 2022.
[55] Zhongqiang Huang, Ping Zhang, Ruigang Liu, and Dongxu Li. Immature apple detection
method based on improved yolov3. ASP Transactions on Internet of Things, 1(1) :9–13,
2021.
[56] Ibtissam Chafia. Reconnaissance automatique des numéros de plaques d’immatriculation
marocaines. 09 2020.
[57] Rui Li and Yanpeng Wu. Improved yolo v5 wheat ear detection algorithm based on
attention mechanism. electronics, 11(11) :1673, 2022.
[58] Linfeng Jiang, Hui Liu, Hong Zhu, and Guangjian Zhang. Improved yolo v5 with balan-
ced feature pyramid and attention module for traffic sign detection. In MATEC Web of
Conferences, volume 355, page 03023. EDP Sciences, 2022.
[59] Peiyuan Jiang, Daji Ergu, Fangyao Liu, Ying Cai, and Bo Ma. A review of yolo algorithm
developments. Procedia Computer Science, 199 :1066–1073, 2022.
[60] Marko Horvat and Gordan Gledec. A comparative study of yolov5 models performance
for image localization and classification. In Central European Conference on Information
and Intelligent Systems, pages 349–356. Faculty of Organization and Informatics Varazdin,
2022.
[61] Joseph Redmon and Ali Farhadi. Yolov3 : An incremental improvement. arXiv preprint
arXiv :1804.02767, 2018.
[62] Glenn Jocher, Alex Stoken, Jirka Borovec, Liu Changyu, Adam Hogan, Laurentiu Diaconu,
Jake Poznanski, Lijun Yu, Prashant Rai, Russ Ferriday, et al. ultralytics/yolov5 : v3. 0.
Zenodo, 2020.
[63] Marko Horvat and Gordan Gledec. A comparative study of yolov5 models performance
for image localization and classification. In Central European Conference on Information
and Intelligent Systems, pages 349–356. Faculty of Organization and Informatics Varazdin,
2022.
[64] Architecture de yolov5, consulté le 6 Aout 2023. https://www.researchgate.
net/profile/Md-Shakhrul-Iman-Siam/publication/369818303/figure/fig4/AS:
11431281144474624@1681318167117/YOLOv5-Model-Architecture.png.
[65] Jacob Solawetz. Yolov5 new version-improvements and evaluation. Roboflow. Seach date,
2020.
[66] Juho Lee, Yoonho Lee, Jungtaek Kim, Adam Kosiorek, Seungjin Choi, and Yee Whye Teh.
Set transformer : A framework for attention-based permutation-invariant neural networks.
In International conference on machine learning, pages 3744–3753. PMLR, 2019.
[67] Qiaoning He, Haijian Yang, Lei Wu, and Chunxiang Hu. Effect of light intensity on physio-
logical changes, carbon allocation and neutral lipid accumulation in oleaginous microalgae.
Bioresource technology, 191 :219–228, 2015.
[68] Zhong Wang, Lei Wu, Tong Li, and Peibei Shi. A smoke detection model based on improved
yolov5. Mathematics, 10(7), 2022.
[69] Chenyang Wei, Zh Tan, Qixiang Qing, Rong Zeng, and Guilin Wen. Fast helmet and
license plate detection based on lightweight yolov5. Sensors, 23, 04 2023.
[70] Thi-Ngot Pham, Viet-Hoan Nguyen, and Jun-Ho Huh. Integration of improved yolov5 for
face mask detector and auto-labeling to generate dataset for fighting against covid-19. The
Journal of Supercomputing, 79(8) :8966–8992, 2023.
[71] Definition google colab, consulté le 10 septembre 2023. https:https://datacorner.fr/
colab/.
[72] Definition anaconda, consulté le 15 septembre 2023. https://fr.wikipedia.org/wiki/
Anaconda_(distribution_Python).
[73] Definition de l’editeur visual studiocode, consulté le 15 septembre 2023. https://fr.
wikipedia.org/wiki/Visual_Studio_Code.
[74] Younes Derfoufi. Programmation en langage python. 2019.
[75] Definition de la librairie pytorch, consulté le 15 septembre 2023. https://fr.wikipedia.
org/wiki/PyTorch.
[76] Definition de la librairie numpy, consulté le 20 septembre 2023. https://code.tutsplus.
com/fr/introducing-numpy--cms-28703t.
[77] Radja HANNOUF, Imene BOURIDANE, et al. Etude et Construction d’un Modèle d’Ap-
prentissage de l’Apparence Pour la Reconnaissance d’Objets. PhD thesis, 2015.
[78] Definition de la librairie easuocr, consulté le 20 sep-
tembre 2023. https://dontrepeatyourself.org/post/
number-plate-recognition-with-opencv-and-easyocr/.
[79] Franck Dernoncourt, Ji Young Lee, and Peter Szolovits. Neuroner : an easy-to-use program
for named-entity recognition based on neural networks. CoRR, abs/1705.05487, 2017.
[80] Nicolas P. Rougier. Visualisation scientifique avec Matplotlib. Linux Magazine France,
73 :44–55, July 2014.