• 沒有找到結果。

基於Histogram of Oriented Gradients之課堂舉手辨識研究

N/A
N/A
Protected

Academic year: 2021

Share "基於Histogram of Oriented Gradients之課堂舉手辨識研究"

Copied!
50
0
0

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

全文

(1)國立台灣師範大學資訊工程研究所 碩士論文. 指導教授: 李忠謀 博士. 基於 Histogram of Oriented Gradients 之 課堂舉手辨識研究 Histogram of Oriented Gradients based Arm Gesture Recognition Research. 研究生: 郭秉璋 撰 中華民國 101 年 07 月.

(2) 摘要 在現今教學環境中,以科技融入教學的 e 化教室越來越普遍,教 師希望可以透過各類的 e 化工具來了解學生的學習情況。而在種種學 生的動作中,舉手是最容易在課堂上與老師互動的,因此本研究提供 了學生舉手辨識系統,希望借由該系統讓老師可以即時快速的掌握學 生的情況。本研究使用少量攝影機在多人且複雜背景的情況下進行辨 識,希望可以降低環境因素的影響。為了達到此一目的,本研究主要 分為二個部份:複雜背景人物辨識分割與舉手判斷。 在複雜背景人物辨識與分割部分,使用了 k-means clustering 與 motion 的結合,將膚色取出來加上 motion 資訊能夠完整的抓出人物。 在舉手判斷的部份,使用了 Histogram of Oriented Gradient(HOG)製作 出 edge 的 feature 進行舉左手、正常狀態、舉右手的辨識。實驗中也 交叉比對了不同人物在場景的辨識、光線影響圖片的辨識。其正確率 在同一日當 model 的情況下平均高達 91%,而在不同日的情況下也有 7-8 成的水準。. 關鍵字:姿勢辨識、人物分割、k-means、HOG.

(3) Abstract In recently classroom environment, there are more and more teachers using electronic devices to help them easy to understand what students think and how students act. In all gestures, raising hand is the most popular way that students interacting with teachers. In this research, we provided a raising hand recognition system to help teacher to handle all students’ behavior. We use camera in complex background and monitor multiple people. To propose a system that can satisfy all environments and will not re-train after changing environments, we separate the system into two parts: people segmentation and gesture recognition. In people segmentation part, we use k-means clustering to extract skin color and then use motion to remove skin-liked background. In gesture recognition part, we use histogram of oriented gradient to get the gesture feature and then use SVM to classify. Finally in experimental part, we test 3 scenes to verify our method. When we use the same case to train and test, the correct rate is average 91%. Even we use different day for training/testing, the correct rate can also reach 80%.. Key words: Gesture recognition, People segmentation, dynamic k-means, HOG.

(4) 誌謝 首先,要感謝我的指導教授李忠謀教授。自大學認識李教授以來,深知教授 是一個關心學生,肯為學生付出的好教授。雖然只有短短的一年的指導,但在我 的研究中占最大的份量,提供最多的協助。接著是政杰學長,在我苦思找不到方 法的時候,政杰學長總會提供許多新奇有趣的想法,而這些想法正是我研究不可 缺少的一個角。 我要感謝方瓊瑤老師,在碩士班前二年中不辭辛勞的指導,老師在對各種排 版美工格式的要求,讓我在之後不管在哪方面都可以得心應手的應用。要感謝參 與我口試的委員們,在百忙之中抽空看了我的論文,並且給與非常多保貴的意見, 讓我的論文更加的完備。特別是葉富豪教授,在婚禮的隔天大老遠從高雄趕來台 北參加口試,也給予了最多的批評與修改方式。感謝師大資工的所有老師們,自 大學四年及研究所的學生生涯中,教導了我許多許多的知識,讓我在資訊工程這 塊領域有深且廣的知識。 感謝我待過二間實驗室的所有研究夥伴們心思細膩的智婷,善解人意的律嘉, 為人著想的俊麟、瑞宏,見識廣闊的敬恩,程式高手世堯,厲害的郁菱、阿正, 以及許多學弟妹的幫忙協助,讓我不論在研究上與口試時都可以無後顧之憂。 最後要感謝我的家人,在這長長的,長長的研究路途上給我的支持與鼓勵, 大家的支持是我向前研究的動力。. 在此獻上我最誠摯的感謝~謝謝大家~ 郭秉璋 2012 年 7 月.

(5) 目錄 圖目錄.................................................................................................III 表目錄................................................................................................. IV 第一章. 第二章. 第三章. 第四章. 簡介 ...................................................................................... 7 1.1. 序論 ............................................................................... 7. 1.2. 系統目的 ..................................................................... 10. 1.3. 研究困難 ..................................................................... 11. 1.4. 論文結構 ..................................................................... 12. 文獻探討 ............................................................................ 13 2.1. 教育研究 ..................................................................... 13. 2.2. 人物的分割與多攝影機的校正 ................................. 14. 2.3. 人物肢體辨識 ............................................................. 14. 2.4. 過去影像處理技術討論 ............................................. 17. 系統架構與運作流程 ........................................................ 21 3.1. 人物辨識系統 ............................................................. 21. 3.2. 舉手辨識系統 ............................................................. 26. 實驗結果與分析 ................................................................ 31 4.1 實驗目的 ........................................................................ 32 4.2 實驗環境 ........................................................................ 32 4.3 實驗方法與評分方式 .................................................... 33 4.4 Data sets .......................................................................... 34 4.5 實驗結果 ........................................................................ 36 4.6 分析 ................................................................................ 39 I.

(6) 第五章. 結論 .................................................................................... 43. 參考文獻........................................................................................... A.1. II.

(7) 圖目錄. 圖 1-1. Kinet 實體照片(上)與骨架節點偵測(下) ......................................... 7. 圖 1-2. Kinect 除了使用 RGB Camera 外同時也用紅外線偵測深度、多 個聲音輸入等資訊 ............................................................................ 8. 圖 1-3. 中華大學開發的人臉辨識自動點名系統 ........................................ 9. 圖 2-1. Hue 值分佈剛好成雙峰 .................................................................. 18. 圖 2-2. [Yu09]提到的 Hue distribution ........................................................ 18. 圖 2-3. YCrCb 分佈 ..................................................................................... 19. 圖 3-1. 系統流程圖 ...................................................................................... 21. 圖 3-2. Dynamic k-means clustering 流程圖 ............................................... 22. 圖 3-3. K-means clustering 結果 .................................................................. 23. 圖 3-4. HOG 流程圖 .................................................................................... 26. 圖 3-5. Gamma Normalization ..................................................................... 27. 圖 3-6. Cells and Blocks in HOG ................................................................. 28. 圖 4-1. 實驗環境視圖 .................................................................................. 32. 圖 4-2. Data set 1 座位分佈圖 ..................................................................... 34. 圖 4-3. Data set2 座位分佈圖 ...................................................................... 34. 圖 4-4. Data set 3 座位分佈圖 ..................................................................... 35. 圖 4-5. Data set 4 座位分佈圖 ..................................................................... 35. 圖 4-6. K-means 結果................................................................................... 36. 圖 4-7. 最低 training N 值比較圖 ................................................................ 37. 圖 4-8. 去背範例圖 ...................................................................................... 40. 圖 4-9. 錯誤情況範例圖 .............................................................................. 41. III.

(8) 表目錄. 表 4-1. Data sets 資料表 .............................................................................. 34. 表 4-2. 不同解析度執行時間分析 .............................................................. 35. 表 4-3. 最低 training N 值比較表 ................................................................ 37. 表 4-4. 各 data sets 交叉比較表 .................................................................. 38. 表 4-5. 關燈比較 .......................................................................................... 38. 表 4-6. 錯誤資料排行表 .............................................................................. 39. 表 4-7. 去背後結果表 .................................................................................. 40. IV.

(9) 第一章. 簡介 1.1 序論 隨著時代的變遷,人類的思考邏輯也不斷的改變。年齡的差距所形成思想的 隔閡困擾著許多大人們。在現今的教學現場,教師的授課技巧與教學內容不再是 唯一被重視的項目,如何在教學的同時兼顧學生的一舉一動,並適時的提供必要 的協助與修正成為一個重要的議題。 在過去教育領域的研究中,運用了許多課堂觀察法[1][2][5]。這些課堂上的 觀察可以提供教師在往後的教學上做為一個參考的依據,但學生的思想動作千變 萬化,或許下次是一個月後或更久才會發生同樣的事件,這使得原本觀察的效用 大大的降低。因此,如何提供教師一個即時的學生資訊回饋就更顯得重要。 而在研究學生行為時,又屬學生動作最為重要。近年來許多研究紛紛指向人 類動作的辨識。而後有許多遊戲製造商利用了肢體辨視的概念製造了新一代的遊 戲設備。例如微軟在前年(2010 年)10 月上市的 Xbox 套件 Kinect(圖 1-1、圖 1-2), 提供使用者以肢體動作取代傳統的遊戲控制器去操作遊戲。甚至利用影像追蹤處 理技術,把使用者的骨架節點找出來,一方面增加人物的辨識率另一方面讓遊戲. 圖 1-1 Kinect 實體照片(上)與骨架節點偵測(下) 7.

(10) 圖 1-2 Kinect 除了使用 RGB Camera 外同時也用紅外線偵測深度、多個聲音輸 入等資訊 有更高的精確度。而這些肢體動作透過一般攝影機、紅外線攝影機的結合,在遊 戲系統中建立 3D 立體影像,也是因為這些影像讓遊戲系統知道使用者的動作。 而除了使用影像之外,Kinect 也使用了麥克風陣列去補捉各個角度不同的聲音, 進而達到準確定位的功用。同時 Sony 也推出了 Play Station Move 同樣用影像去 記錄使用者的動作。由此可見,利用影像達到辨識人的動作越來越受重視。 在一般教室或是集會演講時,台上的講述著可以藉由台下聽講者的一些動作 知道聽講者的反應。例如聽講者聽到想睡了、很有興趣聽到興緻勃勃、對演講者 有疑問而交頭接耳…等,小型的集會或許演講者可以很輕易的了解所有聽講者的 情況。但是若碰到人多的時候,或許演講者就沒辦法這麼容易掌握了。因此,若 有一個系統可以輔助演講者即時的掌握各個區塊的聽講者有哪些反應,這將對演 講者是一個極大的幫助,而演講者也可以把注意力集中在演講的內容,讓演講的 品質大為提升。. 8.

(11) 圖 1-3 中華大學開發的人臉辨識自動點名系統 先前中華大學曾研發「人臉辨識自動點名系統」[4](圖 1-3),不過該系統偵 測學生的方式是在每位學生面前都裝一台攝影機,這樣的成本相對來說較高。而 且不用人物分割,只需要針對特定位置已知的學生特徵 feature 去做比對即可。 為了降低成本及提高適用的廣度性,本研究只利用少數幾台 PTZ 攝影機,即希 望分割出學生的位置,且每隔一段時間觀察並記錄下學生動作。在記錄下動作時 追蹤攝影機可以輪流 zoom in 至各個學生所在位置拍攝較大的影像。除了可以應 用該研究的人臉辨識之外,還可以多做一些姿勢的辨識等工作。 本研究綜合以上各點,把實驗場景放在一般教室。系統希望能夠做到分割出 所有的人的位置,並且長時間觀察所有學生的動作做記錄與分析。而在所有動作 中,學生是否舉手這點是本研究特別注重的。因為通常學生有問題或是臨時有事 發生,學生都會舉手徵求教師的同意。因此,本研究會長時間統計所有偵測到的 學生的舉手次數。 9.

(12) 1.2 系統目的 本系統有二個主要的目的,一是協助教師於教學時能更容易掌握所有學生的 學習情況,二是能夠減低環境變化的因素對系統所造成的影響。 一、 協助教師瞭解學生學習情況 在眾多學生的教室,教師較難一直注意每一個學生。而在上課中的教師,就 算注意到了學生當前的情況,教師也較難記錄下每個時間點學生所發生的動作。 本系統希望透過固定時間的觀察,提供教師整堂課的觀察記錄。而且,使用電腦 輔助教學的話,可以利用許多電腦比人腦更為厲害的優點,例如記憶空間較大、 處理速度較快、分析功能較快、運算速度較快等。若能運用以上優點,對於每個 時間點每個學生的動作都做下記錄,例如在這堂課裡面學生甲共舉手了幾次、跟 旁邊的同學講話幾次等等。教師需要花費更多額外的力氣將這些資訊記錄下來。 但這些事情讓電腦儲存設備記錄下來做卻是很簡單的一件事情。再者,利用統計 相關系統甚至可以做到調查一個學期下來學生動作的趨勢,進而去了解學生的學 習情況。例如學生如果舉手發問的情況越來越少,除了有可能學生越來越了解這 門課的內容,但也有可能是對這門課越來越沒興趣了。這些統計數據都是可以提 供教師參考,而用電腦做處理會比用人腦來記憶簡單很多。這也是本學生行為分 析系統主要的目的。 另外,除了一般正規的觀察之外,課堂中可能還有一些特別的狀況。例如有 學生遲到、多數學生的移動等等。會導致畫面有大量的 motion。系統希望會根據 不同情況,去追蹤特定的事件,例如遲到的學生產生大 motion 的變動,追蹤攝 影機會中斷目前正在觀察的學生,轉而去觀察這位遲到的學生。 綜合上述,本系統所儲存的資料庫除了每次在初始化時記錄下哪些位子坐了 學生,坐了哪位學生之外,同時也會拍照儲存每個學生不同時間點的動作,分析 出每一個學生所有可辨識動作的次數、每堂課有什麼突發事件等等。有這樣完整 10.

(13) 的資料庫建置,希望能夠提供教師以及教育研究學者能夠有充份完整的資料去做 分析研究。 而為了達到上述目的,在一個教室中,必需先知道哪些位置有人,接著才是 對人物姿勢的辨識。因此,本研究主要有二個系統,分別是人物偵測系統與舉手 辨識系統。 二、 減低環境變化的因素對系統所造成的影響 在過去有關姿勢辨識的研究中,大部份以單一顏色背景或是單一主角為大宗。 本研究嘗試在複雜的背景以及多人的環境下進行,為的是希望系統能有更大的相 容性,在各種情況的環境皆能執行。另外,雖然事先建立背景模型會讓取出前景 更加的容易,若先建立背景模型會造成一旦換了一個環境則舊的資料就無法使用。 且背景會因為環境光線的影響造成誤差。本研究最後會比較在光線的改變下,實 驗正確率依然有一定的水平。. 1.3 研究困難 在目前已發表的研究中,大多以少數人或是單人的分割辨識為主,在本研究 中單一攝影機需要同分割並辨識出至少 6 人。這是先前研究較少提到的。雖然在 Weiming Hu 等人[Wei06]所發表的 paper 中有提到多人物分割的方法,不過其研 究著重在行走的人,其 motion 的垂直投影較其他部份劇烈。然而本研究中學生 坐在教室裡有互相遮蔽的問題,基本上攝影機看到的只有學生的上半身。再加上 教室中學生不像外面走動的人物會有很大的 motion,這又使得在人物分割上增加 許多困難。 接著,本研究在假設學生的臉都會露出來,不用 OpenCV 的 Face Detection 等人臉辨識的技術的原因,是發現該技術的人臉需要在畫面占一定比例以上。本. 11.

(14) 研究中的學生若坐到教室較後面,其人臉在畫面中會變的相當的小,導致系統無 法偵測出人臉的位置,這也是本研究在人物定位上所碰到的困難。. 1.4 論文結構 本論文接下來的第二章會先介紹本研究所引用參考到的文獻。第三章會介紹 系統的流程、系統所使用的方式、參數等等。第四章詳細的說明了實驗的流程、 環境等,以及實驗的結果、數據、分析。最後第五章是結論與未來展望。. 12.

(15) 第二章. 文獻探討. 要做到教室內學生的觀察,首先在前處理時,要在一段影片中分割出一個一 個的學生,再對學生的動作去做分析。至於要如何分析學生的動作,這有許多教 育研究學者提出了不同的觀點。本篇論文除了一般電腦視覺影像處理的技術之外, 同時也做了一些教育觀察法的分析與研究。本章將分成四個部份來探討過往文獻。 分別是:教育研究、人物的分割與多攝影機的校正、人物肢體辨識、過去影像處 理技術討論四個大方向。. 2.1 教育研究 在分割出學生、辨識出人的肢體動作之後,比較重要的一點是:在一節課這 麼長的時間裡,我該觀察學生什麼?Wendy L. Bjorklund 和 Diana L. Rehling 在 [Wed10]做的統計研究指出,不論學生自己認或或是觀察者實際觀察到的使學習 狀況變差情形有下列幾種:遲到早退、傳紙條、飲食、睡覺、與鄰座同學聊天等。 而學生在課堂上舉手又特別重要。學生舉手有可能是因為聽不懂教師的授課、對 教師授課有疑問等。這些情況都有可能會打斷教師目前的上課,讓課堂中斷。顯 然學生舉手是一個非常重要的因素。因此,本研究會著重在學生上課舉手為主。 另外還有一個議題是:該如何觀察學生?吳怡君[1]、紀宜岑[2]中都利用了 時間取樣觀察法,[5]這份文件中提到了各種觀察法。時間取樣顧名思義是在每 固定一個時間對觀察者做一個取樣。好處是可以知道觀察者長時間下來的動態, 但缺點是若有突發事件,會造成無法觀察到。但如果改成使用事件取樣觀察法, 針對特殊的事件去做記錄的話,或許就可以另外記錄一些比較特別的事件。另外, 13.

(16) 鄭玉玲在[6]中提到「在工作中」的觀察表格,如何決定觀察順序等等的。在本 研究中,會固定一段時間對學生做掃瞄記錄。同時,也會記錄下一些課堂上影響 課堂進行的突發事件。同時結合了上述的時間取樣觀察法與空間取樣觀察法。綜 合二種觀察法的優點讓系統能夠更好分析學生行為。. 2.2 人物的分割與多攝影機的校正 Weiming Hu 等人於[Wei06]中提到可以找人物的垂直投影去判斷人物。相較 於其他的事物,人在站立時 motion 垂直的投影將會是一個比較特別的 feature。 至於多攝影機校正的部份,先前的研究較少是以人當主角,比較多研究者拍 攝停車場的畫面,利用車子的移動方向進行多攝影機的校正。例如 Lalit Gupta 和 Suwei Ma[Lal01]以及 Xiaogang Wang 等人[Xia09]的論文中提出了不用很精準 的校正就可以測量車流。其實是應用了時間的要素,觀察車子 motion 的移動。. 2.3 人物肢體辨識 人物肢體辨識從早年開始已有許多人發表過相關的論文。說起人物的肢體辨 識,其實範圍蠻廣的,小範圍的從手勢的辨識、頭部動作辨識,到大範圍的上半 身動作、全身動作辨識等分別需要不用的技術去達成。 一、 手部動作辨識 手部辨識方面,過去的研究大多是針對手語為主。由於聽障人士在口說語言 上溝通有許多困難。目前已有研究發展出一套語音辨識系統,把語音當作是輸入 資料,因此,許多人也希望使用手語當作輸入資料。也因為這種想造福大眾的想 法,再加上彩色影像的普及,開始有了多許多手語辨識的研究,而這些研究也是 以手部動作為中心。. 14.

(17) 在 Lalit Gupta 與 Suwei Ma 在[Lal01]中,利用手部輪廓線的斜率、曲率等當 作特徵;Qing 等人在[Qin08]也提到用各種不同的 Haar-Like feature 做為特徵,進 而去辨識手勢。不過這二種方法都是依手的細部形狀去辨識手的姿勢,若手有一 點歪斜或是偏離了預先定義的角度,有很大的可能造成錯誤的判斷。因此 Juan 等人在[Jua05]中提到了用馬賽克處理的概念去處理。也就是將輸入的影像分割成 𝑛 × 𝑚個區塊,若該區塊有手的比例較大,則的數值會越大,這樣利用手的大概 分佈情形去判斷輸入的測試資料是哪個手勢。當然這不是唯一的判斷方法,該篇 論文中同時也利用了表格分析與刪去的規則,使得判斷的結果更加的精準。不過, 上述的方式都是在已知手的位置的前提下去進行的,也就是說系統必需經過前處 理,通常研究者為了簡化流程,會以簡單背景為實驗環境。但是在日常生活中所 補捉到的影片通常不會有這麼好的環境,大部份的影片都是在複雜背景的情況下, 這時就要另外討論了。 二、 頭的動作辨識 成大醫學院神經科醫師蔡景仁在[7]中提到:在目前台灣教育下的學生較不 會勇於發問自己的問題。因此,較多的教師開始注重學生頭部的動作。有些學生 或許覺得在全班同學面前羞於舉手發問,但是點頭或是搖頭等小動作卻是可以做 到的。 Jina Jina Lee 和 Stacy C. Marsella 針對了頭部動作辨識也做了研究[Jin10]。該 研究結合了自然語言,研究人在說話時因各種不同的語氣、字句所附加的各種頭 部動作,並使用 HMM 去學習各種頭的動作與 feature 關係。另外,Sargin, M.E. 等人在[Sar08]中,同時也認為人在講話的各種不同的語句音調會影響頭的旋轉角 度、動作。因此,利用了頭的中軸在三度空間中的尤拉角(Euler's angles)與聲韻 學的關係,分析各種語句所對應的頭部動作。. 15.

(18) 三、 肢體相對位置辨識 有別於前面研究利用形狀、輪廓等針對細部的頭、手的辨識,較大的肢體動 作較沒有辦法利用這些細微的 feature。以舉手做為例子:每個人舉手的高度、角 度甚至手的長度等等,都是會影響利用形狀、輪廓來辨識的正確率的。因此,如 果能夠利用肢體各個部位的相對位置來辨識,準確率相對來說將會有顯著的差 別。 J. Han 等人於[Han09]中即是利用這個概念來實作。該研究先擷取出頭、手 的位置後,再利用頭、手的相對位置去判斷人目前是什麼動作。該研究還特別引 入的 active learning。由於頭、手在整張影像所占的比例相對於其他物件是比較 少的。因此在 training 時,若能夠依比例調整,提高頭手部份的權重,或許對資 料 training 上會比較有用。另外 Weiming Hu 等人發表的[Wei06]也有提到全身人 物的辨識。David A. Sadlier 等人於[Dav05]中也提到了運用人臉、衣服、手、脖 子等地方的顏色相對位置分佈來擷取 feature。. 四、 Human Detection 在[Nav05]中,首次提出使用 Histogram of Oriented Gradient(HOG)的概念進 行人物的辨識。在早期曾有使用 Haar feature 做人臉或是上半身的辨識。但由於 各種人的身體形狀姿勢可能依地區、性別、人物旋轉等有所差別,因此在這部份 一直無法達到非常高的正確率。而使用 HOG 去計算各個 cell 與 block 的 gradient 差異時,剛好對於些為差異的形狀有較高的容忍度,雖然沒有直接套用 Fuzzy model,但卻可以讓 training model 有 fuzzy 的效果。[Nav05]中測試了許多在單純 背景下的人物偵測,在調整過一些 HOG 參數後都可以到很好的效果。. 16.

(19) 2.4 過去影像處理技術討論 在這一節中比較了過去一些影像處理的技術與色彩取樣方式 一、 Color Space 在目前的影像顏色表示法中,除了最基本的 RGB color space 之外,HSI 與 YCrCb 二種 color space 也是常被人所使用的。本研究主要使用 HSI color space。 在之前的研究提出許多偵測膚色的方法[Han09]、[Yu09]。其中[Yu09]提到,使用 YCrCb 與 HSI 是較好擷取出膚用的 color model。因此,接下來針對 HSI 與 YCrCb color space 做介紹與比較。 (一) HSI Color Space 這個 Color Space 是用三個 band 去描述一個顏色,分別是:色相(H, hue)、 飽合度(S, saturation)與強度(I, intensity)。色相即是色度,例如某個東西是紅色、 黃色等等。飽合度為該顏色所加上了多少的白光的值,也因此,飽合度越高的顏 色,其彩度會越低。最後,強度指的是一個顏色的灰階程度。 在彩色影像中 HSI 與 RGB 的轉換關係為: 𝜃 if 𝐵 ≤ 𝐺 𝐻={ 360 − 𝜃 otherwise 其中 1 2 [(𝑅 − 𝐺) + (𝑅 − 𝐵)]. 𝜃 = 𝑐𝑜𝑠 −1 (. [(𝑅 − 𝑆 =1−. 𝐺)2. + (𝑅 − 𝐵)(𝐺 −. 1) 𝐵)]2. 3 [𝑚𝑖𝑛(𝑅, 𝐺, 𝐵)] (𝑅 + 𝐺 + 𝐵) 1 𝐼 = (𝑅 + 𝐺 + 𝐵) 3. HSI color space 在先天上還是有缺點。由於計算 H 時有除以一個分母,當 17.

(20) 分母為 0 時,無法計算出 Hue 值。分母為 0 的點為灰色系(即R = G = B)。因此, 在碰到灰色系顏色時,要另外特別處理。 而 Yu-Ting Pai 等人在[Yu09]提到膚色的 Hue distribution 有一定的機率分佈 於-5~30 之間,是較穩定的方法。. pixels. 80000 60000 40000 20000 0 0 3160 91121152182213244274305335 Hue Value. (a). (b) 圖 2-1 Hue 值分佈剛好成雙峰 (a)原始圖片 (b)對應的 hue 值. 圖 2-2 [Yu09]提到的 Hue distribution. 18.

(21) (a) 150000. 150000. pixels. pixels. 200000 100000 50000. 50000 0. 1 37 73 109 145 181 217 253 289 325. 1 37 73 109 145 181 217 253 289 325. 0. 100000. Cr. Cb. (b). (c). (d). pixels. 150000 100000 50000. 250000 200000 150000 100000 50000 0 1 37 73 109 145 181 217 253 289 325. 0 1 37 73 109 145 181 217 253 289 325. pixels. 200000. Cr. Cb. (e). (f). 圖 2-3 YCrCb 分佈 (a)原圖、(b)a 圖之 Cr 值分佈、(c)a 圖之 Cb 值分佈 (d)原圖、(e)d 圖之 Cr 值分佈、(f)d 圖之 Cb 值分佈 19.

(22) (二) YCrCb Color Space YCrCb 由亮度元素 Y 和紅、藍色系的色彩強度 Cr Cb 組合而成。其轉換公 式如下: 𝑌 0.299 [ 𝐶𝑟 ] = [ 0.500 𝐶𝑏 −0.1687. 0.587 −0.4187 −0.3313. 𝑅 0.114 −0.0813] [𝐺 ] 𝐵 0.500. 不過在 Cr 與 Cb 因為在自然光影像(照片 or 一般生活影像,非人工繪製圖片) 中,有較集中的特性。不論怎麼樣的自然照片都固定在中間,所以並無法使用(圖 2-3)。 而在本實驗中,Hue 值分佈剛好落在二個主要的雙峰分佈中(圖 2-1(a))。其 值較小的約為皮膚顏色範圍,其值大的約為背景色範圍。圖 2-2 恰巧符合本實驗 所需的數值。因此,本實驗使用 Hue 這個 band 當作是主要分析顏色的 color space。. 20.

(23) 第三章. 系統架構與運作流程 本章將介紹本研究的系統架構。首先會簡單介紹一下本研究實作這套系統主 要的目的。接下來會有詳細的流程圖,並搭配文字介紹整個系統的流程。最後是 整個系統架設所在的環境。. 3.1 系統流程 本研究主要分為二個系統分別是人物辨識系統與舉手辨識系統。 一、 人物辨識系統 本研究假設在初始化時,只要有人的地方,一定會產生 motion。因為人不管 再怎麼靜止,一定或多或少會有些微的移動,因此 motion 量在研究中占有一定 的份量。接著就是顏色資訊,在研究中特別使用 k-means clustering 方法,針對 hue 這個 band 做分類。. Single Seats Image Sequences. Image Sequences. No. System Initialization. Already Initialized? Gesture Recognition. Yes People Segmentation. Database of Seat Information. Output. 圖 3-1 系統流程圖 21. Student Gesture Database.

(24) Last 10 times K-means clustering data. Hue band image. Yes. Set K value by database. Already Initialized? No Set K value by past experiment. Set data center value. Run k-means clustering. Yes Stable? No Increase / decrease K. End of k-means clustering. 圖 3-2 Dynamic k-means clustering 流程圖 (一) K-means Clustering 在[Yu09]中提到膚色的 Hue 的範圍,其 2 個標準差的誤差值(約 95%的 機率)會落在 hue 值-5~30 中。在背景色會在畫面中占較大的比例的前提下, 我們過濾出前幾大的分色區塊。剩下來的一些雜色即有可能是學生所穿的 衣服的顏色。 不同於一般的 k-means 演算法,本研究使用了 Dynamic k-means 方式。 由於傳統的 k-means 是固定一個 k 值。但在本實驗分色時,若固定 k 值可能 會使得膚色區域過大。因此本研究特別使用了 Dynamic k-means,一開始並 不固定 k 值,讓分出來的色塊範圍能夠更符合所需。 本研究在一開始依據過往經驗,選擇𝑘 = 5做為起始。若為系統初始化 22.

(25) 圖 3-3 K-means clustering 結果. 時,第一個 k 值指定為[Yu09]中提到的中心位置;若非系統初使化狀態,k 值會依前一次執行 k-means 的結果,指定上次的 k 值當作本次的 k 值。並依 目前影像中大於某個 threshold 的數量的 hue 值當做每一個類別的中心,剩 下若尚未決定中心的點即在剩下的 hue 值中隨機分配。接著執行 k-means 的演算法調整中心值。 接下來會測試中心 hue 值是否穩定,我們假定一開始已知膚色的 hue 值大概範圍,目前的 k 經過 k-means 後造成膚色的中心值偏離過大,代表 目前的 k 值太大需要增加減少 k 值。若中心值變動不大,特別是膚色的中 心值不太變動,則代表目前為穩定狀態,可以結束分類。 若達到穩定狀態即停止修改中心。但這個方法執行時間會較久,因此 研究者修改了 k-means 中穩定狀態的定義。若各類中心的 hue 值跳動太大, 有可能是 assign 的不好或是 k 值過大或過小,因此需要增加或減少 k 值。 借此不斷修改 k 值一直到系統穩定為止,即可達到最佳分類。 分完的不同 k 的範圍,會有一類最接近膚色的範圍的(hue-5~30)。用此 可以過濾出膚色,準備與接下來的其他資訊結合。. 23.

(26) (二) Temporal Difference Detection 接著環境攝影機主要的功能會轉變成監看是否有突發事件的發生。突 發事件通常會伴隨著劇烈的 motion。例如有個同學走入攝影環境,或是有 同學走出攝影環境。其起身的動作會帶來很大的 motion,因此可以利用大 motion 的產生來判斷是否有突發事件。而這些突發事件將會中斷追蹤攝影 機目前的工作,讓它在觀察這個突發事件。 本研究使用 motion 量累積的概念去實做 motion 偵測。新的 motion 會 比舊的 motion 重要,因為學生可能會移動,新的移動的點通常就是會有學 生。再來,我們假設只要有學生的地方一定或多或少會有 motion。因為人 在日常生活動,完全不動的機率非常非常之小。而在 k-means 中時,有可 能將類似膚色的背景顏色與人物合在一起。因此,加入 motion 的判斷就顯 的特別重要。 本實驗中 motion 偵測公式如下: 𝑚𝑡 = 𝐼𝑡 − 𝐼𝑡−1 + 𝑚𝑡−1 × α 其中,mt 為當前 frame 的 motion 量,It 目前 frame 的影像,α為調整過 去 motion 量的一個參數。 (三) Upper-body Detection 由於為了更精確的框出人物的位置,本研究使用 Ada boost 的方式來做 上半身偵測。其中 Ada boost 是 OpenCV 所提供的函式庫。會在畫面中依不 同大小的視窗做偵測,並依設計的一些條件淘汰後取出最後的上半身候選 區塊。 (四) Information Combination 由於影像中單靠 k-means 可能找到膚色的背景點,而單靠 motion 時又 24.

(27) 不是每個時間點所有人都在動。因此如何把二者結合起來就變成一個學問。 本研究將每個 pixel 視為只要前一次是學生,接下來是學生的機率就會變大。 因此,先將 motion、k-means、upper-body 的結果做 and 之後得到Ptmku,其 中 t 為目前時間,mku 代表 motion、k-means、upper-body 結果的混合。接 著,利用以下公式調整 𝑃𝑡𝑠 = {. 𝑃𝑡𝑚𝑘𝑢 otherwise 𝑚𝑘𝑢 if 𝑃𝑚𝑘𝑢 < 𝛽 and 𝑃 𝑠 1 − 𝑃𝑡 𝑡 𝑡−1. 上面公式主要目的是將目前判定非學生,但前一個 frame 是學生的點, 把他的機率調大。因為在上課中學生不太會換位置的假設下,同一個點在 前一秒是學生時,下一秒有很大的機率同時也是學生。利用這個概念,可 以使最後的結果較完美。. 25.

(28) 二、 舉手辨識系統 本研究在確認學生正確位置後,需要一個較好的方式來辨認學生的動作。但 一般純顏色(膚色)的判斷在多位學生重疊時,會產生膚色重疊的問題,因此,無 法像大部份前人的研究使用顏色來做為判斷的依據。 在 Navneet Dalal and Bill Triggs[Nav05]所提出的 Histogram of Oriented Gradient(HOG)中,使用了類似 Edge Detection 的方式,並加入了 Gradient 的 Histogram。比起早期被廣泛使用的 Haar-like based edge detection 擁有較大的包容 度,最後利用了 SVM 分類器,將 HOG feature 加以分類。 整個 HOG 的流程圖如圖[3-4]所示. Collect HOG over detection window. SVM. Normalize gamma & color. Construct normalize over overlapping spatial blocks. Classify result. Compute gradient. Weighted vote info spatial & orientation cells. Input image. 圖 3-4 HOG 流程圖. 26.

(29) 圖 3-5 Gamma Normalization 在[Nav05]所提出的 HOG 中主要有以下步驟:Gamma Normalization、 Gradients of each pixel、Cells & Blocks、Normalization、SVM。 (一) Gamma Normalization: 在進行 HOG 之前,為了避免光線的影響,會進行 Gamma Normalization。 意即把亮度不一致的圖片調整到類似的亮度,進而避免因圖片太暗或太亮 造成 edge 不明顯。如圖[3-5]所示,透過一定的 Gamma 值調整,使圖片亮 度分部較均勻。以上是[Nav05]中提到在取 HOG feature 時的第一步,但由 於後面仍然會對每個 descriptor 做 normalize 的動作,因此這一步的效果並 不是很明顯。[Nav05]也說到這一步在實際應用上其實可以省略。 (二) Gradients of Each Pixel: Gradient 即是單一個 pixel 與臨近的 pixel 間的相素差值。代入公式為: ∇𝑓 =. 𝜕𝑓 𝜕𝑓 𝑥̂ + 𝑦̂ ∂𝑥 ∂𝑦. 實際實做時,用 1-D 的 Sobel operator,分別算出 x 與 y 方向的 gradient(∆X 與∆Y),再代入下面公式計算梯度方向。 Arg(𝑝𝑖𝑥𝑒𝑙) = tan−1. ∆𝑌 ∆𝑋. 因此,每個 pixel 會計算出二個值,分別是 1.梯度強度 與 2.梯度方向。. 27.

(30) 圖 3-6 Cells and Blocks in HOG. (三) Cells & Blocks 在 HOG 裡,因為要計算各個最小單位的 histogram,因此無法以 pixel 為最小單位,需要將數個 pixel 組成出較大的單位元才有辦法計算 histogram。 如[圖 3-6]所示 Cell. :由數個 pixel 所組成的單位。不同的 cell 可能包含相同的 pixel。. Block :由數個 Cell 所組成的單位,同一個 Cell 只會屬於其中一個 Block。 其中 Block 的取法又分為取矩形(R-HOG)與取圓形(C-HOG)。 在統計方向時,由於理論上 gradient 來自四面八方由 0°~360°。但若將 其全部計入似乎太多資訊了。因此在這裡先裝 360 度減半成 180 度,也就 是相反方向的視為同一方向。用圖片顏色來解釋,可以把他看成在這個顏 色變化的地方有一個由 A 至 B 的顏色變化,但是 A-B 之間哪邊深哪邊淺在 這裡就不會去計較。由於 180 度是一個連續的實數,在實做上較複雜,因 此,將 180 度平均分割成若干個 bin,這樣一方面減少運算的數量另一方面 讓方向能夠更明確。例如,將 180 度分割成為 9 個 bin,則每個 bin 為 20 度。因此,0°~19°的 gradient 視為同一方向,20°~39°的 gradient 視為同一 方向…以此類推。 在本研究中,以8 × 8個 pixels 為一個 Cell,4 × 4個 Cells 為一個 Block, 28.

(31) 而每個 bin 的大小為 20 度,意即將 180 度分割成為 9 個 bin。 利用以上結果,可以表示出 HOG 的 feature。舉例來說,一個 cell 包含 了 64 個 pixels 的方向 histogram 資料,會分別統計出 9 個方向各有多少個 pixels。而將可重覆的2 × 2個 cells 組合成一個 block,用此來表示一個 HOG feature。最後,在一張圖片影像裡面,會有許多個 blocks,每個 block 所在 的位置不同代表不同的地方的 gradients histogram。而這些 feature 因為具有 方向性且分散在圖片的不同位置,可以代表在圖片各個不同地方其 edge 方 向,使得辨識得以成功。 (四) Normalization and Descriptor Blocks 在取完 HOG feature 後,由於各個 histogram 的累加的最大值皆不同, 且接下來需要交由 SVM 來分類,因此需要將各個 feature normalize。在這 裡提供了四種 Normalize 的方法 (1) Norm v. v′ =. √||v||22 + ϵ2. (2) L2-Hys 同 L2-Norm,但將超過 v 值超過 0.2 的設成 0.2,並重新 normalize。 (3) L1-norm v′ =. v ||v||1 + ϵ2. (4) L1-sqrt v′ =. v √||v||12 + ϵ2. 其中,v 是尚未 normalize 的 descriptor vector;||v||k 是 v 的 k-norm, 29.

(32) k=1,2;ϵ是一個很小的常數,用來避免分母為 0。 本研究中使用(1)的方式來做 normalize。會先計算 v 的長度,並為了避 免除以零的問題,因此在分母加了一個小小的數ϵ2。讓 v 去除以長度加上ϵ2。. (五) Support Vector Machine(SVM) Support Vector Machine(SVM)主要是將一多維座標點分成多類的一個 分類器。以二維座標分割成二類為例,會利用最小平方法找最適合直線去 分割座標點,使得之後進來的資料可以快速的找到自己屬於哪一個類別。 在此,使用由台大資工所教授所提供的 LIBSVM [11]。該 SVM 可直接 輸入多類別的資料,並產對學習後的 module 檔。並且最後依據當初所學習 的檔案,可以直接將 input data 做多類別的 SVM 分類。 HOG 主要的 feature 單位為 block 的方向 histogram 值。上面提到將圖 片切割成多個 cell,假設每個 cell 為8 × 8個 pixels,則這個 cell 會記錄這 64 個 pixels 的方向的 histogram。而 cell 組合而成的 block 為 svm 最小的 feature 單位。由於在計算 SVM 時,需要讓每個 input 都有相同數量的 feature,因 此在本研究中會調整圖片大小,使得每張圖片的大小一致。. 30.

(33) 第四章. 實驗結果與分析 本研究使用 3 台 Full HD PTZ 攝影機,每台攝影機拍攝3 × 2個座位,3 台共 3 × 6個座位,每台攝影機可以提供1280 × 960畫質的影像以供分析。實驗程式 以 Microsoft® Visual Studio 2008 C#為主,並搭配 Visual Studio 上的 OpenCV Library “EMGU” 。人臉偵測使用 OpenCV 所提供的 Ada boost 人臉偵測法;SVM 使用台大資工所教授[11]所撰寫的 Lib-SVM。而由於本實驗在某些應用上需與其 他系統整合,因此實驗機器分為測試用與整合用共 2 台,詳細規格如下表 測試用. 整合用. CPU. Intel® Core™2 Quad Q6600. Intel® Core™ i5 2500s. Ram. 3.00GB. 8.00GB. OS. Microsoft® Windows7 32bit. Microsoft® Windows7 64bit. Professional. Professional. 本章一開始會先介紹開發的環境、實驗的環境、使用的 data sets 等,接著最 後是實驗的數據與資料的分析、改進方式等。. 31.

(34) 圖 4-1 實驗環境視圖. 4.1 實驗目的 本實驗希望驗證系統的準確性,判斷學生是否有舉手,並且要判斷該名學生 是舉左手還是右手。且本系統希望能夠容忍環境一些些微的影響例如光線的改變 等等,因此實驗中也包含了測試不同光線環境下系統是否仍能正常運作。. 4.2 實驗環境 本研究系統所架設的環境於一般教室,天花板位置約距地板 4 公尺,共有 3 架 Full HD PTZ 攝影機,每架攝影機可拍攝3 × 2共 6 位學生的影像。學生座位共 有3 × 6共 18 個座位。詳細配置圖如圖 4-1 所示。 另外,由於本系統使用動態調整技術,可以容忍攝影機移動位置。也就是攝 影機不一定每次都要裝在同樣的位置。只要人物的穿著不要與背景色過於接近, 或是特意的喬裝成背景,系統會依目前所擷取的膚色區域與 motion、其他顏色分 析結果自動建立人物位置。也是因為沒有建立背景的結果,每次啟動系統時,需 要一點時間讓系統來學習目前的環境並偵測人物位置。. 32.

(35) 4.3 實驗方式與評分方式 基於要判斷學生舉手與光線影響的二個目的,我們讓學生隨機的坐在實驗的 3×6 個座位的教室中,學生舉手順序依不同列不同排分別舉手測試,每次舉手時 左手與右手分別輪流舉手。 本實驗使用的攝影機截取速度為 10fps,在輸入系統時為每個座位的圖片, 因此,系統讀入的圖片只會有單人位置的資料,但可能因為攝影機視角的關係, 造成圖片中出現前排或是後排的人。而系統會依不同的輸入圖片判定該圖片為正 常姿勢(Normal, NN)、舉左手(Left, LL)、舉右手(Right, RR)。最後正確率的計算 依下面公式計算正確率。其中 TP 與 FP 分別代表 Truth Positive 與 False Positive。 𝑐𝑜𝑟𝑟𝑒𝑐𝑡 𝑟𝑎𝑡𝑒 =. 𝑇𝑃 𝑇𝑃 + 𝐹𝑃. 而在分析實驗數據時,使用3 × 3的 confusions matrix,分別代表 3 種姿勢與 判定結果。. 33.

(36) 4.4 Data sets 本實驗中共有 4 組 data set,詳細資料如表 4-2 所示 表 4-1 Data sets 資料表 LL 數量. NN 數量. RR 數量. 第一排燈. Data set1. 1272. 4538. 1325. 打開. Data set2. 2744. 13937. 3454. 打開. Data set3. 672. 3929. 799. 打開. Data set4. 302. 721. 306. 關閉. 而 Data sets 座位分佈情形如下圖 4-2 至圖 4-6 所示:. 圖 4-2 Data set 1 座位分佈圖. 圖 4-3 Data set 2 座位分佈圖. 34.

(37) 圖 4-4 Data set 3 座位分佈圖. 圖 4-5 Data set 4 座位分佈圖 表 4-2 不同解析度執行時間分析 Resolution. Accuracy. Time. One-Round. 200x200. 91.12%. 753ms. 7.0s. 150x150. 89.39%. 147ms. 3.5s. 100x100. 86.00%. 130ms. 3.8s. 其中,Data set3、Data set4 為同一日所拍攝影片,主要差異在於 Data set4 為了模擬播放投影片時教室可能關燈的情況,因此關了第一排的燈。而其餘的 data set 均為不同日所拍攝的影片。Data set1 中第 3、6 個 column 不坐人;Data set2 全部坐滿人;Data set3 與 Data set4 為随機座位。. 35.

(38) (a). (b). (c). 圖 4-6 K-means 結果 (a)原始圖片 (b)直接用 hue 判斷 (c) 經過 k-means clustering 後. 4.5 實驗結果 一、 Experiment 1: K-means 比較 本實驗主要為了檢視是否經過 k-means clustering 後會比單純用膚色判斷較 好。參考圖 4-6 所示。在 4-6(b)(c)中黑色以外的部份為判定為膚色的範圍,其中 (b)是不用 k-means 直接判斷膚色,(c)是經過 k-means 判斷膚色。可以發現,在原 本環境中的桌子接近膚色,在(b)中仍存在,但在(c)中卻可以把桌子去除。 二、 Experiment 2: Minimal resolution. 本實驗是為了了解系統所需的圖片解析度與執行時間、正確率之間的關係, 結果如表 4-2 所示。本實驗所指的執行時間為在測試機上跑單張影像所需的執行 時間,而 One-round 指的是在實驗機上,使用多執行緒執行一輪(即 18 個座位) 所需的執行時間。 由上表可知,雖然200 × 200的解析度可以達到最高的正確率,但由於執行 36.

(39) 表 4-3 最低 training N 值比較表 N. 10. 20. 30. 40. Set1 / Set1. 71.28%. 78.98%. 83.90%. 92.21%. Set2 / Set2. 67.59%. 81.05%. 88.85%. 91.12%. Train/Test. 100.00% 90.00%. Correct Rate. 80.00% 70.00% 60.00% 50.00%. Set1 / Set1. 40.00%. Set2 / Set2. 30.00% 20.00% 10.00% 0.00% 10. 20. 30. 40. N value. 圖 4-6 最低 training N 值比較圖 時間較長,一輪(即跑完全部 18 個座位)所需要的時間也最久,而150 × 150的解 析 度 在 正 確 率 上 稍 為 差 一 點 點 ( 較 200 × 200 少 1.73% ) , 但 是 執 行 時 間 比 200 × 200快上非常多,在實際系統上 3.5 秒的執行時間是較能接受的。比較特 別的是100 × 100的解析度,執行的時間反而比150 × 150要來的長,在交叉分析 他人的系統後發現,由於本系統是透過 TCP 連線與中央控制系統取得圖片資料, 因此中間網路傳輸所造成的 delay 使得3.5秒約為本系統的極限。 三、 Experiment 3: Minimal N value. 在這裡定義 N 值為在製作 training model 時每一個座位每一個姿勢所需要的 數量。如𝑁 = 30代表每個座位每個姿勢用 30 張圖片做為 training data,意即在 18 個座位全部坐滿的情況下共有30(𝑁 value) × 3(gestures) × 18(images)做為 training data。. 37.

(40) 表 4-4 各 data sets 交叉比較表 Testing set Training set. Set1. Set2. Set3. Average. Set1. 92.11%. 69.65%. 64.20%. 75.32%. Set2. 76.43%. 91.12%. 83.84%. 83.79%. Set3. 68.08%. 62.59%. 93.37%. 74.68%. 表 4-5 關燈比較 Case Set Set3/Set4. Light all on. Turn off first row. 93.37%. 84.05%. 而 training data 的數量直接影響到辨識的正確率,在這個實驗主要是分析本 系統應需要多少的 training data 才可達到一定的正確率。結果如表 4-3 所示 在上面的結果可以發現,當 N 小於 20 時,由於數量不足導致正確率不穩定。 而當 N 大於 30 時,正確率可以達到80%以上,而當 N 來到 40 時,幾乎所有的 Data set 皆可以達到90%以上的正確率。因此,在本研究接下來的實驗中皆以 𝑁 = 40做為 training model。 四、 Experiment 4: Cross-comparison. 在這個實驗中,為了比較各日的 data set 的差異,實驗者使用了三個 data set 分別做為 training set 並對另二個 data set 測試,結果如表 4-4 所示 在該表中,對角線為 training、testing 皆為同一日的影像,可以看出同日的 正確率較高。但在不同日當 training data 時,正確率就會有所下降。其討論原因 待下一節會有詳細的分析。 由結果可知,使用 data set 2 的正確率較高,因此本研究最後使用 data set 2 做為最終的 training set。. 38.

(41) 表 4-6 錯誤資料排行表 預期. 判定結果. 占錯誤總數比率. 1. Normal(NN). Left(LL). 35% from FP. 2. Normal(NN). Right(RR). 10% from FP. 3. Right(RR). Left(LL). 3% from FP. 4. Normal(NN). Left(LL). 2% from FP. No.. 範例圖. 五、 Experiment 5: Illumination effect. 本研究因為使用 HOG 當作 feature,希望可以避免因光線影響所產生的問題。 因此最後也做了模擬教室若因播放投影片而關掉第一排電燈的情況,進而觀察光 線是否會影響實驗結果。其結果如表 4-5 所示。. 4.6 分析 由於實驗正確率並非 100%的精準,而在本實驗中實際上存在許多變數。由 於本研究不去背,且人物可能互相重疊,因此在辨識上又更加的困難。在實驗後 分析造成系統誤判的原因,其實有許多判的情況是環境的邊邊角角造成不可預期 的錯誤,較難分門別類。在多次實驗後,我們分析誤判的情況,前幾名主要是下 列四項:. 39.

(42) 圖 4-7 去背範例圖 表 4-7 去背後結果表. (一). LL. NN. RR. LL. NN. RR. LL. 10. 0. 0. 100%. 0%. 0%. NN. 0. 10. 0. 0%. 100%. 0%. RR. 0. 0. 10. 0%. 0%. 100%. 背景有類似舉手之形狀 在所有的錯誤情況中,本類所佔百分比最高,有將近三分之一的錯誤情. 況皆屬這種錯誤情形,如圖 4-8(a)(b)所示。由於本研究使用的 HOG 主要是 利用目標物體的形狀來做辨識,因此若背景出現與舉手非常高度相似的形狀 時,HOG 會把其分類成舉手類別這是無法避免的。 另外在第五個實驗中關掉第一排燈的情況下,正確率降低不少。經分析 後發現,由於其中一個座位的左後方出現了一個水瓶,導致大部份的姿勢被 誤判為舉左手,也是屬於這一類的錯誤。 為了改善這種情況,若能完全的去背使得前景完整的顯示出來,在辨識 上應該會有所提高。為了證明此一觀點,研究者手動去背了 60 張影像,其 中包含了左手、正常、右手影像各 20 張,拿一半的影像當作 training data, 剩下一半當 testing data。去背後如圖 4-7 所示,其測試結果如表 4-7 所示。. 40.

(43) 100.00%. Correct Rate. 80.00% 60.00% Light On. 40.00%. Light Off. 20.00% 0.00% Row1. Row2. Row3. Rwos. 圖 4-7 第一排關燈的正確率分析表. 圖 4-8 錯誤情況範例圖(a)(b)(c)(d) (a)(b) 在舉手的位置有類似舉手的形狀 (c) 舉手超出偵測範圍 (d) 前排舉手剛好位於後排舉手位置 因此,若能找到一個較好的去背方式或許可以提高不少正確率。 前排舉手剛好位於後排位置 由於本實驗並非在階梯教室進行,且攝影機剛好位於教室正前方,因此 難免會產生前後交疊的情形。如圖所示,其實就算是肉眼看到這張圖片也不 易分辨是本人舉手亦或是前排的手。若用 motion 等方式仍難去除前排的手。 因此,或許要克服這個錯誤是一大難題。. (二). 舉手位置超出範圍. 在本實驗中由於是以切割後的小圖做為判斷的依據,所以若學生舉手太外面 或是身體故意側一邊造成手超過了範圍,則基本上沒辦法判斷這個姿勢。. 41.

(44) (三). 較不易判斷是否舉手. 有些時候,無法判是是否有舉手,例如手舉一半或是像下圖情況。由於系統 定義的舉手是手要超過耳朵,因此這些舉一半的會是錯誤的 case。. 最後,在第四個測試關燈的實驗中,正確率只有 84.05%,但由於該結果是 受座位後方有類似舉手的背景物的影響。因為該關燈的資料與非關燈的資料的差 異,我們也重新統計了直接移除該座位後的正確率。其關燈的正確率為 90.06%, 比起開燈的 93.37%約少了 3 個百分點,在可容許範圍。因此本研究所提出的方 法仍算可以適應在關燈的環境下,可以有相似的正確率。. 42.

(45) 第五章. 結論. 為了讓教師更容易掌握學生的動靜,本研究提出了一個舉手辨識系統,希望 借由此系統協助教師了解課堂學生狀況。進一步還可以分析並記錄各個學生的情 況並大量儲存下來。 為了達到此一目的,本研究使用了 k-means clustering 與 motion 來做人物的 切割。K-means clustering 是為了切割出較符合當下環境的膚色範圍。而膚色不一 定可以完整的切割出膚色,因此加上 motion 的資訊去除背景。而在姿勢辨識的 部份,本研究使用了 Histogram of Oriented Gradients(HOG)的方式,取出圖片的 edge 當作 feature,進入 Support Vector Machine(SVM)做分類。 因為本研究希望能夠在複雜背景且單攝影機有多人物的情況下進行辨識,且 要降低各種環境因素(例如光線)的影響,也針對了各種情況設計實驗。而實驗結 果得知,若關掉第一排電燈(模擬播放投影片關燈)的情況下,正確率從 93.37%降 低約 3 個百分點。而實驗中若用同日的資料當作 training model 情況下,平均正 確約為 91%,若使用他日的資料當作 training model 的情況下,正確率也落在 75~85%之間。 但由於 HOG 方式是使用物體的 edge 做為 feature,因此若環境中有類似舉手 形狀的背景物體時,會造成正確率的下降,且目前與 server 端的連線有一不小的 瓶頸,未來若能加入以下改進會使系統更好: 1. 使用更好的方式去背: 有鑑於目前背景類似舉手的形狀影響很大,若能有效的去除此一物體, 在前述的實驗中發現可以提高非常多的準確率。 2. 加速網路連線溝通方式:. 43.

(46) 本系統在與主控伺服器連線時因為網路連線的關係造成了不少延遲,使 得執行一輪的時間需要 3 秒左右。若在系統最佳化且扣除網路的影響的 情況下,本系統理論上執行一輪應只需要不到 1 秒的時間。. 44.

(47) 參考文獻. [Dav05] David A. Sadlier and Noel E. O’Connor, “Event Detection in Field Sports Video Using Audio-Visual Features and a Support Vector Machine,” IEEE Transactions on Circuits and Systems for Video Technology, pp. 1225-1233, 2005. [Gua09] Guangyu Zhu, Ming Yang, Kai Yu, Wei Xu, and Yihong Gong, “Detecting video events based on action recognition in complex scenes using spatio-temporal. descriptor,”. Proceedings. of. the. seventeen. ACM. international conference on Multimedia, pp. 165-174, 2009 [Han09] J. Han, G. Awad, and A. Sutherland, “Automatic Skin Segmentation and Tracking in Sign Language Recognition,” Computer Vision, IET, pp. 24-35, 2009. [Jin10]. Jina Lee and Stacy C. Marsella, “Predicting Speaker Head Nods and the Effects of Affective Information,” IEEE Transactions on Multimedia, pp. 552-562, 2010.. [Jua05]. Juan P. Wachs, Helman Stern, and Yael Edan, “Cluster Labeling and Parameter Estimation for the Automated Setup of a Hand-Gesture Recognition System,” IEEE Transactions on Systems, pp. 932-944, 2005.. [Lal01]. Lalit Gupta and Suwei Ma, “Gesture-Based Interaction and Communication: Automated Classification of Hand Gesture Contours,” IEEE Transactions on Systems, Man, and Cybernetics – Part C: Applications and Reviews, pp. 114-120, 2011.. A.1.

(48) [Lil00]. Lily Lee, Raquel Romano, and Gideon Stein, “Monitoring Activities from Multiple Video Stream: Establishing a Common Coordinate Frame,” IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 758-767, 2000.. [Nav05] Navneet Dalal and Bill Triggs, “Histograms of Oriented Gradients for Human Detection,” IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp. 886-893, Vol. 1, 2005 [Qin08] Qing Chen, Nicolas D. Georganas, “Hand Gesture Recognition Using Haar-Like Features and a Stochastic Context-Free Grammar,” IEEE Transactions on Instrumentation and Measurement, pp. 1562-1571, 2008. [Sar08]. Sargin, M.E., Yemez, Y., Erezin, E., and Tekalp, A.M., “Analysis of Head Gesture and Prosody Patterns for Prosody-Driven Head-Gesture Animation,” IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 1330-1345, 2008.. [Sus07]. Sushmita Mitra and Tinku Acharya, “Gesture Recognition: A Survey,” IEEE Transactions on Systems, Man, and Cybernetics—Part C: Applications and Reviews, pp.311-324, 2007.. [Wed10] Wendy L. Bjorklund and Diana L. Rehling, “Student Perceptions of Classroom Incivility,” College Teaching, pp. 15-18, 2010. [Wei06] Weiming Hu, Min Hu, Xue Zhou, and Tieniu Ten, “Principal Axis-Based Correspondence between Multiple Cameras for People Tracking,” IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 663-671, 2006.. A.2.

(49) [Xia09]. Xiaogang Wang, Kinh Tieu, and Grimson, E.L., “Correspondence-Free Activity Analysis and Scene Modeling in Multiple Camera Views,” IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 56-71, 2009.. [Yu09]. Yu-Ting Pai, Li-Te Lee, Shanq-Jang Ruan, Yen-Hsiang Chen, Saraju P. Mohanty, and Elias Kougianos, “Honeycomb Model Based Skin Color Detector for Face Detection,” International Conference on Mechatronics and Machine Vision in Practice, pp. 11-16, 2008.. [1]. 吳怡君,「小筆電融入國小五年級英語科教學之研究」,國立台灣師範 大學,碩士論文,2010 年。. [2]. 紀宜岑,「小筆電於國小教學應用之個案研究」,國立台灣師範大學, 碩士論文,2009 年。. [3]. T 客邦,「身體就是控制器,微軟 Kinect 是怎麼做到的?」,取自 “http://www.techbang.com.tw/posts/2936-get-to-know-how-it-works-kinect .”. [4]. 「中華大學成功研發智慧型教室~人臉辨識自動點名系統」,取自 “http://ctee.com.tw/News/view.aspx?newsid=3772”. [5]. 康 寧 醫 護 暨 管 理 專 科 學 校 ,「 幼 兒 行 為 觀 察 紀 錄 法 」, 取 自 “http://www.knjc.edu.tw/teaching/echild/%E6%88%91%E5%80%91%E7 %9A%84%E5%B8%AB%E8%B3%87/%E6%95%99%E5%B8%AB%E5 %9F%BA%E6%9C%AC%E8%B3%87%E6%96%99/%E8%89%AF%E8 %AA%A0/%E8%A1%8C%E7%82%BA%E8%A7%80%E5%AF%9F/%E 5%B9%BC%E5%85%92%E8%A1%8C%E7%82%BA%E8%A7%80%E5 %AF%9F%E8%A8%98%E9%8C%84%E6%B3%95.ppt”. A.3.

(50) [6]. 永吉國中. 鄭 玉 玲 老 師 ,「 教 學 輔 導 之 教 學 觀 察 」, 取 自. http://elearning.ice.ntnu.edu.tw/pfo_down.asp?psn=42096。 [7]. 成大醫學院神經科 蔡景仁,「醫學生的不發問、怕被問和怕被指正」, 醫學教育通訊,第 23 期,2002 年。. [9]. 台大資訊工程學系 陳昱廷,「淺談行人偵測」,取 自 http://140.113.87.112/vol_13/tech2.htm. [10]. “Histogram of oriented gradient”,取自 http://en.wikipedia.org/wiki/Histogram_of_oriented_gradients_(HOG). [11]. Chih-Chung Chang and Chih-Jen Lin, “LIBSVM,” 取自 http://www.csie.ntu.edu.tw/~cjlin/libsvm/. A.4.

(51)

參考文獻

相關文件

 而良好的健康體適能是指人的心臟、血 管、肺臟及肌肉組織等都能充分發揮有 效的機能,以勝任日常工作,並有餘力

在舉辦這次座談會之前,其實有先邀請大家填寫問卷。彙整問卷結果以及會 議裡提出的意見後,我們發現有許多地方是有衝突的,好比說課程太難

事實上,就算不是經濟不景,由於現代化下都市生活的發展,經濟和社會情況轉變,對

主觀機率 指一個事件發生的機率由某 人決定,包括設計上的安排 設定,或者根據相信的程度 而猜測。.. 古典機率 假設樣本空間S中的每一個

理論,則認為人的情緒不是單純由事件本身引發的,更多是由當事人對事件的 理解或看法而引起的。ABC 理論的 A 是指誘發事件 (Activating

就難以攻克,縱使克之也難於守之。所以,「從當時的環境條件觀之,一二四○年遠征(實 為一二三九年發兵,一二四○年焚寺)主要目標是偵察」

• 人生在世的一個主要課題,便是了解事物間的 因果關係以及行為對周圍造成的影響,從而學

研發 生產 銷售 人事 會計及 財務