Point Cloud Utils:Pythonで3D点群・Meshを扱うライブラリ

3Dコンピュータービジョンのブーム(?)のおかげか、Pythonで点群やMeshデータを扱えるオープンソースライブラリが充実してきた。
こちらのPoint Cloud UtilsはGPLv2ライセンス。

Point Cloud Utils



Point Cloud Utils (pcu)は、点群や三角形Meshの3D処理のために以下機能を提供するユーティリティライブラリです。以下機能の使用方法に関するドキュメントはExampleのセクションを参照してください。

  • 多くの一般的なMesh形式(PLY, STL, OFF, OBJ, 3DS, VRML 2.0, X3D, COLLADA)を読み書きできるユーティリティ関数。MeshLabにインポート可能な形式なら読み込み可能です!
  • Mesh上でポイントサンプルを生成するための一連のアルゴリズム:
  • 点群をダウンサンプリングするためのユーティリティ:
    • blue noise distributionを満たすダウンサンプリング
    • ボクセルグリッド上でのダウンサンプリング
  • 点群とMesh間の最近傍点
  • 点群と三角形Meshから法線の推定
  • 点群間の高速なK最近傍探索 (nanoflannベース)
  • 点群間のハウスドルフ距離
  • 点群間のChamfer距離
  • Sinkhorn法による点群間のWasserstein距離の近似
  • Fast Winding Numbersを使用した点群とMesh間の符号付距離の計算
  • 点群に最も近いMesh上の点の計算
  • 点群とMeshの重複頂点除去
  • embreeを使用したレイ/Meshの高速な交差判定
  • embreeを使用したレイ/surfelの高速な交差判定
  • Meshのスムージング
  • Meshのコンポーネント接続
  • Meshの間引き(デシメーション)
  • 点群とMesh内の重複/参照されていない頂点を削除する
  • Meshの水密化 (Watertight Manifold法)

pipでインストールできる。ドキュメントはこちら



Examplesに簡単な使い方の例が沢山載っていますね。

ところで、MeshLabも今はPythonから叩けるPyMeshLabというインターフェイスがあるのね。


関連記事

Maya LTのQuick Rigを試す

ZBrushでゴジラ2001を作ってみる 目元だけ作り込んで...

SIGGRAPH Asia

ZBrushCoreのTransposeとGizmo 3D

ZBrushでカスタムUIを設定する

Python for Unity:UnityEditorでP...

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

オープンソースの取引プラットフォーム

Ambient Occlusionを解析的に求める

ManimML:機械学習の概念を視覚的に説明するためのライブ...

BlenderでPhotogrammetryできるアドオン

『スター・ウォーズ 最後のジェダイ』のVFXブレイクダウン ...

OpenCV 3.1のsfmモジュールのビルド再び

日立のフルパララックス立体ディスプレイ

ZBrushでゴジラ2001を作ってみる 身体のSubToo...

WordPressのサーバ引っ越し方法を考える

ZBrushでリメッシュとディティールの転送

Konashiを買った

TensorSpace.js:ニューラルネットワークの構造を...

WebGL開発に関する情報が充実してきている

第1回 3D勉強会@関東『SLAMチュートリアル大会』

布地のシワの法則性

COLMAP:オープンソースのSfM・MVSツール

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

書籍『ROSプログラミング』

Windows10でPyTorchをインストールしてVSCo...

hloc:SuperGlueで精度を向上させたSfM・Vis...

Adobe Photoshop CS4 Extendedの3...

機械学習のオープンソースソフトウェアフォーラム『mloss(...

Mayaでリアルな布の質感を作るチュートリアル

ZBrushで仮面ライダー3号を造る 仮面編 DynaMes...

Physics Forests:機械学習で流体シミュレーショ...

Structure from Motion (多視点画像から...

Maya 2015から標準搭載されたMILA

リメイク版ロボコップスーツのメイキング

BlenderのRigifyでリギング

Google App Engine上のWordPressでA...

ヘッドマウントディスプレイとビジュアリゼーションの未来

GoB:ZBrushとBlenderを連携させるアドオン

Blendify:コンピュータービジョン向けBlenderラ...

Python.NET:Pythonと.NETを連携させるパッ...

Unity MonoBehaviourクラスのオーバーライド...

コメント