0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

淺談圖像處理-harris角點(diǎn)檢測(cè)算法

QQ475400555 ? 來(lái)源:機(jī)器視覺(jué)沙龍 ? 2023-09-22 15:46 ? 次閱讀

通常意義上來(lái)說(shuō),角點(diǎn)就是極值點(diǎn),即在某方面屬性特別突出的點(diǎn),是在某些屬性上強(qiáng)度最大或者最小的孤立點(diǎn)、線段的終點(diǎn)。對(duì)于圖像而言,其是物體輪廓線的連接點(diǎn)。

1 harris角點(diǎn)檢測(cè)算法思想

算法的核心是利用局部窗口在圖像上進(jìn)行移動(dòng),判斷灰度是否發(fā)生較大的變化。如果窗口內(nèi)的灰度值(在梯度圖上)都有較大的變化,那么這個(gè)窗口所在區(qū)域就存在角點(diǎn)。

這樣就可以將 Harris 角點(diǎn)檢測(cè)算法分為以下三步:

1,當(dāng)窗口(局部區(qū)域)同時(shí)向 x (水平)和 y(垂直) 兩個(gè)方向移動(dòng)時(shí),計(jì)算窗口內(nèi)部的像素值變化量 E(x,y);

2,對(duì)于每個(gè)窗口,都計(jì)算其對(duì)應(yīng)的一個(gè)角點(diǎn)響應(yīng)函數(shù) R;

3,然后對(duì)該函數(shù)進(jìn)行閾值處理,如果 R>threshold,表示該窗口對(duì)應(yīng)一個(gè)角點(diǎn)特征。

2

建立數(shù)學(xué)模型

第一步是通過(guò)建立數(shù)學(xué)模型,確定哪些窗口會(huì)引起較大的灰度值變化。讓一個(gè)窗口的中心位于灰度圖像的一個(gè)位置(x,y),這個(gè)位置的像素灰度值為I(x,y),如果這個(gè)窗口分別向 x和 y 方向移動(dòng)一個(gè)小的位移u和v,到一個(gè)新的位置 (x+u,y+v),這個(gè)位置的像素灰度值就是I(x+u,y+v)。|I(x+u,y+v)?I(x,y)|就是窗口移動(dòng)引起的灰度值的變化值。

設(shè)w(x,y)為位置(x,y)處的窗口函數(shù),表示窗口內(nèi)各像素的權(quán)重,最簡(jiǎn)單的就是把窗口內(nèi)所有像素的權(quán)重都設(shè)為1,即一個(gè)均值濾波核。當(dāng)然,也可以把 w(x,y)設(shè)定為以窗口中心為原點(diǎn)的高斯分布,即一個(gè)高斯核。

9bcccb16-58db-11ee-939d-92fbcf53809c.png

如果窗口中心點(diǎn)像素是角點(diǎn),那么窗口移動(dòng)前后,中心點(diǎn)的灰度值變化非常強(qiáng)烈,所以該點(diǎn)權(quán)重系數(shù)應(yīng)該設(shè)大一點(diǎn),表示該點(diǎn)對(duì)灰度變化的貢獻(xiàn)較大;而離窗口中心(角點(diǎn))較遠(yuǎn)的點(diǎn),這些點(diǎn)的灰度變化比較小,于是將權(quán)重系數(shù)設(shè)小一點(diǎn),表示該點(diǎn)對(duì)灰度變化的貢獻(xiàn)較小。

則窗口在各個(gè)方向上移動(dòng)(u,v)所造成的像素灰度值的變化量公式如下:

9bdd21b4-58db-11ee-939d-92fbcf53809c.png

若窗口內(nèi)是一個(gè)角點(diǎn),則E(u,v)的計(jì)算結(jié)果將會(huì)很大。為了提高計(jì)算效率,對(duì)上述公式進(jìn)行簡(jiǎn)化,利用泰勒級(jí)數(shù)展開(kāi)來(lái)得到這個(gè)公式的近似形式。

對(duì)于二維的泰勒展開(kāi)式公式為:

T(x,y)=f(u,v)+(x?u)fx(u,v)+(y?v)fy(u,v)+....

則I(x+u,y+v) 為:

I(x+u,y+v)=I(x,y)+uIx+vIy

其中Ix和Iy是I的微分(偏導(dǎo)),在圖像中就是求x 和 y 方向的梯度圖:

Ix=?I(x,y)/?x

Iy=?I(x,y)/?y

將I(x+u,y+v)=I(x,y)+uIx+vIy代入E(u,v)可得:

9be7b304-58db-11ee-939d-92fbcf53809c.png

提出 u 和 v ,得到最終的近似形式:

9bf3ca5e-58db-11ee-939d-92fbcf53809c.png

其中矩陣M為:

9c006bec-58db-11ee-939d-92fbcf53809c.png

最后是把實(shí)對(duì)稱(chēng)矩陣對(duì)角化處理后的結(jié)果,可以把R看成旋轉(zhuǎn)因子,其不影響兩個(gè)正交方向的變化分量。經(jīng)對(duì)角化處理后,將兩個(gè)正交方向的變化分量提取出來(lái),就是 λ1 和 λ2(特征值)。

這里利用了線性代數(shù)中的實(shí)對(duì)稱(chēng)矩陣對(duì)角化的相關(guān)知識(shí),有興趣的同學(xué)可以進(jìn)一步查閱相關(guān)資料。

3

角點(diǎn)響應(yīng)函數(shù)R

現(xiàn)在我們已經(jīng)得到E(u,v)的最終形式,別忘了我們的目的是要找到會(huì)引起較大的灰度值變化的那些窗口。

灰度值變化的大小則取決于矩陣M,M為梯度的協(xié)方差矩陣。在實(shí)際應(yīng)用中為了能夠應(yīng)用更好的編程,所以定義了角點(diǎn)響應(yīng)函數(shù)R,通過(guò)判定R大小來(lái)判斷像素是否為角點(diǎn)。

計(jì)算每個(gè)窗口對(duì)應(yīng)的得分(角點(diǎn)響應(yīng)函數(shù)R定義):

9c15854a-58db-11ee-939d-92fbcf53809c.png

其中 det(M)=λ1λ2是矩陣的行列式,trace(M)=λ1+λ2是矩陣的跡。λ1和 λ2是矩陣M的特征值,k是一個(gè)經(jīng)驗(yàn)常數(shù),在范圍 (0.04, 0.06) 之間。R的值取決于M的特征值,對(duì)于角點(diǎn)∣R∣很大,平坦的區(qū)域∣R∣很小,邊緣的R為負(fù)值。

4

角點(diǎn)判定

根據(jù) R 的值,將這個(gè)窗口所在的區(qū)域劃分為平面、邊緣或角點(diǎn)。為了得到最優(yōu)的角點(diǎn),我們還可以使用非極大值抑制。

注意:Harris 檢測(cè)器具有旋轉(zhuǎn)不變性,但不具有尺度不變性,也就是說(shuō)尺度變化可能會(huì)導(dǎo)致角點(diǎn)變?yōu)檫吘?。想要尺度不變特性的話,可以關(guān)注SIFT特征。

因?yàn)樘卣髦?λ1 和 λ2 決定了 R 的值,所以我們可以用特征值來(lái)決定一個(gè)窗口是平面、邊緣還是角點(diǎn):

平面:該窗口在平坦區(qū)域上滑動(dòng),窗口內(nèi)的灰度值基本不會(huì)發(fā)生變化,所以∣R∣ 值非常小,在水平和豎直方向的變化量均較小,即 Ix和 Iy都較小,那么 λ1 和 λ2 都較小;

邊緣:∣R∣值為負(fù)數(shù),僅在水平或豎直方向有較大的變化量,即 Ix和Iy只有一個(gè)較大,也就是 λ1>>λ2 或 λ2>>λ1;

角點(diǎn):[公式] 值很大,在水平、豎直兩個(gè)方向上變化均較大的點(diǎn),即 Ix和 Iy都較大,也就是 λ1 和 λ2 都很大。

如下圖所示:

9c328dac-58db-11ee-939d-92fbcf53809c.png

Harris 角點(diǎn)檢測(cè)的結(jié)果是帶有這些分?jǐn)?shù) R 的灰度圖像,設(shè)定一個(gè)閾值,分?jǐn)?shù)大于這個(gè)閾值的像素就對(duì)應(yīng)角點(diǎn)。

編輯:黃飛

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 圖像處理
    +關(guān)注

    關(guān)注

    27

    文章

    1272

    瀏覽量

    56496
  • 閾值
    +關(guān)注

    關(guān)注

    0

    文章

    122

    瀏覽量

    18443
  • Harris
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    8192

原文標(biāo)題:圖像處理-harris角點(diǎn)檢測(cè)

文章出處:【微信號(hào):機(jī)器視覺(jué)沙龍,微信公眾號(hào):機(jī)器視覺(jué)沙龍】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于FPGA的圖像點(diǎn)檢測(cè)

    有沒(méi)有用verilog語(yǔ)言寫(xiě)的基于FPGA的圖像點(diǎn)檢測(cè)代碼呀?
    發(fā)表于 04-10 10:47

    人臉檢測(cè)算法及新的快速算法

    最近幾年的人臉檢測(cè)算法和一種新的快速算法,與大家探討特征、弱分類(lèi)器、收斂準(zhǔn)則、樣本選擇等對(duì)人臉檢測(cè)性能的影響,并嘗試分析人臉姿態(tài)、表情、遮擋、年齡、種族等影響因素。2013年全國(guó)圖像
    發(fā)表于 09-26 15:13

    基于matlab的圖像處理--飛機(jī)檢測(cè)

    ,一種自適應(yīng)的Harris點(diǎn)檢測(cè)算法2013年6月,何楚等,基于分層自適應(yīng)部分的遙感圖像飛機(jī)目標(biāo)檢測(cè)2011年9月,仇建斌等,
    發(fā)表于 09-30 11:46

    機(jī)器視覺(jué)圖像處理點(diǎn)檢測(cè)技術(shù)

    點(diǎn)檢測(cè)算法、Harris點(diǎn)檢測(cè)算法、KLT點(diǎn)檢測(cè)算法及SUSAN
    發(fā)表于 01-22 13:46

    【DragonBoard 410c試用體驗(yàn)】 之OpenCV中之圖像點(diǎn)檢測(cè)實(shí)現(xiàn)

    ( WINDOW_NAME2, scaledImage );}這里代碼稍微有點(diǎn)多,不過(guò)我們主要看cornerHarris 函數(shù),它這才是用于在OpenCV中運(yùn)行Harris點(diǎn)檢測(cè)算處理
    發(fā)表于 09-13 19:46

    基于圖像距離差的織物疵點(diǎn)檢測(cè)算法

    本文將機(jī)器視覺(jué)與數(shù)字圖像處理技術(shù)引入到織物疵點(diǎn)檢測(cè)中,提出了一種織物疵點(diǎn)檢測(cè)算法——圖像距離差
    發(fā)表于 05-27 13:12 ?17次下載

    基于小波變換多尺度Harris點(diǎn)檢測(cè)算法

    提出一種新的基于小波變換的Harris 多尺度角點(diǎn)檢測(cè)算法,可以在不同的尺度下獲取點(diǎn),克服了單一尺度的Harris
    發(fā)表于 01-09 11:18 ?41次下載

    Harris點(diǎn)特征的圖像拼接方法

    本文通過(guò)對(duì)已有圖像拼接算法的分析研究,改進(jìn)了拼接算法中的特征點(diǎn)匹配問(wèn)題。首先利用Harris檢測(cè)算法
    發(fā)表于 12-29 16:31 ?28次下載
    <b class='flag-5'>Harris</b><b class='flag-5'>角</b>點(diǎn)特征的<b class='flag-5'>圖像</b>拼接方法

    Harris點(diǎn)檢測(cè)

    《OpenCV3編程入門(mén)》書(shū)本配套源代碼:Harris點(diǎn)檢測(cè)
    發(fā)表于 06-06 15:20 ?4次下載

    OpenCV3編程入門(mén)-源碼例程全集-Harris點(diǎn)檢測(cè)

    OpenCV3編程入門(mén)-源碼例程全集-Harris點(diǎn)檢測(cè)
    發(fā)表于 09-18 16:38 ?1次下載

    免費(fèi)下載!一款基于Zynq的Harris點(diǎn)檢測(cè)算法實(shí)現(xiàn)Demo

    作者:Stark 點(diǎn)檢測(cè)(Corner Detection)是計(jì)算機(jī)視覺(jué)系統(tǒng)中用來(lái)獲取圖像特征的一種方法,廣泛應(yīng)用于運(yùn)動(dòng)檢測(cè)圖像匹配、視
    發(fā)表于 02-08 04:03 ?479次閱讀

    Harris點(diǎn)檢測(cè)在列車(chē)滑動(dòng)監(jiān)測(cè)系統(tǒng)中的應(yīng)用_潘崢嶸

    Harris點(diǎn)檢測(cè)在列車(chē)滑動(dòng)監(jiān)測(cè)系統(tǒng)中的應(yīng)用_潘崢嶸
    發(fā)表于 03-19 11:26 ?0次下載

    OpenCV3.1教程之Harris點(diǎn)檢測(cè)的詳細(xì)課件免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是OpenCV3.1教程之Harris點(diǎn)檢測(cè)的詳細(xì)課件免費(fèi)下載。包括了:1.Harris
    發(fā)表于 01-06 08:00 ?7次下載
    OpenCV3.1教程之<b class='flag-5'>Harris</b><b class='flag-5'>角</b><b class='flag-5'>點(diǎn)檢測(cè)</b>的詳細(xì)課件免費(fèi)下載

    基于高斯金字塔圖像的改進(jìn)Harris特征點(diǎn)檢測(cè)算法

    為了提高海面特征點(diǎn)檢測(cè)的準(zhǔn)確度和三維重建的精度,在基于傳統(tǒng)的μaris算法的基礎(chǔ)上,提岀Ⅰ種基于高斯金字塔圖像的改進(jìn)Hars特征點(diǎn)檢測(cè)算法。利用搭建的雙目相機(jī)泙臺(tái),對(duì)海浪
    發(fā)表于 05-06 17:03 ?18次下載
    基于高斯金字塔<b class='flag-5'>圖像</b>的改進(jìn)<b class='flag-5'>Harris</b>特征<b class='flag-5'>點(diǎn)檢測(cè)算法</b>

    基于Delaunay三剖分的空間離群點(diǎn)檢測(cè)算法研究

    電子發(fā)燒友網(wǎng)站提供《基于Delaunay三剖分的空間離群點(diǎn)檢測(cè)算法研究.pdf》資料免費(fèi)下載
    發(fā)表于 10-07 11:15 ?0次下載