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

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

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まで来ましたね。



少しずつ日本語の情報も増えてきている。
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/

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

UnityからROSを利用できる『ROS#』
.NETアプリケーション(特にUnity)からROSを利用するためのC#でできたライブラリ・ツール ROS#が公開された。→ROS-INDUSTRIALのアナウンスライセンスは Apache 2.0で、freeで商用利用も可能。ROS#RO...

関連記事

ZBrushのハードサーフェイス用ブラシ

顔モデリングのチュートリアル

uGUI:Unityの新しいGUI作成システム

ROMOハッカソンに行ってきた

ZBrushでアヴァン・ガメラを作ってみる 下アゴと頭部を作...

ZBrushのZmodelerとDynamic Subdiv...

科学技術計算向けスクリプト言語『Julia』

PureRef:リファレンス画像専用ビューア

PyTorch3D:3Dコンピュータービジョンライブラリ

Digital Emily Project:人間の顔をそっく...

UnityのGameObjectの向きをScriptで制御す...

C#で使える遺伝的アルゴリズムライブラリ『GeneticSh...

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

ZBrushでゴジラ2001を作ってみる 身体のシルエット出...

Google App Engine上のWordPressでF...

この本読むよ

ZBrushでUndo Historyを動画に書き出す

HD画質の無駄遣い その2

書籍『イラストで学ぶ ディープラーニング』

FacebookがDeep learningツールの一部をオ...

OpenCV 3.1のsfmモジュールを試す

Mean Stack開発の最初の一歩

自前のShaderがおかしい件

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

フリーのUV展開ツール Roadkill UV Tool

Konashiを買った

Paul Debevec

Unityで画面タッチ・ジェスチャ入力を扱う無料Asset『...

書籍『ゼロから作るDeep Learning』で自分なりに学...

WordPressのテーマを自作する

フォトンの放射から格納までを可視化した動画

立体視を試してみた

2012のメイキングまとめ(途中)

オープンソースの人体モデリングツール『MakeHuman』の...

ZBrushでアヴァン・ガメラを作ってみる 下アゴの付け根を...

ブログのデザイン変えました

写真に3Dオブジェクトを違和感無く合成する『3DPhotoM...

1枚の画像からマテリアルを作成できる無料ツール『Materi...

Boost オープンソースライブラリ

書籍『3次元コンピュータビジョン計算ハンドブック』を購入

網元AMIで作ったWordpressサイトのインスタンスをt...

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

コメント