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

関連記事
Raspberry PiでIoTごっこ
Google Chromecast
立体視を試してみた
3DCGのモデルを立体化するサービス
SVM (Support Vector Machine)
OpenGVの用語
fSpy:1枚の写真からカメラパラメーターを割り出すツール
Raspberry Pi 2を買いました
SIGGRAPH 2020はオンライン開催
Python.NET:Pythonと.NETを連携させるパッ...
網元AMIで作ったWordpressサイトのインスタンスをt...
ZBrushでアヴァン・ガメラを作ってみる おでこ(?)のバ...
PGGAN:段階的に解像度を上げて学習を進めるGAN
iPadをハンディ3Dスキャナにするガジェット『iSense...
この連休でZBrushの スキルアップを…
デスクトップPCを新調した!
UnityプロジェクトをGitHubで管理する
Mayaのプラグイン開発
ブログの復旧が難航してた話
OpenGVのライブラリ構成
ZBrushのキャンバスにリファレンス画像を配置する
Photogrammetry (写真測量法)
フリーのUV展開ツール Roadkill UV Tool
布地のシワの法則性
マジョーラ
PeopleSansPeople:機械学習用の人物データをU...
OpenCVの顔検出過程を可視化した動画
U-Net:ディープラーニングによるSemantic Seg...
TensorFlowでCGを微分できる『TensorFlow...
JavaScriptとかWebGLとかCanvasとか
2D→3D復元技術で使われる用語まとめ
WordPressの表示を高速化する
UnityのGameObjectの向きをScriptで制御す...
タダでRenderManを体験する方法
pythonの機械学習ライブラリ『scikit-learn』
スクラッチで既存のキャラクターを立体化したい
OpenCV 3.1から追加されたSfMモジュール
イタリアの自動車ブランドFiatとゴジラがコラボしたCMのメ...
OpenCVで平均顔を作るチュートリアル
Mechanizeで要認証Webサイトをスクレイピング
UnityからROSを利用できる『ROS#』
ポリゴン用各種イテレータと関数セット
コメント