欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

人臉識(shí)別經(jīng)典算法一 特征臉?lè)椒ǎ‥igenface)

 更新時(shí)間:2018年03月13日 08:57:43   作者:兔死機(jī)  
這篇文章主要為大家詳細(xì)介紹了人臉識(shí)別經(jīng)典算法一,特征臉?lè)椒‥igenface,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

這篇文章是擼主要介紹人臉識(shí)別經(jīng)典方法的第一篇,后續(xù)會(huì)有其他方法更新。特征臉?lè)椒ɑ臼菍⑷四樧R(shí)別推向真正可用的第一種方法,了解一下還是很有必要的。特征臉用到的理論基礎(chǔ)PCA在另一篇博客里:特征臉(Eigenface)理論基礎(chǔ)-PCA(主成分分析法) 。本文的參考資料附在最后了^_^

步驟一:獲取包含M張人臉圖像的集合S。在我們的例子里有25張人臉圖像(雖然是25個(gè)不同人的人臉的圖像,但是看著怎么不像呢,難道我有臉盲癥么),如下圖所示哦。每張圖像可以轉(zhuǎn)換成一個(gè)N維的向量(是的,沒(méi)錯(cuò),一個(gè)像素一個(gè)像素的排成一行就好了,至于是橫著還是豎著獲取原圖像的像素,隨你自己,只要前后統(tǒng)一就可以),然后把這M個(gè)向量放到一個(gè)集合S里,如下式所示。

步驟二:在獲取到人臉向量集合S后,計(jì)算得到平均圖像Ψ,至于怎么計(jì)算平均圖像,公式在下面。就是把集合S里面的向量遍歷一遍進(jìn)行累加,然后取平均值。得到的這個(gè)Ψ其實(shí)還挺有意思的,Ψ其實(shí)也是一個(gè)N維向量,如果再把它還原回圖像的形式的話(huà),可以得到如下的“平均臉”,是的沒(méi)錯(cuò),還他媽的挺帥啊。那如果你想看一下某計(jì)算機(jī)學(xué)院男生平均下來(lái)都長(zhǎng)得什么樣子,用上面的方法就可以了。

步驟三:計(jì)算每張圖像和平均圖像的差值Φ,就是用S集合里的每個(gè)元素減去步驟二中的平均值。

步驟四:找到M個(gè)正交的單位向量un,這些單位向量其實(shí)是用來(lái)描述Φ(步驟三中的差值)分布的。un里面的第k(k=1,2,3...M)個(gè)向量uk是通過(guò)下式計(jì)算的,

當(dāng)這個(gè)λk(原文里取了個(gè)名字叫特征值)取最小的值時(shí),uk基本就確定了。補(bǔ)充一下,剛才也說(shuō)了,這M個(gè)向量是相互正交而且是單位長(zhǎng)度的,所以啦,uk還要滿(mǎn)足下式:

上面的等式使得uk為單位正交向量。計(jì)算上面的uk其實(shí)就是計(jì)算如下協(xié)方差矩陣的特征向量:

其中

對(duì)于一個(gè)NxN(比如100x100)維的圖像來(lái)說(shuō),上述直接計(jì)算其特征向量計(jì)算量實(shí)在是太大了(協(xié)方差矩陣可以達(dá)到10000x10000),所以有了如下的簡(jiǎn)單計(jì)算。

步驟四另解:如果訓(xùn)練圖像的數(shù)量小于圖像的維數(shù)比如(M<N^2),那么起作用的特征向量只有M-1個(gè)而不是N^2個(gè)(因?yàn)槠渌奶卣飨蛄繉?duì)應(yīng)的特征值為0),所以求解特征向量我們只需要求解一個(gè)NxN的矩陣。這個(gè)矩陣就是步驟四中的AAT,我們可以設(shè)該矩陣為L(zhǎng),那么L的第m行n列的元素可以表示為:

一旦我們找到了L矩陣的M個(gè)特征向量vl,那么協(xié)方差矩陣的特征向量ul就可以表示為:

這些特征向量如果還原成像素排列的話(huà),其實(shí)還蠻像人臉的,所以稱(chēng)之為特征臉(如下圖)。圖里有二十五個(gè)特征臉,數(shù)量上和訓(xùn)練圖像相等只是巧合。有論文表明一般的應(yīng)用40個(gè)特征臉已經(jīng)足夠了。論文Eigenface for recognition里只用了7個(gè)特征臉來(lái)表明實(shí)驗(yàn)。

步驟五:識(shí)別人臉。OK,終于到這步了,別繞暈啦,上面幾步是為了對(duì)人臉進(jìn)行降維找到表征人臉的合適向量的。首先考慮一張新的人臉,我們可以用特征臉對(duì)其進(jìn)行標(biāo)示:

其中k=1,2...M,對(duì)于第k個(gè)特征臉uk,上式可以計(jì)算其對(duì)應(yīng)的權(quán)重,M個(gè)權(quán)重可以構(gòu)成一個(gè)向量:

perfect,這就是求得的特征臉對(duì)人臉的表示了!

那如何對(duì)人臉進(jìn)行識(shí)別呢,看下式:

其中Ω代表要判別的人臉,Ωk代表訓(xùn)練集內(nèi)的某個(gè)人臉,兩者都是通過(guò)特征臉的權(quán)重來(lái)表示的。式子是對(duì)兩者求歐式距離,當(dāng)距離小于閾值時(shí)說(shuō)明要判別的臉和訓(xùn)練集內(nèi)的第k個(gè)臉是同一個(gè)人的。當(dāng)遍歷所有訓(xùn)練集都大于閾值時(shí),根據(jù)距離值的大小又可分為是新的人臉或者不是人臉的兩種情況。根據(jù)訓(xùn)練集的不同,閾值設(shè)定并不是固定的。

后續(xù)會(huì)有對(duì)PCA理論的補(bǔ)充^_^.已補(bǔ)充理論:特征臉(Eigenface)理論基礎(chǔ)-PCA(主成分分析法)

參考資料:

1、Eigenface for Recognition

2、特征臉維基百科

3、Eigenface_tutorial

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python直接賦值及深淺拷貝原理詳解

    Python直接賦值及深淺拷貝原理詳解

    這篇文章主要介紹了Python直接賦值及深淺拷貝原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • python生成并處理uuid的實(shí)現(xiàn)方式

    python生成并處理uuid的實(shí)現(xiàn)方式

    這篇文章主要介紹了python生成并處理uuid的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-03-03
  • python結(jié)束程序運(yùn)行的四種方法

    python結(jié)束程序運(yùn)行的四種方法

    大家好,小編為大家解答python結(jié)束程序的代碼用什么符號(hào)的問(wèn)題,很多人還不知道python如何結(jié)束程序運(yùn)行,文中通過(guò)代碼示例和圖文結(jié)合的方式介紹的非常詳細(xì),現(xiàn)在讓我們一起來(lái)看看吧
    2024-07-07
  • 關(guān)于python的bottle框架跨域請(qǐng)求報(bào)錯(cuò)問(wèn)題的處理方法

    關(guān)于python的bottle框架跨域請(qǐng)求報(bào)錯(cuò)問(wèn)題的處理方法

    這篇文章主要介紹了關(guān)于python的bottle框架跨域請(qǐng)求報(bào)錯(cuò)問(wèn)題的處理方法,需要的朋友可以參考下
    2017-03-03
  • python super的使用方法及實(shí)例詳解

    python super的使用方法及實(shí)例詳解

    這篇文章主要介紹了python super的使用方法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • Python pip 常用命令匯總

    Python pip 常用命令匯總

    這篇文章主要介紹了Python pip 常用命令匯總,幫助大家更好的理解和使用pip命令,感興趣的朋友可以了解下
    2020-10-10
  • Python實(shí)現(xiàn)PS濾鏡碎片特效功能示例

    Python實(shí)現(xiàn)PS濾鏡碎片特效功能示例

    這篇文章主要介紹了Python實(shí)現(xiàn)PS濾鏡碎片特效功能,結(jié)合實(shí)例形式分析了Python實(shí)現(xiàn)PS濾鏡碎片效果的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下
    2018-01-01
  • Pandas 同元素多列去重的實(shí)例

    Pandas 同元素多列去重的實(shí)例

    今天小編就為大家分享一篇Pandas 同元素多列去重的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • Python面向?qū)ο笾械姆庋b詳情

    Python面向?qū)ο笾械姆庋b詳情

    這篇文章主要介紹了Python面向?qū)ο笾械姆庋b詳情,在python中也有對(duì)對(duì)象的封裝操作,使其對(duì)外只提供固定的訪問(wèn)模式,不能訪問(wèn)其內(nèi)部的私有屬性和私有方法。下文詳細(xì)內(nèi)容,需要的小伙伴可以參考一下
    2022-03-03
  • 使用Python批量對(duì)文本文件編碼互轉(zhuǎn)的方法

    使用Python批量對(duì)文本文件編碼互轉(zhuǎn)的方法

    這篇文章主要介紹了使用Python批量對(duì)文本文件編碼互轉(zhuǎn)的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03

最新評(píng)論