1. 程式人生 > >Atitit opencv模板匹配attilax總結

Atitit opencv模板匹配attilax總結

Atitit opencv模板匹配attilax總結

找一幅影象的匹配的模板,可以在一段視訊裡尋找出我們感興趣的東西,比如條形碼的識別就可能需要這樣類似的一個工作提取出條形碼區域(當然這樣的方法並不魯棒)。而OpenCV已經為我們整合好了相關的功能。函式為matchTemplate

所謂模板匹配就是在一幅影象中尋找和模板影象(patch)最相似的區域。該函式的功能為,在輸入源影象Source imageI)中滑動框,尋找各個位置與模板影象Template imageT)的相似度,並將結果儲存在結果矩陣result matrixR)中。該矩陣的每一個點的亮度表示與模板T的匹配程度。然後可以通過函式

minMaxLoc定位矩陣R中的最大值(該函式也可以確定最小值)。

模板匹配是數字影象處理的重要組成部分之一。把不同感測器或同一感測器在不同時間、不同成像條件下對同一景物獲取的兩幅或多幅影象在空間上對準,或根據已知模式到另一幅圖中尋找相應模式的處理方法就叫做模板匹配。    簡單而言,模板就是一幅已知的小影象。模板匹配就是在一幅大影象中搜尋目標,已知該圖中有要找的目標,且該目標同模板有相同的尺寸、方向和影象,通過一定的演算法可以在圖中找到目標,確定其座標位置。 

2.2 模板尺寸

  模板尺寸對系統性能和計算量的影響不容小覷。模板過大導致動態特性變差;過小又會減少目標的特徵資料量,降低匹配的敏感程度

,增大目標檢測難度。實際操作中,模板尺寸設定為32×16時效果非常理想。

2.3 匹配區域

  不同的應用環境下,對匹配區域和實時性要求也不盡相同。光電探測裝置需要在視訊影象採集週期內(20ms)完成資料實時處理。由於目標在兩場視訊影象之間的移動量較小、特徵變化不大,匹配區域可以大大縮小。

  匹配區域太小會導致目標動態特性變差,過大又會導致計算量大幅度增加,具體選擇需要權衡裝置引數來決定。由於CCIR制式視訊訊號是隔行掃描,系統出於實時性考慮,資料以場為單位處理,導致影象比例為2:1狀態。為了保持水平、垂直方向的動態特性一致,影象匹配區域也按2:1比例選擇。

其實模板匹配的使用和直方圖反向投影

calcBackProject函式很像,只是直方圖反向投影對比的是直方圖,而模板匹配對比的是影象的畫素值,相比較而言,直方圖反向投影的匹配魯棒性更好。

/atiplat_img/src/com/attilax/img/util/OpencvUtil.java

@SuppressWarnings("unused")

publicstaticPointmatchTemplate(BufferedImagesrcImg,BufferedImagedesImg,BufferedImageresultRect4dbg,intmatchMode)throwsCantFindMatch,IOException{

Matsource=bufImg2mat(srcImg);

Matdst=bufImg2mat(desImg);

Matresult=Mat.zeros(source.rows(),source.cols(),CvType.CV_32FC1);

try{

Imgproc.matchTemplate(source,dst,result,matchMode);// TM_CCOEFF_NORMED

}catch(Exceptione){

thrownewRuntimeException("Imgproc.matchTemplate ex:"+e.getMessage(),e);

}

// 規格化 rst= Mat [ 1005*1236*CV_32FC1, isCont=true, isSubmat=false,

// nativeObj=0x57b3fca0, dataAddr=0x59e80050 ]

Core.normalize(result,result,0,1,Core.NORM_MINMAX,-1);

// 獲得最可能點,MinMaxLocResult是其資料格式,包括了最大、最小點的位置x、y

// System.out.println(AtiJson.toJson(result));

MinMaxLocResultmlr=Core.minMaxLoc(result);

PointmatchLoc=getMatchPoint(matchMode,mlr);

// 在原圖上的對應模板可能位置畫一個綠色矩形

Core.rectangle(source,matchLoc,newPoint(matchLoc.x+dst.width(),matchLoc.y+dst.height()),newScalar(0,255,0));

resultRect4dbg=mat2bufImg(source);

if(matchLoc!=null)

returnmatchLoc;

thrownewCantFindMatch(" cant find match");

}

privatestaticPointgetMatchPoint(intmatchMode,MinMaxLocResultmlr){

PointmatchLoc;

if(matchMode==Imgproc.TM_SQDIFF||matchMode==Imgproc.TM_SQDIFF_NORMED){

matchLoc=mlr.minLoc;

}else{

matchLoc=mlr.maxLoc;

}

returnmatchLoc;

}

作者:: 綽號:老哇的爪子claw of Eagle 偶像破壞者Iconoclast image-smasher

捕鳥王"Bird Catcher  kok  虔誠者Pious 宗教信仰捍衛者 Defender Of the Faith. 卡拉卡拉紅斗篷 Caracalla red cloak 萬獸之王

簡稱:: Emir Attilax Akbar 埃米爾 阿提拉克斯 阿克巴

全名::Emir Attilax Akbar bin Mahmud bin  attila bin Solomon bin adam Al Rapanui 埃米爾 阿提拉克斯 阿克巴 本 馬哈茂德 本 阿提拉 本 所羅門 本亞當  阿爾 拉帕努伊

常用名:艾提拉(艾龍),  EMAIL:[email protected]

頭銜:uke總部o2o負責人,全球網格化專案創始人,

uke交友協會會長  uke捕獵協會會長 Emir Uke部落首席大酋長,

uke宗教與文化融合事務部部長, uke宗教改革委員會副主席

uke制度與重大會議委員會委員長,uke保安部首席大隊長,uke制度檢查委員會副會長,

uke 首席cto  奶牛科技首席cto , 軟體部門總監 技術部副總監  研發部門總監主管  產品部副經理 專案部副經理  奶牛科技研究院院長

uke波利尼西亞區大區連鎖負責人 湯加王國區域負責人 uke克爾格倫群島區連鎖負責人,萊恩群島區連鎖負責人,uke布維島和南喬治亞和南桑威奇群島大區連鎖負責人

 Uke軟體標準化協會理事長理事長 Uke 資料庫與儲存標準化協會副會長

uke終身教育學校副校長   Uke醫院 與醫學院方面的創始人

 uec學院校長, uecip影象處理機器視覺專業系主任   uke文件檢索專業系主任

Uke影象處理與機器視覺學院首席院長

Uke 戶外運動協會理事長  度假村首席大村長   uke出版社編輯總編

轉載請註明來源:attilax的專欄  ?http://blog.csdn.net/attilax

--Atiend  v7

相關推薦

Atitit opencv模板匹配attilax總結

Atitit opencv模板匹配attilax總結 找一幅影象的匹配的模板,可以在一段視訊裡尋找出我們感興趣的東西,比如條形碼的識別就可能需要這樣類似的一個工作提取出條形碼區域(當然這樣的方法並不魯棒)。而OpenCV已經為我們整合好了相關的功能。函式為matchTem

OpenCV——模板匹配

.com 分享圖片 pen alt open mage png inf enc OpenCV——模板匹配

[python-opencv]模板匹配

模板匹配最適用於工業場合(在一張圖片中識別特定的工件圖) 模板匹配是一種最原始、最基本的模式識別方法,研究某一特定物件物的圖案位於影象(target)的什麼地方,進而識別物件物,這就是一個匹配問題。 它是影象處理中最基本、最常用的匹配方法。模板匹配具有自身的侷限性,主要表現在它只能進行平行移動,若原影象中

OpenCV 模板匹配 cv::matchTemplate

轉:http://blog.sina.com.cn/s/blog_b0935ba90102wy93.html 今天使用到opencv的matchTemplate運算元,查詢資料,學習了一下。 對官方資料進行翻譯註釋,加深理解,詳情可見:matchTemplate英文資料。 模板匹配

Atitit 學習方法 補充 艾龍 著 attilax著 1. Atitit 學習的方法 attilax總結 1 1.1. 2. 基於學習策略的分類 2機械 示教 演繹 類比 解釋 歸納 2 1.

Atitit 學習方法  補充 艾龍 著 attilax著   1. Atitit 學習的方法 attilax總結 1 1.1. 2. 基於學習策略的分類 2機械 示教 演繹 類比 解釋 歸納 2 1.2. 3. 基於所獲取知識的表示形式分類 4 2 1.3.

OpenCV模板匹配

這個比較好玩,先來兩張照片 原圖: 模板: 效果: 原理: 假設有100*100畫素的一張原圖,模板大小5*5畫素,從(0,0)開始,根據不同的方法匹配模板大小即(0,0)到(5,5)空間,把用方法得到的值算作(0,0)這個畫素的特徵值,接下來重新從(0

Atitit 學習方法 補充 艾龍 著 attilax著 1. Atitit 學習的方法 attilax總結 1 1.1. 2. 基於學習策略的分類 2機械 示教 演繹 類比 解釋 歸納 2 1.

Atitit 學習方法  補充 艾龍 著 attilax著 Atitit 學習的方法 attilax總結 1.1. 碎片化學習與整體

python語言opencv模板匹配

# -*- coding:utf-8 -*- import cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread("/media/圖

opencv 模板匹配中的 minMaxLoc

在opencv模板匹配中用到了這個函式 matchTemplate(src, tmp_img, dst_img, TM_CCOEFF_NORMED); normalize(dst_img, dst_

[opencv]模板匹配演算法(單影象模板匹配和基於模板匹配的目標跟蹤)

1.模板匹配opencv函式 matchTemplate(InputArray image, InputArray temp, OutputArray result, int method) Parameters: image – Image where the search is runn

OpenCV-模板匹配

尋找一幅影象的匹配的模板,可以在一段視訊裡尋找出我們感興趣的東西,比如條形碼的識別就可能需要這樣類似的一個工作提取出條形碼區域(當然這樣的方法並不魯棒)。而OpenCV已經為我們整合好了相關的功能。函式為matchTemplate。 所謂模板匹配就

opencv 模板匹配matchTemplate研究之一

 #include"opencv2\core\core.hpp" #include"opencv2\highgui\highgui.hpp" #include"opencv2\imgproc\imgproc.hpp" #include<iostream> using namespace std;

Atitit freemarker模板總結 D:\workspace\springboothelloword\src\com\attilax\util\TempleteFreemarkerUtil.

Atitit freemarker模板總結   D:\workspace\springboothelloword\src\com\attilax\util\TempleteFreemarkerUtil.java   package com.attilax.util

Atitit 演算法原理與導論 目錄 1. Attilax總結的有用演算法 按用途分類 1 1.1. 排序演算法 字串匹配(String Matching) 1 1.2. 加密演算法 編碼演算法 序列

Atitit 演算法原理與導論   目錄 1. Attilax總結的有用演算法 按用途分類 1 1.1. 排序演算法  字串匹配(String Matching) 1 1.2. 加密演算法  編碼演算法  序列化演算法 1 1.3. 查

Atitit.angular.js 使用最佳實踐 原理與常見問題解決與列表顯示案例 attilax總結

依賴 實現 http dsi 概念 模板 style ctr net Atitit.angular.js 使用最佳實踐 原理與常見問題解決與列表顯示案例 attilax總結 1. 本文範圍 1 2. Angular的長處 1 2.1. 雙向數據綁定 1 2.2. d

atitit.php 流行框架 前三甲為:Laravel、Phalcon、Symfony2 attilax 總結

快照 log jpg 實踐 think net post 控制 web框架 atitit.php 流行框架 前三甲為:Laravel、Phalcon、Symfony2 attilax 總結 1. ,最流行的PHP框架前三甲為:Laravel、Phalcon、

atitit.微信支付的教程文檔 attilax總結

content https ng- tlist type deb state query fresh atitit.微信支付的教程文檔 attilax總結 1. 支付流程概覽 1 2. 設置支付起始文件夾 host/app/paydir/ 1

atitit.html編輯器的設計要點與框架選型 attilax總結

編輯功能 att 瀏覽器 lan 粘貼 edit 編輯 -m 上傳 atitit.html編輯器的設計要點與框架選型 attilax總結 1. html編輯器的設計要求1 1.1. 障礙訪問 1 1.2. 強大Ajax上傳 1 1.3. Word完美

Atitit 支出分類表 會計科目(1)資產(2)負債(3)資本(4)收益(5)費用(成本) 資產分類表 attilax總結

bar font 參加 總結 ear 創始人 cti 工商管理 金融 Atitit 支出分類表 會計科目(1)資產(2)負債(3)資本(4)收益(5)費用(成本) 資產分類表 attilax總結 會計科目對一般不懂會計的管理人員,常會有莫測高深的感覺,因此不僅不

二分圖匹配問題(——模板習題與總結

什麽是 多個 習題 www. 最小路徑 覆蓋 最大 多少 .cn   首先得知道什麽是二分圖匹配問題,給出一個二分圖,每個人與另外的一個或者多個人存在某種關系     問將他們兩兩配對的對,最多能配成多少對。   其次,明確幾個專業名詞。     最大匹配:邊數最多的匹配成