{ "info": { "author": "Gul Varol", "author_email": "gulvarols@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "SMPL layer for PyTorch\n=======\n\n[SMPL](http://smpl.is.tue.mpg.de) human body [\\[1\\]](#references) layer for [PyTorch](https://pytorch.org/) (tested with v0.4 and v1.x)\nis a differentiable PyTorch layer that deterministically maps from pose and shape parameters to human body joints and vertices.\nIt can be integrated into any architecture as a differentiable layer to predict body meshes.\nThe code is adapted from the [manopth](https://github.com/hassony2/manopth) repository by [Yana Hasson](https://github.com/hassony2).\n\n

\n\"smpl\"\n

\n\n\n## Setup\n\n### 1. The `smplpytorch` package\n* **Run without installing:** You will need to install the dependencies listed in [environment.yml](environment.yml):\n * `conda env update -f environment.yml` in an existing environment, or\n * `conda env create -f environment.yml`, for a new `smplpytorch` environment\n* **Install:** To import `SMPL_Layer` in another project with `from smplpytorch.pytorch.smpl_layer import SMPL_Layer` do one of the following.\n * Option 1: This should automatically install the dependencies.\n ``` bash\n git clone https://github.com/gulvarol/smplpytorch.git\n cd smplpytorch\n pip install .\n ```\n * Option 2: You can install `smplpytorch` from [PyPI](https://pypi.org/project/smplpytorch/). Additionally, you might need to install [chumpy](https://github.com/hassony2/chumpy.git).\n ``` bash\n pip install smplpytorch\n ```\n\n### 2. Download SMPL pickle files\n * Download the models from the [SMPL website](http://smpl.is.tue.mpg.de/) by choosing \"SMPL for Python users\". Note that you need to comply with the [SMPL model license](http://smpl.is.tue.mpg.de/license_model).\n * Extract and copy the `models` folder into the `smplpytorch/native/` folder (or set the `model_root` parameter accordingly).\n\n## Demo\n\nForward pass the randomly created pose and shape parameters from the SMPL layer and display the human body mesh and joints:\n\n`python demo.py`\n\n## Acknowledgements\nThe code **largely** builds on the [manopth](https://github.com/hassony2/manopth) repository from [Yana Hasson](https://github.com/hassony2), which implements the [MANO](http://mano.is.tue.mpg.de) hand model [\\[2\\]](#references) layer.\n\nThe code is a PyTorch port of the original [SMPL](http://smpl.is.tue.mpg.de) model from [chumpy](https://github.com/mattloper/chumpy). It builds on the work of [Loper](https://github.com/mattloper) et al. [\\[1\\]](#references).\n\nThe code [reuses](https://github.com/gulvarol/smpl/pytorch/rodrigues_layer.py) [part of the code](https://github.com/MandyMo/pytorch_HMR/blob/master/src/util.py) by [Zhang Xiong](https://github.com/MandyMo) to compute the rotation utilities.\n\nIf you find this code useful for your research, please cite the original [SMPL](http://smpl.is.tue.mpg.de) publication:\n\n```\n@article{SMPL:2015,\n author = {Loper, Matthew and Mahmood, Naureen and Romero, Javier and Pons-Moll, Gerard and Black, Michael J.},\n title = {{SMPL}: A Skinned Multi-Person Linear Model},\n journal = {ACM Trans. Graphics (Proc. SIGGRAPH Asia)},\n number = {6},\n pages = {248:1--248:16},\n volume = {34},\n year = {2015}\n}\n```\n\n## References\n\n\\[1\\] Matthew Loper, Naureen Mahmood, Javier Romero, Gerard Pons-Moll, and Michael J. Black, \"SMPL: A Skinned Multi-Person Linear Model,\" SIGGRAPH Asia, 2015.\n\n\\[2\\] Javier Romero, Dimitrios Tzionas, and Michael J. Black, \"Embodied Hands: Modeling and Capturing Hands and Bodies Together,\" SIGGRAPH Asia, 2017.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/gulvarol/smplpytorch", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "smplpytorch", "package_url": "https://pypi.org/project/smplpytorch/", "platform": "", "project_url": "https://pypi.org/project/smplpytorch/", "project_urls": { "Homepage": "https://github.com/gulvarol/smplpytorch" }, "release_url": "https://pypi.org/project/smplpytorch/0.0.8/", "requires_dist": [ "opencv-python", "matplotlib", "numpy" ], "requires_python": ">=3.5.0", "summary": "SMPL human body layer for PyTorch is a differentiable PyTorch layer", "version": "0.0.8" }, "last_serial": 5544698, "releases": { "0.0.8": [ { "comment_text": "", "digests": { "md5": "8cb607782625022d5bf769ff54c71429", "sha256": "059a398a3f10acf74f8da7fca8bba870f6504523cd3df6f52264b496c37b0a4a" }, "downloads": -1, "filename": "smplpytorch-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "8cb607782625022d5bf769ff54c71429", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5.0", "size": 22862, "upload_time": "2019-07-17T08:01:07", "url": "https://files.pythonhosted.org/packages/5f/c2/27a2e0739670c19c52da1f90ebb576c2d64eb93a8c397461db2a41365e9f/smplpytorch-0.0.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "027b5c776b07f44d4cc6c587ef8d8b65", "sha256": "35a011206985c993dccea63e7a4d77bc71369baa0fd58f36ebcad6da3af38779" }, "downloads": -1, "filename": "smplpytorch-0.0.8.tar.gz", "has_sig": false, "md5_digest": "027b5c776b07f44d4cc6c587ef8d8b65", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 9517, "upload_time": "2019-07-17T08:01:08", "url": "https://files.pythonhosted.org/packages/16/b3/0ea0c906ce4236efed823e0469fa1f9dfa330f05fc42d36bfbdf25c37f2f/smplpytorch-0.0.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8cb607782625022d5bf769ff54c71429", "sha256": "059a398a3f10acf74f8da7fca8bba870f6504523cd3df6f52264b496c37b0a4a" }, "downloads": -1, "filename": "smplpytorch-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "8cb607782625022d5bf769ff54c71429", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5.0", "size": 22862, "upload_time": "2019-07-17T08:01:07", "url": "https://files.pythonhosted.org/packages/5f/c2/27a2e0739670c19c52da1f90ebb576c2d64eb93a8c397461db2a41365e9f/smplpytorch-0.0.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "027b5c776b07f44d4cc6c587ef8d8b65", "sha256": "35a011206985c993dccea63e7a4d77bc71369baa0fd58f36ebcad6da3af38779" }, "downloads": -1, "filename": "smplpytorch-0.0.8.tar.gz", "has_sig": false, "md5_digest": "027b5c776b07f44d4cc6c587ef8d8b65", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 9517, "upload_time": "2019-07-17T08:01:08", "url": "https://files.pythonhosted.org/packages/16/b3/0ea0c906ce4236efed823e0469fa1f9dfa330f05fc42d36bfbdf25c37f2f/smplpytorch-0.0.8.tar.gz" } ] }