BlenderProc:Blenderで機械学習用の画像データを生成するPythonツール

機械学習用の画像データをCGで生成するのもData Augmentation(データ拡張)の範疇でしょうか。
物体や風景画像だけでなく、Depthや物体ラベル、Semantic Segmentation用のアノテーション画像も必要となると、CGで生成した方が断然楽ですね。

機械学習用の画像を生成するUnreal Engine用のプラグインもありましたが



Blenderで学習画像をバッチ生成できるPython製のコマンドツールが公開されている↓

BlenderProc



ディープラーニング用の学習画像を生成するためのプロシージャルBlenderパイプラインです。
詳細はarXivにある論文をご覧ください。(随時更新しています):https://arxiv.org/abs/1911.01911


スポンサーリンク

対応するBlenderのバージョンは2.82。


スポンサーリンク


設定をyaml形式で記述して、run.pyにyamlファイルや3Dオブジェクト、カメラ位置情報のファイルを引数に渡して実行するだけでBlenderで画像をレンダリングできるらしい。
yaml設定ファイルの書き方や、データの読み込み方はexamplesを真似すれば良さそう。

要するに、Blenderの細かい操作方法などを習得しなくても、各成分ごとに分解されたレンダリング画像をバッチで出力できるようにしたツールだな。
run.pyを読む限り、対応するOSはLinuxとMacだけで、Windowsには対応していないみたい。

2022年3月 追記:Google Researchからもツールが出ましたね↓
Kubric:機械学習用アノテーション付き動画生成パイプライン
久しぶりにコンピュータビジョン系の話題。Google Researchから機械学習用のアノテーション付き動画を生成するためのツールがオープンソースで公開された↓KubricKubricは、Instance SegmentationマスクやD...


2023年 追記:Blenderのbpyモジュールをコンピュータービジョン用途で扱いやすいようにラップしたモジュールも↓
Blendify:コンピュータービジョン向けBlenderラッパー
コンピュータービジョンで扱う対象が2Dの画像だけでなく3Dデータに広がってきて、コンピューターグラフィックスとの垣根がどんどん無くなってきているように感じる。Blendifyは、Blenderの機能をPythonのモジュールとして呼び出せる...


スポンサーリンク

関連記事

レンダラ制作はOpenGL とか DirectX を使わなくてもできるんだぜ
Geogram:C++の3D幾何アルゴリズムライブラリ
書籍『3次元コンピュータビジョン計算ハンドブック』を購入
昔Mayaでモデリングしたモデルをリファインしてみようか
プログラムによる景観の自動生成
「ベンジャミン·バトン数奇な人生」でどうやってCGの顔を作ったのか
pythonもかじってみようかと
Web経由でRaspberry PiのGPIOを操作したい
機械学習に役立つPythonライブラリ一覧
Fast R-CNN:ディープラーニングによる一般物体検出手法
ヘッドマウントディスプレイとビジュアリゼーションの未来
この連休でZBrushの スキルアップを…
書籍『開田裕治 怪獣イラストテクニック』
uGUI:Unityの新しいGUI作成システム
ZBrushのZScript入門
SegNet:ディープラーニングによるSemantic Segmentation手法
顔画像処理技術の過去の研究
Adobe MAX 2015
ブログが1日ダウンしてました
ZBrushでアヴァン・ガメラを作ってみる 頭頂部と首周りを作り込む
Unityで強化学習できる『Unity ML-Agents』
日立のフルパララックス立体ディスプレイ
SVM (Support Vector Machine)
Physics Forests:機械学習で流体シミュレーションを近似する
書籍『The Art of Mystical Beasts』を購入
UnityでPoint Cloudを表示する方法
Point Cloud Libraryに動画フォーマットが追加されるらしい
BSDF: (Bidirectional scattering distribution funct...
FreeMoCap Project:オープンソースのマーカーレスモーションキャプチャ
Python for Unity:UnityEditorでPythonを使えるパッケージ
マジョーラ
ZBrushのZmodelerとDynamic Subdivisionを学ぶ
フィーリングに基づくタマムシの質感表現
iPhone x ロボットハッカソン~RomoのiPhone用SDKで目覚ましアプリを作る~
ZBrushで仮面ライダー3号を造る 仮面編 横顔のシルエットをリファレンスに合わせる
OpenCVで顔のモーフィングを実装する
手を動かしながら学ぶデータマイニング
映画『ジュラシック・ワールド/炎の王国』のVFXブレイクダウン まとめ
GAN (Generative Adversarial Networks):敵対的生成ネットワーク
adskShaderSDK
物理ベースレンダリングのためのマテリアル設定チートシート
Raspberry PiでIoTごっこ

コメント