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というインターフェイスがあるのね。
MeshLab:3Dオブジェクトの確認・変換に便利なフリーウェアMeshLab MeshLab is an open source, portable, and extensible system for the processing and editing of unstructured 3D tri...
スポンサーリンク
関連記事
Zbrushでメカ物を作るチュートリアル動画
ZBrushCore
ZBrushで仮面ライダー3号を造る 仮面編 ZRemesher
ZBrushトレーニング
ラクガキの立体化 1年半ぶりの続き
ラクガキの立体化 背中の作り込み・手首の移植
SIGGRAPH ASIA 2009で学生ボランティア募集してるみたい
UnityのGlobal Illumination
『シン・ゴジラ』のコンセプトアニメーションのメイキング動画が公開された
Adobe Photoshop CS4 Extendedの3Dモデル編集機能
Shader.jp:リアルタイム3DCG技術をあつかうサイト
ZBrush 2021.6のMesh from Mask機能を使ってみる
Unity Scriptコーディング→Unreal Engine Scriptコーディング
書籍『ゼロから作るDeep Learning』で自分なりに学ぶ
UnityのMonoBehaviourクラスをシングルトン化する
Mixamo:人型3Dキャラクターアニメーション制作サービス
Google Colaboratoryで遊ぶ準備
OpenCVで動画の手ぶれ補正
Google App EngineでWordPress
今年もSSII
ROMOハッカソンに行ってきた
動的なメモリの扱い
オープンソースの物理ベースレンダラ『Mitsuba』をMayaで使う
生物の骨格
Live CV:インタラクティブにComputer Visionコーディングができるツール
ZBrushのキャンバスにリファレンス画像を配置する
科学技術計算向けスクリプト言語『Julia』
OpenMesh:オープンソースの3Dメッシュデータライブラリ
ZBrushのZScript入門
ラクガキの立体化
機械学習手法『Random Forest』
Photogrammetry (写真測量法)
iPhoneアプリ開発 Xcode 5のお作法
ラクガキの立体化 目標設定
3DCGのモデルを立体化するサービス
openMVG:複数視点画像から3次元形状を復元するライブラリ
Python for Unity:UnityEditorでPythonを使えるパッケージ
為替レートの読み方 2WAYプライス表示
トランスフォーマーの変形パターンを覚えるのは楽しいと思うんだ
ZBrushでゴジラ2001を作ってみる 身体のシルエット出し
ZBrushでアヴァン・ガメラを作ってみる 下半身のバランス調整
ディープラーニング
コメント