人臉識(shí)別技術(shù)是如今十分熱門的一項(xiàng)技術(shù),掌握人臉識(shí)別技術(shù)的優(yōu)勢(shì)不言而喻。下面,我們將首先介紹人臉識(shí)別的基本概況。
01 何為人臉識(shí)別
人臉識(shí)別技術(shù)由來已久,這個(gè)概念沒有一個(gè)嚴(yán)格的定義,一般有狹義與廣義之分。
狹義的表述一般是指:以分析與比較人臉視覺特征信息為手段,進(jìn)行身份驗(yàn)證或查找的一項(xiàng)計(jì)算機(jī)視覺技術(shù)。
從表述上看,狹義的人臉識(shí)別技術(shù)其實(shí)是一種身份驗(yàn)證技術(shù),它與我們所熟知的指紋識(shí)別、聲紋識(shí)別、指靜脈識(shí)別、虹膜識(shí)別等均屬于同一領(lǐng)域,即生物信息識(shí)別領(lǐng)域。因此,狹義上的人臉識(shí)別一般指的是通過人臉圖像進(jìn)行身份確認(rèn)或查找的場(chǎng)景。
生物信息識(shí)別的認(rèn)證方式與傳統(tǒng)的身份認(rèn)證方式相比,具有很多顯著優(yōu)勢(shì)。例如傳統(tǒng)的密鑰認(rèn)證、識(shí)別卡認(rèn)證等存在易丟失、易被偽造、易被遺忘等特點(diǎn)。而生物信息則是人類與生俱來的一種屬性,并不會(huì)被丟失和遺忘。
而作為生物信息識(shí)別之一的人臉識(shí)別又具有對(duì)采集設(shè)備要求不高(最簡(jiǎn)單的方式只需要能夠拍照的設(shè)備即可)、采集方式簡(jiǎn)單等特點(diǎn)。這是虹膜識(shí)別、指紋識(shí)別等方式所不具備的優(yōu)點(diǎn)。
人臉識(shí)別的廣義表述是:在圖片或視頻流中識(shí)別出人臉,并對(duì)該人臉圖像進(jìn)行一系列相關(guān)操作的技術(shù)。例如,在進(jìn)行人臉身份認(rèn)證時(shí),不可避免地會(huì)經(jīng)歷諸如圖像采集、人臉檢測(cè)、人臉定位、人臉提取、人臉預(yù)處理、人臉特征提取、人臉特征對(duì)比等步驟,這些都可以認(rèn)為是人臉識(shí)別的范疇。
02 人臉識(shí)別的應(yīng)用
近些年,隨著人臉識(shí)別精度的提高,基于該項(xiàng)技術(shù)的產(chǎn)品也開始在我們生活中呈現(xiàn)“井噴”之勢(shì)。
例如,早在2016年2月,北京站就開啟了“刷臉”進(jìn)站模式。如圖1-1所示是北京站“刷臉”進(jìn)站的使用提示。現(xiàn)在,越來越多的火車站開始采用“刷臉”進(jìn)站方式替代人工檢票,有效地加快了檢票速度。
人臉識(shí)別的另外一個(gè)典型應(yīng)用是手機(jī)解鎖。隨著iPhone X的誕生,蘋果手機(jī)家族增添了一項(xiàng)新的身份驗(yàn)證方式,即所謂的Face ID。而蘋果公司宣稱,基于Face ID的識(shí)別準(zhǔn)確率要遠(yuǎn)高于基于指紋識(shí)別的Touch ID。
實(shí)際上,通過人臉識(shí)別來解鎖手機(jī)并不算什么新鮮事。早在Android 4.0時(shí)期,這項(xiàng)功能就已經(jīng)集成在操作系統(tǒng)中了。只不過,由于種種原因,這項(xiàng)功能并未取得比較好的效果,因此無論是谷歌還是手機(jī)制造廠商都沒有對(duì)此進(jìn)行宣傳,自然也不會(huì)被大眾所了解。
值得一提的是,據(jù)說蘋果公司在這項(xiàng)技術(shù)上的研發(fā)時(shí)間長(zhǎng)達(dá)5年之久,直至iPhone X才搭載了完備的人臉識(shí)別功能,可見高精度的人臉識(shí)別技術(shù)并不是一種簡(jiǎn)單的技術(shù)。
上面的兩個(gè)例子只是人臉識(shí)別應(yīng)用的冰山一角,人臉識(shí)別技術(shù)的典型應(yīng)用場(chǎng)景可以總結(jié)為如下幾個(gè)場(chǎng)景。
1. 身份認(rèn)證場(chǎng)景
這是人臉識(shí)別技術(shù)最典型的應(yīng)用場(chǎng)景之一。門禁系統(tǒng)、手機(jī)解鎖等都可以歸納為該種類別。該方法與傳統(tǒng)的鑰匙開鎖、指紋識(shí)別、虹膜識(shí)別等均屬于身份認(rèn)證。這需要系統(tǒng)判斷當(dāng)前被檢測(cè)人臉是否已經(jīng)存在于系統(tǒng)內(nèi)置的人臉數(shù)據(jù)庫中。如果系統(tǒng)內(nèi)沒有該人的信息,則認(rèn)證失敗。
2. 證件驗(yàn)證場(chǎng)景
證件驗(yàn)證與身份認(rèn)證相似,也可稱為人臉驗(yàn)證,是判斷證件中的人臉圖像與被識(shí)別人的人臉是否相同的場(chǎng)景。在進(jìn)行人臉與證件之間的對(duì)比時(shí),往往會(huì)引入活體檢測(cè)技術(shù)。
或許大家對(duì)活體檢測(cè)技術(shù)并不陌生,就是我們?cè)谑褂没ヂ?lián)網(wǎng)產(chǎn)品時(shí)經(jīng)常會(huì)出現(xiàn)的“眨眨眼、搖搖頭、點(diǎn)點(diǎn)頭、張張嘴”的人臉識(shí)別過程,這個(gè)過程我們稱之為基于動(dòng)作指令的活體檢測(cè)。活體檢測(cè)還可以借由紅外線、活體虹膜、排汗等方法來實(shí)現(xiàn)。
不難理解,引入活體檢測(cè)可以有效地增加判斷的準(zhǔn)確性,防止攻擊者偽造或竊取他人生物特征用于驗(yàn)證,例如使用照片等平面圖片對(duì)人臉識(shí)別系統(tǒng)進(jìn)行攻擊。
3. 人臉檢索場(chǎng)景
人臉檢索與身份驗(yàn)證類似,二者的區(qū)別在于身份驗(yàn)證是對(duì)人臉圖片“一對(duì)一”地對(duì)比,而人臉檢索是對(duì)人臉圖片“一對(duì)多”地對(duì)比。例如,在獲取到某人的人臉圖片后,可以通過人臉檢索方法,在人臉數(shù)據(jù)庫中檢索出該人的其他圖片,或者查詢?cè)撊说男彰认嚓P(guān)信息。
這與我們?cè)跀?shù)據(jù)庫中進(jìn)行查詢是一樣的,但人臉檢索要比在數(shù)據(jù)庫中查詢常規(guī)數(shù)據(jù)復(fù)雜得多,例如該以何種方式才能建立高效的人臉圖片檢索索引呢?
人臉檢索的應(yīng)用場(chǎng)景非常多,一個(gè)典型的例子是在重要的交通關(guān)卡布置人臉檢索探頭,將行人的人臉圖片在犯罪嫌疑人數(shù)據(jù)庫中進(jìn)行檢索,從而比較高效地識(shí)別出犯罪嫌疑人。
4. 人臉分類場(chǎng)景
我們這里指的人臉分類主要包括判斷人臉圖片中的人臉是男人還是女人,所屬的年齡區(qū)間是怎樣的,是什么樣的人種,該人的表情是什么等。當(dāng)然,人臉分類能夠?qū)崿F(xiàn)的功能遠(yuǎn)不止于此,在很多場(chǎng)景中具有重要的應(yīng)用價(jià)值。
例如,社交類App可以通過用戶上傳的自拍圖片來判斷該用戶的性別、年齡等特征,從而為用戶有針對(duì)性地推薦一些可能感興趣的人。
5. 交互式應(yīng)用場(chǎng)景
美顏類自拍軟件大家或許都很熟悉,該類軟件除能夠?qū)崿F(xiàn)常規(guī)的磨皮、美白、濾鏡等功能外,還具有“大眼”“瘦臉”、添加裝飾類貼圖等功能。
而“大眼”“瘦臉”等功能都需要使用人臉識(shí)別技術(shù)來檢測(cè)出人眼或面部輪廓,然后根據(jù)檢測(cè)出來的區(qū)域?qū)D片進(jìn)行加工,從而得到我們看到的最終結(jié)果。
添加裝飾類貼圖也是在這個(gè)基礎(chǔ)上實(shí)現(xiàn)的,可以認(rèn)為這是一種AR(增強(qiáng)現(xiàn)實(shí))應(yīng)用。其實(shí),交互式的應(yīng)用場(chǎng)景遠(yuǎn)不止于此,還有許多游戲也屬于這種交互式的應(yīng)用場(chǎng)景。
6. 其他應(yīng)用
上面所述的內(nèi)容是人臉識(shí)別中應(yīng)用比較廣泛的領(lǐng)域。其實(shí),除這些領(lǐng)域外,人臉識(shí)別還有許多其他的應(yīng)用。
例如,人臉圖片的重建技術(shù)可以應(yīng)用到通信工程領(lǐng)域,實(shí)現(xiàn)低比特率的圖片與視頻傳輸;基于人臉識(shí)別技術(shù),可以實(shí)現(xiàn)人臉圖片的合成,甚至直接將一個(gè)視頻中的人臉完全替換為另外一個(gè)人的臉。其中一個(gè)經(jīng)典的項(xiàng)目是DeepFake,利用該項(xiàng)目可以實(shí)現(xiàn)“視頻換臉”功能,實(shí)現(xiàn)的效果足以以假亂真。
我們可以在日常生活中體會(huì)到人臉識(shí)別技術(shù)為我們的生活帶來的便利。隨著技術(shù)的進(jìn)一步發(fā)展,將會(huì)有越來越多的人臉識(shí)別相關(guān)項(xiàng)目落地。在后面的實(shí)戰(zhàn)內(nèi)容中,我們將會(huì)圍繞這些應(yīng)用場(chǎng)景,具體介紹其原理與實(shí)現(xiàn)方法。
03 人臉識(shí)別的目標(biāo)
我們已經(jīng)介紹了人臉識(shí)別的不同應(yīng)用場(chǎng)景。在不同的應(yīng)用場(chǎng)景下,人臉識(shí)別的目標(biāo)可能是不相同的。但是,對(duì)于絕大多數(shù)的人臉識(shí)別應(yīng)用場(chǎng)景,人臉識(shí)別的目標(biāo)是類似的。
人臉識(shí)別的大致流程可以描述為:通過人臉識(shí)別模型判斷圖片中是否存在人臉,如果存在人臉,則定位到該人臉的區(qū)位,或者提取該人臉圖像的高級(jí)特征,作為該人臉圖像的特征向量,并用在后續(xù)對(duì)圖片的處理中。
由于人臉識(shí)別的應(yīng)用場(chǎng)景不同,上述步驟的選擇和側(cè)重點(diǎn)也不盡相同。例如:
定位人臉在圖片中的位置,可以用于諸如AR等貼圖操作;
通過定位人臉的關(guān)鍵點(diǎn),可以對(duì)人臉圖片進(jìn)行幾何變換,通過幾何變換可以實(shí)現(xiàn)對(duì)圖像中人臉的校正,與此同時(shí),得到的人臉關(guān)鍵點(diǎn)還可以用來實(shí)現(xiàn)諸如“瘦臉”等操作;
如果想要實(shí)現(xiàn)的功能并不是對(duì)人臉圖片的幾何變換,而是對(duì)圖片中的人臉進(jìn)行特定判斷,如判斷圖片中人臉的性別、年齡等,那么此時(shí)的目標(biāo)是提取出圖片中人臉的高級(jí)特征,然后根據(jù)提取出來的高級(jí)特征,使用分類器進(jìn)行分類,即可以實(shí)現(xiàn)諸如性別識(shí)別、年齡判斷等功能;
對(duì)于人臉對(duì)比,一個(gè)可行的思路仍然是提取圖片中人臉的高級(jí)特征,然后對(duì)這兩個(gè)特征進(jìn)行對(duì)比,從而得出一個(gè)相似度數(shù)值,通過比較該數(shù)值與預(yù)設(shè)閾值的大小,從而判別兩張圖片中的人臉是否屬于同一個(gè)人。
從上面的介紹中我們可以看出,不同人臉識(shí)別應(yīng)用的很多步驟都是重合的,其差異僅在于操作層次的深淺。通過合理選擇、組合對(duì)人臉圖片的操作層次,就可以實(shí)現(xiàn)我們預(yù)期的目標(biāo)。
這個(gè)實(shí)現(xiàn)過程可以說是“萬變不離其宗”,最核心的技術(shù)便是提取人臉圖像的高級(jí)特征,我們將會(huì)在后續(xù)的例子中逐步印證這一點(diǎn)。
04 人臉識(shí)別的一般方法
我們首先以人臉對(duì)比場(chǎng)景為例,介紹一種人臉對(duì)比的可行思路。
我們?cè)谇拔闹刑岬竭^,雖然人臉識(shí)別的應(yīng)用很廣泛,而且用到的具體技術(shù)也不盡相同,但是,有很多步驟其實(shí)是類似的。以人臉對(duì)比為例,一種可行的解決方案如圖1-2所示。
下面我們簡(jiǎn)要介紹一下其中的一些關(guān)鍵步驟。
1. 圖像預(yù)處理
在很多計(jì)算機(jī)視覺項(xiàng)目中,往往需要進(jìn)行圖片的預(yù)處理操作。這主要是因?yàn)檩斎氲膱D片常存在不合規(guī)范的地方,甚至?xí)蓴_系統(tǒng)的后續(xù)工作。
如圖片帶有噪聲,或者圖片尺寸不符合系統(tǒng)要求等,這些都是預(yù)處理這一步需要做的事。而對(duì)應(yīng)的處理方法可以是對(duì)圖片進(jìn)行濾波等操作,從而使圖片更加符合系統(tǒng)要求。如圖1-3所示,分別為帶有椒鹽噪聲的圖片和經(jīng)過中值濾波處理后的圖片。
2. 人臉檢測(cè)
顧名思義,人臉檢測(cè)就是用來判斷一張圖片中是否存在人臉的操作。如果圖片中存在人臉,則定位該人臉在圖片中的位置;如果圖片中不存在人臉,則返回圖片中不存在人臉的提示信息。
對(duì)于人臉識(shí)別應(yīng)用,人臉檢測(cè)可以說是必不可少的一個(gè)重要環(huán)節(jié)。人臉檢測(cè)效果的好壞,將直接影響整個(gè)系統(tǒng)的性能優(yōu)劣。如圖1-4所示,灰色矩形框代表了從圖片中檢測(cè)到的人臉圖像位置。
3. 人臉校正
人臉校正又可以稱為人臉矯正、人臉扶正、人臉對(duì)齊等。我們知道,圖片中的人臉圖像往往都不是“正臉”,有的是側(cè)臉,有的是帶有傾斜角度的人臉。這種在幾何形態(tài)上似乎不是很規(guī)整的面部圖像,可能會(huì)對(duì)后續(xù)的人臉相關(guān)操作造成不利影響。于是,就有人提出了人臉校正。
我們可以大致認(rèn)為,人臉校正是對(duì)圖片中人臉圖像的一種幾何變換,目的是減少傾斜角度等幾何因素給系統(tǒng)帶來的影響。因此,人臉校正一般也被認(rèn)為是對(duì)人臉圖像的幾何歸一化操作。人臉校正一般被用在人臉對(duì)比等存在后續(xù)人臉特征提取的應(yīng)用場(chǎng)景中。
但是,隨著深度學(xué)習(xí)技術(shù)的廣泛應(yīng)用,人臉校正并不是被絕對(duì)要求存在于系統(tǒng)中。深度學(xué)習(xí)模型的預(yù)測(cè)能力相對(duì)于傳統(tǒng)的人臉識(shí)別方法要強(qiáng)得多,因?yàn)樗源髷?shù)據(jù)樣本訓(xùn)練取勝。也正因如此,有的人臉識(shí)別系統(tǒng)中有人臉校正這一步,而有的模型中則沒有。
4. 人臉特征點(diǎn)定位
人臉特征點(diǎn)定位是指在檢測(cè)到圖片中人臉的位置之后,在圖片中定位能夠代表圖片中人臉的關(guān)鍵位置的點(diǎn)。常用的人臉特征點(diǎn)是由左右眼、左右嘴角、鼻子這5個(gè)點(diǎn)組成的5點(diǎn)人臉特征點(diǎn),以及包括人臉及嘴唇等輪廓構(gòu)成的68點(diǎn)人臉特征點(diǎn)等。
5. 人臉特征提取
對(duì)于很多人臉識(shí)別應(yīng)用來說,人臉特征提取是十分關(guān)鍵的步驟。例如在性別判斷、年齡識(shí)別、人臉對(duì)比等場(chǎng)景中,將已提取到的人臉特征為主要的判斷依據(jù)。提取到的人臉特征質(zhì)量的優(yōu)劣將直接影響輸出結(jié)果正確與否。
我們可以認(rèn)為RGB形式的彩色圖片是一個(gè)具有紅、綠、藍(lán)三通道的矩陣,而二值圖像和灰度圖像本身在存儲(chǔ)上就是一個(gè)矩陣,這些圖片中的像素點(diǎn)是很多的。而提取到的特征往往是以特征向量的形式表示的,向量的元素一般都不會(huì)太多(一般在“千”這個(gè)數(shù)量級(jí))。
因此,從宏觀角度來看,特征提取過程可以看作一個(gè)數(shù)據(jù)抽取與壓縮的過程。從數(shù)學(xué)角度看,其實(shí)是一個(gè)降維的過程。有關(guān)降維的內(nèi)容,我們將會(huì)在后續(xù)的部分中詳細(xì)介紹。
6. 分類器
分類器其實(shí)指代的是一種分類算法。例如我們需要判斷圖片中人臉?biāo)鶎僬叩男詣e,在提取到人臉圖像的高級(jí)特征之后,我們要根據(jù)這個(gè)提取到的特征來判斷其性別。
這個(gè)過程其實(shí)是一個(gè)二分類過程,也就是大家都知道的:在不考慮特殊情況的前提下,人類可以分為兩類,不是男人就是女人。判斷的依據(jù)是前面提到的人臉圖像的高級(jí)特征,用于判斷的算法就是所謂的分類器。
在這里我們介紹了人臉識(shí)別中人臉對(duì)比場(chǎng)景中涉及的一些具體要素。我們可以看到,人臉對(duì)比的一個(gè)可行思路是首先進(jìn)行圖片的預(yù)處理,然后進(jìn)行人臉檢測(cè)判斷,最后提取特征并進(jìn)行對(duì)比。人臉對(duì)比是人臉識(shí)別中比較典型的應(yīng)用場(chǎng)景,我們可以從這個(gè)例子中總結(jié)出人臉識(shí)別應(yīng)用的共性。
圖像預(yù)處理。目的是減少圖片自身因素對(duì)系統(tǒng)判斷造成的干擾,或者使圖片格式更適合系統(tǒng)。常見的處理方式有圖片去噪、尺寸轉(zhuǎn)換、灰度化處理等。
人臉檢測(cè)。對(duì)于人臉識(shí)別應(yīng)用場(chǎng)景,如果圖片中根本不存在人臉,那么后續(xù)的一切操作都將變得沒有意義,甚至?xí)斐慑e(cuò)誤的結(jié)果。而如果識(shí)別不到圖片中存在的人臉,也會(huì)導(dǎo)致整個(gè)系統(tǒng)執(zhí)行的提前終止。因此,人臉檢測(cè)在人臉識(shí)別應(yīng)用中具有十分重要的作用,甚至可以認(rèn)為是不可或缺的重要一環(huán)。
特征點(diǎn)定位與特征提取。人臉識(shí)別系統(tǒng)如果想要實(shí)現(xiàn)一些高級(jí)功能,獲取特征將是必不可少的部分。對(duì)于不同的人臉識(shí)別應(yīng)用場(chǎng)景,其對(duì)特征的定義也不盡相同。例如想要在圖片中的人臉上自動(dòng)添加一個(gè)眼鏡作為裝飾物,那么我們需要獲取的特征就是雙眼在圖片中的位置,這樣以人眼為特征點(diǎn)的定位將是十分必要的;而對(duì)于人臉對(duì)比、性別識(shí)別等場(chǎng)景,獲取能夠代表圖片中人臉的一個(gè)特征向量將是十分必要的。
對(duì)特征的利用。我們已經(jīng)明確了,獲取我們所需的特征是后續(xù)操作的重要基礎(chǔ)。特征的利用方式前面已經(jīng)提到幾種,諸如使用分類器進(jìn)行分類、使用比較器進(jìn)行比較,或者利用定位到的人臉特征點(diǎn)進(jìn)行圖片的貼圖。毫無疑問,對(duì)特征利用的目的是很明確的,因?yàn)檫@往往就是我們最終想要獲取的系統(tǒng)直接輸出結(jié)果。
上述過程在實(shí)現(xiàn)上可能會(huì)很復(fù)雜,但是對(duì)于大多數(shù)的人臉識(shí)別應(yīng)用而言,大致的思路是相同的。將上述內(nèi)容歸結(jié)為人臉識(shí)別系統(tǒng)構(gòu)建的一般方法,我們將在后續(xù)的內(nèi)容中以這樣的思路進(jìn)行人臉識(shí)別系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。
責(zé)任編輯:YYX
評(píng)論