機械学習用の画像データを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からもツールが出ましたね↓
2023年 追記:Blenderのbpyモジュールをコンピュータービジョン用途で扱いやすいようにラップしたモジュールも↓
スポンサーリンク