亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種人體姿態(tài)的分類(lèi)方法和裝置的制作方法

文檔序號(hào):6619129閱讀:216來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):一種人體姿態(tài)的分類(lèi)方法和裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及圖像內(nèi)容分析技術(shù)領(lǐng)域,特別涉及一種人體姿態(tài)的分類(lèi)方法和裝置。

背景技術(shù)
人體姿態(tài)是各種各樣的,如站立、彎腰、坐、躺、半躺等。圖像中的人體姿態(tài)分析是圖像內(nèi)容分析的主要內(nèi)容之一,主要目的是估算圖像中人體各個(gè)部位的位置,確定頭部、四肢的姿態(tài)。確定人體姿態(tài)之后,可進(jìn)一步判斷人的當(dāng)前動(dòng)作等信息,進(jìn)而應(yīng)用于行為分析、視頻監(jiān)控、人機(jī)交互、虛擬現(xiàn)實(shí)等各種應(yīng)用場(chǎng)景。例如在小時(shí)工監(jiān)控系統(tǒng)中,可以通過(guò)人體姿態(tài)確定當(dāng)前小時(shí)工有沒(méi)有偷懶;或者,可以將人體姿態(tài)與人所在的地方進(jìn)行分析,確定人是不是摔倒在地上,進(jìn)行老年人的摔倒檢測(cè);或者,可以根據(jù)人體姿態(tài)分析人的動(dòng)作趨勢(shì)等。
現(xiàn)有技術(shù)提供的分析人體姿態(tài)的方法,大都是通過(guò)感應(yīng)器或遙控器與人體某部分的接觸,對(duì)人體姿態(tài)進(jìn)行簡(jiǎn)單的識(shí)別和分析。一般來(lái)說(shuō),現(xiàn)有技術(shù)所提供的方法均是對(duì)人體某部分的動(dòng)作進(jìn)行簡(jiǎn)單的捕捉識(shí)別。
在實(shí)現(xiàn)本發(fā)明的過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問(wèn)題現(xiàn)有技術(shù)對(duì)人體姿態(tài)的識(shí)別不全面,對(duì)人體姿態(tài)進(jìn)行識(shí)別時(shí)需要人工介入,并且沒(méi)有提供對(duì)人體姿態(tài)進(jìn)行分類(lèi)的方法。


發(fā)明內(nèi)容
本發(fā)明提供一種人體姿態(tài)的分類(lèi)方法和裝置,以實(shí)現(xiàn)確定圖像中人體的位置和動(dòng)作變化趨勢(shì),同時(shí)通過(guò)人頭檢測(cè)確定頭部的位置,根據(jù)頭部位置、人體形狀等信息對(duì)人體的姿態(tài)進(jìn)行分類(lèi)。
為達(dá)到上述目的,本發(fā)明實(shí)施例一方面提供一種人體姿態(tài)的分類(lèi)方法,包括 確定當(dāng)前幀圖像中的人體區(qū)域; 在所述人體區(qū)域中,進(jìn)行人體形狀的提取,獲得人體的外輪廓,并通過(guò)人頭檢測(cè),獲得人頭的位置信息; 當(dāng)頭部位于人體的外輪廓正中間,此時(shí)確定所述人體姿態(tài)為垂直站立;當(dāng)頭部位于人體的外輪廓的一側(cè)時(shí),進(jìn)而計(jì)算人體外輪廓的長(zhǎng)寬比,根據(jù)所述人體外輪廓的長(zhǎng)寬比確定人體姿態(tài)種類(lèi)。
優(yōu)選地,所述計(jì)算人體外輪廓的長(zhǎng)寬比具體包括 計(jì)算當(dāng)前幀圖像中頭部到腳的距離; 計(jì)算所述當(dāng)前幀圖像中人體外輪廓的平均寬度; 根據(jù)所述當(dāng)前幀圖像中頭部到腳的距離和人體外輪廓的平均寬度,獲得人體外輪廓的長(zhǎng)寬比。
優(yōu)選地,所述計(jì)算所述當(dāng)前幀圖像中人體外輪廓的平均寬度具體包括 計(jì)算所述當(dāng)前幀圖像中人頭到腳的連線與攝像頭的水平線之間的夾角; 計(jì)算人體水平方向的平均像素個(gè)數(shù); 根據(jù)所述夾角和所述人體水平方向的平均像素個(gè)數(shù)計(jì)算人體外輪廓的平均寬度。
優(yōu)選地,當(dāng)所述夾角為a,所述人體水平方向的平均像素個(gè)數(shù)為w′,人體外輪廓的平均寬度為w時(shí),所述根據(jù)所述夾角和所述人體水平方向的平均像素個(gè)數(shù)計(jì)算人體外輪廓的平均寬度具體為 w=w′×cosa, 其中,N為所述當(dāng)前幀圖像中人頭到腳共占用的像素個(gè)數(shù),ni為第i行對(duì)應(yīng)的像素個(gè)數(shù)。
優(yōu)選地,當(dāng)人體外輪廓的長(zhǎng)度為l,人體外輪廓的平均寬度為w,所述人體外輪廓的長(zhǎng)寬比為

時(shí),所述根據(jù)所述人體外輪廓的長(zhǎng)寬比確定人體姿態(tài)具體包括 當(dāng)時(shí),確定人體姿態(tài)為平躺; 當(dāng)時(shí),確定人體姿態(tài)為半躺; 當(dāng)時(shí),確定人體姿態(tài)為坐; 當(dāng)時(shí),確定人體姿態(tài)為傾斜站立; 其中,th1、th2和th3為預(yù)設(shè)的閾值。
優(yōu)選地,所述在所述人體區(qū)域中,進(jìn)行人體形狀的提取,獲得人體的外輪廓具體包括 采用Snake的方法確定人體的外輪廓的能量函數(shù),通過(guò)循環(huán)迭代使所述能量函數(shù)達(dá)到最小值,獲得人體的外輪廓。
當(dāng)人體的外輪廓上第i個(gè)點(diǎn)的坐標(biāo)為(x(i),y(i)),第i個(gè)點(diǎn)的連續(xù)性項(xiàng)能量為Ec(i),第i個(gè)點(diǎn)的曲率項(xiàng)能量為Es(i),第i個(gè)點(diǎn)的圖像能量為Ei(i),第i個(gè)點(diǎn)的能量函數(shù)為E(i)時(shí),所述確定人體的外輪廓的能量函數(shù)具體為 其中,α、β、γ分別為Ec(i)、Es(i)和Ei(i)的權(quán)重,α、β、γ是正數(shù),α+β+γ=1; dmean為人體的外輪廓上相鄰兩個(gè)點(diǎn)之間的平均距離,Ecmax是Ec(i)的最大值; Esmax是Es(i)的最大值; g″(i)是人體的外輪廓上第i個(gè)點(diǎn)的二階差分, I(x(i),y(i))表示坐標(biāo)為(x(i),y(i))的像素點(diǎn)的灰度或者亮度值,l是平滑寬度,l=1或其他正整數(shù)。
優(yōu)選地,所述通過(guò)循環(huán)迭代使所述能量函數(shù)達(dá)到最小值,獲得人體的外輪廓具體包括 設(shè)置Snake的初值,計(jì)算Ecmax,Esmax和dmean; 按照收斂方向,確定當(dāng)前輪廓點(diǎn)的候選點(diǎn),按照能量最小的原則在所述候選點(diǎn)中選擇使

最小的點(diǎn)作為下次迭代的初值; 對(duì)每個(gè)輪廓點(diǎn)都計(jì)算一遍后重新計(jì)算Ecmax,Esmax和dmean,繼續(xù)進(jìn)行迭代,比較每次迭代前后輪廓點(diǎn)的位置,如果某次迭代時(shí)所有輪廓點(diǎn)的位置均未發(fā)生變化,停止迭代。
優(yōu)選地,該方法還包括 選擇多幅不同姿態(tài)的人體圖像或人體的外輪廓; 根據(jù)人體姿態(tài)對(duì)所述人體圖像或人體的外輪廓進(jìn)行分組; 提取每組人體外輪廓的特征向量作為訓(xùn)練樣本輸入到分類(lèi)器的訓(xùn)練模塊,通過(guò)訓(xùn)練建立人體姿態(tài)的分類(lèi)器; 提取待確定人體圖像或人體的外輪廓的特征向量輸入到人體姿態(tài)的分類(lèi)器中,根據(jù)所述人體姿態(tài)的分類(lèi)器的輸出結(jié)果確定人體姿態(tài)種類(lèi)。
另一方面,本發(fā)明還提供一種人體姿態(tài)的分類(lèi)裝置,包括 人體區(qū)域確定模塊,用于確定當(dāng)前幀圖像中的人體區(qū)域; 輪廓提取模塊,與所述人體區(qū)域確定模塊連接,用于在所述人體區(qū)域確定模塊確定的人體區(qū)域中,進(jìn)行人體形狀的提取,獲得人體的外輪廓; 人頭位置獲得模塊,用于通過(guò)人頭檢測(cè),獲得人頭的位置信息; 人體姿態(tài)確定模塊,與所述輪廓提取模塊和所述人頭位置獲得模塊連接,當(dāng)頭部位于人體的外輪廓正中間,此時(shí)所述人體姿態(tài)確定模塊確定所述人體姿態(tài)為垂直站立;當(dāng)頭部位于人體的外輪廓的一側(cè)時(shí),進(jìn)而計(jì)算人體外輪廓的長(zhǎng)寬比,根據(jù)所述人體外輪廓的長(zhǎng)寬比確定人體姿態(tài)種類(lèi)。
優(yōu)選地,所述人體姿態(tài)確定模塊包括 計(jì)算子模塊,用于計(jì)算當(dāng)前幀圖像中頭部到腳的距離和所述當(dāng)前幀圖像中人體外輪廓的平均寬度; 長(zhǎng)寬比獲得子模塊,與所述計(jì)算子模塊連接,用于根據(jù)所述計(jì)算子模塊計(jì)算的當(dāng)前幀圖像中頭部到腳的距離和人體外輪廓的平均寬度,獲得人體外輪廓的長(zhǎng)寬比。
優(yōu)選地,所述計(jì)算子模塊具體用于計(jì)算所述當(dāng)前幀圖像中人頭到腳的連線與攝像頭的水平線之間的夾角,并計(jì)算人體水平方向的平均像素個(gè)數(shù),根據(jù)所述夾角和所述人體水平方向的平均像素個(gè)數(shù)計(jì)算人體外輪廓的平均寬度。
優(yōu)選地,所述輪廓提取模塊具體用于采用Snake的方法確定人體的外輪廓的能量函數(shù),通過(guò)循環(huán)迭代使所述能量函數(shù)達(dá)到最小值,獲得人體的外輪廓; 其中,所述輪廓提取模塊確定人體的外輪廓的能量函數(shù)為 其中,α、β、γ分別為Ec(i)、Es(i)和Ei(i)的權(quán)重,α、β、γ是正數(shù),α+β+γ=1; dmean為人體的外輪廓上相鄰兩個(gè)點(diǎn)之間的平均距離,Ecmax是Ec(i)的最大值; Esmax是Es(i)的最大值; g″(i)是人體的外輪廓上第i個(gè)點(diǎn)的二階差分, I(x(i),y(i))表示坐標(biāo)為(x(i),y(i))的像素點(diǎn)的灰度或者亮度值,l是平滑寬度,l=1或其他正整數(shù)。
優(yōu)選地,所述輪廓提取模塊具體用于設(shè)置Snake的初值,計(jì)算Ecmax,Esmax和dmean;按照收斂方向,確定當(dāng)前輪廓點(diǎn)的候選點(diǎn),按照能量最小的原則在所述候選點(diǎn)中選擇使

最小的點(diǎn)作為下次迭代的初值;對(duì)每個(gè)輪廓點(diǎn)都計(jì)算一遍后重新計(jì)算Ecmax,Esmax和dmean,繼續(xù)進(jìn)行迭代;直到某次迭代中所有輪廓點(diǎn)的位置均未發(fā)生變化,停止迭代。
優(yōu)選地,所述的裝置還包括 選擇模塊,用于選擇多幅不同姿態(tài)的人體圖像或人體的外輪廓; 分組模塊,與所述選擇模塊連接,用于根據(jù)人體姿態(tài)對(duì)所述人體圖像或人體的外輪廓進(jìn)行分組; 提取模塊,與所述分組模塊連接,用于提取每組人體外輪廓的特征向量作為訓(xùn)練樣本輸入到分類(lèi)器的訓(xùn)練模塊; 訓(xùn)練模塊,與所述提取模塊連接,用于通過(guò)訓(xùn)練建立人體姿態(tài)的分類(lèi)器; 確定模塊,與所述訓(xùn)練模塊連接,接收待確定人體圖像或人體的外輪廓的特征向量,根據(jù)所述人體姿態(tài)的分類(lèi)器的輸出結(jié)果確定人體姿態(tài)種類(lèi)。
與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn)本發(fā)明通過(guò)人體檢測(cè)和人體跟蹤確定當(dāng)前幀圖像中的人體區(qū)域,在該人體區(qū)域中,進(jìn)行人體形狀的提取,獲得人體的外輪廓,并通過(guò)人頭檢測(cè),獲得人頭的位置信息,根據(jù)人體的外輪廓和人頭的位置信息,確定人體姿態(tài)種類(lèi)。當(dāng)頭部位于人體的外輪廓中間,并且頭部的兩側(cè)為肩部時(shí),確定人體姿態(tài)為垂直站立;當(dāng)頭部位于人體的外輪廓的一側(cè)時(shí),計(jì)算人體外輪廓的長(zhǎng)寬比,根據(jù)人體外輪廓的長(zhǎng)寬比確定人體姿態(tài)種類(lèi),從而實(shí)現(xiàn)了對(duì)人體姿態(tài)進(jìn)行自動(dòng)識(shí)別和分類(lèi),不需人工介入,彌補(bǔ)了現(xiàn)有技術(shù)沒(méi)有提供對(duì)人體姿態(tài)進(jìn)行分類(lèi)的方法的缺陷。



為了更清楚地說(shuō)明本發(fā)明的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明提供的一種人體姿態(tài)的分類(lèi)方法的流程圖; 圖2為本發(fā)明中Snake的初值設(shè)置示意圖; 圖3為本發(fā)明人體外輪廓的長(zhǎng)寬比的具體計(jì)算方法的流程圖; 圖4為本發(fā)明人頭到腳的連線與水平線之間的夾角a示意圖; 圖5為本發(fā)明提供的一種人體姿態(tài)的分類(lèi)裝置的結(jié)構(gòu)圖; 圖6為本發(fā)明提供的另一種人體姿態(tài)的分類(lèi)裝置的結(jié)構(gòu)圖。

具體實(shí)施例方式 下面將結(jié)合本發(fā)明中的附圖,對(duì)本發(fā)明中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明提供一種人體姿態(tài)的分類(lèi)方法,通過(guò)人體檢測(cè)確定圖像中的人體區(qū)域,進(jìn)而從人體區(qū)域中提取人體的外輪廓,同時(shí)通過(guò)人頭檢測(cè)和跟蹤確定頭部的位置,然后根據(jù)頭部位置、人體形狀等信息對(duì)人體的姿態(tài)進(jìn)行分類(lèi)。
如圖1所示,為本發(fā)明提供的一種人體姿態(tài)的分類(lèi)方法的流程圖,具體包括 步驟101,獲得當(dāng)前幀圖像。
本發(fā)明中,當(dāng)前幀圖像可以由攝像頭拍攝獲得,攝像頭比較常見(jiàn)的拍攝角度是平拍、斜向下拍和頂拍,對(duì)于相同的姿態(tài),當(dāng)攝像頭分別采用上述三種角度進(jìn)行拍攝時(shí),得到的圖像中人體的形狀可能完全不同。因此,進(jìn)行人體姿態(tài)分類(lèi),首先需要確定攝像頭的拍攝角度,在確定了攝像頭的拍攝角度之后,后續(xù)的處理都是一樣的,本發(fā)明以攝像頭的拍攝角度為頂拍為例進(jìn)行說(shuō)明。但本發(fā)明并不僅限于此,如前所述,攝像頭的拍攝角度并不影響本發(fā)明的實(shí)現(xiàn)。實(shí)際應(yīng)用中,可以先對(duì)攝像頭的拍攝角度進(jìn)行設(shè)置或者加入攝像頭拍攝角度的自動(dòng)識(shí)別模塊,對(duì)攝像頭的拍攝角度進(jìn)行自動(dòng)識(shí)別。
本發(fā)明中的當(dāng)前幀圖像可以為單幅圖像,也可以為視頻圖像。
步驟102,確定當(dāng)前幀圖像中的人體區(qū)域。
具體地,對(duì)于給定的單幅圖像,可以通過(guò)人體檢測(cè)確定該單幅圖像中的人體區(qū)域。其中,人體檢測(cè)是指從靜態(tài)或視頻圖像中獲取一定區(qū)域中存在的人體數(shù)目、位置和大小。對(duì)于給定的單幅圖像,可以采用分類(lèi)器訓(xùn)練方法確定單幅圖像中的人體區(qū)域。分類(lèi)器訓(xùn)練方法采集在各種不同的光照條件、背景環(huán)境和各種姿態(tài)條件下的人體樣本,采用模式識(shí)別領(lǐng)域普遍使用的分類(lèi)器訓(xùn)練的方法進(jìn)行訓(xùn)練,得到人體區(qū)域的模型,再利用該模型對(duì)未知的單幅圖像進(jìn)行判定,獲得人體區(qū)域。
對(duì)于視頻圖像,可以先進(jìn)行人體檢測(cè),確定人體的初始位置。在進(jìn)行人體檢測(cè)時(shí),可以使用各種人體檢測(cè)方法來(lái)檢測(cè)人體,例如可以采用分類(lèi)器訓(xùn)練方法得到人體區(qū)域的模型,再利用該模型對(duì)未知的視頻圖像進(jìn)行判定,確定人體的初始位置。然后通過(guò)人體跟蹤確定人體區(qū)域。具體可以為首先,通過(guò)人體檢測(cè)確定當(dāng)前幀圖像中的人體初始位置y0,并根據(jù)人體初始位置y0得到一個(gè)像素點(diǎn)集合,具體地,該像素點(diǎn)集合為該視頻圖像中以y0為中心的一塊預(yù)定區(qū)域(例如一塊以y0為中心,長(zhǎng)為l、寬為w的矩形區(qū)域)內(nèi)的像素點(diǎn)。然后,計(jì)算這個(gè)集合中所有像素點(diǎn)的空間特征和顏色特征,根據(jù)計(jì)算得出的空間特征和顏色特征計(jì)算出當(dāng)前幀中的人體位置y1,具體地,設(shè){xi}i=1,2,...N是中心點(diǎn)y0,長(zhǎng)為h,寬為w的人體模板區(qū)域的像素點(diǎn)集合,定義映射bR2→{1,2,...,B},對(duì)于每個(gè)xi,b(xi)表示該像素點(diǎn)的特征在量化的特征空間中的量化序號(hào)。對(duì)于任意量化之u∈{1,2,...,B},計(jì)算其位置均值vu 其中,
vu表示的是目標(biāo)人體所在區(qū)域內(nèi)所有像素值等于u的像素點(diǎn)的空間位置平均值,反映的是目標(biāo)人體的空間位置信息,即空間特征。
U在人體區(qū)域中出現(xiàn)的概率

可以按如下公式計(jì)算 其中k(·)是Epanechnikov核函數(shù),δ(·)是Kronecker函數(shù),C為歸一化常數(shù),使得

表示的是目標(biāo)人體所在區(qū)域中所有其像素值等于u的像素點(diǎn)的顏色信息,即顏色特征。分別完成上述空間特征和顏色特征的計(jì)算后,即可得到人體的特征。
根據(jù)空間特征和顏色特征獲得相似性度量ρ(y),然后根據(jù)梯度最優(yōu)化方法計(jì)算當(dāng)前幀中的人體位置y1,y1應(yīng)滿(mǎn)足進(jìn)而,對(duì)得出的人體位置y1進(jìn)行檢測(cè),判斷其是否為正確的人體位置,即對(duì)得出的人體位置y1進(jìn)行人體區(qū)域驗(yàn)證,判斷以該位置y1為中心的區(qū)域是否為人體區(qū)域。如果是,則直接將y1作為當(dāng)前幀中正確的人體位置輸出。如果不是,則對(duì)該人體位置進(jìn)行修正,得出正確的人體位置。然后,根據(jù)無(wú)需修正或修正后的正確人體位置計(jì)算其所在的人體區(qū)域的顏色特征和空間特征,將這兩個(gè)特征和正確的人體位置分別作為下一幀的初始人體顏色特征、空間特征和初始人體位置。同時(shí)輸出該正確的人體位置,從而可以確定以該正確的人體位置為中心的區(qū)域?yàn)槿梭w區(qū)域。
步驟103,在上述人體區(qū)域中,進(jìn)行人體形狀的提取,獲得人體的外輪廓。
在得到了人體區(qū)域之后,可以在該人體區(qū)域中進(jìn)行人體形狀的提取,獲得人體的外輪廓。常用的提取人體的外輪廓的方法多是先提取閉合的邊緣,然后對(duì)閉合的邊緣進(jìn)行細(xì)化得到人體的外輪廓信息。本發(fā)明采用Snake的方法進(jìn)行人體形狀的提取,獲得人體的外輪廓。
Snake是在內(nèi)部約束力和外部約束力作用下移動(dòng)的變形輪廓線,通過(guò)能量函數(shù)的最小化,使輪廓線變形最后與人體的外輪廓匹配。
考慮到人體的外輪廓的特殊性,本發(fā)明中,人體的外輪廓的能量函數(shù)為 當(dāng)輪廓線收斂到人體的外輪廓時(shí),式(1)計(jì)算得到的能量函數(shù)最小,因此通過(guò)計(jì)算式(1)的最小值,可提取出人體的外輪廓。
式(1)中,Ec(i)為第i個(gè)點(diǎn)的連續(xù)性項(xiàng)能量, 式(2)中,(x(i),y(i))是人體的外輪廓上第i個(gè)點(diǎn)的坐標(biāo),Ecmax是Ec(i)的最大值。人體的外輪廓可以看作一個(gè)連通域,輪廓點(diǎn)可以認(rèn)為是人體的外輪廓上順序排列的一組點(diǎn),可以對(duì)輪廓點(diǎn)進(jìn)行編號(hào),從而確定相鄰的輪廓點(diǎn)。dmean為人體的外輪廓上相鄰的兩個(gè)輪廓點(diǎn)之間的平均距離,相鄰的兩個(gè)輪廓點(diǎn)之間的間距與dmean越接近,Ec(i)越小。
式(1)中,Es(i)為第i個(gè)點(diǎn)的曲率項(xiàng)能量, 式(3)中,(x(i),y(i))是第i個(gè)點(diǎn)的坐標(biāo),Esmax是Es(i)的最大值。
式(1)中,Ei(i)為第i個(gè)點(diǎn)的圖像能量, 式(4)中,g″(i)是人體的外輪廓上第i個(gè)點(diǎn)的二階差分, 式(5)中,I(x(i),y(i))表示坐標(biāo)為(x(i),y(i))的像素點(diǎn)的灰度或者亮度值,l是平滑寬度,可以取l=1或其他正整數(shù)。
由于人體的外輪廓上的點(diǎn)具有二階差分大的特點(diǎn),因此g″(i)越大,Ei(i)越小。
式(1)中,α、β、γ分別表示Ec(i)、Es(i)和Ei(i)這三部分的權(quán)重,即在E(i)收斂的過(guò)程中Ec(i)、Es(i)和Ei(i)這三部分的貢獻(xiàn)程度。α、β、γ是正數(shù),通常取α+β+γ=1。在實(shí)際應(yīng)用時(shí),α、β和γ的具體取值可以根據(jù)實(shí)際情況進(jìn)行調(diào)整。
具體地,利用Snake的方法提取人體的外輪廓,需要先設(shè)置Snake的初值。由于人體檢測(cè)是將圖像分為規(guī)則的區(qū)域如矩形,如圖2所示,然后檢測(cè)此矩形中是否包含人體,也就是說(shuō)人體檢測(cè)得到的是矩形,該矩形中包含一個(gè)人體,因此可以將此矩形上的點(diǎn)作為Snake的初值,然后可以采用循環(huán)迭代的方法,由外向內(nèi)進(jìn)行迭代,計(jì)算式(1)的最小值,直到Snake收斂到人體的外輪廓上。
Snake的初值是一組點(diǎn)的坐標(biāo)(x(i),y(i)),初值確定后,計(jì)算這組點(diǎn)中相鄰點(diǎn)間距d,并按照式(6)和式(7)計(jì)算每個(gè)初值點(diǎn)對(duì)應(yīng)的Ec和Es,式(6)和式(7)如下所示 將這組點(diǎn)的坐標(biāo)代入式(6)和式(7),可以計(jì)算出這組點(diǎn)的Ec和Es,從中可以找出Ec和Es的最大值即為Ecmax和Esmax,對(duì)所有的相鄰點(diǎn)間距取平均即為dmean。例如假設(shè)Snake的初值是10個(gè)點(diǎn)的坐標(biāo)(x(0),y(0)),(x(1),y(1)),...(x(9),y(9)),將這10個(gè)點(diǎn)的坐標(biāo)代入式(6)和式(7)可以計(jì)算出Ec(0),Ec(1),...Ec(9);以及Es(0),Es(1),...Es(9)。比較Ec(0),Ec(1),...Ec(9)可以獲得Ec的最大值Ecmax,比較Es(0),Es(1),...Es(9)可以獲得Es的最大值Esmax。計(jì)算這10個(gè)點(diǎn)中相鄰點(diǎn)的間距,這10個(gè)點(diǎn)中所有的相鄰點(diǎn)間距的平均值即為dmean。
設(shè)輪廓點(diǎn)總數(shù)為N,每次迭代時(shí),分別處理每個(gè)輪廓點(diǎn),如第i個(gè)輪廓點(diǎn)為A,其坐標(biāo)為(a,b)。按照收斂方向,確定點(diǎn)A的候選點(diǎn),候選點(diǎn)通常是點(diǎn)A的某個(gè)鄰域,然后將給定的初值,以及計(jì)算的Ecmax、Esmax和dmean代入式(1)~式(5)計(jì)算點(diǎn)A的所有候選點(diǎn)對(duì)應(yīng)的能量值

找出使其最小的點(diǎn),作為下一次迭代時(shí)第i個(gè)輪廓點(diǎn)的初值。
對(duì)N個(gè)輪廓點(diǎn)均按照上述過(guò)程計(jì)算一遍之后,稱(chēng)為一次迭代。在進(jìn)行下一次迭代時(shí),將上一次迭代計(jì)算獲得的N個(gè)輪廓點(diǎn)在下一次迭代時(shí)的初值,代入式(6)和式(7),采用與上一次迭代相同的方法重新計(jì)算Ecmax,Esmax,dmean,然后繼續(xù)進(jìn)行迭代,比較每次迭代前后輪廓點(diǎn)的位置,如果某次迭代時(shí)所有輪廓點(diǎn)的位置都沒(méi)有發(fā)生變化,迭代結(jié)束。
步驟104,通過(guò)人頭檢測(cè),獲得人頭的位置信息。
具體地,人頭檢測(cè)可以采用各種人頭檢測(cè)方法,例如可以通過(guò)訓(xùn)練層次型Adaboost和基于邊緣方向直方圖特征進(jìn)行人頭檢測(cè)。具體地,首先計(jì)算檢測(cè)圖像的邊緣強(qiáng)度和離散化邊緣方向;然后,根據(jù)邊緣強(qiáng)度和離散化邊緣方向,計(jì)算預(yù)設(shè)的檢測(cè)框內(nèi)圖像的邊緣方向直方圖;最后,利用層次型自適應(yīng)增強(qiáng)算法Adaboost分類(lèi)器對(duì)邊緣方向直方圖進(jìn)行驗(yàn)證,得到預(yù)設(shè)的檢測(cè)框內(nèi)的人頭的位置信息。
步驟105,根據(jù)人體的外輪廓和人頭的位置信息,確定人體姿態(tài)。
具體地,在獲得人體的外輪廓和人頭的位置信息之后,可以在人體的外輪廓上標(biāo)出頭部的位置,通常這時(shí)已經(jīng)可以判斷出人體姿態(tài)。
由于頭部的位置和人體姿態(tài)存在一定的對(duì)應(yīng)關(guān)系,因此還可以進(jìn)行實(shí)驗(yàn)統(tǒng)計(jì),根據(jù)統(tǒng)計(jì)結(jié)果設(shè)定判斷規(guī)則來(lái)實(shí)現(xiàn)自動(dòng)判斷人體姿態(tài)。具體可以為 如果頭部位于人體的外輪廓正中間,此時(shí)可以確定人體姿態(tài)為垂直站立;如果頭部位于人體的外輪廓的一側(cè),進(jìn)而計(jì)算人體外輪廓的長(zhǎng)寬比,且人體外輪廓的長(zhǎng)寬比滿(mǎn)足一定要求,則可以確定人體為座、半躺、躺等姿態(tài)。
下面詳細(xì)說(shuō)明人體外輪廓的長(zhǎng)寬比的具體計(jì)算方法,如圖3所示,具體包括 步驟301,計(jì)算當(dāng)前幀圖像中頭部到腳的距離l。
當(dāng)前幀圖像中頭部到腳的距離即為人體圖像的長(zhǎng)度。在獲得人體的外輪廓和人頭的位置信息之后,可以計(jì)算出當(dāng)前幀圖像中頭部到腳的距離l。具體地,首先需要確定頭部和腳的位置,然后找出頭頂中心和腳的外邊緣中點(diǎn),頭頂中心和腳的外邊緣中點(diǎn)之間的距離即為l。如圖4所示,頭頂中心為C,腳的外邊緣中點(diǎn)為B,點(diǎn)C和點(diǎn)B之間的距離即為頭部到腳的距離l。
步驟302,計(jì)算當(dāng)前幀圖像中人體外輪廓的平均寬度w。
具體地,首先計(jì)算人體外輪廓的角度,即人頭到腳的連線與水平線之間的夾角a,如圖4所示,這里所說(shuō)的水平線指攝像頭的水平線。
然后計(jì)算人體水平方向的平均像素個(gè)數(shù)w′, 式(8)中,N為頭部到腳共占用的像素個(gè)數(shù),ni為第i行對(duì)應(yīng)的像素個(gè)數(shù)。像素是組成圖像的最基本單元,是一個(gè)小的方形的顏色塊。一幅圖像通常由許多像素組成,這些像素被排成橫行或縱列,每個(gè)像素都是方形的,圖像的分辨率越高,單位面積內(nèi)的像素越多。因此根據(jù)當(dāng)前幀圖像的分辨率和當(dāng)前幀圖像中頭部到腳的距離l,可以得出頭部到腳共占用的像素個(gè)數(shù)N,這相當(dāng)于將當(dāng)前幀圖像分為N行。在獲得人體的外輪廓之后,可以確定人體的外輪廓上每一行的寬度,根據(jù)當(dāng)前幀圖像的分辨率和第i行的寬度,可以確定第i行對(duì)應(yīng)的像素個(gè)數(shù)ni。
然后,根據(jù)w′和夾角a計(jì)算人體外輪廓的平均寬度w, w=w′×cosa(9) 當(dāng)人體外輪廓的方向接近水平時(shí),還可以利用人體豎直方向的平均像素個(gè)數(shù)計(jì)算人體外輪廓的平均寬度w。
步驟303,根據(jù)當(dāng)前幀圖像中頭部到腳的距離l和人體外輪廓的平均寬度w,獲得人體外輪廓的長(zhǎng)寬比。
在獲得人體外輪廓的長(zhǎng)寬比之后,根據(jù)人體外輪廓的長(zhǎng)寬比可以確定人體姿態(tài)。具體地,當(dāng)時(shí),確定人體姿態(tài)為平躺; 當(dāng)時(shí),確定人體姿態(tài)為半躺; 當(dāng)時(shí),確定人體姿態(tài)為坐; 當(dāng)時(shí),確定人體姿態(tài)為傾斜站立,該站立姿態(tài)與前述頭部位于人體的外輪廓正中間時(shí)的垂直站立姿態(tài)不同,該站立姿態(tài)為傾斜站立。
其中,閾值th1、th2和th3可以通過(guò)統(tǒng)計(jì)或者實(shí)驗(yàn)獲得,例如可以取th1=0.25,th2=0.7,th3=1.2。
另外,本發(fā)明還可以選擇多幅不同姿態(tài)的人體圖像或人體的外輪廓,根據(jù)人體姿態(tài)對(duì)選擇的人體圖像或人體的外輪廓進(jìn)行分組,提取每組人體外輪廓的特征向量作為訓(xùn)練樣本輸入到分類(lèi)器的訓(xùn)練模塊,通過(guò)訓(xùn)練建立人體姿態(tài)的分類(lèi)器。該人體姿態(tài)的分類(lèi)器可以是Adaboost(自適應(yīng)增強(qiáng)算法)分類(lèi)器、SVM(Support Vector Machine,支持向量機(jī))分類(lèi)器或神經(jīng)網(wǎng)絡(luò)等。然后,可以提取待確定人體圖像或人體的外輪廓的特征向量輸入到人體姿態(tài)的分類(lèi)器中,根據(jù)人體姿態(tài)的分類(lèi)器的輸出結(jié)果確定人體姿態(tài)。具體地,在根據(jù)人體姿態(tài)對(duì)選擇的人體圖像或人體的外輪廓進(jìn)行分組之后,首先人工標(biāo)定一組人體姿態(tài),通過(guò)特征提取獲得這組人體的特征向量。常用的特征有幾何特征、Gabor特征、小波特征和矩特征等,在進(jìn)行特征提取時(shí)可采用現(xiàn)有的任意一種特征提取方法。因此,這組人體的特征向量和人體姿態(tài)的對(duì)應(yīng)關(guān)系相當(dāng)于已經(jīng)人工確定,然后將這組人體的特征向量作為訓(xùn)練樣本輸入到分類(lèi)器的訓(xùn)練模塊,以此類(lèi)推,還可以將其他組的人體的特征向量作為訓(xùn)練樣本輸入到分類(lèi)器的訓(xùn)練模塊,通過(guò)訓(xùn)練建立人體姿態(tài)的分類(lèi)器。從而可以將未知姿態(tài)的人體特征向量輸入該人體姿態(tài)的分類(lèi)器,利用該人體姿態(tài)的分類(lèi)器確定未知姿態(tài)的人體特征向量對(duì)應(yīng)的人體姿態(tài)。
本發(fā)明提供一種基于人體檢測(cè)跟蹤、人體姿態(tài)分析的人體姿態(tài)分類(lèi)方法,通過(guò)人體檢測(cè)和跟蹤確定圖像中的人體位置和動(dòng)作變化趨勢(shì),同時(shí)分析頭部的位置,然后根據(jù)頭部位置、人體形狀等信息識(shí)別人體姿態(tài),將人體的姿態(tài)分為坐、站、躺三類(lèi)。
如圖5所示,為本發(fā)明提供的一種人體姿態(tài)的分類(lèi)裝置的結(jié)構(gòu)圖,該人體姿態(tài)的分類(lèi)裝置包括人體區(qū)域確定模塊51、輪廓提取模塊52、人頭位置獲得模塊53和人體姿態(tài)確定模塊54。
其中,人體區(qū)域確定模塊51,用于確定當(dāng)前幀圖像中的人體區(qū)域。具體地,對(duì)于給定的單幅圖像,人體區(qū)域確定模塊51可以通過(guò)人體檢測(cè)確定該單幅圖像中的人體區(qū)域。其中,人體檢測(cè)是指從靜態(tài)或視頻圖像中獲取一定區(qū)域中存在的人體數(shù)目、位置和大小。對(duì)于給定的單幅圖像,人體區(qū)域確定模塊51可以采用分類(lèi)器訓(xùn)練方法確定單幅圖像中的人體區(qū)域。分類(lèi)器訓(xùn)練方法采集在各種不同的光照條件、背景環(huán)境和各種姿態(tài)條件下的人體樣本,采用模式識(shí)別領(lǐng)域普遍使用的分類(lèi)器訓(xùn)練的方法進(jìn)行訓(xùn)練,得到人體區(qū)域的模型,再利用該模型對(duì)未知的單幅圖像進(jìn)行判定,獲得人體區(qū)域。
對(duì)于視頻圖像,人體區(qū)域確定模塊51可以先進(jìn)行人體檢測(cè),確定人體的初始位置。在進(jìn)行人體檢測(cè)時(shí),可以使用各種人體檢測(cè)方法來(lái)檢測(cè)人體,例如可以采用分類(lèi)器訓(xùn)練方法得到人體區(qū)域的模型,再利用該模型對(duì)未知的視頻圖像進(jìn)行判定,確定人體的初始位置。然后通過(guò)人體跟蹤確定人體區(qū)域。具體可以為首先,人體區(qū)域確定模塊51通過(guò)人體檢測(cè)或采用手工標(biāo)定的方法確定當(dāng)前幀圖像中的人體初始位置y0,并根據(jù)人體初始位置y0得到一個(gè)像素點(diǎn)集合,具體地,該像素點(diǎn)集合為該視頻圖像中以y0為中心的一塊預(yù)定區(qū)域(例如一塊以y0為中心,長(zhǎng)為l、寬為w的矩形區(qū)域)內(nèi)的像素點(diǎn)。然后,人體區(qū)域確定模塊51計(jì)算這個(gè)集合中所有像素點(diǎn)的空間特征和顏色特征,根據(jù)計(jì)算得出的空間特征和顏色特征計(jì)算出當(dāng)前幀中的人體位置y1,具體地,設(shè){xi}i=1,2,...N是中心點(diǎn)y0,長(zhǎng)為h,寬為w的人體模板區(qū)域的像素點(diǎn)集合,定義映射bR2→{1,2,...,B},對(duì)于每個(gè)xi,b(xi)表示該像素點(diǎn)的特征在量化的特征空間中的量化序號(hào)。對(duì)于任意量化之u∈{1,2,...,B},計(jì)算其位置均值vu 其中,
vu表示的是目標(biāo)人體所在區(qū)域內(nèi)所有像素值等于u的像素點(diǎn)的空間位置平均值,反映的是目標(biāo)人體的空間位置信息,即空間特征。
U在人體區(qū)域中出現(xiàn)的概率

可以按如下公式計(jì)算 其中k(·)是Epanechnikov核函數(shù),δ(·)是Kronecker函數(shù),C為歸一化常數(shù),使得

表示的是目標(biāo)人體所在區(qū)域中所有其像素值等于u的像素點(diǎn)的顏色信息,即顏色特征。分別完成上述空間特征和顏色特征的計(jì)算后,即可得到人體的特征。
人體區(qū)域確定模塊51根據(jù)空間特征和顏色特征獲得相似性度量ρ(y),然后根據(jù)梯度最優(yōu)化方法計(jì)算當(dāng)前幀中的人體位置y1,y1應(yīng)滿(mǎn)足進(jìn)而,人體區(qū)域確定模塊51對(duì)得出的人體位置y1進(jìn)行檢測(cè),判斷其是否為正確的人體位置,即對(duì)得出的人體位置y1進(jìn)行人體區(qū)域驗(yàn)證,判斷以該位置y1為中心的區(qū)域是否為人體區(qū)域。如果是,則人體區(qū)域確定模塊51直接將y1作為當(dāng)前幀中正確的人體位置輸出。如果不是,則人體區(qū)域確定模塊51對(duì)該人體位置進(jìn)行修正,得出正確的人體位置。然后,根據(jù)無(wú)需修正或修正后的正確人體位置計(jì)算其所在的人體區(qū)域的顏色特征和空間特征,將這兩個(gè)特征和正確的人體位置分別作為下一幀的初始人體顏色特征、空間特征和初始人體位置。同時(shí)輸出該正確的人體位置,從而可以確定以該正確的人體位置為中心的區(qū)域?yàn)槿梭w區(qū)域。
輪廓提取模塊52,與人體區(qū)域確定模塊51連接,用于在人體區(qū)域確定模塊51確定的人體區(qū)域中,進(jìn)行人體形狀的提取獲得人體的外輪廓。輪廓提取模塊52具體用于采用Snake的方法進(jìn)行人體形狀的提取,獲得人體的外輪廓。具體地,輪廓提取模塊52確定人體的外輪廓的能量函數(shù),通過(guò)循環(huán)迭代使該能量函數(shù)達(dá)到最小值,獲得人體的外輪廓。
當(dāng)人體的外輪廓上第i個(gè)點(diǎn)的坐標(biāo)為(x(i),y(i)),第i個(gè)點(diǎn)的連續(xù)性項(xiàng)能量為Ec(i),第i個(gè)點(diǎn)的曲率項(xiàng)能量為Es(i),第i個(gè)點(diǎn)的圖像能量為Ei(i),第i個(gè)點(diǎn)的能量為E(i)時(shí),本發(fā)明中,輪廓提取模塊52確定的人體的外輪廓的能量函數(shù)為 其中,dmean為人體的外輪廓上相鄰兩個(gè)點(diǎn)之間的平均距離,相鄰兩個(gè)點(diǎn)之間的間距與dmean越接近,Ec(i)越??; g″(i)是人體的外輪廓上第i個(gè)點(diǎn)的二階差分, I(x(i),y(i))表示坐標(biāo)為(x(i),y(i))的像素點(diǎn)的灰度或者亮度值,l是平滑寬度,可以取l=1或其他正整數(shù)。由于人體的外輪廓上的點(diǎn)具有二階差分大的特點(diǎn),因此g″(i)越大,Ei(i)越小。
具體地,輪廓提取模塊52利用Snake的方法提取人體的外輪廓,需要先設(shè)置Snake的初值。由于人體檢測(cè)是將圖像分為規(guī)則的區(qū)域如矩形,如圖2所示,然后檢測(cè)此矩形中是否包含人體,也就是說(shuō)人體檢測(cè)得到的是矩形,該矩形中包含一個(gè)人體,因此輪廓提取模塊52可以將此矩形上的點(diǎn)作為Snake的初值,然后可以采用循環(huán)迭代的方法,由外向內(nèi)進(jìn)行迭代,計(jì)算式(1)的最小值,直到Snake收斂到人體的外輪廓上。
Snake的初值是一組點(diǎn)的坐標(biāo)(x(i),y(i)),初值確定后,計(jì)算這組點(diǎn)中相鄰點(diǎn)間距d,并按照式(6)和式(7)計(jì)算每個(gè)初值點(diǎn)對(duì)應(yīng)的Ec和Es,然后,找出Ec和Es的最大值即為Ecmax和Esmax,對(duì)所有的相鄰點(diǎn)間距取平均即為dmean。設(shè)輪廓點(diǎn)總數(shù)為N,每次迭代時(shí),分別處理每個(gè)輪廓點(diǎn),如第i個(gè)輪廓點(diǎn)為A,其坐標(biāo)為(a,b)。按照收斂方向,確定點(diǎn)A的候選點(diǎn),候選點(diǎn)通常是點(diǎn)A的某個(gè)鄰域,然后將給定的初值,以及計(jì)算的Ecmax、Esmax和dmean代入式(1)~式(5)計(jì)算點(diǎn)A的所有候選點(diǎn)對(duì)應(yīng)的能量值

找出使其最小的點(diǎn),作為下一次迭代時(shí)第i個(gè)輪廓點(diǎn)的初值。
對(duì)N個(gè)輪廓點(diǎn)均按照上述過(guò)程計(jì)算一遍之后,稱(chēng)為一次迭代。在進(jìn)行下一次迭代時(shí),將上一次迭代計(jì)算獲得的下一次迭代時(shí)N個(gè)輪廓點(diǎn)的初值,代入式(6)和式(7),采用與上一次迭代相同的方法重新計(jì)算Ecmax,Esmax,dmean,然后繼續(xù)進(jìn)行迭代,比較每次迭代前后輪廓點(diǎn)的位置。如果某次迭代時(shí)所有輪廓點(diǎn)的位置都沒(méi)有發(fā)生變化,迭代結(jié)束。
人頭位置獲得模塊53,用于通過(guò)人頭檢測(cè),獲得人頭的位置信息。具體地,人頭檢測(cè)可以采用各種人頭檢測(cè)方法,例如可以通過(guò)訓(xùn)練層次型Adaboost和基于邊緣方向直方圖特征進(jìn)行人頭檢測(cè)。具體地,人頭位置獲得模塊53首先計(jì)算檢測(cè)圖像的邊緣強(qiáng)度和離散化邊緣方向;然后,根據(jù)邊緣強(qiáng)度和離散化邊緣方向,計(jì)算預(yù)設(shè)的檢測(cè)框內(nèi)圖像的邊緣方向直方圖;最后,利用層次型自適應(yīng)增強(qiáng)算法Adaboost分類(lèi)器對(duì)邊緣方向直方圖進(jìn)行驗(yàn)證,得到預(yù)設(shè)的檢測(cè)框內(nèi)的人頭的位置信息。
人體姿態(tài)確定模塊54,與輪廓提取模塊52和人頭位置獲得模塊53連接,用于根據(jù)輪廓提取模塊52提取的人體的外輪廓和人頭位置獲得模塊53獲得的人頭的位置信息,確定人體姿態(tài)種類(lèi)。
人體姿態(tài)確定模塊54具體用于當(dāng)頭部位于人體的外輪廓正中間,此時(shí)確定人體姿態(tài)為垂直站立;當(dāng)頭部位于人體的外輪廓的一側(cè)時(shí),進(jìn)而計(jì)算人體外輪廓的長(zhǎng)寬比,根據(jù)所述人體外輪廓的長(zhǎng)寬比確定人體姿態(tài)。具體地,當(dāng)人體外輪廓的長(zhǎng)度為l,人體外輪廓的平均寬度為w,所述人體外輪廓的長(zhǎng)寬比為

時(shí), 如果人體姿態(tài)確定模塊54確定人體姿態(tài)為平躺; 如果人體姿態(tài)確定模塊54確定人體姿態(tài)為半躺; 如果人體姿態(tài)確定模塊54確定人體姿態(tài)為坐; 如果人體姿態(tài)確定模塊54確定人體姿態(tài)為傾斜站立。
其中,閾值th1、th2和th3可以通過(guò)統(tǒng)計(jì)或者經(jīng)驗(yàn)獲得,例如可以取th1=0.25,th2=0.7,th3=1.2。
其中,如圖6所示,人體姿態(tài)確定模塊54包括 計(jì)算子模塊541,用于計(jì)算當(dāng)前幀圖像中頭部到腳的距離和當(dāng)前幀圖像中人體外輪廓的平均寬度; 長(zhǎng)寬比獲得子模塊542,與計(jì)算子模塊541連接,用于根據(jù)計(jì)算子模塊541計(jì)算的當(dāng)前幀圖像中頭部到腳的距離和人體外輪廓的平均寬度,獲得人體外輪廓的長(zhǎng)寬比。
優(yōu)選地,計(jì)算子模塊541具體用于計(jì)算當(dāng)前幀圖像中人頭到腳的連線與攝像頭的水平線之間的夾角,并計(jì)算人體水平方向的平均像素個(gè)數(shù),根據(jù)上述夾角和人體水平方向的平均像素個(gè)數(shù)計(jì)算人體外輪廓的平均寬度。
具體地,計(jì)算子模塊541先計(jì)算當(dāng)前幀圖像中頭部到腳的距離,然后計(jì)算當(dāng)前幀圖像中人體外輪廓的平均寬度,再由長(zhǎng)寬比獲得子模塊542根據(jù)計(jì)算子模塊541計(jì)算的當(dāng)前幀圖像中頭部到腳的距離和人體外輪廓的平均寬度,獲得人體外輪廓的長(zhǎng)寬比。優(yōu)選地,在計(jì)算當(dāng)前幀圖像中人體外輪廓的平均寬度時(shí),計(jì)算子模塊541先計(jì)算當(dāng)前幀圖像中人頭到腳的連線與攝像頭的水平線之間的夾角,然后計(jì)算人體水平方向的平均像素個(gè)數(shù),再根據(jù)人頭到腳的連線與攝像頭的水平線之間的夾角和人體水平方向的平均像素個(gè)數(shù)計(jì)算人體外輪廓的平均寬度。
當(dāng)人頭到腳的連線與攝像頭的水平線之間的夾角為a,人體水平方向的平均像素個(gè)數(shù)為w′,人體外輪廓的平均寬度為w時(shí),計(jì)算子模塊541計(jì)算的人體外輪廓的平均寬度具體為 w=w′×cosa, 其中,N為當(dāng)前幀圖像中人頭到腳共占用的像素個(gè)數(shù),ni為第i行對(duì)應(yīng)的像素個(gè)數(shù),像素是組成圖像的最基本單元,是一個(gè)小的方形的顏色塊。一幅圖像通常由許多像素組成,這些像素被排成橫行或縱列,每個(gè)像素都是方形的,圖像的分辨率越高,單位面積內(nèi)的像素越多。因此根據(jù)當(dāng)前幀圖像的分辨率和當(dāng)前幀圖像中頭部到腳的距離l,可以得出頭部到腳共占用的像素個(gè)數(shù)N,這相當(dāng)于將當(dāng)前幀圖像分為N行。在獲得人體的外輪廓之后,可以確定人體的外輪廓上每一行的寬度,根據(jù)當(dāng)前幀圖像的分辨率和第i行的寬度,可以確定第i行對(duì)應(yīng)的像素個(gè)數(shù)。
優(yōu)選地,所述的裝置還包括選擇模塊,用于選擇多幅不同姿態(tài)的人體圖像或人體的外輪廓;分組模塊,與所述選擇模塊連接,用于根據(jù)人體姿態(tài)對(duì)所述人體圖像或人體的外輪廓進(jìn)行分組;提取模塊,與所述分組模塊連接,用于提取每組人體的特征向量作為訓(xùn)練樣本輸入到分類(lèi)器的訓(xùn)練模塊;訓(xùn)練模塊,與所述提取模塊連接,用于通過(guò)訓(xùn)練建立人體姿態(tài)的分類(lèi)器;確定模塊,與所述訓(xùn)練模塊連接,接收待確定人體圖像或人體的外輪廓的特征向量,根據(jù)所述人體姿態(tài)的分類(lèi)器的輸出結(jié)果確定人體姿態(tài)種類(lèi)。
上述模塊可以分布于一個(gè)裝置,也可以分布于多個(gè)裝置。上述模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。
通過(guò)以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可以通過(guò)硬件實(shí)現(xiàn),也可以借助軟件加必要的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn)。基于這樣的理解,本發(fā)明的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該軟件產(chǎn)品可以存儲(chǔ)在一個(gè)非易失性存儲(chǔ)介質(zhì)(可以是CD-ROM,U盤(pán),移動(dòng)硬盤(pán)等)中,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。
本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施例的示意圖,附圖中的模塊或流程并不一定是實(shí)施本發(fā)明所必須的。
本領(lǐng)域技術(shù)人員可以理解實(shí)施例中的裝置中的模塊可以按照實(shí)施例描述進(jìn)行分布于實(shí)施例的裝置中,也可以進(jìn)行相應(yīng)變化位于不同于本實(shí)施例的一個(gè)或多個(gè)裝置中。上述實(shí)施例的模塊可以合并為一個(gè)模塊,也可以進(jìn)一步拆分成多個(gè)子模塊。
上述本發(fā)明實(shí)施例序號(hào)僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
以上公開(kāi)的僅為本發(fā)明的幾個(gè)具體實(shí)施例,但是,本發(fā)明并非局限于此,任何本領(lǐng)域的技術(shù)人員能思之的變化都應(yīng)落入本發(fā)明的保護(hù)范圍。
權(quán)利要求
1、一種人體姿態(tài)的分類(lèi)方法,其特征在于,包括
確定當(dāng)前幀圖像中的人體區(qū)域;
在所述人體區(qū)域中,進(jìn)行人體形狀的提取,獲得人體的外輪廓,并通過(guò)人頭檢測(cè),獲得人頭的位置信息;
當(dāng)頭部位于人體的外輪廓正中間,此時(shí)確定所述人體姿態(tài)為垂直站立;當(dāng)頭部位于人體的外輪廓的一側(cè)時(shí),進(jìn)而計(jì)算人體外輪廓的長(zhǎng)寬比,根據(jù)所述人體外輪廓的長(zhǎng)寬比確定人體姿態(tài)種類(lèi)。
2、如權(quán)利要求1所述的方法,其特征在于,所述計(jì)算人體外輪廓的長(zhǎng)寬比具體包括
計(jì)算當(dāng)前幀圖像中頭部到腳的距離;
計(jì)算所述當(dāng)前幀圖像中人體外輪廓的平均寬度;
根據(jù)所述當(dāng)前幀圖像中頭部到腳的距離和人體外輪廓的平均寬度,獲得人體外輪廓的長(zhǎng)寬比。
3、如權(quán)利要求2所述的方法,其特征在于,所述計(jì)算所述當(dāng)前幀圖像中人體外輪廓的平均寬度具體包括
計(jì)算所述當(dāng)前幀圖像中人頭到腳的連線與攝像頭的水平線之間的夾角;
計(jì)算人體水平方向的平均像素個(gè)數(shù);
根據(jù)所述夾角和所述人體水平方向的平均像素個(gè)數(shù)計(jì)算人體外輪廓的平均寬度。
4、如權(quán)利要求3所述的方法,其特征在于,當(dāng)所述夾角為a,所述人體水平方向的平均像素個(gè)數(shù)為w′,人體外輪廓的平均寬度為w時(shí),所述根據(jù)所述夾角和所述人體水平方向的平均像素個(gè)數(shù)計(jì)算人體外輪廓的平均寬度具體為
w=w′×cos a,
其中,N為所述當(dāng)前幀圖像中人頭到腳共占用的像素個(gè)數(shù),ni為第i行對(duì)應(yīng)的像素個(gè)數(shù)。
5、如權(quán)利要求1所述的方法,其特征在于,當(dāng)人體外輪廓的長(zhǎng)度為l,人體外輪廓的平均寬度為w,所述人體外輪廓的長(zhǎng)寬比為
時(shí),所述根據(jù)所述人體外輪廓的長(zhǎng)寬比確定人體姿態(tài)具體包括
當(dāng)時(shí),確定人體姿態(tài)為平躺;
當(dāng)時(shí),確定人體姿態(tài)為半躺;
當(dāng)時(shí),確定人體姿態(tài)為坐;
當(dāng)時(shí),確定人體姿態(tài)為傾斜站立;
其中,th1、th2和th3為預(yù)設(shè)的閾值。
6、如權(quán)利要求1所述的方法,其特征在于,所述在所述人體區(qū)域中,進(jìn)行人體形狀的提取,獲得人體的外輪廓具體包括
采用Snake的方法確定人體的外輪廓的能量函數(shù),通過(guò)循環(huán)迭代使所述能量函數(shù)達(dá)到最小值,獲得人體的外輪廓。
7、如權(quán)利要求6所述的方法,其特征在于,當(dāng)人體的外輪廓上第i個(gè)點(diǎn)的坐標(biāo)為(x(i),y(i)),第i個(gè)點(diǎn)的連續(xù)性項(xiàng)能量為Ec(i),第i個(gè)點(diǎn)的曲率項(xiàng)能量為Es(i),第i個(gè)點(diǎn)的圖像能量為Ei(i),第i個(gè)點(diǎn)的能量函數(shù)為E(i)時(shí),所述確定人體的外輪廓的能量函數(shù)具體為
其中,α、β、γ分別為Ec(i)、Es(i)和Ei(i)的權(quán)重,α、β、γ是正數(shù),α+β+γ=1;
dmean為人體的外輪廓
上相鄰兩個(gè)點(diǎn)之間的平均距離,Ec max是Ec(i)的最大值;
Es max是Es(i)的最大值;
g″(i)是人體的外輪廓上第i個(gè)點(diǎn)的二階差分,
I(x(i),y(i))表示坐標(biāo)為(x(i),y(i))的像素點(diǎn)的灰度或者亮度值,l是平滑寬度,l=1或其他正整數(shù)。
8、如權(quán)利要求7所述的方法,其特征在于,所述通過(guò)循環(huán)迭代使所述能量函數(shù)達(dá)到最小值,獲得人體的外輪廓具體包括
設(shè)置Snake的初值,計(jì)算Ec max,Es max和dmean;
按照收斂方向,確定當(dāng)前輪廓點(diǎn)的候選點(diǎn),按照能量最小的原則在所述候選點(diǎn)中選擇使
最小的點(diǎn)作為下次迭代的初值;
對(duì)每個(gè)輪廓點(diǎn)都計(jì)算一遍后重新計(jì)算Ec max,Es max和dmean,繼續(xù)進(jìn)行迭代,比較每次迭代前后輪廓點(diǎn)的位置,如果某次迭代時(shí)所有輪廓點(diǎn)的位置均未發(fā)生變化,停止迭代。
9、如權(quán)利要求1所述的方法,其特征在于,還包括
選擇多幅不同姿態(tài)的人體圖像或人體的外輪廓;
根據(jù)人體姿態(tài)對(duì)所述人體圖像或人體的外輪廓進(jìn)行分組;
提取每組人體外輪廓的特征向量作為訓(xùn)練樣本輸入到分類(lèi)器的訓(xùn)練模塊,通過(guò)訓(xùn)練建立人體姿態(tài)的分類(lèi)器;
提取待確定人體圖像或人體的外輪廓的特征向量輸入到所述人體姿態(tài)的分類(lèi)器中,根據(jù)所述人體姿態(tài)的分類(lèi)器的輸出結(jié)果確定人體姿態(tài)種類(lèi)。
10、一種人體姿態(tài)的分類(lèi)裝置,其特征在于,包括
人體區(qū)域確定模塊,用于確定當(dāng)前幀圖像中的人體區(qū)域;
輪廓提取模塊,與所述人體區(qū)域確定模塊連接,用于在所述人體區(qū)域確定模塊確定的人體區(qū)域中,進(jìn)行人體形狀的提取獲得人體的外輪廓;
人頭位置獲得模塊,用于通過(guò)人頭檢測(cè),獲得人頭的位置信息;
人體姿態(tài)確定模塊,與所述輪廓提取模塊和所述人頭位置獲得模塊連接,當(dāng)頭部位于人體的外輪廓正中間,此時(shí)所述人體姿態(tài)確定模塊確定所述人體姿態(tài)為垂直站立;當(dāng)頭部位于人體的外輪廓的一側(cè)時(shí),進(jìn)而計(jì)算人體外輪廓的長(zhǎng)寬比,根據(jù)所述人體外輪廓的長(zhǎng)寬比確定人體姿態(tài)種類(lèi)。
11、如權(quán)利要求10所述的裝置,其特征在于,所述人體姿態(tài)確定模塊包括
計(jì)算子模塊,用于計(jì)算當(dāng)前幀圖像中頭部到腳的距離和所述當(dāng)前幀圖像中人體外輪廓的平均寬度;
長(zhǎng)寬比獲得子模塊,與所述計(jì)算子模塊連接,用于根據(jù)所述計(jì)算子模塊計(jì)算的當(dāng)前幀圖像中頭部到腳的距離和人體外輪廓的平均寬度,獲得人體外輪廓的長(zhǎng)寬比。
12、如權(quán)利要求11所述的裝置,其特征在于,所述計(jì)算子模塊具體用于計(jì)算所述當(dāng)前幀圖像中人頭到腳的連線與攝像頭的水平線之間的夾角,并計(jì)算人體水平方向的平均像素個(gè)數(shù),根據(jù)所述夾角和所述人體水平方向的平均像素個(gè)數(shù)計(jì)算人體外輪廓的平均寬度。
13、如權(quán)利要求10所述的裝置,其特征在于,所述輪廓提取模塊具體用于采用Snake的方法確定人體的外輪廓的能量函數(shù),通過(guò)循環(huán)迭代使所述能量函數(shù)達(dá)到最小值,獲得人體的外輪廓;
其中,所述輪廓提取模塊確定人體的外輪廓的能量函數(shù)為
其中,α、β、γ分別為Ec(i)、Es(i)和Ei(i)的權(quán)重,α、β、γ是正數(shù),α+β+γ=1;
dmean為人體的外輪廓
上相鄰兩個(gè)點(diǎn)之間的平均距離,Ec max是Ec(i)的最大值;
Es max是Es(i)的最大值;
g″(i)是人體的外輪廓上第i個(gè)點(diǎn)的二階差分,
I(x(i),y(i))表示坐標(biāo)為(x(i),y(i))的像素點(diǎn)的灰度或者亮度值,l是平滑寬度,l=1或其他正整數(shù)。
14、如權(quán)利要求13所述的裝置,其特征在于,所述輪廓提取模塊具體用于設(shè)置Snake的初值,計(jì)算Ec max,Es max和dmean;按照收斂方向,確定當(dāng)前輪廓點(diǎn)的候選點(diǎn),按照能量最小的原則在所述候選點(diǎn)中選擇使
最小的點(diǎn)作為下次迭代的初值;對(duì)每個(gè)輪廓點(diǎn)都計(jì)算一遍后重新計(jì)算Ec max,Es max和dmean,繼續(xù)進(jìn)行迭代;直到某次迭代中所有輪廓點(diǎn)的位置均未發(fā)生變化,停止迭代。
15、如權(quán)利要求10所述的裝置,其特征在于,還包括
選擇模塊,用于選擇多幅不同姿態(tài)的人體圖像或人體的外輪廓;
分組模塊,與所述選擇模塊連接,用于根據(jù)人體姿態(tài)對(duì)所述人體圖像或人體的外輪廓進(jìn)行分組;
提取模塊,與所述分組模塊連接,用于提取每組人體外輪廓的特征向量作為訓(xùn)練樣本輸入到分類(lèi)器的訓(xùn)練模塊;
訓(xùn)練模塊,與所述提取模塊連接,用于通過(guò)訓(xùn)練建立人體姿態(tài)的分類(lèi)器;
確定模塊,與所述訓(xùn)練模塊連接,接收待確定人體圖像或人體的外輪廓的特征向量,根據(jù)所述人體姿態(tài)的分類(lèi)器的輸出結(jié)果確定人體姿態(tài)種類(lèi)。
全文摘要
本發(fā)明公開(kāi)了一種人體姿態(tài)的分類(lèi)方法和裝置,人體姿態(tài)的分類(lèi)方法包括確定當(dāng)前幀圖像中的人體區(qū)域;在所述人體區(qū)域中,進(jìn)行人體形狀的提取,獲得人體的外輪廓,并通過(guò)人頭檢測(cè),獲得人頭的位置信息;當(dāng)頭部位于人體的外輪廓正中間,此時(shí)確定所述人體姿態(tài)為垂直站立;當(dāng)頭部位于人體的外輪廓的一側(cè)時(shí),進(jìn)而計(jì)算人體外輪廓的長(zhǎng)寬比,根據(jù)所述人體外輪廓的長(zhǎng)寬比確定人體姿態(tài)種類(lèi),從而實(shí)現(xiàn)了對(duì)人體姿態(tài)進(jìn)行自動(dòng)識(shí)別和分類(lèi),不需人工介入,彌補(bǔ)了現(xiàn)有技術(shù)沒(méi)有提供對(duì)人體姿態(tài)進(jìn)行分類(lèi)的方法的缺陷。
文檔編號(hào)G06K9/00GK101576953SQ200910086889
公開(kāi)日2009年11月11日 申請(qǐng)日期2009年6月10日 優(yōu)先權(quán)日2009年6月10日
發(fā)明者王俊艷, 英 黃 申請(qǐng)人:北京中星微電子有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1