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

Intel Visual Computing Labが中心に開発しているらしい、まだ新しい3Dデータ処理ライブラリ。MITライセンスなので、ライセンスと著作権を表示すれば商用利用も可能。

Open3D

Introducing Open3D

Open3Dは、3Dデータを扱うソフトウェアの開発をサポートするオープンソースライブラリです。Open3DはC++とPythonのフロントエンドを提供し、厳選されたデータ構造とアルゴリズムをどちらの環境でも利用できます。バックエンドは高度に最適化されており、並列処理に対応しています。

Open3Dは、依存関係を最小限に抑えられるよう考慮してゼロから開発されました。そのため、異なるプラットフォームでも最小限の労力でソースコードからコンパイル、環境構築できます。ソースコードは一貫したスタイルで整理されており、明確なコードレビューの仕組みによってメンテナンスされています。

Open3Dはすでに発表されている多くの研究プロジェクトで使用されており、クラウド上で積極的にデプロイされています。Open3Dプロジェクトでは、オープンソースコミュニティからの貢献を歓迎しています。


スポンサーリンク

主な機能

  • 基本的な3Dデータ構造
  • 基本的な3Dデータ処理アルゴリズム
  • シーンの再構築(Scene reconstruction)
  • サーフェイスの整列(Surface alignment)
  • 3Dビジュアリゼーション
  • Pythonバインディング

対応するコンパイラ

  • Linux:GCC 4.8以降
  • OS X:XCode 8.0以降
  • Windows:Visual Studio 2015以降

ソースコードはこちら↓
https://github.com/IntelVCL/Open3D

公式ドキュメントはこちら↓
http://www.open3d.org/docs/index.html

特に各環境でのソースコードのビルド方法はGetting Startedから。

SSII 2018のチュートリアルセッションで紹介されていたんですね↓


スポンサーリンク

チュートリアルのサンプルコード↓
https://github.com/sakizuki/SSII2018_Tutorial_Open3D

いわゆるポリゴンMeshや、画像・点群も扱えるようなので、CGにもコンピュータービジョンにも利用できそう。
Tutorialの一覧をざっと眺めた限り、2D→3Dは対象としておらず、扱う画像はRGBDのような3Dデータのようだ。

最近は、3D点群データを扱うのに以前ほどPoint Cloud Libraryが使われなくなっているんだろうか。Point Cloud Libraryは依存関係の塊でビルドのハードルが高かったけど。

ここ最近のコンピュータービジョン、特に機械学習界隈はPython環境がデファクトスタンダードになっている節もあり、C++ゴリゴリのライブラリよりもPythonバインディングの充実が重要なのかも。

2020年5月 追記:ついにバージョン0.10.0まで来ましたね。

Open3D 0.10.0 release: New Visualizer app, GUI module, PBR rendering and Tensor library

少しずつ日本語の情報も増えてきている。
http://robonchu.hatenablog.com/entry/2018/02/24/200635
http://robonchu.hatenablog.com/entry/2018/02/25/121024
http://robonchu.hatenablog.com/entry/2018/02/25/200510

https://karaage.hatenadiary.jp/entry/2018/03/12/073000

http://lang.sist.chukyo-u.ac.jp/classes/Open3D/

https://qiita.com/n_chiba_/items/fc9605cde5c19a8c7dad

公式YouTubeチャンネルもだいぶ充実してきた↓
https://www.youtube.com/channel/UCRJBlASPfPBtPXJSPffJV-w/

ただ、用途を突き詰めていくとある程度の段階でこんな感じでゲームエンジンに統合されて行くんではないかという気もする。↓



スポンサーリンク

関連記事

ディープラーニング
Google製オープンソース機械学習ライブラリ『TensorFlow』のWindows版が公開された
FCN (Fully Convolutional Network):ディープラーニングによるSema...
参考書
読みやすくて高速なディープラーニングのフレームワーク『Caffe』
Raspberry PiでIoTごっこ
ZBrushで仮面ライダー3号を造る 仮面編 Clay Polish
プログラミングスキルとは何か?
レンダラ制作はOpenGL とか DirectX を使わなくてもできるんだぜ
FacebookがDeep learningツールの一部をオープンソース化
Fast R-CNN:ディープラーニングによる一般物体検出手法
映画『ミュータント・タートルズ』を観てきた
Maya API Reference
ガメラ生誕50周年
ZBrushトレーニング
日立のフルパララックス立体ディスプレイ
クラスの基本
HTML5・WebGLベースのグラフィックスエンジン『Goo Engine』
ZBrushのUV MasterでUV展開
Raspberry Pi 2のGPIOピン配置
3Dグラフィックスの入門書
WebGL開発に関する情報が充実してきている
Amazon Web ServicesでWordPress
Physically Based Rendering
Blender 2.8がついに正式リリース!
OpenCVで平均顔を作るチュートリアル
中学3年生が制作した短編映像作品『2045』
第20回 文化庁メディア芸術祭『3DCG表現と特撮の時代』
マルコフ連鎖モンテカルロ法
OpenCVでPhotoshopのプラグイン開発
Maya には3 種類のシェーダSDKがある?
ZScript
第25回コンピュータビジョン勉強会@関東に行って来た
為替レートの読み方 2WAYプライス表示
UnityプロジェクトをGitHubで管理する
3DCG Meetup #4に行ってきた
BlenderProc:Blenderで機械学習用の画像データを生成するPythonツール
Mayaのプラグイン開発
ディープラーニングに対応したPythonの機械学習ライブラリ『Pylearn2』
Unity MonoBehaviourクラスのオーバーライド関数が呼び出される順番
iPhone 3GSがますます欲しくなる動画
仮想関数

コメント