人臉識(shí)別技術(shù)原理解析
你還記得電影里的這些情節(jié)嗎?《變形金剛2》中,年輕的男主角和他的小伙伴們過(guò)關(guān)卡時(shí),雖然騙過(guò)了值班軍人,卻被軍方的人臉識(shí)別技術(shù)發(fā)現(xiàn)。2014年翻拍版的《機(jī)械戰(zhàn)警》中,機(jī)械戰(zhàn)警第一次面對(duì)大眾公開(kāi)亮相,就在人群中不停地掃描所有人臉,同時(shí)將獲取的人臉在通緝犯資料庫(kù)中作比對(duì),瞬間就發(fā)現(xiàn)看熱鬧的人群中有一個(gè)逃逸多年的通緝犯,并將其制服。其他還有許多電影中,但凡是美國(guó)的機(jī)要部門,進(jìn)門就要掃描各種生物特征,從早年電影中的指紋、虹膜,到現(xiàn)在的人臉。
本文引用地址:http://m.butianyuan.cn/article/201710/368105.htm人臉識(shí)別到底是什么?
人臉識(shí)別,是視覺(jué)模式識(shí)別的一個(gè)細(xì)分問(wèn)題,也大概是最難解決的一個(gè)問(wèn)題。 其實(shí)我們?nèi)嗣繒r(shí)每刻都在進(jìn)行視覺(jué)模式識(shí)別,我們通過(guò)眼睛獲得視覺(jué)信息,這些信息經(jīng)過(guò)大腦的處理被識(shí)別為有意義的概念。于是我們知道了放在我們面前的是水杯、書本,還是什么別的東西。
我們也無(wú)時(shí)無(wú)刻不在進(jìn)行人臉識(shí)別,我們每天生活中遇到無(wú)數(shù)的人,從中認(rèn)出那些熟人,和他們打招呼,打交道,忽略其他的陌生人。甚至躲開(kāi)那些我們欠了錢還暫時(shí)還不上的人。
然而這項(xiàng)看似簡(jiǎn)單的任務(wù),對(duì)機(jī)器來(lái)說(shuō)卻并不那么容易實(shí)現(xiàn)。
對(duì)計(jì)算機(jī)來(lái)講,一幅圖像信息,無(wú)論是靜態(tài)的圖片,還是動(dòng)態(tài)視頻中的一幀,都是一個(gè)由眾多像素點(diǎn)組成的矩陣。比如一個(gè)1080p的數(shù)字圖像,是一個(gè)由1980*1080個(gè)像素點(diǎn)組成矩陣,每個(gè)像素點(diǎn),如果是8bit的rgb格式,則是3個(gè)取值在0-255的數(shù)。
機(jī)器需要在這些數(shù)據(jù)中,找出某一部分?jǐn)?shù)據(jù)代表了何種概念:哪一部分?jǐn)?shù)據(jù)是水杯,哪一部分是書本,哪一部分是人臉,這是視覺(jué)模式識(shí)別中的粗分類問(wèn)題。
而人臉識(shí)別,需要在所有機(jī)器認(rèn)為是人臉的那部分?jǐn)?shù)據(jù)中,區(qū)分這個(gè)人臉屬于誰(shuí),這是個(gè)細(xì)分類問(wèn)題。
人臉可以分為多少類呢?
取決于所處理問(wèn)題的人臉庫(kù)大小,人臉庫(kù)中有多少目標(biāo)人臉,就需要機(jī)器進(jìn)行相應(yīng)數(shù)量的細(xì)分類。如果想要機(jī)器認(rèn)出每個(gè)他看到的人,則這世界上有多少人,人臉就可以分為多少類,而這些類別之間的區(qū)別是非常細(xì)微的。由此可見(jiàn)人臉識(shí)別問(wèn)題的難度。
更不要提,這件事還要受到光照,角度,人臉部的裝飾物等各種因素的影響。這也不難解釋為什么人臉識(shí)別技術(shù)目前還沒(méi)有大量應(yīng)用在日常生活中,大部分人只能在科幻電影中接觸人臉識(shí)別了。
傻傻分不清楚——一些容易被混淆的概念
一些不太被人熟悉的事物,經(jīng)常會(huì)伴隨著大量的概念混淆。
比如對(duì)西方宗教不太了解的國(guó)人,可能搞不清楚為什么有些人信上帝但不信耶穌;都是在教堂工作的大叔,為什么有些要禁欲,有些卻能結(jié)婚。
而人臉識(shí)別作為一個(gè)新事物,也伴隨著大量的概念混淆,而分清這些概念,對(duì)于理解人臉識(shí)別還是比較重要的。
人臉檢測(cè)與人臉識(shí)別
完成人臉識(shí)別的工作,要經(jīng)過(guò)幾個(gè)步驟。首先計(jì)算機(jī)需要在圖像或視頻中找到人臉的位置,這部分工作一般叫做人臉檢測(cè)。如前所述,這是一種粗分類,具體到人臉檢測(cè)中,實(shí)際上是二分類,計(jì)算機(jī)只需要判斷目標(biāo)圖像是或者不是人臉。但由于并不能事先確定人臉的大小和位置,計(jì)算機(jī)需要以每個(gè)可能的人臉大小對(duì)全圖進(jìn)行掃描,逐個(gè)判斷子窗口所截取的圖像是否為人臉。而每次掃描過(guò)程,子窗口移動(dòng)的步長(zhǎng)可能是幾個(gè)像素。
所以你可以大致想象下,作一張圖的人臉檢測(cè),計(jì)算機(jī)需要作多少次二分類判斷。
人臉檢測(cè)步驟從一張圖中獲得人臉的位置和大小,并將該部分圖像送給后續(xù)步驟,包括:人臉部件點(diǎn)定位,人臉圖像的對(duì)齊和歸一化,人臉圖像質(zhì)量選取,特征提取,特征比對(duì)。所有步驟完成后,才能得知該人臉的身份。
當(dāng)然,我們也可以單獨(dú)使用人臉檢測(cè)功能來(lái)完成某些應(yīng)用,比如當(dāng)前大部分照相機(jī),及手機(jī)攝像頭都有人臉檢測(cè)功能,可以自動(dòng)獲得人臉位置,從而對(duì)圖片作一些自動(dòng)調(diào)焦和優(yōu)化。甚至對(duì)人臉做一些初步的判斷,比如性別、年齡,甚至顏值。
1v1人臉驗(yàn)證與1vN人臉查找
主人公通過(guò)各種方式,蒙混過(guò)層層身份驗(yàn)證,成功進(jìn)入某機(jī)要部門,這是電影中經(jīng)常出現(xiàn)的情節(jié)。而這層層的身份驗(yàn)證就經(jīng)常包括人臉識(shí)別。在這種應(yīng)用中,使用者往往需要提供自己的身份。
比如使用門卡,計(jì)算機(jī)可以通過(guò)門卡在后臺(tái)中獲取門卡所有者的人臉樣本,將其與當(dāng)前使用門卡人的人臉圖像進(jìn)行對(duì)比,以確認(rèn)當(dāng)前使用門卡的人與門卡的所有者是否匹配,如此可以避免撿到你門卡的人輕松混入公司。
這是一種1v1的身份驗(yàn)證,計(jì)算機(jī)對(duì)當(dāng)前人臉和庫(kù)存人臉進(jìn)行一次比對(duì),是對(duì)其他驗(yàn)證方式的一種輔助,從而提高身份驗(yàn)證的可靠性。這種應(yīng)用目前已經(jīng)大量使用,比如敏感設(shè)施的準(zhǔn)入,互聯(lián)網(wǎng)金融領(lǐng)域的遠(yuǎn)程開(kāi)戶及大額提取的身份驗(yàn)證等。
文章開(kāi)始時(shí)提到的《機(jī)械戰(zhàn)警》中的橋段,則是1vN的人臉查找。機(jī)械戰(zhàn)警可以聯(lián)機(jī)查找一個(gè)保存了所有通緝犯數(shù)據(jù)的人臉庫(kù),每次他遇到一個(gè)人,都會(huì)先獲取該人的人臉信息,用所獲得信息去通緝犯數(shù)據(jù)庫(kù)中去逐個(gè)比對(duì),如果發(fā)現(xiàn)匹配度足夠高的,就當(dāng)場(chǎng)抓捕。每次人臉識(shí)別,計(jì)算機(jī)要作n次人臉比對(duì),n為待識(shí)別庫(kù)中的人臉模板數(shù)。
如果要求計(jì)算機(jī)只憑借人臉識(shí)別出一個(gè)人的身份,這實(shí)際上也是一種1vN的人臉查找,其目標(biāo)人臉庫(kù)是一個(gè)由n個(gè)人臉組成的“熟人庫(kù)”,隨著n的增大,準(zhǔn)確識(shí)別的難度也會(huì)增大,一次識(shí)別所需要的計(jì)算時(shí)間也會(huì)增加。我們可以考慮一下,一個(gè)普通人能對(duì)多少個(gè)人臉進(jìn)行準(zhǔn)確識(shí)別?大概也就在幾十個(gè)這個(gè)數(shù)量級(jí)上吧。
而目前最好的人臉識(shí)別技術(shù)實(shí)際上已經(jīng)超過(guò)了這個(gè)水平。
例如國(guó)內(nèi)頂級(jí)的人臉識(shí)別公司,一般會(huì)有一面屏幕墻,演示公司各個(gè)攝像頭所拍攝到人員活動(dòng),并對(duì)身份進(jìn)行準(zhǔn)確識(shí)別,而公司內(nèi)一般維護(hù)一個(gè)百人數(shù)量級(jí)的人臉庫(kù)。但如果N再繼續(xù)增大,達(dá)到千人庫(kù),萬(wàn)人庫(kù),那么實(shí)時(shí)查找唯一的匹配人臉就成為一種科幻要求了,在較大的人臉庫(kù)應(yīng)用中,一般會(huì)降低對(duì)實(shí)時(shí)性的要求,并且只要求查出前m名非常匹配的疑似人臉,以便縮小人工檢索的范圍。
評(píng)論