UnrealCV:コンピュータビジョン研究のためのUnreal Engineプラグイン

ROS#もそうですが、ロボット制御ソフトウェアの開発、特にコンピュータビジョン関係は学習やテスト用の画像収集がボトルネックで、最近は学習や動作のシミュレーション環境にCGを活用する例が増えている。



このUnrealCVはUnrealEngineをコンピュータビジョンの研究で使うためのUnrealEngine用プラグイン↓

UnrealCV

UnrealCV

UnrealCVは、コンピュータビジョンの研究者がUnreal Engine 4(UE4)でバーチャルワールドを構築するのに役立つオープンソースプロジェクトです。UE4のプラグインとして以下の機能を提供します:

  1. バーチャルワールドを対話的に操作するためのUnrealCVコマンドセット
  2. Caffeなどの外部プログラムとUE4間の通信

UnrealCVは2つの方法で使用できます。
1つ目は、UnrealCVを組み込んだコンパイル済みゲームバイナリを使用することです。これはただゲームを実行するのと同じくらい簡単で、Unreal Engineに関する知識は必要ありません。
2つ目は、UnrealCVプラグインをUnreal Engine 4(UE4)にインストールし、UE4のエディタを新しいバーチャルワールドを構築するために使用することです。

UnrealCVの使用方法については、Tutorial: Getting Startedをお読みください。

arXivで2016年に公開されたドキュメントがある。
https://arxiv.org/abs/1609.01326

アーキテクチャを見ると、ゲームエンジンとコンピュータービジョンアルゴリズム間はTCP通信なのね。

architecture of UnrealCV



データ収集の問題だけでなく、自動運転のための学習や動作テストとかは大事故にもつながりかねないので、ゲームエンジンでシミュレーションするのは自然な流れかも。
CG空間なら同じシチュエーションを正確に繰り返せるのもメリットですね。



https://dev.classmethod.jp/articles/unrealcv-unreal-engine-for-computer-vision-project/

Microsoftが開発した自動運転シミュレーターAirSimも最初はUnrealEngine製だった。(今はUnity版もある)
https://github.com/Microsoft/AirSim





https://blogs.unity3d.com/jp/2018/11/08/jump-start-your-autonomous-simulation-development-with-unitys-simviz-solution-template/
https://blogs.unity3d.com/jp/2018/11/14/airsim-on-unity-experiment-with-autonomous-vehicle-simulation/

UnrealROXというシミュレーターもあるらしい↓
https://sim2realai.github.io/UnrealROX/

追記:NVIDIAからディープラーニング学習用のデータを合成するUE4プラグインNVIDIA Deep learning Dataset Synthesizer (NDDS)が配布されている↓


関連記事

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

CreativeCOW.net

FCN (Fully Convolutional Netwo...

NumSharp:C#で使えるNumPyライクな数値計算ライ...

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

OpenMVS:Multi-View Stereoによる3次...

海外ドラマのChromaKey

ZBrushのキャンバスにリファレンス画像を配置する

顔追跡による擬似3D表示『Dynamic Perspecti...

オープンソースの顔の動作解析ツールキット『OpenFace』

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

ZBrushで人型クリーチャー

ZBrushで基本となるブラシ

第25回コンピュータビジョン勉強会@関東に行って来た

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

ZBrush用トポロジー転送プラグイン『ZWrap Plug...

OpenCV 3.3.0-RCでsfmモジュールをビルド

株式会社ヘキサドライブの研究室ページ

Kaolin:3Dディープラーニング用のPyTorchライブ...

実写と実写の合成時の色の馴染ませテクニック

Houdiniのライセンスの種類

Accord.NET Framework:C#で使える機械学...

Iridescence:プロトタイピング向け軽量3D可視化ラ...

iPhoneで3D写真が撮れるアプリ『seene』

顔画像処理技術の過去の研究

Unityをレンダラとして活用する

Open3D:3Dデータ処理ライブラリ

MFnDataとMFnAttribute

ZBrushでアヴァン・ガメラを作ってみる 頭頂部と首周りを...

オープンソースのテクスチャマッピングシステム『Ptex』

Adobe Photoshop CS5の新機能

GeForce RTX 30シリーズ発表

Blendify:コンピュータービジョン向けBlenderラ...

Human Generator:Blenderの人体生成アド...

BGSLibrary:OpenCVベースの背景差分ライブラリ

PGGAN:段階的に解像度を上げて学習を進めるGAN

OpenCV 3.1のsfmモジュールのビルド再び

bpy-renderer:レンダリング用Pythonパッケー...

ZBrushCore

MLDemos:機械学習について理解するための可視化ツール

2D→3D復元技術で使われる用語まとめ

Kinect for Windows V2のプレオーダー開始

コメント