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



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

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

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

最近はPythonバインディングも用意されています↓

libigl python bindings


スポンサーリンク

関連記事

無料で使える人体3DCG作成ツール

Pythonの自然言語処理ライブラリ『NLTK(Natural Language Toolkit)』

ZBrushでアヴァン・ガメラを作ってみる 全体のバランス調整 その2

ゴジラ(2014)のメイキング

C++ 標準テンプレートライブラリ (STL)

OpenGVのライブラリ構成

映画『ミュータント・タートルズ』を観てきた

ZBrushでゴジラ2001を作ってみる 頭の概形作り

WebGL開発に関する情報が充実してきている

オープンソースの顔の動作解析ツールキット『OpenFace』

オープンソースのネットワーク可視化ソフトウェアプラットフォーム『Cytoscape』

Deep Learningとその他の機械学習手法の性能比較

写真から3Dメッシュの生成・編集ができる無料ツール『Autodesk Memento』

BSDF: (Bidirectional scattering distribution funct...

Photo Bash:複数の写真を組み合わせて1枚のイラストを制作する

WordPressのサーバ引っ越し方法を考える

Python.NET:Pythonと.NETを連携させるパッケージ

Theia:オープンソースのStructure from Motionライブラリ

ZBrush 2018へのアップグレード

Rerun:マルチモーダルデータの可視化アプリとSDK

このブログのデザインに飽きてきた

COLMAP:オープンソースのSfM・MVSツール

PureRef:リファレンス画像専用ビューア

ヘッドマウントディスプレイとビジュアリゼーションの未来

MB-Lab:Blenderの人体モデリングアドオン

ZBrushのZScript入門

Mitsuba 3:オープンソースの研究向けレンダラ

DCGAN (Deep Convolutional GAN):畳み込みニューラルネットワークによる敵...

OpenCV 3.3.0 contribのsfmモジュールのサンプルを動かしてみる

天体写真の3D動画

ROSの薄い本

Python拡張モジュールのWindows用インストーラー配布サイト

Unity ARKitプラグインサンプルのチュートリアルを読む

1枚の画像からマテリアルを作成できる無料ツール『Materialize』

UnityでLight Shaftを表現する

ZBrushでアヴァン・ガメラを作ってみる 壊れたデータの救出

RSSフィードを読込んで表示するWordpressプラグイン『RSSImport』

MythTV:Linuxでテレビの視聴・録画ができるオープンソースプロジェクト

hloc:SuperGlueで精度を向上させたSfM実装

ZBrushでゴジラ2001を作ってみる 身体のバランスを探る

Mechanizeで要認証Webサイトをスクレイピング

AmazonEC2のインスタンスをt1.microからt2.microへ移行する

コメント