“刷臉進站”是怎么做到的?
一年一度的春運很快就要來了。
出門打拼的人都知道,每年春運都是一場關于擁擠的記憶,人頭涌動的車廂,排成長龍的檢票口,仿佛永遠都不會消退的人潮。
為了減少擁擠,我們開發了新技術來提高進出站的效率,比如今年,北京西站就新設立了可以“刷臉”的機器。
手持車票和二代身份證的旅客只要拿掉口罩、墨鏡等遮擋面部的物品,往這機器前面一站,5秒鐘即可順利放行。
比起傳統的靠工作人員識別放行,這些機器最大的優勢在于節省人力,而且方便快捷。
當然,這也對計算機“看臉識人”的本事提出了很高的要求,如何確認眼前這個人就是身份證上的那位呢?這涉及到模式識別、圖像處理、計算機視覺、統計學習、神經網絡、小波分析、子空間理論和流形學習等眾多學科,還有一系列以“特征臉方法”為代表的識別算法。
這類算法的思路主要是利用一種叫“主成分分析”的數學方法,對二維的人臉圖片進行降維和提取特征,將其轉化為一組向量集,進而轉化為數學運算來處理。
它首先需要準備一些基本的人臉模型(稱為“訓練集”),將其向量化后獲得基本的特征向量。
這些特征向量在返回成圖像時看上去仍像人臉,擁有人臉的基本特征,所以它們也被稱為“特征臉”。
在具體的識別過程中,算法會把需要識別的人臉圖像向量化、數字化,然后從參考用的訓練集數據中找出與當前要識別的人臉數據對應的幾個特征值,構成一組特征向量基,以達到表征原數據的目的。
任何一幅人臉圖象在減去平均人臉后都可投影到子空間,得到一組權值向量,而后計算機就可以直接對比這組向量,確認兩邊圖像中是否是同一個人了。
該方法實際上是計算了此向量和訓練集中每個人的權值向量之間的歐式距離,取最小距離所對應的人臉圖像的身份作為測試人臉圖像的身份。
打個比方,這就像是警察局里指認嫌疑人時所用的“拼臉”方法,它以一個基礎臉型為底,將合適的眼睛、眉毛等五官放上去,最終組成一個與嫌疑人最像的人臉圖。
“刷臉機器”所做的事情也大致如此,只是它的“眼睛”、“眉毛”等五官更加抽象,對比的過程也是通過純數字化的形式進行。
但基礎的特征臉算法比較適合處理靜態的正面圖像,為了應付旅客在拍照時可能出現的不同姿態,研究者又開發出了“彈性圖匹配”的思路。
它把所有人臉圖像看作具有相似的拓撲結構,不注重角度、長度等量化的性質,而側重于變換后的圖形的不變性質。
所以它還有一個形象的名稱,叫“橡皮泥幾何”。
在這種方法中,所有的人臉可以表示成類似的拓撲圖,它的節點是一些基準點(如眼睛,鼻尖等),它的邊是這些基準點之間的連線。
為了識別一張新的人臉,需要從該人臉中找到基準點,提取出一個人臉圖,令這幅圖和現有的彈性束圖之間的相似度最大。
經過匹配后,新的彈性束圖將被提取出來,然后再把它放入“特征臉方法”中進行識別。
在彈性匹配的過程中,網格的形狀會隨著特征點的搜索而不斷變化,因此對姿態的變化也具有一定的自適應性。
其實,在“刷臉進站”出現之前,人臉識別技術已經越來越多出現在我們的生活中,比如很多智能手機里附帶了按“面孔”整理相冊的功能,這就是一項借助“特征臉方法”對照片中出現的人臉進行歸類的算法。
可以想象,在不遠的未來,人臉識別技術會更加融入我們的生活中,讓生活更加便捷。