User Tools

Site Tools


framework

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
framework [2017/06/26 21:02]
admin
framework [2020/10/09 16:29] (current)
Line 1: Line 1:
-===== Foreword: where to find it? ===== 
- 
-  * Binaries: see the [[downloads|download page]] 
-  * Source code: check the [[https://gitlab.inria.fr/piper | gitlab]] (open) 
-  * Documentation: the current version is [[http://piper.gforge.inria.fr/doc/|available online (websearch broken)]]  
- 
- 
 ===== Overview: what is it? ===== ===== Overview: what is it? =====
  
 The PIPER software framework was developed to help with the positioning and the personalization of Human Body Models (HBM) for injury prediction to be used in road safety. These HBM are typically available in one size and one posture (which can be difficult or time consuming to change), and they are implemented in commercial explicit Finite Element (FE) codes such as Ld-Dyna3D (LSTC), Pamcrash (ESI), Radioss (Altair) or Abaqus. The PIPER software framework was developed to help with the positioning and the personalization of Human Body Models (HBM) for injury prediction to be used in road safety. These HBM are typically available in one size and one posture (which can be difficult or time consuming to change), and they are implemented in commercial explicit Finite Element (FE) codes such as Ld-Dyna3D (LSTC), Pamcrash (ESI), Radioss (Altair) or Abaqus.
  
-The framework aims to be modular, and model and code agnostic. More specifically, the idea is to be able to apply the same positioning, scaling or personalizing methodologies to several models in different codes, resulting in models that can be used in simulations with little or no correction. For this, the framework handles the import and export of the model, and model transformation methodologies are implemented in reusable modules. In order to facilitate the real time user interactions, the PIPER framework uses only use geometric or lightweight physics approaches for the modules transforming the FE model.+The framework aims to be modular, and model and code agnostic. More specifically, the idea is to be able to apply the same positioning, scaling or personalizing methodologies to several models in different codes, resulting in models that can be used in simulations with little or no correction. For this, the framework handles the import and export of the model, and model transformation methodologies are implemented in reusable modules. In order to facilitate the real time user interactions, the PIPER framework only uses geometric or lightweight physics approaches for the modules transforming the FE model.
  
 In practice, the import, export, and most modules developed up to now are included in a main application that also provides a GUI, a 3D display of the model and a Python scripting interface. As it is Open Source, the framework and application uses many other open source libraries. The framework can easily be extended by adding modules or through scripting. The software was developed as part of the PIPER European Project. In practice, the import, export, and most modules developed up to now are included in a main application that also provides a GUI, a 3D display of the model and a Python scripting interface. As it is Open Source, the framework and application uses many other open source libraries. The framework can easily be extended by adding modules or through scripting. The software was developed as part of the PIPER European Project.
  
-Several modules are already included in the sofware for scaling or positioning (see descriptions below).+Several modules are already included in the software (see descriptions below).
 The framework and all its modules were released under an Open Source License end of April 2017. The framework and all its modules were released under an Open Source License end of April 2017.
  
Line 22: Line 15:
  
   * a module to estimates anthropometric dimensions based on a set of predictors (Anthropometric Prediction Module) and three public anthropometric databases from children to elderly. A functionality to predict anthropometric dimensions directly using the GEBOD regression is also included.   * a module to estimates anthropometric dimensions based on a set of predictors (Anthropometric Prediction Module) and three public anthropometric databases from children to elderly. A functionality to predict anthropometric dimensions directly using the GEBOD regression is also included.
-  * the BodySection Module to build interactively correspondences between anthropometric dimensions and a HBM to prepare scaling. The module can also call all required modules to define the target and perform the transformation +  * the Scaling Constraints Module to interactively build correspondences between anthropometric dimensions and a HBM to prepare scaling. The module can also call all required modules to define the target and perform the transformation 
-  * a geometrical interpolation module to support model morphing (Kriging Module). The module integrates many numerical features useful within the context of HBM scaling (allows arbitrary number of control points, automatic control point decimation, weighting of the bone and skin, use of surface distance...) +  * a geometrical interpolation module to support model morphing (Kriging Module). The module integrates many numerical features useful within the context of HBM scaling (allows arbitrary number of control points, automatic control point decimation...) 
-  * a module (Scaling the PIPER child model by age) dedicated to the PIPER Child scaling with age, which allows generating easily models by selecting and age or stature started (based on the GEBOD regressions). The functionality to scale the material parameters with age is also included as an experimental feature.+  * a module (Scaling the PIPER child model by age) dedicated to the PIPER Child scalable model, which allows to generate models matching an age or stature (based on the GEBOD regressions). The functionality to scale the material parameters with age is also included as an experimental feature.
   * a Contour Deformation Module to transform the HBM using contour based approaches   * a Contour Deformation Module to transform the HBM using contour based approaches
 +
 +{{ :scalconstraint_example.png?nolink&300 |Scaling Constraint module with GHBMC}} {{ :child_scaling.png?nolink&400 |Child scaling module}}
  
 ===== Positioning in PIPER: overview ===== ===== Positioning in PIPER: overview =====
Line 33: Line 28:
 The PIPER framework aims to propose some alternative methodologies that can be used along current approaches. Positioning in PIPER typically starts with the Physics-based Interactive Pre-Positioning Module (or pre-positioning). The HBM is automatically transformed into a simplified model with a limited number of degrees of freedom that can be used in physics-based interactive simulation. Despite being simplified and interactive, the simulation can among others account for collisions between bones (to prevent penetration, limit range of motion, ...) and provide a rough transformation of the soft tissues. The PIPER framework aims to propose some alternative methodologies that can be used along current approaches. Positioning in PIPER typically starts with the Physics-based Interactive Pre-Positioning Module (or pre-positioning). The HBM is automatically transformed into a simplified model with a limited number of degrees of freedom that can be used in physics-based interactive simulation. Despite being simplified and interactive, the simulation can among others account for collisions between bones (to prevent penetration, limit range of motion, ...) and provide a rough transformation of the soft tissues.
  
-The pre-positioning process is the place where the user can input its various constraints, weight them, and compute a plausible posture (for the skeleton in particular). Constraints could also include a priori knowledge such as physiological observations or postural preferences which are not classical mechanical parameters. For now, physiological descriptions of the spinal curvature (called Spine controller) can interact with the model (e.g. collision detection on the vertebrae) during postural change.+The pre-positioning process is the place where the user can input its various constraints, weight them, and compute a plausible posture (for the skeleton in particular). Constraints could also include a priori knowledge such as physiological observations or postural preferences which are not classical mechanical parameters. For now, physiological descriptions of the spinal curvature (called the Spine predictor tool) can interact with the model (e.g. collision detection on the vertebrae) during postural change.
  
 Several options are then possible to transform the HBM using this pre-position as the target: Several options are then possible to transform the HBM using this pre-position as the target:
  
-  * the Physics-based Fine-Positioning Module : the pre-positioning motion can be repeated (using the constraints or the bone positions) with finer parameters for the simulation. While more time consuming (for the initialization in particular), it can provide a more plausible deformation of the flesh.+  * the Physics-based Fine-Positioning Module : the pre-positioning motion can be repeated (using the constraints or the bone positions) with finer parameters for the simulation. While more time consuming (for the initialisation in particular), it can provide a more plausible deformation of the flesh.
   * the Contour Deformation Module can be applied using the bony landmarks from the preposition as a target. It can also be used independently   * the Contour Deformation Module can be applied using the bony landmarks from the preposition as a target. It can also be used independently
-  * the pre-position can be used to generate a finite element simulation input (though a python script, an example being provided) and a full finite element simulation can be run.+  * the pre-position can be used to generate a finite element simulation input (through a python script, an example being provided) and a full finite element simulation can be run.
  
 In all cases, the use of the Transformation smoothing after positioning was found to greatly improve the results. In some cases (for smaller motion), the pre-position may be directly used and lead to a plausible and runnable model after smoothing. In all cases, the use of the Transformation smoothing after positioning was found to greatly improve the results. In some cases (for smaller motion), the pre-position may be directly used and lead to a plausible and runnable model after smoothing.
 +
 +{{ :ghbmc.png?nolink&300 |Interface in the preposition module (GHBMC, landmarks, frames)}}
 +{{ :ghbmc_position.png?nolink&600 |example of posture change (Ircobi 2018)}}
 +{{ :childpedestrian.png?nolink&300 |Example of custom affines on the child pedestrian model}}
 +
 +===== Where to find it? =====
 +
 +  * see the [[downloads|download page]]
framework.1498503744.txt.gz · Last modified: 2017/06/26 21:02 by admin