Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 73 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
73
Dung lượng
3,53 MB
Nội dung
UNIVERSITE NATIONALE DU VIETNAM, HANOI INSTITUT FRANCOPHONE INTERNATIONAL JOHN BENSON LOUIS Améliorations d’un algorithme de détection de mobilier urbain utilisant des approches de Deep Learning pour la navigation autonome de véhicules Cải tiến thuật toán phát đồ nội thất đường phố cách sử dụng phương pháp Deep Learning để điều hướng phương tiện tư động MÉMOIRE DE FIN D’ÉTUDES DU MASTER INFORMATIQUE Je, soussigné Dr Damien Vivet, donne accord John Benson Louis, Pour présenter ce manuscrit et soutenir son stage HANOI – 2019 UNIVERSITE NATIONALE DU VIETNAM, HANOI INSTITUT FRANCOPHONE INTERNATIONAL JOHN BENSON LOUIS Améliorations d’un algorithme de détection de mobilier urbain utilisant des approches de Deep Learning pour la navigation autonome de véhicules Cải tiến thuật toán phát đồ nội thất đường phố cách sử dụng phương pháp Deep Learning để điều hướng phương tiện tư động Spécialité : Systèmes Intelligents et Multimédia Code : Programme pilote MÉMOIRE DE FIN D’ÉTUDES DU MASTER INFORMATIQUE Sous la direction de : Dr Damien VIVET, ingénieur chercheur l’ISAE-SUPAERO Emir HRUSTIC, Doctorant l’ISAE-SUPAERO HANOI – 2019 Attestation sur l’honneur J’atteste sur l’honneur que ce mémoire a été réalisé par moi-même et que les données et les résultats qui y sont présentés sont exacts et n’ont jamais été publiés ailleurs La source des informations citées dans ce mémoire a bien été précisée Signature de l’étudiant JOHN BENSON LOUIS Remerciements ! En premier lieu, je tiens remercier DIEU le tout puissant et miséricordieux, qui m’a donné la force et la patience d’accomplir ce Modeste travail En second lieu, je tiens remercier mes mtres de stage, M Damien VIVET, Ingénieur de chercheur au LAB de recherche de l’ISAE-SUPAERO, et Emir HRUSTIC, Doctorant au même LAB Un grand merci pour leur accueil chaleureux au sein l’équipe du Laboratoire de recherche de L’ISAE-SUPAERO, ainsi que pour leur patience et leurs précieux conseils Ils m’ont beaucoup appris sur les défis qu’un encadrant doit relever au quotidien Je désire aussi remercier les professeurs de l‘Institut Francophone International et de l’Université de La Rochelle, qui m’ont fourni les outils nécessaires au bon déroulement de mon stage Je tiens particulièrement remercier M Ho Tuong Vinh, enseignant-chercheur, Institut Francophone International, Université Nationale du Vietnam qui fut le premier me soutenir dans ma démarche de recherche de stage Un grand merci ma mère Mme Aline O LOUIS et mon père Rebert LOUIS, pour leurs conseils, ainsi que pour leur soutien inconditionnel, la fois moral et économique Pour finir, je voudrais remercier tous mes amis proches, pour ses conseils avisés sur la rédaction de ce rapport de stage et aussi remercier tous les autres personnes qui m’ont bien supporté durant ce long parcours Liste des abréviations IA : intelligence Artificielle CNN : Convolutional Neural Network = réseau de neurones convolutif GTSDB: German Traffic Sign Detection Database BTSDN: Belgian Traffic Sign Detection Network MAP: Mean Average Precision FPN: Feature Pyramid Networks OD: Object Detection IUO: Intersection over Union TP: True Positive FP: False Positive MAP: Mean average Precision Abstract The work presented in the remainder of this manuscript deals with the implementation of an object detection algorithms, specifically for urban traffic signs, in real time using algorithms from computer vision and the architectures of Deeplearning The latter, thus allowing the detection and recognition of road signs, with the ultimate goal of using its information for the purpose of tracking for a self-contained car We begin with a study of the state of the art, the existing approaches and techniques related to object detection by looking at on algorithms for extracting features ranging from the less recent such as Histograms of Oriented Gradients through the algorithms of Convolutional neural Network The approach adopted at the end of this work consists in using neural networks Convolutional, precisely, the Retinanet architecture with the resnet50 backbone, for the detection of road signs This is a solution that is justified largely by the low resources available in terms of computing capacity, data for automatic and time learning of the detection process The results obtained with the implanted platform prototype are promising since they testify to the effectiveness of the architecture chosen The results can be further improved in terms of detection particularly by building a more suitable database Table des matières Remerciements Résumé CHAPITRE I Introduction Générale …………………………………………………………… 11 1.1 Contexte et cadre d’étude ……………………………………………… 11 1.2 Objectifs du stage ……………………………………………………… 11 1.3 ISAE-SUPAERO …………………………………………………….… 11 CHAPITRE II Etat de l’art …………………………………………………………………….… 13 2.1 2.2 2.3 2.4 2.5 Introduction …………………………………………………… ………13 Spécification technologique…………………………………………… 14 Intelligence Artificielle … …………………………………………… 14 Apprentissage Automatique …………………………………………… 14 Réseaux de Neurones ………………………………………………… 17 2.5.1 Apprentissage profond ………………………………………… 18 2.6 Méthodes d’extraction de caractéristiques et de classification ………… 20 2.6.1 Algorithmes d’extraction de caractéristiques ………………… 20 2.6.2 Méthodes de classification ………………………………………24 2.7 Approche détection …………………………………………………… 28 2.5.1 Détection sans apprentissage profond ………………………… 28 2.5.2 Détection avec apprentissage profond ……………………… 28 2.8 Méthodes de recherche et de localisation d’objets…………………….… 35 CHAPITRE III Méthodes et approche retenue ……………………………………………….… 37 3.1 Introduction …………………………………………….………………… 37 3.2 Architecture retenu et justification de choix …………………………… 37 3.3 Justification de choix ……………………………………………………… 37 CHAPITRE IV Expérimentations et Résultats ………………… ………………………………… 40 4.1 Introduction … …………………………………………………… 40 4.2 Dataset utilisé ……………………… …………………………… … 40 4.2.1 GTSDB …… ……………………………………………………… 40 4.2.2 BTSDN ………………………………………………………… … 41 4.3 Préparation de données …………………………………………………… 41 4.3.1 Visualisation des données …………………………………………… 42 4.3.2 Fusionner les deux Datasets …… ………………………………… 42 4.4 Matériels Informatique utilisés …………………………………………… 48 4.5 Architecture et paramètres utilisé ………………………………………… 48 4.5.1 Spécification Architectural………………………………………… 48 4.5.2 Backbone …………………………………………………………… 49 4.5.3 Perte Focal (Focal Loss (FL)) ……………………………………… 49 4.5.4 paramètres utilisés …………………………………………………… 50 4.6 Resultats obtenues ………………………………………………………… 51 4.7 Analyse des résultats …………………………………………………….… 58 CHAPITRE V 4.8 Conclusion ………………………… ……………………………………… 60 Conclusion et perspective Bibliographie Table des figures Fig : Spécification Technologique …………………………………………………… 13 Fig : Apprentissage Automatique ………………………………………… ………… 13 Fig Modèle ……………………………………………………………………… …… 14 Fig : Apprentissage supervisé ………………………………………………………… 14 Fig.5 : Apprentissage non-supervisé……………………………………………… …… 15 Fig.6 : Apprentissage Par renforcement………………………….…………… ….…… 15 Fig 7: Classifieur / Régresseur ………………………………………………………… 16 Fig.8 : Représentation d’un Réseau de neurone ………………………………….……… 17 Fig Processus générique de détection automatique d’objets ………………….……… 19 Fig 10 : Caractéristiques pseudo-Haar ………………………………………….……… 20 Fig 11: Algorithme SIFT (Source=http://www.cs.ubc.ca/~lowe/keypoints) ……… ……21 Fig 12: Structure HOG (Histograms of Oriented Gradients) …………………………… 22 Fig 13 : Représentation de vecteurs caractéristiques et l’ensemble des classes Associées…………………………… …… ……… …………………………….…… 24 Fig 14 : (MLP) Multi Layer Perceptron ……………………….……………………………………………… 25 Fig 15 : Réseaux de Neurones profonds ………………………………………………… 25 Fig 16 Illustration de l'application d'un noyau sur la carte de caractéristiques en entrée pour générer la sortie ………………………………………………………… 25 Fig.17 : Architecture classique d’un réseau de neurone ……………………………… 26 Fig 18 The architecture of R-CNN (Image source: Girshick et al 2014) … 27 Fig 19 : Illustration de la transformation entre les btes englobant la vérité prédite et la vérité terrain ……… ……………………………………………… 28 Fig 20 : L'architecture de Fast R-CNN (Source de l'image: Girshick, 2015) …….… … 29 Fig 21: Architecture of Fast RCNN ….……………………………………….………… 30 Fig 22 Architecture Framework Yolo ………………………….……….…… ……… 31 Fig 23 Architecture Retinanet … 32 Fig 24: Selective search………………………………………………………………… 32 Fig 25 Resultats comparative d’architecture avec MS COCO ………………….… … 37 Fig 26 Graph comparative (Time/Precision) Avec COCO…………….………… … 37 Fig 28 Figure de capture ……………………………………………………………………………………………… 40 Fig 30 Représentative des panneaux GTSDB …………………….……………….…… 46 Fig 31 Format représentative des panneaux GTSD …………………………… .… 46 Fig 32 : Exemple de visualisation …………………………………………………….… 41 Fig 33 Exemple : Classe groupée ………………………………… ………………… 42 Fig 34 Exemple : Classe groupée ………………………………….………………… 42 Fig.35 Exemple : Classe groupée…………………………………………………….… 42 Fig 36 Exemple : Classe groupée……………………………………………………… 42 Fig 37 : Fonction Traitment et conversion images en JP2 to JPG……………………… 44 Fig 38 : Fonction Chargement, traitement annotations ………………………………… 44 Fig.39 Architecture du système ………………………………………………………… 48 Fig.40 Paramètres d’Ancre ….…………………………………………………….…… 49 Fig.41 Résultat entrainement sur PANDO ……………………………………….… … 50 Fig.42 Detection exemple …………………………………………………………… 50 Fig 43 Detection exemple …………………………………………………………… 51 Fig.44 Detection exemple …….………………………………………………….…… 51 Fig 45 Detection exemple … ………………………………………………………… 52 Fig 44.1 Detection example …… …………………………………………………… 53 Fig 45 Intersection over Union ……………………………………………………… .54 Fig 46 Calcule True Positive (Vrai Positive) and False Positive (Faux Positive) Exp1… 55 Fig 47 Courbe Precision / Recall Exp1 ………………………………………………………… 55 Fig 48 Courbe mAP avec 11 points interpolées 68.415% Exp1 ……………………………… 55 Fig 49 Calcule True Positive (Vrai Positive) and False Positive (Faux Positive) Exp2 56 Fig 50 Courbe Precision / Recall Exp2 ……………………………………………… 57 Fig 51 Courbe mAP avec 11 points interpolées 70.897% Exp2 …… ……………… 57 Fig 52 Exemple de detection, Expérimentation ……………… ………………………60 Fig 53 WBS : Work Breakdown Structure ………………………………………… … 66 Fig 54 Gantt Planification project ……………………………………………… ……….67 Fig 55 Ecran Principal Matlab ……………………………………………… ………….67 Fig 56 Description ecran Principal de l’application……………………………….…… 68 Fig 57 Click sur le menu d’entrée ………………………….……………… ……… ….69 Fig 58 Ecran de repertoire des images ……………………………………………… ….70 Fig 59 Ecran de repertoire des classes annotations ……… …………………………… 70 Fig 60 Description de selection des classes d’annotaion …………………………… …71 Fig 61 Test selection et creation d’annotation …………………………………… …… 71 10 Fig 46 Calcule True Positive (Vrai Positive) and False Positive (Faux Positive) Resultats sur les 300 données de test GTRDB Exp1 Fig 47 Courbe Precision / Recall Exp1 Fig 48 Courbe mAP avec 11 points interpolées 68.415% Exp1 Experience Pour la seconde exerience, on a aproceder deux important changement (amelioration) du traitement d’image avant avant de proceder 59 Fig 49 Calcule True Positive (Vrai Positive) and False Positive (Faux Positive) Exp2 60 Fig 50 Courbe Precision / Recall Exp2 Fig 51 Courbe mAP avec 11 points interpolées 70.897 % Exp2 4.7 Analyse des résultats Expérimentation Les deux facteurs d’analyse observés au niveau des résultats dans le cas d’une voiture autonome étant la précision de la detection et la vitesse de detection, observons le cas de figure des deux expériences, Dans l’expérience 1, la valeur sur la moyenne de précision sur toutes les classes, en le mAP sur les 11 point interpolé est de 68.4151% avec un temps de traitement pour la detection d’environ 3.2 second sur l’appareil utilisé 61 Observation sur la première expérience : L’observation fait sur l’ensemble de detection est qu’il y a aussi peu de detection fait sur le panneau en provenance du BTSDN, le Belgian Traffic sign Expérimentation Dans la seconde expérience, après avoir modifier un peu quelque paramètre d’entrainement et modifier un peu l’algorithme en faisant un peu de prétraitement sur l’image détecter, on obtient une amélioration des résultats de précision du mAP (Mean Average précision) avec un taux d’environ 70.90% Observation sur la seconde expérience : On observe que sur l’ensemble de detection dans la seconde expérience est plus important et plus précis On peut remarquer que les détections se font avec de plus forte pourcentage de précision sur les images et le modele détecte beaucoup plus de panneau que ce soit ceux du GTSDB autant plus du BTSDN On aboutit des résultats avec beaucoup plus de detection précise étendu sur tous les Datasets fusionnées Fig 52 exemple de détection, Expérimentation 62 4.8 Conclusion Dans ce chapitre, nous avons présenté les résultats obtenus suite aux expérimentations au terme du développement de notre prototype d’algorithme de detection de panneaux Urbain pour la navigation de véhicule autonome Donc le résultat retenu est celui de l’expérience qui présente non seulement un meilleur taux de précision sur les différents panneaux tant qu’un temps de traitement plus cout pour chaque détection Au niveau de la détection proprement dite nous avons des résultats acceptables et prometteurs bien qu’il existe toutefois des imperfections, c’est-à-dire des cas de faux positifs et faux négatifs dans la scène analysée 63 Chapitre Développement d'une application de labellisation CONTEXT Le Développement d’application autour de Deep Learning nécessite assez souvent d’avoir recours des outils de labellisation Trouver un logiciel ou un outil qui est a la fois facile d'utilisation et qui peut labelliser pour les différent type de modèles d’entrainement de Deep Learning comme le CNN, le R-CNN et autre est peu fréquent Etant un laboratoire qui travaille sur des procédés d’intelligence artificielle, la nécessité de développer une application qui soit facile utiliser et capable de labelliser sur n’importe quelle image pour des modèles d’entrainement est l’objectif de cette partie dans ce chapitre, on se propose D'utiliser le logiciel Matlab pour développer ce dite logiciel MATLAB (« matrix laboratory ») est un langage de script émulé par un environnement de développement du même nom ; il est utilisé des fins de calcul numérique Développé par la société The MathWorks, MATLAB permet de manipuler des matrices, d'afficher des courbes et des données, de mettre en œuvre des algorithmes, de créer des interfaces utilisateurs, et peut s’interfacer avec d’autres langages comme le C, C++, Java, et Fortran Les utilisateurs de MATLAB (environ millions en 2019) sont de milieux très différents comme l’ingénierie, les sciences et l’économie dans un contexte aussi bien industriel que pour la recherche Matlab peut s’utiliser seul ou bien avec des toolboxes (ô boợte outils ») 64 DECOUPAGE DU PROJET Il se décline en un «Product tree » d’une part et en un Work Breakdown Structure, ou Organigramme des tâches d’autre part 3.2 Product tree Pour le développement des logiciels : — UML : Représentation des cas d’utilisation et de classe ; 3.3 WBS : Work Breakdown Structure Ainsi pour la conduite de notre projet d’application, il est primordial d’observer et d’analyser tout en précisant : Ce qui doit être fait (tâches) ; 65 66 67 68 69 70 71 Conclusion et perspectives Dans ce mémoire, nous avons présenté les travaux réalisés dans le cadre du stage de fin d’études consistant développer des algorithmes de detection de panneaux urbain, stage qui a été fait au laboratoire de recherche de l’ISAE-SUPAERO Nous avons dans un premier temps présenté le contexte d’étude, les contraintes mais également les objectifs poursuivis dans le cadre du travail Ensuite, dans le premier chapitre de ce manuscrit qui constitue un entré en matière, qui permet une d’avoir une certaine connaissance du sujet, on a présenté le véritable sens du sujet développer Le second chapitre est une étude de l’état de l’art, nous avons étudié le concept de détection automatique d’objets ainsi que les algorithmes usuels d’extraction de caractéristiques , de classification et de réseaux de neurone nécessaires la réalisation de la tâche Nous avons poursuivi en voyant en dernier lieu les différentes approches et plateformes courantes mises en place pour la détection d’objets Nous nous sommes rendu compte qu’il existait deux grandes familles de méthodes de détection d’objets savoir les méthodes traditionnelles moins efficaces et les méthodes exploitant les concepts de l’apprentissage profond plus récentes et efficaces Le troisième chapitre qui s’ensuivit a été l’occasion d’exposer et de justifier nos choix en termes d’algorithmes retenus parmi ceux présentés tout en nous tenant compte des facteurs de temps et d’efficacité, ce qui s’avère très important pour le cas d’étude du stage, qui est autour de la navigation de véhicule autonome Enfin le dernier chapitre est celui de la préparation des données la réalisation de ce travail, les différents cas expérimentations effectuées, l’évaluation et l’analyse des différents résultats obtenues Les méthodes de matériels (DELL PC, camera binoculaire, GPU, Un rover pour embarquer notre algorithme) étaient nécessaires pour concrétiser ce travail ainsi que les outils constituant l’environnement logiciel (langages python, Keras, Tensorflow, Opencv, ) En définitive, les résultats obtenus sont satisfaisants et encourageants puisque nous arrivons bien interagir avec les lampadaires et détecter les objets concernés dans les scènes malgré le fait que la détection ne soit pas optimale Les perspectives pour ce travail consistent élaborer un couplage du modele existant, avec un modele de segmentation pour avoir des précisions plus conséquente et l’extraction des panneaux¸ avec des pixels près pour en faire une cartographie pour la navigation du véhicule autonome 72 Bibliographies [1] C P Papageorgiou, M Oren, and T Poggio A general framework for object detection In Computer vision, 1998 Sixth international conference on, pages 555– 562 IEEE, 1998 [2] Rapid Object Detection using a Boosted Cascade of Simple Features [3] David G Lowe, Distinctive Image Features from Scale-Invariant Keypoints, International Journal of Computer Vision, 2004 [4] N Dalal and B Triggs Histograms of oriented gradients for human detection In Computer Vision and Pattern Recognition, 2005 CVPR 2005 IEEE Computer Society Conference on, volume 1, pages 886–893 IEEE, 2005 [5] J Donahue, Y Jia, O Vinyals, J Hoffman, N Zhang, E Tzeng, and T Darrell Decaf: A deep convolutional activation feature for generic visual recognition arXiv preprint arXiv :1310.1531, 2013 [6] Region-based Convolutional Networks for Accurate Object Detection and Segmentation Ross Girshick, Jeff Donahue, Student Member, IEEE, Trevor Darrell, Member, IEEE, and Jitendra Malik, Fellow, IEEE [7] Fast R-CNN Ross Girshick Microsoft Research [8] Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun [9] Ross Girshick “Fast R-CNN.” In Proc IEEE Intl Conf on computer vision, pp 1440-1448 2015 [10] Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun “Faster R-CNN: Towards real-time object detection with region proposal networks.” In Advances in neural information processing systems (NIPS), pp 91-99 2015 [11] Kaiming He, Georgia Gkioxari, Piotr Dollár, and Ross Girshick “Mask RCNN.” arXiv preprint arXiv:1703.06870, 2017 [12] Joseph Redmon, Santosh Divvala, Ross Girshick, and Ali Farhadi “You only look once: Unified, real-time object detection.” In Proc IEEE Conf on computer vision and pattern recognition (CVPR), pp 779-788 2016 [13] “A Brief History of CNNs in Image Segmentation: From R-CNN to Mask RCNN” by Athelas [14] Tsung-Yi Lin, Research Scientist at Google Brain, RetinaNet in 2017 ICCV.) (Sik-Ho Tsang @ Medium) [15] [2017 ICCV] [RetinaNet] Focal Loss for Dense Object Detection 73 ... INTERNATIONAL JOHN BENSON LOUIS Améliorations d’un algorithme de détection de mobilier urbain utilisant des approches de Deep Learning pour la navigation autonome de véhicules Cải tiến thuật toán... environnements urbains Dans ce chapitre d’innovation est souligné le sujet de notre stage : « AMELIORATION D’UN ALGORITHME DE DETECTION DE MOBILER URBAIN UTILISANT DES APPROCHES DE DEEP LEARNING POUR LA NAVIGATION. .. travail de mémoire est d’utiliser des algorithmes de Deep Learning pour détecter les panneaux urbains, en utilisant deux bases de dataset image sur deux pays différents, savoir la base de panneaux de