中文字幕无码日韩视频无码三区

動作識別方法及裝置的制造方法

文檔序號:10489374閱讀:243來源:國知局
動作識別方法及裝置的制造方法
【專利摘要】本發明公開了一種動作識別方法及裝置,本發明中首先采集人體動作,并對人體動作進行初步編輯,確定動作的起始和結束幀;之后提取編輯后的人體動作數據的關節點、圓形度以及澤尼克矩作為所述人體動作的描述特征;之后移除描述特征中的存在的噪聲、動作速率變化帶來的誤差以及動作時間匹配上的誤差;最后以上述處理后得到的描述特征作為輸入,輸入到支持向量機模型進行訓練,最后得到可對動作進行識別的分類模型。對于具體的動作,分類模型將給出對應的動作標簽,所得到的分類模型即實現了對新的人體動作的定義。利用本發明的方法工具用戶只需錄制自己或他人的動作便可完成動作的定義和識別,識別效果達到95%以上。
【專利說明】
動作識別方法及裝置
技術領域
[0001] 本發明涉及體人機交互技術領域,更具體涉及一種動作識別方法及裝置。
【背景技術】
[0002] 在人機交互領域,動作識別是體感交互的前提,動作識別和行為理解逐漸成為人 機交互領域的研究熱點。為達到有效的交互目的,必須對不同的交互動作,包含肢體運動、 手勢以及靜態姿勢,進行定義和識別。
[0003] 目前,基于Kinect的動作識別方法較多,如事件觸發方法、模板匹配方法、機器學 習方法等。現有技術中提出的靈活動作和鉸接式骨架工具包(flexible action and articulated skeleton toolkit,FAAST)是介于Kinect開發包和應用程序之間的體感操作 中間件,主要采用事件觸發方式進行識別,如角度、距離、速度等事件,該方法計算量小,實 時性和準確率高,但事件觸發方法本身具有局限性,對連續動作的識別較困難,同時不能實 現新動作的定義和使用。
[0004] 近年來,基于Kinect體感技術的動作識別應用開發十分豐富,但在這些應用中,雖 然能夠有效跟蹤人體運動軌跡,但識別動作比較單一且識別方法不利于擴展,亟待研究和 開發一種具有擴展性和通用性的動作識別模型。

【發明內容】

[0005] (一)要解決的技術問題
[0006] 本發明要解決的技術問題是如何快速方便地識別用戶的姿勢動作,以供后續使 用。
[0007] (二)技術方案
[0008] 為了解決上述技術問題,本發明提供了一種動作識別方法,所述方法包括以下步 驟:
[0009] si、采集人體動作或導入包含人體動作的文件,并對人體動作進行初步編輯;
[0010] S2、提取所述步驟Sl編輯之后的人體動作的數據的關節點、圓形度以及澤尼克矩 作為所述人體動作的描述特征;
[0011] S3、移除所述描述特征中存在的噪聲、動作速率變化帶來的誤差以及動作時間匹 配上的誤差;
[0012] S4、將所述步驟S3處理后得到的描述特征輸入到支持向量機分類模型進行訓練, 訓練得到的分類模型即實現對新的人體動作的定義;對于具體的動作,分類器將給出一個 具體的標簽以標識識別的動作。其中,所述標簽用于標識對應的人體動作。
[0013] 優選地,所述步驟Sl中采集人體動作之前所述方法還包括以下步驟:
[0014] 設置所述人體動作的名稱以及動作持續時間;
[0015] 采集倒計時開始計時,經過預定倒計時時長后開始采集人體動作;
[0016] 所述步驟Sl中采集人體動作之后所述方法還包括以下步驟:
[0017] 采集所述動作持續時間長度內的人體動作后將采集的人體動作進行保存;
[0018] 所述步驟Sl中初步編輯具體為:選定起始幀和結束幀,移除所述起始幀之前以及 所述結束幀之后的人體動作幀的數據。
[0019] 優選地,所述步驟S2中提取所述關節點具體包括以下步驟:
[0020] S21、利用Kinect SDK API獲取關節點位置,該位置基于Kinect設備空間坐標系;
[0021] S22、以用戶右手方向為X軸正方向,頭部正上方為y軸正方向,面向交互設備正前 方為z軸正方向,臀部為坐標原點構建用戶空間坐標系;
[0022] S23、Kinect設備空間坐標系oxyz下的坐標點P(x,y,z)與用戶空間坐標系o'x'y' z'下的坐標點?'(1',7',2')的變換關系可描述下式,
[0023]
[0024]式中,0'(XQ,yo,Z())表示用戶空間坐標系o'x'y z的坐標原點。
[0025] 優選地,所述步驟S2中提取所述圓形度以及澤尼克矩具體包括以下步驟:
[0026] S24、對所述步驟Sl編輯之后的人體動作進行運動檢測,檢測方法參考如下公式
[0027]
(2)
[0028] 式中(3〇1〇1'(1,1:)和(3〇1〇1'(1,1:-1)分別是位置1=(1,5〇處1:時刻和1:-1時刻的色彩 幀像素,depth(x,t)和depth(x,t_l)是相應像素的深度值,th為第一預定閾值,所述第一預 定閥值用于區分實際的人體運動與噪聲;
[0029] S25、在運動檢測后,首先估計一個初始前景模板,以上一個步驟中的像素點作為 種子像素,實現一個區域增長算法不斷擴大種子區域,其中所述區域增長算法具體為:比較 所述種子像素與其近鄰像素,若近鄰像素與種子像素滿足下面公式,則近鄰像素與種子像 素相似,則對應的近鄰像素被添加到種子區域,如此,種子區域被擴大,當不再有近鄰像素 被包含時,迭代結東:
[0030]
(3)
[0031] 式中小表示當前幀中增長區域中的像素集合,P(t) = {Pl= (X1J1),p2= (X2, y2),…}為g的子集,Ui,yi)為待判定的像素點Pk是P(t)中的任意一個點,th為特定閾值; [0032] S26、對所述步驟S25處理后得到的數據進行基于邊緣的改進:
[0033]通過膨脹稍微擴大色彩幀以確保包含所有重要的邊緣;在擴大的模板上應用 canny算子,使用膨脹算子連接邊緣;將得到的結果掩碼與初始的掩碼進行與操作以排除冗 余的背景數據;
[0034] S27、對所述步驟S26處理后的數據進行基于色彩信息的改進,以減少深度數據上 的邊界錯誤;
[0035] S28、利用下面的公式計算一維徑向多項式Rn,m為:
[0036]
[0037] 式中,η是一個非負整數,表示一維徑向多項式的階數,m是一個非零整數,滿足n-m| = even和|m| < n,表示相位角的重復度,P是點(x,y)至Ij原點的向量的長度,其中點(x,y) 是經過所述步驟S27處理后得到的數據點;
[0038] S29、利用下面的公式計算澤尼克基函數:定義在單位圓內的復值二維澤尼克基函 數表示為如下:
[0039]
[0040]復值二維澤尼克多項式滿足正交性:
[0041
[0042]式中,*表示復共輒,VP,q與Vn,m的含義相同,區別在于基數不同;
[0043] S210、將步驟S27處理后得到的數據對應的圖像投影到澤尼克基函數,并利用下面 的公式計算澤尼克矩:
[0044]
[0045] 上式表示階為n,相位角重復為m的復澤尼克矩式中,f(x,y)為圖像的函數;
[0046] 其中,為達到尺度和平移不變性,圖像函數f(x,y)需被歸一化,轉換方程為:
[0047]
[0048] S211、利用所述步驟S27處理后的數據以及下面的公式計算所述圓形度:
[0049]
[0050] 式中,A是所述步驟S27處理后的數據對應的圖像的面積,而P是所述步驟S27處理 后的數據對應的圖像的周長;
[0051] 優選地,所述步驟S3中利用動態時間規整法移除所述描述特征的噪聲;
[0052] 所述步驟S3中利用Fourier Temporal Pyramid清除所述描述特征由于動作速率 變化帶來的誤差以及動作時間匹配上的誤差。
[0053] -種動作識別用的裝置,所述裝置包括動作采集單元、特征提取單元、數據清洗單 元以及動作分類單元;
[0054] 所述動作采集單元用于采集人體動作或導入包含人體動作的文件,并對人體動作 進行初步編輯;
[0055] 所述特征提取單元用于提取所述動作采集單元編輯之后的人體動作的數據的關 節點、圓形度以及澤尼克矩作為所述人體動作的描述特征;
[0056] 所述數據清洗單元用于移除所述描述特征的噪聲、動作速率變化帶來的誤差以及 動作時間匹配上的誤差;
[0057] 所述動作分類單元用于接收為所述數據清洗單元處理后得到的描述特征然后進 行模型訓練,訓練得到的分類模型就具體的動作輸出一個標簽,,以此實現對新的人體動作 的定義和識別;其中,所述標簽用于標識對應的人體動作。
[0058] 優選地,所述動作采集單元包括設置子單元、倒計時計時子單元、采集子單元、存 儲子單元、導入子單元以及編輯子單元;
[0059] 所述設置子單元用于設置預定倒計時、所述人體動作的名稱以及動作持續時間;
[0060] 所述倒計時計時子單元用于在采集倒計時開始計時,經過預定倒計時時長后控制 所述采集子單元開始工作,采集人體動作;
[0061 ]所述導入子單元用于導入包含人體動作的文件;
[0062] 所述存儲子單元用于在所述采集子單元采集所述動作持續時間的時間長度的人 體動作后將采集的人體動作進行保存;
[0063] 所述編輯子單元用于選定起始幀和結束幀,刪除所述起始幀之前以及所述結束幀 之后的人體動作對應的數據。
[0064] 優選地,所述特征提取單元包括關節點提取子單元,
[0065] 所述關節點提取子單元用于利用Kinect SDK API獲取關節點位置基于Kinect設 備空間坐標系;以用戶右手方向為X軸正方向,頭部正上方為y軸正方向,面向交互設備正前 方為z軸正方向,臀部為坐標原點構建用戶空間坐標系;Kinect設備空間坐標系oxyz下的坐 標點P(x,y,z)與用戶空間坐標系o'x'y'z'下的坐標點P'(X',y',z')的變換關系可描述下 式,
[0066:
[0067]式中,0'(XQ,yo,Z())表示用戶空間坐標系o'x'y'z'的坐標原點。
[0068] 優選地,所述特征提取單元包括數據處理子單元、圓形度提取子單元以及澤尼克 矩提取子單元;
[0069] 所述數據處理子單元用于對所述步述動作采集單元編輯之后的人體動作進行運 動檢測,去除不符合下面公式的人體動作對應的數據:
[0070]
[0071 ] 式中〇〇1〇1'(1,1:)和〇〇1〇1'(1,1:-1)分別是位置1=(1,5〇處1:時刻和1:-1時刻的色彩 幀像素,depth(x,t)和depth(x,t_l)是相應像素的深度值,th為第一預定閾值,所述第一預 定閥值用于區分實際的人體運動與噪聲;
[0072] 所述數據處理子單元還用于在運動檢測后,設置一個初始前景掩碼,并且選取種 子像素,并利用區域增長算法完成整個種子區域,其中所述區域增長算法具體為:比較所述 種子像素與近鄰像素,若近鄰像素與種子像素滿足下面公式,則近鄰像素與種子像素相似, 則對應的近鄰像素被添加到種子區域,如此,種子區域被擴大,當不再有近鄰像素被包含 時,迭代結東:
[0073]
[0074]式中,盡表示當前幀中增長區域中的像素集合,P(t) = {pi = (XI,yi),P2= (X2, y2),···}為g的子集,由跟所述種子像素(Xl,yi)鄰接的點組成,Pk是P(t)中的任意一個點, th為預第二定閾值;
[0075]所述數據處理子單元還用于對整個種子區域的數據進行基于邊緣的改進:
[0076]通過膨脹稍微擴大色彩幀以確保包含所有重要的邊緣;在擴大的掩碼上應用 canny算子,使用膨脹算子連接邊緣;將得到的結果掩碼與初始的掩碼進行與操作以排除冗 余的背景數據;
[0077] 所述數據處理子單元還用于對基于邊緣改進處理后的數據進行基于色彩信息的 改進,以減少深度數據上的邊界錯誤;
[0078] 所述澤尼克矩提取子單元用于利用下面的公式計算一維徑向多項式Rn,m為:
[0079]
[0080]式中,η是一個非負整數,表示一維徑向多項式的階數,m是一個非零整數,滿足n-m| = even和|m| < n,表示相位角的重復度,P是點(x,y)至Ij原點的向量的長度,其中點(x,y) 是經過所述步驟S27處理后得到的數據點;
[0081] 所述澤尼克矩提取子單元還用于利用下面的公式計算澤尼克基函數:定義在單位 圓內的復倌二維澤尼克基函數表示為如下:
[0082]
[0083]
[0084]
[0085] 式中,*表示復共輒,VP,q與Vn,m的含義相同,區別在于基數不同;
[0086] 所述澤尼克矩提取子單元還用于將數據處理子單元進行色彩信息的改進后得到 的數據對應的圖像投影到澤尼克基函數,并利用下面的公式計算澤尼克矩:
[0087]
[0088]上式表示階為n,相位角重復為m的復澤尼克矩式中,f(x,y)為圖像的函數;
[0089] 其中,為達到尺度和平移不變性,圖像函數f(x,y)需被歸一化,轉換方程為:
[0090]
[0091] 所述圓形度提取子單元用于將數據處理子單元進行色彩信息的改進后得到的數 據以及下面的公式計算所述圓形度:
[0092]
[0093]式中,A是所述數據處理于早兀進行色彩信息的改進后得到的數據對應的圖像的 面積,而P是所述數據處理子單元進行色彩信息的改進后得到的數據對應的圖像的周長。
[0094] 優選地,所述數據清洗單元包括第一清洗子單元以及第二清洗子單元;
[0095] 所述第一清洗子單元用于利用動態時間規整法清除所述描述特征的噪聲;
[0096] 所述第二清洗子單元用于利用Fourier Temporal Pyramid清除所述描述特征由 于動作速率變化帶來的誤差以及動作時間匹配上的誤差。
[0097](三)有益效果
[0098]本發明提供了一種動作識別方法及裝置,本發明中首先采集人體動作或導入包含 人體動作的文件,并對人體動作進行初步編輯;之后提取編輯之后的人體動作的數據的關 節點、圓形度以及澤尼克矩作為所述人體動作的描述特征;之后清除所述描述特征的噪聲、 動作速率變化帶來的誤差以及動作時間匹配上的誤差;最后為上述處理后得到的描述特征 對應的人體動作分配一個標簽,并將所述人體動作對應的描述特征以及對應的標簽進行存 儲,實現對新的人體動作的定義;其中,所述標簽用于標識對應的人體動作。利用本發明的 方法或裝置用戶只需錄制自己或他人的動作便可完成動作的定義,錄制的動作數據后期可 用于構建動作分類模型,可針對具體的桌面應用進行定制,識別效果達到95%以上。
【附圖說明】
[0099]為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以 根據這些附圖獲得其他的附圖。
[0100]圖1是本發明的一個較佳實施例的動作識別方法流程圖;
[0101] 圖2A、2B是本發明的另一個較佳實施例的動作識別方法流程圖
[0102] 圖3是本發明的另一個較佳實施例的動作識別方法中步驟Sl的流程圖;
[0103] 圖4是本發明的另一個較佳實施例的動作識別方法中步驟S25-S27的流程圖;
[0104] 圖5是本發明的另一個較佳實施例的動作識別方法中步驟S26的流程圖;
[0105]圖6A、6B、6C是本發明的另一個較佳實施例的動作識別方法中步驟S26的處理效果 示意圖;
[0106] 圖7A、7B、7C是本發明的另一個較佳實施例的動作識別方法中步驟S27的效果示意 圖。
【具體實施方式】
[0107] 下面結合附圖和實施例對本發明作進一步詳細描述。以下實施例用于說明本發 明,但不能用來限制本發明的范圍。
[0108] -種動作識別方法,如圖1所示,所述方法包括以下步驟:
[0109] S1、采集人體動作或導入包含人體動作的文件,并對人體動作進行初步編輯;
[0110] S2、提取所述步驟Sl編輯之后的人體動作的數據的關節點、圓形度以及澤尼克矩 作為所述人體動作的描述特征;
[0111] S3、清除所述描述特征的噪聲、動作速率變化帶來的誤差以及動作時間匹配上的 誤差;
[0112] S4、將所述步驟S3處理后得到的描述特征輸入到支持向量機模型進行訓練,得到 訓練后的模型,使用訓練后的模型對人體動作分配一個標簽,,以此實現對新的人體動作的 定義;其中,所述標簽用于標識對應的人體動作。
[0113]利用本發明的方法或裝置用戶只需錄制自己或他人的動作便可完成動作的定義, 錄制的動作數據后期可用于構建動作分類模型,可針對具體的桌面應用進行定制,識別效 果達到95%以上。
[0114] 為了利用以上方法對已定義的姿勢動作進行識別,并將識別的結果與具體的目標 應用關聯起來,以實現使用姿勢動作操控傳統的桌面應用,上述方法還可以包括以下步驟:
[0115] S5、接受特定動作的標簽,觸發與該動作關聯的鍵盤或鼠標事件,并將該事件遞交 給目標應用。
[0116]進一步地,所述步驟SI中采集人體動作之前所述方法還包括以下步驟:
[0117]設置所述人體動作的名稱以及動作持續時間;
[0118] 采集倒計時開始計時,經過預定倒計時時長后開始采集人體動作;
[0119] 所述步驟Sl中采集人體動作之后所述方法還包括以下步驟:
[0120] 采集所述動作持續時間長度內的人體動作后將采集的人體動作進行保存;
[0121] 所述步驟Sl中初步編輯具體為:選定起始幀和結束幀,刪除所述起始幀之前以及 所述結束幀之后的人體動作幀的數據。
[0122] 進一步地,如圖2A、2B所示,所述步驟S2中提取所述關節點具體包括以下步驟:
[0123] S21、利用Kinect SDK API獲取關節點位置,該位置基于Kinect設備空間坐標系;
[0124] S22、以用戶右手方向為X軸正方向,頭部正上方為y軸正方向,面向交互設備正前 方為z軸正方向,臀部為坐標原點構建用戶空間坐標系;
[0125] S23、Kinect設備空間坐標系oxyz下的坐標點P(x,y,z)與用戶空間坐標系o'x'y' z'下的坐標點?'(1',7',2')的變換關系可描述下式,
[0126]
[0127]式中,0'(XQ,yo,Z())表示用戶空間坐標系o'x'y'z'的坐標原點。
[0128] 所述步驟S2中提取所述圓形度以及澤尼克矩:首先從運動的圖像幀中去除背景, 將運動的人分割出來,然后計算分割后圖像的圓形度和澤尼克矩作為描述當前圖像幀的特 征。提出的分割方法為融合深度信息和顏色信息的分割,其流程圖如圖4所示,具體包括以 下步驟:
[0129] S24、對所述步驟Sl編輯之后的人體動作進行運動檢測,
[0130] 利用下面公式進行檢測,得到符合下面公式的像素點:
[0131]
[0132] 式;中(3〇1〇1'(^,1:)和(3〇1〇1'(^,1:-1)分別是位置1=(^,5〇處1:時刻和1:-1時刻的色彩 幀像素,depth(x,t)和depth(x,t_l)是相應像素的深度值,th為第一預定閾值,所述第一預 定閥值用于區分實際的人體運動與噪聲;
[0133] S25、在運動檢測后,設置一個初始的前景區域,然后實現一個區域增長算法構建 成整個前景區域,其中所述區域增長算法具體為:利用前一個步驟中得到的像素點作為種 子像素,比較所述種子像素與其近鄰像素,若近鄰像素與種子像素滿足下面公式,則近鄰像 素與種子像素相似,對應的近鄰像素被添加到種子區域,如此,種子區域被擴大,當不再有 近鄰像素被包含時,迭代結束;
[0134]
[0135] 式中,g表示當前幀中增長區域,即前景區域中的像素集合,P(t) = {pi = (Xi,yi), P2=(x2,y2),…為g的子集,像素(xi,yi)為待判定的像素點,Pk是P(t)中的任意一個點,th為 預第二定閾值;
[0136] S26、上一個步驟中區域增長算法當應用于帶噪聲的深度圖時,估計的前景掩碼將 包含錯誤的區域,這些區域本該屬于背景。為解決這類問題,我們利用色彩數據中邊緣信息 進行改進,最終形成提高的前景掩碼。具體操作為:
[0137] 通過膨脹稍微擴大色彩幀以確保包含所有重要的邊緣;在擴大的模板上應用 canny算子,接著使用膨脹算子連接邊緣;最后將得到的結果模板與初始的掩碼進行與操作 以排除冗余的背景數據;算法流程如圖5,算法應用后的結果如圖6A、6B、6C所示;
[0138] S27、對所述步驟S26處理后的數據進行基于色彩信息的改進,以減少深度數據上 的邊界錯誤;其效果如圖7A、7B、7C所示;
[0139] S28、利用下面的公式計算一維徑向多項式Rn,m為:
[0140]
[0141] 式中,η是一個非負整數,表示一維徑向多項式的階數,m是一個非零整數,滿足n-m| = even和|m| < n,表示相位角的重復度,P是點(x,y)至Ij原點的向量的長度,其中點(x,y) 是經過所述步驟S27處理后得到的數據點;
[0142] S29、利用下面的公式計算澤尼克基函數:定義在單位圓內的復值二維澤尼克基函 數表示為如下:
[0143] Vn,m(p,0)=Rn,meim,|p| < 1 (5)
[0144] 復倌二維澤尼克多項式滿足正交性:
[0145]
[0146] 式中,*表示復共輒,VP,q與Vn,m的含義相同,區別在于基數不同;
[0147] S210、將步驟S27處理后得到的數據對應的圖像投影到澤尼克基函數,并利用下面 的公式計算澤尼克矩:
[0148]
[0149] 上式表示階為n,相位角重復為m的復澤尼克矩式中,f(x,y)為圖像的函數;
[0150] 其中,為達到尺度和平移不變性,圖像函數f(x,y)需被歸一化,轉換方程為:
[0151]
[0152] S21 1、剎用所沭擊驟S27々卜理后的數據以及下面的公式計算所述圓形度:
[0153]
[0154] 式中,A是所述步驟S27處理后的數據對應的圖像的面積,而P是所述步驟S27處理 后的數據對應的圖像的周長。
[0155] 其中,澤尼克矩可視作一副圖像到一個澤尼克多項式集合的映射。由于澤尼克多 項式彼此正交,所以使用澤尼克矩表示圖像的屬性時,各階矩間不存在信息冗余。同時,澤 尼克矩具備旋轉不變性和對噪聲魯棒,歸一化后的澤尼克矩是尺度和平移不變的。圓形度 用于度量目標區域的緊湊度,被定義為面積和周長平方的比,對于圓形目標其達到最小,對 于薄的復雜的目標其接近無限大。
[0156] 進一步地,如圖2A、2B所示,所述步驟S3中利用動態時間規整法清除所述描述特征 的噪聲;
[0157] 所述步驟S3中利用Fourier Temporal Pyramid清除所述描述特征由于動作速率 變化帶來的誤差以及動作時間匹配上的誤差。
[0158] 對應于上述方法本發明還公開了一種動作識別裝置,,所述裝置包括動作采集單 元、特征提取單元、數據清洗單元以及動作分類單元;
[0159]所述動作采集單元用于采集人體動作或導入包含人體動作的文件,并對人體動作 進行初步編輯;
[0160] 所述特征提取單元用于提取所述動作采集單元編輯之后的人體動作的數據的關 節點、圓形度以及澤尼克矩作為所述人體動作的描述特征;
[0161] 所述數據清洗單元用于清除所述描述特征的噪聲、動作速率變化帶來的誤差以及 動作時間匹配上的誤差;
[0162] 所述動作分類單元用于接收所述數據清洗單元處理后得到的描述特征,然后進行 模型訓練,訓練得到的分類模型就具體的人體動作輸出一個標簽,,以此實現對新的人體動 作的定義和識別;其中,所述標簽標識了對應的人體動作。
[0163] 為了利用以上裝置對已定義的姿勢動作進行識別,并將識別的結果與具體的目標 應用關聯起來,以實現使用姿勢動作操控傳統的桌面應用,上述裝置還可以包括以下輸入 模擬器單元,所述輸入模擬器單元用于接受特定動作的標簽,觸發與該動作關聯的鍵盤或 鼠標事件,并將該事件遞交給目標應用。
[0164] 進一步地,所述動作采集單元包括設置子單元、倒計時計時子單元、采集子單元、 存儲子單元、導入子單元以及編輯子單元;
[0165] 所述設置子單元用于設置預定倒計時、所述人體動作的名稱以及動作持續時間;
[0166] 所述倒計時計時子單元用于在采集倒計時開始計時,經過預定倒計時時長后控制 所述采集子單元開始工作,采集人體動作;
[0167] 所述導入子單元用于導入包含人體動作的文件;
[0168] 所述存儲子單元用于在所述采集子單元采集所述動作持續時間的時間長度的人 體動作后將采集的人體動作進行保存;
[0169] 所述編輯子單元用于選定起始幀和結束幀,刪除所述起始幀之前以及所述結束幀 之后的人體動作對應的數據。
[0170] 進一步地,所述特征提取單元包括關節點提取子單元,
[0171] 所述關節點提取子單元用于利用Kinect SDK API獲取關節點位置基于Kinect設 備空間坐標系;以用戶右手方向為X軸正方向,頭部正上方為y軸正方向,面向交互設備正前 方為z軸正方向,臀部為坐標原點構建用戶空間坐標系;Kinect設備空間坐標系oxyz下的坐 標點P(x,y,z)與用戶空間坐標系o'x'y'z'下的坐標點P'(X',y',z')的變換關系可描述下 式,
[0172
[0173]式中,0'(XQ,yo,Z())表示用戶空間坐標系o'x'y'z'的坐標原點。
[0174] 所述特征提取單元包括數據處理子單元、圓形度提取子單元以及澤尼克矩提取子 單元;
[0175] 所述數據處理子單元用于對所述步述動作采集單元編輯之后的人體動作進行運 動檢測,去除不符合下面公式的人體動作對應的數據:
[0176]
[0177] 式中〇〇1〇1'(1,1:)和〇〇1〇1'(1,1:-1)分別是位置1=(1,5〇處1:時刻和1:-1時刻的色彩 幀像素,depth(x,t)和depth(x,t_l)是相應像素的深度值,th為第一預定閾值,所述第一預 定閥值用于區分實際的人體運動與噪聲;
[0178] 所述數據處理子單元還用于在運動檢測后,設置一個初始前景掩碼,并且選取種 子像素,并利用區域增長算法完成整個種子區域,其中所述區域增長算法具體為:比較所述 種子像素與近鄰像素,若近鄰像素與種子像素滿足下面公式,則近鄰像素與種子像素相似, 則對應的近鄰像素被添加到種子區域,如此,種子區域被擴大,當不再有近鄰像素被包含 時,迭代結市,
[0179]
[0180] 式中,盡表示當前幀中增長區域中的像素集合,P(t) = {pi = (Xi,yi),p2= (X2, y2),···}為g的子集,由跟所述種子像素(Xl,yi)鄰接的點組成,Pk是P(t)中的任意一個點,th 為預第二定閾值;
[0181] 所述數據處理子單元還用于對整個種子區域的數據進行基于邊緣的改進:
[0182] 通過膨脹稍微擴大色彩幀以確保包含所有重要的邊緣;在擴大的掩碼上應用 canny算子,使用膨脹算子連接邊緣;將得到的結果掩碼與初始的掩碼進行與操作以排除冗 余的背景數據;
[0183] 所述數據處理子單元還用于對基于邊緣改進處理后的數據進行基于色彩信息的 改進,以減少深度數據上的邊界錯誤;
[0184] 所述澤尼克矩提取子單元用于利用下面的公式計算一維徑向多項式Rn,m為:
[0185]
[0186] 式中,η是一個非負整數,表示一維徑向多項式的階數,m是一個非零整數,滿足n-m| = even和|m| < n,表示相位角的重復度,P是點(x,y)至Ij原點的向量的長度,其中點(x,y) 是經過所述步驟S27處理后得到的數據點;
[0187] 所述澤尼克矩提取子單元還用于利用下面的公式計算澤尼克基函數:定義在單位 圓內的復值二維澤尼克基函數表示為如下:
[0188] Vn,m(p,0)=Rn, meim,|p| < 1 (5)
[0189] 復值二維澤尼克多項式滿足正交性:
[0190;
[0191 ]式中,*表示復共輒,VP,q與Vn,m的含義相同,區別在于基數不同;
[0192] 所述澤尼克矩提取子單元還用于將數據處理子單元進行色彩信息的改進后得到 的數據對應的圖像投影到澤尼克基函數,并利用下面的公式計算澤尼克矩:
[0193]
[0194] 上式表示階為n,相位角重復為m的復澤尼克矩式中,f(x,y)為圖像的函數;
[0195] 其中,為達到尺度和平移不變性,圖像函數f(x,y)需被歸一化,轉換方程為:
[0196]
[0197] 所述圓形度提取子單元用于將數據處理子單元進行色彩信息的改進后得到的數
g M7? TC而的/,V才斗管狄IMI形齒.
[0198
[0199] 式中,A是所述數據處理子單元進行色彩信息的改進后得到的數據對應的圖像的 面積,而P是所述數據處理子單元進行色彩信息的改進后得到的數據對應的圖像的周長。
[0200] 進一步地,所述數據清洗單元包括第一清洗子單元以及第二清洗子單元;
[0201 ]所述第一清洗子單元用于利用動態時間規整法DTW清除所述描述特征的噪聲;
[0202] 所述第二清洗子單元用于利用Fourier Temporal Pyramid(FTP)清除所述描述 特征由于動作速率變化帶來的誤差以及動作時間匹配上的誤差。
[0203] 進一步地,圖3為動作采集裝置的工作流程圖。動作采集單元用于對預設的每個動 作進行數據采集,該單元實現為動作定義工具包Actionkit jctionki t由四部分組成,分別 是Actionkit主界面、新動作界面、錄制新動作界面和動作編輯界面。Actionkit主界面上主 要有兩個按鈕,點擊加載按鈕彈出文件打開窗口,要求用戶選擇一已錄制好的動作xml文 件,然后彈出動作編輯界面;點擊錄制按鈕彈出新動作界面。在新動作界面,用戶需設定動 作的名稱,執行該動作預估的時間,當點擊開始錄制按鈕,彈出錄制新動作界面,點擊取消 按鈕回到Actionkit主界面。在錄制新動作界面,首先顯示一個10秒的倒計時以使用戶做好 準備,然后顯示一個用戶在新動作界面設定的時間倒計時,在改時間內,用戶執行意向的動 作,待倒計時完畢,執行的動作被記錄在xm 1文件中,同時同步的深度圖像和顏色圖像亦被 記錄下來。在動作編輯界面,左側展示人的骨架表示,右側設置有三個按鈕,左側底部為 Back按鈕,左側頂端顯示當前幀號及總幀數。當滑動鼠標滾輪時,從當前幀回退到上一幀或 前進到下一幀,點擊動畫按鈕可對整個動作進行預覽,當選定動作的起始幀后,點擊剪掉開 始按鈕可修建掉起始幀之前的所有幀,當選定動作的結束幀后,點擊剪掉結束按鈕可修建 掉結束幀之后的所有幀。
[0204] Actionki t旨在提供動作錄制接口,借助Act ionki t用戶能夠錄制意向的動作,錄 制完畢后,Actionkit將其并存為一個xml文件,同時記錄同步的深度圖像和顏色圖像。稍 后,用戶可在Actionkit加載動作xml文件以實現對已錄制的動作進行預覽,滑動鼠標光標 瀏覽動作的每一幀,按需選擇動作的起始幀和結束幀,并將起始幀和結束幀之前的幀全部 修剪掉。
[0205] 上述裝置可以看做是一個基于骨架關節點和形狀描述子的動作工具包。
[0206] FAAST是目前與本發明較類似的唯一工具,本發明與其的不同之處在于提供了一 種十分便利的動作定義工具,使得用戶不用如在FAAST中那般去構思描述動作的復雜規則, 同時本發明中對動作的識別采用了機器學習的方法,可針對具體的應用定制識別方法,設 別效果較好。
[0207]以上各實施例僅用以說明本發明的技術方案,而非對其限制;盡管參照前述各實 施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各 實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而 這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的范圍,其 均應涵蓋在本發明的權利要求和說明書的范圍當中。
【主權項】
1. 一種動作識別方法,其特征在于,所述方法包括W下步驟: 51、 采集人體動作或導入包含人體動作的文件,并對人體動作進行初步編輯; 52、 提取所述步驟S1編輯之后的人體動作數據的關節點、圓形度W及澤尼克矩作為所 述人體動作的描述特征; 53、 移除所述描述特征中存在的噪聲、動作速率變化帶來的誤差W及動作時間匹配上 的誤差; 54、 將所述步驟S3處理后得到的描述特征輸入到支持向量機分類模型進行訓練,訓練 得到的分類模型即實現對新的人體動作的定義;對于具體的動作,分類器將給出一個具體 的標簽W標識識別的動作。2. 根據權利要求1所述的方法,其特征在于,所述步驟S1中采集人體動作之前所述方法 還包括W下步驟: 設置所述人體動作的名稱W及動作持續時間; 采集倒計時開始計時,經過預定倒計時時長后開始采集人體動作; 所述步驟S1中采集人體動作之后所述方法還包括W下步驟: 采集所述動作持續時間長度內的人體動作后將采集的人體動作進行保存; 所述步驟S1中初步編輯具體為:選定起始帖和結束帖,移除所述起始帖之前W及所述 結束帖之后的人體動作帖數據。3. 根據權利要求1所述的方法,其特征在于,所述步驟S2中提取所述關節點具體包括W 下步驟: 521、 利用Kinect SDK API獲取關節點位置,該位置基于Kinect設備空間坐標系; 522、 W用戶右手方向為X軸正方向,頭部正上方為y軸正方向,面向交互設備正前方為Z 軸正方向,臀部為坐標原點構建用戶空間坐標系; 523、 Kinect設備空間坐標系oxyz下的坐標點P(x,y,z)與用戶空間坐標系o'x'y'z'下 的坐標點P'(X',y ',Z ')的變換關系可描述下式,式中,0'(xo,yo,zo)表示用戶空間坐標系o'x'y'z'的坐標原點。4. 根據權利要求1所述的方法,其特征在于,所述步驟S2中提取所述圓形度W及澤尼克 矩具體包括W下步驟: 524、 對所述步驟S1編輯之后的人體動作進行運動檢測,利用下面公式進行檢測,得到 符合下面公式的像素點:式中(3〇1〇1'(^,1:)和(3〇1〇1'(^,1:-1)分別是位置^=(^,7)處1:時刻和1:-1時刻的色彩帖像 素,depthU,t)和d邱th(x,t-1)是相應像素的深度值,th為第一預定闊值,所述第一預定閥 值用于區分實際的人體運動與噪聲; 525、 在運動檢測后,設置一個初始的前景區域,然后實現一個區域增長算法構建成整 個前景區域,其中所述區域增長算法具體為:利用前一個步驟中得到的像素點作為種子像 素,比較所述種子像素與其近鄰像素,若近鄰像素與種子像素滿足下面公式,則近鄰像素與 種子像素相似,對應的近鄰像素被添加到種子區域,如此,種子區域被擴大,當不再有近鄰 像素被包含時,迭代結束;式中,g表示當前帖中前景區域中的像素集合,口(*) = {口1=^1,71),口2=^2,72),一}為 R的子集,i素(Xi,yi)為待判定的像素點,Pk是p(t)中的任意一個點,th為預第二定闊值; 526、 對所述步驟S25處理后得到的數據進行基于邊緣的改進: 通過膨脹稍微擴大色彩帖W確保包含所有重要的邊緣;在擴大的模板上應用canny算 子,接著使用膨脹算子連接邊緣;最后將得到的結果模板與初始的掩碼進行與操作W排除 冗余的背景數據; 527、 對所述步驟S26處理后的數據進行基于色彩信息的改進,W減少深度數據上的邊 界錯誤; 528、 利用下面的公式計算一維徑向多項式Rn,m為:式中,η是一個非負整數,表示一維徑向多項式的階數,m是一個非零整數,滿足n-|m| = even和|m| <n,表示相位角的重復度,P是點(x,y巧Ij原點的向量的長度,其中點(x,y)是經 過所述步驟S27處理后得到的數據點; 529、 利用下面的公式計算澤尼克基函數:定義在單位圓內的復值二維澤尼克基函數表 不為如下: Vn,m(P ,白)二 Rn,me ' , I P I ^ 1 (5) 復值二維澤尼克多項式滿足正交性:式中,*表示復共輛,Vp,q與Vn,"的含義相同,區別在于基數不同; 5210、 將步驟S27處理后得到的數據對應的圖像投影到澤尼克基函數,并利用下面的公 式計算澤尼克矩:上式表示階為n,相位角重復為m的復澤尼克矩式中,f(x,y)為圖像的函數; 其中,為達到尺度和平移不變性,圖像函數f(x,y)需被歸一化,轉換方程為:5211、 利用所述步驟S27處理后的數據W及下面的公式計算所述圓形度:式中,A是所述步驟S27處理后的數據對應的圖像的面積,而P是所述步驟S27處理后的 數據對應的圖像的周長。5. 根據權利要求1所述的方法,其特征在于,所述步驟S3中利用動態時間規整法移除所 述描述特征中的噪聲; 所述步驟S3中利用化urier Temporal Pyramid移除所述描述特征由于動作速率變化 帶來的誤差W及動作時間匹配上的誤差。6. -種動作識別用的裝置,其特征在于,所述裝置包括動作采集單元、特征提取單元、 數據清洗單元W及動作分類單元; 所述動作采集單元用于采集人體動作或導入包含人體動作的文件,并對人體動作進行 初步編輯; 所述特征提取單元用于提取所述動作采集單元編輯之后的人體動作的數據的關節點、 圓形度W及澤尼克矩作為所述人體動作的描述特征; 所述數據清洗單元用于移除所述描述特征的噪聲、動作速率變化帶來的誤差W及動作 時間匹配上的誤差; 所述動作分類單元用于接收所述數據清洗單元處理后得到的描述特征,然后進行模型 訓練,訓練得到的分類模型就具體的人體動作輸出一個標簽,,W此實現對新的人體動作的 定義和識別;其中,所述標簽標識了對應的人體動作。7. 根據權利要求6所述的裝置,其特征在于,所述動作采集單元包括設置子單元、倒計 時計時子單元、采集子單元、存儲子單元、導入子單元W及編輯子單元; 所述設置子單元用于設置預定倒計時、所述人體動作的名稱W及動作持續時間; 所述倒計時計時子單元用于在采集倒計時開始計時,經過預定倒計時時長后控制所述 采集子單元開始工作,采集人體動作; 所述導入子單元用于導入包含人體動作的文件; 所述存儲子單元用于在所述采集子單元采集所述動作持續時間的時間長度的人體動 作后將采集的人體動作進行保存; 所述編輯子單元用于選定起始帖和結束帖,刪除所述起始帖之前W及所述結束帖之后 的人體動作帖數據。8. 根據權利要求6所述的裝置,其特征在于,所述特征提取單元包括關節點提取子單 元, 所述關節點提取子單元用于利用Kinect SDK API獲取關節點位置基于Kinect設備空 間坐標系;W用戶右手方向為X軸正方向,頭部正上方為y軸正方向,面向交互設備正前方為 Z軸正方向,臀部為坐標原點構建用戶空間坐標系;Kinect設備空間坐標系oxyz下的坐標點 P(x,y,z)與用戶空間坐標系o'x'y'z'下的坐標點P'(X',y',z')的變換關系可描述下式,式中,O'(xo,yo,zo)表示用戶空間坐標系o'x'y'z'的坐標原點。9. 根據權利要求6所述的裝置,其特征在于,所述特征提取單元包括數據處理子單元、 圓形度提取子單元W及澤尼克矩提取子單元; 所述數據處理子單元用于對所述動作采集單元編輯之后的人體動作進行運動檢測,檢 測方法利用如下公式:式中(3〇1〇1'(^,1:)和(3〇1〇1'(^,1:-1)分別是位置^=(^,7)處1:時刻和1:-1時刻的色彩帖像 素,depthU,t)和d邱th(x,t-1)是相應像素的深度值,th為第一預定闊值,所述第一預定閥 值用于區分實際的人體運動與噪聲; 所述數據處理子單元還用于在運動檢測后,首先設置一個初始前景模板,W上一步中 得到的像素作為種子像素,實現區域增長算法擴大種子區域,最后形成完整的前景模板。其 中所述區域增長算法具體為:比較所述種子像素與其近鄰像素,若近鄰像素與種子像素滿 足下面公式,則近鄰像素與種子像素相似,則對應的近鄰像素被添加到種子區域,如此,種 子區域被擴大,當不再有近鄰像素被包含時,迭代結束;式中,g表示當前帖中增長區域中的像素集合,P(t) = {pi= (xi,yi),p2 = (X2,y2),···} 為g的子集,(xi,yi)為待判定的像素點,Pk是P(t)中的任意一個點,th為預第二定闊值; 所述數據處理子單元還用于對整個種子區域的數據進行基于邊緣的改進: 通過膨脹稍微擴大色彩帖W確保包含所有重要的邊緣;在擴大的模板上應用canny算 子,然后使用膨脹算子連接邊緣;最后將得到的結果掩碼與初始的掩碼進行與操作W排除 冗余的背景數據; 所述數據處理子單元還用于對基于邊緣改進處理后的數據進行基于色彩信息的改進, W減少深度數據上的邊界錯誤; 所述澤尼克矩提取子單元用于利用下面的公式計算一維徑向多項式Rn,m為:式中,η是一個非負整數,表示一維徑向多項式的階數,m是一個非零整數,滿足n-|m| = even和|m| <n,表示相位角的重復度,P是點(x,y巧Ij原點的向量的長度,其中點(x,y)是經 過所述步驟S27處理后得到的數據點; 所述澤尼克矩提取子單元還用于利用下面的公式計算澤尼克基函數:定義在單位圓內 的復值二維澤尼克基函數表示為如下: Vn,m(P ,白)二 Rn,me ' , I P I ^ 1 (5) 復值二維澤尼克多項式滿足正交性:式中,*表示復共輛,Vp,q與Vn,"的含義相同,區別在于基數不同; 所述澤尼克矩提取子單元還用于將數據處理子單元進行色彩信息的改進后得到的數 據對應的圖像投影到澤尼克基函數,并利用下面的公式計算澤尼克矩:上式表示階為n,相位角重復為m的復澤尼克矩式中,f(x,y)為圖像的函數; 其中,為達到尺度和平移不變性,圖像函數f(x,y)需被歸一化,轉換方程為:所述圓形度提取子單元用于將數據處理子單元進行色彩信息的改進后得到的數據W 及下面的公式計算所述圓形度:式中,A是所述數據處理子單元進行色彩信息的改進后得到的數據對應的圖像的面積, 而P是所述數據處理子單元進行色彩信息的改進后得到的數據對應的圖像的周長。10.根據權利要求6所述的裝置,其特征在于,所述數據清洗單元包括第一清洗子單元 W及第二清洗子單元; 所述第一清洗子單元用于利用動態時間規整法清除所述描述特征的噪聲; 所述第二清洗子單元用于利用化urier Temporal Pyramid清除所述描述特征由于動 作速率變化帶來的誤差W及動作時間匹配上的誤差。
【文檔編號】G06K9/40GK105844258SQ201610228478
【公開日】2016年8月10日
【申請日】2016年4月13日
【發明人】陳洪, 杜利強, 王慶, 梅樹立, 許常蕾, 陳晨如, 張瑞萱
【申請人】中國農業大學
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1