blendify


Nameblendify JSON
Version 1.2.3 PyPI version JSON
download
home_pagehttps://github.com/ptrvilya/blendify
SummaryPython rendering framework for Blender
upload_time2023-06-23 16:41:30
maintainer
docs_urlNone
authorVladimir Guzov, Ilya Petrov
requires_python>=3.10
license
keywords rendering pointcloud blender mesh
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![blendify Logo](https://github.com/ptrvilya/blendify/blob/main/.github/blendify_logo_light_bg.png?raw=true)

## Introduction
Blendify is a lightweight Python framework that provides a high-level API for creating and rendering scenes with Blender. Developed with a focus on 3D computer vision visualization, Blendify simplifies access to selected Blender functions and objects.

Key features of Blendify:

1. Simple interface: Blendify provides a user-friendly interface for performing common visualization tasks without having to dive into the complicated Blender API.

2. Easy integration: Blendify seamlessly integrates with development scripts, implementing
commonly used routines and functions:
    * native support of point clouds, meshes, and primitives;
    * support of per-vertex colors and textures;
    * advanced shadows with shadow catcher objects;
    * video rendering with smooth camera trajectories;
    * support for common camera models;
    * import and export of .blend files for deeper integration with Blender.

3. Quick start: Blendify is easy to get started with and does not require a standalone Blender installation. All you need to do is run `pip install blendify`.


## Installation instructions
### Install from pip
```bash
pip install blendify
```
### Optional requirements
```bash
pip install blendify[utils / examples / docs / all]
```

Running examples 4 and 5 requires [PyTorch](https://pytorch.org/) with [PyTorch3D](https://github.com/facebookresearch/pytorch3d/blob/main/INSTALL.md).

Running example 5 requires SMPL model files, please refer to the installation instructions in 
[README](https://github.com/vchoutas/smplx#downloading-the-model).


## Quick Start
```python
# Script to render cube
from blendify import scene
from blendify.materials import PrincipledBSDFMaterial
from blendify.colors import UniformColors
# Add light
scene.lights.add_point(strength=1000, translation=(4, -2, 4))
# Add camera
scene.set_perspective_camera((512, 512), fov_x=0.7, quaternion=(0.82, 0.42, 0.18, 0.34), translation=(5, -5, 5))
# Create material
material = PrincipledBSDFMaterial()
# Create color
color = UniformColors((0.0, 1.0, 0.0))
# Add cube mesh
scene.renderables.add_cube_mesh(1.0, material, color)
# Render scene
scene.render(filepath="cube.png")
```


## Examples
Check examples in our repository [here](https://github.com/ptrvilya/blendify#Examples).


## Works that use blendify
* V. Lazova, E. Insafutdinov, G. Pons-Moll: [360-Degree Textures of People in Clothing from a Single Image](https://virtualhumans.mpi-inf.mpg.de/360tex/)
in 3DV'19
* B.L. Bhatnagar, X. Xie, **I. Petrov**, C. Sminchisescu, C. Theobalt, G. Pons-Moll: 
  [BEHAVE: Dataset and Method for Tracking Human Object Interactions](https://virtualhumans.mpi-inf.mpg.de/behave/), in CVPR'22
* X. Zhang, B.L. Bhatnagar, **V. Guzov**, S. Starke, G. Pons-Moll: 
  [COUCH: Towards Controllable Human-Chair Interactions](https://virtualhumans.mpi-inf.mpg.de/couch/), in ECCV'22
* G. Tiwari, D. Antic, J. E. Lenssen, N. Sarafianos, T. Tung, G. Pons-Moll: [Pose-NDF: 
Modeling Human Pose Manifolds with Neural Distance Fields](https://virtualhumans.mpi-inf.mpg.de/posendf/), in ECCV'22
* **I. Petrov**, R. Marin, J. Chibane, G. Pons-Moll: [Object pop-up: Can we infer 3D objects and their poses from human interactions alone?](https://virtualhumans.mpi-inf.mpg.de/object_popup/), in CVPR'23

## Contributors
Blendify is written and maintained by [Vladimir Guzov](https://github.com/vguzov) and [Ilya Petrov](https://github.com/ptrvilya).


## Acknowledgments
We thank Verica Lazova for providing her Blender rendering scripts. 
Our code for processing point clouds is mostly based on the amazing [Blender-Photogrammetry-Importer][BPI] addon.


## License
The code is released under the [GNU General Public License v3][GNU GPL v3].

The Python logo is trademark of Python Software Foundation.
The Blender logo is a registered property of Blender Foundation.
[Blender-Photogrammetry-Importer][BPI] is distributed under the [MIT License][BPI license]. 
Blender is released under the [GNU General Public License v3][GNU GPL v3]. 

[GNU GPL v3]: https://www.gnu.org/licenses/gpl-3.0.html
[BPI]: https://github.com/SBCV/Blender-Addon-Photogrammetry-Importer
[BPI license]: https://github.com/SBCV/Blender-Addon-Photogrammetry-Importer/blob/master/README.md



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ptrvilya/blendify",
    "name": "blendify",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "",
    "keywords": "rendering,pointcloud,blender,mesh",
    "author": "Vladimir Guzov, Ilya Petrov",
    "author_email": "vguzov@mpi-inf.mpg.de, i.petrov@uni-tuebingen.de",
    "download_url": "https://files.pythonhosted.org/packages/32/dd/2b1cb210194f0a2daa8268ea2f2793cd13daea97902a5da6ebafc11d52c9/blendify-1.2.3.tar.gz",
    "platform": null,
    "description": "![blendify Logo](https://github.com/ptrvilya/blendify/blob/main/.github/blendify_logo_light_bg.png?raw=true)\n\n## Introduction\nBlendify is a lightweight Python framework that provides a high-level API for creating and rendering scenes with Blender. Developed with a focus on 3D computer vision visualization, Blendify simplifies access to selected Blender functions and objects.\n\nKey features of Blendify:\n\n1. Simple interface: Blendify provides a user-friendly interface for performing common visualization tasks without having to dive into the complicated Blender API.\n\n2. Easy integration: Blendify seamlessly integrates with development scripts, implementing\ncommonly used routines and functions:\n    * native support of point clouds, meshes, and primitives;\n    * support of per-vertex colors and textures;\n    * advanced shadows with shadow catcher objects;\n    * video rendering with smooth camera trajectories;\n    * support for common camera models;\n    * import and export of .blend files for deeper integration with Blender.\n\n3. Quick start: Blendify is easy to get started with and does not require a standalone Blender installation. All you need to do is run `pip install blendify`.\n\n\n## Installation instructions\n### Install from pip\n```bash\npip install blendify\n```\n### Optional requirements\n```bash\npip install blendify[utils / examples / docs / all]\n```\n\nRunning examples 4 and 5 requires [PyTorch](https://pytorch.org/) with [PyTorch3D](https://github.com/facebookresearch/pytorch3d/blob/main/INSTALL.md).\n\nRunning example 5 requires SMPL model files, please refer to the installation instructions in \n[README](https://github.com/vchoutas/smplx#downloading-the-model).\n\n\n## Quick Start\n```python\n# Script to render cube\nfrom blendify import scene\nfrom blendify.materials import PrincipledBSDFMaterial\nfrom blendify.colors import UniformColors\n# Add light\nscene.lights.add_point(strength=1000, translation=(4, -2, 4))\n# Add camera\nscene.set_perspective_camera((512, 512), fov_x=0.7, quaternion=(0.82, 0.42, 0.18, 0.34), translation=(5, -5, 5))\n# Create material\nmaterial = PrincipledBSDFMaterial()\n# Create color\ncolor = UniformColors((0.0, 1.0, 0.0))\n# Add cube mesh\nscene.renderables.add_cube_mesh(1.0, material, color)\n# Render scene\nscene.render(filepath=\"cube.png\")\n```\n\n\n## Examples\nCheck examples in our repository [here](https://github.com/ptrvilya/blendify#Examples).\n\n\n## Works that use blendify\n* V. Lazova, E. Insafutdinov, G. Pons-Moll: [360-Degree Textures of People in Clothing from a Single Image](https://virtualhumans.mpi-inf.mpg.de/360tex/)\nin 3DV'19\n* B.L. Bhatnagar, X. Xie, **I. Petrov**, C. Sminchisescu, C. Theobalt, G. Pons-Moll: \n  [BEHAVE: Dataset and Method for Tracking Human Object Interactions](https://virtualhumans.mpi-inf.mpg.de/behave/), in CVPR'22\n* X. Zhang, B.L. Bhatnagar, **V. Guzov**, S. Starke, G. Pons-Moll: \n  [COUCH: Towards Controllable Human-Chair Interactions](https://virtualhumans.mpi-inf.mpg.de/couch/), in ECCV'22\n* G. Tiwari, D. Antic, J. E. Lenssen, N. Sarafianos, T. Tung, G. Pons-Moll: [Pose-NDF: \nModeling Human Pose Manifolds with Neural Distance Fields](https://virtualhumans.mpi-inf.mpg.de/posendf/), in ECCV'22\n* **I. Petrov**, R. Marin, J. Chibane, G. Pons-Moll: [Object pop-up: Can we infer 3D objects and their poses from human interactions alone?](https://virtualhumans.mpi-inf.mpg.de/object_popup/), in CVPR'23\n\n## Contributors\nBlendify is written and maintained by [Vladimir Guzov](https://github.com/vguzov) and [Ilya Petrov](https://github.com/ptrvilya).\n\n\n## Acknowledgments\nWe thank Verica Lazova for providing her Blender rendering scripts. \nOur code for processing point clouds is mostly based on the amazing [Blender-Photogrammetry-Importer][BPI] addon.\n\n\n## License\nThe code is released under the [GNU General Public License v3][GNU GPL v3].\n\nThe Python logo is trademark of Python Software Foundation.\nThe Blender logo is a registered property of Blender Foundation.\n[Blender-Photogrammetry-Importer][BPI] is distributed under the [MIT License][BPI license]. \nBlender is released under the [GNU General Public License v3][GNU GPL v3]. \n\n[GNU GPL v3]: https://www.gnu.org/licenses/gpl-3.0.html\n[BPI]: https://github.com/SBCV/Blender-Addon-Photogrammetry-Importer\n[BPI license]: https://github.com/SBCV/Blender-Addon-Photogrammetry-Importer/blob/master/README.md\n\n\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Python rendering framework for Blender",
    "version": "1.2.3",
    "project_urls": {
        "Homepage": "https://github.com/ptrvilya/blendify"
    },
    "split_keywords": [
        "rendering",
        "pointcloud",
        "blender",
        "mesh"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bc93f00b5fb7ff180e7c996818946e54def05b57e41068b9ec35ebe60dd3c213",
                "md5": "e9bbbcddd0c8b755a4178b09b8a8fcff",
                "sha256": "5039119a04c966f6d114dc2dc04422878ac7c53f9723f8cc46c8395c39a12702"
            },
            "downloads": -1,
            "filename": "blendify-1.2.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e9bbbcddd0c8b755a4178b09b8a8fcff",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 60761,
            "upload_time": "2023-06-23T16:41:28",
            "upload_time_iso_8601": "2023-06-23T16:41:28.192311Z",
            "url": "https://files.pythonhosted.org/packages/bc/93/f00b5fb7ff180e7c996818946e54def05b57e41068b9ec35ebe60dd3c213/blendify-1.2.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "32dd2b1cb210194f0a2daa8268ea2f2793cd13daea97902a5da6ebafc11d52c9",
                "md5": "0b0cbb478b9adcdaf17cfb6d823bd25a",
                "sha256": "a8a0a4eb0358045e2510ceb309f5f114d0be6774f1132d40330306c1af27294e"
            },
            "downloads": -1,
            "filename": "blendify-1.2.3.tar.gz",
            "has_sig": false,
            "md5_digest": "0b0cbb478b9adcdaf17cfb6d823bd25a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 37849,
            "upload_time": "2023-06-23T16:41:30",
            "upload_time_iso_8601": "2023-06-23T16:41:30.001987Z",
            "url": "https://files.pythonhosted.org/packages/32/dd/2b1cb210194f0a2daa8268ea2f2793cd13daea97902a5da6ebafc11d52c9/blendify-1.2.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-06-23 16:41:30",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ptrvilya",
    "github_project": "blendify",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "blendify"
}
        
Elapsed time: 0.07939s