OpenCV 3.1から追加されたSfMモジュール

またSfM(Structure from Motion)ネタ。

OpenCVのバージョン3.1からSfMのモジュールが追加されている。Google Summer Of Code 2015の成果らしいです。



これをさっそくUbuntuで試した方がいる↓
http://qiita.com/TaroYamada/items/c317555bf46b1e1431f8
http://iwaki2009.blogspot.jp/2016/01/ubuntu-1404.html
http://iwaki2009.blogspot.jp/2016/01/ubuntu-1404_7.html



このSfMモジュール、公式にはWindows環境でのビルドに対応していないそうですが、どうやら一手間かければVisual Studioでもビルドできるようです。↓
http://qiita.com/SatoshiRobatoFujimoto/items/c87b14cd20cda3c97306

OpenCVのSfMモジュールでは、Googleが開発したロギングライブラリGLogと、同じくGoogleが開発したCeres Solverという非線形最適化ライブラリ、そしてlibmvというSfMのライブラリのlight版(libmv_light)が使われている。libmvの大本は結構古いライブラリのようで、もう4年ぐらい開発が止まっている様子。

OpenCVのSfMモジュール公式チュートリアルを見ると、このモジュールでできることが大体わかる。↓

OpenCV:Structure From Motion

Camera Motion Estimation

Camera motion estimation from a given set of tracked 2d points.

Scene Reconstruction

Sparse scene reconstruction from a given set of images.

Import Reconstruction

Import a scene reconstruction.

最後のImport ReconstructionだけはOpenCVだけじゃなくBundlerも使う。

Bundler

Bundler

OpenCVのSfMモジュールでスパース(疎)な3次元復元まではできるようだ。その後の密な点群の復元はBundlerで行う。その辺はOpenMVGと同じような感じ。

そしてビルドに挑戦↓



OpenCV 3 プログラミングブック

コンピュータビジョン最先端ガイド5 (CVIMチュートリアルシリーズ)

関連記事

fSpy:1枚の写真からカメラパラメーターを割り出すツール

3Dモデルを立体視で確認できるVRアプリを作っている

PythonでMayaのShapeノードプラグインを作る

WordPress on Google App Engine...

Unity MonoBehaviourクラスのオーバーライド...

GoogleのDeep Learning論文

自前Shaderの件 解決しました

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

Pix2Pix:CGANによる画像変換

OpenCV 3.1とopencv_contribモジュール...

法線マップを用意してCanvas上でShadingするサンプ...

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

Google製オープンソース機械学習ライブラリ『Tensor...

viser:Pythonで使える3D可視化ライブラリ

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

UnityのMonoBehaviourクラスをシングルトン化...

顔追跡による擬似3D表示『Dynamic Perspecti...

オープンソースの取引プラットフォーム

Human Generator:Blenderの人体生成アド...

UnityのTransformクラスについて調べてみた

顔検出・認識のAPI・ライブラリ・ソフトウェアのリスト

SSII 2014 デモンストレーションセッションのダイジェ...

「うぶんちゅ!」

AndroidもopenGLも初心者さ (でもJavaは知っ...

オープンソースの物理ベースGIレンダラ『appleseed』

Kinect for Windows v2の日本価格決定

Faceshiftで表情をキャプチャしてBlender上でM...

Manim:Pythonで使える数学アニメーションライブラリ

PythonでBlenderのAdd-on開発

DCGAN (Deep Convolutional GAN)...

マルコフ連鎖モンテカルロ法

MVStudio:オープンソースのPhotogrammetr...

UnityでOpenCVを使うには?

RefineNet (Multi-Path Refineme...

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

写真に3Dオブジェクトを違和感無く合成する『3DPhotoM...

Seleniumを使ったFXや株の自動取引

UnityからROSを利用できる『ROS#』

OpenCV 3.3.0-RCでsfmモジュールをビルド

TeleSculptor:空撮動画からPhotogramme...

ROMOハッカソンに行ってきた

Theia:オープンソースのStructure from M...

コメント