labelConnectedComponents.tex 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. \subsection{Tools > Segmentation > Label Connected Components}
  2. \label{subsection:labelConnectedComponents}
  3. \begin{figure}[!htb]
  4. \begin{center}
  5. \includegraphics[width=0.2\textwidth]{Partie3_Fonctions/labelConnectedComponentsDlg.png}
  6. \caption{\label{fig:labelConnectedComponentsDlg}Interface de paramétrage de la méthode d'extraction des composantes connexes}
  7. \end{center}
  8. \end{figure}
  9. \index{composantes connexes}
  10. Cette fonction permet de décomposer un nuage de points en sous-nuages compacts.
  11. Si le nuage sélectionné est composé de plusieurs groupes de points suffisamment dissociés (distants)
  12. les uns des autres, il est possible de le subdiviser assez simplement via l'octree\index{octree}.
  13. Ceci est fait dans \emph{CloudCompare} grâce à une approche d'\emph{extraction des composantes connexes}.
  14. C'est un algorithme courant, généralement appliqué aux images 2D binaires et qui a été étendu ici à une
  15. grille 3D binaire. Cette fonction produit en sortie une entité par sous-nuage de points (regroupées dans
  16. un nouveau groupe d'entité au niveau de l'arbre de navigation de \emph{CloudCompare}).
  17. La figure~\ref{fig:statisticalTestExample} en bas à droite est une bonne illustration de son utilité.
  18. \\
  19. \par
  20. L'utilisateur choisit principalement le niveau d'octree auquel l'algorithme sera appliqué (\emph{Octree Level}).
  21. Celui-ci va en fait définir grossièrement le seuil de distance au-delà duquel les groupes de points (les
  22. \emph{composantes connexes}) seront considérés comme non connexes. Plus le niveau d'octree est grand, plus le
  23. seuil de distance est faible, plus on extraira de sous-groupes (ce qui n'est pas forcément souhaitable).
  24. \\
  25. \par
  26. Un deuxième paramètre important est le nombre minimal de points par composante connexe (\emph{Min. points}).
  27. Si un groupe est composé d'un nombre de points inférieur à ce nombre, alors il ne sera pas extrait sous la
  28. forme d'une nouvelle entité. Ceci permet de limiter le nombre de nuages créés par l'algorithme.
  29. \\
  30. \par
  31. Enfin, l'option \emph{random colors} permet de dire à \emph{CloudCompare} de générer des couleurs au hasard
  32. pour chaque nouveau nuage.\\
  33. \par
  34. Remarques :
  35. \begin{itemize}
  36. \item Plus le niveau d'octree est grand et plus la mémoire nécessaire (la RAM) est importante. Le niveau d'octree est donc un paramètre
  37. sensible qu'il est difficile de régler a priori, sans expérience. Une approche par niveaux successifs peut donc être nécessaire (en commençant
  38. typiquement au niveau 7). On peut aussi afficher l'octree (représentation \emph{Wire} ou
  39. \emph{Cubes}, Cf. section~\ref{subsection:affichageOctree}) pour estimer visuellement les tailles des cellules aux différents niveaux.
  40. \item Pour appeler cette fonction, il faut sélectionner une seule entité 3D.
  41. \end{itemize}