機械学習手法が進化して学習画像の要件が従来とは変わってきたのか、ここ最近は360度周回画像(動画)やCGレンダリングの各成分を学習データとして書き出すツールが増えてきましたね。
Composition RenderingはBlenderをラップしたPythonツール。
Composition Rendering (Blender Data Generator)
平面上に複数の3Dオブジェクトを配置し、BlenderのCyclesでレンダリングして合成画像データセットを生成します。このパイプラインは、オブジェクトのランダム配置、マテリアル、HDRI環境ライティング、数種類のカメラ/ライトのモーションモードをサポートしています。
RGB画像に加え、各成分(法線、深度、アルベド、粗さ、メタリック)とフレームごとのメタデータの出力に対応しています。
生成されたデータはDiffusion Renderer、UniRelight、LuxDiTなどの生成レンダリングモデルの学習に使用できます。
注: このリポジトリは、Diffusion Rendererで使用されるデータ生成パイプラインをBlenderベースで再実装したものです。一部のレンダリングバッファは元の実装と異なる場合があります。
主な機能
- アセットの組み合わせ:GLB/GLTF/OBJアセットに加え、オプションの基本シェイプを衝突無くグリッド状に地面上に配置できます。
- ライティング:HDRI環境マップ(EXR/HDR)をサンプリングし、オプションで反転、回転、露出のスケーリングが可能です。
- カメラ/モーション:周回カメラ、振動カメラ、周回環境ライト、オブジェクトの回転、オブジェクトの垂直移動、ドリー/ズームが可能です。
- 出力:RGB、法線、深度、アルベド、粗さ、メタリック、カメラと環境パラメータを含むmeta.json。オプションで(環境投影、配置グリッド、.blend)もデバッグ出力できます。
- 物理演算ベースのオブジェクト落下シミュレーション:Blenderの剛体シミュレーションを使用して、シーン内のオブジェクトを地面に落下させ、短いシーケンスをレンダリングできます。
Blenderの機能をPythonモジュールとして呼び出せるAPI bpyモジュールをラップした簡易ライブラリもいくつかありますが、
Blender自体をラップする方がデバッグ時にGUIを利用できて便利なのだろうか。(だいぶ強引な実装方法にも感じるけど)
BlenderはGUIアプリケーションだけど、コマンドラインからオプション引数を使ってヘッドレスに動作させることもできて、ファイルを渡したりScriptをBlender内部のPython環境で実行できるから、活用範囲は広い。
https://caretdashcaret.com/2015/05/19/how-to-run-blender-headless-from-the-command-line-without-the-gui/
https://docs.blender.org/manual/en/latest/advanced/command_line/arguments.html
そういえば以前BlenderのPython環境にPyTorchをインストールしてみたことがあったな。
関連記事
Unity ARKitプラグインサンプルのドキュメントを読む
ZBrush 2018での作業環境を整える
Zibra Liquids:Unity向け流体シミュレーショ...
ファンの力
SculptrisとBlenderで作ったGodzilla ...
Raspberry Pi 2を買いました
Unite 2014の動画
このブログのデザインに飽きてきた
オープンソースの物理ベースGIレンダラ『appleseed』
ゴジラ三昧
Physically Based Rendering
ZBrushからBlenderへモデルをインポート
Shader.jp:リアルタイム3DCG技術をあつかうサイト
Gource:バージョン管理の履歴を可視化するツール
bpy-renderer:レンダリング用Pythonパッケー...
仮想関数
Math Inspector:科学計算向けビジュアルプログラ...
LLM Visualization:大規模言語モデルの可視化
Google XML Sitemap Generatorプラ...
OpenCVで顔のランドマークを検出する『Facemark ...
ZBrushでアマビエを作る その2
Pix2Pix:CGANによる画像変換
OpenVDB:3Dボリュームデータ処理ライブラリ
iPhone 3GSがますます欲しくなる動画
Windows10でPyTorchをインストールしてVSCo...
Google Colaboratoryで遊ぶ準備
機械学習手法『Random Forest』
参考書
網元AMIで作ったWordpressサイトのインスタンスをt...
ちょっと凝り過ぎなWebキャンペーン:全日本バーベイタム選手...
MLDemos:機械学習について理解するための可視化ツール
UnityでPoint Cloudを表示する方法
adskShaderSDK
Unity MonoBehaviourクラスのオーバーライド...
実写と実写の合成時の色の馴染ませテクニック
フルCGのウルトラマン!?
OpenCVでカメラ画像から自己位置認識 (Visual O...
OpenCV 3.1のsfmモジュールを試す
ZBrushでアヴァン・ガメラを作ってみる 首回りの修正・脚...
TensorFlowでCGを微分できる『TensorFlow...
Webサイトのワイヤーフレームが作成できるオンラインツール
Raspberry PiでIoTごっこ
コメント