功能強大的美顏相機是如何使人像變美的?
美顏相機正在被越來越多愛美的朋友們熟悉並使用,無論是旅遊還是逛街,都能看到人們使用美顏相機拍照的身影。那麼美顏相機裡神奇的瘦臉、磨皮、美白等功能是如何實現的呢?美顏一張照片首先要進行人臉檢測,即檢測圖片中是否存在人臉,並定位其位置。這個過程主要的技術難點在於圖片中可能存在光照條件變化、人臉姿態變化、人臉表情變化以及遮擋等問題。
在深度學習理論誕生之前,人們主要使用人工設計好的特徵來訓練檢測器檢測人臉;當深度學習在計算機視覺領域佔據絕對主導地位之後,人們便開始嘗試用深度神經網絡來做人臉檢測。目前,主流的用來訓練人臉檢測模型的方法有兩種,一種是使用通用的目標檢測網絡,如SSD(Single Shot MultiBox Detector,單次多邊框探測器)、YOLO(You Only Look Once,只看一遍圖片就能把目標檢測出來)等;另一種是專門的人臉檢測網絡,如CascadeCNN(Convolutional Neural Network Cascade for FaceDetection,級聯結構的捲積神經網絡)等。
檢測到人臉後,就需要對人臉關鍵點進行定位,即對眉毛、眼睛、鼻子、嘴巴以及臉部輪廓進行定位。傳統的人臉關鍵點定位技術有ASM(Active Shape Model,主動形狀模型),CPR(Cascaded Pose Regression,級聯姿勢回歸)等。
有了定位到人臉的關鍵點以後,便可以對人臉區域進行瘦臉、磨皮、美白等“美顏”操作。瘦臉是通過對像素位置進行偏移來實現對臉部區域的放大、縮小,即由變形前坐標根據變形映射關係,得到變形後坐標。這其中變形映射關係是最關鍵的,不同的映射關係將得到不同的變形效果。平移、縮放、旋轉等對應的都是不同的映射關係,即不同的變換公式。在實際計算過程中,要運用插值的方法來保證變形後的圖像是連續、完整的,這樣圖像才不會失真。
磨皮是使皮膚看起來更加光滑,其主要應用了計算機圖像處理的一些濾波算法,如高斯濾波或雙邊濾波等。
美白是在圖像處理領域中使用三原色來保存圖片的顏色信息,三個值的取值範圍是0~255,越靠近0,圖像就越黑;越靠近255,圖像就越白。
本文由北京印刷學院物理系副教授李蜜丹進行科學性把關。