本作品影像處理動作,有膚色計算、動態物件萃取、二值化、輪廓擷取、影像細線化、端點判斷與分類、運動頻度分析,詳細說明如下:
膚色計算:
本作品先將其影像資料轉成RGB型態後,再轉成HSV格式,透過HSV格式來識別膚色區塊,並且計算其膚色面積。
動態物件萃取與二值化:
本作品先將其影像資料轉成RGB型態後暫存至SDRAM記憶體中,並分成兩個區塊分別做前、後兩張影像資料的儲存,接著再將兩張影像資料同時取出後,便開始在FPGA做影像辨識。
在取出前後兩張影像資料後。在未移動的部份,其影像值較為相近,便將其視為不必要的影像資料、或是背景,將其值定義為黑色;在物件移動較大的部份,其影像值相差較大,便將其視為動態即為有用的影像資料,並將其值定義為白色,藉此達到影像二值化。
輪廓擷取:
為了在後續可以得到正確的端點,我們必須把僅有輪廓的二值化影像進行掃瞄。
影像細線化:
經過影像掃瞄後,由左右兩邊輪替的推擠,所以產生的細線會位於目標物的中心點。然後,再將部份斷開的接線先判別是否相近,若相近則將其連接起來、若為否,則不予以理會。經由上述動作,當掃完整張圖後便可獲得一火柴棒人的形狀。
端點判斷與分類:
當影像侵蝕到只剩下線條狀的火柴棒人時,其所謂的端點便是在一3x3的九宮格遮罩中,若中心點為白點,而鄰近的8格中只有一點同樣為白點,則該中心點便是端點、需判斷其端點方向;相對的,鄰近的8格中若有2格以上同為白點,則該點便不是端點,不需判別。
運動頻度分析:
A. 手部運動:
要求左右手同時上下擺動,第一碼為動作類別,動作將其歸類為’7’,收視者的左手為’2’、右手為’3’,當手部置於上方所要求的位置時,其端點定為’3’、水平則定為’2’、垂下則定為’1’、持續擺動則定為’4’。例如,判斷收視者右手舉至上方時,則所得之編碼為”723”;收視者左手持水平時,則所得之編碼為”732。(如圖5.1所示)。