qHPR.lyx 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355
  1. #LyX 2.0 created this file. For more info see http://www.lyx.org/
  2. \lyxformat 413
  3. \begin_document
  4. \begin_header
  5. \textclass book
  6. \use_default_options false
  7. \maintain_unincluded_children false
  8. \language french
  9. \language_package default
  10. \inputencoding latin9
  11. \fontencoding T1
  12. \font_roman default
  13. \font_sans helvet
  14. \font_typewriter default
  15. \font_default_family sfdefault
  16. \use_non_tex_fonts false
  17. \font_sc false
  18. \font_osf false
  19. \font_sf_scale 100
  20. \font_tt_scale 100
  21. \graphics default
  22. \default_output_format default
  23. \output_sync 0
  24. \bibtex_command default
  25. \index_command default
  26. \paperfontsize 10
  27. \spacing single
  28. \use_hyperref true
  29. \pdf_bookmarks true
  30. \pdf_bookmarksnumbered false
  31. \pdf_bookmarksopen false
  32. \pdf_bookmarksopenlevel 1
  33. \pdf_breaklinks false
  34. \pdf_pdfborder false
  35. \pdf_colorlinks true
  36. \pdf_backref false
  37. \pdf_pdfusetitle true
  38. \pdf_quoted_options "linkcolor=blue"
  39. \papersize a4paper
  40. \use_geometry true
  41. \use_amsmath 1
  42. \use_esint 1
  43. \use_mhchem 0
  44. \use_mathdots 0
  45. \cite_engine basic
  46. \use_bibtopic false
  47. \use_indices false
  48. \paperorientation portrait
  49. \suppress_date true
  50. \use_refstyle 0
  51. \index Index
  52. \shortcut idx
  53. \color #008000
  54. \end_index
  55. \leftmargin 1.5cm
  56. \topmargin 3cm
  57. \rightmargin 1.5cm
  58. \bottommargin 3cm
  59. \secnumdepth 3
  60. \tocdepth 3
  61. \paragraph_separation indent
  62. \paragraph_indentation default
  63. \quotes_language french
  64. \papercolumns 1
  65. \papersides 2
  66. \paperpagestyle fancy
  67. \tracking_changes false
  68. \output_changes false
  69. \html_math_output 0
  70. \html_css_as_file 0
  71. \html_be_strict false
  72. \end_header
  73. \begin_body
  74. \begin_layout Section
  75. qHPR - Hidden Point Removal
  76. \end_layout
  77. \begin_layout Standard
  78. \begin_inset Index idx
  79. status collapsed
  80. \begin_layout Plain Layout
  81. qHPR, filtrage de points
  82. \end_layout
  83. \end_inset
  84. \begin_inset CommandInset label
  85. LatexCommand label
  86. name "subsection:qHPR"
  87. \end_inset
  88. \end_layout
  89. \begin_layout Standard
  90. La fonction
  91. \series bold
  92. H
  93. \series default
  94. idden
  95. \series bold
  96. P
  97. \series default
  98. oints
  99. \series bold
  100. R
  101. \series default
  102. emoval tente, comme son nom l'indique, de cacher les points d'un nuage qui
  103. ne sont par réellement
  104. \emph on
  105. visibles
  106. \emph default
  107. (i.e.
  108. qui ne correspondent pas à la surface implicite effectivement visible depuis
  109. le point de vue courant
  110. \begin_inset Index idx
  111. status collapsed
  112. \begin_layout Plain Layout
  113. point de vue
  114. \end_layout
  115. \end_inset
  116. ).
  117. Le résultat dépend donc directement du point de vue.
  118. \begin_inset Newline newline
  119. \end_inset
  120. \end_layout
  121. \begin_layout Standard
  122. \begin_inset Float figure
  123. placement !htb
  124. wide false
  125. sideways false
  126. status open
  127. \begin_layout Plain Layout
  128. \align center
  129. \begin_inset Graphics
  130. filename ../images/Partie3_Fonctions/HPRExample.jpg
  131. width 80text%
  132. \end_inset
  133. \begin_inset Caption
  134. \begin_layout Plain Layout
  135. \begin_inset CommandInset label
  136. LatexCommand label
  137. name "fig:HPRExample"
  138. \end_inset
  139. Nuage de point complet (à droite) et nuage de point filtré avec la technique
  140. "HPR" (à gauche)
  141. \end_layout
  142. \end_inset
  143. \end_layout
  144. \end_inset
  145. \end_layout
  146. \begin_layout Standard
  147. La notion de visibilité pour les points d'un nuage est relativement complexe
  148. à estimer.
  149. En effet il est très peu probable qu'un point soit réellement masqué par
  150. d'autres points dans un nuage, puisque cela nécessiterait un alignement
  151. parfait entre paires de points (en fonction du point de vue !) ou une densité
  152. du nuage telle que les points soient quasiment en contact.
  153. Cette fonction approxime donc la notion de visibilité via un calcul d'enveloppe
  154. convexe.
  155. Elle se base sur l'article
  156. \emph on
  157. Direct Visibility of Point Sets
  158. \emph default
  159. de Katz, Tal et Basri, SIGGRAPH 2007.
  160. \begin_inset Newline newline
  161. \end_inset
  162. \end_layout
  163. \begin_layout Standard
  164. Pour calculer les occlusions par HPR, il est nécessaire que la vue 3D dans
  165. laquelle est affichée l'entité soit en projection perspective (cf.
  166. section
  167. \begin_inset CommandInset ref
  168. LatexCommand ref
  169. reference "subsection:centeredPerspective"
  170. \end_inset
  171. ).
  172. Si ce n'est pas le cas, un message d'erreur prévient l'utilisateur, en
  173. lui demandant d'activer la projection perspective
  174. \begin_inset Index idx
  175. status collapsed
  176. \begin_layout Plain Layout
  177. projection!pour visualisation
  178. \end_layout
  179. \end_inset
  180. .
  181. L'utilisateur doit ensuite choisir le niveau d'octree utilisé par la fonction
  182. (figure
  183. \begin_inset CommandInset ref
  184. LatexCommand ref
  185. reference "fig:HPRLevelChoice"
  186. \end_inset
  187. ).
  188. Le niveau d'octree
  189. \begin_inset Index idx
  190. status collapsed
  191. \begin_layout Plain Layout
  192. octree
  193. \end_layout
  194. \end_inset
  195. permet d’accélérer le calcul de l'enveloppe convexe (structure assez lourde)
  196. en réduisant le nombre de points utilisés (par sous-échantillonnage).
  197. Plus le niveau est élevé, et plus le calcul d'occlusion sera fin, mais
  198. plus le traitement sera long.
  199. \begin_inset Newline newline
  200. \end_inset
  201. \end_layout
  202. \begin_layout Standard
  203. \begin_inset Float figure
  204. placement !htb
  205. wide false
  206. sideways false
  207. status open
  208. \begin_layout Plain Layout
  209. \align center
  210. \begin_inset Graphics
  211. filename ../images/Partie3_Fonctions/HPRLevelChoice.png
  212. width 30text%
  213. \end_inset
  214. \begin_inset Caption
  215. \begin_layout Plain Layout
  216. \begin_inset CommandInset label
  217. LatexCommand label
  218. name "fig:HPRLevelChoice"
  219. \end_inset
  220. Interface de choix de niveau d'octree
  221. \end_layout
  222. \end_inset
  223. \end_layout
  224. \end_inset
  225. \end_layout
  226. \begin_layout Standard
  227. Une fois le filtrage effectué, celui-ci n'est valide que pour la position
  228. de caméra courante.
  229. Il faut relancer l'outil pour mettre à jour le filtrage selon un nouveau
  230. point de vue.
  231. \begin_inset Newline newline
  232. \end_inset
  233. \end_layout
  234. \begin_layout Standard
  235. \begin_inset ERT
  236. status open
  237. \begin_layout Plain Layout
  238. \backslash
  239. textcolor{red}
  240. \end_layout
  241. \end_inset
  242. \begin_inset ERT
  243. status collapsed
  244. \begin_layout Plain Layout
  245. {
  246. \end_layout
  247. \end_inset
  248. Attention, les points cachés par cette méthodes ne peuvent pas être ré-affichés
  249. via une méthode ad-hoc (pour l'instant).
  250. Il faut en attendant utiliser un artifice : activer l'outil de segmentation
  251. manuelle sur le nuage (l'icône des "ciseaux" - section
  252. \begin_inset space ~
  253. \end_inset
  254. \begin_inset CommandInset ref
  255. LatexCommand ref
  256. reference "subsection:graphicalSegmentation"
  257. \end_inset
  258. ) qui réinitialise l'information de visibilité par point) puis quitter ce
  259. mode sans rien faire.
  260. \begin_inset ERT
  261. status collapsed
  262. \begin_layout Plain Layout
  263. }
  264. \end_layout
  265. \end_inset
  266. \end_layout
  267. \end_body
  268. \end_document