|Developer(s)||The MakeHuman team.|
1.1.1 / March 5, 2017
|Operating system||Linux, Mac OS X, Windows|
|Type||3D computer graphics|
Makehuman is an open source 3D computer graphics software middleware designed for the prototyping of photo realistic humanoids. It is developed by a community of programmers, artists, and academics interested in 3D modeling of characters.
MakeHuman is developed using 3D morphing technology. Starting from a standard (unique) androgynous human base mesh, it can be transformed into a great variety of characters (male and female), mixing them with linear interpolation. For example, given the four main morphing targets (baby, teen, young, old) it is possible to obtain all the intermediate shapes.
Using this technology, with a large database of morphing targets, it’s virtually possible to reproduce any character. It uses a very simple GUI in order to access and easily handle hundreds of morphings. The MakeHuman approach is to use sliders with common parameters, like height, weight, gender, ethnicity and muscularity. In order to make it available on all main operating systems, beginning from 1.0 alpha 8 it’s developed in Python using OpenGL and Qt, with an architecture fully realized with plugins.
The tool is specifically designed for the modeling of virtual humans, with a simple and complete pose system that includes the simulation of muscular movement. The interface is easy to use, with fast and intuitive access to the numerous parameters required in modeling the human form.
The development of MakeHuman is derived from a detailed technical and artistic study of the morphological characteristics of the human body. The work deals with morphing, using linear interpolation of both translation and rotation. With these two methods together with a simple calculation of a form factor and an algorithm of mesh relaxing, it is possible to achieve results such as the simulation of muscular movement that accompanies the rotation of the limbs.
MakeHuman is fully Open Source. The character output of MakeHuman is released to public domain under CC0, in order to be freely used in commercial and non-commercial projects. The database and the code are released under the GNU License Affero GPL.
The ancestor of MakeHuman was MakeHead, a python script for Blender, written by Manuel Bastioni, artist and coder, in 1999. A year later, a team of developers had formed, and they released the first version of MakeHuman for Blender. The project evolved and, in 2003, it was officially recognized by the Blender Foundation and hosted on http://projects.blender.org. In 2004, the development stopped because it was difficult to write a Python script so big using only Blender API. In 2005, MH was moved outside Blender, hosted on SourceForge and rewritten from scratch in C. At this point, version counting restarted from zero. During successive years, the software gradually transitioned from C to C++.
While performant, it was too complex to develop and maintain. Hence, in 2009, the team decided to go back to the Python language (with a small C core) and to release MakeHuman as version 1.0 pre-alpha. Development continued at a pace of 2 releases per year. The stable version 1.0.0 was officially released March 14, 2014. MakeHuman 1.1.0 has been released May 14, 2016, around two years later. The most recent intermediate version is 1.1.1, as of March 5, 2017.
A community website was established June 2015 featuring a forum section, a wiki, and a repository for user contributed content for the program.
Evolution towards a universal model topology
The aim of the project is to develop an application capable of modeling a wide variety of human forms in the full range of natural poses from a single, universal mesh. For this purpose, the design of a 3D humanoid mesh that can readily be parametrically manipulated to represent anatomical characteristics has been pursued, the mesh includes a common skeleton structure that permits character posing. MakeHuman Team developed a model that combines different anatomical parameters to transition smoothly from the infant to the elderly, from man to woman and from fat to slim.
The initial mesh occupies a middle ground, being neither pronounced masculine, nor pronounced feminine, neither young nor old and having a medium muscular definition. Goal was to depict a fair-built androgynous form, named the HoMunculus. The current MakeHuman mesh has evolved through successive steps of MakeHuman project, incorporating lessons learned, community feedback and the results of considerable amounts of studies and experimentation.
Evolution of the mesh for the human model:
- A first universal mesh prototype (head only), done in 1999 using makeHead script, was adapted for the early MakeHuman in 2000.
- The first professional mesh (HM01) for a human model was realized by Enrico Valenza in 2002.
- A second remarkable mesh (K-Mesh or HM02) was modelled by Kaushik Pal in 2003.
- The third model was created by Manuel Bastioni upon the Z-Mesh or HM03 in 2005.
- With experience from preceding versions, a fourth mesh (Y-Mesh or HM04) was done by Gianluca Miragoli (aka Yashugan) in 2007.
- The fifth mesh (HM05) was built on the previous one by Gianluca Miragoli and Manuel Bastioni in 2008.
- A sixth mesh (HM06) was also created by Gianluca Miragoli in 2010.
- Another mesh version was released in 2010 by Waldemar Perez Jr., André Richard, Manuel Bastioni.
- The latest and state of the art mesh, released in 2013, was modeled by Manuel Bastioni.
Since the first release of makeHead (1999) and MakeHuman (2000), a challenge had been to construct a universal topology that retained all of the capabilities but added ability to interactively adjust the mesh to accommodate anatomical variety found in the human population. This could have been addressed by dramatically increasing the number of vertices for the mesh, but the resultant, dense mesh would have limited performance on processing computers. Technically, the model developed for MakeHuman is:
- Light and optimized for subdivision surfaces modelling (15,128 vertices).
- Quads only. The human mesh itself is triangles free, using Catmull-Clark subdivision for extra resolution to base meshes, see also polygon mesh.
- Only E(5) Pole and the N(3) Pole, without holes and without 6-edge poles.
Because of the freedom of the license, Makehuman software is widely used by researchers for scientific purposes:
MakeHuman mesh is used in industrial design, to verify the anthropometry of a project, and in virtual reality research, to quickly produce avatars from measures or camera views.
MakeHuman characters are used in biomechanics and biomedical engineering, to simulate the behaviour of the human body under certain conditions or treatments. The human character model for a project of the construction of artificial mirror neuron systems was also generated by MakeHuman.
The software was used for visuo-haptic surgical training system development. These simulations combine tactile sense with visual information and provide realistic training scenarios to gain, improve, and assess resident and expert surgeons’ skills and knowledge.
- Facial Action Coding System
- Blender software
- DAZ Studio
- ManuelbastioniLAB, a free and open source plug-in for Blender for the parametric 3D modeling of photorealistic humanoid characters
References and Related Papers
- http://www.makehumancommunity.org/frontpage/makehuman_111_has_been_released.html MakeHuman 1.1.1 Release Announcement
- "The MakeHuman Application". Retrieved 2016-06-09.
- M. Bastioni, S. Re, S. Misra. Proceedings of the 1st Bangalore Annual Compute Conference, Compute 2008, 2008. "Ideas and methods for modeling 3D human figures: the principal algorithms used by MakeHuman and their implementation in a new approach to parametric modeling.".
- Still online, but stopped in 2004: http://projects.blender.org/projects/makeh/
- http://www.makehumancommunity.org/wiki/Releases MakeHuman Release Notes
- http://www.makehumancommunity.org/frontpage/welcome_to_the_new_community_site.html Welcome to the new Community Site
- V. Verhaert; H. Druyts; D. Van Deun; D. Berckmans; J. Verbraecken; M. Vandekerckhove; J. Vander Sloten. "The use of a generic human model to personalize bed design." (PDF). Retrieved 19 October 2013.
- D. Van Deun; V. Verhaert; K. Buys; B. Haexand; J. Vander Sloten. "Automatic Generation of Personalized Human Models based on Body Measurements." (PDF).
- K. Buys; D. Van Deun; T. De Laet; H. Bruyninckx. "On-line Generation of Customized Human Models based on Camera Measurements." (PDF).
- S.Piérard, Marc Van Droogenbroeck. "A technique for building databases of annotated and realistic human silhouettes based on an avatar.".
- S. Piérard, A. Leroy, J.F. Hansen, M. Van Droogenbroeck. Advanced Concepts for Intelligent Vision Systems (ACIVS), Lecture Notes in Computer Science, vol. 6915, pages 519-530, Springer, 2011. "Estimation of human orientation in images captured with a range camera.".
- O. Mazaný - 2007. "Articulated 3D human model and its animation for testing and learning algorithms of multi-camera systems." (PDF).
- S. Piérard, A. Lejeune, M. Van Droogenbroeck. 2010. "3D information is valuable for the detection of humans in video streams." (PDF).
- M. Moreno-Moreno; J. Fierrez; R. Vera-Rodriguez; J. Parron. "Simulation of millimeter-wave body images and its application to biometric recognition." (PDF).
- D. E. van Wyk; J. Connan. "High Quality Flexible H-Anim Hands for Sign Language Visualisation." (PDF).
- I. Murtagh. Institute of Technology Blanchardstown Dublin, Ireland. "Developing a Linguistically Motivated Avatar for Irish Sign Language Visualisation." (PDF).
- V. F. Cassola, V. J. de Melo Lima, R. Kramer. Physics in medicine, 2009. "FASH and MASH: female and male adult human phantoms based on polygon mesh surfaces: I. Development of the anatomy." (PDF).
- D. Vernez, A. Milon, L. Francioli Jean-Luc Bulliard, L. Vuilleumier, L. Moccozet. Photochemistry and Photobiology Vol. 87, Issue 3, pages 721–728, May/June 2011. "A numeric model to simulate solar individual ultraviolet exposure.".
- E. Lloyd. "An Artificial Mirror Neuron System for Executing and Recognizing Transitive Actions." (PDF).
- F.G. Hamza-Lup, C.M. Bogdan, D.M. Popovici, O.D. Costea. eL&mL 2011 : The Third International Conference on Mobile, Hybrid, and On-line Learning. "A Survey of Visuo-Haptic Simulation in Surgical Training.".
- S.L. Davy-Jow, D. Lees, S. Russell. Forensic Science International, 2012. "Virtual forensic anthropology: Novel applications of anthropometry and technology in a child death case." (PDF).
- G. Sachau-Carcel. ANTHROPOLOGIE 52/3, 2014. "From Field Recording of plural Burials to 3D Modelling. Evidence from the Catacomb of Sts. Peter and Marcellinus, Italy (with PDF link).".
- I. Murtagh - ITB Journal. "Towards a Linguistically Motivated Irish Sign Language Conversational Avatar." (PDF).
- I. Achmed, J. Connan - University of the Western Cape, Cape Town, 2010. "Upper body pose estimation towards the translation of South African sign language." (PDF).