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バインディング

対応するコンパイラ

ソースコードはこちら↓
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#...


スポンサーリンク

関連記事

Qlone:スマホのカメラで3Dスキャンできるアプリ
OANDAのfxTrade API
UnrealCV:コンピュータビジョン研究のためのUnreal Engineプラグイン
UnityでShaderの入力パラメータとして行列を渡す
ZBrushでゴジラ2001を作ってみる 側頭部のボリュームを探る
Super Resolution:OpenCVの超解像処理モジュール
UnityでPoint Cloudを表示する方法
マイケル・ベイの動画の感覚
ZBrushのZScript入門
Amazon EC2ログイン用の秘密鍵を無くした場合の対処方法
CGレンダラ研究開発のためのフレームワーク『Lightmetrica (ライトメトリカ)』
布のモデリング
Unreal Engineの薄い本
SIGGRAPH ASIAのマスコット
オープンソースの物理ベースレンダラ『Mitsuba』をMayaで使う
iOSデバイスと接続して連携するガジェットの開発方法
pythonもかじってみようかと
ラクガキの立体化 目標設定
『ローグ・ワン/スター・ウォーズ・ストーリー』"あのキャラクター"のメイキング
ZBrushでアヴァン・ガメラを作ってみる 全体のバランス調整 その2
ZBrushでアヴァン・ガメラを作ってみる 歯茎を別パーツへ分割
顔のモデリング
Point Cloud Libraryに動画フォーマットが追加されるらしい
線画を遠近法で描く
スクラッチで既存のキャラクターを立体化したい
GeoGebra:無料で使える数学アプリ
ZBrushでアヴァン・ガメラを作ってみる 壊れたデータの救出
Subsurface scatteringの動画
映画『ゴジラ-1.0』 メイキング情報まとめ
ラクガキの立体化
動的なメモリの扱い
自前のShaderがおかしい件
ZBrushでゴジラ2001を作ってみる 頭の概形作り
MythTV:Linuxでテレビの視聴・録画ができるオープンソースプロジェクト
Raspberry PiのGPIOを操作するPythonライブラリ『RPi.GPIO』の使い方
Structure from Motion (多視点画像からの3次元形状復元)
UnityでLight Shaftを表現する
法線マップを用意してCanvas上でShadingするサンプル
ZBrushのハードサーフェイス用ブラシ
海外ドラマのChromaKey
書籍『ゼロから作るDeep Learning』で自分なりに学ぶ
Maya LTでFBIK(Full Body IK)

コメント