File: labelConnectedComponents.lyx

package info (click to toggle)
cloudcompare 2.10.1-2
  • links: PTS
  • area: main
  • in suites: buster
  • size: 55,916 kB
  • sloc: cpp: 219,837; ansic: 29,944; makefile: 67; sh: 45
file content (284 lines) | stat: -rw-r--r-- 5,801 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
#LyX 2.0 created this file. For more info see http://www.lyx.org/
\lyxformat 413
\begin_document
\begin_header
\textclass book
\use_default_options false
\maintain_unincluded_children false
\language french
\language_package default
\inputencoding latin9
\fontencoding T1
\font_roman default
\font_sans helvet
\font_typewriter default
\font_default_family sfdefault
\use_non_tex_fonts false
\font_sc false
\font_osf false
\font_sf_scale 100
\font_tt_scale 100

\graphics default
\default_output_format default
\output_sync 0
\bibtex_command default
\index_command default
\paperfontsize 10
\spacing single
\use_hyperref true
\pdf_bookmarks true
\pdf_bookmarksnumbered false
\pdf_bookmarksopen false
\pdf_bookmarksopenlevel 1
\pdf_breaklinks false
\pdf_pdfborder false
\pdf_colorlinks true
\pdf_backref false
\pdf_pdfusetitle true
\pdf_quoted_options "linkcolor=blue"
\papersize a4paper
\use_geometry true
\use_amsmath 1
\use_esint 1
\use_mhchem 0
\use_mathdots 0
\cite_engine basic
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date true
\use_refstyle 0
\index Index
\shortcut idx
\color #008000
\end_index
\leftmargin 1.5cm
\topmargin 3cm
\rightmargin 1.5cm
\bottommargin 3cm
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\paragraph_indentation default
\quotes_language french
\papercolumns 1
\papersides 2
\paperpagestyle fancy
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict false
\end_header

\begin_body

\begin_layout Subsection
Tools > Segmentation > Label Connected Components
\end_layout

\begin_layout Standard
\begin_inset CommandInset label
LatexCommand label
name "subsection:labelConnectedComponents"

\end_inset


\end_layout

\begin_layout Standard
\begin_inset Float figure
placement !htb
wide false
sideways false
status open

\begin_layout Plain Layout
\align center
\begin_inset Graphics
	filename ../images/Partie3_Fonctions/labelConnectedComponentsDlg.png
	width 20text%

\end_inset

 
\begin_inset Caption

\begin_layout Plain Layout
\begin_inset CommandInset label
LatexCommand label
name "fig:labelConnectedComponentsDlg"

\end_inset

Interface de paramétrage de la méthode d'extraction des composantes connexes
\end_layout

\end_inset


\end_layout

\end_inset


\end_layout

\begin_layout Standard
\begin_inset Index idx
status collapsed

\begin_layout Plain Layout
composantes connexes
\end_layout

\end_inset

 Cette fonction permet de décomposer un nuage de points en sous-nuages compacts.
 Si le nuage sélectionné est composé de plusieurs groupes de points suffisamment
 dissociés (distants) les uns des autres, il est possible de le subdiviser
 assez simplement via une approche d'
\emph on
extraction des composantes connexes
\emph default
.
 C'est un algorithme courant, généralement appliqué aux images 2D binaires
 et qui a été étendu ici à une grille 3D binaire (on 
\shape italic
voxelise
\shape default
 le nuage en considérant en réalité l'octree associ à un certain niveau
 de subdivision).
 Cette fonction produit en sortie autant de nuages de points que de groupes
 détectés.
 Ces nuages sont regroupés dans un nouveau 
\shape italic
groupe d'entités
\shape default
 qui est rajouté à l'arbre de navigation de 
\emph on
CloudCompare
\emph default
.
 La figure
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "fig:statisticalTestExample"

\end_inset

 illustre bien l'utilité de cet outil.
 
\begin_inset Newline newline
\end_inset

 
\end_layout

\begin_layout Standard
L'utilisateur choisit principalement le niveau d'octree auquel l'algorithme
 sera appliqué (
\emph on
Octree Level
\emph default
).
 Celui-ci va en fait définir grossièrement le seuil de distance au-delà
 duquel les groupes de points (les 
\emph on
composantes connexes
\emph default
) seront considérés comme non connexes.
 Plus le niveau d'octree est grand, plus le seuil de distance est faible,
 et plus on extraira de sous-groupes (ce qui n'est pas forcément souhaitable).
 
\begin_inset Newline newline
\end_inset

 
\end_layout

\begin_layout Standard
Un deuxième paramètre important est le nombre minimal de points par composante
 connexe (
\emph on
Min.
 points
\emph default
).
 Si un groupe est composé d'un nombre de points inférieur à ce paramètre,
 alors il sera ignoré.
 Ceci permet de limiter le nombre de nuages créés par l'algorithme et de
 ne s'intéresser qu'aux groupes dépassant une taille critique.
 
\begin_inset Newline newline
\end_inset

 
\end_layout

\begin_layout Standard
Enfin, l'option 
\emph on
random colors
\emph default
 permet de dire à 
\emph on
CloudCompare
\emph default
 de générer des couleurs au hasard pour chaque nouveau nuage.
 Ceci améliore la lisibilité du résultat (mais les éventuelles couleurs
 du nuage original ne seront pas exportées).
\begin_inset Newline newline
\end_inset

 
\end_layout

\begin_layout Standard
Remarques : 
\end_layout

\begin_layout Itemize
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 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
 typiquement au niveau 7).
 On peut aussi afficher l'octree (représentation 
\emph on
Wire
\emph default
 ou 
\emph on
Cubes
\emph default
, Cf.
 section
\begin_inset space ~
\end_inset


\begin_inset CommandInset ref
LatexCommand ref
reference "sub:octree"

\end_inset

) pour estimer visuellement les tailles des cellules aux différents niveaux.
 
\end_layout

\begin_layout Itemize
Pour appeler cette fonction, il faut sélectionner une seule entité 3D.
 
\end_layout

\end_body
\end_document