Benkemouch Wiam F5
Benkemouch Wiam F5
Thése de Master
Spécialité: I n f o r m a t i q u e
Option:
Théme
June 2023.
الر ْح َمن َّ َّ
الر ِحيم ِ
الله َّ
ِ ِب ْس ِم
ِ ِ ان مِ إن عَلَ ٍق * اقإ َرأإ َو َربُّ َ ﴿ اقإرأإ بِاس ِم ربِ َ ِ
ك َرمُ * الَّذي عَلَّمَ بِا إلقَلَم * عَلَّمَ إاْلِإن َس َ
ان ك إاْلَ إ ك الَّذي خَلَ َق * خَلَ َق إاْلِإن َس ََ إ َِّ
َما لَ إم يَ إعلَم *﴾.
[سورة العلق ]5-1
الر ْح َمن َّ
الله َّ َّ ْ
يم
ِ ِ ح الر ِ ِبس ِم ِ
نن خَِير ۚ ﴾. ين أُوَُنا ا إلعِإلم دَ َرَجات َ
ۚ َواَللَّ بََِا ََ إع ََلُ َ
ِ آمنُنا مِ إن ُ
ك إم َواَلَّذ َ
ِ
﴿ يَ إرفَع اللَّ الَّذ َ
ين َ
[سورة المجادلة ]11
َّ َّ ُ َ َ َّ َ ُ ُ َّ
ول الل ِه َصلى الله عل ْي ِه َو َسل َم قال رس
كةَ لَتَضع ِ ك اللَّ ُ بِِ طَرِيقًا مِن طُر ِق ا إلجنَِّةِ َّ ، ب فِي ِ عِإل ًَاَ ،سلَ َ « َم إن َسلَ َ
ضاأَجن َحتَ َها رِ ً
وإن ا إل ََالئ َ َ ُ إ إ ُ َ ك طَرِيقًا يَطإلُ ُ
ف ا إل ََاءَِ ،وإِ َّ ض ،وا إلِحيتَان فِي جن ِ ِ ن ا إلعالِم ليستَ إغفِر لَ ُ من فِي السََّ ِ لِطَالِ ِ ِ ِ
ن َ ُ َر ِ َ اواتَ ،و َم إن في اْل إ ََ ب ا إلعإلمَ ،وإِ َّ َ َ َ إ ُ َ إ
نن ا إل ُعلَََاءَ َو َرَثَةُ اْل إَن ِيَاءَِ ،وإِ َّ فَضل ا إلعالِِم عَلَى ا إلعابِ ِد ،كَفَض ِل ا إلقََرِ لَيلَةَ ا إلِدرِ عَلَى سائِرِ ا إلكَن ِ
اك ِ
بَ ،وإِ َّ َ َ َ إ َإ إ َ إَ َ
د إر َه ًَاَ ،و َّرَثُنا ا إلعِإلمَ ،فَََ إن أَخَذَهُ أَخَذَ بَِح ٍظِّ َوافِرٍ ».
دين ارا وال ِ ِ
اْل إَن ِيَاءَ لَ إم يُ َن ِّرَِثُنا َ ً َ
خاشعا ،ورزقًا مِاركًا ،وعَالً زاكياً ُمتقًََِّال. اللَّهمَّ إنِي أسأَلُ َ ِ
نافعا ،وق لًِا ً ك علًَا ً ِّ
ربنا افتح لنا أبناب رحَتك ،وسهل لنا ما رزقتنا.
باركت فَتَمِّ وكَا ٔاََتت فثِت. َ زدت فَِارك وكَا د وكَا ِّ انعَت فَزِ إ
َ اللهمِّ كَا
الر ْح َمن َّ َّ
يم
ِ ح
ِ الر ِ
الله َّ
ِ ِب ْس ِم
دنِي عِإل ًَا ﴾.ب زِ إ ِ
﴿ َوقُ إل َر ِّ
[سورة طه ]111
Benkamouch wiam
À ma belle «Nouna»
Pour l’amour et l’affection qui nous unissent.
Je trouve en toi les conseils de la sœur et soutien de l’amie.
Tu comptes énormément pour moi.
Je prie Dieu le tout puissant de préserver notre attachement mutuel,
et d’exaucer tous nos rêves.
Merci pour vos aides, et vos supports.
À ma belle «madjeda»
Merci pour vos aides et vos supports dans les moments difficiles.
Tu comptes énormément pour moi.
Je prie Dieu le tout puissant de préserver notre attachement mutuel,
À ma belle «Lina Djihen»
Pour l’amour et l’affection qui nous unissent.
Je te dis merci et Je te dédie ce travail avec mes vœux de réussite, de
prospérité et de bonheur.
À mes chères amis .
Pour leurs soutiens moraux et vos conseils précieux tout au long de
mes études. Vous êtes pour moi des sœurs et des amies sur qui je peux
compter. En témoignage de l’amitié qui nous unit et des souvenirs de
tous les moments que nous avons passés ensemble.
I
ABSTRACT
II
LISTE DES ABRÉVIATIONS
ML Apprentissage automatique.
DL Apprentissage profond.
CNN Réseau de neurones convolutif.
SVM Support Vector Machine.
YOLO You only look once .
RNN Réseau de neurones récurrent.
LSTM Mémoire à court terme à long terme.
GRU Unité récurrente à portes.
GAN Réseau antagoniste génératif.
GPU Unité de traitement graphique .
TPU Unité de traitement de tenseurs.
Résumé I
Abstract II
III
LISTE DES MATIÈRES
Introduction générale 1
IV
LISTE DES MATIÈRES
II.1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
II.2 Définition de détection d’objets . . . . . . . . . . . . . . . . . . . . . . . . 14
II.3 L’extraction des caractéristiques d’objet . . . . . . . . . . . . . . . . . . . 15
II.3.1 Forme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
II.3.2 Couleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
II.3.3 La texture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
II.4 Apprentissage automatique(machine learning) . . . . . . . . . . . . . . . . 15
II.4.1 Support Vector Machine (SVM) . . . . . . . . . . . . . . . . . . . . 16
II.4.2 K-Nearest Neighbors (kNN) . . . . . . . . . . . . . . . . . . . . . . 17
II.5 Apprentissage profond (deep learning) . . . . . . . . . . . . . . . . . . . . 17
II.5.1 Convolution Neural Network(CNN) . . . . . . . . . . . . . . . . . . 18
II.5.2 You only look once : YOLO . . . . . . . . . . . . . . . . . . . . . . 18
II.6 Comparison entre les versions YOLO . . . . . . . . . . . . . . . . . . . . . 19
II.6.1 Les réseaux de capsules (Caps Nets) . . . . . . . . . . . . . . . . . 19
II.6.2 Réseaux neuronaux récurrents(RNN) . . . . . . . . . . . . . . . . . 20
II.6.3 Réseaux de neurones génératifs adverses (GAN) . . . . . . . . . . . 20
II.7 déférence entre machine Learning et deep Learning . . . . . . . . . . . . . 20
II.8 CONCLUSION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
V
LISTE DES MATIÈRES
CONCLUSION GENERAL 39
VI
List of Figures
VII
LIST OF FIGURES
III.12détection avec ML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
VIII
List of Tables
II.1 Les différences entr versions de YOLO (You Only Look Once) . . . . . . . 19
II.2 les différences entre Machine learning et deep Learning . . . . . . . . . . . 21
IX
INTRODUCTION GÉNÉRALE
Afin de faciliter le processus de conduite et d’éviter les accidents de la route, qui sont de-
venus incrémentales ces derniers temps, et qui sont devenus dangereux pour la vie humaine
en général et pour la vie des enfants en particulier, donc un être humain fait une grande
attention dans la recherche d’une solution appropriée pour sortir de ce problème ou au
moins de le minimiser.
Alors la solution est de franchir le domaine de la vision par ordinateur que nous étudions et
utilisons pour identifier ce type d’images. Le transport routier est le mode de transport le
plus utilisé générant ainsi un trafic important qui ne cesse d’augmenter. Malheureusement,
cette augmentation du trafic routier a des conséquences sur la santé publique. Cependant,
le facteur humain représente la première cause des accidents. C’est pourquoi l’intégration
de systèmes d’aide à la conduite est cruciale lors de la conception de nouveaux véhicules.
Le présent mémoire se situe dans le contexte de l’analyse d’images numériques appliquée a
la détection d’objet au trafic routier. Les avancées récentes en matière de vision par ordi-
nateur et le deep learning ont permis d’obtenir des résultats promoteurs dans ce domaine.
Notre travail consiste à implémenter deux systèmes de nature différente (Machine Learning
et Deep Learning) qui permettent de détecter les véhicules à partir d’une vidéo. Le but de
ce travail c’est de faire une comparaison entre apprentissage automatique et profond. Pour
cela nous avons implémenté trois algorithmes. Le premier algorithme est le modèle SVM en
utilisant différents types de caractéristiques. Les deux autres algorithmes d’apprentissage
profond se manifestent par le modèle personnalisé, de YOLOv5 et YOLOv8, pour la dé-
tection des véhicules.
Le manuscrit est organisé de la manière suivante:
1
CHAPTER I
IMAGE NUMÉRIQUE
2
Chapitre1 Image numérique
qu’elle représente (une infinité de valeurs dans l’intensité lumineuse par exemple), à l’état
d’image numérique qui est caractérisée par l’aspect discret (l’intensité lumineuse ne peut
prendre que des valeurs quantifiées en un nombre fini de points distincts). C’est cette forme
numérique qui permet une exploitation ultérieure par des outils logiciels sur ordinateur [14].
I.1.2 Définition 2
L’image est d’abord un signal 2D (x, y), généralement cette image représente la réalité 3
(x, y, z).
D’un point de vue mathématique :
I.2.1 La résolution
La résolution de l’image est le nombre de pixels par unité de longueur. Elle s’exprime en
(pixel par pouce). Ainsi, la résolution peut établir la relation entre la définition en pixels.
D’une image et sa taille réelle représentée sur le support physique[8]
3
Chapitre1 Image numérique
I.2.3 voisinage
La surface de l’image est représentée par un ensemble de surfaces rectangulaires Deux types
de quartiers sont distingués :
I.2.4 Le contraste
Le contraste est une propriété inhérente aux images qui quantifie.
La luminosité entre les parties claires et sombres d’une image.
4
Chapitre1 Image numérique
• Images à faible contraste: avec une faible plage dynamique, la plupart des pixels.
ont des valeurs de niveaux de gris très proches [8].
Dans une image, le bruit est toute fluctuation parasite ou dégradation que subit l’image
de l’instant de son acquisition jusqu’à son enregistrement à cause de variation de l’intensité
d’un pixel par rapport à ses voisins. Ce qui donne certains défauts (petits nuages, poussiére
et la diminution de l’intensité électrique sur les capteurs), Les sources de bruit sont multi-
ples, certaines sont physiques liées à la qualité de l’éclairage de la scéne, et électroniques
liées à la stabilité du capteur de l’image durant l’acquise[5].
I.2.5 Le Contour
Le contour est la frontiére qui sépare des objets dans une image qui ont des pixels dont
les niveaux de gris différents, ou la limite des objets qui marquant des changements
d’intensité[5].
I.2.6 Histogramme
La distribution et la présentation des histogrammes en niveaux de gris ou en couleur
dépendent de l’image.
Cela concerne la vitesse à laquelle chaque nuance de gris (couleur) se manifeste dans l’image
exposée. Fournit un aperçu complet de la dispersion des couleurs en niveaux de gris.
5
Chapitre1 Image numérique
On peut facilement observer la gamme dans laquelle les couleurs en niveaux de gris sont
distribuées.
Dans les situations où l’image apparaît excessivement sombre[6].
6
Chapitre1 Image numérique
7
Chapitre1 Image numérique
Elle est composée de différents objets repérés par leurs coordonnées et comportant différents
attributs (bordure, fond, forme, coordonnées). Leur avantage c’est qu’elles peuvent etre
facilement redimensionnées. Leur codage dépend directement du logiciel qui a permis de
les créer[14].
Une image matricielle, ou � carte de points (de l’anglais bitmap � est composée comme son
nom l’indique d’une matrice (tableau) de points à plusieurs dimensions, chaque dimen-
sion représente une dimension spatiale (hauteur, largeur), ou autres (niveau de résolution).
Dans le cas des images à deux dimensions, les points sont appelés pixels[14].
L’espace d’acquisition et de sauvegarde des images est basé sur l’espace couleur RGB.
L’acquisition utilise cet espace pour des raisons techniques évidentes dues aux capteurs de
8
Chapitre1 Image numérique
Image matriciel
• Prise en charge des images • Les fichiers peuvent être volu-
complexes avec des variations mineux, ce qui peut poser des
de couleur et de texture détail- problèmes de stockage et de
lées. transmission.
type RGB.
Le triangle de Maxwell représenté dans l’espace RGB est le triangle reliant les trois couleurs
pures Rouge, Vert et Bleu. Il nous permettra ainsi de suivre les différentes distorsions dues
aux changements d’espaces couleur[9].
Le système Lab est de CIE XYZ. il essaie de prendre en compte la réponse Logarithmique
à l’œil, il a l’énorme avantage d’être uniforme. C’est très utile Par exemple, des mélanges
de pigments pour le graphisme ou l’industrie textile[9].
9
Chapitre1 Image numérique
I.5.1 Acquisition
L’acquisition d’images est l’un des maillons essentiels de toute chaîne de conception et de
production d’images.Pour pouvoir manipuler une image sur un système informatique, il
faut d’abord la convertir pour qu’elle devienne.
Le système est lisible et utilisable.Cette opération est effectuée par le système d’entrée
peuvent être divisés en deux catégories : les appareils photo numériques et scanner[16]
10
Chapitre1 Image numérique
I.5.2 Segmentation
La segmentation consiste à regrouper tous les pixels d’une image en différents groupes,
en évaluant chaque groupe selon des critères d’homogénéité. L’objectif de cette technique
de traitement d’image est de séparer de manière précise les différents objets présents dans
l’image traitée, afin d’extraire les informations qu’elle contient. Il existe plusieurs méthodes
et approches pour effectuer la segmentation d’image[10].
Les méthodes de segmentetion
I.5.3 Filtrage
Le principe du filtrage consiste à modifier les valeurs des pixels d’une image, généralement
dans le but d’améliorer son apparence. En réalité, cela implique la création d’une nouvelle
image en utilisant les valeurs de pixels de l’image d’origine. Plusieurs filtres sont appliqués,
effectuant différents traitements en fonction des besoins de l’analyse. Un exemple de filtrage
d’image est l’utilisation d’un filtre pour supprimer le bruit présent dans l’image en éliminant
les pixels bruités[11].
11
Chapitre1 Image numérique
Figure I.14: Figure I.14: Exemple de filtrage d’une image bruitée ( à gauche l’image
d’origine, à droitel’image filtrée) [11].
I.6.3 La robotique
l’imagerie connaît un développement majeur dans plusieurs domaines, notamment l’assemblage
de pièces mécaniques, les composants électroniques, le contrôle de qualité et la robo-
tique mobile. Ces domaines tirent parti de l’imagerie pour effectuer des tâches telles
que l’assemblage précis de pièces, la vérification de la qualité des produits et l’utilisation
d’images pour la navigation et la perception dans les robots mobiles[10].
I.6.4 La télésurveillance
Exemple, radar automatique : recherche en temps réel d’un véhicule par reconnaissance
de son immatriculation parmi un flot de véhicules circulant sur le boulevard périphérique
par caméra fixe [10].
12
Chapitre1 Image numérique
I.7 CONCLUSION
Dans ce chapitre, nous avons présenté une masse importante d’informations concernant le
domaine de traitement d’image. Dans ce qui suit, nous allons entamer la détection d’objet
ainsi que ses différentes techniques.
13
CHAPTER II
II.1 INTRODUCTION
La vision par ordinateur est une branche d’intelligence artificielle dont le but est de per-
mettre à une machine de comprendre ce qu’elle «voit». Elle peut servir à la reconnaissance
de formes, qui consiste à reconnaitre une forme dans une image après l’avoir enregistrée.
La détection et le suivi d’objets est l’un des problèmes les plus étudiés ces dernières an-
nées. Ce sont des tâches importantes et difficiles dans de nombreuses applications de vision
par ordinateurs tels que robots et vidéosurveillance. Dans ce chapitre, nous abordons les
concepts de base en relation avec la détection des objets et les différentes techniques et
algorithmes de Machine Learning et Deep Learning.
14
Chapitre 2 Détection des objets
II.3.1 Forme
Les caractéristiques de forme sont importantes car elles fournissent une autre façon de
décrire un objet, en utilisant ses caractéristiques les plus importantes et en réduisant la
quantité d’informations stockées [18].
Histogramme de gradient orienté (HOG) L’idée importante derrière le descrip-
teur HOG est que l’apparence et la forme locale des objets dans une image peuvent être
décrites par la distribution d’intensité du gradient ou la direction des bords [?].
Dans notre projet, nous utilisons HOG comme caractéristiques pour la détection de forme
(véhicule).
II.3.2 Couleur
Les caractéristiques de couleur nous permettent d’identifier la plupart des images et les ob-
jets incluent ceci. Par conséquent, ils sont définis comme des caractéristiques essentielles
du contenu image [19].
L’histogramme des couleurs L’histogramme des couleurs est la technique la plus large-
ment utilisée pour extraire la caractéristique couleur d’une image. Il représente l’image
sous un autre angle. Il représente la distribution de fréquence des bacs de couleur dans
une image. Il compte les pixels similaires et les stocke [20]. Ce travail utilise ce principe
de description pour l’extraction des caractéristiques de couleur.
II.3.3 La texture
La texture est une caractéristique utilisée pour diviser une image en régions d’intérêt et
pour classer ces régions. La texture fournit des informations sur la disposition spatiale des
couleurs ou des intensités dans une image. Elle se caractérisée par la distribution spatiale
des niveaux d’intensité[21].
15
Chapitre 2 Détection des objets
• Que l’on sait résoudre, mais dont on ne sait formaliser en termes algorithmiques
comment nous les résolvons (c’est le cas par exemple de la reconnaissance d’images
ou de la compréhension du langage naturel).
• Que l’on sache résoudre, mais avec des procédures beaucoup trop gourmandes en
ressources.informatiques (c’est le cas par exemple de la prédiction d’interactions entre
molécules de grande taille, pour lesquelles les simulations sont très lourdes).
Machine Learning englobe beaucoup de techniques où nous citons dans ce qui suit les plus
utilisées.
16
Chapitre 2 Détection des objets
17
Chapitre 2 Détection des objets
ce qui suit, nous citons les algorithmes de Deep learning les plus utilisés.
18
Chapitre 2 Détection des objets
Table II.1: Les différences entr versions de YOLO (You Only Look Once) .
19
Chapitre 2 Détection des objets
tion. Ce vecteur est similaire à ce qui est fait par exemple lors de la classification avec
localisation dans les CNN [28].
II.8 CONCLUSION
Dans ce chapitre nous avons exposé les techniques les plus connus de l’apprentissage au-
tomatique et profond. Dans le chapitre suivant nous procédons a l’implémentation de
l’algorithme SVM (Machine Learning) et deux autre algorithmes YOLOv5 YOLOv8 (Deep
Learning) a fin de comparer et discuter leurs résultats.
20
Chapitre 2 Détection des objets
21
CHAPTER III
CONCEPTION ET IMPLIMENTATION
III.1 Introduction
Dans ce projet, j’ai implémenté trois algorithmes pour détecter la présence de véhicules
dans le trafic routier. Les deux premiers algorithmes sont basés sur le Deep Learning, où
j’ai utilisé les modèles YOLOV5 et YOLOV8 pour l’apprentissage approfondi. Le troisième
algorithme est basé sur l’apprentissage automatique (Machine Learning), avec l’utilisation
du modèle SVM.
Initialement, j’ai commencé la réalisation de cette application en utilisant le langage
Python.Cependant, les performances de mon ordinateur ne m’ont pas permis d’obtenir
des résultats satisfaisants en termes de taux d’apprentissage. Par conséquent, j’ai décidé
de réfléchir à un environnement d’exécution virtuel, en optant pour Google Colab. Dans
la suite, je présenterai l’environnement de programmation utilisé, les ressources et les bib-
liothèques mises en œuvre.
On a réalisé ces deux systèmes en utilisant le langage Python avec Jupyter. Toutefois, en
ce qui concerne le système de Deep Learning, les performances de mon ordinateur ne nous
ont pas permis d’obtenir des résultats satisfaisants en termes de taux d’apprentissage. Par
conséquent, nous avons pris la décision de passer à un espace d’exécution virtuel, à savoir
Google Colab.
Nous clôturons ce travail en présentant les résultats obtenus et en effectuant une compara-
22
CHAPTER 3 Conception et Implimentation
III.2.1 Jupyter
Jupyter [33] est une application web open-source qui permet de créer et de partager des
documents qui contiennent du code en direct, des équations, des visualisations et du texte
narratif. Les utilisations courantes incluent le nettoyage et la transformation de don-
nées, la simulation numérique, la modélisation statistique, la visualisation de données,
l’apprentissage automatique et bien plus encore.
23
CHAPTER 3 Conception et Implimentation
III.2.3 Python
III.2.4.1 OpenCV
Est une immense bibliothèque open source pour la vision par ordinateur, l’apprentissage
automatique et le traitement d’images. OpenCV prend en charge une grande variété de
langages de programmation comme Python, C++, Java, etc.
Il peut traiter des images et des vidéos pour identifier des objets, des visages, ou même
l’écriture d’un humain. Lorsqu’il est intégré à diverses bibliothèques, comme Numpy qui
est une bibliothèque hautement optimisée pour les opérations numériques , alors le nombre
24
CHAPTER 3 Conception et Implimentation
d’armes augmente dans votre Arsenal, c’est-à-dire que toutes les opérations que l’on peut
faire dans Numpy peuvent être combinées avec OpenCV [37].
III.2.4.2 SciPy
SciPy est une bibliothèque open-source pour le calcul scientifique en Python. Elle of-
fre des fonctionnalités avancées pour la manipulation de tableaux multidimensionnels,
l’optimisation numérique, l’algèbre linéaire, l’intégration numérique, l’interpolation, l’optimisation,
le traitement du signal et bien d’autres domaines des mathématiques et de la science [38].
• RAM : 4GB.
Nous tenons a mentionner que nous avons rencontré des limites lors de l’implémentation
du Deep Learning :
• Problème de connexion .
• L’accès à google colab n’est pas disponible tout le temps. il nous limite dans le
temps,si nous l’utilisons souvent il nous fait un ban 24h dans ce cas nous pouvons
pas accéder au GPU.
Le système englobe deux algorithmes pour détecter la présence des véhicules dans le trafic
routier. Le premier algorithme est basé sur le Deep Learning ou nous proposons d’utiliser le
modèle YOLOV5 et YOLOV8 pour faire l’apprentissage profond.Le deuxième algorithme
25
CHAPTER 3 Conception et Implimentation
est basé sur l’apprentissage automatique (Machine Learning) ou nous avons adopté le
modèle SVM.
Dans le système de détection des véhicules basé sur DL, nous formons un modèle de
détection des véhicules personnalisé basé sur un modèle de détection des objets YOLOv5
et un modèle de détection des objets YOLOv8.
L’architecture de YOLO v5 est basée sur des couches de convolutions profondes, qui ex-
traient des caractéristiques de l’image à différentes échelles et résolutions. Ces caractéris-
tiques sont ensuite utilisées pour prédire les boîtes englobantes et les classes d’objets.
YOLOV5 utilise également des techniques d’augmentation de données pour améliorer les
performances de détection et réduire le sur apprentissage.
Algorithme de YOLOv5:
26
CHAPTER 3 Conception et Implimentation
• Évaluation du modèle : Une fois que l’entraînement est terminé, vous pouvez
évaluer les performances du modèle YOLOv5 sur un ensemble de données de test
distinct. Cela permet de mesurer la précision, le rappel, la F-mesure et d’autres
métriques pour évaluer la qualité de la détection d’objets.
L’architecture de YOLOv5
Est basée sur un réseau de neurones convolutifs profond avec une structure en ”backbone”
et une ”head” de détection.
• Configuration du YOLO avec la dataset : Maintenant que nous avons créer nos
ensembles de données d’apprentissage et test, nous devons apporter des changements
pour former notre modèle personnalisé de YOLO. Pour cela, nous choisissons le
modèle de base le plus rapide de YOLOv5.
• Apprentissage (YOLOv5)
27
CHAPTER 3 Conception et Implimentation
28
CHAPTER 3 Conception et Implimentation
• Inférence : Utilisez le modèle entraîné pour effectuer des prédictions sur de nou-
velles images ou vidéos en utilisant les méthodes de détection d’objets de YOLOv8,
généralement basées sur la prédiction des boîtes englobantes et des classes d’objets.
Les étapes de l’algorithme DL basée sur YOLOV8 sont les suivantes :
– Colléction des données, et le choix des objets à détecter. Dans ce cas nous
détectons les véhicules.
• Apprentissage (YOLOv8)
29
CHAPTER 3 Conception et Implimentation
Dans ce système de détection des véhicules basé sur ML, nous avons adopté SVM avec
un noyau linéaire pour l’apprentissage du modèle. Il est basé sur l’extraction et ensuite la
combinaison de trois caractéristiques différentes :
HOG qui est la principale caractéristiques, l’histogramme de couleur et lescaractéris-
tiques spatiales. L’algorithme est basé sur les principales étapes suivantes :
• Redimention des images de la base des images des véhicules à 64x64 pixels.
Le schéma de description du système basé sur ML est illustré dans la figure III.5.
30
CHAPTER 3 Conception et Implimentation
Dans cette section, nous détaillions sur les trois types de caractéristiques que nous les ex-
trairons depuis la base d’images (ou l’image d’entée).
Le déscripteur final va permettre d’extraire 5168 caractéristiques.
Un exemple d’exécution d’un système de Machine Learning dans un environnement Jupyter
Notebook.
La figure III.6 c’est un extraction des caractéristiques .
31
CHAPTER 3 Conception et Implimentation
Paramètre Valeur
Taille de cellule 8x8
Taille de bloc 2x2
HOG classes (orientations) 20
Chaque pixel d’une cellule de 8x8 pixels contribue au vote pour l’une des 20 classes de
l’histogramme, en fonction de l’orientation du gradient à ce point. Le poids du vote du
pixel est déterminé par l’intensité du gradient en ce point. Afin de réduire les disparités
causées par les variations d’illumination, nous regroupons plusieurs cellules dans un bloc
de 2x2 cellules.
Lorsque nous travaillons avec une image d’entrée de taille 64x64, nous parcourons les
blocs horizontalement et verticalement. Chaque bloc est composé de 4 cellules. En excluant
le dernier bloc, le nombre total de blocs est égal à (8 blocs - 1) * (8 blocs - 1). Pour chaque
cellule, nous obtenons un vecteur de taille 20 en votant pour une classe d’histogramme en
fonction de l’orientation du gradient de ses pixels. En multipliant le nombre de blocs par
le nombre de cellules par bloc par la taille du vecteur de classe (20), nous obtenons un
vecteur final de taille 3920. Ce vecteur capture les informations importantes extraites de
32
CHAPTER 3 Conception et Implimentation
III.3.2.2 Apprentissage
Nous utilisons l’algorithme supervisé Support Vector Machine (SVM) pour l’apprentissage
du modèle de classification. Le noyau de SVM sera linéaire avec 1000 comme valeur de
hyperparamètre C.
33
CHAPTER 3 Conception et Implimentation
Notre système est composé de trois espaces : espace YOLOV5, YOLOV8 et Machine
Learning .
Dans ce qui suit, nous allons donner un scenario d’utilisation des différentes modéle de
notre système.
III.4.1 Intarface
34
CHAPTER 3 Conception et Implimentation
La figure III.12 suivante présente l’espace de detection avac machine Learning (SVM).
Pour l’expérimentation de notre système, nous avons comparé les performances des deux
systèmes implémentés.
La clé d’une comparaison équitable des algorithmes de ML/DL est de s’assurer que chaque
algorithme est évalué de la même manière sur les mêmes données.
Le critère de comparaison utilisé ici est le taux de reconnaissance (accuracy) calculé par la
formule suivante :
N umberof correctpredictions
accuracy =
T otalnumberof predictionsmade
35
CHAPTER 3 Conception et Implimentation
Le modèle sera entréné sur tous les images de la base de données Udacity[39] .
Elle contient 8799 images de véhicules vus sous différents angles et 8971 images de non-
véhicules (route, autoroutes, garde-corps, etc.). Ces exemples d’images proviennent d’une
combinaison de la base de données d’images de véhicules GTI [?] et KITTI [40].
III.7 Expérimentation
36
CHAPTER 3 Conception et Implimentation
III.8 Résultats
Les résultats de l’évaluation du système ML proposé sont présentés dans le tableau III.3
les critères utilisés pour la comparaison comprennent la taille du vecteur de caractéris-
tiques, le temps d’extraction des caractéristiques, le temps d’apprentissage et le taux de
reconnaissance (Accuracy). Les performances de notre algorithme de classification SVM
peuvent être résumées dans la matrice de confusion, qui est illustrée dans le tableau III.2.
Non-véhicule véhicule
Non-véhicule 1745 13
véhicule 31 1763
37
CHAPTER 3 Conception et Implimentation
• Deux caractéristiques sur trois sont les plus fortes : HOG et spatial. La combinaison
de ces deux donne un taux de 98.28% proche de l’optimale.
Avec le système Deep Learning. Nous avons beaucoup de résultats à mettre dans ce
mémoire.
Cependant,nous avons trouvé un taux de reconnaissance égale à 98.81%.
Les résultats de l’évaluation du système DL avec modele de YOLOV5 sont présentés dans
le tableau III.4.
38
CHAPTER 3 conclusion general
Les résultats de l’évaluation du système DL avec modele de YOLOV8 sont présentés dans
le tableau III.5.
Une comparaison entre nos deux systèmes est-il raisonnable ? Malgré que le taux
de reconnaissance dans les deux systèmes est presque le même, la comparaison entre ces
deux systèmes n’est pas raisonnable. Le système à base DL est clairement surperformé
car notre modèle Custom YOLOv3 est déja préentrainé sur la base de données COCO [41]
(parmi eux, il y a 12786 images contient des véhicules).
III.9 Conclusion
Dans ce chapitre, nous avons décri les trois conceptions que nous avons proposées pour la
détection des véhicules. Pour les deux architectures de Deep Learning nous avons person-
nalisé le modèle deYOLOv5 et YOLOV8 .Mais concernant le machine learning, nous avons
combiné trois types de caractéristiques, pour la détection des véhicules.
Ensuite, nous avons implémenté nos deux systèmes pour faire l’expérimentation. A partir
de cette dernière, ont peut conclure le modèle YOLOv 5 ou YOLOv 8 est performant par
rapport modèle ML, car il est déjà prérentrée sur un grand nombre de véhicules.
Dans le système basé sur ML, on peut aussi conclure que la combinaison des trois carac-
téristiques améliore la performance du modèle SVM et surtout la combinaison de HOG et
les caractéristiques spatiales, avec moins d’influence de l’histogramme de couleurs.
39
CONCLUSION GENERAL
Dans ce projet de fin d’études, nous nous sommes intéressés à la détection des véhicules dans
le trafic routier et avons mis en œuvre deux systèmes : le premier basé sur l’apprentissage
automatique (Machine Learning) et le deuxième basé sur l’apprentissage profond (Deep
Learning). Les expérimentations réalisées nous ont permis de tirer les conclusions suivantes:
Les connaissances acquises au cours de ce projet de fin d’études se situent dans deux
dimensions :
• Sur le plan théorique : Nous avons acquis une maîtrise des concepts de base dans
les domaines de l’apprentissage automatique et du traitement d’images, qui étaient
nouveaux pour nous et n’ont pas été étudiés au cours de nos trois années de licence.
40
CHAPTER 3 conclusion general
41
REFERENCES
[5] H. Yacine and M. Silia, Véhicule intelligent pour la détection des plaques
d’immatriculation suspectes. PhD thesis, Université Mouloud Mammeri, 2019.
42
CHAPTER 3 conclusion general
[12] B. Khadidja, Interface Design for Human Pose Estimation. PhD thesis, Universite
mohamed boudiaf’des sciences et de la technologie d’oran, 2015.
[16] M. Nadia, ANALYSE DES IMAGES MEDICALES PAR DES TECHNIQUES HY-
BRIDES. PhD thesis, Universite mohamed boudiaf’des sciences et de la technologie
d’oran, 2014.
[17] R. Girshick, J. Donahue, T. Darrell, and J. Malik, “Rich feature hierarchies for accu-
rate object detection and semantic segmentation,” in Proceedings of the IEEE confer-
ence on computer vision and pattern recognition, pp. 580–587, 2014.
[18] G. Farin, B. Hamann, and H. Hagen, Hierarchical and geometrical methods in scientific
visualization. Springer Science & Business Media, 2003.
[19] A. J. Afifi and W. M. Ashour, “Image retrieval based on content using color feature,”
International Scholarly Research Notices, vol. 2012, 2012.
[22] G. Zaccone and M. R. Karim, “Ahmed menshawy deep learning with tensorflow,”
Birmingham: Packt Publishing, 2017.
43
CHAPTER 3 conclusion general
[26] G. Karimi, “Introduction to yolo algorithm for object detection,” S ection. io.
https://www. section. io/engineering education/introduction-to-yolo-algorithm-for-
objectdetection/(accessed May 7, 2021), 2021.
[29] A. Graves, A.-r. Mohamed, and G. Hinton, “Speech recognition with deep recurrent
neural networks,” in 2013 IEEE international conference on acoustics, speech and
signal processing, pp. 6645–6649, Ieee, 2013.
[31] T. M. Mitchell, “Does machine learning really work?,” AI magazine, vol. 18, no. 3,
pp. 11–11, 1997.
[32] I. Goodfellow, Y. Bengio, and A. Courville, Deep learning. MIT press, 2016.
[36] G. Van Rossum, B. Warsaw, and N. Coghlan, “Pep 8–style guide for python code,”
Python. org, vol. 1565, p. 28, 2001.
44
CHAPTER 3 REFERENCES
[40] A. Geiger, P. Lenz, and R. Urtasun, “Are we ready for autonomous driving? the kitti
vision benchmark suite,” in 2012 IEEE conference on computer vision and pattern
recognition, pp. 3354–3361, IEEE, 2012.
[41] T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollár, and
C. L. Zitnick, “Microsoft coco: Common objects in context,” in Computer Vision–
ECCV 2014: 13th European Conference, Zurich, Switzerland, September 6-12, 2014,
Proceedings, Part V 13, pp. 740–755, Springer, 2014.
45