軽量なジオメトリ処理ライブラリ『libigl』

このlibiglは、ヘッダーファイルだけで構成された軽量なジオメトリ処理系のライブラリだそうです。ライセンスはMozilla Public License(MPL)で、特許を含まないコードなら改変、再頒布OK。

libigl



libiglは、シンプルなC++ジオメトリ処理ライブラリです。libiglには、離散化された微分幾何学計算、余接ラプラシアンや対角化質量行列などの有限要素行列、シンプルなファセット面とエッジベースのトポロジデータ構造、OpenGLやGLSLのためのMesh表示ユーティリティ幅広い機能が備わっています。また、行列操作のための豊富なコア機能により、Eigenライブラリの機能をMatLabのように扱うことができます。

これは、ヘッダーのみのライブラリです。使用前にライブラリをビルドする必要はありません。iglヘッダー(例:#include )をインクルードするだけでそのまま利用できます。各ヘッダーファイルには関数が1つずつ入っています。(例:igl/cotmatrix.hにはigl::cotmatrix()関数が入っている)。ほとんどがn行3列の頂点位置座標行列V、m行3列の三角形インデックス行列Fに格納された一般的な三角形Mesh上で動作するよう調整されています。

また、必要に応じてライブラリをStatic Libraryにプリコンパイルしておけば、あなたのプロジェクトの全体のコンパイル時間を短縮することもできます。これはあくまでコンパイル時間の短縮のみです。(実行時の動作・パフォーマンスは変わりません。)ハッキリしない場合、ヘッダーのみのデフォルトモードを使用してください。(つまり、使いたいヘッダーファイルのみをインクルードしてください)

libiglは、Eigenライブラリに大きく依存しています。我々はMATLABで多くのプロトタイピングを行っており、便利なMATLABからlibigl+Eigenへの変換テーブルを用意しています。

我々は定期的にMac OS X環境のclang、Linux環境のgcc、Windows環境のVisual Studio 2015 Community Editionでコンパイルテストを実施しています。


スポンサーリンク

libiglを利用しているプロジェクト一覧を見ると、Adobe ResearchとかPixar Researchがいたりして、業界のデファクトスタンダード感がありますね。(オイラは全然知らなかった。。。)


スポンサーリンク


中にcopyleftっていうサブディレクトリがあるけど、逆に言うと、このサブディレクトリ以外は改変・配布しちゃまずいってことなのかな?

チュートリアルが充実しているようなので、ちょこちょこと遊んでみるかな。

Tutorial

libigl tutorial

Hands-on LibiGL Tutorial

libiglのリポジトリの成長をGourceで可視化した動画見つけた。2011年から始まったってことで良いのかな。

https://www.youtube.com/watch?v=rkKGel1AXtc

http://www.gradientspace.com/tutorials/2020/1/2/libigl-in-unreal-engine


スポンサーリンク

関連記事

CGのためのディープラーニング
ZBrushの作業環境を見直す
Point Cloud Libraryに動画フォーマットが追加されるらしい
Maya LTでFBIK(Full Body IK)
MFnMeshクラスのsplit関数
立体視を試してみた
openMVGをWindows10 Visual Studio 2015環境でビルドする
科学技術計算向けスクリプト言語『Julia』
CGWORLD CHANNEL 第21回ニコ生配信は『シン・ゴジラ』メイキングスペシャル!
2012 昨日のクローズアップ現代を見た
OpenCV バージョン4がリリースされた!
ZBrushでUndo Historyを動画に書き出す
OpenCVのバージョン3が正式リリースされたぞ
画像中の人物表面のUV座標を推定する『DensePose』
Blender 2.81でIntel Open Image Denoiseを使う
Managing Software Requirements: A Unified Approach
書籍『仕事ではじめる機械学習』を読みました
SONYの自律型エンタテインメントロボット『aibo』
法線マップを用意してCanvas上でShadingするサンプル
ZBrushでアヴァン・ガメラを作ってみる 頭頂部の作り込み・舌の追加
ポリゴンジオメトリ処理ライブラリ『pmp-library (Polygon Mesh Process...
なんかすごいサイト
OpenCV 3.3.0 contribのsfmモジュールのサンプルを動かしてみる
ZBrushで手首のモデリングをリファイン
このブログのデザインに飽きてきた
UnityのGlobal Illumination
手を動かしながら学ぶデータマイニング
TVML (TV program Making language)
OpenCVで平均顔を作るチュートリアル
OpenMayaRender
ヘッドマウントディスプレイとビジュアリゼーションの未来
AmazonEC2のインスタンスをt1.microからt2.microへ移行する
テスト
ZBrush キャラクター&クリーチャー
AfterEffectsプラグイン開発
SIGGRAPH Asia
Pythonの自然言語処理ライブラリ『NLTK(Natural Language Toolkit)』
オープンソースのIT資産・ライセンス管理システム『Snipe-IT』
CEDEC 3日目
池袋パルコで3Dのバーチャルフィッティング『ウェアラブル クロージング バイ アーバンリサーチ』
C++始めようと思うんだ
OpenCV

コメント