美顏相機正在被越來越多愛美的朋友們熟悉並使用,無論是旅游還是逛街,都能看到人們使用美顏相機拍照的身影。那麼美顏相機裡神奇的瘦臉、磨皮、美白等功能是如何實現的呢?
2019年4月5日,游人在北京玉淵潭公園內觀看相機裡拍攝的美照。(陳曉根/人民圖片)
(聲明:凡帶有“人民圖片”字樣圖片,系版權圖片,受法律保護,使用(含轉載)需付費,歡迎致電購買:010-65363965或021-63519288。)
美顏一張照片首先要進行人臉檢測,即檢測圖片中是否存在人臉,並定位其位置。這個過程主要的技術難點在於圖片中可能存在光照條件變化、人臉姿態變化、人臉表情變化以及遮擋等問題。
在深度學習理論誕生之前,人們主要使用人工設計好的特征來訓練檢測器檢測人臉﹔當深度學習在計算機視覺領域佔據絕對主導地位之后,人們便開始嘗試用深度神經網絡來做人臉檢測。目前,主流的用來訓練人臉檢測模型的方法有兩種,一種是使用通用的目標檢測網絡,如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,圖像就越白。
本文由北京印刷學院物理系副教授李蜜丹進行科學性把關。