1. 程式人生 > >影象區域性特徵(一)--概述

影象區域性特徵(一)--概述

本文根據下面這篇文章,做下簡單修改。

原文:

研究影象特徵檢測已經有一段時間了,影象特徵檢測的方法很多,又加上各種演算法的變形,所以難以在短時間內全面的瞭解,只是對主流的特徵檢測演算法的原理進行了學習。總體來說,影象特徵可以包括顏色特徵、紋理特等、形狀特徵以及區域性特徵點等。其中區域性特點具有很好的穩定性,不容易受外界環境的干擾,本篇文章也是對這方面知識的一個總結。

1. 區域性特徵點

影象特徵提取是影象分析與影象識別的前提,它是將高維的影象資料進行簡化表達最有效的方式,從一幅影象的M×N×3 M×N×3的資料矩陣中,我們看不出任何資訊,所以我們必須根據這些資料提取出影象中的關鍵資訊,一些基本元件以及它們的關係。

區域性特徵點是影象特徵的區域性表達,它只能反正影象上具有的區域性特殊性,所以它只適合於對影象進行匹配,檢索等應用。對於影象理解則不太適合。而後者更關心一些全域性特徵,如顏色分佈,紋理特徵,主要物體的形狀等。全域性特徵容易受到環境的干擾,光照,旋轉,噪聲等不利因素都會影響全域性特徵。相比而言,區域性特徵點,往往對應著影象中的一些線條交叉,明暗變化的結構中,受到的干擾也少。

而斑點與角點是兩類區域性特徵點。斑點通常是指與周圍有著顏色和灰度差別的區域,如草原上的一棵樹或一棟房子。它是一個區域,所以它比角點的噪能力要強,穩定性要好。而角點則是影象中一邊物體的拐角或者線條之間的交叉部分。

2. 斑點檢測原理與舉例

2.1 LoG與DoH

斑點檢測的方法主要包括利用高斯拉普拉斯運算元檢測的方法(LOG),以及利用畫素點Hessian矩陣(二階微分)及其行列式值的方法(DOH)。

LoG的方法已經在斑點檢測這入篇文章裡作了詳細的描述。因為二維高斯函式的拉普拉斯核很像一個斑點,所以可以利用卷積來求出影象中的斑點狀的結構。

DoH方法就是利用影象點二階微分Hessian矩陣:

H(L)=[L xx L xy L xyL yy ] H(L)=[LxxLxyLxyLyy]

以及它的行列式的值DoH(Determinant of Hessian):

det=σ 4 (L xx (x
,y,σ)L yy(x,y,σ)L 2 xy(x,y,σ))
 
det=σ4(Lxx(x,y,σ)Lyy(x,y,σ)−Lxy2(x,y,σ))

Hessian矩陣行列式的值,同樣也反映了影象區域性的結構資訊。與LoG相比,DoH對影象中的細長結構的斑點有較好的抑制作用。

無論是LoG還是DoH,它們對影象中的斑點進行檢測,其步驟都可以分為以下兩步:

1)使用不同的σ σ生成(2 gx 2 +2 gy2 ) (∂2g∂x2+∂2g∂y2)2 gx 2 ,2 gy2 ,2 gxy ∂2g∂x2,∂2g∂y2,∂2g∂x∂y模板,並對影象進行卷積運算;

2)在影象的位置空間與尺度空間中搜索LoG與DoH響應的峰值。

2.2 SIFT

2004年,Lowe提高了高效的尺度不變特徵變換演算法(SIFT),利用原始影象與高斯核的卷積來建立尺度空間,並在高斯差分空間金字塔上提取出尺度不變性的特徵點。該演算法具有一定的仿射不變性,視角不變性,旋轉不變性和光照不變性,所以在影象特徵提高方面得到了最廣泛的應用。

該演算法大概可以歸納為三步:1)高斯差分金字塔的構建;2)特徵點的搜尋;3)特徵描述。

在第一步中,它用組與層的結構構建了一個具有線性關係的金字塔結構,讓我們可以在連續的高斯核尺度上查詢特徵點。它比LoG高明的地方在於,它用一階高斯差分來近似高斯的拉普拉斯核,大大減少了運算量。

在第二步的特徵點搜尋中,主要的關鍵步驟是極值點的插值,因為在離散的空間中,區域性極值點可能並不是真正意義上的極值點,真正的極植點可以落在了離散點的縫隙中。所以要對這些縫隙位置進行插值,然後再求極值點的座標位置。

第二步中另一關鍵環節是刪除邊緣效應的點,因為只忽略那些DoG響應不夠的點是不夠的,DoG的值會受到邊緣的影響,那些邊緣上的點,雖然不是斑點,但是它的DoG響應也很強。所以我們要把這部分點刪除。我們利用橫跨邊緣的地方,在沿邊緣方向與垂直邊緣方向表現出極大與極小的主曲率這一特性。所以通過計算特徵點處主曲率的比值即可以區分其是否在邊緣上。這一點在理解上可以參見Harris角點的求法。

最後一步,即為特徵點的特徵描述。特徵點的方向的求法是需要對特徵點鄰域內的點的梯度方向進行直方圖統計,選取直方圖中比重最大的方向為特徵點的主方向,還可以選擇一個輔方向。在計算特徵向量時,需要對區域性影象進行沿主方向旋轉,然後再進鄰域內的梯度直方圖統計(4x4x8)。

2.3 SURF

2006年,Bay和Ess等人基於SIFT演算法的思路,提出了加速魯棒特徵(SURF),該演算法主要針對於SIFT演算法速度太慢,計算量大的缺點,使用了近似Harr小波方法來提取特徵點,這種方法就是基於Hessian行列式(DoH)的斑點特徵檢測方法。通過在不同的尺度上利用積分影象可以有效地計算出近似Harr小波值,簡化了二階微分模板的構建,搞高了尺度空間的特徵檢測的效率。

SURF演算法在積分影象上使用了盒子濾波器對二階微分模板進行了簡化,從而構建了Hessian矩陣元素值,進而縮短了特徵提取的時間,提高了效率。其中SURF演算法在每個尺度上對每個畫素點進行檢測,其近似構建的Hessian矩陣及其行列式的值分另為:

H approx =[D xx (σ)D xy(σ) D xy(σ)D yy(σ) ] Happrox=[Dxx(σ)Dxy(σ)Dxy(σ)Dyy(σ)] c(x,y,σ)=D xx D yy(0.9D xy) 2  c(x,y,σ)=DxxDyy−(0.9Dxy)2

其中D xx ,D xy Dxx,DxyD yy Dyy為利用盒子濾波器獲得的近似卷積值。如果c(x,y,σ) c(x,y,σ)大於設定的門限值,則判定該畫素點為關鍵字。然後與SIFT演算法近似,在以關鍵點為中心的3×3×3 3×3×3畫素鄰域內進行非極大值抑制,最後通過對斑點特徵進行插值運算,完成了SURF特徵點的精確定位。

而SURF特徵點的描述,則也是充分利用了積分圖,用兩個方向上的Harr小波模板來計算梯度,然後用一個扇形對鄰域內點的梯度方向進行統計,求得特徵點的主方向。

3. 角點檢測的原理與舉例

角點檢測的方法也是極多的,其中具有代表性的演算法是Harris演算法與FAST演算法。

3.1 Harris角點特徵提取

Harris角點檢測是一種基於影象灰度的一階導數矩陣檢測方法。檢測器的主要思想是區域性自相似性/自相關性,即在某個區域性視窗內影象塊與在各個方向微小移動後的視窗內影象塊的相似性。

在畫素點的鄰域內,導數矩陣描述了資料訊號的變化情況。假設在畫素點鄰域內任意方向上移動塊區域,若強度發生了劇烈變化,則變化處的畫素點為角點。定義2×2 2×2的Harris矩陣為:

A(x)= x,yω(x,y)[C 2 x (x)C x C y(x) C x C y(x)C 2 y(x) ]=[ab bc ] A(x)=∑x,yω(x,y)[Cx2(x)CxCy(x)CxCy(x)Cy2(x)]=[abbc]

其中,C x  CxC y Cy分別為點x=(x,y) x=(x,y)x xy y方向上的強度資訊的一階導數,ω(

相關推薦

影象區域性特徵--概述

本文根據下面這篇文章,做下簡單修改。 原文: 研究影象特徵檢測已經有一段時間了,影象特徵檢測的方法很多,又加上各種演算法的變形,所以難以在短時間內全面的瞭解,只是對主流的特徵檢測演算法的原理進行了學習。總體來說,影象特徵可以包括顏色特徵、紋理特等、形狀特徵以及區域

影象區域性特徵--ORB描述子

 Oriented FAST and Rotated BRIEF 這篇文章我們將介紹一種新的具有區域性不變性的特徵 —— ORB特徵,從它的名字中可以看出它是對FAST特徵點與BREIF特徵描述子的一種結合與改進,這個演算法是由Ethan Rublee,Vincen

【數字影象處理之】數字影象處理與相關領域概述

機器視覺就是用機器代替人眼來做測量和判斷。機器視覺系統是指通過機器視覺產品(即影象攝取裝置,分 CMOS 和CCD 兩種)將被攝取目標轉換成影象訊號,傳送給專用的影象處理系統,根據畫素分佈和亮度、顏色等資訊,轉變成數字化訊號;影象系統對這些訊號進行各種運算來抽取目標的特徵,進而根據判別的結果來實現高效的機器控

影象區域性特徵十八--BOW

#include "opencv2/highgui/highgui.hpp" #include "opencv2/calib3d/calib3d.hpp" #include "opencv2/imgproc/imgproc.hpp" #include "opencv2/features2d/features2

項目進階 之 集群環境搭建概述

問題 特點 多臺 cpu 好的 content 成了 系統資源 通過 今天我們說一個不是特別新,但近期今年伴隨大數據熱而比較火的一個技術-集群技術。 什麽是集群技術 集群(Cluster)技術是指一組相互犭蟲立的計算機,利用快速通信網絡組

spring之註解概述

dsm 的人 src article service 優缺點 中一 auto 數據 Spring的核心是依賴註入(DI),而依賴註入的基礎是依賴信息的配置。這些配置稱之為元數據。在之前的的學習中。一直採用的是基於xml的配置,這些元數據配置在spring內部被註冊成為B

Wicket實戰概述

rac span 下載 本質 jsf xtend 公式 href tar 今天給大家介紹一個很好的東西。一個被稱作Java平臺上的ASP.NET——Wicket。 什麽是Wicket 什麽是Wicket,假設你用谷歌或其它

設計模式學習-概述

項目 site 相對 實體 pattern 需要 gre 維護 pri 設計模式(Design Patterns) ——可復用面向對象軟件的基礎 設計模式(Design pattern)是一套被反復使用、多

OOAD-設計模式概述

具體類 設計模式的 頂級 http 引用 pen 屬性 整體 依賴倒轉原則 前言   在我們很多時候設計代碼都是需要用到各種不一樣的設計模式的,接下來著幾篇給大家領略一下設計模式。知道設計模式的作用,以及在代碼的具體體現。很多時候我們看不懂代碼就是因為我們不知道它使用的設

SQL SERVER的鎖機制——概述鎖的種類與範圍

row 定性 針對 共享 互斥 drop 問題 停止 共享鎖 SQL SERVER的鎖機制系列: SQL SERVER的鎖機制(一)——概述(鎖的種類與範圍) SQL SERVER的鎖機制(二)——概述(鎖的兼容性與可以鎖定的資源) SQL SERVER的鎖機制(三)

概述

borde 連接 安裝 2-2 容易 blog 客戶端安裝 繼續 同時 1,首先下載SVN的服務端和客戶端地址如下http://subversion.apache.org/packages.html。進入網址後滾動到瀏覽器最底部。(因為我的系統是Windows所以我選擇Wi

Python3入門——概述與環境安裝

知乎 沒有 color https oob 環境 bsp 風格 初級 一、概述   1.python是什麽     Python 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。 Python 是一種解釋型語言: 這意味著開發過程中沒有了編

算法概述

efi 用途 不同的 推出 而是 一般來說 出了 深度優先 序列 概述: 算法(Algorithm)是指解題方案的準確而完整的描述,是一系列解決問題的清晰指令,算法代表著用系統的方法描述解決問題的策略機制。也就是說,能夠對一定規範的輸入,在有限時間內獲得所要求的輸出。如果

NVMe協議1.3c 概述

聚合 控制 圖形 情況下 名稱 hci miss text 指向 剛開始接觸NVMe,對此理解不深,如有錯誤敬請指出 1.1概述 NVM ExpressTM(NVMeTM)接口允許主機軟件與非易失性存儲器子系統通信。 此接口針對企業和客戶端固態驅動器進行了優化,通

Android 建立與解析XML—— 概述

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

計算機視覺概述

一、什麼是計算機視覺 計算機視覺(Computer Vision)是一門如何使計算機“看”的學問,讓攝像頭和電腦代替人眼對目標進行識別、跟蹤、測量等機器視覺。計算機視覺能夠模擬人類視覺的優越的能力,如識別物體、估計立體空間與距離、躲避障礙、理解影象、想象影象的能力,一定程度上,計算機視覺

影象處理與影象識別筆記

本系列是研一課程《影象處理與影象識別》的隨堂筆記,主要內容是數字影象處理方面,根據老師的講課內容與自己的理解所書寫,還會有一些具體實現的程式碼,基於Python,歡迎交流。本篇主要介紹影象處理與影象識別的基礎知識。 一、影象處理(ImageProcessing) 影象處理是對影象資訊

MyHDL中文手冊——概述

硬體開源程式設計利器MyHDL簡介 建模 模擬與驗證 轉換為Verilog語言與VHDL語言 (本系列基於MyHDL 0.10.0 版 on Python3) MyHDL專案的目標是通過python語言的優雅和簡潔性來增強硬體設計者的能

verilog學習概述

PS:本系列參考夏宇聞老師的Verilog數字系統設計jiao教程,意在對verilog形成基礎的體系,留作將來查詢參考,請大家多指教。    硬體描述語言(HDL,hardware description language)是一種形式化方法來描述數位電路和系統的語言。數

概率圖模型學習概述

本文內容根據Stanford 教授 Daphne Koller 的公開課 Probabilistic Graphical Model內容整理。 1.什麼是概率圖模型 概率圖模型即為解決某一類應用問題的一個框架。在理解這個概念之前,首先來看兩個例子: 1) 上面這張圖片