| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355 |
- #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 Section
- qHPR - Hidden Point Removal
- \end_layout
- \begin_layout Standard
- \begin_inset Index idx
- status collapsed
- \begin_layout Plain Layout
- qHPR, filtrage de points
- \end_layout
- \end_inset
-
- \begin_inset CommandInset label
- LatexCommand label
- name "subsection:qHPR"
- \end_inset
- \end_layout
- \begin_layout Standard
- La fonction
- \series bold
- H
- \series default
- idden
- \series bold
- P
- \series default
- oints
- \series bold
- R
- \series default
- emoval tente, comme son nom l'indique, de cacher les points d'un nuage qui
- ne sont par réellement
- \emph on
- visibles
- \emph default
- (i.e.
- qui ne correspondent pas à la surface implicite effectivement visible depuis
- le point de vue courant
- \begin_inset Index idx
- status collapsed
- \begin_layout Plain Layout
- point de vue
- \end_layout
- \end_inset
- ).
- Le résultat dépend donc directement du point de vue.
- \begin_inset Newline newline
- \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/HPRExample.jpg
- width 80text%
- \end_inset
-
- \begin_inset Caption
- \begin_layout Plain Layout
- \begin_inset CommandInset label
- LatexCommand label
- name "fig:HPRExample"
- \end_inset
- Nuage de point complet (à droite) et nuage de point filtré avec la technique
- "HPR" (à gauche)
- \end_layout
- \end_inset
- \end_layout
- \end_inset
- \end_layout
- \begin_layout Standard
- La notion de visibilité pour les points d'un nuage est relativement complexe
- à estimer.
- En effet il est très peu probable qu'un point soit réellement masqué par
- d'autres points dans un nuage, puisque cela nécessiterait un alignement
- parfait entre paires de points (en fonction du point de vue !) ou une densité
- du nuage telle que les points soient quasiment en contact.
- Cette fonction approxime donc la notion de visibilité via un calcul d'enveloppe
- convexe.
- Elle se base sur l'article
- \emph on
- Direct Visibility of Point Sets
- \emph default
- de Katz, Tal et Basri, SIGGRAPH 2007.
-
- \begin_inset Newline newline
- \end_inset
-
- \end_layout
- \begin_layout Standard
- Pour calculer les occlusions par HPR, il est nécessaire que la vue 3D dans
- laquelle est affichée l'entité soit en projection perspective (cf.
- section
- \begin_inset CommandInset ref
- LatexCommand ref
- reference "subsection:centeredPerspective"
- \end_inset
- ).
- Si ce n'est pas le cas, un message d'erreur prévient l'utilisateur, en
- lui demandant d'activer la projection perspective
- \begin_inset Index idx
- status collapsed
- \begin_layout Plain Layout
- projection!pour visualisation
- \end_layout
- \end_inset
- .
- L'utilisateur doit ensuite choisir le niveau d'octree utilisé par la fonction
- (figure
- \begin_inset CommandInset ref
- LatexCommand ref
- reference "fig:HPRLevelChoice"
- \end_inset
- ).
- Le niveau d'octree
- \begin_inset Index idx
- status collapsed
- \begin_layout Plain Layout
- octree
- \end_layout
- \end_inset
- permet d’accélérer le calcul de l'enveloppe convexe (structure assez lourde)
- en réduisant le nombre de points utilisés (par sous-échantillonnage).
- Plus le niveau est élevé, et plus le calcul d'occlusion sera fin, mais
- plus le traitement sera long.
-
- \begin_inset Newline newline
- \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/HPRLevelChoice.png
- width 30text%
- \end_inset
-
- \begin_inset Caption
- \begin_layout Plain Layout
- \begin_inset CommandInset label
- LatexCommand label
- name "fig:HPRLevelChoice"
- \end_inset
- Interface de choix de niveau d'octree
- \end_layout
- \end_inset
- \end_layout
- \end_inset
- \end_layout
- \begin_layout Standard
- Une fois le filtrage effectué, celui-ci n'est valide que pour la position
- de caméra courante.
- Il faut relancer l'outil pour mettre à jour le filtrage selon un nouveau
- point de vue.
- \begin_inset Newline newline
- \end_inset
-
- \end_layout
- \begin_layout Standard
- \begin_inset ERT
- status open
- \begin_layout Plain Layout
- \backslash
- textcolor{red}
- \end_layout
- \end_inset
- \begin_inset ERT
- status collapsed
- \begin_layout Plain Layout
- {
- \end_layout
- \end_inset
- Attention, les points cachés par cette méthodes ne peuvent pas être ré-affichés
- via une méthode ad-hoc (pour l'instant).
- Il faut en attendant utiliser un artifice : activer l'outil de segmentation
- manuelle sur le nuage (l'icône des "ciseaux" - section
- \begin_inset space ~
- \end_inset
- \begin_inset CommandInset ref
- LatexCommand ref
- reference "subsection:graphicalSegmentation"
- \end_inset
- ) qui réinitialise l'information de visibilité par point) puis quitter ce
- mode sans rien faire.
- \begin_inset ERT
- status collapsed
- \begin_layout Plain Layout
- }
- \end_layout
- \end_inset
-
- \end_layout
- \end_body
- \end_document
|