以眼口特徵為基礎來評量人像照片優劣之研究
Evaluate the quality of a portrait by analyzing the eyes and the mouth
徐君慧 呂嘉穀 Chun-Hui Hsu Jia-Guu Leu
臺北大學通訊工程研究所 臺北大學資訊工程系 gina11172002@hotmail.com leu@mail.ntpu.edu.tw
摘要
一般的生活照是以正面的人像照為主,其臉 部特徵資訊幾乎決定了一張人像照片的好壞。有 鑑於此,本研究是以人像照片中的臉部特徵資訊 為導向,再藉由評分機制來進行評分。根據分數 的高低便能判斷該張人像照片的好壞,進而從龐 大數量的照片中,篩選出最佳的人像照片。 首先,我們利用顏色資訊進行人臉偵測,並 找出雙眼及嘴巴等重要的特徵點位置。由於我們 對於一張好的人像照片的認知,人的眼睛必須張 大且正視,嘴巴也必須帶有笑意,因此我們定義 了三個適用於電腦量化分析的特徵指標。這些特 徵指標分別是整個眼睛的高寬比、眼框中心與黑 眼珠中心的偏移量,以及嘴巴的彎曲度,並將其 數值化為介於0 和 1 之間的分數。利用量化後的 分數設計兩套結合眼睛和嘴巴的綜合評分機制。 由實驗結果證實,將系統的兩種評分結果分 別與人工的平均評分比較,皆得到了相關係數為 0.86 的相關性。表示我們系統的兩種評分方式高 度符合人類使用者的主觀判斷。 關鍵字:人像照片、人臉偵測、臉部特徵1. 簡介
我 們 撇 開 一 些 攝 影 技 術 層 面 所 探 討 的 條 件,真正判斷一張人像照片的優劣,其實是根據 欣賞者的角度做出主觀的評論,而欣賞者的注意 力是放在照片人物的臉部表情上。一般來說,以 單獨人像照來看,能稱為好的照片最直觀的就是 能夠清楚地將人物主體表現出來,眼睛睜開正視 前方,嘴巴帶有笑意而揚起適度的微笑曲線,這 樣的照片充滿了魅力的眼神和迷人的微笑,會讓 人第一眼就印象深刻且相信是美麗的人像照片。 (a)好的人像照片 (b)不好的人像照片 圖1-1:人像照片的好壞 本研究希望能評量一張人像照片的好壞,從 人臉偵測、人臉特徵點擷取到最後照片分析,每 一個環節都相當重要且環環相扣,而人臉偵測約 略分成以下四大類[5、15]: (1) 以 知 識 背 景 為 基 礎 法 (Knowledge-based methods):將人臉五官分佈的關係定義成規則, 再藉由這些規則去尋找影像中人臉的位置。[14] (2)以特徵為基礎法(Feature-based methods):要找 出影像中的眼睛、嘴巴等特徵,或是膚色、輪廓、 大小等人臉的結構特徵來偵測臉部。[4、5、6] (3)以樣板為基礎法(Template-based methods):把 輸入的影像與事先建立好的臉部樣板作比較,尋 找出符合臉部樣板的區域即為人臉。[5] (4)以影像為基礎法(Image-based methods):藉由 統計分析及機器學習的方法大量訓練樣本,能針 對人臉及非人臉進行正確分類。 [8、13] 關於臉部特徵點擷取,由先前得到的人臉區 域影像中擷取獨特的特徵資訊。最明顯且重要的 莫過於眼睛和嘴巴,而比較常見的眼睛和嘴巴之 擷取方法為色彩資訊 [4]及可變動樣板[10、11]。 Leyvand 等人在[7]將人臉分成 84 個特徵點 及位於這些特徵點間234 組向量的集合,利用支持向量回歸(Support Vector Regression,SVR)技 術的機器學習方式,讓電腦來辨別人臉的美醜。
2. 人臉偵測與處理
圖2-1:人臉偵測流程圖 2.1 膚色偵測 我們先將原影像RGB 轉換至 YCbCr 色彩空 間,以此做為膚色偵測的色彩系統[9]。這個色彩 空 間 的 好 處 就 是 亮 度 Y(luminance) 和 兩 彩 度 Cb(blueness)、Cr (redness)之間的關聯性很低。接 下來我們任意挑選8 張不重複的人像照片,分別 取這些照片中屬於膚色區域的額頭、鼻子、左臉 頰、右臉頰、下巴等五個點的Cb 和 Cr 值當成膚 色 的 基 本 樣 本(n=40) , 紀 錄 數 值 並 依 照 公 式 (1)(2)(3)分別求出 Cb 和 Cr 的整體平均值所組成 的平均向量μ 以及共變異數矩陣 Σ,再來代入公 式(4)形成以機率為特性的混合高斯膚色模型來 建立對膚色偵測的機率函數[9][16],其中的 X 為 影像像素的(Cb,Cr)。膚色高斯模型公式如下: Cb= n Cb 1 i∑
= n i , n Cr Cr 1 i∑
= = n i (1) ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ = Cr Cb μ , Χi= ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ i i Cr Cb (2) Σ =∑
(
)(
)
= − − n i T 1 i i X X n 1 μ μ (3) P(X) =( )
(
) (
)
⎥⎦ ⎤ ⎢⎣ ⎡− − Σ − Σ − μ μ π i 1 i 2 1 2 X X 1 exp 2 1 t (4) (a)原始影像 (b)使用後膚色區域為亮區 圖 2-2:影像代入混合高斯膚色模型 以高斯混合模型和適當的門檻值(threshold) 擷取出膚色區塊後,得到一個二值化的影像,我 們發現此影像並非十分平滑且會有些許雜訊,所 以再對此二值化影像做斷開(open)運算。 2.2 膚色最大區塊 Face Mask 為了避免有些照片經斷開(open)運算處理, 剩餘的影像仍無法形成單一完整區塊,這時我們 必須將經由形態學運算後的二值化影像再運用 連通區域標記(connected component labeling)之技術分割出影像二值化為1 的最大區塊當做最有 可能的Face Mask 區域。由於位於膚色區域內的 眼睛、嘴巴為黑,造成整張人臉呈現空洞狀態, 在此我們用影像邏輯運算中的 NOT 將剛剛顯示 的二值影像結果反白,針對此影像再做一次連通 區域標記,標記區域中值為 1 的最大區塊設為 0,如此便能把剛剛影像中屬於黑色部份的眼 睛、嘴巴取出,把眼睛和嘴巴造成的空洞給補起 來,獲得較完整的人臉區域Face Mask。 圖2-3:取出膚色最大區域 Face Mask 過程 圖2-4:將 Face Mask 套入原彩色圖結果 2.3 重新定義 Face Mask 區域 膚色偵測的結果並非使得最大的膚色區塊 為純粹的人臉所在,因此我們將縮小影像的搜尋 範圍,只針對感興趣的影像資訊進行處理。在此 我們任意挑選 20 張不同人臉的高寬比並統計出 人臉的高寬比近似1.3:1,從膚色偵測所得到最 大膚色區塊Face Mask 找出人臉的寬度,再根據 此高寬比的比例來找尋人臉的高度,長方形的邊 框框出人臉,此為重新定義的Face Mask 區域。 圖2-5:原搜尋框與重新定義 Face Mask 區域範圍 OR
3. 眼睛與嘴巴特徵點擷取與分析
在本章節中,我們將詳細說明如何透過眼睛 和嘴巴特徵點發展評分機制,並藉由評分機制產 生的分數,進行人像照片優劣的探討。 圖3-1:系統流程圖 3.1 眼睛偵測與分析 首先建立兩種不同的Eye Maps,第一種是採 用彩度的EyeMapC 來加強 Cb 值、減弱 Cr 值。 第二種是採用亮度的 EyeMapL,在 Y 影像中, 我們藉由形態學上的運算子膨脹(dilation)和侵蝕 (erosion)來強調臉上的明亮元素與黑暗元素。其 中我們自訂一個大小類似眼睛形狀的結構元 素,而⊕及Θ分別代表對灰階影像做膨脹與侵 蝕。最終由這兩種組合而成Eye Map[4],經由影 像運算建立Eye Mask 找到可能為眼睛的範圍。 EyeMapC{
( )
Cb(
1 Cr) (
Cb/Cr)
}
3 1 2 + − 2 + = (5) EyeMapL=( )
( )
( )
( )
01 . 0 , , , , + Θ Υ ⊕ Υ y x g y x y x g y x σ σ (6)Eye Map = (EyeMapC) × (EyeMapL) (7)
圖3-2:Eye Map 每階段的變化 為了避免不穩定的結果發生,我們自訂一個 眼睛區域搜尋框;由於Eye Mask 必位於人臉的 上半部,且正常眼部的垂直位置介於額頭下方和 鼻頭上方,眼部的水平位置比臉寬窄一些。我們 針對人臉方框的上下左右邊界進行眼睛區域搜 尋框的參數化。 X0 = Left + Width/15 (8) X1 = Right – Width/15
Y0 = Top + Height×9/17 – Height/3 Y1 = Top + Height×9/17 圖3-3:眼睛的搜尋框範圍 首先我們分別記錄搜尋框內二值化為1 的區 塊像素個數 N、像素位置(Χ ,i Υ ),依(9)式計算i 出各區塊中心點(Χ ,g Υ )。 g g Χ
∑
= Χ Ν = n i i 1 1 ,Υg∑
= Υ Ν = n i i 1 1 (9) 再把眼睛可能區塊的中心點兩兩一組做判斷: 1. 眼睛搜尋框內沒有或是只有一個中心點,將 判定此影像找不到眼睛,此為閉眼的可疑影像。2. 眼睛搜尋框內剛好有兩個中心點(Χ ,g1 Υ )g1 和(Χ ,g2 Υ ),g2 Υ 與g1 Υ 此兩重心的垂直方向差g2 必須小於或等於眼睛搜尋框高度的 1/8 個像素 值,Χ 與g1 Χ 此兩重心的水平方向差必須大於g2 臉寬的3/11 個像素值,符合的判定影像為眼睛。 3. 眼睛搜尋框內有超過兩個以上的中心點,把 這些中心點Υ 座標點兩兩相減並記錄其值,去g 掉兩者間相距太大,保留兩者間相距最小的點, 再判斷是否符合第2 項規則,符合的為眼睛。 接著分別對左右眼進行膨脹運算,如此便可 放大左右眼區塊以至於能夠完全包覆整個眼睛 的Eye Mask,以利後續動作的處理。 圖3-4:找出左眼和右眼 Eye Mask 的過程 3.2 眼睛 E 區域及 I 區域特徵點擷取 E 區域(Eye)是包含眼睛的眼白和眼黑,在這 邊最主要是要找出E 區域的上下左右 4 個特徵點 位置以及整個眼框的中心位置,左右兩隻眼睛的 E 區域共有 10 個特徵點。I 區域(Iris)是指較暗的 黑眼珠區域,我們要找出I 區域的中心位置並標 示出來,左右兩隻眼睛的I 區域共有 2 個特徵點。 圖3-5:E 區域及 I 區域特徵點示意圖 取出臉部區域的Y、Cb、Cr 影像如圖 3-6, 觀察到任意一個人在 Y 影像中眼睛區域有很明 顯的黑白分明,在 Cb 影像中其眼睛區域的色調 值相對於皮膚顏色來說高出許多,而在 Cr 影像 中其眼睛區域的色調值卻是臉部區域最低的。 圖3-6:臉部區域的 Y、Cb、Cr 影像 1. 找 I 區域並標示其特徵點 根據 Y、Cb、Cr 影像顯示的特性進行影像 數學運算,利用Cb 影像除以 Cr 影像可區別眼睛 和膚色部份,此時眼睛區域呈現亮白色,我們必 須減弱眼白部分的亮度才能順利取出黑眼珠的 部份,取出黑眼珠後的影像再執行線性轉換,將 影像元素尺度調整成可顯示的數值,最小值映射 成 0,最大值映射成 1。公式中的分母額外再加 上一個常數 0.1 的目的是預防分母部份為 0,使 得結果達到整個眼睛部份特別明亮,公式如下: C
( )
x,y =( )
( )
1 . 0 , , + y x C y x C r b (10) I( )
x,y = C(x,y)−Υ(x,y) (11) (a)公式 10 結果 (b)公式 11 結果(c)將(b)套入左眼 EyeMask 圖3-7:I 區域每階段的變化 運算完的影像再套入左眼Eye Mask,接下來 做二值化、4 連通區域標記、形態學運算及計算 左眼I 區域內二值化為 1 的中心點 Ig(x,y),同樣 利用以上方法亦可找出右眼的I 區域及特徵點。 圖3-8:左右眼 I 區域中心位置 2. 找 E 區域並標示特徵點 我們發現公式(10)的影像結果中,黑眼珠部 份呈現較暗的顏色,因此我們必須搭配公式(11) 的影像結果加強黑眼珠的亮度,分別給予適當比 例能夠使眼黑與眼白的亮度呈現一致,明顯區別 整個眼睛顏色和周圍膚色的差異。公式如下: dilation 套原圖 套原圖 dilationE
( )
x,y =( 9×C( )
x,y +1×I( )
x,y ) / 10 (12)
(a)公式 12 的結果 (b)套入左眼 Eye Mask 圖3-9:E 區域每階段的變化 我們以左眼的E 區域找法來說明,套入左眼 Eye Mask 並定義一個小的結構元素是符合眼睛 細長型的構造,以此對灰階影像做膨脹的動作, 影像會輕微模糊並稍微放大E 區域的特徵,如此 便能強化眼睛內眼角不明顯的地方。再做二值化 及4 連通的區域標記找出所有連接區域並紀錄下 來,只保留最大區域即為E 區域(Eye)所在位置。 接著找整個眼框的中心點Eg(x,y);而 E 區域左右 兩邊的特徵點位置就是把最邊界二值化為1 的點 取出,EL(x,y)和 ER(x,y)當作 E 區域左右特徵點的 座標;再來我們是利用E 區域內每個水平方向往 上、往下延伸碰到二值化為1 的極端點,找出兩 個上下的一對座標值所在的垂直方向擁有差異 最大的那組,ET(x,y)和 EB(x,y)當作 E 區域上下特 徵點的座標,同樣利用以上的方法亦可找出右眼 的E 區域及特徵點。 圖3-10:左右眼 E 區域中心位置及上下左右特徵點 3.3 眼睛特徵點距離關係與評分 1. 高寬比 由人像照片中找到眼睛E 區域的上下左右 4 個特徵點的座標,計算出上特徵點ET(x,y)和下特 徵點 EB(x,y)間的距離 d1,以及左特徵點 EL(x,y) 和右特徵點 ER(x,y)間的距離 d2,而高寬比值 α 是將 d1值除以 d2值,藉此數值可以反映出一個 人眼睛張開的大小,計算方式如下: d1 =
(
xET −xEB) (
2 + yET −yEB)
2 (13) d2 =(
) (
E E)
2 2 E EL x R y L y R x − + − α = d1 / d2 圖3-11:E 區域特徵點間距離的示意圖 2. 偏移量 紀錄眼睛 E 區域的中心位置坐標 Eg(x,y)和 眼睛I 區域的中心位置座標 Ig(x,y),計算出此兩 特徵點的距離 d3,而偏移量值 β 是將 d3值除以 整個 E 區域寬度 d2值,也就是眼睛 E 區域和 I 區域它們的中心點距離相對於整個 E 區域的寬 度值,藉此數值可以觀察照片中人物的眼睛是否 正視或斜視,計算方式如下: d3=(
xEg −xIg) (
2 + yEg −yIg)
2 (14) β= d3 / d2 圖3-12:E 區域與 I 區域中心點間距離的示意圖 以高寬比來說,我們需要所有受測影像的正 常狀態下眼睛特徵點的高寬比值取平均,此平均 值 αnormal為 0.3,也就是說將任意一張影像中眼 睛特徵點的高寬比值相對於正常眼狀態下的高 寬比值 0.3,若是拍攝不好瞇眼的照片,其比較 結果的值必定小於1,所得到的結果值為指標分 數,若比較結果的值等於或大於1 時,則設定其 指標分數為1,讓指標分數值都分佈在 0 至 1 之 間;為了讓指標分數間差異大,我們將上述求得 的指標分數平方作為最終的指標分數Scoreα,此 分數可看出一個人眼睛張開的大小。n 為受測影 像中屬於正常眼睛的數量,αi為某張影像E 區域 高寬比: αnormal =∑
= ⋅ n i i n 1 1 α = 0.3 (15) Scoresize = ⎩ ⎨ ⎧ 2 normal i/ ) ( 1 α α otherwise ifαi/αnornal >1 以偏移量來說,我們需要所有受測影像的正 常狀態下眼睛特徵點的偏移量距離,此平均值βnormal為 0.05,左眼正常狀況下,眼睛 I 區域的 中心位置在眼睛E 區域的中心位置的右側,屬於 正偏移量且兩特徵點相距0.05;而右眼正常狀況 下,眼睛I 區域的中心位置在眼睛 E 區域的中心 位置的左側,屬於正偏移量且兩特徵點相距同樣 是0.05,根據此分析我們得知左右眼的正常偏移 量的方向是相反的,因此我們必須先判斷眼睛 I 區域及眼睛 E 區域的中心位置是屬於正偏移或 負偏移,再來計算與標準狀態下的偏移量平均值 βnormal 相差多少,計算後的偏移量取絕對值再乘 以4 倍,最後用 1 去扣除該結果,結果的值必定 大於0,所得到的結果值為指標分數,若比較結 果的值等於或小於 0 時,則設定其指標分數為 0,讓指標分數值都分佈在 0 至 1 之間,此分數 可看出一個人眼睛是否正視前方。n 為受測影像 中屬於正常眼睛的數量,βi為某張影像的偏移量。 圖3-13:正常狀況左右兩眼的偏移量 βnormal =
∑
= ⋅ n i i n 1 1 β = 0.05 (16) β2 = ⎩ ⎨ ⎧ + − − ) ( normal normal β β β β 負偏移 正偏移 if if Scorefront = ⎩ ⎨ ⎧ × − 4 1 0 2 β otherwise if 1− β2×4 <0 將上述兩項指標的分數相乘積為單一左眼Eye ScoreL分數,單一右眼Eye ScoreR分數同理
可得,雙眼的綜合指標分數為左眼綜合指標分數 和右眼綜合指標分數相加總取平均,根據雙眼的 綜合指標分數,可以決定人像照片中眼睛所拍攝 的好壞與否。
Eye ScoreL = Scoresize * Scorefront,Eye ScoreR同理可得 (17)
Eye Score =
(
EyeScoreL EyeScoreR)
2 1 + ⋅ 3.4 嘴巴偵測與分析 嘴巴部分的色彩有著很強烈的紅色元素及 很少的藍色元素,運用此特性我們可以強調 Cr 影像降低Cb 影像的方式建立 Mouth Map 將嘴巴 區域強化出來[4]。公式如下,其中 FG 為擷取的 臉部區域位置,n 為該臉部位置的像素個數: Mouth Map 2 2 2 ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ ⋅ − ⋅ = b r r r C C C C η (18) 其中∑
∑
∈ ∈ ⋅ = FG y x b r FG y x r y x C y x C n y x C n ) , ( ) , ( 2 ) , ( / ) , ( 1 ) , ( 1 95 . 0 η 接著我們自訂一個符合嘴型的結構元素做膨脹 運算得以放大嘴巴區域,再做二值化及型態學處 理,最後結果為涵蓋整個嘴的Mouth Mask。圖3-14:Mouth Map 各階段與 Mouth Mask 結果
由於Mouth Mask 必位於人臉的下半部,且
嘴巴的垂直位置在鼻頭下方,水平位置比臉寬窄 一些。嘴巴區域搜尋框的參數化如下:
X2 = Left + Width/5 (19)
X3 = Right – Width/5
Y2 = Top + Height×16/17 – Height×2/5 Y3 = Top + Height×16/17 圖3-15:嘴巴的搜尋框範圍 3.5 判斷開閉並找其嘴巴曲線 當我們開懷大笑到張開嘴巴露出牙齒時,下 嘴唇上緣曲線的上揚弧度較明顯,是判別開口時 笑容判別的重要依據;當我們嘴巴閉合時,此時 嘴巴內的區域則是由上嘴唇下緣曲線與下嘴唇 上緣曲線合成一條閉合曲線,此條閉合曲線呈現 上揚或是下凹的弧度,是判別開口時笑容判別的 重要依據;因此我們必須先判斷嘴巴的開閉狀態 進而取得曲線作後續處理。
當嘴巴區域被準確定位並擷取包含上下兩 片嘴唇影像後,接下來我們利用Y 影像及 Cr 影 像分別在閉口和開口時的差別,根據公式(20)能 將嘴巴開閉的差異明顯的強調出來。 Open
( )
x,y =( )
( )
, 0.01 , + Υ y x C y x r (20) 1. 擷取閉口時雙唇之閉合線 Y 影像在閉口時呈現上下嘴唇亮度值較 亮,中間的閉合線偏暗的特性,設計一個濾波器 專門測嘴巴閉合曲線的運算子,以Y 影像去做運 算且運算完後捨棄掉負值再執行線性轉換,將影 像元素尺度調整成最小為0 最大值為 1 的灰階影 像,使得影像的垂直方向對比明顯;雖然閉合線 並非完全水平,但是它的曲度相當小,故9×9 遮 罩即可突顯閉合曲線在垂直方向上的亮度變化。 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 圖3-16:擷取閉合曲線的濾波遮罩 嘴 巴 閉 合 曲 線 會 因 為 嘴 巴 周 圍 肌 肉 的 動 作,而在兩端嘴角附近產生陰影,將上述步驟所 產生影像再做灰階的擴張,讓影像中亮的部份更 亮。影像二值化後再使用閉合運算,其目的是獲 取更完整的嘴巴閉合曲線。最後作細線化運算。 (a)原圖嘴巴為閉口(b) close 後之影像 (c)閉合線之影像 圖3-17:擷取閉合曲線的過程 2. 擷取張口時下唇之上緣 我們想要取出下嘴唇上緣曲線可利用張口 有露齒狀況,下嘴唇屬於紅色和牙齒屬於白色的 顏色做比對;根據 Cr 影像執行線性轉換後,在 閉口時上下嘴唇以及中間閉合曲線的亮度值皆 較亮,而開口時因為嘴巴內部有牙齒,顯得中間 區域是呈現偏向暗黑色的特性,設計一個濾波器 專門測嘴巴張開時下嘴唇上緣曲線的運算子,以 Cr 影像去做運算且運算完後捨棄掉負值再執行 線性轉換,如此便可將強調下嘴唇的上緣曲線。 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 圖3-18:擷取下嘴唇上緣曲線的濾波遮罩 下嘴唇的上緣曲線會因為張口大笑時的上 揚弧度過大,導致在曲線兩端嘴角附近產生不明 顯的亮點,我們將上述步驟所產生影像再做一個 較窄的灰階的擴張,讓影像中亮的部份更亮。最 後作細線化運算。 (a) 原圖嘴巴為張口(b) 下嘴唇上緣曲線(c) 上緣線之影 像線圖3-19:擷取下嘴唇上緣曲線的過程 3.6 嘴巴曲線特徵點擷取 針對此條曲線要找出其兩個極端點 LL(x,y) 和LR(x,y)、連線的中點位置 M(x,y)及此線段的中 垂線交於嘴巴曲線的LN(x,y)特徵點座標。其中可 藉由嘴角左右2 個特徵點之距離及連線中點的特 徵點至嘴巴曲線上特徵點之距離所產生的比 例,反映出嘴型變化的彎曲程度。 圖3-20:嘴巴曲線特徵點示意圖 3.7 嘴巴特徵點距離關係與評分 計算各特徵點間的相對距離關係並組成嘴 巴的彎曲度特徵值,利用此特徵值來當做判別人物照片中嘴巴的好壞指標依據。當特徵點M(x,y) 在 LN(x,y)之上方,曲線為往下凹成 V 字形,用 正號代表;當特徵點 M(x,y)在 LN(x,y)之下方, 曲線為往上凸成 Λ 字形,用負號代表,如此一來 可以用正負號辨識嘴巴的輪廓為向上或向下彎 曲。再來使用歐氏距離計算出 M(x,y)和 LN(x,y) 兩特徵點的距離 d4,以及曲線兩端點 LL(x,y)和
LR(x,y)的距離 d5,其中d4值包含M(x,y)和 LN(x,y)
間的距離長度值及曲度上下的正負號值,而彎曲 度值 γ 是將 d4值除以代表嘴巴寬度的 d5值,以 嘴巴曲線的高度與嘴的寬度之相對比例來當作 嘴巴分類的彎曲度特徵向量值,計算方式如下: d4 =
(
) (
)
(
) (
)
⎪⎩ ⎪ ⎨ ⎧ − + − − − + − Μ Μ 2 L M 2 L 2 L M 2 L N N N N y y x x y y x x N N L M L M y y y y > < if if (21) d5 =(
) (
)
2 L L 2 L LL x R y L y R x − + − γ= d4 / d5 圖3-21:嘴巴曲線特徵點與距離示意圖 我們從所有受測影像的各種變化發現嘴巴 曲線呈現最好的狀態下,嘴巴特徵點的γ 值取平 均是介於 0.03 和 0.09 之間,則設定其指標分數 為1。若 γ 值超過 0.09 的照片,代表照片中人物 的嘴巴曲度過大,在視覺感官上並非最完美,指 標分數應比最好狀態下的分數略低一點;γ 值介 於0 和 0.03 之間的照片,代表照片中人物的嘴巴 曲度小於最好的狀態,指標分數應比最好狀態下 的分數低;而γ 值低於 0 的照片,代表照片中人 物的嘴巴曲度的方向向下,具備不好的照片所擁 有的特性,指標分數應比最好狀態下的分數低得 多。針對以上三種狀況,我們將該張照片的γ 值 與最好的狀態下的γ 值相減,相減後的值取絕對 值再分別乘以3 倍、3 倍和 9 倍,最後用 1 去扣 除該結果,所得到的結果值為指標分數。γi為某 張影像嘴巴曲線彎曲度: Mouth Score= ⎪ ⎪ ⎩ ⎪ ⎪ ⎨ ⎧ × − − × − − × − − 6 03 . 0 1 3 03 . 0 1 3 09 . 0 1 1 i i i γ γ γ 0 03 . 0 0 09 . 0 09 . 0 03 . 0 ≤ < < >≤ ≤ i i i i if γ γ γ γ (22)3.8 結合眼睛和嘴巴的評分機制
最後,透過雙眼綜合分數以及嘴巴綜合分數 來完成兩套綜合的評分機制;第一套評分機制是 採用雙眼綜合分數與嘴巴分數相乘所得的綜合 分數,當判斷眼睛和嘴巴好壞的其中一項條件不 好時,即給予否定,屬於較強烈的評分方式。Total Score1=EyeScore×Mouth Score (23)
第二套是將雙眼綜合分數與嘴巴分數分別乘上
權重1/2 再相加所得的綜合分數,若測試影像在
系統的單項評分分數太低,最後的總分數也只會 扣一些分數,屬於較緩和的評分方式,式子如下:
Total Score2= Mouth Score
2 1 Score Eye 2 1× + × (24)
4. 實驗結果與討論
4.1. 實驗設計與結果 (一)系統中兩種評分方式 第一套是將眼睛分數與嘴巴分數相乘所得 的綜合分數,第二套是將眼睛分數與嘴巴分數分 別乘上權重1/2 再相加所得的綜合分數,以上兩 套機制算出的綜合分數皆介於0 至 1 之間,可作 為判斷照片好壞的綜合評分分數。由於影響眼睛 分數的變因有兩個,包括眼睛的高寬比和眼睛的 偏移量;影響嘴巴分數的變因有一個,也就是這 三項因素都會對實驗結果造成影響,因此最後我 們從6 位受測者在眼睛和嘴巴的變化影像中挑選 了三項因素都呈現良好狀態,以及三項因素中的 其中一項因素呈現不好的狀態,還有三項因素都 呈現不好的狀態共分成五種狀況的全臉影像來 做實驗。 (二)人工評分方式 我們設計了關於主觀認知照片好壞程度的 問卷,並將問卷給予9 位評分者來填寫。我們要 求評分者根據他們對於照片中人物的眼睛和嘴 巴特徵點,針對人像照片的好壞程度加以評分, 一張照片只可以有一個分數,評分的方式以範圍 1 到 5 分成五個等級,由低至高排列為:1(非常不好)、2(不好)、3(普通)、4(好)、5(非常好)。接 著算出每張照片的平均分數至小數點以下的兩 位,最後所得分數就是這 30 張影像的人工評分 的平均分數。 (三)系統的兩種評分方式與人工評分間的相關係 數及X-Y 散佈圖 在這次實驗中我們偵測6 個人,每一個人有 5 張眼睛和嘴巴不同狀況的測試照片,總共 30 張影像。下面的表格4-8~4-12 是實驗結果的彙整 表,列出了各種評分方式對人像照片所進行的評 分結果,而人工評分那一欄是取所有評分者給予 分數的平均。表格 4-13 為各評分方法間的相關 係數及X-Y 散佈圖,若圖中的點群聚的部份是呈 現東北西南走向,則彼此的相關性越高。 圖4-1:重新定位 Face Mask 下的眼睛、嘴巴搜尋框 表4-1:正常眼狀態下各特徵點定位與眼睛分數 表4-2:斜視眼狀態下各特徵點定位與眼睛分數 表4-3:瞇眼狀態下各特徵點定位與眼睛分數
表4-4:正常狀態下各特徵點定位與嘴巴分數
表4-5:微笑嘴狀態下各特徵點定位與嘴巴分數
表4-6:大笑嘴狀態下各特徵點定位與嘴巴分數
表4-8:眼睛和嘴巴都優的狀態下三種評分分數 表4-9:眼睛不正常(斜眼)的狀態下三種評分分數 表4-10:眼睛不正常(瞇眼)的狀態下三種評分分數 表4-11:嘴巴不正常的狀態下三種評分分數 表4-12:眼睛和嘴巴皆不正常的狀態下三種評分分數 表4-13:各評分方法間的相關係數及 X-Y 散佈圖
4.2. 實驗分析與討論 關於評分方面,人臉長相的特質是影響評分 結果的重要因子;例如影像中的人物天生眼睛就 較小較細長,而他在正常眼的狀況下所得的評分 不會太高;有些人的嘴巴在無表情正常情況下呈 現略為下凹嘴型,而他在正常嘴的狀況下所得的 評分會較低。在表情綜合評分方面,第一套評分 機制中可看出,測試影像若在系統的單項評分分 數太低,即給予否定最後加入整體綜合評分時會 大大降低總分數,屬於較強烈的評分方式;而第 二套評分機制中可看出,測試影像若在系統的單 項評分分數太低,最後加入整體綜合評分的總分 數也只會扣一些分數,屬於較緩和的評分方式。 我 們 對 系 統 評 分 和 人 工 評 分 做 相 依 性 實 驗,將系統評分機制所算出來的分數分別和人工 評分進行比對,並算出它們之間的相關係數,由 實驗結果可以得出,無論是系統的第一套相乘方 法或是第二套相加方法,皆取得了與人工評分有 相關係數為0.86 的相關性。
5. 結論
在本篇論文中,我們主要是提出應用影像處 理技術與顏色資訊,擷取人臉區域中眼睛E 區域 及I 區域部份的各特徵點、閉嘴時的嘴巴閉合曲 線部份的各特徵點、張嘴時的下嘴唇上緣線部分 的各特徵點,透過影像中各特徵參數量化的方 式,得到眼睛的高寬比和偏移量以及嘴巴的彎曲 度,再針對眼睛的高寬比和偏移量以及嘴巴的彎 曲度,設計綜合評分機制進行以眼口特徵為基 礎,來評量人像照片優劣的研究。整體進行的工 作項目有人臉偵測、眼睛和嘴巴定位、特徵點的 擷取、兩種評分機制及人像影像實驗結果顯示。 最後,將系統的兩種評分結果與人工評量的方式 做比較,實驗結果顯示高達86%的相關性,可以 驗證我們的系統對於一張人像照片做出優劣判 斷,大致與人類主觀的判斷無異。6. 參考文獻
[1] G. Donato, M. S. Bartlett, J. C. Hager, P. Ekman, and T. J. Sejnowski. “ Classifying facial actions”. IEEE Transaction on Pattern Analysis and Machine Intelligence, 21(10) : 974–989 ,October 1999.
[2] B. Fasel and J. Luettin, “Automatic facial expression analysis : a survey,” Pattern Recognition ,Vol. 36, pp. 259-275, 2003.
[3] Rafael C. Gonzalez, Richard E. Woods ”Digital Image Processing second edition”, Prentice-Hall, 2002. [4] R.L. Hsu, M. Abdel-Mottaleb, A.K. Jain , ” Face detection in color images “, IEEE Trans. Pattern Analysis and Machine Intelligence, vol.24, no.5, pp.696 -706, May 2002.
[5] E. Hjelmas, and B. K. Low, “Faces Detection: A Survey”,Computer Vision and Image Understanding, vol.83, pp.236-274, Apr.2001.
[6] C. H. Lin and K. C. Fan, “Triangle-based approach to the detection of human face,”Pattern Recognition, vol. 34, no. 6, pp. 1271-1284, June 2001.
[7] T. Leyvand,D. Cohen-Or, G. Dror, D. Lischinski,“Data-Driven Enhancement of Facial Attractiveness.”SIGGRAPH, 2008.
[8] H. Rowley, S. Baluja, and T. Kanade, “Neural Network-Based Face Detection,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 20, no. 1, pp. 23-38, Jan. 1998.
[9] F. Y. Shih, S. Cheng, C. Chuang and P. Wang, “Extracting faces and facial features from color images”. Pattern Recognition and Artificial Intelligence, vol. 22, no. 3, pp. 515–534 ,May 2008.
[10] Y. Tian, T. Kanade, and J. F.Chon “Dual-state parametric eye tracking.” In Proceedings of Conference on Computer Vision and Pattern Recognition, 2000. [11] Y. L. Tian, T. Kanade, and J. F. Cohn, “Multi-State Based Facial Feature Tracking and Detection” Robotics Institute, Carnegie Mellon University, August,1999 [12] Y. L. Tian, T. Kanade, and J. F. Cohn, “Recognizing Action Units for Facial Expression Analysis,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol.23, no.2, 2001
[13] P. Viola and M. J. Jones, “Rapid Object Detection using a Boosted Cascade of Simple Features,” in Proceedings of the IEEE Computer Society International Conference on Computer Vision and Pattern Recognition, vol.1, pp.511-518, Dec. 2001. [14] G. Yang and T. S. Huang, “Human Face Detection in Complex Background”, Pattern Recognition, vol. 27, no. 1, pp. 53-63, 1994.
[15] M.H. Yang, D.J. Kriegman and N. Ahuja, ” Detecting Faces in Images: A Survey”, IEEE Trans. Pattern Analysis and Machine Intelligence vol.24, no.1, pp.34-58, Jan.2002.
[16] M. H. Yang and N. Ahuja, “Gaussian Mixture Model for Human Skin Color and Its Application in Image and Video Databases,” Proc. SPIE: Storage and Retrieval for Image and Video Databases VII, vol. 3656, pp. 458-466, 1999.