均值,其中,滑動時刻對應的窗口序列包括滑動時刻對應的窗口以及滑動時刻 之前的N-I個滑動時刻對應的N-I個窗口共N個連續(xù)的窗口,N為大于等于2的正整數(shù)。
[0105] 其中,單通道表面肌電信號的起始時間是指開始有通道信號的時間,在每個滑動 時刻對單通道的表面肌電信號進行滑動,即在每個滑動時刻將單通道表面信號在時間上向 后移動一個窗口,相鄰兩個滑動時刻之間相差的時間為一個滑動間隔。例如,窗口寬度為時 間t,滑動間隔為t/2, t= Ims (毫秒),每個窗口序列包括四個窗口,共有50個窗口,窗口 的編號為1、2、3……50,那么從單通道表面肌電信號的起始時間開始,第一個滑動時刻對應 的窗口為4號窗口,第一個滑動時刻對應的窗口序列為0-4ms,共4個窗口,然后,在第二個 滑動時刻將單通道表面肌電信號向后滑動〇. 5ms,得到第二個窗口序列,第二個窗口序列為 0. 5-4. 5ms,依次類推,得到每個滑動時刻對應的窗口序列。在計算第一個滑動時刻對應的 窗口序列的表面肌電信號平均幅值時,首先,對該窗口序列內的單通道的表面肌電信號的 值取絕對值,然后,將該窗口序列內的單通道的表面肌電信號的絕對值加起來取平均值,得 到該窗口序列的表面肌電信號平均幅值。
[0106] 第三步、若每個滑動時刻中的滑動時刻T對應的窗口序列的表面肌電信號平均幅 值不小于預設幅值,將滑動時刻T對應的窗口序列的起始時間作為有效表面肌電信號的起 始時間,將有效表面肌電信號的起始時間加上預設時間得到有效表面肌電信號的截止時 間,截取有效表面肌電信號的開始時間和截止時間之間的多個通道預處理后的表面肌電信 號作為有效表面肌電信號。
[0107] 在計算得到每個滑動時刻對應的窗口序列的表面肌電信號平均幅值時,判斷該滑 動時刻對應的窗口序列的表面肌電信號平均幅值是否小于預設幅值,若滑動時刻T對應的 窗口序列的表面肌電信號平均幅值不小于預設幅值,即滑動時刻T對應的窗口序列的表面 肌電信號平均幅值大于等于預設幅值,則將滑動時刻T對應的窗口序列的起始時間作為有 效表面肌電信號的起始時間,有效表面肌電信號的起始時間加上預設時間得到有效表面肌 電信號的截止時間。在得到有效表面肌電信號的開始時間和截止時間后,截取開始時間和 截止時間之間多個通道的表面肌電信號作為有效表面肌電信號。其中,預設幅值可以為多 個通道的表面肌電信號疊加后的表面肌電信號的幅值的絕對值的平均值。
[0108] 步驟103、確定有效表面肌電信號的頻率。
[0109] 確定有效表面肌電信號的頻率的方法有多種,以下列舉幾種常用的方法:第一種 方式,計算有效表面肌電信號與多個正余弦矩陣的相關系數(shù),假設肢體動作可能出現(xiàn)的頻 率為Π ,…,fn,那么選取以Π ,…,fn為基頻的正余弦矩陣,分別將有效表面肌電信號與 各正余弦矩陣進行典型相關分析(Canonical Correlation Analysis,簡稱CCA)運算,得到 有效表面肌電信號與各正余弦矩陣的最大相關系數(shù),如果最大相關系數(shù)大于預設的相關系 數(shù),則將最大相關系數(shù)對應的正余弦矩陣的基頻作為有效表面肌電信號的頻率。第二種方 法,對有效表面信號進行快速傅里葉變換(Fast Fourier Ttransform,簡稱FFT),根據(jù)變換 結果確定有效表面肌電信號的頻率分布,從而得到有效表面肌電信號的頻率。第三種方法, 根據(jù)有效表面肌電信號兩個過零點的時間間隔計算表面肌電信號的頻率。
[0110] 步驟104、根據(jù)有效表面肌電信號的頻率確定多個通道的表面肌電信號對應的肢 體動作。
[0111] 預先需要建立表面肌電信號的頻率與肢體動作的對應關系,例如,IHZ頻率對應的 肢體動作為"握拳",2HZ頻率對應的肢體動作為"胳膊肘彎曲",3HZ頻率對應的肢體動作為 "〇k手勢",那么當用戶以IHZ的頻率做握拳動作時,根據(jù)獲取到的有效表面肌電信號的頻 率確定用戶的肢體動作為握拳。
[0112] 本發(fā)明實施例,通過獲取多個通道的表面肌電信號,根據(jù)多個通道的表面肌電信 號確定有效表面肌電信號;然后,確定有效表面肌電信號的頻率,最后,根據(jù)表面肌電信號 的頻率確定多個通道的表面肌電信號對應的肢體動作。由于表面肌電信號的頻率與信號強 度等特征無關,因此,本實施例的方法能顯著提高基于表面肌電信號的動作識別的準確率。 而且以頻率作為識別特征,用戶不需要進行大幅度的動作,給用戶帶來更好的體驗。
[0113] 另外,本實施例的方法,具有很好的抗干擾性能,能有效抵抗無關動作所產(chǎn)生的肌 電噪音干擾,用戶可在跑步、開車、做家務等非靜止條件下使用。并且不受使用過程中皮膚 濕度變化、電極接觸情況變化、肌肉疲勞程度等因素的影響,穩(wěn)定性高。用戶使用方便,無需 事先采集用戶訓練數(shù)據(jù),每次使用前也無需重新訓練。
[0114] 本發(fā)明實施例二中將對實施例一中步驟103進行詳細說明,圖2為本發(fā)明實施例 二提供的一種有效表面肌電信號的頻率確定方法,如圖2所示,本實施例的方法包括以下 步驟:
[0115] 步驟201、分別計算有效表面肌電信號與多個正余弦矩陣的相關系數(shù),其中,正余 弦矩陣由基頻和倍頻的正弦函數(shù)與余弦函數(shù)組成,每個正余弦矩陣的基頻不同。
[0116] 假設肢體動作可能出現(xiàn)的頻率為fl,…,fn,那么選取以Π ,…,fn為基頻的正余 弦矩陣為對照。分別將有效表面肌電信號與這些正余弦矩陣進行CCA運算,獲取有效表面 肌電信號與各正余弦矩陣的相關系數(shù)。
[0117] 記η通道的有效表面肌電信號為
分別代 表每個通道的信號,正余弦矩陣為y = [cos (2 π以),sin (2 π以),cos (4 π以),sin (4 π f 彳)]T,f 1是基頻。則CCA可以定義為如下問題:分別尋找向量^和wy,使得x和y在向量 Wx和Wx上的投影
之間的相關值最大。也就是使得下式中的P最大:
[0119] 其中Cxy表示X,y的互相關矩陣,Cxx表示X的自相關矩陣,C yy表示y的自相關矩 陣。尋找向量Wx和Wy的方法如下:
[0120] 第一步、通過拉格朗日算法,構建如下拉格朗日算子:
[0122] 第二步、將L分別對Wx和Wy求偏導,得到:
[0125] 從而得到公式1和公式2 :
[0128] 根據(jù)公式2可以求出Wx,根據(jù)公式1可以求出Wy,通過公式2可以看出根據(jù)公式2 求W x的過程被轉換為特征值分解問題,將Wx和Wy代入到P的定義中得到相關系數(shù)。
[0129] 步驟202、判斷有效表面肌電信號與多個正余弦矩陣的相關系數(shù)中的最大相關系 數(shù)是否大于預設的相關系數(shù)。
[0130] 在計算出有效表面肌電信號與每個正余弦矩陣的相關系數(shù)后,找出最大相關系 數(shù),判斷該最大相關系數(shù)是否大于預設的相關系數(shù)。
[0131] 步驟203、若最大相關系數(shù)大于預設的相關系數(shù),則將最大相關系數(shù)對應的正余弦 矩陣的基頻作為有效表面肌電信號的頻率。
[0132] 若最大相關系數(shù)大于預設的相關系數(shù),說明有效表面肌電信號具備最大相關系數(shù) 對應的正余弦矩陣的頻率,將最大相關系數(shù)對應的正余弦矩陣的基頻作為有效表面肌電信 號的頻率。
[0133] 圖3為本發(fā)明實施例三提供的基于表面肌電信號的動作識別方法的流程圖,本實 施例的方法與實施例一的區(qū)別在于:本實施例中,將結合表面肌電信號的頻率和幅值特征 確定表面肌電信號對應的肢體動作。
[0134] 步驟301、獲取多個通道的表面肌電信號。
[0135] 步驟302、根據(jù)多個通道的表面肌電信號確定有效表面肌電信號。
[0136] 根據(jù)多個通道的表面肌電信號確定有效表面肌電信號,具體為:將多個通道的表 面肌電信號疊加在一起,對疊加后的表面肌電信號除以通道數(shù)量得到單通道的表面肌電信 號;從單通道的表面肌電信號的起始時間開始,在每個滑動時刻對單通道的表面肌電信號 進行滑動得到每個滑動時刻對應的窗口,確定每個滑動時刻對應的窗口序列,計算每個滑 動時刻對應的窗口序列的肌電信號平均幅值,其中,每個滑動時刻之間相差一個滑動間隔, 窗口序列的表面肌電信號平均幅值為窗口序列內表面肌電信號的幅值的絕對值的平均值, 滑動時刻對應的窗口序列包括滑動時刻對應的窗口以及滑動時刻之前的N-I個滑動時刻 對應的N-I個窗口共N個連續(xù)的窗口,N為大于等于2的正整數(shù)。當每個滑動時刻中的滑 動時刻T對應的窗口序列的表面肌電信號平均幅值不小于預設幅值時,將滑動時刻T對應 的窗口序列的起始時間作為有效表面肌電信號的起始時間,將有效表面肌電信號的起始時 間加上預設時間得到有效表面肌電信號的截止時間,截取開始時間和所述截止時間之間的 多個通道的表面肌電信號作為有效表面肌電信號。其中,預設幅值可以為多個通道的表面 肌電信號疊加后的信號的幅值的絕對值的平均值。
[0137] 步驟303、確定有效表面肌電信號的頻率。
[0138] 確定有效表面肌電信號的頻率,具體為:分別計算有效表面肌電信號與多個正余 弦矩陣的相關系數(shù),其中,正余弦矩陣由基頻和倍頻的正弦函數(shù)與余弦函數(shù)組成,每個正余 弦矩陣的基頻不同;判斷有效表面肌電信號與多個正余弦矩陣的相關系數(shù)中的最大相關系 數(shù)是否大于預設的相關系數(shù);若最大相關系數(shù)大于預設的相關系數(shù),則將最大相關系數(shù)對 應的正余弦矩陣的基頻作為有效表面肌電信號的頻率。
[0139] 步驟301-303的具體實現(xiàn)方式可以參照實施例一和實施例二的相關描述,這里不 再贅述。
[0140] 步驟304、提取有效表面肌電信號的幅值特征。
[0141] 提取有效表面肌電信號的幅值特征,具體可以為:首先,對有效表面肌電信號的每 個通道的表面肌電信號分別進行滑動窗口處理,得到多個滑動窗口,例如滑動窗口的寬度 為100ms,滑動間隔為100ms。然后,計算有效表面肌電信號的每個通道的表面肌電信號的 每個滑動窗口的平均幅值,其中,每個滑動窗口的平均幅值為每個滑動窗口內表面肌電信 號的幅值的絕對值的平均值,將有效表面肌電信號的每個滑動窗口的平均幅值作為有效表 面肌電信號的幅值特征。
[0142] 需說明的時,本實施例中,步驟303和步驟304在執(zhí)行時并沒有先后順序,也可以 先執(zhí)行步驟304,再執(zhí)行步驟303。
[0143] 步驟305、根據(jù)有效表面肌電信號的幅值特征和有效表面肌電信號的頻率確定多 個通道的表面肌電信號對應的肢體動作。
[0144] 具體地,首先,根據(jù)有效表面肌電信號的頻率確定多個通道的表面肌電信號對應 的多個備選肢體動作,本實施例中,每個頻率可以對應多個肢體動作,例如IHZ的頻率可以 分別對應以下三種肢體動作:"握拳"、"0K手勢"和"胳膊肘彎曲"。那么,當確定表面肌電 信號的頻率為IHZ時,表面肌電信號對應上述三個備選肢體動作。然后,將有效表面肌電信 號的幅值特征與預先訓練得到多個備選肢體動作的