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というインターフェイスがあるのね。

関連記事
Google Colaboratoryで遊ぶ準備
オープンソースのプリント基板設計ツール『KiCad』
Russian3DScannerのトポロジー転送ツール『Wr...
IronPythonを使ってUnity上でPythonのコー...
WordPress on Google App Engine...
OpenCVで顔のモーフィングを実装する
FCN (Fully Convolutional Netwo...
3分の動画でプログラミングを学習できるサイト『ドットインスト...
ZBrushで手首のモデリングをリファイン
OpenCV 3.3.0 contribのsfmモジュールの...
OpenCV
Physically Based Rendering
UnityでTweenアニメーションを実装できる3種類の無料...
WordPressプラグインの作り方
Point Cloud Libraryに動画フォーマットが追...
DCGAN (Deep Convolutional GAN)...
Geogram:C++の3D幾何アルゴリズムライブラリ
映画『ジュラシック・ワールド/炎の王国』のVFXブレイクダウ...
チャットツール用bot開発フレームワーク『Hubot』
Blenderでよく使うaddon
Siggraph Asia 2009 カンファレンスの詳細
SIGGRAPH論文へのリンクサイト
定数
CEDEC 3日目
WinSCP
スクレイピング
MetaHumanの頭部をBlenderで編集できるアドオン
顔のモデリング
WordPressプラグインによるサイトマップの自動生成
Managing Software Requirements...
『シン・ゴジラ』のコンセプトアニメーションのメイキング動画が...
ZBrushでアヴァン・ガメラを作ってみる モールドの彫り込...
iOSデバイスと接続して連携するガジェットの開発方法
SIGGRAPH Asia
Unity ARKitプラグインサンプルのドキュメントを読む
書籍『The Art of Mystical Beasts』...
OpenCVの顔検出過程を可視化した動画
HD画質の無駄遣い
Mixamo:人型3Dキャラクターアニメーション制作サービス
OANDAのfxTrade API
顔モデリングのチュートリアル
ZBrushでリメッシュとディティールの転送


コメント