propositions de projets · 2012. 11. 28. · projets m1 is 2012-2013 génération automatique de...

5
Master1 IS 2012_2013 Spécialité Imagerie Numérique Propositions de Projets Voici les intitulés et responsables des projets proposés : - Simulation réaliste du comportement d'organes à tissus mous. Sujet proposé par Marc Emmanuel Bellemare, [email protected] - Débruitage par moyennes non locales. Sujet proposé par Julien Lefèvre, [email protected] - Génération automatique de maillages à partir d'une esquisse 3D : étude de l'existant et développement d'une approche basée "octree" Sujet proposé par Jean-Luc Mari, [email protected] - Reconstruction de surface : L’algorithme CRUST Sujet proposé par Julien Seinturier, [email protected]

Upload: others

Post on 13-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Propositions de Projets · 2012. 11. 28. · Projets M1 IS 2012-2013 Génération automatique de maillages à partir d'une esquisse 3D : étude de l'existant et développement d'une

Master1 IS 2012_2013 Spécialité Imagerie Numérique

Propositions de Projets

Voici les intitulés et responsables des projets proposés :

- Simulation réaliste du comportement d'organes à tissus mous.

Sujet proposé par Marc Emmanuel Bellemare, [email protected]

- Débruitage par moyennes non locales.

Sujet proposé par Julien Lefèvre, [email protected]

- Génération automatique de maillages à partir d'une esquisse 3D : étude de l'existant et développement d'une approche basée "octree"

Sujet proposé par Jean-Luc Mari, [email protected]

- Reconstruction de surface : L’algorithme CRUST

Sujet proposé par Julien Seinturier, [email protected]

Page 2: Propositions de Projets · 2012. 11. 28. · Projets M1 IS 2012-2013 Génération automatique de maillages à partir d'une esquisse 3D : étude de l'existant et développement d'une

Proposition de projet de Master IS

Dans le cadre du projet « Modélisation de la Dynamique Pelvienne » (http://modype.lsis.org/accueil/) financé par l’Agence Nationale de la Recherche (ANR – 09 – SYSC – 008), nous proposons un stage concernant la simulation réaliste du comportement d'organes à tissus mous. Un prototype de simulateur biomécanique du comportement des organes pelviens est disponible au laboratoire. Les notions fondamentales concernées sont la gestion de la collision de modèles maillés, Il s’agira d’améliorer l’existant en testant éventuellement un nouveau modèle masse-ressorts.Les développements seront produits en C++ avec la plateforme Qt.

Le (ou la) candidat(e) préférant éventuellement un travail autour du développement pourra préférer d’envisager un portage du projet actuel sous l’API SOFA (http://www.sofa-framework.org/home) maintenue par l’INRIA. Il s'agira alors dans un premier temps de réaliser un simulateur de corps déformable avec cette API. La mise en œuvre du simulateur complet pouvant être une charge trop lourde.

Fig. 1

La Fig.1 illustre l'allure de l'interface actuelle de l'outil de visualisation des simulations : la représentation graphique de gauche représente le maillage celle de droite une coupe médiane.

Contact : [email protected]

Le travail sera réalisé au choix à Polytech' St Jérôme ou à Polytech' Luminy.

Page 3: Propositions de Projets · 2012. 11. 28. · Projets M1 IS 2012-2013 Génération automatique de maillages à partir d'une esquisse 3D : étude de l'existant et développement d'une

!"#$%&'()*+,($+-./*00*1+0.023.4(3*1+!"#$%&'()')*+&',(&-"./$0&1$234($&&!"#$%&'()*+,- .,/- +&0,11,/- 1&12$&3#$,/- 45&12$&3#$- 6,#1/7- #- 8)8- (1)'&.9()- )':/-

'83,++,1)-;#'-<9#.,/=->&$$-,)-6&',$-?@A-,)-#-&BB,')-.,/-'8/9$)#)/-)':/-C&1/-,1-.8C'9()#%,--

."(+#%,-,)-.#1/-."#9)',/-)0;,/-."#;;$(3#)(&1/-+8.(3#$,/-?DAE-

!,-;'(13(;,-,/)--/(+;$,-,)-3&1/(/),-F-)(','-;'&B()-."91,-',.&1.#13,-."(1B&'+#)(&1-F-$&1%9,-

.(/)#13,- G9,- $"&1- ;,9)- )'&9H,'- .#1/- $,/- (+#%,/- 1#)9',$$,/E- I1- ."#9)',/- ),'+,/- /(- &1-

3&1/(.:',-91-H&(/(1#%,-J-."91-;(K,$-;-."91,-(+#%,=-&1-;,9)-3*,'3*,'-.,/-H&(/(1#%,/-J"-.,-

+L+,- )#($$,- 3,1)'8- /9'- ."#9)',/- ;(K,$/- ;"- .,- $"(+#%,- ,)- ),$/- G9,- $"(1B&'+#)(&1- ,/)- )':/-

/(+($#(',-#9-H&(/(1#%,-J-3&1/(.8'8E-I1/9(),-&1-;,9)-.8C'9(),'-,1-;',1#1)-/(+;$,+,1)-$#-

+&0,11,-.,/-1(H,#9K-.,-%'(/-.,/-;(K,$/-;"-;&1.8'8/-;#'-$#-/(+($#'()8E-

-

5&)%$*+67+!8(,$91+:6;<+=+)(%4>*?+@33%1'$('&.0+A*+38(3).$&'>-*+A*+-./*00*1+0.023.4(3*1+(B*4+%0+B.&1&0()*+,?+A*%C+B.&1&0()*1+1&-&3(&$*1+DE6?+EFG+*'+%0+B.&1&0()*+H(&#3*-*0'+4.$$"3"+DEIG<+=+A$.&'*?+A*+)(%4>*+J+A$.&'*?+A*+>(%'+*0+#(1+7+&-()*+#$%&'"*?+H&3'$*+)(%11&*0?+H&3'$*+(0&1.'$.,*?+H&3'$*+,($+-&0&-&1('&.0+A*+3(+B($&('&.0+'.'(3*?+

H&3'$*+,($+B.&1&0()*?++H&3'$*+,($+-./*00*+0.023.4(3*+

M#1/-3,-;'&N,)-($-/"#%('#-O-

@7-."(+;$8+,1),'-$#-+8)*&.,-&'(%(1,$$,-.,/-+&0,11,/-1&1-$&3#$,/--/9'-91,-(+#%,-?@AE-

D7-.,- B#(',-.,/- ),/)/- /9'-.,/- (+#%,/-C'9()8,/-,)-.,- 3&+;#','-F-."#9)',/-+8)*&.,/-G9,-

H&9/-3&11#(//,P-4B($)',-+8.(#1=-8G9#)(&1/-.,-.(BB9/(&1-,)37E-

Q7-.,-;'&;&/,'=-/"($-',/),-.9-),+;/=-91,-#.#;)#)(&1-.,-$"#$%&'()*+,-/9'-91-+#($$#%,=-;&9'-

.8C'9(),'-91,-),K)9',-&9-$,-+#($$#%,-$9(2+L+,E-R1-;&9''#-/"(1/;(','-.,-?QAE-

K&#3&.)$(,>&*+

?@A-<9#.,/=-SE-=>&$$=-<E=-6&',$=-TE6E=-5&0)06.)7,.&,.8)(/%9:&2)(&/:,8$&;$0)/*/08=-UIII->&+;9),'-V&3(,)0->&1B,',13,-&1->&+;9),'-J(/(&1-#1.-W#)),'1-X,3&%1()(&1=-D=-YZ2Y[=-DZZ[E--

-

?DA->&9;8=-WE=-\%,'=-WE=-<#'($$&)=->E=-<,*%&0)0&.)7,.&:$,0*&;$0)/*/08&2)(&=>&?@&/:,8$*=-6,.(3#$-U+#%,->&+;9)(1%-#1.->&+;9),'2S//(/),.-U1),'H,1)(&1=-QQ2]Z=-DZZYE-

-

?QA-\&/*(P#^#=-VE=-<,$0#,H=-SE-=V,(.,$=-_EWE=-!:))%9/08&AB&$C,:'.$D&?$*9&;$0)/*/08&AB&,4$(,8/08&E/%9&*/:/.,(/%B6A,*$;&E$/89%*=-UIII-U1),'1#)(&1#$->&1B,',13,-&1-V*#;,-6&.,$(1%-#1.-S;;$(3#)(&1/=-DZZYE-

Page 4: Propositions de Projets · 2012. 11. 28. · Projets M1 IS 2012-2013 Génération automatique de maillages à partir d'une esquisse 3D : étude de l'existant et développement d'une

Projets M1 IS 2012-2013 Génération automatique de maillages à partir d'une esquisse 3D : étude de l'existant et développement d'une approche basée "octree". Jean-Luc Mari ([email protected]) Mots clés : modélisation 3D, maillages, squelettes, octrees. La construction automatique de formes à partir d’esquisses est une thématique en plein essor. Qu’elles soient « dessinées » en 2D ou en 3D, les esquisses permettent à des utilisateurs non spécialistes de créer des objets dans l’espace de manière ergonomique et intuitive. Plusieurs approches existent à l’heure actuelle, notamment les esquisses s’appuyant sur les « bords » de l’objet (comme lorsque l’on fait un dessin sur une feuille de papier, en traçant les contours d’une forme et en utilisant les ombrages pour donner une impression de volume), ou bien les esquisses à base de squelette qui permettent d’obtenir un solide par « gonflement » autour du squelette. L’objectif de ce projet est double : il s’agit tout d’abord de faire une étude de l’existant en matière d’esquisse de formes, puis de développer une méthode de génération automatique de surfaces triangulées s’appuyant sur une esquisse de type « octree ». A partir de cette esquisse, un squelette topologique (un 3-complexe simplicial non pur) devra tout d’abord être construit, en respectant les règles intrinsèques de connectivité (analogues au 26-voisinage dans un volume numérique). Un maillage « englobant » sera ensuite généré en élaborant des règles simples de placement/connexion de points. Les figures 1 et 2 présentent les résultats obtenus par une approche similaire, mais restreinte aux esquisses inscrites dans un volume numérique (c’est-à-dire des esquisses simplement constituées de voxels). La topologie du polyèdre résultant devra ainsi être caractérisée par l’esquisse octree. De plus, la structure triangulée devra être conforme à une utilisation ultérieure avec des surfaces de subdivision, de manière à pouvoir obtenir plusieurs niveaux de détails de l’objet esquissé.

7.3 Processus de génération du maillage englobant 113

d’un point de départ approprié à la multi-résolution pour des surfaces de subdivision. Toutes lesopérations effectuées sur le maillage résultant sont réalisées en respectant la topologie définie parl’esquisse.

7.3.1 Déroulement du processus : de l’esquisse au polyèdre

Le processus de génération développé met en jeu trois entités : une esquisse discrète constituéede voxels, son squelette associé et qui caractérise la topologie de la forme, puis la surface mailléeenglobante.

La figure 7.1 illustre une esquisse constituée de voxels (non encore connectés), son squeletteassocié et le polyèdre basique résultant. La figure 7.2 montre le squelette (i.e. l’esquisse connectée),les points générés automatiquement avant la phase de maillage, et le polyèdre obtenu.

Figure 7.1. Esquisse, squelette et polyèdre résultant.

Figure 7.2. Squelette (esquisse connectée), points entourant le squelette, et polyèdre résultant.

Pour construire un ensemble de voxels édités interactivement par un designer, il est tout d’abordnécessaire de choisir la résolution de la grille (par exemple un pavé 323 de l’espace discret Z3). Suiteà cela, le designer dessine les voxels en sachant que la 26-adjacence sera utilisée pour déterminerles voxels qui doivent être connectés.

Au cours de cette étape d’édition des voxels, l’algorithme construit au fur et à mesure un sque-lette : des segments, des triangles et des tétraèdres sont générés pour mettre en évidence les relationsde connexité entre les voxels.

Une fois le squelette calculé à partir de l’esquisse discrète, un algorithme spécifique est appliquépour générer une forme basique dont la topologie est définie par le squelette. Ceci est valable carles sommets de la surface sont situés à des positions « sûres » relativement aux voxels du squelette,pour garantir la topologie du maillage ultérieur.

Le polyèdre obtenu est un descripteur géométrique pertinent de l’objet esquissé. Ce maillagecaractérise la forme globale, à bas niveau de résolution. Pour cette raison, il est naturel de le consi-dérer comme le polyèdre de contrôle d’une surface de subdivision. En utilisant par exemple unschéma approximant tel que celui de Loop (voir section 7.3.4), la surface obtenue sera légèrement

Figure 1 : Squelette (esquisse connectée), points entourant le squelette, et polyèdre résultant.

7.4 Validation et exemples 119

7.4 Validation et exemples

Dans cette section, nous illustrons notre approche par plusieurs exemples de conception de

forme, depuis l’esquisse jusqu’à la surface raffinée finale, et en passant par le maillage généré

automatiquement. Une vidéo est disponible à l’adresse suivante :

http://bitly.com/surface_sketching

7.4.1 Exemple : un « insecte troué »

On se propose de décrire étape par étape la construction d’un insecte imaginaire, pour illustrer

la manière de caractériser la topologie de l’objet (il s’agit ici d’une surface de genre 1, et dont le

solide associé comporte deux cavités).

7.4.1.1 Esquisse de l’insecteTout d’abord, les caractéristiques globales de la forme à concevoir sont définies dans une grille

cubique, comme le montre la figure 7.11 (a,b,c). Ceci est effectué en utilisant un curseur 3D et en

déplaçant un plan d’édition (la grille en jaune sur la figure).

Figure 7.11. Esquisse dans une grille 3D (a,b,c). Génération du maillage (d).

Au cours de l’édition des voxels de l’esquisse, les sommets, les arêtes, les triangles et les tétra-

èdres sont construits pour caractériser la topologie de l’objet.

7.4.1.2 Polyèdre englobantDans un second temps, le polyèdre englobant est automatiquement généré d’après les règles

définies dans la section 7.3.3. La figure 7.11 (d) illustre les sommets générés à la suite de la phase

de maillage. Le polyèdre obtenu entoure l’esquisse. On peut noter la présence du trou dans la surface

et des deux cavités de l’insecte, initialement définies par un cycle et par deux coques.

7.4.1.3 Niveaux de détailsA partir du polyèdre englobant, les niveaux de détails sont construits en utilisant le schéma de

subdivision de Loop. De la gauche vers la droite, la figure 7.12 présente le polyèdre de contrôle de

Figure 2 : Construction d’une esquisse dans une grille 3D, et maillage englobant généré.

Page 5: Propositions de Projets · 2012. 11. 28. · Projets M1 IS 2012-2013 Génération automatique de maillages à partir d'une esquisse 3D : étude de l'existant et développement d'une

!"#$%&'()#'*$%+,"+&)(-.#"+/+

!"#$%&'()*+,-./012-

!"#$%&$"'(!"!#$%&'(!)'&(*$+&'+!,-$%&'(./'&(*$+&'+0$(&1234$.5+67!8&'++'!9+3:!,:&'++'.;+3:0$(&1234$.5+6!

)*+,-'+%*+#*+.&/0*'+*'+ 123'-%*+*'+1$+45(*+*"+.1$#*+%2-"+$16/&5'74*+%*+&*#/"('&-#'5/"+%*+(-&8$#*+9:+;+.$&'5&+ %2-"+ "-$6*+ %*+ ./5"'+ *"+ -'515($"'+ 12$16/&5'74*+ <=>?@A+ )254.1$"'$'5/"+ %*+ 12$16/&5'74*+ (*&$+*88*#'-3*+%$"(+1*+#$%&*+%*+1$+.1$'*8/&4*+B=C!D@!>=E+%3%53*+;+1$+4*(-&*+.7/'/6&$443'&5F-*A+<*''*+.1$'*8/&4*E+ 3#&5'*+ *"+ GBHB+ #/-I&*+ 1*(+ %5883&*"'*(+ 3'$.*(+ %2-"+ .&/#*((-(+ %*+ &*1*I3+ $11$"'+ %*+12/&5*"'$'5/"+ %*+ .7/'/6&$.75*(+ ;+ 1$+ I5(-$15($'5/"+ %*+ 4/%J1*(+ 9:+ *'+ 1*-&+ 5"'*&$#'5/"+ $I*#+ %*(+5"8/&4$'5/"(+"/"+"3#*(($5&*4*"'+63/43'&5F-*(A+

+

0)1"'+/+

<3! +'=>(/*+$=*&>(! ;'! /$+53='! ;':$&/! $(! ($3?'! ;'! :>&(*/! '/*! $(! :+>@%A4'! 3=*$'%! +'(5>+=B! :3+! %'/!

(>$1'%%'/!'*!(>4@+'$/'/!4B*C>;'/!;D>@*'(*&>(!+3:&;'!;'!='/!($3?'/!,'(!:3+*&=$%&'+!;3(/!%'!=3;+'!;'!

%3!:C>*>?+344B*+&'!31'=!;'/! %>?&=&'%/!>$!:%3*'5>+4'/! *'%%'/!E$'!)*+$=*$+'!F+>4!G>*&>(H! ,)FG6!>$!

'(=>+'! I?&/>5*J! 8C>*>)=3(K6.! <D>@*'(*&>(! ;D$(! 43&%%3?'! L9! ,4'/C6! +':+B/'(*3(*! %3! /$+53='! ;$!

4>;A%'!+':>/'!/$+!%'!*+3&*'4'(*!;$!($3?'!;'!:>&(*/!:3+!;'/!3%?>+&*C4'/!;'!+'=>(/*+$=*&>(.!

93(/! %3! %&**B+3*$+'7! ;'! (>4@+'$M! 3%?>+&*C4'/! ;'! +'=>(/*+$=*&>(! >(*! B*B! :+>:>/B/.! NC3=$(!

:'+4'**3(*!;'!:+>;$&+'!$(!43&%%3?'!/$&13(*!;&55B+'(*'/!4B*C>;'/! ,'M*+3:>%3*&>(7!;'(/&5&=3*&>(7!O6.!

N'!:+>-'*!/'!5>=3%&/'+3!/$+!%D3%?>+&*C4'!NPQ)R7!E$&!:'+4'*!%3!+'=>(/*+$=*&>(!;D$('!/$+53='!;B5&(&'!:3+!

$(!($3?'!;'!:>&(*/! ,1>&+!S!T'U!V>+>(>&2W3/';!)$+53='!P'=>(/*+$=*&>(!I%?>+&*C4!X! Y)Z[[PI8\]^_6.!

N'*!3%?>+&*C4'!:'+4'*!`!:3+*&+!;D$('!*+&3(?$%3*&>(!;'!;'%3$(3a!;'!+'=>(/*+$&+'!%3!/$+53='!/>$C3&*B'.!

I5&(!;'!=>4:%B*'+!='!:+>-'*7!%'!*+313&%!;'43(;B!/'+3!;'!"!

2 )'!534&%&3+&/'+!31'=!%'/!(>*&>(/!;'!9&3?+34'!;'!V>+>(>&!b!R+&3(?$%3*&>(!;'!9'%3$(3a!c!

2 F3&+'!$('!B*$;'!;'!%D3%?>+&*C4'!NPQ)R!;>((B!;3(/!Y)Z[[PI8\]^_!c!

2 Z4:%3(*'+!%D3%?>+&*C4'!'(!#313!3$!/'&(!;'!%3!:%3*'5>+4'!I+:'(*'$+!c!

2 d*3@%&+!$(!-'$!;'!*'/*!35&(!;'!13%&;'+!%D&4:%3(*3*&>(!;'!%D3%?>+&*C4'!'*!/3!:'+5>+43(='.!

Q(!+3::>+*!+'*+3e3(*!%'!;B+>$%'4'(*!;$!*+313&%!/'+3!B?3%'4'(*!;'43(;B.!

!

!

!

Y)Z[[PI8\]^_! S!T'U! V>+>(>&2W3/';! )$+53='! P'=>(/*+$=*&>(! I%?>+&*C4!X7! 8+>='';&(?/! >5! *C'! Kf*C!

I(($3%!N>(5'+'(='!>(!N>4:$*'+![+3:C&=/7!#$%a!H]2Kg7!H]]^7!h+%3(;>7!F<7!Q)I!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!H!C**:"bbUUU.1&/$3%2'M:'+&4'(*/.=>4b;'4>/b/54*>>%i&*b!!

K!C**:"bbUUU.3?&/>5*.+$b:+>;$=*/b:C>*>/=3(!!