在這篇文章中,我們將以簡單明了的方式介紹電腦辨識人臉的原理和過程。
人臉辨識的基本原理是什麼?
你小時候可能至少玩過一次拼臉遊戲。在這個遊戲中,你先選擇一個臉型,然後依序選擇髮型、眼睛、鼻子和嘴巴,並將它們拼到臉上。透過不斷更換不同的髮型、眼睛、鼻子和嘴巴,你可以拼出自己想要的臉。電腦辨識和比較人臉的方式與此類似。電腦辨識並儲存臉部特徵;當輸入一張新的照片時,它會將照片與已儲存的特徵進行比較,從而確定照片中的人是誰。
近期一個易於使用的臉部辨識技術實例是臉部辨識應用程式(App)。這些應用程式會預先從名人照片中提取並儲存關鍵特徵,例如臉部輪廓、眼睛、鼻子和嘴巴。之後,當相機拍攝到人臉時,該應用程式會以相同的方式提取臉部特徵,並將其與儲存的名人臉部特徵進行比較,從而識別並顯示最匹配的人臉。
電腦如何辨識人臉?
現在,我們來考察一下電腦的人臉辨識過程。人臉辨識主要包括四個階段:輸入、人臉偵測、特徵提取和比對。
在輸入階段,照片或影片中的單幀影像透過輸入裝置傳輸到電腦。通常,輸入裝置的解析度越高,幀速率(FPS)越高,人臉辨識的準確度就越高。這個原理類似於視力好的人能夠更準確地辨識遠處的人臉。
在人臉偵測階段,系統首先檢查輸入的照片或影片中是否存在人臉。為此,它會辨識人臉的輪廓和關鍵特徵,例如眼睛、鼻子和嘴巴。雖然目前有多種人臉偵測技術被使用,但本文將重點放在具有代表性的類哈爾偵測方法。
類哈爾檢測方法利用哈爾小波。小波是一種由黑白區域組成的簡單矩形圖案。這些黑白區域用於識別影像中亮度差異顯著的區域。透過在整個輸入影像或影片上套用不同大小和形狀的小波,並僅保留黑白區域亮度差異顯著的區域,該系統可以有效地偵測人臉輪廓和關鍵臉部特徵,例如眼睛、鼻子、嘴巴和眉毛。此外,該過程還可以提取臉部特徵的位置資訊。
例如,在提取眼睛資訊時,小波的黑色區域對應於相對較暗的區域(例如瞳孔),而白色區域對應於較亮的區域(例如皮膚)。透過利用這些亮度差異,可以有效地偵測眼睛的位置和形狀。
如何提取臉部特徵?
人臉偵測階段完成後,系統會決定是否進入特徵提取階段。
在特徵提取階段,提取臉部特徵是為了充分利用人臉偵測階段辨識出的臉部組件。與人臉偵測階段不同,此過程包含一個預處理步驟。由於每張照片或影片中人臉的旋轉角度、大小和光照強度各不相同,因此需要進行歸一化處理,盡可能地使其標準化。此外,彩色照片或影片還可以根據需要轉換為黑白影像。
例如,首先將原始照片轉換為灰階圖,然後僅裁剪人臉區域並將其調整為統一大小,並進行直方圖均衡化以校正亮度。利用在人臉偵測階段獲得的臉部組件位置訊息,從經過此預處理的照片或影片中提取人臉特徵。
提取出的臉部特徵是如何使用的?
在比較階段,提取出的這些面部成分的資訊要么儲存在資料庫(DB)中,要么與現有的面部數據進行比較,以確定最佳匹配。
我們已經了解了電腦人臉辨識的流程。就在幾十年前,電腦能夠區分人臉的想法似乎還遙不可及。然而,隨著電腦硬體、軟體和人工智慧技術的快速發展,人臉辨識技術如今已廣泛應用於各個領域,包括智慧型手機、筆記型電腦、門禁系統、金融服務和機場安檢等。如今,電腦辨識人臉的科技不再是遙不可及的未來,而是已經自然而然地融入了我們的日常生活。