主頁(yè) > 知識(shí)庫(kù) > Python中人臉圖像特征提取方法(HOG、Dlib、CNN)簡(jiǎn)述

Python中人臉圖像特征提取方法(HOG、Dlib、CNN)簡(jiǎn)述

熱門(mén)標(biāo)簽:服務(wù)器配置 美圖手機(jī) 呼叫中心市場(chǎng)需求 智能手機(jī) 網(wǎng)站文章發(fā)布 檢查注冊(cè)表項(xiàng) 銀行業(yè)務(wù) 鐵路電話(huà)系統(tǒng)

人臉圖像特征提取方法

(一)HOG特征提取

1、HOG簡(jiǎn)介
Histogram of Oriented Gridients,縮寫(xiě)為HOG,是目前計(jì)算機(jī)視覺(jué)、模式識(shí)別領(lǐng)域很常用的一種描述圖像局部紋理的特征。它的主要思想是在一副圖像中,局部目標(biāo)的表象和形狀能夠被梯度或邊緣的方向密度分布很好地描述。其本質(zhì)為:梯度的統(tǒng)計(jì)信息,而梯度主要存在于邊緣的地方。
2、實(shí)現(xiàn)方法
首先將圖像分成小的連通區(qū)域,這些連通區(qū)域被叫做細(xì)胞單元。然后采集細(xì)胞單元中各像素點(diǎn)的梯度的或邊緣的方向直方圖。最后把這些直方圖組合起來(lái),就可以構(gòu)成特征描述符。將這些局部直方圖在圖像的更大的范圍內(nèi)(叫做區(qū)間)進(jìn)行對(duì)比度歸一化,可以提高該算法的性能,所采用的方法是:先計(jì)算各直方圖在這個(gè)區(qū)間中的密度,然后根據(jù)這個(gè)密度對(duì)區(qū)間中的各個(gè)細(xì)胞單元做歸一化。通過(guò)這個(gè)歸一化后,能對(duì)光照變化和陰影獲得更好的效果。
3、HOG特征提取優(yōu)點(diǎn)

由于HOG是 在圖像的局部方格單元上操作,所以它對(duì)圖像幾何的和光學(xué)的形變都能保持很好的不變性,這兩種形變只會(huì)出現(xiàn)在更大的空間領(lǐng)域上。在粗的空域抽樣、精細(xì)的方向抽樣以及較強(qiáng)的局部光學(xué)歸一化等條件下,只要行人大體上能夠保持直立的姿勢(shì),可以容許行人有一些細(xì)微的肢體動(dòng)作,這些細(xì)微的動(dòng)作可以被忽略而不影響檢測(cè)效果。HOG特征是特別適合于做圖像中的人體檢測(cè)的 。
4、HOG特征提取步驟
(1)色彩和伽馬歸一化
為了減少光照因素的影響,首先需要將整個(gè)圖像進(jìn)行規(guī)范化(歸一化)。在圖像的紋理強(qiáng)度中,局部的表層曝光貢獻(xiàn)的比重較大,所以,這種壓縮處理能夠有效地降低圖像局部的陰影和光照變化。
(2)計(jì)算圖像梯度
計(jì)算圖像橫坐標(biāo)和縱坐標(biāo)方向的梯度,并據(jù)此計(jì)算每個(gè)像素位置的梯度方向值;求導(dǎo)操作不僅能夠捕獲輪廓,人影和一些紋理信息,還能進(jìn)一步弱化光照的影響。最常用的方法是:簡(jiǎn)單地使用一個(gè)一維的離散微分模板在一個(gè)方向上或者同時(shí)在水平和垂直兩個(gè)方向上對(duì)圖像進(jìn)行處理,更確切地說(shuō),這個(gè)方法需要使用濾波器核濾除圖像中的色彩或變化劇烈的數(shù)據(jù)
(3)構(gòu)建方向直方圖
細(xì)胞單元中的每一個(gè)像素點(diǎn)都為某個(gè)基于方向的直方圖通道投票。投票是采取加權(quán)投票的方式,即每一票都是帶有權(quán)值的,這個(gè)權(quán)值是根據(jù)該像素點(diǎn)的梯度幅度計(jì)算出來(lái)。可以采用幅值本身或者它的函數(shù)來(lái)表示這個(gè)權(quán)值,實(shí)際測(cè)試表明: 使用幅值來(lái)表示權(quán)值能獲得最佳的效果,當(dāng)然,也可以選擇幅值的函數(shù)來(lái)表示,比如幅值的平方根、幅值的平方、幅值的截?cái)嘈问降?。?xì)胞單元可以是矩形的,也可以是星形的。直方圖通道是平均分布在0-1800(無(wú)向)或0-3600(有向)范圍內(nèi)。經(jīng)研究發(fā)現(xiàn),采用無(wú)向的梯度和9個(gè)直方圖通道,能在行人檢測(cè)試驗(yàn)中取得最佳的效果。

(4)將細(xì)胞單元組合成大的區(qū)間
由于局部光照的變化以及前景-背景對(duì)比度的變化,使得梯度強(qiáng)度的變化范圍非常大。這就需要對(duì)梯度強(qiáng)度做歸一化。歸一化能夠進(jìn)一步地對(duì)光照、陰影和邊緣進(jìn)行壓縮。
采取的辦法是:把各個(gè)細(xì)胞單元組合成大的、空間上連通的區(qū)間。這樣,HOG描述符就變成了由各區(qū)間所有細(xì)胞單元的直方圖成分所組成的一個(gè)向量。這些區(qū)間是互有重疊的,這就意味著:每一個(gè)細(xì)胞單元的輸出都多次作用于最終的描述器。
區(qū)間有兩個(gè)主要的幾何形狀——矩形區(qū)間(R-HOG)和環(huán)形區(qū)間(C-HOG)。R-HOG區(qū)間大體上是一些方形的格子,它可以有三個(gè)參數(shù)來(lái)表征:每個(gè)區(qū)間中細(xì)胞單元的數(shù)目、每個(gè)細(xì)胞單元中像素點(diǎn)的數(shù)目、每個(gè)細(xì)胞的直方圖通道數(shù)目。


(5)收集HOG特征

把提取的HOG特征輸入到SVM分類(lèi)器中,尋找一個(gè)最優(yōu)超平面作為決策函數(shù)。

(二)Dlib庫(kù)

1、Dlib簡(jiǎn)介
Dlib是一個(gè)現(xiàn)代化的C ++工具箱,其中包含用于在C ++中創(chuàng)建復(fù)雜軟件以解決實(shí)際問(wèn)題的機(jī)器學(xué)習(xí)算法和工具。它廣泛應(yīng)用于工業(yè)界和學(xué)術(shù)界,包括機(jī)器人,嵌入式設(shè)備,移動(dòng)電話(huà)和大型高性能計(jì)算環(huán)境。Dlib的開(kāi)源許可證允許您在任何應(yīng)用程序中免費(fèi)使用它。
2、Dlib特點(diǎn)

文檔齊全高質(zhì)量的可移植代碼提供大量的機(jī)器學(xué)習(xí)和圖像處理算法

(三)卷積神經(jīng)網(wǎng)絡(luò)特征提?。–NN)

1、卷積神經(jīng)網(wǎng)絡(luò)簡(jiǎn)介
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network)簡(jiǎn)稱(chēng)CNN,CNN是所有深度學(xué)習(xí)課程、書(shū)籍必教的模型,CNN在影像識(shí)別方面的為例特別強(qiáng)大,許多影像識(shí)別的模型也都是以CNN的架構(gòu)為基礎(chǔ)去做延伸。另外值得一提的是CNN模型也是少數(shù)參考人的大腦視覺(jué)組織來(lái)建立的深度學(xué)習(xí)模型,學(xué)會(huì)CNN之后,對(duì)于學(xué)習(xí)其他深度學(xué)習(xí)的模型也很有幫助,本文主要講述了CNN的原理以及使用CNN來(lái)達(dá)成99%正確度的手寫(xiě)字體識(shí)別。
2、CNN網(wǎng)絡(luò)結(jié)構(gòu)
基礎(chǔ)的CNN由 卷積(convolution), 激活(activation), and 池化(pooling)三種結(jié)構(gòu)組成。CNN輸出的結(jié)果是每幅圖像的特定特征空間。當(dāng)處理圖像分類(lèi)任務(wù)時(shí),我們會(huì)把CNN輸出的特征空間作為全連接層或全連接神經(jīng)網(wǎng)絡(luò)(fully connected neural network, FCN)的輸入,用全連接層來(lái)完成從輸入圖像到標(biāo)簽集的映射,即分類(lèi)。當(dāng)然,整個(gè)過(guò)程最重要的工作就是如何通過(guò)訓(xùn)練數(shù)據(jù)迭代調(diào)整網(wǎng)絡(luò)權(quán)重,也就是后向傳播算法。目前主流的卷積神經(jīng)網(wǎng)絡(luò)(CNNs),比如VGG, ResNet都是由簡(jiǎn)單的CNN調(diào)整,組合而來(lái)。
(1)CNN

圖中,一個(gè)stage中的一個(gè)CNN,通常會(huì)由三種映射空間組成:

輸入映射空間(input maps volume)特征映射空間(feature maps volume)池化映射空間(pooled maps volume)

(2)卷積

注意卷積層的kernel可能不止一個(gè),掃描步長(zhǎng),方向也有不同,進(jìn)階方式如下:

可以采用多個(gè)卷積核,設(shè)為n 同時(shí)掃描,得到的feature map會(huì)增加n個(gè)維度,通常認(rèn)為是多抓取n個(gè)特征。可以采取不同掃描步長(zhǎng),比如上例子中采用步長(zhǎng)為n, 輸出是(510/n,510/n)padding,上例里,卷積過(guò)后圖像維度是縮減的,可以在圖像周?chē)畛?來(lái)保證feature map與原始圖像大小不變深度升降,例如采用增加一個(gè)1*1 kernel來(lái)增加深度,相當(dāng)于復(fù)制一層當(dāng)前通道作為feature map跨層傳遞feature map,不再局限于輸入即輸出, 例如ResNet跨層傳遞特征,F(xiàn)aster RCNN 的POI pooling
(3)激活

(4)池化

(5)全連接網(wǎng)絡(luò)

出現(xiàn)在CNN中的全連接網(wǎng)絡(luò)(fully connected network)主要目的是為了分類(lèi), 這里稱(chēng)它為network的原因是,目前CNNs多數(shù)會(huì)采用多層全連接層,這樣的結(jié)構(gòu)可以被認(rèn)為是網(wǎng)絡(luò)。如果只有一層,下邊的敘述同樣適用。它的結(jié)構(gòu)如下:


(6)目標(biāo)函數(shù)和訓(xùn)練方法




到此這篇關(guān)于Python中人臉圖像特征提取方法(HOG、Dlib、CNN)簡(jiǎn)述的文章就介紹到這了,更多相關(guān)python人臉圖像特征提取內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python+opencv3.4.0 實(shí)現(xiàn)HOG+SVM行人檢測(cè)的示例代碼

標(biāo)簽:新疆 河南 樂(lè)山 上海 沈陽(yáng) 滄州 長(zhǎng)治 紅河

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python中人臉圖像特征提取方法(HOG、Dlib、CNN)簡(jiǎn)述》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話(huà)咨詢(xún)

    • 400-1100-266