單目標模版匹配

就是實現這樣:

其中,能夠根據模版運算,自動實時從圖中找出相同模版的地方。從而能夠計算出鏡頭的相對位移。

模板匹配的工作方式
    模板匹配的工作方式跟直方圖的反向投影基本一樣,大致過程是這樣的:通過在輸入圖像上滑動圖像塊對實際的圖像塊和輸入圖像進行匹配。
    假設我們有一張100x100的輸入圖像,有一張10x10的模板圖像,查找的過程是這樣的:
  (1)從輸入圖像的左上角(0,0)開始,切割一塊(0,0)至(10,10)的臨時圖像;
  (2)用臨時圖像和模板圖像進行對比,對比結果記爲c;
  (3)對比結果c,就是結果圖像(0,0)處的像素值;
  (4)切割輸入圖像從(0,1)至(10,11)的臨時圖像,對比,並記錄到結果圖像;
  (5)重複(1)~(4)步直到輸入圖像的右下角。
    大家可以看到,直方圖反向投影對比的是直方圖,而模板匹配對比的是圖像的像素值;模板匹配比直方圖反向投影速度要快一些,但是我個人認爲直方圖反向投影的魯棒性會更好。

 

模板匹配的匹配方式
    在OpenCv和EmguCv中支持以下6種對比方式:
    CV_TM_SQDIFF 平方差匹配法:該方法採用平方差來進行匹配;最好的匹配值爲0;匹配越差,匹配值越大。
    CV_TM_CCORR 相關匹配法:該方法採用乘法操作;數值越大表明匹配程度越好。
    CV_TM_CCOEFF 相關係數匹配法:1表示完美的匹配;-1表示最差的匹配。
    CV_TM_SQDIFF_NORMED 歸一化平方差匹配法
    CV_TM_CCORR_NORMED 歸一化相關匹配法
    CV_TM_CCOEFF_NORMED 歸一化相關係數匹配法
    根據我的測試結果來看,上述幾種匹配方式需要的計算時間比較接近(跟《學習OpenCv》書上說的不同),我們可以選擇一個能適應場景的匹配方式。

 程序和視頻 http://pan.baidu.com/s/1eQAEs62  89gb

                      

         

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章