linux小波识别算法,人脸识别相关技术之小波变换
一、圖像/矩陣進(jìn)行Haar小波的基本原理
小波分析的基本思想是用一族函數(shù)表示或逼近信號或函數(shù).這一函數(shù)族稱為小波函數(shù)系(小波基),它是通過一個基本小波函數(shù)的不同尺度伸縮和平移而形成的.小波變換的實(shí)質(zhì)是將信號投影到一系列小波基上.圖像處理與識別中經(jīng)常遇到離散圖像的分析與處理問題.圖像的小波變換是小波應(yīng)用于圖像分析和特征提取的基礎(chǔ),而圖像的分析和處理都是二維的,因此需要將多分辨率分析從一維推廣到二維的情況.
對圖像的行和列分別進(jìn)行小波變換算法處理,即水平和垂直濾波,則小波變換可將原始圖像分成LLl,LHl,HLl和HHI 4個子帶.其中:LLl為低頻子帶;LHl,HLl和HHl為高頻子帶.
LLI是水平方向和垂直方向低通濾波后的小波系數(shù),是最重要的系數(shù),它基本包含了原有圖像的信息.同時,在這個區(qū)域中消除了隨機(jī)噪聲和冗余信息.LHl是水平方向低通濾波和垂直方向高通濾波后的小波系數(shù),主要包括了水平方向的特征.HLl是垂直方向的特征,眼睛、鼻子、嘴等器官的邊緣和紋理對應(yīng)其中的強(qiáng)響應(yīng),而前額和臉頰等平滑區(qū)域則對應(yīng)其中的弱響應(yīng).HHl是水平方向和垂直方向的高通濾波后的小波系數(shù),所包含的信息最少.因此,本文選擇LLI部分作為分類輸入特征.
小波變換是上個世紀(jì)末應(yīng)用數(shù)學(xué)界最杰出的成果,其本質(zhì)是信號的時間—尺度分析方法,具有多分辨率分析的特點(diǎn),而且在時頻兩域都具有表征信號局部特征的能力,被譽(yù)為“數(shù)學(xué)顯微鏡”。圖像經(jīng)過小波變換,其低頻部分保留了絕大部分信息和能量。同時,在圖像的敏感位置(如輪廓線,突出點(diǎn)等),小換變換后生成的特征矢量的模會相對較大,將這些優(yōu)點(diǎn)應(yīng)用于人臉圖像,有利于人臉的識別。
在圖l 中,(a)經(jīng)二級小波變換后,得到(b)所示的情景,其中LL2 表示二級變換的低頻信號,這大約十六分之一的數(shù)據(jù),包含了原圖像幾乎全部重要的信息。LH1,HL1,HH1 表示的是一級小波變換后得到水平、垂直和對角方向的高頻信號,LH2,HL2,HH2 表示的是二級小波變換后得到水平、垂直和對角方向的高頻信號,這些信號包含了大量冗余和雜質(zhì),在人臉識別中,起到的作用非常的微弱。圖1 直觀地表明,當(dāng)用LL2 的數(shù)據(jù)作為人臉識別的特征矢量時,送入神經(jīng)網(wǎng)絡(luò)時訓(xùn)練和識別時的好處:有用信息的相對集中、無用信息的剔除和數(shù)據(jù)量的明顯下降。
值得注意的是,小波基并不只有一種。不同的小波基,針對不同的問題時,往往有不同的表現(xiàn),在文中,引用了coifN,CJN,symN 等幾種小波。
首先我們簡單了解一下二維小波變換的塔式結(jié)構(gòu)。我們知道,一維小波變換其實(shí)是將一維原始信號分別經(jīng)過低通濾波和高通濾波以及二元下抽樣得到信號的低頻部分L和高頻部分H。而根據(jù)Mallat算法,二維小波變換可以用一系列的一維小波變換得到。對一幅m行n列的圖像,二維小波變換的過程是先對圖像的每一行做一維小波變換,得到L和H兩個對半部分;然后對得到的LH圖像(仍是m行n列)的每一列做一維小波變換。這樣經(jīng)過一級小波變換后的圖像就可以分為LL,HL,LH,HH四個部分,如下圖所示,就是一級二維小波變換的塔式結(jié)構(gòu):
image.png
而二級、三級以至更高級的二維小波變換則是對上一級小波變換后圖像的左上角部分(LL部分)再進(jìn)行一級二維小波變換,是一個遞歸過程。下圖是三級二維小波變換的塔式結(jié)構(gòu)圖:
image.png
一個圖像經(jīng)過小波分解后,可以得到一系列不同分辨率的子圖像,不同分辨率的子圖像對應(yīng)的頻率也不同。高分辨率(即高頻)子圖像上大部分點(diǎn)的數(shù)值都接近于0,分辨率越高,這種現(xiàn)象越明顯。要注意的是,在N級二維小波分解中,分解級別越高的子圖像,頻率越低。例如圖2的三級塔式結(jié)構(gòu)中,子圖像HL2、LH2、HH2的頻率要比子圖像HL1、LH1、HH1的頻率低,相應(yīng)地分辨率也較低。
二、原理詳解
對于二維haar小波,我們通常一次分解形成了整體圖像,水平細(xì)節(jié),垂直細(xì)節(jié),對角細(xì)節(jié)。
濾波:
先看haar濾波:
Haar 低頻濾波: [1 1]
Haar 高頻濾波: [-1 1]
由此可知,Haar變換采用的原理是:
A)低頻采用均值
B)高頻采用差值
圖1 是Haar 小波對二維圖像的一級及三級分解子帶圖, 在右圖中最低頻a3 子帶圖像與原始圖像極其相似, 只是尺寸變小, 它包含了原圖的絕大部分能量,對恢復(fù)圖像質(zhì)量影響較大, 其余高頻子帶的小波系數(shù)大多非常小。在同一層, 由于v 及h 子圖表示的邊緣子圖像的小波系數(shù)和方差比d 子圖要大, 因此d 子圖在重構(gòu)圖像時不是很重要。
image.png
三、實(shí)例推演說明
四、Python實(shí)現(xiàn)小波變換代碼
五、結(jié)合深度學(xué)習(xí)進(jìn)行人臉識別
5.1 如何使用小波變換后的圖像?
借鑒其他論文中的思路
(1)首先對原圖像進(jìn)行預(yù)處理, 對它做小波變換, 對得到的低頻圖像求取本征臉特征和奇異值特征, 再利用多步分類法進(jìn)行分類。
(2)提出一種基于小波變換和距離與BP神經(jīng)元網(wǎng)絡(luò)識別方法融合的人臉識別方法.用小波變換將原始圖像分解提取特征,消除了光照和胡須等干擾因素的影響;將訓(xùn)練集中的5幅圖像取平均值作為模板臉,計算測試集中的5幅小波變換圖像與模板臉的各種距離,并將所得計算結(jié)果送入神經(jīng)元網(wǎng)絡(luò)進(jìn)行訓(xùn)練和識別。
(3)
參考資料
參考論文
總結(jié)
以上是生活随笔為你收集整理的linux小波识别算法,人脸识别相关技术之小波变换的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux内置变量大全,Linux进阶之
- 下一篇: linux循环判断输出结果,Linux