Segmentation et Classification de nuages de points urbains - Application aux enquêtes de stationnement Xavier Roynard xavier.roynard@mines-paristech.fr Jeudi 17 Mars 2016 Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 1 / 23
Sommaire 1 Introduction 2 Segmentation Méthodes 3 Classification Features et Random Forest de classification 4 Conclusion Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 2 / 23
Introduction Plan 1 Introduction 2 Segmentation Méthodes 3 Classification Features et Random Forest de classification 4 Conclusion Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 3 / 23
Introduction Introduction Proble me Segmentation et Classification de Nuages de Points 3D d Environnements Urbains - Application a la de tection de changement de ve hicules Travaux existants Article du CMM [Serna and Marcotegui, 2014], base sur l interpre tation d une image d e le vation tre s rapide, mais pose des proble mes de voitures cache es sous des arbres ou des balcons, Figure Le ve hicule L3D2 et un exemple de nuage de point urbain. Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 4 / 23
Segmentation Plan 1 Introduction 2 Segmentation Méthodes 3 Classification Features et Random Forest de classification 4 Conclusion Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 5 / 23
Segmentation Méthodes Méthodes Principe Extraire le sol, ce qui donne le DTM (Digital Terrain Model), Segmenter les objets commes étant les différentes composantes connexes restantes, Méthodes Testées Extraction du sol : Recherche du meilleur plan horizontal RANSAC Croissance de région sur les points Normales et Courbures similaires Croissance de régions de cellules 2D z min similaires Segmentation des objets (les différentes composantes connexes) : Croissance de région sur les points Croissance de régions de cellules 3D Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 6 / 23
Segmentation RANSAC On détecte le meilleur plan horizontal avec un seuil assez grand pour prendre en compte le bruit des données et assez petit pour ne pas prendre les objets sur le sol. Figure de segmentation par RANSAC Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 7 / 23
Segmentation Region Growing On calcul la normale en chaque point, deux points sont dans la même région s ils sont assez proches et si l angle entre leurs normales est assez petit. Figure de segmentation par Region Growing, à gauche : succès, à droite : échec Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 8 / 23
Segmentation Croissance de région sur une grille 2D On découpe le nuage en une grille 2D horizontale, sur chaque case on ne conserve que le minimum des z des points contenus dans la case, on trouve une qui est très probablement sur le sol, on étend le sol en rajoutant les cases voisines si elles ont un z min similaire. Figure Résultat de segmentation par Croissance de région sur une grille 2D Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 9 / 23
Segmentation Figure Résultat de segmentation par Croissance de région sur une grille 2D Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 10 / 23
Segmentation Jeu de données 7 passages à Paris dans la même rue et dans la même journée, environ 80 millions de points chacun 7 passages à Lille dans la même rue et dans la même journée, environ 150 millions de points chacun Classe Nombre d échantillons Paris Lille Total arbre 64 373 437 deux-roues 142 1 143 façade 111 404 515 lampadaire 16 357 373 piéton 10 1 11 poteau 508 65 573 poubelle 8 1 9 signalisation 114 456 570 voiture 719 556 1275 Total 1692 2214 3906 Table Nombre d échantillons par classe Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 11 / 23
Segmentation Amélioration par rapport à [Serna and Marcotegui, 2014] Figure Segmentation d une voiture sous un arbre, à gauche on notre méthode, à droite sur l image d élévation on ne vois pas les voiture sous l arbre Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 12 / 23
Classification Plan 1 Introduction 2 Segmentation Méthodes 3 Classification Features et Random Forest de classification 4 Conclusion Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 13 / 23
Classification Features et Random Forest Features et Random Forest Principe Pour chaque objet extrait, calculer des features globales Puis entraîner un classificateur (ici Random Forest) avec ces features Les différentes Features Des Features Statistiques : z min, z max, z max z min, z mean, z sigma, nombre de points, valeurs propres de la matrice de covariance dans le plan XY, volume et surface de l enveloppe convexe, dimensions de la boite englobante, un histogramme en z, CVFH (Clustered Viewpoint Feature Histogram) [Aldoma et al., 2011], GRSD (Global Radius-based Surface Descriptor) [Marton et al., 2011], ESF (Ensemble of Shape Functions) [Wohlkinger and Vincze, 2011], Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 14 / 23
Classification de classification de classification par classe Évaluation On évalue dans un premier temps la classification avec l intégralité des descripteurs sur les objets bien segmentés en 7 classes : arbre, deux-roues, façade, lampadaire, poteau, signalisation et voiture. Classe Précision moyenne Rappel moyen F1 moyen MCC moyen arbre 93,90% 95,84% 94,83% 94,19% deux-roues 79,10% 96,00% 86,45% 86,44% façade 93,00% 98,69% 95,73% 95,13% lampadaire 90,09% 99,00% 94,28% 93,79% poteau 92,98% 99,69% 96,19% 95,60% signalisation 93,09% 99,40% 96,12% 95,52% voiture 96,97% 99,53% 98,23% 97,37% Table Précision, Rappel, scores F1 et MCC par classe Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 15 / 23
Classification de classification Figure Importance des Features Descripteur Importance cumulée Importance moyenne par variable Features Statistiques 21,45% 1,79% Histogramme en z 2,01% 0,20% CVFH 3,93% 0,01% GRSD 23,09% 1,10% ESF 49,52% 0,08% Table Importance cumulée des features et importance moyenne par variable Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 16 / 23
Classification de classification de classification par descripteur Descripteur Nombre variables Temps entrainement OOB Précision voiture Rappel voiture F1 voiture MCC voiture Stats 22 2,03s 98,30% 96,19% 99,02% 97,58% 96,40% CVFH 308 6,98s 93,71% 86,06% 97,54% 91,42% 87,28% GRSD 21 1,74s 94,38% 86,59% 97,83% 91,84% 87,91% ESF 640 13,13s 94,29% 87,90% 96,02% 91,76% 87,71% Stats + CVFH 330 6,34s 97,81% 94,32% 99,03% 96,60% 94,97% Stats + GRSD 43 2,58s 98,39% 96,15% 99,44% 97,76% 96,68% Stats + ESF 662 11,60s 98,59% 96,33% 99,38% 97,82% 96,77% CVFH + GRSD 329 6,63s 97,58% 93,38% 99,40% 96,28% 94,51% CVFH + ESF 948 15,16s 96,04% 91,91% 97,57% 94,64% 92,03% GRSD + ESF 661 11,83s 98,49% 96,17% 99,60% 97,85% 96,82% CVFH + GRSD + ESF 969 14,18s 98,60% 96,28% 99,66% 97,93% 96,94% Stats + GRSD + ESF 683 11,74s 98,73% 96,98% 99,41% 98,18% 97,30% Stats + CVFH + ESF 970 13,89s 98,67% 96,57% 99,48% 98,00% 97,03% Stats + CVFH + GRSD 351 6,32s 98,18% 95,59% 99,23% 97,36% 96,09% Stats + CVFH + GRSD + ESF 991 13,61s 98,80% 96,94% 99,55% 98,23% 97,37% Table Performances en fonction des descripteurs utilisés (en gras la meilleure performance) Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 17 / 23
Classification de classification en temps de calcul Temps de calcul : extraction du sol et segmentation : temps de projection du nuage sur une grille 2D (resp. un octree) et d une croissance de région sur cette grille (resp. cet octree), c est-à-dire 3 fois rien, calcul des descripteurs : voir tableau en dessous, classification : semble être indépendant du nombre de variables, on observe un temps de 1,2ms pour prédire la classe d un objet. Descripteur Temps de calcul Proportion Temps moyen par objet Stats 17,2s 3,22% 0,9ms CVFH 240,3s 44,92% 11,9ms GRSD 64,4s 12,04% 3,2ms ESF 213,0s 39,82% 10,6ms Total 534,9s 100% 26,6ms Normales 964,7s 47,9ms Table Temps de calcul des descripteurs sur les 20121 objets segmentés Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 18 / 23
Conclusion Plan 1 Introduction 2 Segmentation Méthodes 3 Classification Features et Random Forest de classification 4 Conclusion Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 19 / 23
Conclusion Conclusion Ce qu on à fait : une méthode de segmentation et classification de nuage de points urbains, temps de calculs raisonnables, amélioré la segmentation des objets (voitures sous arbre...) Ce qu il reste à faire : tester avec les classes multi-, et resegmenter... tester en ajoutant les descripteurs contextuels, tester l algorithme sur d autres données. Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 20 / 23
Conclusion Merci de votre attention! Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 21 / 23
Conclusion Bibliographie Bibliographie Aldoma, A., Vincze, M., Blodow, N., Gossow, D., Gedikli, S., Rusu, R. B., and Bradski, G. (2011). Cad-model recognition and 6dof pose estimation using 3d cues. In Computer Vision Workshops (ICCV Workshops), 2011 IEEE International Conference on, pages 585 592. IEEE. Marton, Z.-C., Pangercic, D., Blodow, N., and Beetz, M. (2011). Combined 2d 3d categorization and classification for multimodal perception systems. The International Journal of Robotics Research, 30(11) :1378 1402. Serna, A. and Marcotegui, B. (2014). Detection, segmentation and classification of 3d urban objects using mathematical morphology and supervised learning. ISPRS Journal of Photogrammetry and Remote Sensing, 93 :243 255. Wohlkinger, W. and Vincze, M. (2011). Ensemble of shape functions for 3d object classification. In Robotics and Biomimetics (ROBIO), 2011 IEEE International Conference on, pages 2987 2992. IEEE. Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 22 / 23
Annexe Précision et Rappel Définitions : TP P = TP + FP TP R = TP + FN 2TP F 1 = 2TP + FP + FN TP TN FP FN MCC = (TP + FP)(TP + FN)(TN + FP)(TN + FN) Figure Definition des vrai/faux - positif/négatif Xavier Roynard (Mines ParisTech) Jeudi 17 Mars 2016 23 / 23