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

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

公式ドキュメントはこちら↓
特に各環境でのソースコードのビルド方法はGetting Startedから。
http://www.open3d.org/docs/index.html

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バインディングの充実が重要なのかも。

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

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



スポンサーリンク

関連記事

ニューラルネットワークの構造を可視化するフレームワーク『TensorSpace.js』
ラクガキの立体化 モールドの追加
機械学習手法『SVM(Support Vector Machine)』
ハリウッド版「GAIKING」パイロット映像
Unityで画面タッチ・ジェスチャ入力を扱う無料Asset『TouchScript』
ラクガキの立体化 進捗
OpenCLに対応したオープンソースの物理ベースレンダラ『LuxRender(ルクスレンダー)』
SDカードサイズのコンピューター『Intel Edison』
PolyPaint
Pix2Pix:CGANによる画像変換
ZBrushでカスタムUIを設定する
ZBrush キャラクター&クリーチャー
昔Mayaでモデリングしたモデルをリファインしてみようか
ゴジラ(2014)のメイキング
頭蓋骨からの顔復元と進化過程の可視化
WordPressの表示を高速化する
C++始めようと思うんだ
UnityでTweenアニメーションを実装できる3種類の無料Asset
2012 昨日のクローズアップ現代を見た
イタリアの自動車ブランドFiatとゴジラがコラボしたCMのメイキング
UnityのMonoBehaviourクラスをシングルトン化する
中学3年生が制作した短編映像作品『2045』
Unityで学ぶC#
Houdiniのライセンスの種類
OpenCVで動画の手振れ補正
OpenMVSのサンプルを動かしてみる
オープンソースの3Dメッシュデータライブラリ『OpenMesh』
UnityプロジェクトをGitHubで管理する
Iterator
konashiのサンプルコードを動かしてみた
C++の機械学習ライブラリ『Dlib』
OpenMayaのPhongShaderクラス
ZBrushトレーニング
ZBrushで仮面ライダー3号を造る 仮面編 ZRemesher
iOSデバイスと接続して連携するガジェットの開発方法
python-twitterで自分のお気に入りを取得する
CreativeCOW.net
OpenCV 3.1から追加されたSfMモジュール
OpenCV
Adobe Photoshop CS5の新機能
WebGL開発に関する情報が充実してきている
Maya LTでFBIK(Full Body IK)

コメント