行政院國家科學委員會專題研究計畫 成果報告
智慧型機器頭顱之設計與製作(I)
計畫類別: 個別型計畫
計畫編號: NSC94-2212-E-011-032-
執行期間: 94 年 08 月 01 日至 95 年 07 月 31 日 執行單位: 國立臺灣科技大學機械工程系
計畫主持人: 林其禹
報告類型: 精簡報告
處理方式: 本計畫可公開查詢
中 華 民 國 95 年 10 月 27 日
行政院國家科學委員會補助專題研究計畫成果報告
※※※※※※※※※※※※※※※※※※※※※※※※※※
※ ※
※
智慧型機器頭顱之設計與製作(I)※
※ ※
※※※※※※※※※※※※※※※※※※※※※※※※※※
計畫類別:;個別型計畫 □整合型計畫 計畫編號:NSC 94-2212-E-011-032-
執行期間:94 年 08 月 01 日至 95 年 07 月 31 日
計畫主持人:林其禹
計畫參與人員:曾昌國、鄭欽元、邱培文
本成果報告包括以下應繳交之附件:
□赴國外出差或研習心得報告一份
□赴大陸地區出差或研習心得報告一份
□出席國際學術會議心得報告及發表之論文各一份
□國際合作研究計畫國外研究報告書一份
執行單位:國立台灣科技大學 機械系
中 華 民 國 95 年 10 月 18 日
行政院國家科學委員會專題研究計畫成果報告
智慧型機器頭顱之設計與製作(I)
Design and Fabrication of Intelligent Robot Head
計畫編號:NSC 94-2212-E-011-032
執行期限:94 年 8 月 1 日至 95 年 7 月 31 日 主持人:林其禹 國立台灣科技大學機械系
計畫參與人員:曾昌國 國立台灣科技大學機械系 鄭欽元 國立台灣科技大學機械系 邱培文 國立台灣科技大學機械系
一、中文摘要
本研究計劃之目的是以三年期間設計 並製作出一台具有人工智慧的機器頭顱,
目前第一年的工作已經大致完成,該機器 頭顱的功能為可以做出與真實人臉相同的 幾種主要表情,且機器頭顱同時具有人工 智慧可以偵測並自動模仿位於機器頭顱前 方人物之臉部表情。本研究計畫除了製作 具備上述軟體功之機器頭顱外,也發展出 可正確偵測出人物表情之電腦視覺技術,
此技術可以將演講者或說故事者之表情訊 號紀錄下來,然後由機器頭顱將所紀錄之 人臉表情播放出來。
關鍵詞:機器頭顱、表情辨識
Abstract
This research aims to design and fabricate an intelligent robot head in three years. The work of the first year has already been finished. This robot head now can perform a number of major facial expressions of a normal human and the robot head installed with a brain of artificial intelligence can also automatically mimic the facial expression of a person standing in front of him. This research project also aims to develop a new technique that can record the facial expression signals from a person
of verbal presentation. Then the robot head can reproduce the whole presentation that includes the reproduction (mimic) of the facial expressions.
Keywords: Robot head, Facial expression recognition
二、緣由與目的
機器人之相關科技研究正如火如荼地 在日本及包含美國、英國等幾過極少數國 家進行中,台灣學界對於機器人之相關研 究尚處於嬰兒期與萌芽期交界處,平均機 器人技術水平落後上述國家一大段距離。
看到日本 Honda Asimo 跑步,Sony Qrio 跳舞和打太極拳,及機器人相撲對打的真 實模樣,不難看出日本之「機器人技術」
將在繼「電腦」與「通訊」後之未來下一 個全球主要經濟戰場上建立主要戰功。十 年前除工業用機器人外,幾乎沒有其他機 器人市場。十年後的今天,娛樂用機器人、
商業用機器人、醫學用機器人的市場幾乎 以幾何指數方式成長。
本計劃之目的是要設計並製作出一台 具有人工智慧的機器頭顱,機器頭顱的硬 體功能為可以做出與真實人臉相同的幾種 主要表情,且機器頭顱同時具有之人工智 慧為可以偵測出位於機器頭顱前方之人物 表情。該機器頭顱除了具備上述的軟硬體
情之電腦視覺技術,進行發展可以將演講 者或說故事者之表情訊號與語音訊號同步 紀錄下來之技術。若該機器頭顱的臉部表 皮如果係依據某一特定人物的臉部來製作 的話,此機器頭顱則可以重複地表演該某 一特定人物預錄下來的一段演講、相聲、
或說故事表演。這種不僅可以模仿人類表 情的機器頭顱,而且更可以根據人類相同 表情說出一段相同語音的機器人技術,將 創造出互動式智慧型機器人技術的一大創 新與突破。
三、頭顱機構設計
在設計初期,我們先以人臉能夠達成 的各種表情作分析,發現人臉表情由臉上 肌肉,在頭骨與外表皮膚之間拉扯所達 成,而各個肌肉也因為厚度的不同,所產 生的拉伸效果也不同。並且也發覺在臉部 表情方面,已有研究對各種表情作編碼的 動 作 稱 為 Facial Action Coding System (FACS),此編碼將臉部各個移動細分後編 碼,並且定義哪些肌肉造成該臉部移動。
我們考慮到頭顱機器人將來所需完成 之動作,如笑、哭、怒…..等等,故所採取 之自由度多寡與配置須滿足所要求之動 作。而在肌肉拉扯的動作機構模擬,我們 將以拉線的方式來表現。其臉部各種肌肉 的選用模擬上,參考 Keith Waters[1] 的方 法來選出所需的拉線數量。
在額肌處,為了使前額擠出橫皺紋,
上提眉毛,在設計上半邊給 3 條拉線;眉 頭間欲達到皺眉頭效果,在設計上半邊給 1 條拉線;在眼部以下為人臉肌肉最多樣 處,如顴肌一起上提口角、頰肌拉平和拉 緊嘴唇,將口角拉向後方、笑肌向外和向 旁牽拉口角、下唇方肌向下和向外牽拉下 唇…等等,因考量頭顱內部空間及整體系 統的複雜度,故拉線的設計數量以選取主 要及簡化做取捨,在嘴部設計上半邊給 9 條拉線,而全部所要拉線的總數為 26 組。
圖 1為本頭顱機器人半邊所需拉線的示意 圖;而在下巴活動部份則以直接拉動的方 式驅動。
在機械頭顱機構只要區分為機械頭顱 外殼與機械頭顱內部驅動機構兩部份(如 圖 2),機械頭顱外殼之功用為撐起機械 頭顱臉部皮膚,以及設置所需的控制孔;
機械頭顱內部驅動機構,在致動器的選擇 方面,我們為方便起見,採取簡單、易驅 動且價格便宜之伺服機來做為致動元件。
圖 1 機器頭顱人半邊所需拉線的示意圖
圖 2 機械頭顱外殼與機械頭顱內部驅動機構
而拉線之機構動作,為將鋼琴線一端 分別固定在機械頭顱臉部皮膚上的控制 點,接而分別穿過機械頭顱外殼上的控制
肌肉與骨頭固定處
( 機械頭如內部拉線出口 ) 肌肉與皮膚固定處
( 拉線端與矽膠相接觸 )
孔,再把另一線端固定在伺服機的拉桿 上。當伺服機上的拉桿轉動時,會直接拉 動固定在機械頭顱臉部皮膚的控制點,如 此就可以讓控制點產生位移動作。
臉部表情表現的眼睛方面,各個眼睛 設計給予上下左右移動的 2 個自由度,並 加裝了 CCD 元件。圖 3為頭顱機器人眼部 CCD 與 CAD 機構圖。
圖 3 頭顱機器人眼部 CCD 與 CAD 機構圖
四、臉部皮膚製作
在設計機械頭顱皮膚部份事先參考 了 , 以 製 作 恐 龍 博 物 館 成 名 的 日 本 kokoro-dreams 公司,開發以女性為主的人 形機器人 ACTROID,已特殊的軟質橡膠製 造外皮。另外美國得州大學達拉斯分校的 K-bot 機器人,此頭顱機器人表皮為人造 橡膠和泡沫混合物。此兩款表皮皆具有與 皮膚相似的外表與觸感,但是在材料成本 上,價格極高,且在製作的配置比例過程 需自行測試,非常耗時。在成本與時間的 考量,本機械頭顱皮膚以選用矽膠,搭配 顏色染料來達到近似臉皮的效果。
由於人臉的面部肌肉組織為依附在顱 骨和皮膚上,而肌肉也。主要分為四大組:
口部周圍肌肉組織、眼部周圍肌肉組織、
頰部肌肉組織、顱頂淺層肌肉組織。依照 這些肌肉不同的性質,在設計製作表皮時 的厚度也必須有所改變。
顱頂和頰部肌肉,為比較重要的視覺 效果突出的肌肉組織,是那些表面面積較 大,因此在此部份厚度上為均勻厚度;口 部周圍肌肉組織,由於需要較有彈性效
在矽膠表皮的製作上,先利用人臉模 型製作出石膏母模,等石膏模完全乾燥硬 化後,利用黏土依照所定義之厚度黏在石 膏母模上,接而再來製造石膏公模,圖 4 為石膏母模與石膏公模。石膏模必須要完 全乾燥才能灌入矽膠或黏土,防止矽膠或 黏土黏上石膏,造成石膏模無法脫模的後 果。
圖 4 為石膏母模與石膏公模
最後調配矽膠及其顏色,均勻攪拌後 滴入凝固,均勻倒入石膏母模內,關上石 膏母模等其凝固,則可得其矽膠外皮,圖 5 為矽膠外皮。
圖 5 為矽膠外皮
五、人臉表情擷取軟體
人臉表情擷取軟體主要研究目的 為發展出能應用於機器頭顱之人臉表情與 之視覺技術,具有高偵測率與辨識率、且 速度不會太慢。圖 6為從複雜背景進行人 臉表情方法之架構圖;此人臉表情辨識策 略包含人臉偵測(Faces Detection)、特徵擷
(Facial Expression Interpretation)三部分,第 一部分是利用灰階資訊透過類神經網路偵 測出人臉區域。第二部分為從已偵測出的 人臉上利用五官不同的性質,進行特徵擷 取總共需偵測出 19 個特徵座標。第三部分 利用特徵座標換算成特徵參數透過類神經 網路來辨識表情。
圖 6 人臉表情辨識架構圖
5.1 人臉偵測
從複雜背景中判斷出人臉表情的任 務,首先必須從一複雜背景影像中成功偵 測出所有可能的人臉後,再從該些人臉進 行表情特徵的擷取,最後再判斷是屬於哪 種表情。人臉偵測技術,使用林明德[2] 的 方法,其流程如圖 7所示。首先是輸入影 像藉由 CCD 讀取影像或是圖片檔,然後經 過膚色濾波器去除膚色以外的資訊,在剩 下的部份擷取人臉候選區域。接者透過特 徵濾波器一的運算,篩選合理的區域,並 透過正規化及等化處理將人臉大小統一規 格,再來利用特徵濾波器二做更精準的篩 選,最後再透過倒傳遞類神經網路的判斷 是否為人臉。
圖 7 人臉偵測流程
5.2 特徵擷取
此階段流程為表情特徵擷取,對正面 人臉的影像上取得特徵值,之後再利用類 神經網路訓練獲得資料庫作比對,將未知 表情的人臉影像輸入比對資料庫辨識出表 情後輸出結果。人臉五官的分佈在臉上的 位置是有相對關係,大致上和人臉的大小 會成正比,所以採用先預估大略的範圍,
再針對該區域做細部的搜尋,省略了資訊 較少或是邊界雜訊較高的區域,可以有效 的節省運算的時間,且可以針對不同的五 官特徵,採用不同的搜尋策略。首先將人 臉轉正定位,然後搜尋眼睛特徵,然後搜 尋嘴巴的特徵,接者搜尋眉毛特徵,最後 總共搜尋完 19 特徵點座標。
眼睛在表達生氣的時候會有稍微緊閉 的現象,在驚訝的表情時常常會睜大,所 以眼睛傳達情緒的特徵,主要是眼睛開合 的程度,為了掌握這個特性,分別去擷取 雙眼上下眼皮的座標,總共 4 個特徵座標 點。眼睛特徵偵測流程如圖 8所示。首先 將人臉後選區的影像中預估眼睛的區域,
然侯分兩個步驟一個為保留亮度較低的灰 階資訊,另一個則為搜尋邊界線的資訊,
最後將兩個步驟共同有交集的影像進行搜 尋特徵,利用左右瞳孔的中心座標,分別 向上及向下搜尋,當碰觸到邊界後,及記
錄下來座標點,代表左眼的特徵有上下兩 個邊界座標點,以及右眼也有兩個邊界座 標點,總共找到 4 個代表眼睛上下邊界的 座標點即完成眼睛的特徵擷取。
圖 8 眼睛特徵擷取流程圖
5.3 表情辨識
嘴巴的變動在辨識人臉表情是一個很 重要的依據,像是在開心笑的時候嘴巴的 嘴角會往上揚,且上嘴唇的邊界線會容易 成一水平直線,下嘴唇會向下移動,整個 嘴型容易成為倒三角的形狀。生氣的時候 常是緊閉的狀態,嘴唇會有擠壓的痕跡。
驚訝的時候,嘴型會微微的成 O 字型。所 以我們的目標是擷取到嘴巴的上下左右 4 點的座標。且我們分兩個部份用不同的方 式來偵測,一部分是搜尋左右嘴角的座 標,而另一部分是上下嘴唇的邊界座標。
嘴巴的偵測原理也是利用臉部的比例 來預估嘴巴範圍後,在進行細部的搜尋工 作,不過由於在嘴型會因為情緒的差異有 很大的變動,會因為每個人的臉型長短而 造成範圍不容易確定,所以我們先搜尋鼻 孔的位置再來定義嘴巴的搜尋範圍,主要 是因為鼻孔有何瞳孔一樣的特色,和周圍 的膚色顏色差異大,且是黑色不易受到光 線的影響。定義出鼻孔位置後,再往下定
後面的步驟用到灰階值排序時不小心包含 到鼻孔而影響偵測的效果。偵測左右嘴角 的邊界座標流程如下圖 9所示。首先將人 臉後選區域的影像中偵測鼻子對低點的座 標,然後利用此座標在去預估嘴巴的區 域,接著分兩個步驟進行其中一個為保留 灰階值較深的資訊,另一個則為搜尋邊界 線的資訊,最後對兩個步驟的交集圖進行 嘴角特徵的搜尋,我們利用所剩嘴唇影像 中距離左右邊界角落最短距離的點來當作 左右嘴角的邊界座標點總共 2 點,就可以 完成左右嘴角特徵的擷取。
圖 9 眼睛特徵擷取流程圖
接下來則是要偵測上下嘴唇邊界的座 標,流程圖如圖 8 所示。首先將人臉區域 中嘴巴的區域給預估出來,然後分兩個步 驟進行,其中一個為利用 Cr 及 Cb 值的比 例將影像轉換後,主要是觀察嘴巴顏色的 特性。利用嘴巴部份跟人臉其他區域比起 來,紅色的成分較多,藍色的成分較少,
且 Cr 值會比 Cb 大許多,利用此特性進行 加權的方式運算,分數越高的區域越有可 能 為 嘴 巴 的 所 在 。 其 轉 換 公 式 參 考 Rein-Lien Hsu[3] 所提出如下式 1。Mouth Map 為嘴巴的搜尋區域。
圖 10 眼睛特徵擷取流程圖
Mouth Map =Cr2*(Cr2 -η*(Cr/Cb))2 (1)
其中係數
( )
∑ ( )
∑
∈
= ∈
FG y) (x,
FG y) (x,
2
y x, y)/Cb Cr(x, N
1
y x, n Cr 1 η 0.95
,Cr2 和Cr/Cb的值要正規化在[ 0,255]區間中,
FG 代表搜尋空間範圍,N 為 FG 的像素個 數,參數η為 FG 中Cr2平均值對Cr/Cb 平 均值的比值。將換算後的灰階質排序,保 留亮度較高的前 20%資訊,接者便搜尋嘴 巴底部的座標,由左右嘴角對應的中心向 下搜尋邊界的第一個點即為嘴底的特徵 點,另一部份則是利用 Sobel 邊界的資訊,
最後將上述兩個步驟的圖做交集後再搜尋 嘴唇中心上方的第一個邊界座標,即完成 嘴巴上下邊界的特徵擷取。
在表達情緒的時候,生氣往往是皺眉 頭,這時候會肌肉會帶動眉毛,往眉心的 地方集中過去,眉毛的前端會有向下移動 的趨勢,在來驚訝的時候,眼睛睜大眉毛 會跟著向上移動。所以眉毛有著不錯表情 特徵可以用來參考,且主要是眉毛前端靠 近人臉中心的部份移動較明顯,而眉毛末 端則較少變化,所以我們主要是搜尋眉毛 前端的 4 個邊界點,左右眉毛總共 8 個邊 界座標點。眉毛特徵偵測流程如圖 11所 示。首先將人臉後選區域預估眉毛的區 域,然後分成兩個步驟一個為保留灰階值 亮度較低的資訊,另一個為搜尋邊界資
訊,接者將兩個步驟的圖做交集,並且作 群組編號,保留左右各一組最大的群組,
最後搜尋眉毛特徵,即完成眉毛特徵的擷 取。
圖 11 眼睛特徵擷取流程圖
利用前面方法所偵測到的 19 個座標轉 換成 15 個特徵值量,主要是利用有情緒的 表情和無情緒中性臉的特徵值差異變化所 構成的特徵向量,透過事先訓練好的權重 值資料庫相乘後做表情辨識。系統啟動前 得先建立權重值資料庫,建立表情權重資 料庫的流程如圖 11所示,首先將需要辨識 的四類表情分別和一張中性無表情的基準 影像特徵值相減得到特徵向量當作訓練 檔,然後透過類神經網路的訓練,接者將 運算出的權重值紀錄即完成表情辨識的資 料庫。
建立好資料庫後,表情辨識系統的流 程圖如圖 12所示,系統啟動後首先可以利 用連續影像來統計或是手動拍攝取得一張 中性表情影像為基準,然後將輸入的未知 影像進行擷取特徵值(Features),接者再將 此值和基準中性表情的特徵值相減,即可 獲 得 此 未 知 表 情 的 特 徵 向 量 值 (Features Vector),最後此特徵向量值和表情資料庫 的權重值作相乘運算,利用分數的來判斷 目前輸入的未知影像較靠近哪一種表情,
再將表情辨識的結果輸出即完成辨識。
圖 12 系統辨識流程圖
我們所開發的自動化表情系統可以直 接對影像內的人物直接做表情辨識判斷,
並不限定在固定的環境或是光源下。所需 的條件為五官清晰眉毛必須不被頭髮遮 蔽,正面的人臉正視 CCD 即可(平面影像 無法偵測前後傾斜角度)。扣除人臉因為快 速移動而造成的的影像模糊不清,或是情 緒模擬兩可我們自己都無法以肉眼分辨的 影像之外。在此前提下由四組實驗的數據 統計顯示,如表 1,表 2,表 3,表 4所 示。笑的表情平均辨識率為 92.64%,生氣 的表情平均辨識率為 89.08%,驚訝表情平 均辨識率為 88.20%,無表情平均辨識率為 98.46%。其中以無表情及笑的表情辨識可 靠度較高,主要是因為這兩種表情在絕大 部分的人所表達的方式較相似。而生氣的 辨識率則較差,主要是因為生氣的表達方 式會因人而異而差異性較大。大部分生氣 主要比較大的臉部變動都是在於眉毛的高 低會改變,眉頭的部份會向兩眼的中心擠
眼都分不太出來,所以會造成生氣的辨識 率比其他的表情的辨識率差。
雖然人臉表情辨識的方法目前尚無法 全部達到辨識率逾 9 成,但其平均辨識率 也具有 8 成以上。最後應用在即時辨識的 系統上,我們將影像的輸入方式直接改成 CCD 的即時輸入影像,且將連續的兩張影 像的判斷結果相同才輸出,這樣也可以避 免因為人臉快速移動被拍攝的模糊影像也 當成輸入造成的判斷錯誤,而且也在一開 始由系統自己藉由拍攝學習出該人物的中 性無表情影像當做基準,這樣便完成了一 套完全是自動化的表情辨識系統,而不需 要人為的操作,相信應用在娛樂機器人上 應該是可以接受的。如圖 13即為辨識表情 成功的範例。
表 1 笑表情之辨識率
人物
辨識 正確
辨識
錯誤 辨識率 A 40 1 97.56 % B 62 12 83.78 % C 57 2 96.61 % D 45 0 100.00 % E 40 19 67.79 % F 48 1 97.95 % G 57 4 93.44 % H 53 3 94.64 % 總計 402 42 90.54 %
均辨識率為 90.54 %
表 2 無表情之辨識率
人物
辨識 正確
辨識
錯誤 辨識率 A 47 2 95.91 % B 47 2 95.91 % C 48 0 100.00 % D 48 1 97.95 % E 49 0 100.00 % F 49 0 100.50 % G 49 0 100.00 % H 48 1 97.95 % 總計 385 6 98.46 %
表 3 驚訝表情之辨識率
人物
辨識 正確
辨識
錯誤 辨識率 A 48 1 91.83 % B 48 3 94.11 % C 51 23 68.91 % D 48 3 94.11 % E 48 1 77.77 % F 48 1 97.95 % G 40 21 65.57 % H 43 6 87.75 % 總計 416 59 87.57 %
均辨識率為 87.57 %
表 4 生氣表情之辨識率
人物
辨識 正確
辨識
錯誤 辨識率 A 41 8 83.67 % B 50 5 90.90 % C 51 1 98.07 % D 50 1 98.03 % E 40 15 72.72 % F 44 4 91.60 % G 41 21 66.12 % H 41 7 85.41 % 總計 403 62 86.66 %
均辨識率為 86.66 %
圖 13 辨識四種表情
六、結論與未來方向
目前智慧型機器頭顱以完成初步的機 構設計、頭顱表皮製作及臉部特徵捕捉軟 體,接下來的步驟必須將頭顱的硬體及軟 體整合完成,臉部表情辨識的部分已經可 以辨識四種臉部的表情,由於時間的關 係,我們將於 11 月初把機器頭顱的硬體部 分與軟體做結合,使機器頭顱可以模仿出 人類的四種表情變化。
未來在頭顱機構設計方面,我們參考 初步的整合成果後,改善頭顱內部的機構 佈置,也將尋找較適合臉部作動的制動 器。在頭顱臉部皮膚方面,矽膠的材質與 真實的臉皮有些許的差異,我們將嘗試將 乳膠與矽膠結合,使臉部外觀更像真實人 臉。在軟體的部份,必須改善目前只能辨 識表情的種類,無法辨識表情的強弱的缺 點,以及改善辨識率,使臉部特徵的捕捉 更準確。
七、參考文獻
[1] Keith Waters., “A muscle model for animation three-Dimensional facial expression,”
Computer Graphics, Vol. 21, No. 4, pp.17-24, 1987.
[2] 林明德,“由複雜背景影像中快速進行特定人
物辨識之方法”,國立台灣科技大學機械工程 研究所碩士論文,2004。
[3] Hsu, R.-L., Abdel-Mottaleb, M. and Jain, A. K.,
“Face Detection in Color Images,” IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 24, No. 5, pp. 696~706, 2002.