• 沒有找到結果。

此章節是人體坐姿判讀流程的第一步驟,在此我們將會介紹如何 把拍攝到的原始圖檔處理成我們所需要的人體坐姿圖形,首先介紹如 何將原始圖檔去除背景,之後引入一平滑濾波器做一些處理,最後則 是將圖片中的人體姿勢部分擷取出來,以利下一步驟類神經網路分析 的處理。

2-1 去除背景

在進行影像處理之前,我們必須將原始的圖片從彩色的 RGB 圖 檔轉換成灰階圖檔。之所以要將圖檔轉換成灰階圖檔,一來是因為灰 階圖檔是二維矩陣的表示方式,且每個像素(pixel)由 8 個位元來表 示,故灰階值的變化可以從 0 到 255,而彩色圖檔為三維矩陣且每一 像素需要用 24 位元來表示,相較之下用灰階圖能夠較省空間;二來 是因為若將圖檔用灰階表示之,則其物件的輪廓會比用彩色表示更加 明顯。因此,我們每次拍攝到的坐姿圖,都會先將其轉成灰階圖檔後 才能做後續的處理。

圖檔的座標格式與我們常用的座標格式略有不同,如圖 2-1-1 所 示,由圖 2-1-1 我們可以發現圖檔的原點是在左上角,且圖檔座標的 表示法是先行(row)後列(column),與我們所用的在卡氏座標中描述一

點的座標時,x 座標為橫坐標 y 座標為縱座標的方式不同。

在本研究採取的背景消除方法是採用相減法,其處理過程分成兩 步驟,第一步驟是先校正光度,第二部份則是將校正光度後的圖片與 背景圖做相減的動作。在此我們將椅子視為不會移動的背景之一,意 即背景圖是指椅子上尚未坐人時的圖檔,人體坐姿圖則是人坐在椅子 上的圖檔,將兩張圖相減之後,相同的部分就會變成零,不同的地方 就是人體姿勢取代原本背景圖的地方,因此這兩張圖有灰階值變化的 地方就是整個人體姿勢圖。因為在實際過程中,拍攝背景圖與人體坐 姿圖時光度可能會產生了改變,所以在將兩張圖檔做相減的動作之前 需要先做光度校正的處理。

在本研究中光度校正的過程為:先從背景圖的左上角取一小塊像 素的背景灰階值,再從人體坐姿圖中相同位置的地方取一塊像素的背 景灰階值,之後用從人體坐姿圖中取出的這一塊像素的灰階值各自去 除上背景圖中相同位置的灰階值,用以判斷此時人體坐姿圖與純背景 圖的光度變化了多少,之後再將得到的灰階值變化取平均,最後用人 體坐姿圖去除上這個灰階變化值的平均,就完成光度校正的工作了。

我們用圖檔座標的格式來描述背景圖與人體坐姿圖的灰階值,令背景 圖中各畫素的灰階值為B ,

 

r c ,坐姿圖中各畫素的灰階值為P ,

 

r c座標中的 r 代表第幾行,c 代表第幾列,則光度校正的計算過程如下

式:

2-2 高斯平滑濾波(Gaussian Smoothing filter)

空間濾波器一般又稱為幕罩(mask),使用幕罩對於影像處理的

法將一個33矩陣的幕罩與以

 

r,c 點為中心、半徑為 1 所形成的

1. 在二維的平面中,二維高斯函數是一個環狀對稱,對於任何

2-3 擷取目標圖型

為了要將姿勢圖與背景圖完全的做出區隔,在此我們要對影像進 行二元化的處理。

所謂的二元化處理乃是將影像變成只用 0 跟 1 這兩種值來表示 之,值為 0 呈現黑色,值為 1 則呈現白色。一來可以使圖上只留下需 要的人體坐姿圖(將其變成 1),完整消除不要的人體坐姿圖之背景

(將其變成 0),二來是為了簡化後續圖形參數的計算,將姿勢圖中 各畫素的灰階值都變成相同的值(同為 1),就可以將人體姿勢圖上 的各分點都視為均值(uniform)分布的狀態。

要想將影像做二值化處理,最簡單的方式就是設定一個閥值

(threshold),藉由邏輯二元分類的概念,將各畫素灰階值大於此閥 值的灰階值令為 1(白色),將小於此閥值的灰階值令為 0(黑色),

如此一來就可以將人體坐姿圖與背景單調化,造成完全分離的黑白對 比現象。

至於閥值的大小應該要如何設立呢?如果閥值選擇的過小,則會 造成除了人體坐姿圖點外還有其他外在背景圖像的干擾;但如果閥值 選擇的過大,則會造成人體坐姿圖中有部分的人體圖象消失,使得圖 形失真。我們先觀察經過高斯平滑濾波之後的坐姿圖形與其灰階分布 圖,由圖 2-3-1 與圖 2-3-2 所示,由於高斯平滑濾波會對於背景的雜

訊有消除的能力,所以由圖 2-3-1 可看出背景(黑色)的部分佔了整

的時候,對於腳的部分需要考慮嗎?例如圖 2-3-4 與 2-3-5,若是不看 椅子以下小腿的部分,只看椅子以上的部分,兩張圖的姿勢可以說是 一模一樣的!且人眼的直觀判斷上,我們會將這兩張圖視為相同的

「正」的姿勢,畢竟,當我們在判斷一個人的坐姿為正或不正的時候,

其實看的部分也只專注在人體的「上半身」是否有歪斜。因此我們可 以說:要判斷人體姿勢正與不正,只需要看上半身的部分即可。然而 對於上半身的說法,我們在此分成兩種類型的擷取方式:一類是較寬 鬆的上半身擷取,只刪掉小腿以下的部分,保留椅子以上的人體部 份;另一類是嚴格的上半身擷取,只看人體的軀幹部份,也就是刪掉 小腿、大腿以及手的部分,只剩下頭與身軀的部份。

要想從完整的人體姿勢二元圖型中去擷取出我們所要的目標上 半身圖型,必須要先知道小腿、大腿與手會分別分佈在什麼樣的區域 中。因此就先以一九宮格的框架來框出人體上半身的區域,之後再從 九宮格去對應所要刪除的區域為何,進而達到擷取圖形的動作。然而 九宮格要怎麼建立呢?在此我們建立九宮格的方式為從「標準坐姿」

下手。所謂的標準坐姿,就是用來判斷坐姿正與不正的依據坐姿。一 個判斷系統必須要先有一個標準所在,之後才能夠對於後續資料進行 判斷,因此本研究的坐姿判斷系統也必須要先建立起標準坐姿,才能 判斷現在所拍攝到的姿勢是正或不正。而標準坐姿的建立方式非常簡

單,就是在一開始的時候請受試者擺出一個正的坐姿,之後將此坐姿

其中 n 為圖形的列數(column number) ,m 為圖形的行數(row number)

的劃分動作就完成了。

根據九宮格的分布狀態可以看出大腿就出現在格 9 處,手會出現 在格 6 處,小腿為九宮格之下。寬鬆的上半身擷取就只需要刪掉小 腿,也就是把九宮格以下的部分的畫素都變成 0(黑色),如圖 2-3-10 所示。至於刪除椅子上的大腿與手的部分應該要如何刪除呢?由於一 般人的上臂圍約為大腿圍的一半,而大腿圍約為腰圍再少 10 毫米,

因此我們將大腿寬視為腰的寬度,手的寬度視為大腿寬的一半,而腰 的寬度即是我們剛剛畫分九宮格的格寬,也就是人體軀幹從背部到胸 腹部之間的距離。因此,如果格九中出現的人體圖形部分之行高開始 小於的小於九宮格格寬時,即視為進入大腿的部分;若格六中出現的 人體圖形部分的行高開始小於1

2九宮格格寬時,即視為進入手臂的部 分,當找出手臂與大腿之後,便將其畫素值視為 0(黑色),經過這 樣的刪除結果,最後人體的姿勢圖就只會剩下軀幹的部分而已,如圖 2-3-11 所示。

由標準坐姿所畫分出九宮格的大小,之後便將此九宮格定型,當 受試者陸續產生不同的坐姿時,我們則將完成九宮格產生左右移動來 框出人體的坐姿分布。因為椅子視為背景的部分所以不會改變,故高 度方面不需要做任何調整,至於左右要移多少呢?在標準坐姿時畫分 背部與胸腹部是藉由人體坐姿圖形的縱向畫素值大於最大高度的一

半當做劃分處,因此我們也利用同樣的方式先找出受試者之後的坐姿 在縱向畫素大於最大高度1

2處的左右格線,然後求這兩條線列座標的 中間值當做是中心九宮格新的中心點。如果是正的坐姿,則左右格線 切割出來的分佈圖會和標準坐姿圖是一樣的,會切在人體的背部與胸 腹部處,如果不是正的坐姿,則切出來的圖形就不會剛好是背部與胸 腹部處,由圖 2-3-12 可以看出坐姿不正時所切出來之結果,圖 2-3-13 為此坐姿刪除小腿之結果,圖 2-3-14 則為此坐姿刪除格 6 手的部分 與格 9 大腿部分之結果。

圖 2-1-1 影像座標示意圖

(a) 背景校正光線選取區塊

(b) 人體姿勢圖校正光線選取區塊

(c) 校正後相減去背景圖

圖 2-1-2 光度校正圖

圖 2-2-1 幕罩運算範圍示意圖

圖 2-2-2 一維的高斯函數圖

圖 2-2-3 二維的高斯函數圖

圖 2-3-1 高斯濾波後之圖形

圖 2-3-2 高斯濾波後圖形之灰階分佈

圖 2-3-3 經閥值判斷後之二元圖

(a) 原始圖形

(b) 二元圖形

圖 2-3-4 正姿圖形一

(a) 原始圖形

(b) 二元圖形

圖 2-3-5 正姿圖形二

(a) 原始圖形

(b) 二元圖形

圖 2-3-6 標準坐姿二元圖

(a) 九宮格判斷條件示意圖

(b) 九宮格劃分圖

圖 2-3-7 九宮格劃分預想圖

圖 2-3-8 九宮格實際架構圖

圖 2-3-9 九宮格實際完成圖

圖 2-3-10 刪除小腿之上半身圖

(a) 欲刪除之部分

(b) 實際刪除之結果

圖 2-3-11 刪除小腿、手與大腿之上半身圖

圖 2-3-12 非標準坐姿劃分九宮格圖

圖 2-3-13 非標準坐姿刪除小腿之上半身圖

圖 2-3-14 非標準坐姿刪除小腿、手與大腿之上半身圖

相關文件