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上でポイントサンプルを生成するための一連のアルゴリズム:
- “Parallel Poisson Disk Sampling with Spectrum Analysis on Surface“に基づいたMeshのPoisson-Disk-Sampling。
- LloydアルゴリズムによるMeshのサンプリング
- 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に簡単な使い方の例が沢山載っていますね。
- Meshと点群の読み込み
- Meshと点群の保存
- Poisson-Disk-Samplingを使用したMesh上でのblue-noiseサンプル生成
- Mesh上でのランダムサンプル生成
- blue noise distributionによる点群のダウンサンプリング
- 点群のボクセルグリッドによるダウンサンプリング
- 点群からの法線推定
- 頂点ごとのMesh法線の計算
- フェイスごとのMesh法線の計算
- Meshのフェイスの向き
- 2つの点群間のWasserstein(Sinkhorn)距離の近似
- 2つの点群間のChamfer距離
- 2つの点群間のHausdorff距離
- 2つの点群間のK最近傍点
- Lloyd緩和法による正方形と立方体でのポイントサンプル生成
- fast winding numbersで三角形Meshまでの最短符号付き距離の計算
- Mesh上の最も近い点の計算
- 点群とMeshの重複除去
- 参照されていないMesh頂点の削除
- Meshのフェイス面積の計算
- Meshのスムージング
- 連結コンポーネントの計算
- 三角形Meshの間引き(デシメーション)
- Meshを水密化
- レイ/Meshの交差判定
- レイ/Surfelの交差判定
- Meshの曲率計算
- 三角形スープの一貫した内外計算する
ところで、MeshLabも今はPythonから叩けるPyMeshLabというインターフェイスがあるのね。

関連記事
オープンソースの取引プラットフォーム
Webサイトのワイヤーフレームが作成できるオンラインツール
Iterator
cvui:OpenCVのための軽量GUIライブラリ
無料で使える人体3DCG作成ツール
SVM (Support Vector Machine)
Cartographer:オープンソースのSLAMライブラリ
adskShaderSDK
Raspberry PiでIoTごっこ
Mayaのシェーディングノードの区分
書籍『The Art of Mystical Beasts』...
ラクガキの立体化 3Dプリント注文
BlenderのRigifyでリギング
布のモデリング
オープンソースの物理ベースGIレンダラ『appleseed』
Unite 2014の動画
ZBrushで仮面ライダーBLACK SUNを作る 頭部~バ...
WordPressの表示を高速化する
ZBrushでアマビエを作る その2
AnacondaとTensorFlowをインストールしてVi...
『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...
Kornia:微分可能なコンピュータービジョンライブラリ
JavaScriptとかWebGLとかCanvasとか
Deep Learningとその他の機械学習手法の性能比較
書籍『ROSプログラミング』
頭蓋骨からの顔復元と進化過程の可視化
geometry3Sharp:Unity C#で使えるポリゴ...
Managing Software Requirements...
ZBrushで仮面ライダー3号を造る 仮面編 リファレンス画...
ZBrushでアヴァン・ガメラを作ってみる 壊れたデータの救...
Point Cloud Libraryに動画フォーマットが追...
素敵なパーティクル
オープンソースのIT資産・ライセンス管理システム『Snipe...
海外ドラマのChromaKey
ZBrushでアヴァン・ガメラを作ってみる 下アゴの付け根を...
SIGGRAPH Asia
Maya LTでFBIK(Full Body IK)
iPhone・iPod touchで動作する知育ロボット『R...
ZBrush 2018での作業環境を整える
Adobe Photoshop CS5の新機能
ZBrushで仮面ライダー3号を造る 仮面編
ZBrush 2021.6のMesh from Mask機能...


コメント