本發(fā)明涉及身份識(shí)別
技術(shù)領(lǐng)域:
,具體涉及一種基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法。
背景技術(shù):
:傳統(tǒng)的身份識(shí)別方法,比如秘鑰、口令等方法,需要用戶對(duì)秘鑰進(jìn)行記錄,上述的身份識(shí)別方法需要記錄秘鑰、口令信息,不僅操作繁瑣,而且還會(huì)存在秘鑰、口令遺忘或者丟失的可能性。而常用生物身份識(shí)別方法,比如虹膜識(shí)別、指紋識(shí)別等,雖然無需用戶記憶秘鑰且識(shí)別率很高,但是有著許多破解的方法。比如通過佩戴特制的隱形眼鏡可以騙過虹膜識(shí)別;通過特制的乳膠手指可以騙過指紋識(shí)別等。傳統(tǒng)的生物身份識(shí)別逐漸轉(zhuǎn)向心電信號(hào)等生物特征的識(shí)別。心電信號(hào)作為普世性的生物特征信號(hào),且因人的身體、心臟狀況不同,因人而異,且在靜息狀態(tài)具有長(zhǎng)期穩(wěn)定性,非常適合用于身份識(shí)別。目前,心電識(shí)別方法處于發(fā)展階段。復(fù)雜度低的算法,往往識(shí)別率不夠高;而精度高的方法往往計(jì)算量很大,無法很好的用在各種平臺(tái)上。因此,本文提出一種精度高、識(shí)別率高且計(jì)算復(fù)雜度低的心電身份識(shí)別方法。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的是:提供一種基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法,方法精度高、識(shí)別率高且計(jì)算復(fù)雜度低。為實(shí)現(xiàn)上述目的,本方法發(fā)明采用的技術(shù)方案是:基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法,包括如下步驟:S100、心電信號(hào)預(yù)處理步驟,對(duì)采集的心電信號(hào)進(jìn)行濾波、去噪處理,提取心電信號(hào)的瞬時(shí)頻率,在瞬時(shí)頻率上尋找極大值點(diǎn),再在極大值附近尋找尖峰狀波的波峰。截取出每次尖峰狀波的波峰間期的波形,調(diào)整每個(gè)波形的長(zhǎng)度,將每個(gè)波形變?yōu)楣潭ㄩL(zhǎng)度;S101、識(shí)別模型的計(jì)算步驟,把截取好的心跳數(shù)據(jù)分為屬于用戶的一類及不屬于用戶的一類,使用固定長(zhǎng)度后的單次尖峰狀波的波峰間期波形數(shù)據(jù),以及該次心跳的時(shí)間長(zhǎng)度作為特征來分類;S102、構(gòu)建二叉樹狀分類器對(duì)心跳數(shù)據(jù)進(jìn)行分類,樹的根節(jié)點(diǎn)對(duì)應(yīng)所有的數(shù)據(jù),以根節(jié)點(diǎn)為例,隨機(jī)選取特征維度和閾值,把該節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)分為兩類,用分裂后信息熵最小的一次作為實(shí)際分裂閾值;S103、從根節(jié)點(diǎn)開始,對(duì)數(shù)據(jù)進(jìn)行分裂,當(dāng)節(jié)點(diǎn)的深度到達(dá)預(yù)設(shè)值16層時(shí),或者當(dāng)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)量小于10個(gè)時(shí),或者當(dāng)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)全屬于用戶或全不屬于用戶時(shí),停止分裂;S104、識(shí)別模型的使用,對(duì)于需要判斷身份的心電信號(hào),先對(duì)其進(jìn)行預(yù)處理操作,然后將提取到的一次心跳數(shù)據(jù)輸入到建立好的二叉樹狀模型中,從根節(jié)點(diǎn)開始,利用根節(jié)點(diǎn)記錄的特征維度與閾值,查找到葉子節(jié)點(diǎn)為止,判斷心跳數(shù)據(jù)位于子節(jié)點(diǎn)的位置,若該葉子節(jié)點(diǎn)屬于該用戶,則認(rèn)為輸入的心跳數(shù)據(jù)屬于該用戶,反之則不屬于。本方法發(fā)明還存在以下附加特征:所述步驟S100中,對(duì)采集的心電信號(hào)采用FIR帶通濾波器濾波,使用Fstop1=1Hz,F(xiàn)pass1=2Hz,F(xiàn)pass2=99Hz,F(xiàn)stop2=100Hz的帶通Equiripple濾波器對(duì)原始心電信號(hào)進(jìn)行濾波,將濾波后信號(hào)的幅值調(diào)整到[1,2]區(qū)間,將該信號(hào)進(jìn)行希爾波特變換,提取瞬時(shí)頻率,將調(diào)整后的信號(hào)與進(jìn)行卷積,得到對(duì)應(yīng)的對(duì)偶信號(hào),以對(duì)偶信號(hào)為虛部,調(diào)整后的信號(hào)為實(shí)部,計(jì)算該信號(hào)對(duì)應(yīng)的瞬時(shí)相位,對(duì)相位求導(dǎo),得到瞬時(shí)頻率。取瞬時(shí)頻率信號(hào)最大值的二分之一作為閾值,尋找所有幅值大于閾值的極大值點(diǎn),方法如下:對(duì)瞬時(shí)頻率信號(hào)進(jìn)行差分,若差分信號(hào)某個(gè)點(diǎn)幅值其大于零,后一個(gè)采樣點(diǎn)幅值小于零,且其差分前信號(hào)的幅值大于閾值,則其為所需的極大值點(diǎn),在檢測(cè)到極致點(diǎn)的時(shí)間位置的附近,尋找經(jīng)過濾波后的原始波形的極值點(diǎn),找到了尖峰狀波的波峰。對(duì)尖峰狀波的波峰間期時(shí)間長(zhǎng)度進(jìn)行提取,該提取方法為:設(shè)采樣率為Fs,則一個(gè)尖峰狀波的波峰間期的采樣間隔數(shù)量除以采樣率即為尖峰狀波的波峰間期時(shí)間長(zhǎng)度;對(duì)于尖峰狀波的波峰波形數(shù)據(jù)的長(zhǎng)度放縮,其方法為:設(shè)尖峰狀波的波峰間期的波形數(shù)據(jù)為yi,其長(zhǎng)度為N,構(gòu)造以1/(N-1)為步長(zhǎng),從0到1的數(shù)組xi,設(shè)波形固定的長(zhǎng)度為M,構(gòu)造從0到1,步長(zhǎng)為1/(M-1)的數(shù)組xii,xi與yi一一對(duì)應(yīng),以xi、yi為標(biāo)準(zhǔn),尋找xii對(duì)應(yīng)的yii,M的值為20,計(jì)算yii每個(gè)元素的詳細(xì)步驟如下:對(duì)于xii里每個(gè)元素,尋找其在xi的區(qū)間,設(shè)xii的元素為x,其對(duì)應(yīng)帶求的yii的元素為y,x所在區(qū)間為[x1,x2],x1與x2相鄰,且屬于xi,x1與yi里的元素y1對(duì)應(yīng),x2與yi里的元素y2對(duì)應(yīng),則y=y(tǒng)1+(x-x1)*(y1-y2)/(x1-x2)對(duì)xii里的所有元素執(zhí)行上述操作,即可計(jì)算出yii,yii即為固定長(zhǎng)度后的尖峰狀波的波峰間期波形數(shù)據(jù),其長(zhǎng)度為20。所述步驟S101中,識(shí)別模型為二值分類器,在預(yù)處理中得到了固定長(zhǎng)度后的尖峰狀波的波峰間期數(shù)據(jù),和該尖峰狀波的波峰間期的時(shí)間長(zhǎng)度,固定長(zhǎng)度的波形數(shù)據(jù)為20維,時(shí)間長(zhǎng)度為1維,以21維作為特征,構(gòu)建樹狀模型;記錄一名用戶的5分鐘靜息狀態(tài)下的心電數(shù)據(jù),得到該名用戶的每次尖峰狀波的波峰間期波形和每次尖峰狀波的波峰間期波形對(duì)應(yīng)的時(shí)間長(zhǎng)度,再記錄多名用戶的心電數(shù)據(jù),并做同樣處理,記屬于用戶的數(shù)據(jù)的類別為1,不屬于的類別為0,設(shè)一個(gè)尖峰狀波的波峰間期波形數(shù)據(jù)、以及對(duì)應(yīng)的尖峰狀波的波峰時(shí)間長(zhǎng)度,和該尖峰狀波的波峰間期的類別構(gòu)成一個(gè)樣本。構(gòu)建二叉樹狀分類模型中,包括:用于記錄節(jié)點(diǎn)編號(hào)字段Node_ID,節(jié)點(diǎn)深度的字段Depth,用于記錄左子節(jié)點(diǎn)編號(hào)的字段L_child,用于記錄右子節(jié)點(diǎn)編號(hào)的字段R_child,選取維度的字段Dim,閾值的字段Thrs,節(jié)點(diǎn)類別的字段Label,和節(jié)點(diǎn)屬性的字段Is_leaf。所述步驟c中,信息熵計(jì)算方法如下:統(tǒng)計(jì)一個(gè)數(shù)據(jù)集里,每類數(shù)據(jù)出現(xiàn)的概率pi,i為類別標(biāo)號(hào),信息熵=Σ-pilog2(pi)屬于用戶類數(shù)據(jù)的概率為p,則信息熵計(jì)算公式變?yōu)椋盒畔㈧兀絧·log2(p)+(1-p)log2(1-p)在計(jì)算識(shí)別模型前,先計(jì)算出當(dāng)p為0,0.1,0.2,0.3...,1時(shí)對(duì)應(yīng)的信息熵,將其存儲(chǔ)在計(jì)算機(jī)內(nèi)存里,之后在計(jì)算識(shí)別模型時(shí),使用預(yù)先計(jì)算好的信息熵做二次樣條插值。所述步驟S104中,對(duì)于待識(shí)別身份的心電數(shù)據(jù),先對(duì)其進(jìn)行預(yù)處理,取出1次尖峰狀波的波峰間期固定后的波形數(shù)據(jù),以及對(duì)應(yīng)的尖峰狀波的波峰間期時(shí)間長(zhǎng)度,組成21維的特征樣本。與現(xiàn)有技術(shù)相比,本發(fā)明具備的技術(shù)效果為:該方法在計(jì)算識(shí)別模型時(shí),更加快捷有效,且不損失識(shí)別精度;另外,在建立識(shí)別模型后,相比于其他方法,僅需一次心跳的數(shù)據(jù),就可判斷身份,簡(jiǎn)單,快速,方便。另外,該方法計(jì)算量低,有較好的可實(shí)施性,結(jié)果也更為精確。除了上面所描述的目的、特征和優(yōu)點(diǎn)之外,本發(fā)明還有其它的目的、特征和優(yōu)點(diǎn)。下面將參照?qǐng)D,對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說明。附圖說明構(gòu)成本申請(qǐng)的一部分的說明書附圖用來提供對(duì)本發(fā)明的進(jìn)一步理解,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:圖1是基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法的邏輯框圖;圖2是基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法的流程圖;圖3是基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法中的原始的心電信號(hào)圖;圖4是基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法中的原始的心電信號(hào)圖濾波處理后的示意圖;圖5是基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法中的經(jīng)過濾波處理后的瞬時(shí)頻率提取到的瞬時(shí)相位圖;圖6是基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法中提取到的極大值點(diǎn)的示意圖;圖7是基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法中,在檢測(cè)到極致點(diǎn)的時(shí)間位置的附近,尋找經(jīng)過濾波后的原始波形的極值點(diǎn),找到的尖峰狀波的波峰圖。具體實(shí)施方式結(jié)合圖1至圖7,對(duì)本發(fā)明作進(jìn)一步地說明:基于隨機(jī)樹的心電信號(hào)快速身份識(shí)別方法,包括如下步驟:S100、心電信號(hào)預(yù)處理步驟,對(duì)采集的心電信號(hào)進(jìn)行濾波、去噪處理,提取心電信號(hào)的瞬時(shí)頻率,在瞬時(shí)頻率上尋找極大值點(diǎn),再在極大值附近尋找尖峰狀波的波峰。截取出每次尖峰狀波的波峰間期的波形,調(diào)整每個(gè)波形的長(zhǎng)度,將每個(gè)波形變?yōu)楣潭ㄩL(zhǎng)度;S101、識(shí)別模型的計(jì)算步驟,把截取好的心跳數(shù)據(jù)分為屬于用戶的一類及不屬于用戶的一類,使用固定長(zhǎng)度后的單次尖峰狀波的波峰間期波形數(shù)據(jù),以及該次心跳的時(shí)間長(zhǎng)度作為特征來分類;S102、構(gòu)建二叉樹狀分類器對(duì)心跳數(shù)據(jù)進(jìn)行分類,樹的根節(jié)點(diǎn)對(duì)應(yīng)所有的數(shù)據(jù),以根節(jié)點(diǎn)為例,隨機(jī)選取特征維度和閾值,把該節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)分為兩類,用分裂后信息熵最小的一次作為實(shí)際分裂閾值;S103、從根節(jié)點(diǎn)開始,對(duì)數(shù)據(jù)進(jìn)行分裂,當(dāng)節(jié)點(diǎn)的深度到達(dá)預(yù)設(shè)值16層時(shí),或者當(dāng)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)量小于10個(gè)時(shí),或者當(dāng)節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)全屬于用戶或全不屬于用戶時(shí),停止分裂;S104、識(shí)別模型的使用,對(duì)于需要判斷身份的心電信號(hào),先對(duì)其進(jìn)行預(yù)處理操作,然后將提取到的一次心跳數(shù)據(jù)輸入到建立好的二叉樹狀模型中,從根節(jié)點(diǎn)開始,利用根節(jié)點(diǎn)記錄的特征維度與閾值,查找到葉子節(jié)點(diǎn)為止,判斷心跳數(shù)據(jù)位于子節(jié)點(diǎn)的位置,若該葉子節(jié)點(diǎn)屬于該用戶,則認(rèn)為輸入的心跳數(shù)據(jù)屬于該用戶,反之則不屬于。所述步驟S100中,通常情況下,原始的心電信號(hào)如圖3所示,對(duì)采集的心電信號(hào)采用FIR帶通濾波器濾波,使用Fstop1=1Hz,F(xiàn)pass1=2Hz,F(xiàn)pass2=99Hz,F(xiàn)stop2=100Hz的帶通Equiripple濾波器對(duì)原始心電信號(hào)進(jìn)行濾波,結(jié)合圖4,雖然這種方法會(huì)去除一些心電的有效信號(hào),但是其去除絕大多數(shù)其它與心電混合在一起的信號(hào)的干擾,能有效提高后續(xù)識(shí)別的精度;將濾波后信號(hào)的幅值調(diào)整到[1,2]區(qū)間,將該信號(hào)進(jìn)行希爾波特變換,提取瞬時(shí)頻率,將調(diào)整后的信號(hào)與進(jìn)行卷積,得到對(duì)應(yīng)的對(duì)偶信號(hào),以對(duì)偶信號(hào)為虛部,調(diào)整后的信號(hào)為實(shí)部,計(jì)算該信號(hào)對(duì)應(yīng)的瞬時(shí)相位,對(duì)相位求導(dǎo),得到瞬時(shí)頻率。提取到的瞬時(shí)相位如圖5所示;取瞬時(shí)頻率信號(hào)最大值的二分之一作為閾值,尋找所有幅值大于閾值的極大值點(diǎn),提取到的極大值點(diǎn)如圖6所示,方法如下:對(duì)瞬時(shí)頻率信號(hào)進(jìn)行差分,若差分信號(hào)某個(gè)點(diǎn)幅值其大于零,后一個(gè)采樣點(diǎn)幅值小于零,且其差分前信號(hào)的幅值大于閾值,則其為所需的極大值點(diǎn),在檢測(cè)到極致點(diǎn)的時(shí)間位置的附近,尋找經(jīng)過濾波后的原始波形的極值點(diǎn),找到了尖峰狀波的波峰。結(jié)合圖7所示;對(duì)尖峰狀波的波峰間期時(shí)間長(zhǎng)度進(jìn)行提取,該提取方法為:設(shè)采樣率為Fs,則一個(gè)尖峰狀波的波峰間期的采樣間隔數(shù)量除以采樣率即為尖峰狀波的波峰間期時(shí)間長(zhǎng)度;對(duì)于尖峰狀波的波峰波形數(shù)據(jù)的長(zhǎng)度放縮,其方法為:設(shè)尖峰狀波的波峰間期的波形數(shù)據(jù)為yi,其長(zhǎng)度為N,構(gòu)造以1/(N-1)為步長(zhǎng),從0到1的數(shù)組xi,設(shè)波形固定的長(zhǎng)度為M,構(gòu)造從0到1,步長(zhǎng)為1/(M-1)的數(shù)組xii,xi與yi一一對(duì)應(yīng),以xi、yi為標(biāo)準(zhǔn),尋找xii對(duì)應(yīng)的yii,M的值為20,計(jì)算yii每個(gè)元素的詳細(xì)步驟如下:對(duì)于xii里每個(gè)元素,尋找其在xi的區(qū)間,設(shè)xii的元素為x,其對(duì)應(yīng)帶求的yii的元素為y,x所在區(qū)間為[x1,x2],x1與x2相鄰,且屬于xi,x1與yi里的元素y1對(duì)應(yīng),x2與yi里的元素y2對(duì)應(yīng),則y=y(tǒng)1+(x-x1)*(y1-y2)/(x1-x2)對(duì)xii里的所有元素執(zhí)行上述操作,即可計(jì)算出yii,yii即為固定長(zhǎng)度后的尖峰狀波的波峰間期波形數(shù)據(jù),其長(zhǎng)度為20。所述步驟S101中,識(shí)別模型為二值分類器,其可分辨輸入的數(shù)據(jù)是否屬于某用戶,利用機(jī)器學(xué)習(xí)的方法,建立以樹狀的識(shí)別模型,在預(yù)處理中得到了固定長(zhǎng)度后的尖峰狀波的波峰間期數(shù)據(jù),和該尖峰狀波的波峰間期的時(shí)間長(zhǎng)度。固定長(zhǎng)度的波形數(shù)據(jù)為20維,時(shí)間長(zhǎng)度為1維,以這21維作為特征,構(gòu)建樹狀模型。記錄一名用戶的5分鐘靜息狀態(tài)下的心電數(shù)據(jù),利用前面預(yù)處理的方法,得到該名用戶的每次尖峰狀波的波峰間期波形(長(zhǎng)度固定后的)和每次尖峰狀波的波峰間期波形對(duì)應(yīng)的時(shí)間長(zhǎng)度,再記錄多名用戶的心電數(shù)據(jù),并做同樣處理,記屬于用戶的數(shù)據(jù)的類別為1,不屬于的類別為0,設(shè)一個(gè)尖峰狀波的波峰間期波形數(shù)據(jù)、以及對(duì)應(yīng)的尖峰狀波的波峰時(shí)間長(zhǎng)度,和該尖峰狀波的波峰間期的類別構(gòu)成一個(gè)樣本。構(gòu)建二叉樹狀分類模型中,包括:用于記錄節(jié)點(diǎn)編號(hào)字段Node_ID,節(jié)點(diǎn)深度的字段Depth,用于記錄左子節(jié)點(diǎn)編號(hào)的字段L_child,用于記錄右子節(jié)點(diǎn)編號(hào)的字段R_child,選取維度的字段Dim,閾值的字段Thrs,節(jié)點(diǎn)類別的字段Label,和節(jié)點(diǎn)屬性的字段Is_leaf;樣本的屬性如下表所示:Wave與Time構(gòu)成一個(gè)樣本的特征,特征為21維。設(shè)所有的樣本存儲(chǔ)于線性的存儲(chǔ)結(jié)構(gòu)中,構(gòu)建該結(jié)構(gòu)的存儲(chǔ)索引。索引為一整型數(shù)據(jù)。樹狀結(jié)構(gòu)由節(jié)點(diǎn)構(gòu)成,為二叉樹。節(jié)點(diǎn)的所有屬性如下:構(gòu)建二叉樹狀分類模型的步驟如下:a、設(shè)置模型訓(xùn)練參數(shù):最大深度值為16、節(jié)點(diǎn)數(shù)據(jù)最少量值為10、隨機(jī)次數(shù)N=10;b、構(gòu)建存儲(chǔ)樹的空鏈表,鏈表里的元素均為節(jié)點(diǎn),鏈表下表從1開始;構(gòu)建整形變量Point,用以標(biāo)記當(dāng)前處理節(jié)點(diǎn)的下表;構(gòu)建整形變量Count,用以標(biāo)記鏈表的長(zhǎng)度;c、構(gòu)建根節(jié)點(diǎn),將所有的數(shù)據(jù)分配給該節(jié)點(diǎn),將其深度設(shè)置為0;將所有數(shù)據(jù)配置給該節(jié)點(diǎn):令節(jié)點(diǎn)對(duì)應(yīng)樣本的索引的開始下標(biāo)Data_start=1,節(jié)點(diǎn)對(duì)應(yīng)樣本的數(shù)量Data_length=所有樣本數(shù)量,節(jié)點(diǎn)的屬性Is_leaf=0;提取該節(jié)點(diǎn)對(duì)應(yīng)的所有樣本的Type,計(jì)算信息熵;令該節(jié)點(diǎn)的數(shù)據(jù)的類別Label,為其對(duì)應(yīng)樣本的Type的眾數(shù);d、將根節(jié)點(diǎn)插入鏈表的后部,令Point=1,Count=1;e、當(dāng)Point>Count時(shí),識(shí)別模型構(gòu)建完成;f、檢驗(yàn)下標(biāo)為Point的節(jié)點(diǎn)深度是否大于最大深度,且節(jié)點(diǎn)數(shù)據(jù)量小于節(jié)點(diǎn)數(shù)據(jù)最少量,如果是,則認(rèn)為該節(jié)點(diǎn)為葉子節(jié)點(diǎn),把節(jié)點(diǎn)的屬性Is_leaf配置為1,Point=Point+1;并跳轉(zhuǎn)到步驟d;g、取出Point對(duì)應(yīng)節(jié)點(diǎn)的對(duì)應(yīng)的樣本下標(biāo),再取出下標(biāo)對(duì)應(yīng)的樣本;在這些樣本上隨機(jī)N次維數(shù),每次選取維度時(shí),在該維度上隨機(jī)取N次閾值,閾值在該維度數(shù)據(jù)的最大值與最小值之間;嘗試以每組維度與特征對(duì)樣本,進(jìn)行分割,分為兩份,分別計(jì)算兩類的信息熵,把兩類信息熵按照數(shù)據(jù)量大小加權(quán)起來,在這N2次嘗試中,取出加權(quán)信息熵最小時(shí)對(duì)應(yīng)的閾值與維度,如果最小的加權(quán)信息熵比分裂前信息熵小,就對(duì)該節(jié)點(diǎn)分裂,把Point對(duì)應(yīng)節(jié)點(diǎn)所選用于分裂數(shù)據(jù)的維度Dim配置為選取的維度,把選取維度對(duì)應(yīng)的閾值Thrs配置為選取的閾值;否則,認(rèn)為該節(jié)點(diǎn)為葉子節(jié)點(diǎn),把節(jié)點(diǎn)的屬性Is_leaf配置為1,Point=Point+1;并跳轉(zhuǎn)到步驟d;h、把Point對(duì)應(yīng)的樣本,按照前面提取的維度與閾值分裂為兩份,第一份為小于閾值的樣本,第二份與大于等于閾值的樣本,建立新的兩個(gè)節(jié)點(diǎn),把這兩個(gè)節(jié)點(diǎn)插入到存儲(chǔ)樹的鏈表的后面。對(duì)于第一個(gè)插入的節(jié)點(diǎn)、也就是下標(biāo)為Count+1的節(jié)點(diǎn),將其Depth配置為Point節(jié)點(diǎn)的深度Depth的值加1,檢驗(yàn)下標(biāo)為Count+1節(jié)點(diǎn)深度是否大于最大深度,且節(jié)點(diǎn)數(shù)據(jù)量是否小于節(jié)點(diǎn)數(shù)據(jù)最少量,如果是,就將其節(jié)點(diǎn)的屬性Is_leaf屬性配置為1,否則配置為0;將該節(jié)點(diǎn)對(duì)應(yīng)樣本的索引的開始下標(biāo)Data_start屬性配置為Point節(jié)點(diǎn)對(duì)應(yīng)樣本的索引的開始下標(biāo)Data_start值,并將該節(jié)點(diǎn)對(duì)應(yīng)樣本的數(shù)量Data_length屬性配置為分裂后第一份數(shù)據(jù)的長(zhǎng)度,將節(jié)點(diǎn)數(shù)據(jù)的類別Label屬性配置為第一份數(shù)據(jù)Tpye的眾數(shù);對(duì)于Count+1的節(jié)點(diǎn),將節(jié)點(diǎn)的深度Depth配置為Point對(duì)應(yīng)節(jié)點(diǎn)的深度Depth的值加1,檢驗(yàn)其深度是否大于最大深度,且節(jié)點(diǎn)數(shù)據(jù)量是否小于節(jié)點(diǎn)數(shù)據(jù)最少量,如果是,就將節(jié)點(diǎn)的屬性Is_leaf屬性配置為1,否則配置為0;將節(jié)點(diǎn)對(duì)應(yīng)樣本的索引的開始下標(biāo)Data_start屬性配置為Point對(duì)應(yīng)節(jié)點(diǎn)對(duì)應(yīng)樣本的索引的開始下標(biāo)Data_start值加第一份數(shù)據(jù)的長(zhǎng)度,并將該節(jié)點(diǎn)對(duì)應(yīng)樣本的數(shù)量Data_length屬性配置為分裂后第二份數(shù)據(jù)的長(zhǎng)度,將節(jié)點(diǎn)數(shù)據(jù)的類別Label屬性配置為第二份數(shù)據(jù)Tpye的眾數(shù),將下標(biāo)為Point的節(jié)點(diǎn)的記錄左子節(jié)點(diǎn)編號(hào)L_child配置為Count+1;記錄右子節(jié)點(diǎn)編號(hào)R_child配置為Count+2,將取出樣本在下標(biāo)數(shù)據(jù)里對(duì)應(yīng)位置的下標(biāo)進(jìn)行重排序;將第一份數(shù)據(jù)的下標(biāo)排在前面,第二份數(shù)據(jù)的下標(biāo)排在后面,令Count=Count+2;令Point=Point+1;并跳轉(zhuǎn)到步驟d。所述步驟c中,信息熵計(jì)算方法如下:統(tǒng)計(jì)一個(gè)數(shù)據(jù)集里,每類數(shù)據(jù)出現(xiàn)的概率pi,i為類別標(biāo)號(hào),信息熵=Σ-pilog2(pi)屬于用戶類數(shù)據(jù)的概率為p,則信息熵計(jì)算公式變?yōu)椋盒畔㈧兀絧·log2(p)+(1-p)log2(1-p)在計(jì)算識(shí)別模型前,先計(jì)算出當(dāng)p為0,0.1,0.2,0.3...,1時(shí)對(duì)應(yīng)的信息熵,將其存儲(chǔ)在計(jì)算機(jī)內(nèi)存里,之后在計(jì)算識(shí)別模型時(shí),使用預(yù)先計(jì)算好的信息熵做二次樣條插值。所述步驟S104中,對(duì)于待識(shí)別身份的心電數(shù)據(jù),先對(duì)其進(jìn)行預(yù)處理,取出1次尖峰狀波的波峰間期固定后的波形數(shù)據(jù),以及對(duì)應(yīng)的尖峰狀波的波峰間期時(shí)間長(zhǎng)度,組成21維的特征樣本。構(gòu)建Point,令Point=1;按照下標(biāo)為Point的節(jié)點(diǎn)里的屬性用于分裂數(shù)據(jù)的維度Dim,選取21維數(shù)據(jù)中用于分裂數(shù)據(jù)的維度Dim維的數(shù)據(jù),并將其與節(jié)點(diǎn)的屬性選取維度對(duì)應(yīng)的閾值Thrs比較,如果小于選取維度對(duì)應(yīng)的閾值Thrs,則令Point等于節(jié)點(diǎn)用于記錄左子節(jié)點(diǎn)編號(hào)L_child屬性,否則令其等于用于記錄右子節(jié)點(diǎn)編號(hào)R_child屬性,重復(fù)這一過程,直到下標(biāo)為Point的節(jié)點(diǎn)是葉子節(jié)點(diǎn)位置;提取下標(biāo)為Point的節(jié)點(diǎn)數(shù)據(jù)的類別Label屬性,如果節(jié)點(diǎn)數(shù)據(jù)的類別Label等于1,則認(rèn)為這一次心跳的數(shù)據(jù)屬于該模型對(duì)應(yīng)的用戶,否則不屬于,以此判定識(shí)別結(jié)果。現(xiàn)有的尖峰狀波的波峰,就是R波的檢測(cè)方法多種多樣,包括小波變換法、差分閾值法、神經(jīng)網(wǎng)絡(luò)法、線性自適應(yīng)白噪聲濾波及帶通濾波器法等,采用本發(fā)明的R波的檢測(cè)方法的識(shí)別率更高,R波檢測(cè)方法識(shí)別率對(duì):現(xiàn)有的心電身份之別方法較多,包括奇異度相似度法、DTW模板匹配法、FFT-匹配算法、BP神經(jīng)網(wǎng)絡(luò)法及距離判別法等,采用本發(fā)明的心電身份識(shí)別方法識(shí)別率更高,而且識(shí)別時(shí)間更短,心電身份識(shí)別方法對(duì)比:方法識(shí)別率識(shí)別時(shí)間本文方法99.9%1.8s奇異度相似度法97.82%8sDTW模板匹配法97.3%4.4sFFT-匹配算法97.1%10sBP神經(jīng)網(wǎng)絡(luò)法96.3%未提及距離判別法95%未提及當(dāng)前第1頁1 2 3