3D人-3dnchu-さんでオープンソースのPhotogrammetryアプリケーション「meshroom」とその基盤となっているフレームワーク「Alice Vision」が紹介されていたのでちょっと調べてみた。
http://3dnchu.com/archives/alicevision-meshroom/
AliceVision – Photogrammetric Computer Vision Framework
AliceVisionは3D復元とカメラトラッキングのアルゴリズムを提供するPhotogrammetricコンピュータービジョンフレームワークです。AliceVisionは、state-of-the-artのコンピュータビジョンアルゴリズムを、テスト・分析・再利用可能な強力なソフトウェアのベースとして提供することを目指しています。このプロジェクトはアカデミアと産業のコラボレーションにより、プロダクションでの使用に耐える堅牢性と品質を備えた最先端のアルゴリズムを提供します。
このプロジェクトを基にしたパイプラインとツールの詳細はAliceVisionのWebサイトでご覧ください。
パイプラインによる処理結果はsketchfabを参照してください。
Alice VisionフレームワークのライセンスはMPLv2(Mozilla Public License, version 2.0)とのことで、商用利用は可能だけどソースコードの開示が必要。
COPYING.mdを読むと、Structure from Motionの処理はopenMVG、Multi-View Stereoの処理にはCMPMVSが使われている他、libmvなど色んなサードパーティーのライブラリが使用されている。

また、GitHub上のリポジトリだけでなく、Alice Vision公式のWebサイトがあります↓
https://alicevision.github.io/
関連ライブラリ
関連ライブラリが2つある。
CCTag
このライブラリを使用すると、CCTagマーカーを検出・識別することができます。
このマーカシステムは、チャレンジングな撮影条件でもサブピクセル精度の堅牢性を提供します。
CCTagはCVPR 2016で発表された論文”Detection and Accurate Localization of Circular Fiducials under Highly Challenging Conditions“で提案されているマーカー検出システムを実装したライブラリ。
CPUとGPU両方の実装が入っているようです。こちらもMPLv2ライセンス。
PopSIFT
このライブラリは、SIFT特徴量抽出のGPU実装を提供します。
最近のグラフィックカードなら、HD解像度の画像に対して25fpsのパフォーマンスを発揮できます。
PopSiftはSHIFTをGPUで高速に処理できるライブラリ。
こちらも基本はMPLv2ライセンスだけど、SHIFTは特許で守られているので、その辺の権利が面倒そうですね。
スタンドアローンのアプリケーション
さて、ライセンス的に商用アプリケーションに組み込みづらいAlice Visionフレームワークですが、公式にフレームワークを使用したソフトウェアが公開されている。もちろんオープンソース。
ただ、meshroom以外はソースコードのみの公開なので、自前でビルドしないと使えません。そのうちビルド済みのバイナリが配布されると良いですね。
meshroom
meshroomは、AliceVisionフレームワークを使った無料でオープンソースの3D復元ソフトウェアです。
meshroomはAliceVisionフレームワークをベースにしたスタンドアローンなPhotogrammetryアプリケーション。3D人-3dnchu-さんではメインで紹介されていました。
無料で使えるPhotogrammetryツールなので色々と可能性が広がりますね。meshroomはダウンロードページでWindows, Linux用にビルド済みのパッケージが配布されている。
2019年6月 追記:使ってみた↓

DCCツール向けプラグイン
その他、各DCCツールアプリケーション向けのプラグインもある。
MeshroomMaya
MeshroomMayaによって、グラフィックアーティスト達は画像からピクセル精度での3D復元モデリング(点群とカメラ)が可能になります。
MeshroomMayaは複数枚画像から3Dモデルを作成できるMayaプラグイン。旧名はMayaMVGだったんですね。
ofxMVG
このプラグインは、meshroomで3D復元されたシーンからカメラの姿勢を推定します。
ofxMVGはNuke用プラグインで、OpenFX規格に対応している。
Houdini用AliceVisionプラグイン
Houdini用のAliceVisionプラグインもある。(Windowsのみ)
AliceVision は、3D再構成およびカメラ追跡アルゴリズムを提供するフォトグラメトリコンピュータビジョンフレームワークで 、こちらに概要が出ている研究者と開発者によって Github で提供されています。
そのコマンドライン機能により、Houdini の無償の GameDevelopmentToolset の一部として利用可能になりました。
AliceVision MPL2 によってライセンスされています。
Photogrammetryのパイプライン
Alice VisionのサイトでPhotogrammetryのパイプラインを解説しているページが分かりやすかったので引用↓
Photogrammetry Pipeline
Photogrammetryは複数の写真から測量する技術です。
Photogrammetryでは、順序付けされていない複数枚の写真やビデオのセットからシーンのジオメトリを推定します。
写真は3Dシーンを2D平面に投影したものであり、奥行き情報を失っています。この投影プロセスの逆行がPhotogrammetryの目標となります。
2021年追記:MeshroomからBlenderにインポートするためのアドオンもある↓
meshroom2blender
AliceVision Meshroomのデータファイルであるカメラ、画像、疎な点群、objのBlenderインポーターです。
これはmeshroom importerの基本的な実装のみです。高度なノード3を使用している場合は、ファイルの最初のノードのみが使用されます。このアドオンは各ステージ/ノードを計算したと想定し、出力も同様となります。
関連記事
ZBrushでアヴァン・ガメラを作ってみる 脚のトゲの作り直...
世界一下品なクマと世界一紳士なクマ
WordPressの表示を高速化する
Swark:コードからアーキテクチャ図を作成できるVSCod...
3D復元技術の情報リンク集
映画『ジュラシック・ワールド』のVFXメイキング
アニゴジ関連情報
CNN Explainer:畳み込みニューラルネットワーク可...
AMIMOTO(PVM版)で作成したインスタンスをAMIMO...
ZBrushでアヴァン・ガメラを作ってみる 下アゴと頭部を作...
FreeMoCap Project:オープンソースのマーカー...
GoB:ZBrushとBlenderを連携させるアドオン
Raytracing Wiki
書籍『イラストで学ぶ ディープラーニング』
iPadをハンディ3Dスキャナにするガジェット『iSense...
ZBrushでアヴァン・ガメラを作ってみる 甲羅の修正・脚の...
Mitsuba 2:オープンソースの物理ベースレンダラ
日立のフルパララックス立体ディスプレイ
ZBrushでアヴァン・ガメラを作ってみる 頭頂部と首周りを...
TensorFlowでCGを微分できる『TensorFlow...
Polyscope:3Dデータ操作用GUIライブラリ
CGのためのディープラーニング
PythonでMayaのShapeノードプラグインを作る
trimesh:PythonでポリゴンMeshを扱うライブラ...
プログラミングスキルとは何か?
libigl:軽量なジオメトリ処理ライブラリ
Web経由でRaspberry PiのGPIOを操作したい
映画『ジュラシック・ワールド/炎の王国』のVFXブレイクダウ...
ROSの薄い本
NVIDIA GeForce RTX 3080を購入
Shader.jp:リアルタイム3DCG技術をあつかうサイト
『シン・ゴジラ』のコンセプトアニメーションのメイキング動画が...
Phongの表現力パネェ 材質別のPhong Shader用...
物理ベースレンダリングのためのマテリアル設定チートシート
OpenGV:画像からカメラの3次元位置・姿勢を推定するライ...
UnityのTransformクラスについて調べてみた
C++の抽象クラス
Microsoft Mathematics:数学の学習支援ツ...
WordPress on Google App Engine...
シン・ゴジラのファンアート
ZBrushでアヴァン・ガメラを作ってみる 頭頂部の作り込み...
レンダラ制作はOpenGL とか DirectX を使わなく...








コメント