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チュートリアルシリーズ)

関連記事

Google App Engineのデプロイ失敗

Live CV:インタラクティブにComputer Visi...

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

pythonの機械学習ライブラリ『scikit-learn』

UnityでPoint Cloudを表示する方法

SDカードサイズのコンピューター『Intel Edison』

仮想関数

Caffe:読みやすくて高速なディープラーニングのフレームワ...

Dlib:C++の機械学習ライブラリ

オープンソースの人体モデリングツール『MakeHuman』の...

Accord.NET Framework:C#で使える機械学...

チャットツール用bot開発フレームワーク『Hubot』

HD画質の無駄遣い その2

Multi-View Environment:複数画像から3...

PeopleSansPeople:機械学習用の人物データをU...

Google XML Sitemap Generatorプラ...

Unityの各コンポーネント間でのやり取り

Unreal Engineの薄い本

統計的な顔モデル

WinSCP

OpenCV3.3.0でsfmモジュールのビルドに成功!

Qlone:スマホのカメラで3Dスキャンできるアプリ

Kinect for Windows v2の日本価格決定

OpenCV

画像認識による位置情報取得 - Semi-Direct Mo...

コンピュータビジョンの技術マップ

書籍『ROSプログラミング』

iPhoneで3D写真が撮れるアプリ『seene』

Kornia:微分可能なコンピュータービジョンライブラリ

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

MFnDataとMFnAttribute

プログラミングスキルとは何か?

Unityで強化学習できる『Unity ML-Agents』

OpenAR:OpenCVベースのマーカーARライブラリ

Fast R-CNN:ディープラーニングによる一般物体検出手...

UnrealCV:コンピュータビジョン研究のためのUnrea...

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

OpenCVのfindEssentialMat関数を使ったサ...

Adobeの手振れ補正機能『ワープスタビライザー』の秘密

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

Leap MotionでMaya上のオブジェクトを操作できる...

BGSLibrary:OpenCVベースの背景差分ライブラリ

コメント