本發(fā)明涉及行為識(shí)別技術(shù)領(lǐng)域,具體是一種基于子動(dòng)作感知的行為識(shí)別系統(tǒng)及其工作方法。
背景技術(shù):
行為識(shí)別技術(shù)是指通過數(shù)學(xué)以及模式識(shí)別等算法來識(shí)別人類動(dòng)作的技術(shù)。行為識(shí)別在運(yùn)動(dòng)檢測(cè)、人機(jī)交互、健康生活引導(dǎo)以及老人孩子監(jiān)護(hù)方面有著廣泛的應(yīng)用,而隨著社會(huì)的發(fā)展,人們?cè)诮】捣矫娴男枨蟮囊苍诓粩嘣鲩L(zhǎng),這也使得行為識(shí)別的作用越來越重要。近些年,隨著智能手環(huán)、智能手表的逐漸普及,為行為識(shí)別提供了新的契機(jī);可穿戴終端內(nèi)部基本都集成了各種慣性傳感器,比如加速度、陀螺儀、磁力計(jì)等精密傳感器。穿戴這些智能設(shè)備,在給人們提供舒適與時(shí)尚的同時(shí),也可以為監(jiān)控用戶的行為提供了精確的原始數(shù)據(jù)。
由于用戶的身材有高矮胖瘦,生活習(xí)慣也有所不同,因此不同的用戶在做同樣一個(gè)動(dòng)作時(shí)會(huì)出現(xiàn)明顯的個(gè)體差異性。傳統(tǒng)的行為識(shí)別在識(shí)別一個(gè)新用戶的動(dòng)作時(shí),由于訓(xùn)練集中不包含該用戶的數(shù)據(jù),所以該用戶的個(gè)性化動(dòng)作會(huì)使識(shí)別的準(zhǔn)確率大大降低。為了解決這個(gè)問題,傳統(tǒng)的方法需要盡可能的增加訓(xùn)練集中的數(shù)據(jù)量或者動(dòng)態(tài)增加新用戶的數(shù)據(jù)到訓(xùn)練集中,而這又會(huì)導(dǎo)致訓(xùn)練代價(jià)大,識(shí)別算法復(fù)雜以及用戶體驗(yàn)不友好等問題。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)于上述現(xiàn)有技術(shù)的不足,本發(fā)明的目的在于提供一種基于子動(dòng)作感知的行為識(shí)別系統(tǒng)及其工作方法,本發(fā)明在識(shí)別新用戶的動(dòng)作時(shí)準(zhǔn)確率基本沒有下降,可以很好的解決用戶個(gè)性化動(dòng)作帶來的問題,并且所需訓(xùn)練數(shù)據(jù)少,訓(xùn)練代價(jià)小,識(shí)別速度快,計(jì)算簡(jiǎn)單,且成本低廉。
為達(dá)到上述目的,本發(fā)明的一種基于子動(dòng)作感知的行為識(shí)別系統(tǒng),其包括:
可穿戴終端,用于采集慣性傳感器數(shù)據(jù),若可穿戴終端本地處理能力足夠則在本地識(shí)別用戶的動(dòng)作,若可穿戴終端本地處理能力不夠,則把數(shù)據(jù)轉(zhuǎn)發(fā)到云端處理服務(wù)器進(jìn)行處理;
通信設(shè)備,用于處理可穿戴終端與云端處理服務(wù)器之間的信息傳輸;
云端處理服務(wù)器,獲取可穿戴終端實(shí)時(shí)采集的慣性傳感器數(shù)據(jù),識(shí)別用戶動(dòng)作。
優(yōu)選地,所述的可穿戴終端是指穿戴在人體前臂的設(shè)備,并且在內(nèi)部裝載慣性傳感器。
優(yōu)選地,所述的慣性傳感器包括加速度計(jì)、陀螺儀和磁力計(jì)并且采樣頻率至少大于20赫茲。
優(yōu)選地,所述的用戶動(dòng)作包括用戶日常生活中或者運(yùn)動(dòng)時(shí)所產(chǎn)生的動(dòng)作。
本發(fā)明的一種基于子動(dòng)作感知的行為識(shí)別系統(tǒng)的工作方法,包括步驟如下:
1)用戶左手或者右手穿戴可穿戴終端;
2)在用戶運(yùn)動(dòng)過程中,可穿戴終端實(shí)時(shí)收集加速度、陀螺儀和磁力計(jì)數(shù)據(jù);
3)根據(jù)可穿戴終端處理能力,在本地處理數(shù)據(jù)或者通過通信設(shè)備發(fā)送到云端處理服務(wù)器處理數(shù)據(jù);
4)可穿戴終端或者云端處理服務(wù)器根據(jù)陀螺儀數(shù)據(jù)變化趨勢(shì)切分動(dòng)作,并將時(shí)域上相同的加速度和磁力計(jì)數(shù)據(jù)切分出來;
5)可穿戴終端或者云端處理服務(wù)器將加速度和磁力計(jì)數(shù)據(jù)由傳感器局部坐標(biāo)系轉(zhuǎn)換到地球坐標(biāo)系;
6)可穿戴終端或者云端處理服務(wù)器將加速度和磁力計(jì)數(shù)據(jù)由地球坐標(biāo)系轉(zhuǎn)換到人體局部坐標(biāo)系;
7)可穿戴終端或者云端處理服務(wù)器抽取出人體前臂與人體局部坐標(biāo)系坐標(biāo)軸的夾角信息;
8)可穿戴終端或者云端處理服務(wù)器根據(jù)角度變化識(shí)別出子動(dòng)作序列;
9)可穿戴終端或者云端處理服務(wù)器根據(jù)子動(dòng)作序列,使用最少編輯距離識(shí)別出用戶動(dòng)作。
優(yōu)選地,所述步驟5)中的求出地球坐標(biāo)系的方法為:利用公式(1)算出地球坐標(biāo)系,在公式(1)中,變量g表示重力加速度,由加速度經(jīng)過低通濾波得到,變量m表示磁力,變量xg、yg、zg分別表示地球坐標(biāo)系三個(gè)軸,公式(1)為:
優(yōu)選地,所述步驟6)中的人體局部坐標(biāo)系的三個(gè)軸的方向?yàn)槿梭w正前方、人體正側(cè)方和豎直方向向上,與地球坐標(biāo)系只在水平面上相差一個(gè)偏角,通過四元數(shù)將地球坐標(biāo)系繞重力旋轉(zhuǎn)一個(gè)偏角得到人體局部坐標(biāo)系。
優(yōu)選地,所述步驟7)中的人體前臂與人體局部坐標(biāo)系的夾角計(jì)算方法為:人體前臂與傳感器局部坐標(biāo)系x軸重合,通過計(jì)算x軸與人體局部坐標(biāo)系的夾角獲得人體前臂與之夾角;具體過程為利用公式(2),計(jì)算出角度信息,利用公式(3)、公式(4)、公式(5)將角度信息投影到[0°,360°]范圍;在公式(2)中xb、yb、zb分別為人體局部坐標(biāo)系的三個(gè)軸,
優(yōu)選地,所述步驟8)中的子動(dòng)作的定義為:將[0°,360°]范圍內(nèi)角度按照閾值劃分扇區(qū),每一扇區(qū)有順時(shí)針和逆時(shí)針兩個(gè)子動(dòng)作。
優(yōu)選地,所述步驟8)中子動(dòng)作的識(shí)別方法為:根據(jù)三個(gè)原則將原復(fù)雜動(dòng)作切分為子動(dòng)作序列,并利用動(dòng)態(tài)時(shí)間規(guī)整算法計(jì)算出與模板庫(kù)里子動(dòng)作的相似度,識(shí)別出子動(dòng)作,這三個(gè)原則具體為:
a.角度增減趨勢(shì)發(fā)現(xiàn)變化時(shí),應(yīng)切分子動(dòng)作;
b.角度增減幅度超過子動(dòng)作閾值時(shí),應(yīng)切分子動(dòng)作;
c.子動(dòng)作持續(xù)時(shí)間不應(yīng)超過經(jīng)驗(yàn)閾值。
優(yōu)選地,所述步驟9)子動(dòng)作序列編輯距離的計(jì)算方法為:兩個(gè)子動(dòng)作的距離包括扇區(qū)距離和方向距離,利用公式(6)計(jì)算兩個(gè)子動(dòng)作的距離,利用公式(7)計(jì)算出兩個(gè)子動(dòng)作序列的編輯距離,通過與模板庫(kù)里的子動(dòng)作序列計(jì)算編輯距離,識(shí)別出用戶動(dòng)作,
其中,si與sj分別表示扇區(qū)i與扇區(qū)j,ds(mi,mj)表示兩個(gè)子動(dòng)作的扇區(qū)距離,dr(mi,mj)表示兩個(gè)子動(dòng)作的方向距離,d(mi,mj)表示兩個(gè)子動(dòng)作的距離,la,b(i,j)表示子動(dòng)作序列a位置i與子動(dòng)作序列b位置j的編輯距離,μ是任意兩個(gè)子動(dòng)作的距離的平均值,在這里設(shè)置為經(jīng)驗(yàn)值m/4。
本發(fā)明的有益效果:
本發(fā)明的系統(tǒng)和方法通過穿戴在人體前臂上的可穿戴終端提供加速度、陀螺儀和磁力計(jì)原始數(shù)據(jù),并將一個(gè)較為復(fù)雜的動(dòng)作切分成子動(dòng)作序列,在子動(dòng)作層面進(jìn)行行為識(shí)別,表現(xiàn)為:
用戶獨(dú)立:對(duì)于新用戶,不需要采集新的用戶數(shù)據(jù)來降低個(gè)性化動(dòng)作對(duì)準(zhǔn)確率的影響,從而擁有良好的用戶體驗(yàn);
訓(xùn)練集?。河捎诳梢宰龅接脩舄?dú)立,因此不需要大量的訓(xùn)練集就可以做到較高的識(shí)別準(zhǔn)確率;
準(zhǔn)確度高:由于不同用戶在做同一動(dòng)作時(shí)都由自己的個(gè)性化動(dòng)作,但都可以由相似度較高的子動(dòng)作序列來表示,根據(jù)這個(gè)特性進(jìn)行的模式匹配準(zhǔn)確率高達(dá)92%以上;
交互體驗(yàn)自然:由于交互設(shè)備是一個(gè)可穿戴終端(如智能手表),我們的交互方式與現(xiàn)實(shí)中的動(dòng)作基本一致,無需學(xué)習(xí)過程即可輕易使用;
計(jì)算復(fù)雜度低:把復(fù)雜動(dòng)作拆分成用字符表示的子動(dòng)作序列,最終只需要基于字符串進(jìn)行最精確匹配,計(jì)算復(fù)雜度低,識(shí)別速度快。
附圖說明
圖1為基于子動(dòng)作感知的行為識(shí)別系統(tǒng)的場(chǎng)景結(jié)構(gòu)圖;
圖2為工作方法流程圖;
圖3為可穿戴終端局部坐標(biāo)系與地球坐標(biāo)系示意圖;
圖4為地球坐標(biāo)系與人體局部坐標(biāo)系示意圖;
圖5為角度信息抽取示意圖;
圖6為子動(dòng)作劃分示意圖。
具體實(shí)施方式
為了便于本領(lǐng)域技術(shù)人員的理解,下面結(jié)合實(shí)施例與附圖對(duì)本發(fā)明作進(jìn)一步的說明,實(shí)施方式提及的內(nèi)容并非對(duì)本發(fā)明的限定。
參照?qǐng)D1所示,本發(fā)明的一種基于子動(dòng)作感知的行為識(shí)別系統(tǒng),其包括:可穿戴終端、云端處理服務(wù)器和通信設(shè)備;
可穿戴終端,用于采集慣性傳感器數(shù)據(jù),若可穿戴終端本地處理能力足夠(即可穿戴終端能夠在本地識(shí)別用戶的動(dòng)作)則在本地識(shí)別用戶的動(dòng)作,若可穿戴終端本地處理能力不夠,則把數(shù)據(jù)轉(zhuǎn)發(fā)到云端處理服務(wù)器進(jìn)行處理;
通信設(shè)備,用于處理可穿戴終端與云端處理服務(wù)器之間的信息傳輸;
云端處理服務(wù)器,獲取可穿戴終端實(shí)時(shí)采集的慣性傳感器數(shù)據(jù),識(shí)別用戶動(dòng)作。
其中,所述的可穿戴終端是指穿戴在人體前臂的設(shè)備,并且在內(nèi)部裝載慣性傳感器。
其中,所述的慣性傳感器包括加速度計(jì)、陀螺儀和磁力計(jì)并且采樣頻率至少大于20赫茲。
其中,所述的用戶動(dòng)作包括用戶日常生活中或者運(yùn)動(dòng)時(shí)所產(chǎn)生的動(dòng)作。
參照?qǐng)D2所示,本發(fā)明的一種基于子動(dòng)作感知的行為識(shí)別系統(tǒng)的工作方法,包括步驟如下:
1)用戶左手或者右手穿戴可穿戴終端;
2)在用戶運(yùn)動(dòng)過程中,可穿戴終端實(shí)時(shí)收集加速度、陀螺儀和磁力計(jì)數(shù)據(jù);
3)根據(jù)可穿戴終端處理能力,在本地處理數(shù)據(jù)或者通過通信設(shè)備發(fā)送到云端處理服務(wù)器處理數(shù)據(jù);
4)可穿戴終端或者云端處理服務(wù)器根據(jù)陀螺儀數(shù)據(jù)變化趨勢(shì)切分動(dòng)作,并將時(shí)域上相同的加速度和磁力計(jì)數(shù)據(jù)切分出來;
5)可穿戴終端或者云端處理服務(wù)器將加速度和磁力計(jì)數(shù)據(jù)由傳感器局部坐標(biāo)系轉(zhuǎn)換到地球坐標(biāo)系;
6)可穿戴終端或者云端處理服務(wù)器將加速度和磁力計(jì)數(shù)據(jù)由地球坐標(biāo)系轉(zhuǎn)換到人體局部坐標(biāo)系;
7)可穿戴終端或者云端處理服務(wù)器抽取出人體前臂與人體局部坐標(biāo)系坐標(biāo)軸的夾角信息;
8)可穿戴終端或者云端處理服務(wù)器根據(jù)角度變化識(shí)別出子動(dòng)作序列;
9)可穿戴終端或者云端處理服務(wù)器根據(jù)子動(dòng)作序列,使用最少編輯距離識(shí)別出用戶動(dòng)作。
參照?qǐng)D3,利用公式(1)將智能手表局部坐標(biāo)系轉(zhuǎn)換到地球坐標(biāo)系,在公式(1)中,變量g表示重力加速度,由加速度經(jīng)過低通濾波得到,變量m表示磁力,變量xg、yg、zg分別表示地球坐標(biāo)系三個(gè)軸,公式(1)為:
參照?qǐng)D4,人體局部坐標(biāo)系的三個(gè)軸的方向?yàn)槿梭w正前方、人體正側(cè)方和豎直方向向上,與地球坐標(biāo)系只在水平面上相差一個(gè)θ偏角,通過四元數(shù)將地球坐標(biāo)系繞重力旋轉(zhuǎn)一個(gè)偏角得到人體局部坐標(biāo)系。
參照?qǐng)D5,人體前臂與傳感器局部坐標(biāo)系x軸重合,通過計(jì)算x軸與人體局部坐標(biāo)系的夾角獲得人體前臂與之夾角;具體過程為利用公式(2),計(jì)算出角度信息,利用公式(3)、公式(4)、公式(5)將角度信息投影到[0°,360°]范圍;在公式(2)中xb、yb、zb分別為人體局部坐標(biāo)系的三個(gè)軸,
參照?qǐng)D6,將[0°,360°]范圍內(nèi)角度按照閾值σ劃分扇區(qū),每一扇區(qū)有順時(shí)針和逆時(shí)針兩個(gè)子動(dòng)作,為了識(shí)別出子動(dòng)作序列,首先要將子動(dòng)作切分出來。根據(jù)三個(gè)原則將子動(dòng)作切分出來,并利用動(dòng)態(tài)時(shí)間規(guī)整算法計(jì)算出與模板庫(kù)里子動(dòng)作的相似度,識(shí)別出子動(dòng)作。這三個(gè)原則具體為:
a.角度增減趨勢(shì)發(fā)現(xiàn)變化時(shí),應(yīng)切分子動(dòng)作;
b.角度增減幅度超過子動(dòng)作閾值時(shí),應(yīng)切分子動(dòng)作;
c.子動(dòng)作持續(xù)時(shí)間不應(yīng)超過經(jīng)驗(yàn)閾值。
兩個(gè)子動(dòng)作的距離包括扇區(qū)距離和方向距離,利用公式(6)計(jì)算兩個(gè)子動(dòng)作的距離,利用公式(7)計(jì)算出兩個(gè)子動(dòng)作序列的編輯距離,通過與模板庫(kù)里的子動(dòng)作序列計(jì)算編輯距離,識(shí)別出用戶動(dòng)作,
其中,si與sj分別表示扇區(qū)i與扇區(qū)j,ds(mi,mj)表示兩個(gè)子動(dòng)作的扇區(qū)距離,dr(mi,mj)表示兩個(gè)子動(dòng)作的方向距離,d(mi,mj)表示兩個(gè)子動(dòng)作的距離,la,b(i,j)表示子動(dòng)作序列a位置i與子動(dòng)作序列b位置j的編輯距離,μ是任意兩個(gè)子動(dòng)作的距離的平均值,在這里設(shè)置為經(jīng)驗(yàn)值m/4。
本發(fā)明具體應(yīng)用途徑很多,以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以作出若干改進(jìn),這些改進(jìn)也應(yīng)視為本發(fā)明的保護(hù)范圍。