入手blenderproc
使用原因
目标: 需要构建用于深度学习的虚拟数据集
考虑使用blender的一个渲染器blenderproc
注意事项:
- 不需要提前下载blender软件,运行blenderproc官方测试demo的过程中会下载各个包和blender,(自己在blender官网下载了最新版的,现在在想着如何卸载了;不清楚ubuntu中同时有两个版本的blender会不会导致系统问题)
- blenderproc的导航网址
- 描述blenderproc的论文原文
- blenderproc的源码链接,这个下载,方便安装配置blenderproc
Blenderproc的安装环境配置
主要是跟着源码链接中的主页介绍一步步来的。
构建虚拟环境
为了方便日后的环境管理,我们在anaconda新建一个虚拟环境进行Blenderproc的安装,anaconda安装过程略,新环境命令如下:
conda create -n blender python = 3.7 # blender处为你的虚拟环境名称
conda activate blender
安装Blenderproc(这一步直接按github官方教程走)
blenderproc的安装有两种方式。
- 在虚拟环境下直接pip执行
pip install Blenderproc
- 通过github安装
git clone https://github.com/DLR-RM/BlenderProc
cd BlenderProc
pip install -e .
测试demo
安装结束后我们根据官方文档,先编写一个quickstart.py的python脚本,内容如下:
import blenderproc as bproc
import numpy as np
bproc.init()
# Create a simple object:
obj = bproc.object.create_primitive("MONKEY")
# Create a point light next to it
light = bproc.types.Light()
light.set_location([2, -2, 0])
light.set_energy(300)
# Set the camera to be in front of the object
cam_pose = bproc.math.build_transformation_mat([0, -5, 0], [np.pi / 2, 0, 0])
bproc.camera.add_camera_pose(cam_pose)
# Render the scene
data = bproc.renderer.render()
# Write the rendering into an hdf5 file
bproc.writer.write_hdf5("output/", data)
之后终端执行命令:
blenderproc run quickstart.py
第一次运行会安装blender和所需要的一些库,包括Imageio库(不用管),运行之后在目录下会有.hdf5的文件生成,可视化该文件:
blenderproc vis hdf5 output/0.hdf5
到这一步,blenderproc的环境安装配置也就完成了,更多的基础示例可以下载github项目工程并参照示例进行。
blenderproc的运行模式
- 一种是通过设置python脚本运行(github项目工程主目录下运行)(建议这个)
blenderproc run examples/basics/basic/main.py examples/resources/camera_positions examples/resources/scene.obj examples/basics/basic/output
- 另一种则是通过配置yaml文件进行运行
blenderproc run examples/basics/basic/config.yaml examples/resources/camera_positions examples/resources/scene.obj examples/basics/basic/output
参考资料
除了上面出现的网址链接,还包括以下:
https://blog.csdn.net/weixin_49521551/article/details/121573334