Journées de la Topographie
du 2 au 4 octobre 2006

Nicolas Boehrer

RECHERCHE   DE   METHODES   DEXTRACTIONS   AUTOMATIQUES  DE
PLANS  DANS  UN  NUAGE  DE POINTS   CAPTES  PAR  LASER  SCANNER
TERRESTRE    

 

Société d’accueil : Institut für Photogrammetrie und Fernerkundung 
PFE présenté par : Nicolas Boehrer
Directeur (directrice) du PFE : Dr.Ing. Thomas Voegtle
Correcteurs : Mme Landes, M. Grussenmeyer

 

1. Problématique 
Les travaux laser scanner terrestre deviennent de plus en plus courants dans des domaines d’application qui deviennent de plus  en  plus  grands.  On  utilise  de  tels  appareils  dans  des  chantiers  d’auscultation,  de  maintenance  d’ouvrages  d’arts,  de  raffineries  et  installations  pétrolières,  de modélisation  urbaine,  de  protection  du  patrimoine,  de  planification  de  projets,  etc.…  Les applications deviennent de plus en plus nombreuses. Mais le laser scanner se révèle très exigeanten post-traitement. Les  méthodes de post-traitement ne sont pas encore aussi développées que celles pouvant être utilisées pour les stations totales  ou les GPS. Un grand travail reste encore à faire pour améliorer cette partie du traitement et pouvoir profiter au maximum des  avantages du laser scanner. Parmi les traitements les plus courants, la reconnaissance automatique de formes parmi le nuage  de  points  se  révèle  de  première  importance.  Je  me  suis  attaché  à  étudier  des  méthodes  permettant  de  reconnaître  automatiquement la forme de loin la plus courante dans des relevés laser scanner terrestre. Il s’agit du plan. Il a donc été fait le  choix  d’étudier  trois  méthodes  différentes  permettant  l’extraction  automatique  de  plans  dans  des  données  laser  scanner  terrestre.  Il  s’agira  dans  un  premier  temps  de  l’étude  de  l’application  d’un  programme  de  segmentation  développé  pour  des  données  provenant  de  lasers  scanners  aériens,  puis  de  développer  moi-même  deux  autres  programmes suivant  des  principes  différents et permettant d’effectuer cette tâche de  manière automatique.

2. Application du programme « fseg » à des données terrestres

Principe

Le  but  de  mon  travail  est  l’extraction  automatique ou  segmentation  de  l’ensemble  des  plans  contenus  dans  un  relevé  laser  scanner terrestre.
Une première méthode suivie a été l’adaptation de méthodes et programmes développés pour le traitement de données laser  scanner  aériens.  Ces  procédés  ont  été  développés  par  l’Institut  für  Photogrammetrie  und  Fernerkundung  de  l’université  de  Karlsruhe. Au centre de ces chaînes de traitementsse trouve le programme de segmentation développé par Eberhard Steinle  basé sur des données sous forme Raster.
Ce programme fut développé pour traiter des données provenant de relevés aériens et est utilisé en particulier dans le projet de  modélisation des bâtiments endommagés après une catastrophe naturelle.
Le programme est basé sur des données raster. Il suit le principe d’extension par croissance de régions (« region growing  Verfahren » ou « Flächewachstumsverfahren »).
Le fonctionnement est itératif. Dans un premier temps une zone de l’image  raster est choisie. Cette zone dont il est possible de définir la taille en pixel  est  appelée  graine  ou  point  de  cristallisation.  C’est  de  cette  zone  en  général de 3x3 pixels que part la segmentation. Les pixels de cette graine  appartiennent tous à la même surface. Le programme  va ensuite chercher  automatiquement les pixels contigus à la graine. Ce sont les valeurs de gris  qui permettent de calculer si les points voisins appartiennent eux aussi à la  même surface que la graine. Pour cela il compare le s valeurs de gris des  pixels étudiés avec celles calculées si ils appartenaient au plan défini par la  zone  de  départ.  Cette  différence  est  comparée  à  une  tolérance.  Si  la  différence  est  en  dessous  de  la  valeur  limite,  les  pixels  voisins  sont  intégrés au plan et les valeurs de gris sont recalculées par compensation  pour une prochaine comparaison avec les pixels voisins. Si en revanche la  différence  est  trop  importante  en  comparaison  avec la  valeur  tolérée,  le  pixel n’est pas intégré au plan et la frontière avec le pixel voisin est retenue  comme frontière du plan. 

                             RASTER                        OBJET       Principe de segmentation de fseg                                                                   Valeur  prévue                Valeur

 Résultats

Le travail avec le programme « fseg » a été conduit  en suivant plusieurs axes. Je me suis tout d’abord intéressé à la faisabilité  d’adapter ce programme normalement conçu pour des applications à des données laser scanner aériennes à des applications  laser  scanner  terrestres.  Une  fois  les  premiers  résultats  obtenus  j’ai  effectué  une  première  étude  concernant  l’influence  du  raster  dans  la  segmentation.  J’ai  crée  pour  les  mêmes  données  projetées  de  manière  identique  plusieurs  rasters  ayant  des  dimensions de pixel terrain différentes. J’ai ensuite comparé entre eux les résultats issus de la segmentation de chacun des  rasters.

Le second thème a été l’étude de l’influence de chacun des paramètres choisis par l’utilisateur pour effectuer la segmentation. 
A  partir  d’un  raster  j’ai  comparé  entre  eux  les  résultats  issus  de  la  segmentation  effectuée  en  faisant  varier  les  paramètres  choisis par l’utilisateur. 

Pour finir j’ai effectué une comparaison entre les résultats fournis par la méthode utilisant un raster au format tif et la méthode  utilisant  la  liste  des  points  pour  fournir  un  raster  et  je  me  suis  enfin  intéressé  aux  limites  et  caractéristiques  intrinsèques  du  programme.

Comparaison des segmentations issues de deux préparations différentes

3. Méthode par accroissement de surfaces

Principe

Après le travail déjà abordé concernant l’étude d’un programme existant pour effectuer la détection de plans dans les données  nous allons passer à la partie concernant le développement propre d’un outil permettant d’effectuer ce travail.  Il a été procédé  à un travail de programmation selon une idée directrice (voir ci après) permettant une détection des plans dans les données  laser scanner terrestre. J’ai voulu vérifier si il était possible de réaliser une telle segmentation selon ce principe et si oui avec  quelle qualité de résultats.
Le programme repose tout comme le programme de segmentation de Eberhard Steinle « fseg » sur un foncti  onnement itératif  selon le principe du « region growing Verfahren ».   Le programme se base ici sur une utilisation directe des points et non un  raster nécessitant une transformation préalable. L’idée est de partir d’un triangle initial formé par trois points voisins. Celui-ci  constitue un plan ayant ses propres paramètres d’équation. Ce premier plan peut être appelé graine ou  point de cristallisation.  Cette graine constitue le point de départ de notre segment. A partir de lui et dans chaque itération suivante vont être étudiés  individuellement  les  triangles  voisins  du  segment.   Chaque  triangle  voisin  forme  un  plan  défini  par  3  points  dont  les  caractéristiques  peuvent  être  comparées  à  celles  du  segment  déjà  formé.  Ainsi  à  chaque  itération  on  va  comparer  les  caractéristiques  du  plan  étudié  à  celui  de  référence.  La  différence  entre  les  deux  est  comparée  à  une tolérance  fixée par  l’utilisateur. Si le nouveau triangle possède les caractéristiques adéquates, il sera intégré au segment. C'est-à-dire considéré  comme appartenant au plan et les coordonnées de ses points utilisées pour effectuer avec les points des triangles appartenant  déjà  au  plan,  un  calcul  par  les  moindres  carrés  des  nouveaux  paramètres  du  plan.  Si  le  nouveau  triangle  ne  devait  pas  satisfaire  à  la  condition  fixée  par  la  tolérance,  le  triangle  serait  enregistré  comme  ne  faisant  pas  partie  du  segment,  et  la  frontière  enregistrée  comme  frontière  du  segment.  Lorsque  le  programme  ne  trouve  plus  de  triangle  voisin  satisfaisant  à  la  condition, il enregistre les caractéristiques finales du segment et recommence en cherchant un nouveau point de départ pour la  création  d’un  nouveau  segment.  On  obtient  ainsi  des  segments  contenant  un  ensemble  de  triangles  constitués  de  points  appartenant tous (dans une certaine tolérance fixée par l’utilisateur) à un même plan.

Résultats

Devant les problèmes extérieurs au sujet du travail posés par la gestion de la mémoire et du temps decalcul pour des données  réelles nous nous sommes limités à étudier le programme sur des données artificielles. On entendra par données artificielles  des données ne provenant non pas d’un levé laser scanner mais crées de toute pièce. J’ai ainsi crée des réseaux de points  couvrant   des   formes   géométriques   simples   connues   et   permettant   de   vérifier   les   données   sortant   effectivement   des  programmes. Ces données sont aussi de petite taille, de l’ordre de quelques centaines de points, ceci afin de permettre des  fonctionnements rapides des programmes pour les tests effectués.
L’objet de test utilisé correspond en fait à un levé fictif de deux plans parallèles au plan (X, Y), à des valeurs de Z différentes et  reliés entre eux par un troisième plan incliné.
Plusieurs   tests   ont   été   effectués,   en   particulier   concernant   les  différents   paramètres   utilisés.   J’ai   ainsi   recherché   les   paramètres  permettant d’obtenir les meilleurs résultats.                     

Résultat de la segmentation

On  voit  ci-contre  le  résultat  de  la  segmentation  utilisant  la  première  variante du programme. Il ne sera présenté ici quele résultat final. Les  résultats    intermédiaires    issus    des    différentes    étapes    de    la  programmation ne présentent qu’un faible intérêt. La seconde variante  a  elle  aussi  été testée  avec cet objet mais  produit  ici  des  erreurs  en  créant dans le ré eau de triangle des triangles « fantômes ».

Dans  l’illustration  suivante,  on  observe  (par  une  vue  de  dessus)  les  variations    résultantes    de    la    modification    des    paramètres    de  fonctionnement  du  programme.  On  observe  ici  une  réduction  de  la  taille  des  segments  lorsque  l’on  réduit  la  valeur  du  paramètre  de  la  distance de recherche des points nouveaux.

4. Méthode par profils successifs

Principe

Mon travail de programmation devait consister à développer deux programmes de segmentation selon deux idées différentes.  La seconde méthode devait mettre en œuvre la méthod e dite de Peucker appliquée à un espace en trois dimensions. Cette  méthode approche le problème comme celle précédente par les points. Or devant les problèmes (concernant le traitement du  grand nombre de points contenus dans les relevés laser scanner) posés par cette approche, il a été décidé de suivre une autre  voie. Cette deuxième méthode utilise donc toujours l’idée de Peucker mais d’une manière différente à celle présentée en 2.2.4  et dans un souci d’allégement des opérations.
L’idée principale reste l’utilisation du principe de Peucker. Mais contrairement à ce qui a été expliqué en 2.2.4, je suis resté à  une  application  de  cette  méthode  à  un  espace  à  deux  dimensions.  Le  principe  de  cette  seconde  méthode  consiste  en  la  réalisation de « coupes » de la figure pour des val eurs de Z régulières. Ces « coupes » donnent ensuit e lieu à des profils grâce  à l’utilisation de l’algorithme de Peucker qui sont ensuite comparés entre eux et permettent d’en déduire la géométrie en 3D de  la figure. La comparaison des positions relatives des points pour des variations en Z connues nous permet alors de recréer les  plans recherchés. Les plans sont constitués d’un assemblage de rectangle. Par l’étude des rectangles voisins et comparaison  des caractéristiques de chacun il deviendra alors possible de recréer le segment correspondant à un unique plan.

Principe général de fonctionnement

Résultats

Comme on le voit sur les résultats de ces tests, le programme est capable dans la majorité des cas de détecter et segmenter  correctement  les  différents  plans.  La  visualisation  avec  les  rectangles  ne  permet  pas  de  bien  se  rendre  compte  de  la  segmentation finale mais apporte une illustration indispensable du fonctionnement du programme.

5. Bilan

On peut effectuer une comparaison des trois modes de segmentation.

Fseg


 Avantages

Inconvénients

 Résultats de grande précision

Conversion en 2D du problème

 Visualisation claire des résultats

Préparation importante des données

Fonctionnement sans fautes
Méthode par accroissement de région
Avantages                                                  Inconvénients
Méthode lente
Méthode juste avec résultats compensés    Difficile utiliser pour données Laser scanner Peu de préparationIdée de base simple
Méthode par comparaison de profils


 Avantages

Inconvénients

 Méthode rapide

Méthode peu précise, approximations

 Visualisation claire des résultats

Très dépendante des données Programme lourd

Tableau comparatif des différentes méthodes

Au vu de la comparaison ci-dessus, il devient clair que chaque méthode possède son domaine d’application. 
La première méthode sera à utiliser lorsque l’on travaillera sur des ouvrages se présentant d’un seul tenant sous forme d’une  façade principale portant tous les éléments mais avec peu de retours et parties perpendiculaires à cette façade principale. On  est  ainsi  dès  le  départ,  proche  d’une  configuration  2D,  proche  d’un  plan  unique  sur  lequel  on  perdra  peu  d’information  en  projetant les points. 
La  seconde  méthode  sera  particulièrement  efficace  pour  des  formes  compliquées  avec  beaucoup  de  détails,  mais  de  taille  réduite. Ainsi on bénéficie de la qualité des résultats en matière de précision ainsi que de la flexibilité de la méthode. On évitera  en se concentrant sur des zones précises de perdre beaucoup de temps.  La  dernière  méthode  sera  elle  plus  adaptée  à  d’importantes  façades  pouvant  avoir  des  détails  mais  devant  être  définis  de  manière  suffisante.  Cette  méthode  se  révèle  adaptée  en  matière  de  temps  de  calcul  à  des  éléments  de  grande  taille  et  représentant un compromis entre les deux méthode précédente pour le traitement de détails. Elle permet de traiter parfaitement  la façade (contrairement à la première méthode) dans les trois directions et de restituer les détails lorsque la densité de points  est suffisante.

©2006 INSA de Strasbourg, spécialité Topographie | Webmaster