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

関連記事

UnityからROSを利用できる『ROS#』

Mayaでリアルな布の質感を作るチュートリアル

フィーリングに基づくタマムシの質感表現

Google App Engine上のWordPressでFlickrの画像を貼る

Manim:Pythonで使える数学アニメーションライブラリ

ZBrushで仮面ライダー3号を造る 仮面編 横顔のシルエットをリファレンスに合わせる

UnityのAR FoundationでARKit 3

Unity ARKitプラグインサンプルのドキュメントを読む

OpenGV:画像からカメラの3次元位置・姿勢を推定するライブラリ

Runway ML:クリエイターのための機械学習ツール

Unityで360度ステレオVR動画を作る

中学3年生が制作した短編映像作品『2045』

機械学習での「回帰」とは?

ZBrushでゴジラ2001を作ってみる 身体のSubToolを分割

trimesh:PythonでポリゴンMeshを扱うライブラリ

ZBrushの作業環境を見直す

GeoGebra:無料で使える数学アプリ

OpenCVで動画の手ぶれ補正

FacebookがDeep learningツールの一部をオープンソース化

OpenCVのfindEssentialMat関数を使ったサンプルを読んでみる

機械学習に役立つPythonライブラリ一覧

Zbrushでメカ物を作るチュートリアル動画

ZScript

Geogram:C++の3D幾何アルゴリズムライブラリ

SIGGRAPH ASIA 2009で学生ボランティア募集してるみたい

OpenCV3.3.0でsfmモジュールのビルドに成功!

OpenCVでiPhone6sのカメラをキャリブレーションする

『ハン・ソロ/スター・ウォーズ・ストーリー』のVFXブレイクダウン まとめ

ラクガキの立体化 3Dプリント注文

顔検出・認識のAPI・ライブラリ・ソフトウェアのリスト

SIGGRAPH 2020はオンライン開催

OpenMayaRender

OpenCVで顔のモーフィングを実装する

ZBrushのUV MasterでUV展開

Adobe Photoshop CS5の新機能

ブログをGoogle App EngineからAmazon EC2へ移行

Maya API Reference

Gource:バージョン管理の履歴を可視化するツール

html5のcanvasの可能性

WordPressのサーバ引っ越し方法を考える

オープンソースのプリント基板設計ツール『KiCad』

Faceshiftで表情をキャプチャしてBlender上でMakeHumanのメッシュを動かすデモ

コメント