サイトアイコン NegativeMindException

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/

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



スポンサーリンク

関連記事

  • ヒーローに変身なりきりアーケードゲーム『ナレルンダー』
  • Qlone:スマホのカメラで3Dスキャンできるアプリ
  • Point Cloud Consortiumのセミナー「3D点群の未来」に行ってきたよ
  • デスクトップPCのパワーアップを考える
  • ZBrushで仮面ライダー3号を造る ベース編
  • OpenCVでiPhone6sのカメラをキャリブレーションする
  • OpenCVのバージョン3が正式リリースされたぞ
  • 自前のShaderがおかしい件
  • ZBrushでアヴァン・ガメラを作ってみる 歯を配置
  • Raspberry Pi 2を買いました
  • After Effects全エフェクトの解説(6.5)
  • Adobe MAX 2015
  • ポリゴン用各種イテレータと関数セット
  • 3分の動画でプログラミングを学習できるサイト『ドットインストール』
  • 映画『ミュータント・タートルズ』を観てきた
  • Mechanizeで要認証Webサイトをスクレイピング
  • 畳み込みニューラルネットワーク (CNN: Convolutional Neural Network...
  • Mean Stack開発の最初の一歩
  • MythTV:Linuxでテレビの視聴・録画ができるオープンソースプロジェクト
  • Unity MonoBehaviourクラスのオーバーライド関数が呼び出される順番
  • LLM Visualization:大規模言語モデルの可視化
  • ベイズ推定とグラフィカルモデル
  • Facebookの顔認証技術『DeepFace』
  • 昔Mayaでモデリングしたモデルをリファインしてみようか
  • CGAN (Conditional GAN):条件付き敵対的生成ネットワーク
  • ZBrushのZmodelerとDynamic Subdivisionを学ぶ
  • 機械学習での「回帰」とは?
  • テスト
  • Googleが画像解析旅行ガイドアプリのJetpac社を買収
  • オープンソースの人体モデリングツール『MakeHuman』のAPI開発プロジェクトがスタート
  • PythonでMayaのShapeノードプラグインを作る
  • AndroidもopenGLも初心者さ (でもJavaは知ってるよ)
  • 第20回 文化庁メディア芸術祭『3DCG表現と特撮の時代』
  • Shader.jp:リアルタイム3DCG技術をあつかうサイト
  • ZBrush 2021.6のMesh from Mask機能を使ってみる
  • 映画『ジュラシック・ワールド』のVFXメイキング
  • Photogrammetry (写真測量法)
  • Fast R-CNN:ディープラーニングによる一般物体検出手法
  • SONYの自律型エンタテインメントロボット『aibo』
  • ZBrushと液晶ペンタブレットでドラゴンをモデリングするチュートリアル動画
  • チャットツール用bot開発フレームワーク『Hubot』
  • Manim:Pythonで使える数学アニメーションライブラリ
  • モバイルバージョンを終了