• 沒有找到結果。

中 華 大 學

N/A
N/A
Protected

Academic year: 2022

Share "中 華 大 學"

Copied!
57
0
0

加載中.... (立即查看全文)

全文

(1)

中 華 大 學 碩 士 論 文

基於小腦神經與模糊方法之情緒辨識研究 A Research on Facial Emotion Recongition by

CMAC and Fuzzy approach

系 所 別: 電機工程學系碩士班 學號姓名:

M09601020 劉學燕 指導教授: 駱 樂 博士

中 華 民 國 九十九 年 七 月

(2)

摘 要

近年來有許多專家學者進行臉部情緒辨識這個研究議題,人們不斷嘗試將情緒融 入生活產品中。因此本論文主要是建立一套易實現於硬體的表情辨識系統,此研究主 要分成三大部分,分別為人臉偵測(face detection)、特徵擷取(feature extraction)以及表 情辨識(facial expression classification)三大部分。人臉偵測部份,主要利用膚色偵測等 影像處理技術將臉部區塊,從複雜背景中取出。而在特徵擷取部份,主要利用HSV、

邊緣偵測、眼睛偵測等影像處理技術從臉部區塊中取出眉毛、眼睛、嘴巴等特徵點,

再根據心理學家所描述的表情特徵計算出特徵值,作為判斷表情的依據。

表 情 分 類 辨 識 部 份 , 則 是 將 資 料 庫 透 過 腦 模 型 控 制 器 (Cerebellar Model Articulation Controller,CMAC)訓練得到各表情特徵值的範圍與群聚中心,藉由此資 訊來建立表情特徵模糊集合。當輸入待測表情時,計算各特徵的表情程度值。根據表 情程度值為依據透過表情辨識機制辨別表情,判斷待測表情是屬於以下何種表情:高 興、悲傷、驚訝、生氣、及害怕。

本論文採用JAFFE(Japanese Female Facial Expression)表情影像資料庫做為資料 庫,並藉由此資料庫來測是本系統表情辨識的成功率其辨識率達到82.75%。

關鍵字:小腦模型控制器、情緒辨識、表情辨識

(3)

ABSTRACT

In recent years, many experts and scholars have studied the topic of facial emotion recognition, People keep trying to integrate the function of emotion into the product.

Therefore, this thesis is to establish a easy way of constructing emotion recognition systems for possible implemented in hardware. This study is divided into three parts, human face detection, feature extraction, and facial expression classification of three parts.

In face detection process, we mainly used the skill of skin color detection and other image processing technology to extract the face region from the complex background. In the features extraction process, we then use some image processing techniques to extract the eyebrows, eyes, mouth and other feature points from face region. Then according to the description of these features from psychologists ,the feature characteristic value are calculated out for judging facial expressions.

In recognition process, the database is sent into CMAC for training the range of values and cluster centers. Accordingly, the emotion recognition system can identify the following expressions: happy, sad, surprised, angry, and afraid.

The JAFFE (Japanese Female Facial Expression) database is adopted in this thesis. The experiments have shown that the successful rate of emotion recognition is attained to 82.75%.

Keywords: CMAC, Emotion Recognition, Facial expression recognition

(4)

誌謝

首先感謝指導教授 駱 樂老師在這段期間孜孜不倦的指導,使我能在研究方法,

學習態度及為人處事上受益良多。每當學生遭遇瓶頸時能給予適當的意見,以及論文 內容細心校稿、逐字斧正,使得本論文內容更趨完善

另外更要感謝口試委員:王 文俊教授、蘇木春教授、李棟良教授、李柏坤教授給予本論文指導與建議,使本論文 得以順利完成,在此獻上十二萬分的謝意與敬意。

此外也要感謝我的同窗好友阿釩(志釩)及乘涼(建良)在學業上的討論,接著要感 謝學弟們不辭辛勞幫忙。感謝各位同學在這段期間的陪伴,尤其是在實驗室過夜看日 出與吃早餐打拼的日子。

最後感謝父母、家人以及我的女友,能夠在我的求學過程中,給我莫大的鼓勵與 支持,讓我得以安心完成學業,還有互吐苦水的國中、大學同學們。在此將這份成就 與喜悅和我最敬愛的 人一起分享,語詞簡陋不能表達內心之千萬感慨。

劉學燕 謹識於中華大學

2010 年 7 月

(5)

目錄

摘要 ... i

Abstract ... ii

誌謝 ...iii

目錄 ... iv

表目錄 ... vi

圖目錄 ...vii

第一章 緒論 ... 1

1.1 問題介紹 ... 1

1.2 解決方法 ... 1

1.3 重要性 ... 2

1.4 文獻回顧 ... 3

1.5 本篇論文方法 ... 6

1.6 論文架構 ... 7

第二章 情緒辨識架構與方法 ... 8

2.1 情緒辨識架構 ... 8

2.2 人臉偵測 ... 8

2.3 人臉影像雜訊去除 ... 11

2.4 臉部位置取出 ... 12

2.5 特徵點選取 ... 14

2.6 眼睛特徵點截取 ... 15

2.7 眉毛特徵點截取 ... 18

2.8 嘴巴特徵點截取 ... 19

2.9 特徵值的計算 ... 21

第三章 表情分類與辨識 ... 24

(6)

3.1 小腦模型之理論背景 ... 24

3.1.1 小腦模型之基本架構 ... 25

3.1.2 小腦模型記憶體映射方式 ... 25

3.1.3 配置之記憶體總數 ... 27

3.1.4 小腦模型數學表示法 ... 27

3.1.5 小腦模型學習演譯法 ... 27

3.1.6 一維小腦模型學習範例與結果 ... 30

3.2 辨識系統 ... 31

3.2.1 以模糊集合描述各表情特徵範圍與中心 ... 31

3.2.2 表情特徵程度值 ... 32

3.2.3 表情權重 ... 34

3.2.4 表情辨識 ... 35

第四章 實驗結果 ... 37

4.1 資料庫 Database ... 37

4.2 表情辨識 GUIDE 介面... 38

4.3 實驗結果 ... 38

4.4 實驗比較結果 ... 41

第五章 結論與未來展望 ... 42

5.1 結論 ... 42

5.2 未來展望 ... 42

參考文獻 ... 43

(7)

表目錄

表 1. 人臉偵測相關研究方法 ... 4

表 2. 表情特徵 ... 14

表 3. 正規化後的特徵距離 ... 23

表 4. 所要使用特徵值 ... 23

表 5. 記憶單元與索引指標間之對映關係表 ... 26

表 6. 各表情特徵對映於各表情的權重 ... 34

表 7. 未加入排除不合理表情機制辨識結果 ... 39

表 8. 加入排除不合理表情機制辨識結果 ... 39

表 9. 本篇方法與其他方法比較結果 ... 41

(8)

圖目錄

圖 1.表情辨識架構 ... 3

圖 2.Active Appearance Model 特徵點追蹤 ... 5

圖 3.整體架構圖 ... 8

圖 4.膚色的分佈範圍 ... 9

圖 5.膚色偵測結果 ... 10

圖 6.侵蝕運算示意圖 ... 11

圖 7.膨脹運算示意圖 ... 12

圖 8.先侵蝕後膨脹運算 ... 12

圖 9.連通標記過程示意圖 ... 13

圖 10.連通標記影像 ... 13

圖 11.修正後人臉區域 ... 14

圖 12.表情特徵點 ... 15

圖 13.眼睛特徵點擷取流程 ... 15

圖 14.初步眼部位置 ... 16

圖 15.眼部動態臨界二值化示意圖 ... 17

圖 16. (a)眼睛動態灰階二元化(b)水平方向邊緣擷取 (c)結果... 18

圖 17.眉毛特徵點擷取流程 ... 18

圖 18. (a)眉毛動態灰階二元化(b)水平方向邊緣擷取(c)結果... 19

圖 19.嘴巴範圍 ... 19

圖 20.嘴巴取影像二元化與 sobel 邊緣二值化流程... 20

圖 21.嘴巴偵測結果 ... 20

圖 22.特徵點辨識結果 ... 21

圖 23.臉部 15 個特徵值距離圖解 ... 21

圖 24.小腦模型基本架構 ... 25

(9)

圖 25.一維小腦模型控制器之記憶體映射方式 ... 26 圖 26.小腦模型學習流程圖 ... 29 圖 27.(a)經 CMAC 訓練取出特徵範圍與中心值 (b) 表情特徵模糊集合 ... 32 圖 28.(a)F 特徵各個表情特徵模糊集合 (b)表情程度值計算說明圖 ... 33 no 圖 29.辨識流程圖 ... 36 圖 30.JAFFE 表情範例... 37 圖 31.GUIDE 介面開心表情辨識結果... 38 圖 32. 特徵F 與特徵na F 的各表情範圍與表情特徵中心值... 40 nb

(10)

第一章 緒論 1.1 問題介紹

情緒是指人類生活中的喜、怒、哀、樂、愛、惡、憂、懼等心理情況,是我們

受到某些刺激後或在特定情況下,所反應之各種不同的情緒。心理學家Ekman[1]曾經 研究還生活在石器時代不曾受到文明污染新幾內亞的原住民的表情,發現基本的喜怒 哀樂情緒是全世界所有人都有的。不同語系與文化背景的族群,雖然有語言與文化上 的隔閡,但仍透過情緒表現依然可以表達其心境。分辨情緒的好壞,常常可以從人的 肢體動作、說話的語氣或是表情來辨別。但是我們溝通的一方如果是電腦或機器人 呢?隨著科學進步與人類智慧型生活需求,智慧型人機介面議題之討論將從過去以設 計電腦介面改至以人(使用者)為中心的「智慧型環境遍佈式計算」。傳統之電腦人機 介面(HCI)設計,主要透過鍵盤等輸入給予電腦明確指令,但卻忽略人類(使用者)以及 其他隱性資訊,如使用者心理情緒狀態。由於使用者心理情緒狀態更能呈現其動機意 圖,所以在設計智慧型人性化人機介面中,將可利用此豐富資訊。因此有關情緒辨識 相關主題,近幾年廣泛吸引學者研究興趣。要如何讓溝通者或是機器「感受」到這些 人類所表達之情緒或是隱含的資訊,是有趣而值得探討之主題。如果讓機器賦予有著 和人一樣的感知能力,或是如何使得機器更加的自然、更加的人性化,這將在人機介 面互動或是機器人之研究議題具有指標意義。

1.2 解決方法

近年來人們不斷嘗試將情緒融入生活產品中,不論是從情緒辨識,例如數位相機 中的微笑快門功能[2],可以補捉拍攝主角最燦爛的微笑;或是情緒的模擬表達,或 如機器寵物,可以模擬表達出寵物的情緒等,都是人機互動發展趨勢也是其所需努力 目標。相關情緒辨識的議題,吸引了許多專家學者投入相關研究,如透過臉部表情特 徵、語音信號、大腦訊號、肢體動作、體溫變化、心跳和血壓變化等[3][4]。心跳、

(11)

體溫、血壓是必須經由接觸人體的儀器才能測量得知,這部份較常應用在醫學方面。

另外以臉部表情和語音為情緒辨識之研究議題,文獻上也有一些成果。事實上,要辨 識人類之情緒或者是要設計一個系統(或機器人)來辨識情緒,不是一件容易的事。因 為情緒反應是由生理狀態與心理狀態所綜合呈現的結果。如果就從聲音來辨識情緒來 說,不外乎先取得語音的參數後,然後分析針對不同語音參數在不同情緒上所顯示的 差異性,及使用統計方法或分類技術分析分類,再經由決策判斷出情緒[5~8]。但是 以亞洲來說,就有許多國家,各國之間的語言與音調都不相同,雖說透過影像擷取以 臉部表情辨識情緒雖也有人種上的問題,但相對比起語音來說,較能應用在更廣的範 圍。臉本來就是洩露內心感覺的一個窗口,情緒的改變是快速與千變萬化,臉部表情 應是最能直接表現人的情緒。Ekman與Friesen[1]在文獻即提到,人臉表情雖然不是構 成人類情緒狀態的唯一決定因素,但卻是情緒最主要的外在表現。所以在應用上,透 過辨識人臉表情,推測出人類情緒反應,是一個很好的途徑。「表情辨識」(facial expression)已有一些專家學者投入與開發,在1971 年Ekman 與Friesen[1]首先定義了 六種基本表情:高興、傷心、生氣、驚訝、厭惡與害怕(Happiness, Sadness, Anger, Surprise, Disgust, and Fear),並認為這六種基本表情不僅不受到種族與文化的影響,同時具有 全人類一致性。

1.3 重要性

本研究即嘗試探討及研究新的「人臉自動表情辨識系統」方法,以辨識出五種基 本情緒。早期人類創造機器,是要利用它們提高工作的效率,從生活中的食衣住行都 可以看到它的影子。隨著科技的進步及生活水準的提高,人們開始把機器利用在其它 的方面,像是保全、醫療、娛樂等,應用範圍可說相當廣泛。但是機器本身並不具備 智能,通常要人們下命令,它才會去執行,所以又開始研究要如何讓機器具備智能、

且具人性化。而人臉表情辨識系統,就是讓機器智能化能夠辨識人的情緒進進而可能 作出適當的反應,以達到人機介面人性化與智能化目標。

(12)

1.4 文獻回顧

一般自動化人臉表情辨識系統,大致上可分為三大部分,即人臉偵測、特徵擷

取以及表情辨識[9]。首先應取得影像,再進一步進行表情特徵擷取與表情分析與分 類,其架構如圖1 所示。圖 1 之輸入影像可以為靜態影像(Static image) 或連續影像 (Sequence image),亦同時可為灰階影像或彩色影像。靜態影像即輸入單張的影像,

通常辨識單張影像的方法也可用來辨識動態影像,就是將連續影像分解成序列一張一 張的影像來連續處理。

圖1. 表情辨識架構[9]

其實單就人臉辨識技術來說,就不是一件容易的事,現今人臉偵測方法的主要分 為 下 列 幾 種 類 型(Yang[10]),包含以特徵為基礎(feature-based) 、以知識為基礎 (knowledge-based) 、 人 臉 範 本 匹 配 (template-matching) 與 以 外 觀 為 基 礎 (appearance-based)。

以特徵為基礎的方法是由人臉特徵資訊來偵測臉部,其中包含以膚色、臉部特徵 位置、人臉邊緣、色彩分析(color analysis)等,來偵測臉部[11~18],通常是結合許多 特徵資訊來偵測臉部,以提高偵測率。

以知識為基礎的方法則是透過人臉特徵分佈的關係,建立人臉資訊編碼規則,訂 定人臉通用的知識庫。但人臉隨著不同歲數與人種變化差距相當大,因此知識庫的規 則非常不好建立,所以這方面的研究也漸漸沒落[19][20]。

而以人臉範本匹配的方法,則主要是以透過儲存影像中數個標準化的圖樣資訊,

(13)

做為代表臉部的特徵樣本(例如紋理資訊與形狀),以建立類似人臉形狀的模板(face template)[21~23],同時進行輸入影像與模板比對。其缺點是必須有大量的計算,並且 會因為人的不同而產生差異,同時模板建立也不容易。

以外觀為基礎的方法,是採用學習的方式,透過學習一系列的輸入訓練影像,從 中 自 動 擷 取 有 用 的 臉 部 資 訊 並 建 立 所 需 的 模 型 , 例 如PCA(Principal Component Analysis)[24] 、 2D PCA(Two-Dimensional PCA)[25] 、 類 神 經 網 路 (neural network)[26~28]、Viola-Jones[29] 。PCA經常用在減少資料集的維度,可排除較不重 要的資訊,保留數組較重要的投影向量以代表臉部重要資訊。2D PCA 便是從PCA 衍 生而來的,2D PCA 改善PCA 必須轉為一維資訊來計算的缺點,並提供較快速處理 二維影像的方式。類神經網路的方法則由上述幾個方法獲得特徵值,然後再輸入類神 經網路來分類,但此方法必須有大量的訓練資料,才會有比較好的結果。比較新的進 展是Viola 與Jones[29]利用積分影像(integral image)特徵,提出了AdaBoost 的訓練方 式,並採用層疊(cascade)分類器,在人臉偵測應用方面速度相當快且有不錯效能。現 今各式人臉偵測相關研究方法可整理如下表1。

表1. 人臉偵測相關研究方法

類型 方法 使用特徵

Facial features [16] Edge

Multiple features[17][18] Skin color and shape Feature-based

Multiple features[15] Skin color and edge

Knowledge-based

Multiresolution rule-based

method[20] Intensity distribution Active shape model[22] Template Template matching

Active appearance model [23] Template

(14)

Neural networks[26][27] Texture Support vector

machines(SVM)[30]

Texture

AdaBoost[29] Integral image Appearance-based

Two-dimensional principal component analysis(2D PCA)[25]

Eigenvector decomposition

information

有關於人臉表情(情緒)辨識第二部份,亦即臉部特徵擷取部份,則大致上可分為 兩種做法:就是整體分析法(holistic approach)與部份分析(local approach)法。整 體分析主要是先取得特徵區塊或是特徵點,進而可對其做形變(deformation)或移動 (move)的偵測,如光流法(optical flow)[31]。 光流法是計算特徵點在畫面與畫面之 間的移動,提供一個準確的向量計算。在臉部特徵追蹤上,有人應用這樣的技巧來追 蹤人臉的特徵,並將其訓練成動作元AU (Action Unit)。然而光流法其缺點往往需要龐 大的計算量,且會因為移動量過大或是光線變化過大,在特徵點追蹤時容易產生錯誤 [42]。另外像Wang使用active appearance model[32] [33]做人臉範本的定位,其利用範 本上的點作為特徵點,隨著序列影像中臉部的變化,透過臉部紋理來調整特徵點的位 置[19],如圖2所示。部份分析法則主要是將人臉分為幾個比較重要的區塊,然後從 中取出特徵資訊,進而去判斷動作[34~36],其優點是可以用最少的資訊量來保留人 臉的最重要特徵位置資訊,本論文採用此方法 。

圖2. Active Appearance Model 特徵點追蹤[32]

在人臉表情辨識第三部份即是表情分類器。現今一般主要的分類器可以分為兩個

(15)

做法,一個是判斷由Ekman 和 Friesen所建構的FACS(Facial Action Coding System)系 統內的動作單元AU(Action Unit)[36]。其中每一個動作單元(AU)都代表著臉部的一個 動作,如內側眉毛上升是一個動作單元,右邊嘴角上升是一個動作單元等。Ekman 和 Friesen共定義了44個動作單元(AU),然後再經由這些動作單元來判斷表情[37][42]。

另一個是直接根據擷取到的特徵來判斷表情。此類判斷法又大概可細分為幾個方 法如下,第一種以學習為基礎的方式,例如類神經網路、支援向量機(support vector machine; SVM)[38~40]。類神經網路就像是一個黑盒子,可以透過網路的學習與權重 值的自我調節,而不必去面對複雜且不易分析的中間處理過程,並自動建立輸入與輸 出的對應關係。SVM則是屬於一種二分法的分類演算法,主要在輸入的訓練資料中,

找出一個可以將資料做最大區隔之超平面(Separating Hyper-plane) 。原則上,如有N 類資料的話,就要有N-1個SVM 才能分類。現實問題中並不是所有的資料都可以找 到線性區分超平面,所以如果遇到非線性問題,就在原始資料空間中無法找到線性區 分超平面。Boser 和Vapnik [41]等人針對非線性函數的問題,發現如果將原始資料透 過非線性的映射函數轉換到另外一個較高維度的特徵空間(Feature Space)中,然後在 特徵空間上執行線性分類,可以獲得更好的分類正確率。

第二種則採條件規則分類方式,作法是首先透過事先定義好的一些規則,然後藉 由這些規則來將特徵資料做條件分析,因而得到相對表情,模糊推論與決策樹都是屬 於這一類 [34] 。

1.5 本篇論文方法

本論文人臉表情辨識系統,主要分成三大部分,分別為人臉偵測、特徵擷取以及 表情辨識三大部分。人臉偵測部份,主要利用膚色偵測等影像處理技術將臉部區塊從 複雜背景中取出。而在特徵擷取部份,主要利用HSV、邊緣偵測、眼睛偵測等影像處 理技術從臉部區塊中取出眉毛、眼睛、嘴巴等特徵點,再根據心理學家所描述的表情 特徵計算出特徵值,作為判斷表情的依據。

表情辨識部份則是將資料庫透過CMAC訓練得到各表情特徵值的範圍與群聚中

(16)

心,藉由此資訊來建立表情特徵模糊集合,當輸入待測表情時,計算各特徵的表情程 度值。根據表情程度值為依據透過表情辨識機制辨別表情,判斷待測表情是屬於以下 何種表情:高興、悲傷、驚訝、生氣、及害怕。

1.6 論文架構

第一章為緒論,簡單介紹研究動機與目的,以及相關之文獻回顧與探討,本論文

方法的整體架構。第2 章詳細介紹了在辨別情緒之前,所要進行的前處理部分,描述 包含臉部偵測技巧、特徵點的擷取以及特徵值的運算。在第3 章則是應用 CMAC 建 立表情特徵模糊集合於情緒辨識設計。在第4 章則是實驗與討論。第 5 章,結論和未 來展望。

(17)

第二章

情緒辨識架構及方法 2.1 情緒辨識架構

一個人臉表情辨識系統應先取得人臉影像,再進一步進行表情特徵擷取與特徵值 的運算至此屬於前處理的部分,此部分可以取得待測表情的特徵值。而在訓練階段是 將資料庫表情特徵值資料透過 CMAC 訓練出各表情特徵範圍與中心,透過此資訊進 而建立表情特徵模糊集合;表情辨識部分,是將前處理所擷取到的特徵值透過CMAC 所訓練建立出的表情特徵模糊集合計算出表情程度值,藉由表情程度值透過辨識機 制,辨識待測表情屬於何種表情,其整體架構如圖3 所示。

圖3. 整體架構圖

2.2 人臉偵測

在人臉偵測的部分,我們主要是從複雜背景的環境中找出人臉。假設輸入為一 張彩色的影像,從皮膚顏色的資訊,產生皮膚顏色二值化影像,並將影像邊緣截取

(18)

出來,先判斷區域內的皮膚顏色是否到達一定的比例,如果有則再加以處理,如此 可減少大量時間。

如何在影像中找出膚色範圍,目前已經有相當多國內外相關研究。在比較後,

我們發現由Soriano 等人所提出的正規化 RGB 方式是很有效的判定方法[43]。因為 它考慮到攝影機的特性(指自動白平衡;自動白平衡是指應用影像處理的方式去校正 白色物體因不同光源的照射下所造成的顏色偏差)與光線所產生的變化(指光線強弱 的差異,會造成影像中的膚色會有所變化),所以此方式在實際的視訊處理會有很不 錯的表現。

RGB 正規化的公式如下所示:

B G R r R

+

= +

(1)

B G R g G

+

= +

(2)

3 所示[43],若 X 軸代表 r,Y 軸代表 g,則我們可以觀察出膚色的分佈範圍 將會相當的集中,其中X 軸的範圍約在 0.2 到 0.6 之間,Y 軸的範圍約在 0.2 到 0.4 之間。

圖4. 膚色的分佈範圍

因此利用兩個二次方程式即可定義出膚色的上界F1(r)與下界F2(r) [43]:

F1(r)=−1.376r2 +1.0743r+0.1452 (3)

(19)

F2(r)=−0.776r2 +0.5601r+0.1766 (4) 由於白色w(r = 0.33 且 g = 0.33)也會在定義的範圍中,所以加入下面的條件加以排除。

w=(r−0.33)2 +(g−0.33)2 >0.0004 (5) 除此之外另外多加了兩項判斷式:

(1) R > G > B:因為彩色像素是由 R、G、B 三原色所組成,經由實驗分析,可 以發現膚色的像素值在一般情況下有 R > G > B 的規則。

(2) R −G ≥0.07 則是為了要排除非膚色像素之黃綠色系雜訊點。

綜合以上的條件,即可定義出膚色s 的範圍[44]。

otherwise

G R B G R w

r F g r F g s if

0

07 . 0 ) (

&

&

0004 . 0

&

) (

&

) ( (

1 < 1 > 2 > > > − ≥

⎩⎨

=⎧ (6)

圖5. 膚色偵測結果

在實作影像處理中,通常都會有雜訊點。產生這些雜訊點的原因大部份是源自 於當時環境的影響,如光源的變化等。這些雜訊點將會影響到實驗的結果,因此,

如何去除雜訊點是影像處理中一定會討論到的議題。為了避免影響後續的處理,因 此使用影像形態學(morphology)中侵蝕(erosion)與膨脹(dilation)的技術來去 除雜訊。

(20)

2.3 人臉影像雜訊去除

1.侵蝕:

以AΘB 來代表二值化影像 A 被遮罩 B 侵蝕。先判斷遮罩的結構元素 B0 在二 值化影像A 中期對應位元是否為 1,如符合再判斷周圍八點(B1~B8)在矩陣 A 的 相對位置是否皆為1,都符合則 B0 為 1,反之則為 0,其判斷式為:

B0=B1∩ B2 ∩ B3 ∩ B4 ∩ B5 ∩ B6 ∩ B7 ∩ B8 (7)

∩ :AND 邏輯運算,B0:結構元素(Structuring element)

圖 6. 侵蝕運算示意圖 2.膨脹:

以A B♁ 代表二值化影像A 被遮罩 B 膨脹;先判斷遮罩的結構元素 B0 在二值 化影像中是否為1,假如符合再判斷周圍八點(B1~B8)在矩陣 A 的相對位置是否 有值(至少一個),都符合則B0 為 1 反之為 0。其判斷式為

B0=B1∪ B2 ∪ B3 ∪ B4 ∪ B5 ∪ B6 ∪ B7 ∪ B8 (8)

∪ :OR 邏輯運算,B0:結構元素

(21)

圖 7. 膨脹運算示意圖

圖8.先侵蝕後膨脹運算

運 用 膨 脹 與 侵 蝕 去 除 大 部 份 雜 訊 之 後 , 再 以 標 記 連 通 成 份 (connected component)取出臉部位置。

2.4 臉部位置取出

1.標記連通成份(connected component)演算法:

(1)檢查 P 的狀態。若 P 為 0,則跳過該像素繼續掃描下一個像素。若 P 為 1,則檢 查U 與 L 的狀態。

(a)若 U 與 L 均為 0,就給 P 加上一個新的標記。

(b)若只有 U 或 L 為 1,則為 P 加上與其相同的標記。

(c)若 U 或 L 均為 1 且標記相同,則為 P 加上同樣的標記。

(d)若 U 或 L 均為 1 但標記不同,則為 P 加上其中一個標記,然後註明這兩個標

(22)

記相等(因為 U 與 L 屬於同一個部份,透過 P 相連接)。

(2)掃描結束後,所有的 1 都加上了標記。某些標記可能相等,找出這些標記,將 之分類為相等類別,然後每個類別加上一個不同的標記。

(3)再次掃描影像,用前一步驟中加上的相等類別標記取代原本的標記。

圖9. 連通標記過程示意圖

圖10.連通標記影像 2.擷取區域修正

經過上述一連串的處理所擷取的人臉影像,因為採用的是膚色偵測,也會擷取 到頸部,但這不會是問題。因為本論文是利用相對位置計算特徵值,所以在接下來特 徵擷取的部分,僅需作對影像做修正的處理即可。一般人臉的高寬比大約是1.4 : 1,

超過此比例的人臉往往是因為還包含頸部的人臉圖像,若偵測人臉影像超過此比例則 進行人臉下界( face )修正,其修正如下所示[45]: d

⎪⎩

⎪⎨

>

× +

= <

4 . 1 ,

4 . 1

4 . 1 ,

W if H W face

W if H face

face

u d

d

( 9)

其中 face 為人臉上界,H 為偵測人臉高度,u W為偵測人臉寬度,其修正結果如圖11

(23)

所示。

圖11.修正後人臉區域

2.5 特徵點選取

根據心理學家的面像術[46]觀察出六個基本情緒在臉部所做出來的表情其所對 應某些特徵點的變化,將其描述如表2。我們歸納特徵表現並建立相關特徵點,再根 據特徵表現,由特徵點計算出特徵值,作為判斷表情的依據。其特徵點為左右眉毛各 2 點、左右眼睛各 3 點,而嘴巴部分有 4 點,如圖 12 所示。

接下來在特徵擷取處理上可分成四部分: 眼睛特徵擷取、眉毛特徵擷取、嘴 巴特徵擷取、特徵值的計算。

表2.表情特徵 悲傷(Sadness)

張嘴下垂(嘴角)下拉 (上眼瞼)下垂

(眉毛)內側向上翹起

生氣(Anger) (眉毛)內緣向下

(雙唇)緊緊密合、繃緊 抬高的(上眼瞼)

(眼睛)睜大

驚訝(Surprise) 盡量抬高(眉毛) 上抬高的(上眼瞼) (嘴巴)打開,不要勉 強拉長嘴唇

憎惡(Disgust) (眉毛)的下壓 (上眼瞼)下垂

(上唇)抬很高,好像 快要翹起來似的

害怕 (Fear) 繃緊的(下眼瞼) 上抬高的(上眼瞼) (嘴巴)拉長

快樂(Happiness) (嘴巴)拉長

(眉毛)稍微下拉

(24)

圖12.表情特徵點

2.6 眼睛特徵點擷取

此部份主要是要擷取眼睛的特徵點,左右眼睛各3點,處理如圖13。

圖13. 眼睛特徵點擷取流程

(25)

在此部分採取類似文獻[47]兩個階段擷取做法,先初步找出瞳孔的位置,再由瞳 孔位置選取眼部區域進行特徵擷取。因為本論文採用的是相對位置來尋找特徵點,人 的臉型各有不同,先找瞳孔的原因是為了避免若取固定位置或固定方塊,眼睛可能無 法完整被包含在方塊內而產生錯誤的問題。雖然人的臉型有長有短,但由統計100 張 人臉影像觀察可知,若以人臉偵測結果上方為起點,則眼部位置必定會落在由

12 2 至

12

6 長軸長的區域內,由偵測結果左方開始 12

2 . 1 至

12 2 .

11 短軸長的區域內,如圖12所

示。此時區域所包含的,除了眼部外,還會包含眉毛的部分,而並非是擷取眼部特徵 點時所採用的單純眼部區域,因此,針對此區域先找出兩瞳孔,並計算兩瞳孔的距離 (d),再由兩瞳孔的距離找到正確的眼部位置。首先將臉部影像轉為灰階值,由於瞳 孔與其附近區域相比較,會有較黑的顏色,因此,對此區域的灰階值取直方統計圖 (histogram);接下來,因為瞳孔的顏色會在此區域內的最黑的10%內,因此動態的來 取臨界值,由直方統計圖的最黑部分 (灰階值為0) 開始算起,累加到個數為此區域 的總像素個數的第10%個,則將這個像素所在的像素值設為臨界值,若區域內像素值 小於臨界值,則設為1,否則設為0;舉例來說,若區域內共有1000個像素,則 1000*10%=100,我們由灰階值0 的像素開始累加,若累加到第100個像素且其值為 50,則臨界值設為50,此區域內若像素灰階值小於50,則二元化為1,否則二元化為0;

也就是將此區域內最黑的10% 二值化為1,其餘為0。

圖14.初步眼部位置

(26)

圖15.眼部動態臨界二值化示意圖

接下來,分做左右兩半來處理,以左邊瞳孔來說明,由於在瞳孔附近只有頭髮以 及眉毛有可能也被二元化為1,而通常頭髮以及眉毛會在瞳孔上方,因此,由上往下 由左至右,去搜尋最後一個像素值為1的像素,此點像素即是左邊瞳孔像素值最後一 點,同理,亦可找出右邊瞳孔最後一點;然後,以這兩點的距離(在此定義為初步瞳 距)來產生初步眼睛的區域,各個初步眼睛區域約在以上述找出瞳孔右下點的位置為 基礎各往上

6 1 往左

3

1初步瞳距,再以該位置為起點取向下 3

1初步瞳距,向左 3

2初步瞳

距的範圍即為各眼睛初步範圍,對此初步眼睛範圍做重心偵測,即找到正確的瞳孔位 置,以及正確的瞳孔距離(d),以瞳孔為中心向上向下各取

6

1瞳距,向左向右各取 3 1瞳

距,即為眼睛的區域。

找出眼睛的區域之後,因為眼睛輪廓的灰階值比其周圍的皮膚灰階值較黑,故在 此仍利用上述的動態臨界值二元化方法,但取的程度為30%,若小於該臨界值則設為 1,反之則設為0。另外,因為眼睛的輪廓傾向水平方向,因此,使用Sobel 濾波器產 生眼睛區域的水平方向邊緣,並將以二元化,然後以左眼舉例將上述兩個方法所產生 的結果做AND的動作,依照其產生的結果,由右而左找到第一個二元化值即為所要 的左眼內側特徵點(lEi),以瞳孔位置為基準由上而下找到第一個點即為左眼上眼瞼的 特徵點(lEu),由下而上找到的一個點即為左眼下眼瞼的特徵點(lEd),同理,亦可找出 右眼內側特徵點(rEi)、右眼上眼瞼的特徵點(rEu)、右眼下眼瞼的特徵點(rEd),如圖14 所示。

(27)

圖16. (a)眼睛動態灰階二元化(b)水平方向邊緣擷取 (c)結果

2.7 眉毛特徵點擷取

此部份主要是要擷取眉毛的特徵點,左右眉毛各2 點,處理如圖17。

圖17. 眉毛特徵點擷取流程

在此部分採取類似文獻[47]眉毛特徵點的擷取的做法,是根據找出來的瞳孔位 置及瞳距來找出眉毛特徵點區域,並以和眼睛特徵擷取類似的方法找出來的,首先以 左眉為例,在左眼的上方產生眉毛的區域,其眉毛範圍為以瞳孔上方

2

1瞳距 與瞳孔

左方3

1瞳距為起點取向下 3

1瞳距與向右 3

2瞳距的範圍,同理,可產生右眉區域,由於

眉毛上方及外側很有可能與頭髮接觸,因此在這裡只找內側及下方的特徵點,首先依 照上述之動態臨界值二元化法,將眉毛依照灰階值二元化,在此將比率值設為30%,

另外,由於眉毛的邊緣亦為水平方向,因此,亦使用水平Sobel 濾波器產生眉毛區域

(28)

的水平方向邊緣並二元化,將上述兩個方法所產生的結果做AND的動作,依照其產 生的結果,由左而右,由上而下找到最後一點二元化值即為所要的左眉內側特徵點 (lBi),以瞳孔位置為基準,從眉毛區域由上而下找到最後一點二元化值即為左眉下緣 的特徵點(lBd),同理可找出右眉內側特徵點(rBi),以及右眉下緣特徵點(rBd)。

圖18. (a)眉毛動態灰階二元化(b)水平方向邊緣擷取(c)結果

2.8 嘴巴特徵點擷取

此部份主要是要擷取嘴巴的特徵點,共 4 點,處理如圖4-10在嘴巴特徵擷取部 分,首先產生嘴巴的區域,我們統計出嘴巴位置約在以瞳孔往左

6

1 往下1.3倍瞳距處

為起始點,範圍為長約兩眼瞳距,寬為1.33倍瞳距的範圍內,如圖19所示。

1.33瞳距

瞳距 起始點

圖19. 嘴巴範圍

由於嘴唇顏色比其他皮膚顏色紅,因此,可利用這個資訊來擷取嘴巴的特徵點。

首先,先將人臉影像由RGB 色彩空間轉換到HSV色彩空間,這樣可以將顏色與亮度

(29)

分開,由轉換結果可以明顯看出嘴唇與其他分色的區域有明顯的差異, 在此取色調 的部分加以處理,設定一定的閥值並將之二元化,並做連通運算處理,且選取最大連 通部分做重心偵測。另外由於嘴巴水平方向邊緣的趨向,所以使用水平Sobel 濾波器 來產生最大連通部分的水平方向邊緣,並加以二元化,然後由左至右找到第一個邊緣 二元化後值為1且影像二元化後值亦為1 的點,即為所要的點ml;由右至左找到第一 個邊緣二元化後值為1 且影像二元化後值亦為1 的點,即為所要的點mr;而嘴巴上下 的兩個點,是先以重心偵側結果為中心點,左右個2個像素,共5個水平像素,由上往 下找到第一個在此水平5個像素內,至少有一個邊緣二元化後值為1 且影像二元化後 值亦為1的點,即為所要的點mu,由下往上找到第一個在此水平5個像素內,至少有 一個邊緣二元化後值為1 且影像二元化後值亦為1 的點,即為所要的點md。

(d)影像二元化

(e)sobel邊緣二值化 (a)HSV影像空間

(b)取色調處理

(c)連通最大區域

圖20. 嘴巴取影像二元化與sobel邊緣二值化流程

圖21.嘴巴偵測結果

(30)

圖22. 特徵點辨識結果

2.9 特徵值的計算

根據前面幾個小節所截取出來的14個特徵點,來產生15個特徵值,此15個特徵值 當作影像的表情特徵,將此15個特徵值當作是CMAC的訓練輸入。

圖23. 臉部15個特徵值距離圖解

特 徵 值 的 擷 取 部 分 , 首 先 我 們 由 每 張 人 臉 影 像 的 14 個 特 徵 點 的 座 標

(31)

) , ( ),

, ( ), ,

(lBux lBuy lBr lBrx lBry md mdx mdy

lBu= = L = ,計算出15個特徵距離(a ~o),

以及一個不變量(nor ,計算方式如下: )

2

2 ( )

)

(lBux lEux lBuy lEuy

a= − − − (10)

2

2 ( )

)

(rBux rEux rBuy rEuy

b= − − − (11)

2

2 ( )

)

(lBix lEix lBiy lEiy

c= − − − (12)

2

2 ( )

)

(rBix rEix rBiy rEiy

d = − − − (13)

2

2 ( )

)

(lBux lEdx lBuy lEdy

e= − − − (14)

2

2 ( )

)

(rBux rEdx rBuy rEdy

f = − − − (15)

2

2 ( )

)

(lBix rBix lBiy rBiy

g = − − − (16)

2

2 ( )

)

(lEux lEdx lEuy lEdy

h= − − − (17)

2

2 ( )

)

(rEux rEdx rEuy rEdy

i= − − − (18)

2

2 ( )

)

(lEix mux lEix muy

j= − − − (19)

2

2 ( )

)

(rEix mux rEix muy

k = − − − (20)

2

2 ( )

)

(lEix mlx lEix mly

l= − − − (21)

2

2 ( )

)

(rEix mrx rEix mry

m= − − − (22)

2

2 ( )

)

(mlx mrx mly mry

n= − − − (23)

2

2 ( )

)

(mux mdx muy mdy

o= − − − (24)

2

2 ( )

)

(lEix rEix lEiy rEiy

nor = − − − (25)

由於拍照的遠近不同,而產生人臉的大小也不一定會相同,因此,需要用 一個正規化的方法,來讓這些特徵距離不會因拍照遠近而受到影響。因此,我

(32)

們必須使用一個在臉上不會變動的距離來正規化,因為人臉特徵中,內眼角是 不會變動的,所以,以兩個內眼角的距離 當作一個不變量,來做正規化的動作 [47],就可以得到 15 個經過正規化後的特徵距離 ( ' ~ ')a o 如表3。

表3. 正規化後的特徵距離 nor

a

a′= / f′= f /nor k=k/nor nor

b

b′= / g′=g/nor l=l/nor nor

c

c′= / h′=h/nor m′=m/nor nor

d

d′= / i′=i/nor n′=n/nor nor

e

e′= / j′= j/nor o=o/nor

接著,利用這 1 個經過正規化的距離來計算所需要的特徵值,先對每個人選取一 張沒表情的影像當作基準影像,然後再用現在要辨識表情的15 個經過正規化的距離

o

a′ K, ′,分別減去此基準影像的15 個經過正規化的距離abase′ K, obase′ ,即為所要使用 的特徵值Fna,KFno如表4。

表4. 所要使用特徵值

base n a

n a a

F = ′ − ′ Fnf = fn′− fbaseFnk =kn′ −kbase

base n b

n b b

F = ′ − ′ Fng =gn′ −gbaseFnl =ln′ −lbase

base n c

n c c

F = ′ − ′ Fnh =hn′ −hbaseFnm =mn′ −mbase

base n d

n d d

F = ′ − ′ Fni =in′ −ibaseFnn =nn′ −nbase

base n e

n e e

F = ′ − ′ Fnj = jn′ − jbaseFno =on′ −obase

(33)

第三章 表情分類與辨識

由前章節我們可以得到表情的15個特徵值,將資料庫內各表情的15個特徵值輸入 至小腦模型(CMAC)做訓練,完成訓練後可以得到各個表情特徵的範圍與群聚中心。

然後將訓練完成的表情資訊建立表情特徵模糊集合(如圖27所示),當輸入待測表情特 徵時,計算各個特徵在表情特徵模糊集合內屬於各表情的程度值為何,並給定各表情 特徵相對的權重值,對於給定權重的特徵做加總,計算加總過後其表情程度值,來推 論表情辨識結果。

3.1.小腦模型之理論背景

1969 年,Marr 提出小腦皮質(Cerebellar Cortex)的模型,小腦的小皮質區分 為三層,由外而內依序為分子層( Molecular Layer )、細胞層(Purkinje Cell Layer)

及粒狀層(Granular Layer),小腦利用這三層儲存傳入纖維所得的訊息,然後由小 腦的傳出纖維傳送訊息。接著,在1975 年Albus根據Marr的小腦架構,於1975年所發 展出一套小腦模型運作的數學模式[48][49]。

小腦模型是一仿效人類小腦皮質的架構而來的,其目的是在學習一個對象並且將 它表現出來,學習對象可能是一連串的動作(如:sin 函數)或是一張圖像,所以在 模仿的過程中分為二個部份,分別為學習過程及回想(recall)過程。小腦模型的學 習過程就是將學習對象的動作分解成許多參考狀態並反覆地學習與修正,直到表現出 來的動作滿足期望的結果。因此,小腦模型在學習時是採用監督式學習方式,其根據 監督訊號來修正記憶體中所儲存的資料。而主要特點在於不須經由複雜的數學處理或 分析來達成控制的目標,而是利用函數的輸出與輸入關係所建立起的記憶體內容值

(memory table),透過檢索方式取出數個對於特定輸入的記憶體內容值,經簡單的 算術累加後得到複雜系統的控制訊號 [48]。小腦模型其主要特性為:

(34)

一、學習收斂速度快,以記憶體分配建表技術(table-lookup),學習演譯速度較類神經 網路為快。

二、具有區域推廣性,相鄰兩個參考狀態至少對映使用共同記憶單元1個以上,亦即 每個參考狀態至少對映至兩個以上的記憶體。

三、可應用於非線性系統。

四、易將演算法轉為硬體實現。

3.1.1小腦模型之基本架構

小腦模型學習及回想過程的演算法基本上是經由一連串的映射(mapping)方式 來達成的。如圖22 所示,在小腦模型的技術中,首先要將參考狀態量化成數個不連 續方塊,並經由不連續方塊所形成的聯結空間映射到數個記憶體,被映射到記憶體的 權重(weight)總和為輸出值,然後依據期望值與輸出值之誤差平均回饋於被映射的 記憶體內做記憶體的修正,如此週而復始直到輸出值與期望值的誤差收斂到一個容許 的範圍內才完成學習。

參考狀態S

聯結空間

Σ

Σ

真實輸出

期望輸出 +

真實記憶體

誤差平均分配 W

c

Y&

Y mapping

圖24.小腦模型基本架構

3.1.2 小腦模型記憶體映射方式

一維小腦模型控制器記憶體映射方式一般而言,每個輸入變數所劃分的狀態數 之多寡,跟CMAC 的學習效果有密切的關係。每個狀態數所分配到的記憶體有重疊

(35)

(overlap)的現象,此即為CMAC之一般化特性,對映記憶體個數越多收斂速度越快。

) 1

S( S(2) S(3) S(4) S(5) S(6) S(7) S(8)

W10

W9

W8

W7

W6

W5

W4

W3

W2

W1

圖25.一維小腦模型控制器之記憶體映射方式

表5. 記憶單元與索引指標間之對映關係表

W1 W2 W 3 W4 W 5 W 6 W 7 W 8 W 9 W 10 )

1 (

S 1 1 1 0 0 0 0 0 0 0

) 2 (

S 0 1 1 1 0 0 0 0 0 0

) 3 (

S 0 0 1 1 1 0 0 0 0 0

) 4 (

S 0 0 0 1 1 1 0 0 0 0

) 5 (

S 0 0 0 0 1 1 1 0 0 0

) 6 (

S 0 0 0 0 0 1 1 1 0 0

) 7 (

S 0 0 0 0 0 0 1 1 1 0

) 8 (

S 0 0 0 0 0 0 0 1 1 1

其中:i . W1,W2,…等為記憶體單元位址。

ii. S(1)、S(2)…等為參考狀態點。

iii. 每個狀態數有被分配到的記憶體單元其索引指標設為1,未被分配到的部份則索引指 標設為0。

(36)

3.1.3配置之記憶體的總數

memory_size=k+m−1 (26) k:參考狀態點的個數(狀態數)

m: 每個取樣狀態點所對映之記憶體單元的個數

舉例說明:若參考狀態點個數為8,參考狀態點所對映之記憶體單元的個數為3,其配 置記憶體總數為10。

3.1.4小腦模型數學表示法

小腦模型的記憶體儲存架構及學習輸出結果可以利用下述之數學方程式表 示之。

[ ]

s s

N N s s

s

s cw

w w w c

c c

Y =

⎥⎥

⎥⎥

⎢⎢

⎢⎢

= M

2 1 ,

2 , 1

,, ... (27)

其中 N :記憶體的總數

Y :某一參考狀態s的輸出 s

c :為某一取樣狀態點的聯結向量,其中只有s m個1,其餘均為0。

3.1.5小腦模型學習演譯法

小腦模型是使用反覆學習來改變所指向之記憶體單元中的資料,以達到學習的目 的。假設小腦模型利用k 個參考狀態點當作訓練樣本,每學習完k個參考狀態點一 次,就稱為一個學習週期。當CMAC 尚未訓練完成時,對應於某一訓練樣本的CMAC 輸出值可能會和此樣本被期望的輸出值有所出入,於是將此樣本的期望輸出與CMAC 實際輸出的誤差平均分配回剛才資訊檢出的記憶體位置,以期望下次CMAC 能對這 個訓練樣本的輸出反應能更接近期望的輸出值,此即為CMAC 的學習過程。經由反 覆的樣本輸入,以改變記憶體的內容,經過數次的學習週期後,若能夠收斂到某一容 許的誤差範圍內,便完成整個學習的過程,其學習流程如圖26所示。

(37)

其學習模型可以用下列式子表示:

) (

1 )

( 1 )

( i

s i

s i

s w w

w = (28)

ˆ )

( 1 1 ()1

1 )

( 1

i s T s s s i

s c y c w

w = m

Δ α

(29)

其中s為參考狀態點, i 為學習週期,yˆs1 為參考狀態點s−1的期望輸出值,

) (

1 1

ˆs 1 cTs wsi

y 為參考狀態點s−1時的輸出誤差, cs 1(yˆs 1 csT1ws(i)1) m

α 為輸出誤差平

均,將輸出誤差平均修正到所對應的記憶體單元,α為學習率(learning rate),m為每 個參考狀態點所對映之記憶體單元的個數。

(38)

圖26. 小腦模型學習流程圖

(39)

3.1.6一維小腦模型學習範例與結果

題目:學習y= x+4。假設測試4個測試值,且ε 定0.5,學習率為0.5,

每個狀態對映3塊記憶體,初始weight為0。

ˆ )

( 1 1 ()1

1 )

( 1

i s T s s s i

s c y c w

w = m

Δ α

修正公式:學習過程:ws =ws1ws1

1. x=1,CMAC輸出得到0,標準答案是5 (第一次誤差調整) 8333

. 0 ) 0 5 3 (

5 . 0

1 = − =

Δw 分配給所對映之3塊記憶體。

0.8333 0.8333 0.8333 0 0 0

2. x=1.5,CMAC輸出得到1.6667,標準答案是5.5 (第二誤差調整) 6389

. 0 ) 6667 . 1 5 . 5 3 (

5 . 0

2 = − =

Δw 分配給所對映之3塊記憶體。

0.8333 1.4722 1.4722 0.6389 0 0 3. x=2,CMAC輸出得到2.1111,標準答案是6 (做第三次差調整)

6482 . 0 ) 1111 . 2 6 3 (

5 . 0

3 = − =

Δw 分配給所對映之3塊記憶體。

0.8333 1.4722 2.1204 1.2871 0.6482 0 4. x=2.5,CMAC輸出得到1.9353,標準答案是6.5 (做第四次誤差調整)

7608 . 0 ) 9353 . 1 5 . 6 3 (

5 . 0

4 = − =

Δw

0.8333 1.4722 2.1204 2.0479 1.409 0.7608

總誤差=5+3.8333+3.8889+4.5647 = 17.2869 誤差變化率=本次誤差-前一次誤差

若誤差變化率>ε ,則必須做下一次之學習(之後以此類推)

(40)

3.2辨識系統

由上章我們可取得15個表情特徵當作CMAC的訓練資料。在使用的資料庫中有 174張包含高興、悲傷、驚訝、生氣、害怕以及沒表情的影像,每張影像皆有15個表 情特徵。接著,取資料庫中同一種表情其中一個表情特徵,當作CMAC的參考狀態進 行訓練。在此誤差變化率定為0.5,所以當訓練誤差變化率小於設定的0.5時則訓練完 成,若大於設定的誤差變化率,則繼續進行學習訓練。當訓練完成時我們取出訓練過 後的表情特徵最大值與最小值當作表情特徵在此表情的範圍,而訓練完的表情特徵平 均值當作該表情特徵在此表情的中心值。因為每個表情特徵需透過一個CMAC小腦模 型進行訓練,所以一種表情就包含了15個CMAC小腦模型對其表情特徵進行訓練。

3.2.1以模糊集合描述各表情特徵範圍與中心

經過CMAC訓練出來的各表情範圍與各表情中心值,我們利用此資訊建立表情 特徵模糊集合。例如舉圖27 (a)來說明,由於圖27 (a)是取15個表情特徵中的其中一個 表情特徵F ,然後如經過CMAC訓練可取出特徵no F 的範圍與中心值,再用模糊集合no 來描述該特徵的範圍與中心值,即如(b)所示。每個表情特徵模糊集合的底集為CMAC 所訓練出來的表情範圍,而經過CMAC所訓練出來的表情群聚中心為表情特徵模糊集 合的最大規屬值其高度為1,依此類推我們共建立了15個特徵的各表情特徵模糊集合。

(41)

CMAC

max o

F ′n

min o

F ′n

avg o

F ′n

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 -0.1

-0.3 -0.2 happy

surpris

sad fear angry

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 -0.1

-0.3 -0.2

1

happy surpris

sad fear angry (a)

(b) 表情程度值

表情特徵值

圖27. (a)經CMAC訓練取出特徵範圍與中心值 (b) 表情特徵模糊集合

3.2.2表情特徵程度值

由上個小節可以得到各特徵的表情特徵模糊集合,當輸入待測表情特徵值時,

我們可以藉由表情特徵模糊集合來辨別該特徵值屬於何種表情成分,其表情程度值為

(42)

多少,其程度值的運算方式我們用圖28來說明。圖28中(a)為表情特徵F 的各個表情no 特徵模糊集合,假設輸入一個待測表情特徵Ex時,可以明顯的觀察此表情特徵落於驚 訝表情特徵模糊集合與生氣表情特徵模糊集合中,因此若表情特徵不在該表情特徵模 糊集合代表表情特徵於該表情特徵模糊集合的程度值為0, CF 區段為兩表情方塊重 疊處,若待辨識表情特徵落於此區段該如何取決此特徵屬於何種表情,因此利用下面 公式決定其特徵在兩個表情的特徵程度值為何。

⎪⎪

⎪⎪⎨

− ≤

− ≥

=

表情特徵群聚中心 特徵值 特徵值

表情特徵群聚中心

表情特徵範圍最小值 特徵值

表情特徵群聚中心 表情特徵群聚中心 特徵值

特徵值

特徵值 表情特徵範圍最大值

表情程度值

if if ,

, (30)

其中表情特徵群聚中心的表情程度值為1。以圖26中(b)為例,此特徵Ex屬於驚訝的程 度值為 G E

Ex G

− ,屬於生氣的程度值為

B F

Ex F

− 。

圖28. (a)F 特徵各個表情特徵模糊集合 (b)表情程度值計算說明圖 no

(43)

表情 特徵值

3.2.3表情權重

在上個小節中,我們可以得到15個表情特徵的各個表情程度值,每個表情都是由 15個表情特徵的線性組合而成,但是每個表情都會有幾個明顯的特徵表現,比方說驚 訝時嘴巴會張開、眉毛會盡量抬高,但是生氣時嘴巴卻會緊閉、眉毛內緣向下,也就 是說每個表情都有某些特徵是我們特別關注的,因此除了參考心理學家的面像術描述 六個基本情緒在臉部所做出來的表情有哪些特徵,如表2表情特徵之外,還加入了自 己觀察到的表情特徵線索,由這兩個資訊給定各表情15個特徵的表情權重其權重分備 如表6所示。

表6. 各表情特徵對映於各表情的權重

高興 悲傷 驚訝 生氣 害怕

a

F

n 0 0 0 0.15 0.1

b

F

n 0 0 0 0.15 0.1

c

F

n 0 0 0.1 0.15 0.05

d

F

n 0 0 0.1 0.15 0.05

e

F

n 0 0 0.1 0 0.1

f

F

n 0 0 0.1 0 0.1

g

F

n 0 0 0 0.2 0

h

F

n 0.1 0.2 0.1 0 0.1

i

F

n 0.1 0.2 0.1 0 0.1

j

F

n 0 0 0.1 0 0.05

(44)

k

F

n 0 0 0.1 0 0.05

l

F

n 0.2 0.2 0 0 0

m

F

n 0.2 0.2 0 0 0

n

F

n 0.3 0 0.1 0 0.1

o

F

n 0.1 0.2 0.1 0.2 0.1

3.2.4表情辨識

本表情判斷依據分三個階段,當輸入待測表情時,首先判斷待測表情各個特徵是 否在各表情特徵模糊集合之內,此處採計分制,每個表情皆有15個表情特徵,所以每 個表情皆有15個特徵的表情特徵模糊集合,若特徵值存在於該表情特徵模糊集合時則 得一分,最高分為15分,如果僅一個表情得到最高分數,則辨識結果為該表情。另一 個階段則是,若有多個表情得到最高分數或皆沒有表情得到最高分數,就由表情特徵 模糊集合計算出各個表情程度值並乘上各表情特徵相對的權重值,對其做加總,即為 表情程度值。取出最高程度與次高程度者作判斷,比較兩者在第一階段得分是否相 同,若相同則進行排除不合理表情的處理。其處理機制是由特徵資訊排除不可能的表 情,例如表情為開心其特徵Fnn >Fno,但是驚訝表情就絕對不會出現此情況。所以當

表情程度值最高者為驚訝,次高者為高興,但待測表情特徵Fnn >Fno時,透過排除不 合理表情機制排除驚訝表情。雖然驚訝的表情程度值較高,但是與實際表情特徵資訊 有所衝突,所以最後辨識結果為高興。最後一個階段是得分不相同,取表情程度最高 者即為表情辨識結果,其辨識流程圖入下圖29所示。

(45)

資料庫15個 特徵值

待測表情 15特徵值

CMAC

表情特徵 模糊集合

判斷特徵是否在各 表情的表情特徵模 糊集合之內,在集

合內則得1分

判斷是否有單獨表 情得到最高分數

辨識結果

計算各特徵的 表情程度值

乘上相對表情 權重並作加總

取出最大 程度表情

取出最大與 次大程度表情

判斷得分是否相同

觀察兩表情 由特徵資訊排 除不合理表情

圖29.辨識流程圖

(46)

第四章 實驗結果

本論文是以MATLAB為開發軟體,設計一套以CMAC為基礎表情辨識系統。在此 章節介紹實驗所使用的資料庫,以及同時針對此系統所做的實驗與系統表情辨識錯誤 的方面的分析與討論。

4.1 資料庫 Database

本論文中所使用到的影像資料庫為JAFFE(Japanese Female Facial Expression) 資 料庫([23][25]),有 213 張高興、悲傷、驚訝、生氣、嫌惡、害怕以及沒表情影像,共 有10 個日本女性,每種表情約 3 張。

圖30. JAFFE 表情範例

(47)

4.2 表情辨識 GUIDE 介面

本論文是以 MATLAB 為開發軟體,圖 31 為 MATLAB 中的 GUIDE 是專用於圖 形使用者介面(GUI)程式設計的快速發展環境,本論文利用 GUIDE 建立一個表情辨 識系統。此系統必須輸入表情測試者無表情的圖像,接著輸入表情測試者有表情的圖 像,即可辨識該表情為何種表情。辨識系統中所出現的資訊包含上個章節所提到的表 情得分資訊、表情程度值、是否進行不合理表情排除機制以及辨識結果。

圖31.GUIDE 介面開心表情辨識結果

4.3 實驗結果

本論文以JAFFE 資料庫影像資料庫來做訓練以及測試。訓練及測試的方法為以 JAFFE 資料庫的影像做訓練,並以此資料庫影像中,不在訓練影像內的表情來做測 試資料。而本論文辨識系統,未加入排除不合理表情機制的辨識結果如表7所示。

(48)

表7. 未加入排除不合理表情機制辨識結果

高興 悲傷 驚訝 生氣 害怕 正確率

高興 25 0 0 0 4 86.2%

悲傷 0 19 0 3 7 65.52%

驚訝 24 0 0 0 5 82.76%

生氣 0 2 0 25 2 86.21%

害怕 0 1 4 2 22 75.86%

平均 79.31%

表8. 加入排除不合理表情機制辨識結果

高興 悲傷 驚訝 生氣 害怕 正確率

高興 26 2 0 1 0 89.66%

悲傷 0 23 0 3 3 79.31%

驚訝 24 0 0 0 5 82.76%

生氣 0 3 0 25 1 86.21%

害怕 0 1 4 2 22 75.86%

平均 82.76%

由表7與表8可以看出在未加入排除不合理表情處理時,悲傷表情與害怕表情之間 有混淆之處。而造成表情混淆的原因可由圖32來說明,圖32中僅取兩個表情特徵來說 明,由圖可以發現害怕與悲傷這兩個表情,其悲傷的表情範圍皆處於害怕表情範圍之 中,並且這兩個表情的表情中心都很接近。除了這兩個特徵外,有太多特徵皆是這樣 的情況,造成表情程度值相近,因此才會產生混淆的現象,所以我們詳細分析如後。

首先,觀察悲傷表情與害怕表情之兩個表情不同處,發現在眼部變化的地方,悲傷表 情其特徵F 與nh F 皆是同時變小,而害怕表情則會出現一個變大、一個變小的情況,ni 上述可做為不合理表情的資訊之一。舉例說明,當最高程度表情為害怕,次高程度表

參考文獻

相關文件

6 《中論·觀因緣品》,《佛藏要籍選刊》第 9 冊,上海古籍出版社 1994 年版,第 1

 Promote project learning, mathematical modeling, and problem-based learning to strengthen the ability to integrate and apply knowledge and skills, and make. calculated

Robinson Crusoe is an Englishman from the 1) t_______ of York in the seventeenth century, the youngest son of a merchant of German origin. This trip is financially successful,

fostering independent application of reading strategies Strategy 7: Provide opportunities for students to track, reflect on, and share their learning progress (destination). •

Strategy 3: Offer descriptive feedback during the learning process (enabling strategy). Where the

Now, nearly all of the current flows through wire S since it has a much lower resistance than the light bulb. The light bulb does not glow because the current flowing through it

To take collaborative actions to face the challenge arising from global climate change, we issued a circular in April 2017 to remind all schools to formulate and put in

According to the Heisenberg uncertainty principle, if the observed region has size L, an estimate of an individual Fourier mode with wavevector q will be a weighted average of