Skip to content

Python-based tool to generate anthropometric human whole-body models in a URDF format

License

Notifications You must be signed in to change notification settings

ami-iit/human-model-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Human Model Generator (HMG) License

The Human Model Generator is a Python-based tool designed to generate anthropometric human whole-body models in the Unified Robot Description Format (URDF) standard, suitable in robotics for motion analysis and simulation applications.

Introduction

The movement of the human body is made possible through the synergistic action of the nervous, muscular, and skeletal systems. The nervous system sends signals to the muscles, causing them to contract and exert forces on the skeletal system. This intricate interaction between these systems enables complex and coordinated motions. Musculoskeletal models offer a valuable approximation of the human anatomy and they are used extensively in fields like biomechanics, robotics, and computer simulations to study and mimic human movement. Muscle modeling is essential for a comprehensive understanding of human movement. This involves the simulation of the behavior of muscles, including their activation patterns, force production, and interaction with the skeletal system. Accurate muscle models can predict how whole-body movement and performance are affected by changes in muscle strength, coordination, and fatigue. However, for a more accurate representation, additional data is required to customize models for different subjects, such as inertial parameters of body segments and anthropometric measurements. Therefore, the goal of the HMG is to develop an advanced human model that integrates both skeletal and muscular information. This model not only includes detailed anatomical and inertial data, but it is also scalable to accommodate the specific features of each human subject. The HMG also incorporates meshes for both the links and muscles, which are modeled to enhance the visual and physical representation of the human body.



Dependencies

This library requires the following dependencies:

  • idyntree
  • urdf-modifiers
  • urchin *(Note: the usage of urchin is a temporary step. Once the branch (traversaro-patch-2) is merged, it will be integrated into urdf-modifiers.)

Installation with conda (recommended)

  • Create and activate a brand new enviroment
conda create -n name_new_env
conda activate name_new_env
  • Install idyntree following these instructions [MATLAB bindings not required]
  • Install urdf-modifiers
git clone https://github.com/icub-tech-iit/urdf-modifiers.git
cd urdf-modifiers
pip install .
  • Install urchin
git clone https://github.com/fishbotics/urchin.git
cd urchin
git checkout traversaro-patch-2
pip install .

Usage

git clone https://github.com/ami-iit/human-model-generator.git
cd human-model-generator/code
  • Open the file config.py with a text editor
  • Manually modify the parameters according to the human subject anthropometric measurements (see this file)
  • Generate the model by running python main.py
  • The URDF model will be saved in the folder models/humanModels

License

The meshes for the links are derived from the Blendswap model under the CC-BY license, whereas the meshes for the muscles are derived from BodyParts3D and Blendswap, both under the CC-BY-SA license. All the meshes were trimmed, morphed, and totally or partially reconstructed to achieve the desired shape and topology.

Maintainers

Lorenzo Fiori Claudia Latella