首先介紹環境架設,可以參考http://www.cnblogs.com/freedomshe/archive/2012/04/25/2470540.html,
需要再新增的路徑與檔案如下:
STEP5:
Include目錄:
- C:\OpenCV2.4beta\modules\stitching\include\opencv2
- C:\OpenCV2.4beta\modules\stitching\include
STEP6:
其他相依性:
- opencv_stitching240d.lib
範例程式來源:C:\OpenCV2.4beta\samples\cpp\stitching.cpp
接著我都會Win + R開啟命令提示字元,然後到專案執行檔的資料夾路徑,再把要處理的圖都進去,接著以指令如:
- StitchTest.exe a.jpg b.jpg c.jpg
a.jpg b.jpg c.jpg三張圖就會兩兩特徵比對,也就是說順序無關,若有更多影像要拼接也可繼續接在其後。
需等待一段時間才有結果,過程陸續會有訊息出現:
Finding features…
Features in image #1: 1250
Features in image #2: 1744
Features in image #3: 1441
Finding features, time: 11.8387 sec
Pairwise matching
1->2 matches: 91->2 matches: 80
1->2 matches: 118
1->2 & 2->1 matches: 162
.1->2 & 2->1 matches: 51
1->2 & 2->1 matches: 136
..Pairwise matching, time: 145.144 sec
Estimating rotations…
Estimating rotations, time: 0.0145659 sec
Initial intrinsic parameters #1:
[466.2391772970087, 0, 400;
0, 466.2391772970087, 267;
0, 0, 1]
Initial intrinsic parameters #2:
[466.2391772970087, 0, 400;
0, 466.2391772970087, 267;
0, 0, 1]
Initial intrinsic parameters #3:
[466.2391772970087, 0, 400;
0, 466.2391772970087, 267;
0, 0, 1]
Camera #1:
[737.0802894092269, 0, 400;
0, 737.0802894092269, 267;
0, 0, 1]
Camera #2:
[735.834675960764, 0, 400;
0, 735.834675960764, 267;
0, 0, 1]
Camera #3:
[742.896895252395, 0, 400;
0, 742.896895252395, 267;
0, 0, 1]
Wave correcting…
Wave correcting, time: 0.0184775 sec
Warping images (auxiliary)…
Warping images, time: 0.259227 sec
Exposure compensation…
Exposure compensation, time: 0.317293 sec
Finding seams…
Finding seams, time: 0.561857 sec
Compositing…
Compositing image #1
Compositing image #2
Compositing image #3
Compositing, time: 1.65429 sec
可見拼接的步驟相當多,而且所花的時間總和也有點久,這時候我們會好奇,OpenCV的Stitching有哪些步驟,這可以看官方網站的Stitching Pipeline:(可點圖放大)
以上步驟可視需求調整,來加快拼接速度。pairwise matching花比較多的時間,因為兩兩比對特徵:
接下來看實驗結果如何: