サイトアイコン NegativeMindException

openMVG:複数視点画像から3次元形状を復元するライブラリ

最近、この手の2D→3D復元系のライブラリを色々と調べている。何となく、自分で3D復元ツールを作ってみたくてね。

この間のOpenGVは複数画像からカメラ(視点)の3次元位置・姿勢を推定するライブラリだった↓



こっちのopenMVG(Multiple View Geometry)は、名前の通り、複数視点から3次元形状を復元するためのオープンソースのライブラリ。(中身の処理はあんまり違いが無い気もする)
ライセンスはMPL(Mozilla Public License)2.0なので、商用利用も可能。

openMVG: “open Multiple View Geometry”

“open Multiple View Geometry”は、コンピュータビジョン研究者、特にMultiple View Geometryのコミュニティを対象としたライブラリです。このライブラリは、多視点幾何における古典的な手法を簡単に扱うことができ、多視点幾何の問題を正確に解けるように設計されています。
openMVGのポリシーは「シンプルに保つ、メンテナンス性を保つ」です。OpenMVGは、コミュニティでの変更が行いやすいように、コードの可読性を重視しています。機能とモジュールは全てユニットテスト済みです。このテスト駆動開発によって、コードの動作と再現性を保証します。また、この構造はユーザーが特定の機能を学び、理解する助けとなるでしょう。
より詳しく知りたい場合は、openMVG GitHubのリポジトリをご覧ください。


スポンサーリンク

と、公式ページに書いてあるので、アルゴリズムのお勉強にも有用なのではないでしょうか。公式ドキュメントはこちら



以前Structure from Motionを調べた時にチラホラとopenMVGという名前は聞いてたんだけど、その頃はコンピュータビジョンについて知らなさ過ぎてスルーしちゃってた。



Youtubeを見ると、openMVGとPMVS(Patch-based Multi-view Stereo Software)というツールと併用して3次元復元した動画がいくつかアップされている。





公式ページに

openMVG provides complete Structure from Motion implementations:
a sequential pipeline
a global pipeline

って書いてあるけど、”complete Structire from Motion implementations”ってのはカメラ姿勢と疎な点群の復元までですかね。

追記:openMVGにGUIを付けたツールを見つけた↓



スポンサーリンク

関連記事

  • オープンソースの取引プラットフォーム
  • Javaで作られたオープンソースの3DCGレンダラ『Sunflow』
  • MeshLab:3Dオブジェクトの確認・変換に便利なフリーウェア
  • Math Inspector:科学計算向けビジュアルプログラミングツール
  • MLDemos:機械学習について理解するための可視化ツール
  • Unity ARKitプラグインサンプルのドキュメントを読む
  • UnityでLight Shaftを表現する
  • Raspberry Pi
  • AfterEffectsプラグイン開発
  • Iterator
  • Konashiを買った
  • Theia:オープンソースのStructure from Motionライブラリ
  • Leap MotionでMaya上のオブジェクトを操作できるプラグイン
  • ManuelBastioniLAB:人体モデリングできるBlenderアドオン
  • 参考書
  • GAN (Generative Adversarial Networks):敵対的生成ネットワーク
  • OpenGV:画像からカメラの3次元位置・姿勢を推定するライブラリ
  • MFnDataとMFnAttribute
  • HerokuでMEAN stack
  • RefineNet (Multi-Path Refinement Network):ディープラーニン...
  • C++ 標準テンプレートライブラリ (STL)
  • WordPressのテーマを自作する
  • このブログのデザインに飽きてきた
  • SSII2014 チュートリアル講演会の資料
  • ブログのデザイン変えました
  • Unityで学ぶC#
  • Qlone:スマホのカメラで3Dスキャンできるアプリ
  • Raspberry Pi 2のGPIOピン配置
  • Faster R-CNN:ディープラーニングによる一般物体検出手法
  • geometry3Sharp:Unity C#で使えるポリゴン操作ライブラリ
  • ブログの復旧が難航してた話
  • OpenCVの顔検出過程を可視化した動画
  • OpenSfM:PythonのStructure from Motionライブラリ
  • WebGL開発に関する情報が充実してきている
  • MeshroomでPhotogrammetry
  • Manim:Pythonで使える数学アニメーションライブラリ
  • ブラウザ操作自動化ツール『Selenium』を試す
  • DensePose:画像中の人物表面のUV座標を推定する
  • Googleが画像解析旅行ガイドアプリのJetpac社を買収
  • コンピュータビジョンの技術マップ
  • 3Dモデルを立体視で確認できるVRアプリを作っている
  • 書籍『OpenCV 3 プログラミングブック』を購入
  • モバイルバージョンを終了