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

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

libigl – A simple C++ geometry processing library

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


スポンサーリンク

関連記事

UnityのAR FoundationでARKit 3
Unite 2014の動画
Pythonのソースコードに特化した検索エンジン『Nullege』
画像からカメラの3次元位置・姿勢を推定するライブラリ『OpenGV』
UnityでOpenCVを使うには?
Unreal Engineの薄い本
3DCGのモデルを立体化するサービス
ゴジラ(2014)のメイキング
OpenCVの三角測量関数『cv::triangulatepoints』
After Effects全エフェクトの解説(6.5)
「ベンジャミン·バトン数奇な人生」でどうやってCGの顔を作ったのか
Google製オープンソース機械学習ライブラリ『TensorFlow』のWindows版が公開された
Webスクレイピングの勉強会に行ってきた
ZBrush 4R8 リリース!
フォトンの放射から格納までを可視化した動画
定数
ZBrushで基本となるブラシ
2D→3D復元技術で使われる用語まとめ
オープンソースの顔認識フレームワーク『OpenBR』
Google Chromecast
ZBrushと液晶ペンタブレットでドラゴンをモデリングするチュートリアル動画
Deep Neural Networkによる顔の個人識別フレームワーク『OpenFace』
映画『ミュータント・タートルズ』を観てきた
ZBrushで仮面ライダー3号を造る 仮面編 PolyGroup作成に再挑戦
WordPressの表示を高速化する
Zbrushでメカ物を作るチュートリアル動画
Konashiを買った
映画『ブレードランナー 2049』のVFX
リファレンス画像専用ビューア『PureRef』
Raspberry PiでIoTごっこ
pythonもかじってみようかと
書籍『3次元コンピュータビジョン計算ハンドブック』を購入
Oculus Goを購入!
Google App Engineのデプロイ失敗
Iterator
OpenCVで顔のモーフィングを実装する
ヘッドマウントディスプレイとビジュアリゼーションの未来
UnityでTweenアニメーションを実装できる3種類の無料Asset
ZBrushのハードサーフェイス用ブラシ
写真に3Dオブジェクトを違和感無く合成する『3DPhotoMagic』
Windows Server 2008にAutodesk Maya 2009をインストール
GANs (Generative Adversarial Networks):敵対的生成ネットワーク

コメント