• 沒有找到結果。

使用人體輪廓資訊與kNN分類器的即時跌倒偵測系統

N/A
N/A
Protected

Academic year: 2021

Share "使用人體輪廓資訊與kNN分類器的即時跌倒偵測系統"

Copied!
45
0
0

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

全文

(1)

國 立 交 通 大 學

多媒體工程研究所

碩 士 論 文

使用人體輪廓資訊與 kNN 分類器的即時跌倒偵測系統

A real-time fall detection system using human body

contours information and kNN classifier

研 究 生:林秉旻

指導教授:李嘉晃 教授

(2)

使用人體輪廓資訊與 kNN 分類器的即時跌倒偵測系統

A real-time fall detection system using human body

contours information and kNN classifier

研 究 生:林秉旻 Student:Ping-Min Lin

指導教授:李嘉晃 Advisor:Chia-Hoang Lee

國 立 交 通 大 學

多 媒 體 工 程 研 究 所

碩 士 論 文

A Thesis

Submitted to Institute of Multimedia Engineering College of Computer Science

National Chiao Tung University

in partial Fulfillment of the Requirements for the Degree of

Master in

Computer Science Jun 2008

Hsinchu, Taiwan, Republic of China

(3)

i

使用人體輪廓資訊與 kNN 分類器的即時跌倒偵測系統

研究生:林秉旻 指導教授:李嘉晃 教授

國立交通大學資訊學院 多媒體工程研究所

摘要

監視系統在人機互動( Human Computer Interaction )之領域上為一項重要 的研究,在未來社會高齡化的情形將日趨嚴重的同時,隨之而來的看護人力成本 將大量上升,因此許多國內外的學者都致力於老人看護監視之研究上,以期輔助 現有的人力看護系統,有效的降低龐大的人力支出成本。本研究使用並整合本實 驗室所開發之人臉偵測系統用於追蹤人體並得到人體的特徵,利用 kNN( k-th Nearest Neighbor )分類法分類人類姿勢並經由實驗統計所得之速度資訊來實作 跌倒偵測系統。

(4)

ii

A real-time fall detection system using human

body contours information and kNN classifier

Student:Ping-Min Lin Advisor:Chia-Hoang Lee

Institute of Multimedia and Engineering College of Computer and Science

National Chiao Tung University

Abstract

In the province of Human Computer Interaction, monitor system is an important study. As long as the situation of aging society becomes more and more serious, the care costs will increase plenty. That is the reason so many domestic and foreign scholars throw themselves into the research of elderly care monitor system in order to support the existing care system and reduce the huge expenditures of labor costs. This research used and integrated the human face detection system developed by our laboratory to get the characteristics of the human body and track that. And also used k-th Nearest Neighbor classification to classify the human postures. Then using the information of the changing rate collected by many experiments this research finally can develop a fall detection system.

(5)

iii

目錄

摘要... i Abstract... ii 目錄... iii 圖目錄... iv 表目錄... vi 第一章 緒論... 1 1.1 研究動機... 1 1.2 研究目標... 1 1.3 論文架構... 2 第二章 相關研究... 3 第三章 設計與實作... 8 3.1 系統架構... 8 3.1.1 人體動態切割及相關影像處理... 9 3.1.3 使用 kNN 分類器的人體姿勢判別... 17 3.2 跌倒偵測... 22 第四章 實驗過程與結果討論... 27 4.1 實驗說明... 27 4.1.1 人體姿勢分析... 27 4.1.2 跌倒事件偵測... 30 4.2 實驗結果與討論... 33 第五章 結論... 36 5.1 研究總結... 36 參考文獻... 37

(6)

iv

圖目錄

圖 1.站立狀態 ... 3 圖 2.跌倒狀態 ... 3 圖 3.利用兩個 HMM( 蹲下與跌倒 )所產生的 pdfs ... 4 圖 4.環場式攝影機的影像 ... 5 圖 5.跌倒偵測-警報器配戴圖 ... 6 圖 6.跌倒偵測-警報器外觀圖 ... 6 圖 7.人臉偵測系統截圖 ... 7 圖 8.系統架構圖 ... 8 圖 9.攝影機所提供的實際串流影像 ... 9 圖 10.右為系統所得之人體剪影 ... 9 圖 11.兩個 3x3 平滑濾波遮罩示意圖 ... 10 圖 12.影像二值化示意圖 ... 11 圖 13.4-近鄰與 8-近鄰示意圖 ... 11 圖 14.以 4-近鄰標示的範例 ... 12 圖 15.人體擷取結果 ... 13 圖 16.站立姿勢 ... 14 圖 17.坐下姿勢 ... 14 圖 18.躺臥姿勢 ... 14 圖 19.人體輪廓擷取結果 1 ... 15 圖 20.人體輪廓擷取結果 2 ... 16 圖 21.人體輪廓擷取結果 3 ... 17 圖 22.樣本分布圖 ... 19 圖 23.樣本分布圖 ... 20 圖 24.基於行走中的跌倒事件流程圖 ... 22 圖 25.跌倒資料 State 時間差的 Q-Q 圖 ... 25 圖 26.人體站立姿勢分析結果 ... 28 圖 27.人體中間姿勢分析結果 ... 28 圖 28.人體躺臥姿勢分析結果 ... 28 圖 29.雙手活動影響測試結果 1 ... 29 圖 30.雙手活動影響測試結果 2 ... 29 圖 31.雙手活動影響測試結果 3 ... 30 圖 32.正常躺臥事件—站立姿勢 ... 31 圖 33.正常躺臥事件—中間姿勢( 坐下 ) ... 31 圖 34.正常躺臥事件—躺臥姿勢,最後系統判斷為躺臥 ... 31 圖 35.跌倒事件—站立姿勢 ... 32 圖 36.跌倒事件—中間姿勢 ... 32

(7)

v 圖 37.跌倒事件—躺臥姿勢,最後系統判斷為跌倒 ... 32 圖 38.攝影機固定 ... 34 圖 39.攝影機開始轉向 ... 34 圖 40.使影機轉向完成 ... 34 圖 41.系統回復 ... 35

(8)

vi

表目錄

表 1.K-Fold Cross Validation ... 21

表 2.模擬跌倒情形的時間記錄表 ... 23 表 3.模擬跌倒樣本資料統計表 ... 24 表 4.單一樣本 Kolmogorov-Smirnov 檢定表 ... 25 表 5.單一樣本 T 檢定統計量表 ... 26 表 6.單一樣本 T 檢定表 ... 26 表 7.硬體設備表 ... 27 表 8.實驗測試結果 ... 33

(9)

1

第一章 緒論

1.1 研究動機

依據台灣省內政部人口統計資料發現:民國八十二年九月底,台灣地區六十 五歲以上的老年人口有 1,485,200 人,佔總人口之 7.09%,已躋身聯合國世界衛 生組織界定的高齡化社會;迄九十五年五月,老年人口增加到 2,245,673 人, 佔總人口的 9.85%[1]

由於台灣家庭型態及人口結構的改變,老年人口需自我 照顧的比例也漸增。依據 2000 年「台灣地區老人狀況調查」報告顯示,有 70% 的 65 歲以上高齡者表示理想的居住方式是與子女合住;僅 13%表示願意與配偶 同住;有 6.3%願意獨居;只有 5.2%表示願意住老人福利機構,可見在家養老仍 然是台灣高齡者最理想的居住方式[2]。然而因為生活型態之改變,使得高齡者 需要自己照顧自己,即使與子女同住,白天獨自在家的時間也增多。 根據台灣省行政院衛生署國民健康局調查資料顯示,台灣地區 65 歲以上老 人自述過去一年跌倒之年齡暨性別標準化盛行率,由 1999 年的 18.7%增加至 2005 年的 20.5%。就跌倒地點而言,老人跌倒有 44.4%發生在自宅內,且就當時從事 之活動而言,以室內走動最多,佔 22.3%[3]。如何利用現有的科技技術來為高 齡者提供一個安全健康的居住環境便是本研究的主要課題。

1.2 研究目標

本研究主要是在探討如何以一般人家中所既有之電腦設備,如:個人桌上型 電腦、筆記型電腦及網路攝影機等,在沒有其他特殊硬體設備輔助之情形下來實 作即時老人看護系統。由於跌倒行為多為一般行走時發生,因此系統需要可以即 時的追蹤移動中的人體,並進一步分析其身體目前之姿勢,再由身體姿勢、特徵 與時間資訊判斷是否發生跌倒事件。

(10)

2

1.3 論文架構

第二章將介紹國內外相關的研究的介紹。第三章設計與實作將介紹本系統之 整體架構、基於行走中跌倒的偵測方法。第四章將為實驗過程與結果討論。第五 章結論,將對本研究做討論並說明未來發展之方向。

(11)

3

第二章 相關研究

隨著醫療科技的進步,許多國家都面臨了老年化社會的問題,以及隨之而來 龐大看護人力成本,都在在的影響了現在人的生活,智慧型居家環境的研究也因 此成為一個重要的研究議題。 國內外均有許多關於智慧型居家環境的論文研究,例如 Arezou Keshavarz[4] 等人在 2006 年利用膚色來分辨人體與非人體的物件,對偵測到的人體分析其膚 色範圍及頭部位置來判斷人體姿勢,並利用三支攝影機以期增加系統的可靠度, 系統如圖 1 所示,該圖顯示被測物體為站立時的狀態,圖 2 為被測物體為躺下時 的狀態。 圖 1.站立狀態 圖 2.跌倒狀態

(12)

4

Derek Anderson[5]等人則在 2006 年提出了為了確保人的隱私,利用剪影 ( silhouette )的方式與 HMM( Hidden Markov Models )的分類法來辨識人體的 姿勢。由於使用剪影因此人體的特徵便剩下攝影機所捕捉到的身長與身寬,圖 3 顯示利用 HMM 訓練之後的人體長寬比的 pdf( 機率密度函數 ),分別由蹲下與跌 倒兩個模型訓練出來,其中實心線範圍為由蹲下模型所得之行走姿勢的 pdf,粗 間隔線範圍為由蹲下模型所得之蹲下姿勢的 pdf。半間隔線範圍為由跌倒模型所 得之行走姿勢的 pdf,細間隔線範圍則為由跌倒模型所得之跌倒姿勢的 pdf。 圖 3.利用兩個 HMM( 蹲下與跌倒 )所產生的 pdfs

(13)

5 Shaou-Gang Miaou[6]等人在 2006 年發表了一個用環場式攝影機結合個人資 訊的客製化跌倒偵測系統。利用環場式攝影機監看 360 度的影像並結合個人資訊, 如身高、體重、身體密度指數( BMI )等,依照不同進入場景的人給予不同的門 檻值判斷跌倒事件的發生。由於使用環場型攝影機的緣故,當受測者在遠離或靠 近攝影機時會有身體比例扭曲的情形,而此情形將容易造成系統判斷上的錯誤。 圖 4 為環場式攝影機所獲得的影像。 圖 4.環場式攝影機的影像 陳協慶[7]等人在2001年研製了一款攜帶式跌倒偵測-警報器,使佩帶之老年 人或身心障礙者發生跌倒災害時,能自動發出聲音信號通知近身的人於第一時間 內採取必要之處置。該裝置採用三軸向加速度規來量測人體軀幹運動的速度感訊 號,並分析其訊號作出跌倒狀況的邏輯判定,圖5為該裝置的示意圖,圖6為裝置 外觀。攜帶式跌倒偵測器的主要缺點為需要配戴在身上,而穿戴式的設備容易使 人感到不舒服,又高齡者常會忘記配戴裝置,進而導致無法有效偵測危險事件的 發生。

(14)

6

圖 5.跌倒偵測-警報器配戴圖

(15)

7 另外在追蹤與偵測系統上,林建良[8]在 2006 年的研究中提出了一種不需建 立背景資訊,利用相鄰 frame 做差分運算即可快速追蹤人臉的系統。利用動態資 訊捕捉人體外圍輪廓,經由分析人體外圍曲線獲得頸部位置與肩膀位置的推測, 使得監視系統可以更精確的推算出人體的行徑方向。圖 7 為系統截圖。 圖 7.人臉偵測系統截圖

(16)

8

第三章 設計與實作

3.1 系統架構

本研究主要是探討如何偵測在行走中的人所發生的異常行為。因此,本研究 首先利用運動資訊區別動態物體與背景,之後即可用於追蹤與辨別人體姿勢。圖 8 為系統架構如下: 跌倒偵測 人體動態切割 影像處理 人體特徵值擷 取 人體姿勢判別 攝影機影 像輸入 人體特 徵資料 消弭上肢活動 影響 圖 8.系統架構圖

(17)

9

3.1.1 人體動態切割及相關影像處理

首先我們將由攝影機所得到的串流影像針對相鄰的兩個串流影像轉換成灰 階影像後做差分運算,如公式(1)所示,獲得運動資訊[8],並利用此資訊從背景 中擷取出人體如圖 9 與圖 10 所示,利用事先建立好的背景來擷取出人體可以得 到此人體的剪影,但無法得到人體移動的資訊,而使用動態切割的方法由於是跟 前幾張 frame 做比較,因此可以得到有改變的像素點,相較於使用儲存背景資訊 的方法可以更容易的得到人體移動的方向。由於考慮到高齡者動作較為緩慢,故 本系統採相隔一張 frame 比較的方式,較容易得到運動資訊。

𝐹

𝑡

=

𝐹

𝑡

− 𝐹

𝐹

𝑡−3

, 𝑜𝑡ℎ𝑒𝑟𝑤𝑖𝑠𝑒

𝑡

, 𝑖𝑓 𝑡 < 3

(1) 𝐹𝑡:表示時間為t 時的 frame 圖 9.攝影機所提供的實際串流影像 圖 10.右為系統所得之人體剪影

(18)

10 接著我們對所得到的人體剪影做些影像處理,首先因為剪出來的人體剪影帶 有些許的雜訊,以及因為運動資訊較不明顯的關係所造成資訊遺失所形成的碎圖。 對於雜訊的處理我們選用 3x3 的平滑濾波器( 或稱平均濾波器 averaging filter )來對影像作平滑化的處理[9],如下公式(2),由於我們無法得知哪些像 素是重要的,所以我們給予此濾波器每一個點相同的權重( 或稱方盒濾波器 box filter ),以期將雜訊處理掉,平滑濾波器如圖 11 所示。

𝑅 =

1 9

𝑍

𝑖 9 𝑖=1

(2) R :處理中影像的像素灰階值 𝑍𝑖:濾波器遮罩的像素區域 1 1 1 1 2 1 1 9× 1 1 1 1 16× 2 4 2 1 1 1 1 2 1 圖 11.兩個 3x3 平滑濾波遮罩示意圖 左圖又稱方盒濾波器,右圖為給中間與相鄰像素較高權重的平滑濾波器 接著將所得的灰階影像作二值化( binary )的處理,二值化又稱灰度分割 ( threshold )[10],目的是將一張複雜的影像簡單化以利接下來的處理。且由 於 3x3 的平滑濾波器會有邊緣模糊的副作用,所以我們定義了一個 threshold 將低於此 threshold 的像素給予 0 的值,其餘的則給予 255 的值,形成一張非黑 即白的二值化影像,以便後續人體特徵的截取。下圖 12 為一張灰階影像的灰度 分布圖,閥值即為 threshold。

(19)

11 圖 12.影像二值化示意圖 經由人體動態切割、平均濾波器及影像二值化的處理步驟之後,為了擷取出 有意義的區域,我們必須將個別連接的物體一一標記出來。為了定義連接物體, 我們假設個別的連接體在之前經由二值化處理後的影像上是連接的像素全體,而 兩個像素連接的定義為此兩像素的 4-近鄰( 4-neighbors )或為 8-近鄰 ( 8-neighbors ),如下圖 13 所示。

(i,j-1) (i-1,j-1) (i,j-1) ( i + 1 , j )

(i-1,j) ( i , j ) (i+1,j) ( i - 1 , j ) ( i , j ) ( i + 1 , j )

(i,j+1) (i-1,j+1) (i,j+1) (i+1,j+1)

圖 13.4-近鄰與 8-近鄰示意圖

我們從圖上任何一點開始標記連接物體,對所有互相形成 8-近鄰連接的像 素點以一個獨特的數字標記,代表其互相連接,每當發現一個未標記的像素時,

(20)

12 便以一個新數字做為標記,重複以上步驟直到整張二值化影像的所有點都被標記 為止,也就是說我們將檢查每一個不為 0 的像素點的 8 個鄰近位置,如果這些位 置有非 0 的像素點,則視為與此點同一群並給予一個標記數字,如圖 14[11]所 示。 圖 14.以 4-近鄰標示的範例

(21)

13

3.1.2 人體特徵值擷取與消弭上肢活動影響

在經過之前的影像處理步驟之後,我們得到一個完整的人體剪影影像。由於 本研究為一室內的的監視系統,所以我們將採用 Derek Anderson 等人提出的[5] 剪影的方式來維護被監視者的隱私權。在這樣的前提之下,我們所能得到的人體 特徵將相較減少許多,因此我們將選取較為明顯的人體身長與身寬作為我們系統 的特徵值,系統所擷取的特徵值我們用 bounding box 顯示出來以利觀察。如圖 15 所示。 圖 15.人體擷取結果 左為擷取人體身長與身寬為特徵的 bounding box,右為處理完後的剪影 我們由觀察日常的人類行為中可以得知一般人在室內的活動,並將其分類為 行走、坐、彎腰或躺下等情形,其 bounding box 所得到的人體身長與身寬比例 大致上為固定的。所以我們將人體所得之 bounding box 比例分為三種類別,分 別是 stand_pose 用來表示人體姿勢為站立時的狀態,如圖 16;temp_pose 用來 表示人體姿勢為坐、彎腰或蹲下等的狀態,如圖 17;laying_pose 則用來表示人 體姿勢為躺臥時的狀態,如圖 18。

(22)

14

圖 16.站立姿勢

圖 17.坐下姿勢

(23)

15 在利用 bounding box 將人體特徵值標示出並分成 3 種類別之後,我們發現 在一般的生活情形下,人體上肢的活動將會影響我們擷取人體身寬的特徵。由於 人體在行走中雙手會不自覺的擺動,且在室內環境下也有伸手取物的情形,這些 雙手的活動都將造成我們在量測人體寬度上的不便與誤差。為了解決此一現象, 我們將 bounding box 裡所得的白色像素—即為人體所在的位置,利用公式(3) 將其投影至 X 軸與 Y 軸上,得到如圖 19 所示的人體輪廓曲線圖。

𝑃𝑟𝑜𝑗 𝑋 , 𝑌 =

𝑛𝑗 = 1 𝑚𝑖 = 1

𝑃

𝑖 , 𝑗

, 𝑖𝑓 (𝑃

𝑖 , 𝑗

= 255) ∩ (𝑃

𝑖 , 𝑗

) ∈ 𝐵

(3) 𝑃𝑟𝑜𝑗 𝑋 , 𝑌 :投影至 X 軸與 Y 軸的值 𝑃 𝑖 , 𝑗:第 i 行第 j 列的像素值 𝐵:大小為 m × n 的 bounding box (a) (b) (c) 圖 19.人體輪廓擷取結果 1 (a)實際環境下的串流影像與人體追蹤結果,(b)從背景中擷取出人體後的結果, (c)bounding box 中像素投影至 Y 軸的人體輪廓曲線圖 接著我們可以由人體觀察得出,當人體在行走且雙手擺動幅度不大時,其人 體輪廓曲線圖呈現較為平均的分布。但是當人體的雙手有擺動幅度較大的動作時, 便會使得人體輪廓曲線圖呈現有特別高峰的值出現,如圖 20 所示,而這樣的現 象將會影響到我們在用人體特徵比例上的誤判。

(24)

16 (a) (b) (c) 圖 20.人體輪廓擷取結果 2 (a)實際環境下的串流影像與人體追蹤結果,(b)從背景中擷取出人體後的結果, (c)bounding box 中像素投影至 Y 軸的人體輪廓曲線圖 為了消弭這因上肢活動過大而可能帶來誤判的影響,我們採用統計學上消除 極端值的方法,先算出 𝑃𝑟𝑜𝑗 𝑋 , 𝑌 裡 X 與 Y 的個別平均值( mean )與標準差 (standard deviation ),接著利用公式(4)訂出一組門檻值( threshold ),然 後將 𝑃𝑟𝑜𝑗 𝑋 , 𝑌 裡超過其門檻值的值給予極端值為其新值已取代原有的極端值, 我們藉由這樣的處理能有效的消弭當人體上肢活動過大時所帶來的影響,圖 21 為使用了此方法之後對於消弭人體上肢活動的效果。

(25)

17 (a) (b) (c) 圖 21.人體輪廓擷取結果 3 (a)實際環境下的串流影像與人體追蹤結果,(b)從背景中擷取出人體後的結果, (c)bounding box 中像素投影至 Y 軸的人體輪廓曲線圖 我們可以在圖 21 中看到,原本應該有極端值的人體輪廓曲線圖因為高過於 我們所定的門檻值而被消弭的效果,這樣的處理對於我們之後在判斷人體姿勢時 將有不少的幫助。

3.1.3 使用 kNN 分類器的人體姿勢判別

kNN 分類器全名為 k-th Nearest Neighbor 分類器,為一種監督式的機器學 習法(supervised learning )。所謂監督式的學習,是指在訓練機器學出一個模 型( model )的之前,會先有一段訓練的時間( training time ),在這段時間裡 面,每一筆資料會有一個正確答案,經過機器學習以後,會根據答案調整自己學 習的方法[12][13]。kNN 顧名思義就是對於每一筆新進來的資料都去計算該點在 訓練樣本的特徵空間內與其他點的距離,計算出與所有點的距離之後,挑選與自 己最近的 k 個點,並觀察這幾個點屬於哪個類別( class ),將該點分類至最多

(26)

18

點的類別。由於 kNN 會去計算自己與所有點的距離,所以 kNN 也屬於一種 instance-based learning,kNN 演算法如下[14]。

Algorithm 1:kNN Algorithm:

kNN( Example, TrainingExamples, k )

For each TrainingExample in TrainingExamples Computer d( Example, TrainingExample ) Let Neighbors be the k TrainingExamples with

the smallest value for d.

Let c be the most common category of the examples in Neighbors.

Return c

其中 d( Example, TrainingExample )為 Example 與 TrainingExample 的距離。 在本研究中,對於樣本在特徵空間中的距離計算我們採用歐式距離的算法, 距離公式如下:

distance

𝑥, 𝑦

=

𝑛

𝑓

𝑖

𝑥

− 𝑓

𝑖

𝑦

2 𝑖 =1 𝑓𝑖 𝑥 :該樣本點在特徵空間中的座標 𝑓𝑖 𝑦 :該樣本點在特徵空間中的座標 distance 𝑥, 𝑦 :𝑥 與 𝑦 的歐式距離 本研究收集了 450 筆不同的人體姿勢樣本,分別分類成三種類別第一種為站 立姿勢( stand_pose ),第二種為中間姿勢,舉凡坐下、蹲下、彎腰等等的姿勢 ( temp_pose )以及第三種躺臥姿勢( laying_pose ),各個類別各有 150 筆資料。 在使用 kNN 分類器時有兩點是我們必須要注意的, 一:樣本的特徵值要如何選取?

(27)

19

二:k 的值要訂下多少才好?

關於第一點,我們參考了 Arie Hans Nasution 與 Sabu Emmanuel[15]於 2007 年發表的論文,這兩位學者在該論文中提及使用人體的身高與身寬當作 kNN 的兩 個特徵值來建立樣本的特徵空間。但是由於人體姿勢為一連續性的動作,所以在 人體姿勢由站立轉變至坐或蹲的姿勢以及由坐或蹲轉變至躺臥的姿勢時,將會有 特徵資料混雜的狀況。我們利用我們的樣本資料共 45 筆,各個類別為 15 筆資料 隨機抽取,並以人體的身長與身寬作為特徵值,建立樣本的特徵空間如下圖 22 所示。 圖 22.樣本分布圖 以人體身長( 圖中 x 軸 )與身寬( 圖中 y 軸 )為特徵 由圖中我們可以觀察出,使用身體的身長與身寬為特徵的分布容易造成資料 點混雜的情形發生,其原因有可能是因為受測者距離攝影機的遠近導致了人體長 寬的改變,使得資料無法明顯的區分成三個類別。為了要減少這類的影響 Arie Hans Nasution 等人對資料做了分類後的檢查,以提高分類的正確率。但是在一 個即時系統中,我們認為這樣額外的計算負擔將會帶給系統無法即時回報偵測結 0 20 40 60 80 100 120 0 20 40 60 80 100 120 140 Stand_pose Temp_pose Laying_pose

(28)

20 果的影響。所以為了改善這一點的影響,我們將只使用人體身長與身寬為樣本特 徵值的方式,改為使用人體身高與身寬的比值跟人體 bounding box 的 x 軸 y 軸 的差值為兩項特徵值來建立我們樣本的特徵空間,以期改善樣本資料混雜的情形。 改善後的樣本資料分布如圖 23 所示。 圖 23.樣本分布圖 以人體身長、身寬比例( 圖中 x 軸 )與人體 bounding box 的 x 軸與 y 軸差值( 圖 中 y 軸 )為特徵 在圖 23 中我們可以看到樣本資料在特徵空間中的分布情形較圖 22 來的明顯, 在人體姿勢為站立狀態時,我們可以看到其人體身長寬的比例大多都在 3 以上, 而當人體姿勢處在中間狀態時,其人體長寬比例由樣本資料來看介於 1 與 3 之間, 在人體姿勢為躺臥狀態時此時人體比例大多低於 1,且當處於躺臥狀態時人體 bounding box 的差值便會為負值。我們可以在圖中觀察到,選取人體比例與人 體 bounding box 差值這樣的特徵值來建立的樣本特徵空間,相較於先前單純使 用人體身長、身寬所建立的樣本特徵空間,樣本分類較為集中,這樣的結果可以 -80 -60 -40 -20 0 20 40 60 80 100 120 0 1 2 3 4 5 6 7 8 9 10 11 12 13 stand_pose temp_pose laying_pose

(29)

21

使的我們在使用 kNN 分類器上有較少的誤判情形,且不需額外的計算成本來修正 kNN 分類之後的結果,對於一個即時系統將有不少的助益。根據我們在樣本特徵 選擇上的修改所做的分類結果如下表 1,我們採用 K-Fold Cross

Validation[12][16]來驗證我們的 kNN 分類的正確性。所謂 Cross Validation 即為指對已建立的測驗效度進行複核的過程,主要是以與原來用以建立測驗效度 不同的樣本再行測驗,然後比較其結果以來確定效度的準確性。而 K-Fold 則是 將資料分成 k 組,其中 k-1 組為訓練資料( training data ),1 組測試資料 ( testing data ),作 k 次取平均來做為我們 k 值的選取,實驗結果如表 1 所 示。

表 1.K-Fold Cross Validation

K-Fold Cross Validation 所得到的身體姿勢分類正確率

由表 1 我們可以看到在 k = 3 時有較高的正確率,平均正確率在 95.34%。 在訓練資料足夠的情況下,分類的正確率更可到達 96.67%,在本研究中我們選 用 k = 3 來當作我們 kNN 的 k 值。 測試資料與 訓練資料比 k=3 k=5 k=7 k=10 k=13 k=15 資料比 1:9 96.67% 95.33% 94.00% 93.33% 92.67% 92.67% 資料比 1:4 94.67% 94.00% 94.00% 93.33% 93.33% 93.33% 資料比 1:1 94.67% 95.33% 95.33% 93.33% 90.67% 90.67% 平均 95.34% 94.89% 94.44% 93.33% 92.22% 92.22%

(30)

22

3.2 跌倒偵測

我們在第一章中提到,高齡者在室內跌倒時多為正在行走的情形,是故本節 的跌倒偵測主要用於在行走中跌倒的情形,圖 24 為本研究偵測基於行走中的跌 倒事件流程圖。 Stand_pose Laying_pose Temp_pose 第一次Temp_pose轉到 Laying_pose的時間 Laying_pose Falling down Falling down < 0.4 秒 ≧ 0.4 秒 Laying_pose Laying down 圖 24.基於行走中的跌倒事件流程圖 本研究假設跌倒的情形均在行走時發生,所以一開始系統將上一節我們所分 類好的人體姿勢當作為現在的狀態。在我們的流程圖中我們將躺臥事件分為正常 躺臥( Laying down )與跌倒( Falling down )兩種不同的事件,分辨不同兩事 件的因素我們認為是速度的差異。對於正常的躺臥事件而言,由於高齡者行動較

(31)

23 為緩慢,在由行走中的狀態改變到躺臥的狀態需要較跌倒事件花上較多的時間。 也就是說對於躺臥事件而言,當人體姿勢改變過於劇烈,超過某個門檻值後我們 就認為這個人是跌倒了而不是正常的躺下。 再者我們認為人類跌倒的速度不會因為性別、年齡、身高與體重等差異而有 所不同,所以我們假定只要是發生了跌倒的事件,其人體姿勢狀態的轉換時間應 該會小於某個門檻值,為了取得較為客觀的門檻值我們模擬了 30 筆跌倒的情形, 並將其姿勢狀態轉換時的時間記錄下來,如下表 2。 表 2.模擬跌倒情形的時間記錄表

其中 TempStateTime 為系統判定進入 Temp_pose 時的時間,LayingStateTime 則 是系統判定進入 Laying_pose 時的時間,State 時間差則是兩個狀態時間的差值,

單位均為秒 TempStateTime LayingStateTime State

時間差

TempStateTime LayingStateTime State 時間差 1 5.17 5.31 0.14 16 2.36 2.61 0.25 2 15.1 15.34 0.24 17 12.74 13.05 0.31 3 24.25 24.5 0.25 18 25.28 25.57 0.29 4 34.1 34.32 0.22 19 33.1 33.45 0.35 5 44.25 44.5 0.25 20 47.62 47.86 0.24 6 1.93 2.15 0.22 21 2.55 2.81 0.26 7 7.4 7.7 0.3 22 14.98 15.17 0.19 8 13.57 13.79 0.22 23 25.5 25.67 0.17 9 19.87 20.1 0.23 24 31.17 31.37 0.2 10 26.29 26.5 0.21 25 39.94 40.21 0.27 11 2.89 3.06 0.17 26 3.96 4.21 0.25 12 7.14 7.36 0.22 27 11.25 11.56 0.31 13 11.26 11.51 0.25 28 26.33 26.51 0.18 14 15.84 16.18 0.34 29 36.12 36.47 0.35 15 22.34 22.61 0.27 30 45.89 46.12 0.23

(32)

24 由表 2 中我們可以看到,在我們模擬的情形中,由系統測得的人體姿勢狀態 的轉換最小值為 0.14 秒,最大值則為 0.34 秒。經由統計方法[17]可得下表 3。 表 3.模擬跌倒樣本資料統計表 單位為秒 統計量 標準誤 State 時間差 平均數 .2460 .00970 平均數的 95% 信 賴區間 下限 .2262 上限 .2658 刪除兩極端各 5% 觀察值之平均 數 .2456 由此表可以看出 State 時間差在 95%的信賴區間為 0.2262 秒與 0.2658 秒之 間( 0.2262 秒 ≦ 平均 State 時間差 ≦ 0.2658 秒 ),平均 State 時間差有 95% 的機率會落入此範圍,因此我們可以設定門檻值上限在 0.3 秒以上,而由於我們 的系統 1 秒鐘將處理 5 個 frame,即 1 個 frame 耗時 0.2 秒,為了方便我們系統 的處理因此我們將門檻值的上限設定在 0.4 秒,即經過兩個 frame 或是經過至多 3 次的人體姿勢狀態轉換,接著我們將利用統計方法來對我們的假設加以驗證。 我們將模擬的資料用統計軟體驗證是否為常態分布,表 4 為經由 SPSS 所輸出的 Kolmogorov-Smirnov 檢定報表中可知,P-value( 顯著性 ) = 0.749 > 0.05, 因此不棄卻虛無假設。本表假設 H0:資料服從常態分配,H1:資料不服從常態 分配,即接受H0,故資料應服從常態分配。圖 25 為我們模擬跌倒資料的 Q-Q 圖, 在圖中我們可以看出資料趨近直線的分布,因此資料屬於常態分配。

(33)

25 表 4.單一樣本 Kolmogorov-Smirnov 檢定表 State 時 間差 個數 30 常態參數 平均數 .2460 標準差 .05315 最大差異 絕對 .137 正的 .137 負的 -.079 Kolmogorov-Smirnov Z 檢定 .749 漸近顯著性 (雙尾) .630 圖 25.跌倒資料 State 時間差的 Q-Q 圖 0.10 0.15 0.20 0.25 0.30 0.35 觀察值 -2 -1 0 1 2 期 望 次 數 常 態 State時間差 的常態 Q-Q 圖

(34)

26 本研究假設跌倒事件發生時其人體姿勢狀態轉換所需的時間的平均值小於 2 個 frame 轉換的速度( 0.4 秒 ),且人體姿勢轉換的時間符合常態分配,因此 我們以下將利用 T 檢定推論其平均速度的值。表 5 為單一樣本 T 檢定統計量表, 表 6 為單一樣本 T 檢定的結果,我們的假設為當處於跌倒狀態時,由 Temp_pose 轉變為 Laying_pose 的平均所需時間為μ,假定H0:μ ≧ 0.4;H1:μ < 0.4。 表 5.單一樣本 T 檢定統計量表 個數 平均數 標準差 平均數的標準誤 State 時間差 15 .2353 .04779 .01234 表 6.單一樣本 T 檢定表 檢定值 = 0.4 t 自由度 顯著性 (雙尾) 平均差異 State 時間差 -13.345 14 .000 -.16467 由統計樣本檢定表中可得知有足夠證據顯示母體μ < 0.4,即利用 T 檢定的 結果,可得 P-value < 0.05,表示在α = 0.05 的顯著水準下,我們接受μ < 0.4 的結論,即為跌倒狀態下由 Temp_pose 轉變為 Laying_pose 的平均所需時間 < 0.4 秒。因此本系統將使用 0.4 秒作為程式邏輯上判斷跌倒與正常躺臥的臨界 值。

(35)

27

第四章 實驗過程與結果討論

4.1 實驗說明

本系統首先利用移動資訊將人體與背景區隔開來,在此結果下,再針對切割 出來的人體作姿勢狀態的分析並分類,之後對偵測到的人體姿勢狀態的轉換作檢 查是否有符合系統預設的臨界值,進一步判斷跌倒事件的發生。整體系統的設計 是依照下列項作為主要考量:一、穩定且快速的追蹤人體,二、人體姿勢辨識的 正確性,三、跌倒事件與正常躺臥事件偵測的正確性,底下我們將對這些項目做 實驗分析與結果討論,本研究所使用的硬體設備如下表 7 所示。 表 7.硬體設備表 攝影機 羅技 QuickCam STX 中央處理器 Intel(R) Core(TM)2 2.13GHz 記憶體容量 1.00 GB RAM

4.1.1 人體姿勢分析

在人體姿勢分析上我們將針對站立姿勢、中間姿勢與躺臥姿勢做分類,每次 實驗執行時,我們皆採取攝影機固定的方式,然後將出現在場景中的人體給標明 出來並分析目前此人的姿勢。圖 26 至 28 分別為實驗測試三種姿勢的結果。

(36)

28

圖 26.人體站立姿勢分析結果

圖 27.人體中間姿勢分析結果

(37)

29 接著我們對人體上肢大幅度運動時的姿勢做分類,在此我們主要是驗證本系 統能夠在雙手活動的影響之下,有效的分析出人體現在的姿勢。圖 29 至 31 為實 驗測試的結果。 圖 29.雙手活動影響測試結果 1 圖 30.雙手活動影響測試結果 2

(38)

30 圖 31.雙手活動影響測試結果 3 在經過這幾個測試之後可以看出,本系統的人體追蹤與姿勢分析可以有效且 快速的偵測到人體並分析人體現在的姿勢,即使受測者在日常行為中雙手有較大 幅度的運動,本系統仍然可以有效的將姿勢分析出來。

4.1.2 跌倒事件偵測

本節依據先前經由實驗資料統計出來的臨界值,作為受測者是否跌倒的主要 判斷,如果受測者在正常行走的狀態下,花費多於 0.4 秒( 經由系統處理過後的 2frame )以上的時間完成由中間姿勢( 彎腰、坐下或蹲下等 )到躺臥姿勢的連續 姿勢轉換,根據我們實驗測試所得到的結果,應該判斷為正常躺臥事件,反之, 若此過程花費時間少於 0.4 秒,即判斷為跌倒事件。圖 32 至 37 為系統實驗測試 截圖。

(39)

31

圖 32.正常躺臥事件—站立姿勢

圖 33.正常躺臥事件—中間姿勢( 坐下 )

(40)

32

圖 35.跌倒事件—站立姿勢

圖 36.跌倒事件—中間姿勢

(41)

33

4.2 實驗結果與討論

由於實際跌倒影像難以取得,故本實驗將採用模擬跌倒的方式來測試系統的 正確性。本實驗受測人數共 15 人,實驗流程為請受測者進入場景後共做三次的 躺臥與三次的跌倒共六次的測試。實驗測試結果如下表 8 所示。 表 8.實驗測試結果 Fall accident System recognition Yes No Positive 37 6 Negative 8 39 由實驗的結果可知,本系統的全部正確率為 84.44%,躺臥事件判別的正確 率為 86.67%,跌倒事件判別的正確率為 82.22%。關於跌倒事件的誤判,有部分 的原因為本實驗採模擬跌倒的方式,在受測者模擬跌倒時會有不自覺的停頓導致 系統判斷上的失誤。 另一方面使用普通的攝影機將會有攝影上的死角,而環場型攝影機一般家庭 中並不會具備,且環場型攝影機在攝影機的下方將無法正確的得到人體姿勢與人 體輪廓資訊,我們使用普通的攝影機由於利用動態切割背景的方式不必額外建立 背景資訊,當攝影機轉向時可以在極短的時間內恢復系統的穩定度,如圖 38 所 示。

(42)

34 圖 38.攝影機固定 此時為 frame25 圖 39.攝影機開始轉向 此時為 frame30 圖 40.使影機轉向完成 此時為 frame40

(43)

35 圖 41.系統回復 此時為 frame50 由上圖可以得知,本系統在攝影機轉向完成後( frame 為 40 )到系統回復正 常追蹤能力(frame 為 50),共耗費 10 個 frame 的時間。以本實驗所使用的攝影 機平均一秒可擷取 15 個 frame 來說,本系統在攝影機轉向後可以在一秒內恢復 並繼續監看。

(44)

36

第五章 結論

5.1 研究總結

在本研究中,我們提出了:一、人體動態資訊—利用運動資訊的速度,判斷 跌倒與躺臥行為。 二、人體輪廓資訊—消弭了人體上肢活動影響,降低因過大 手部動作造成的誤判現象。 三、改善原本 kNN 分類器的特徵值選取—降低機器 學習在姿勢分類上花費的時間。且本系統僅使用家中現有電腦設備,即可以低成 本完成跌倒偵測系統。 我們利用動態資訊捕捉並追蹤人體,求得人體剪影與人體姿勢的特徵,選用 人體身高身寬的比值與人體 bounding box 的長寬差做為我們的特徵值,減少 kNN 演算法的計算負擔。利用分析人體輪廓資訊來消弭上肢活動過大的影響,減少人 體姿勢誤判的情形。在跌倒事件的偵測上,可以有效的分辨出正常躺臥與跌倒的 差異,並有 84.44%的正確率。

5.2 未來工作

本系統尚有許多可以改進的地方,例如可以加強收集實際跌倒情形的資料來 使跌倒偵測更加完善,加入通訊網路技術以提供遠距離的即時監控,這些都需要 更進一步的研究。未來更可以加入音訊的辨識分析作為另一項特徵值以提高跌倒 事件與躺臥事件的分辨率,亦可利用運動資訊記錄人體移動的軌跡做為未來醫療 行為的分析。

(45)

37

參考文獻

[1] 國立成功大學 老年學研究所, http://www.ncku.edu.tw/~geront/intro.php [2] 宜蘭縣政府全球資訊網, http://daf.e-land.gov.tw/board/a/board_a_2.asp?sno=9832 [3] 內政部社會司, http://sowf.moi.gov.tw/19/quarterly/data/110/17.htm

[4] Ali Maleki Tabar, Arezou Keshavarz, Hamid Aghajan,” Smart Home

Care Network using Sensor Fusion and Distributed Vision-based Reasoning” VSSN '06 Oct 2006.

[5] Anderson, D., Keller, J.M., Skubic M., Xi Chen, Zhihai He,”

Recognizing Falls from Silhouettes” EMBS '06. 28th Annual International Conference of the IEEE Aug 2006.

[6] S.-G. Miaou, Pei-Hsu Sung, Chia-Yuan Huang,” A Customized Human Fall Detection System Using Omni-Camera Images and Personal Information”D2H2. 1st Transdisciplinary Conference on April 2006. [7] 陳協慶, 陳嘉玲, 李國榮, ”科技輔具研發-跌倒偵測與警報裝置” 行政院國家科學委員會專題研究計畫成果報告 2001. [8] 林建良,”人的姿勢與偵測”國立交通大學,碩士論文,2006. [9] Gonzalez Woods 著,繆紹綱 編譯,數位影像處理,普林斯頓出版社出版. 2005. [10] 二值化處理基本原理介紹, http://cslin.auto.fcu.edu.tw/scteach/mech/text/yin03_12.html [11] 物件連接標記, http://www.csie.npic.edu.tw/itweb94/behind/94/Matlab/label.ht m

[12] R.O. Duda, P.E. Hart, and D.G. Stork, ”Pattern Classification.

2nd

ed ,”Wiley Interscience. 2001.

[13] kNN 演算法, http://mmdays.com/2007/05/16/knn/

[14] Data Clustering and Pattern Recognition

http://neural.cs.nthu.edu.tw/jang/books/dcpr/index.asp

[15] Nasution, A.H., Emmanuel, S., ”Intelligent Video Surveillance

for Monitoring Elderly in Home Environments ” MMSP 2007. IEEE 9th Workshop on Oct 2007.

[16] Cross Validation, http://www.little50.org/71

數據

圖 5.跌倒偵測-警報器配戴圖
圖 17.坐下姿勢
表 1.K-Fold Cross Validation
圖 26.人體站立姿勢分析結果
+3

參考文獻

相關文件

„ 移動滑鼠游標到縮圖上, 移動滑鼠游標到縮圖上, ACDSee會自動顯示放大 ACDSee 會自動顯示放大 的縮圖

張愛玲說:「我們對於生活的體驗往往是第二輪的。」這句話應

倒傳遞神經網路的演算法使 SPOT 假色影像轉換到 SPOT 自然色影 像。影像的結果。(3)以不同天的 SPOT 假色影像進行網路回想,產 生

隨著影像壓縮技術之進步、半導體科技之快速發展、無線通訊技術與數位傳送輸技術

在軟體的使用方面,使用 Simulink 來進行。Simulink 是一種分析與模擬動態

電腦視覺的影像處理與分析在軟體部分,本研究分別使用美國微 軟公司所開發的 Visual C++ 6.0 以及美國 Matrox Imaging 公司所發展 出來的 Matrox Imaging Library 7.0。其中

It allows a much wider range of algorithms to be applied to the input data and can avoid problems such as the build-up of noise and signal distortion during processing.. Since

粒子所具有之初始動量較大,因此,在流場改變時,粒子受到流場的