SOFA: A modular yet efficient simulation framework

Please download to get full document.

View again

of 9
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Document Description
SOFA: A modular yet efficient simulation framework
Document Share
Document Tags
Document Transcript
  SOFA: A modular yet efficient simulation framework Fran¸cois Faure, J´er´emie Allard, St´ephane Cotin, Paul Neumann, Pierre-JeanBensoussan, Christian Duriez, Herv´e Delingette, Laurent Grisoni To cite this version: Fran¸cois Faure, J´er´emie Allard, St´ephane Cotin, Paul Neumann, Pierre-Jean Bensoussan, et al..SOFA: A modular yet efficient simulation framework. Surgetica 2007: Computer-Aided MedicalInterventions: tools and applications, 2007, Chambery, France. 2007.  < inria-00319407v1 > HAL Id: inria-00319407 Submitted on 9 Sep 2008 (v1), last revised 15 Jan 2010 (v2) HAL  is a multi-disciplinary open accessarchive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come fromteaching and research institutions in France orabroad, or from public or private research centers.L’archive ouverte pluridisciplinaire  HAL , estdestin´ee au d´epˆot et `a la diffusion de documentsscientifiques de niveau recherche, publi´es ou non,´emanant des ´etablissements d’enseignement et derecherche fran¸cais ou ´etrangers, des laboratoirespublics ou priv´es.  SOFA: A MODULAR YET EFFICIENT SIMULATION FRAMEWORK   F. FAURE*, J. ALLARD + , S. COTIN  * , P. NEUMANN  + , P-J. BENSOUSSAN*, C. DURIEZ*, H. DELINGETTE*, L. GRISONI* * INRIA – Evasion, Alcove, and Asclepios teams – FRANCE + CIMIT Sim Group – 6 !ansdo"ne Street – Cam#rid$e, MA %&'() – SA Abstract. S+FA is a ne" open source rame"or- primaril. tar$eted at medical simulation researc/ and industr.0 It is #ased on a scene $rap/ data structure e1tended to p/.sical models and a#stract al$orit/ms0 Additionall., multiple models o t/e same o#2ects can easil. #e used to optimi3e dierent tas-s suc/ as orce computation, collision /andlin$, and renderin$0 T/is results in a /i$/l. le1i#le arc/itecture a#le to model and animate a "ide ran$e o simulated o#2ects0 4e e1plain t/e main concepts o S+FA and detail an e1ample o application to a sur$er. procedure0 1 Introduction Computer5#ased trainin$ s.stems oer an ele$ant solution to t/e current need or #etter trainin$ in Medicine0 It is "idel. admitted t/at sur$ical education and plannin$ can /i$/l. #eneit rom computer simulations0 o"ever in spite o t/e impressive developments in t/e ield o medical simulation, some undamental pro#lems still /inder t/e acceptance o t/is valua#le tec/nolo$. in dail. clinical practice0 In particular, t/e multi5disciplinar. aspect o medical simulation re7uires t/e inte$ration "it/in a sin$le environment o leadin$5ed$e solutions in areas as diverse as visuali3ation, #iomec/anical modelin$, /aptics or contact modelin$0 T/is diver5sit. o pro#lems ma-es it c/allen$in$ or researc/ers to ma-e pro$ress in speciic areas, and leads rat/er oten to duplication o eorts0For t/e past e" .ears, t/ere /ave #een attempts at desi$nin$ sot"are tool-its or medical simulation suc/ as S8RING 9:;, Gi8Si 9<;, =RASS 9(;, or SSTM! 9&;0 Alt/ou$/ t/ese dierent solutions /ad t/e same aim to provide an open source ans"er to t/e various c/al5len$es o medical simulation researc/ and development, t/e. "ere $enerall. limited #. t/eir or$ani3ation or /ad restrictions on t/e ran$e o p/.sical models, suc/ as mass5sprin$ s.stems, "it/ a limited c/oice o al$orit/ms or time inte$ration and collision detection0 4e propose a dierent approac/ t/rou$/ a ver. modular and le1i#le  sot"are rame"or- called S+FA 9';0 T/is open source rame"or- allo"s independentl. developed al$orit/ms to interact to$et/er "it/in a common simu5lation "/ile minimi3in$ t/e develop5ment time re7uired or inte$ration0T/e main o#2ectives o t/e S+FA rame"or- are>?8rovide a common sot"are rame"or- or t/e medical simulation communit. ?Ena#le component s/arin$ @ e1c/an$e and reduce development time ?8romote colla#oration amon$ researc/ $roups ?Ena#le validation and comparison o ne" al$orit/ms ?elp standardi3e t/e description o anatomical and #iomec/anical datasets+ur main overall $oal is to develop a le1i#le rame"or- "/ile minimi3in$ t/e impact o t/is le1i#ilit. on t/e computation over/ead0 To ac/ieve t/ese o#2ectives, "e /ave developed a ne" arc/itecture t/at implements a series o concepts descri#ed #elo"0 2 The SOFA architecture 2.1Mechanical scene graph Implementin$ t/e p/.sical simulation o a $iven model is $enerall. a /ard tas-0 ou irst descri#e t/e model usin$ p/.sical entities suc/ as points, masses, orces0 ou t/en implement p/.sical e7uations and al$orit/ms to animate t/e model0 And t/en, .ou inall. displa. ima$es usin$ computer $rap/ics tools0 Scene gr!"#  are popular $rap/ics tools #ecause t/e. allo" .ou to represent t/e model #. instantiatin$ simple sot"are o#2ects usin$ .our data, and t/en a $eneric renderin$ en$ine does t/e 2o# o$ ima$es0 T/e o#2ects are or$a5ni3ed in tree5li-e structures0 Some o t/em store coordinates, "/ile ot/ers re5present s/apes suc/ as pol.$on mes/es, li$/t sources, materials, or te1tures0 T/e o#2ects /ave various attri#utes suc/ as position, color or ile name0 +nce t/e o#2ects and attri#utes are set, t/e stan5dard $rap/ics operations suc/ as pol.5$on rasteri3ation, pi1el s/adin$, trans5parenc. accumulation or /idden parts removal, are automaticall. implemented #. t/e renderin$ en$ine0 sin$ scene $rap/s, a limited -no"5led$e o com5puter $rap/ics is suicient to $enerate #eautiul ima$es o comple1 models0 T/e. are "idel. used in simulators0T/e aim o S+FA is to #rin$ t/e po"er o scene $rap/s to mec/anical simula5tions0 It e1tends traditional scene $rap/s "it/ p/.sical components suc/ as orce ields, masses, and constraints0 Some ot/er components represent p/.sics al$orit/ms0 +nce a model, alon$ "it/ its associated al$orit/ms, is e1pressed as a S+FA $ec"n%c& #cene gr!" , standard p/.sical al$orit/ms are automaticall. implemented and availa#le0 T/is includes various e1plicit and implicit time inte$ration met/ods as "ell as collision detection and reaction #et"een various s/apes0 S+FA is o course e1tenda#le usin$ ne" components0In t/is paper, "e ocus on t/e simulation o viscoelastic #odies0 Most e1plicit and implicit time inte$ration met/ods can #e decomposed into a e" p/.sical proce5dures> $iven positions and velocities, ac5cumulate orcesB $iven orces, compute  accelerationsB ilter out or#idden displa5cementsB compute t/e product o t/e mass and stiness matrices "it/ a vec5tor0 T/e S+FA en$ine implements t/ese procedures #. traversin$ t/e scene $rap/ usin$ visitors "/ic/ tri$$er t/e appro5priate met/ods o t/e components0 T/is $uarantees t/at t/e procedures are auto5maticall. implemented, provided t/at t/e scene $rap/ is s.ntacticall. correct0S+FA can #e used in dierent "a.s0 Its deault application allo"s .ou to model scenes composed o various ri$id, viscoelastic or luid #odies in contact0 ou interact directl. "it/ t/e scene #. pic-in$ and pullin$ t/e o#2ects0 For a $iven model, .ou can compare time inte$ration or collision detection met/ods #. simpl. replacin$ compo5nents0 For a $iven s/ape, .ou can tr. various mec/anical models includin$ mass5sprin$s and FEM0 To implement a sop/isticated simulation, .ou can use t/e availa#le standard components and develop onl. t/e components related to .our area o e1pertise0 Section ( presents suc/ a case0 2.2 Multi-model representation An. simulation involves, to some e1tent, t/e computation o visual eed#ac-, /aptic eed#ac-, and interactions #et"een medical devices and anatomical structures0 T/is t.picall. translates into a simulation loop "/ere, at eac/ time step, collisions #et"een o#2ects are detected, deormation and collision response are computed, and t/e resultin$ state can #e visuall. and /apticall. rendered0 To perorm eac/ o t/ese actions, t/e various al$orit/ms involved in t/e simulation rel. implicitl. on dierent data structures or t/e simulated o#2ects0 In S+FA, "e e1plicitl. decompose an o#2ect into various representations, in suc/ a "a. t/at eac/ representation is more suited to"ard a particular tas- – renderin$, deormation, or collision detection0 T/en, t/ese representations are lin-ed to$et/er so t/e. can #e co/erentl. updated0 4e call t/e lin- #et"een t/ese representations a $!!%ng 0 =arious mappin$ unctions can #e deined, and  F%g. '( M)&%$e&# %n SOFA. Le( !##%&e re!re#en%n# r  #%$)&e /ec, 0%" "e Be"1%r  Me& cnr&&%ng "e )!e  "e "er re!re#en%n# "r)g"  #er%e#  $!!%ng#. R%g"( e2-$!&e#  "e#e re!re#en%n# r  &%1er $e&. N%ce "0 "e 3%#)& Me& %# $re e%&e "n "e Be"1%r Me& n "0 "e C&&%#%n Me& re&%e# n  1er4 %eren re!re#en%n.  eac/ mappin$ "ill associate a set o primitives o a representation to a set o primitives in t/e ot/er representation see Fi$ure 'D0 For instance, a mappin$ can connect de$rees o reedom in a e/avior Model to vertices in a =isual Model0 3 Application to eye surgery In t/is section, "e s/o" and discuss a S+FA scene used to simulate an op/t/almolo$. procedure called a vitrectom. "/ic/ reattac/es t/e retina0 In some dia#etic patients, prolierative i#rovascular tissue $ro"t/ can lead to traction "/ic/ can disrupt t/e retinas nature co/esion0 To model a dia#etic circumerential traction case, the circular i#ovascular mem#rane or #cr %##)e , compresses t/e retina radiall.0 +nce released, t/e retina rela1es to its natural s/ape0Fi$ure & illustrates t/e p/.sical model0 T/e scar tissue, in #lue, and t/e retina, in $reen, are modeled usin$ a mass5sprin$ s.stem0 Fi1ed particles, circled in #lac-, mimic t/e retinas natural attac/ments0 T/e s/ort sprin$s, in red, are removed "/en t/e #lade touc/es one o t/eir endpoints0T/e scene is decomposed in t/ree main parts, as illustrated in i$ure (> t/e p/.sical model o t/e e.e, t/e tool mani5pulated #. t/e sur$eon, and t/e i1ed o#2ects0 T/e de$rees o reedom +FD o t/e tool are stored in a Mec/anical5+#2ect component0 T/e. are controlled #. t/e /aptics device and optionall. re5cordin$ or$ t/e tra2ector. rom a ile usin$ t/e 4riteState and Read5State components0 T"o visi#le o#2ects are attac/ed to t/ese +F usin$ map5pin$s0 +ne represents t/e /andle and t/e ot/er represents t/e tip o t/e tool0 To allo" collision detection and modelin$ o t/e tool tip "it/ ot/er scene elements, "e use a !ineModel, "/ic/ deines a set o collida#le lines #ased on an associated mes/ topolo$.0 T/e associated +F t/e ed$e endpointsD are mapped rom t/e ri$id #od. +F0  F%g. 5( T!( "e !"4#%c& $e&  "e re%n n #cr %##)e. B$(  #%$)&%n #n!#". T/e deorma#le o#2ect is a p/.sical model controlled #. an implicit inte$ration solver implemented in t/e C$ImplicitSolver component0 Its masses and i1ed5point constraints are $iven in
Search Related
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks