Kubric:機械学習用アノテーション付き動画生成パイプライン

久しぶりにコンピュータビジョン系の話題。

Google Researchから機械学習用のアノテーション付き動画を生成するためのツールがオープンソースで公開された↓

Kubric



Kubricは、Instance SegmentationマスクやDepthマップ、オプティカルフローなどのリッチなアノテーション付きのセミリアルな動画を作成するためのデータ生成パイプラインです。

 ※このプロジェクトはまだアルファ段階であり、大幅に変更される可能性があります。

モチベーションと設計

機械学習システムの訓練と評価、特にunsupervised multi-object video understandingにおいてはより良いデータが必要です。既存のシステムは、toy datasetsでは上手く行くものの、現実世界のデータでは失敗してしまいます。複雑さの異なる適切なデータセットをオンデマンドで作成できれば、進歩を大幅に加速できる可能性があります。
Kubricは、主にpybullet(物理シミュレーション用)とBlender(レンダリング用)をベースに構築されていますが、コードはモジュール式に保たれているため、様々なレンダリングバックエンドをサポートできる可能性があります。

Kubricは特に数千台のマシンを使って処理できるスケーラビリティに重点を置いて開発されているらしい。
詳しくはarXivで公開されているKubric: A scalable dataset generatorや、公式ドキュメントを参照。



レンダリングに使われているBlenderについてはもはや説明不要でしょう。
物理シミュレーションに使われているpybulletというのは、Bullet Physics SDKというC++の物理シミュレーションフレームワークのPythonバインディング。強化学習方面ではすでに結構利用されているらしい。
https://zenn.dev/ymd_h/articles/14397e6ae7ea3d

Kubricの公式ドキュメントを読むと、一式揃ったDockerイメージも用意されているようですね。
https://kubric.readthedocs.io/en/latest/source/0_installing.html

ここ数年、機械学習用の画像・動画データをCGで生成する需要に応えるツールが少しずつ増えてきたな。


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


最近はUnityが公式にUnity Computer Visionというデータセット生成サービスを始めていて、それに使用しているPerception Packageも公開している↓

Perception Package (Unity Computer Vision)



Perceptionパッケージは、コンピュータビジョンの訓練と検証のための大規模なデータセットを生成するためのツールキットを提供します。 現在は、カメラベースのユースケースに焦点を当てており、最終的には他の形式のセンサーや機械学習タスクに拡張される予定です。

ツールと製品の詳細についてはUnity Computer Visionページにアクセスしてください。

https://blog.unity.com/ja/technology/supercharge-your-computer-vision-models-with-synthetic-datasets-built-by-unity

関連記事

SSD (Single Shot Multibox Dete...

ZBrushでアヴァン・ガメラを作ってみる 頬の突起を作り始...

Seleniumを使ったFXや株の自動取引

ZBrushでアヴァン・ガメラを作ってみる 全体のバランス調...

無料で使える人体3DCG作成ツール

Unity Scriptコーディング→Unreal Engi...

Alice Vision:オープンソースのPhotogram...

「ベンジャミン·バトン数奇な人生」でどうやってCGの顔を作っ...

OpenCV 3.1から追加されたSfMモジュール

ZBrushで基本となるブラシ

ZBrush 2021.6のMesh from Mask機能...

WordPress on Google App Engine...

CycleGAN:ドメイン関係を学習した画像変換

ラクガキの立体化 進捗

Unite 2017 Tokyoに行ってきた

Transformer Explainer:テキスト生成モデ...

Mayaのシェーディングノードの区分

SegNet:ディープラーニングによるSemantic Se...

ZBrushで仮面ライダー3号を造る 仮面編 ZRemesh...

GAN (Generative Adversarial Ne...

ZBrushで人型クリーチャー

プロシージャル手法に特化した本が出てるみたい(まだ買わないけ...

続・ディープラーニングの資料

ファンの力

画像認識による位置情報取得 - Semi-Direct Mo...

『ローグ・ワン/スター・ウォーズ・ストーリー』"あのキャラク...

iPhone欲しいなぁ

Unreal Engine Tokyo MeetUp!へ行っ...

Managing Software Requirements...

PythonでMayaのShapeノードプラグインを作る

pythonもかじってみようかと

CGAN (Conditional GAN):条件付き敵対的...

単純に遊びに行くのはだめなのか?

ZBrushでアヴァン・ガメラを作ってみる 壊れたデータの救...

Google App Engine上のWordPressでF...

レンダラ制作はOpenGL とか DirectX を使わなく...

トランスフォーマー :リベンジのメイキング (デジタルドメイ...

Raytracing Wiki

参考になりそうなサイト

このブログのデザインに飽きてきた

SONY製のニューラルネットワークライブラリ『NNabla』

Python2とPython3

コメント