本發(fā)明涉及一種音頻處理的睡眠期識(shí)別方法,屬于計(jì)算機(jī)應(yīng)用領(lǐng)域,針對(duì)人類(lèi)睡眠中REM和N-REM睡眠期的識(shí)別,以人在睡眠時(shí)REM和N-REM期的外部表現(xiàn)差異為切入點(diǎn),以快速傅立葉變換和機(jī)器學(xué)習(xí)為主要技術(shù)手段,實(shí)現(xiàn)了一種基于可采集音頻的智能設(shè)備的、無(wú)須外設(shè)支持的、非侵入式的睡眠REM、N-REM周期識(shí)別方法。
背景技術(shù):
睡眠期識(shí)別方法具有廣泛的應(yīng)用場(chǎng)景,如健康評(píng)估、情景智能、智能家居等。具體而言,睡眠期識(shí)別方法要求提供實(shí)時(shí)、準(zhǔn)確的睡眠期識(shí)別,如用戶(hù)正處于REM睡眠期、N-REM睡眠期??紤]到在現(xiàn)實(shí)生活中,睡眠的REM、N-REM期出現(xiàn)受到疲勞程度、睡前飲品、個(gè)體生理狀態(tài)影響,本方法提供了多種睡眠REM、N-REM模型進(jìn)行匹配。
現(xiàn)有的睡眠期識(shí)別方法有多導(dǎo)睡眠測(cè)試。該方法需要專(zhuān)業(yè)醫(yī)學(xué)儀器,綜合眼動(dòng)儀、腦電波數(shù)據(jù)對(duì)用戶(hù)的睡眠狀態(tài)進(jìn)行檢測(cè);該方法具有侵入式的特點(diǎn),需要佩戴肌電儀監(jiān)測(cè)眼球運(yùn)動(dòng),需要佩戴腦電圖相關(guān)設(shè)備監(jiān)測(cè)腦電波波動(dòng)狀況。因而該方式具有影響被測(cè)試者睡眠的特點(diǎn);并且由于其設(shè)備的專(zhuān)業(yè)性,并不適用與日常監(jiān)測(cè)。
而本方法提供了一種非侵入式的睡眠周期監(jiān)測(cè)方法,借助REM,N-REM睡眠期人的外部表現(xiàn)差異,使用具有音頻采集功能的智能設(shè)備對(duì)用戶(hù)的睡眠周期進(jìn)行輕量級(jí)、非侵入式的識(shí)別??梢詾槠渌?wù)需求方提供可靠的用戶(hù)睡眠周期識(shí)別結(jié)果。
技術(shù)實(shí)現(xiàn)要素:
發(fā)明目的:為了實(shí)現(xiàn)對(duì)REM、N-REM睡眠周期檢測(cè),同時(shí)克服傳統(tǒng)方式侵入式、高成本、依賴(lài)專(zhuān)業(yè)設(shè)備的方式,本發(fā)明公開(kāi)了一種基于音頻處理的睡眠期識(shí)別方法。該方法設(shè)備簡(jiǎn)單易獲取,現(xiàn)有的帶音頻采集功能的智能設(shè)備包括智能手機(jī)、智能手表等,就能夠提供準(zhǔn)確的睡眠周期識(shí)別服務(wù)。
由醫(yī)學(xué)知識(shí):人們正常的睡眠結(jié)構(gòu)周期分兩個(gè)時(shí)相:非快速眼動(dòng)睡眠期(N-REM)和快速眼動(dòng)睡眠期(REM)。N-REM與REM交替出現(xiàn),交替一次稱(chēng)為一個(gè)睡眠周期,兩種循環(huán)往復(fù),每夜通常有4~5個(gè)睡眠周期,每個(gè)周期90~110分鐘。
人的睡眠處于REM狀態(tài)時(shí),大腦的活躍程度等同甚至高于清醒狀態(tài),但由于此時(shí)人體感覺(jué)系統(tǒng)阻塞于丘腦區(qū),運(yùn)動(dòng)系統(tǒng)阻塞于脊髓部分被阻塞(眼肌、耳小骨的肌肉、呼吸肌除外),此時(shí)人睡眠的外部表現(xiàn)更加平穩(wěn),且伴隨心跳數(shù)和呼吸頻率的增加;處于N-REM狀態(tài)時(shí),(相對(duì)清醒狀態(tài))感覺(jué)中樞功能下降,來(lái)自大腦的指令減少,肌肉機(jī)能下降。
該睡眠周期的分布根據(jù)個(gè)體不同而有所不同,并且有研究成果表明咖啡因和酒精對(duì)人進(jìn)入REM睡眠期起抑制作用,同時(shí)該周期的分布也會(huì)受到疲勞程度、飲食狀況的影響,因而該周期的分布并不是固定不變的。
由人的睡眠處于REM狀態(tài)感覺(jué)系統(tǒng)阻塞于丘腦區(qū),運(yùn)動(dòng)系統(tǒng)阻塞于脊髓部分被阻塞,伴隨心跳數(shù)和呼吸頻率的增加所表現(xiàn)出的在睡眠中不同狀態(tài)所表現(xiàn)的外部特征不同為切入點(diǎn),本發(fā)明把音頻作為識(shí)別睡眠時(shí)探測(cè)人體外部特征的線(xiàn)索,利用能捕獲音頻的智能設(shè)備,利用相關(guān)的數(shù)據(jù)處理,機(jī)器學(xué)習(xí)等技術(shù)手段,得到用戶(hù)睡眠時(shí)的外部特征,從而評(píng)估用戶(hù)睡眠的實(shí)際周期分布情況。
技術(shù)方案:一種基于音頻處理的睡眠期識(shí)別方法,使用具有音頻采集和處理功能的智能設(shè)備,采集和處理人在睡眠期間產(chǎn)生的音頻;基于快速傅立葉變換、主成份分析、時(shí)序相關(guān)數(shù)字特征提取、統(tǒng)計(jì)學(xué)對(duì)采集到的音頻進(jìn)行數(shù)字特征提取,通過(guò)模式識(shí)別的方法對(duì)睡眠當(dāng)中出現(xiàn)的睡眠事件(打鼾、軀干運(yùn)動(dòng)、咳嗽、磨牙、夢(mèng)囈、無(wú)關(guān)事件)進(jìn)行識(shí)別,結(jié)合醫(yī)學(xué)眼動(dòng)期(Rapid Eyes Movement,REM)、非眼動(dòng)期(Non-Rapid Eyes Movement,N-REM)睡眠期人的外部表現(xiàn)差異,對(duì)人的睡眠進(jìn)行睡眠期的識(shí)別。
具體包含以下步驟:
1)具有音頻采集和處理功能的智能設(shè)備需放置在用戶(hù)入睡地點(diǎn)附近,保證用戶(hù)入睡地點(diǎn)在該設(shè)備的探測(cè)范圍內(nèi),保持該設(shè)備在用戶(hù)睡眠期間運(yùn)行;
2)設(shè)備在運(yùn)行期間通過(guò)音頻模塊采集音頻數(shù)據(jù),按照時(shí)間順序放置于內(nèi)存中,對(duì)數(shù)據(jù)進(jìn)行分幀分得一系列數(shù)據(jù)幀,并對(duì)每一個(gè)數(shù)據(jù)幀內(nèi)的數(shù)據(jù)進(jìn)行快速傅里葉變換,得到數(shù)據(jù)幀對(duì)應(yīng)的頻域表示,并將一系列數(shù)據(jù)幀對(duì)應(yīng)的頻域表示按時(shí)間順序緩存于內(nèi)存中;
3)對(duì)2)中得到的每一個(gè)數(shù)據(jù)幀中的各個(gè)頻段對(duì)應(yīng)的幅值累加得到一系列的幀頻域和,用滑動(dòng)窗口按照時(shí)間順序逐幀推移,推移同時(shí)對(duì)滑動(dòng)窗口內(nèi)的第一幀按照超均值n倍的方式添加事件標(biāo)記,產(chǎn)生事件序列S;
4)將3)中得到的事件序列S標(biāo)記有事件的幀的頻域信息進(jìn)行存儲(chǔ),組成由頻域信息和該頻域信息對(duì)應(yīng)的采樣時(shí)間t組成的一系列原始數(shù)據(jù)條目Ors;
5)對(duì)4)中得到的原始數(shù)據(jù)條目Ors,根據(jù)其采樣時(shí)間序列找出其中時(shí)間連續(xù)的條目,對(duì)于連續(xù)的條目進(jìn)行合并,組成幀頻域信息和采樣時(shí)間組成的事件條目e;整個(gè)事件序列S將被分割成由若干個(gè)e條目組成的事件條目序列Es=<e1,e2,...,ez>;
6)對(duì)5)中得到的Es序列,計(jì)算其中每個(gè)條目e的采樣時(shí)間跨度elength,和兩個(gè)相鄰條目的采樣時(shí)間間隔estep;若(1/elength)>l*estep(其中l(wèi)為可控參數(shù))則將該estep前后的兩個(gè)條目合并成新的條目em;整個(gè)Es序列將被重新組合成Ems=<em1,em2,...,emi>序列;
7)對(duì)6)中得到的Ems序列,計(jì)算其中每個(gè)條目em=<e1,e2,...,ej>的時(shí)序相關(guān)特征、頻域相關(guān)特征;將em條目中的每個(gè)幀頻域信息對(duì)應(yīng)的頻段計(jì)算平均值后歸一化,提取頻域均值統(tǒng)計(jì)特征;將時(shí)序相關(guān)特征attrt、頻域相關(guān)特征attrf、頻域均值統(tǒng)計(jì)特征atttrs、em對(duì)應(yīng)的開(kāi)始時(shí)間tstart、結(jié)束時(shí)間tend組成條目attr=<attrt,attrf,attrs,tstart,tend>;整個(gè)Ems序列將產(chǎn)生一系列的attr序列,記為Attrs=<attr1,attr2,...,attri>。
8)對(duì)7)中得到的Attrs序列,將其中每一個(gè)attr作為輸入送入機(jī)器學(xué)習(xí)訓(xùn)練完成的分類(lèi)算法進(jìn)行分類(lèi),確定該attr所描述的時(shí)間內(nèi)發(fā)生的事件為何種類(lèi)型的睡眠相關(guān)事件(打鼾、軀干運(yùn)動(dòng)、咳嗽、磨牙、夢(mèng)囈);將attr中的em的開(kāi)始時(shí)間tstart、結(jié)束時(shí)間tend、類(lèi)型識(shí)別結(jié)果r組成新的條目tempR=<tstart,tend,r>;整個(gè)Attrs序列將得到一系列tempR,構(gòu)成TempRs=<tempR1,tempR2,...,tempRi>序列。
9)對(duì)8)中得到的TempRs序列,構(gòu)造鍵值序列TVs,鍵為時(shí)間,值為睡眠狀態(tài)評(píng)估,鍵中的時(shí)間值跨度為用戶(hù)睡眠時(shí)長(zhǎng),值中的睡眠狀態(tài)評(píng)估值預(yù)設(shè)為a;依次處理TempRs中的條目tempR,根據(jù)tempR中的最小采樣時(shí)間和最大采樣時(shí)間確定TVs序列中需要調(diào)整的數(shù)值,根據(jù)類(lèi)型識(shí)別結(jié)果調(diào)整TVs序列中對(duì)應(yīng)的值;整個(gè)TempRs序列將被用來(lái)生成一個(gè)時(shí)間-睡眠狀態(tài)評(píng)估的鍵值序列TVs=<tv1,tv2,...,tvi>;
10)對(duì)9)中得到的TVs鍵值序列,結(jié)合睡眠醫(yī)學(xué)中的正常睡眠REM、N-REM周期模型、刺激飲料影響下的REM、N-REM睡眠周期模型N-REM睡眠周期模型、疲勞狀態(tài)下的REM、N-REM睡眠周期模型;選擇最合適的模型擬合,對(duì)TVs進(jìn)行調(diào)整得到用戶(hù)的REM、N-REM睡眠期識(shí)別結(jié)果。
附圖說(shuō)明
圖1為本發(fā)明智能設(shè)備端處理流程圖。
具體實(shí)施方式
下面結(jié)合具體實(shí)施例,進(jìn)一步闡明本發(fā)明,應(yīng)理解這些實(shí)施例僅用于說(shuō)明本發(fā)明而不用于限制本發(fā)明的范圍,在閱讀了本發(fā)明之后,本領(lǐng)域技術(shù)人員對(duì)本發(fā)明的各種等價(jià)形式的修改均落于本申請(qǐng)所附權(quán)利要求所限定的范圍。
1、硬件環(huán)境
具有音頻采集和處理功能的智能設(shè)備,能夠?qū)崿F(xiàn)以不低于600Hz的頻率采樣音頻的能力;具有不低于1MB的內(nèi)存;具備500MHz以上主頻的CPU;
2、應(yīng)用場(chǎng)景
在應(yīng)用本發(fā)明公開(kāi)的基于音頻處理的睡眠期識(shí)別方法,可以以系統(tǒng)后臺(tái)服務(wù)或應(yīng)用內(nèi)嵌模塊的形式進(jìn)行應(yīng)用。在具有音頻采集和處理功能的智能設(shè)備按照本發(fā)明所公開(kāi)的技術(shù)方案實(shí)現(xiàn)REM、N-REM睡眠周期識(shí)別。將具有音頻采集和處理功能的智能設(shè)備放置在能探測(cè)到用戶(hù)睡眠產(chǎn)生的事件音頻輻射范圍內(nèi),按照本發(fā)明所公開(kāi)的技術(shù)方案實(shí)現(xiàn)最終的識(shí)別結(jié)果是用戶(hù)在睡眠中REM、N-REM睡眠期的分布。
發(fā)明所涉及技術(shù)的典型應(yīng)用場(chǎng)景包括:日常睡眠監(jiān)測(cè)、睡眠質(zhì)量評(píng)估、生活習(xí)慣評(píng)估;且本發(fā)明所闡述的方法應(yīng)該用于醫(yī)學(xué)用途,僅作為日常監(jiān)測(cè)手段。應(yīng)用于日常睡眠監(jiān)測(cè)時(shí),可以?xún)H用于對(duì)短期睡眠的監(jiān)測(cè),也可以額外增加長(zhǎng)期睡眠狀況記錄功能,對(duì)長(zhǎng)期睡眠的REM、N-REM睡眠周期的分布規(guī)律進(jìn)行進(jìn)一步的分析、處理。用于隨眠質(zhì)量評(píng)估時(shí),本發(fā)明所闡述的方法提供了REM、N-REM睡眠周期的監(jiān)測(cè)手段,對(duì)全面的睡眠質(zhì)量評(píng)估有重要作用。應(yīng)用于生活習(xí)慣評(píng)估時(shí),本發(fā)明所闡述的方法監(jiān)測(cè)出的REM、N-REM周期結(jié)合醫(yī)學(xué)背景知識(shí)能夠得到關(guān)于用戶(hù)飲食、精神狀態(tài)、睡眠習(xí)慣等多方面的信息。
3、方法描述
本方法所涉及的使用具有音頻采集和處理功能的智能設(shè)備基于音頻處理的睡眠期識(shí)別方法,其設(shè)備應(yīng)當(dāng)放置在能探測(cè)到用戶(hù)睡眠產(chǎn)生的事件音頻輻射范圍內(nèi)。步驟如下:
1)具有音頻采集和處理功能的智能設(shè)備需放置在用戶(hù)入睡地點(diǎn)附近,保證用戶(hù)入睡地點(diǎn)在該設(shè)備的探測(cè)范圍內(nèi),保持該設(shè)備在用戶(hù)睡眠期間運(yùn)行;
2)設(shè)備在運(yùn)行期間通過(guò)音頻模塊采集音頻數(shù)據(jù),按照時(shí)間順序放置于內(nèi)存中,對(duì)數(shù)據(jù)進(jìn)行分幀分得一系列數(shù)據(jù)幀,并對(duì)每一個(gè)數(shù)據(jù)幀內(nèi)的數(shù)據(jù)進(jìn)行快速傅里葉變換,得到數(shù)據(jù)幀對(duì)應(yīng)的頻域表示,并將一系列數(shù)據(jù)幀對(duì)應(yīng)的頻域表示按時(shí)間順序緩存于內(nèi)存中;
3)對(duì)2)中得到的每一個(gè)數(shù)據(jù)幀中的各個(gè)頻段對(duì)應(yīng)的幅值累加得到一系列的幀頻域和,用滑動(dòng)窗口按照時(shí)間順序逐幀推移,推移同時(shí)對(duì)滑動(dòng)窗口內(nèi)的第一幀按照超均值n倍的方式添加事件標(biāo)記,產(chǎn)生事件序列S;
4)將3)中得到的事件序列S標(biāo)記有事件的幀的頻域信息進(jìn)行存儲(chǔ),組成由頻域信息和該頻域信息對(duì)應(yīng)的采樣時(shí)間t組成的一系列原始數(shù)據(jù)條目Ors;
5)對(duì)4)中得到的原始數(shù)據(jù)條目Ors,根據(jù)其采樣時(shí)間序列找出其中時(shí)間連續(xù)的條目,對(duì)于連續(xù)的條目進(jìn)行合并,組成幀頻域信息和采樣時(shí)間組成的事件條目e;整個(gè)事件序列S將被分割成由若干個(gè)e條目組成的事件條目序列Es=<e1,e2,...,ez>;
6)對(duì)5)中得到的Es序列,計(jì)算其中每個(gè)條目e的采樣時(shí)間跨度elength,和兩個(gè)相鄰條目的采樣時(shí)間間隔estep;若(1/elength)>l*estep(其中l(wèi)為可控參數(shù))則將該estep前后的兩個(gè)條目合并成新的條目em;整個(gè)Es序列將被重新組合成Ems=<em1,em2,...,emi>序列;
7)對(duì)6)中得到的Ems序列,計(jì)算其中每個(gè)條目em=<e1,e2,...,ej>的時(shí)序相關(guān)特征、頻域相關(guān)特征;將em條目中的每個(gè)幀頻域信息對(duì)應(yīng)的頻段計(jì)算平均值后歸一化,提取頻域均值統(tǒng)計(jì)特征;將時(shí)序相關(guān)特征attrt、頻域相關(guān)特征attrf、頻域均值統(tǒng)計(jì)特征atttrs、em對(duì)應(yīng)的開(kāi)始時(shí)間tstart、結(jié)束時(shí)間tend組成條目attr=<attrt,attrf,attrs,tstart,tend>;整個(gè)Ems序列將產(chǎn)生一系列的attr序列,記為Attrs=<attr1,attr2,...,attri>。
8)對(duì)7)中得到的Attrs序列,將其中每一個(gè)attr作為輸入送入機(jī)器學(xué)習(xí)訓(xùn)練完成的分類(lèi)算法進(jìn)行分類(lèi),確定該attr所描述的時(shí)間內(nèi)發(fā)生的事件為何種類(lèi)型的睡眠相關(guān)事件(打鼾、軀干運(yùn)動(dòng)、咳嗽、磨牙、夢(mèng)囈);將attr中的em的開(kāi)始時(shí)間tstart、結(jié)束時(shí)間tend、類(lèi)型識(shí)別結(jié)果r組成新的條目tempR=<tstart,tend,r>;整個(gè)Attrs序列將得到一系列tempR,構(gòu)成TempRs=<tempR1,tempR2,...,tempRi>序列。
9)對(duì)8)中得到的TempRs序列,構(gòu)造鍵值序列TVs,鍵為時(shí)間,值為睡眠狀態(tài)評(píng)估,鍵中的時(shí)間值跨度為用戶(hù)睡眠時(shí)長(zhǎng),值中的睡眠狀態(tài)評(píng)估值預(yù)設(shè)為a;依次處理TempRs中的條目tempR,根據(jù)tempR中的最小采樣時(shí)間和最大采樣時(shí)間確定TVs序列中需要調(diào)整的數(shù)值,根據(jù)類(lèi)型識(shí)別結(jié)果調(diào)整TVs序列中對(duì)應(yīng)的值;整個(gè)TempRs序列將被用來(lái)生成一個(gè)時(shí)間-睡眠狀態(tài)評(píng)估的鍵值序列TVs=<tv1,tv2,...,tvi>;
10)對(duì)9)中得到的TVs鍵值序列,結(jié)合睡眠醫(yī)學(xué)中的正常睡眠REM、N-REM周期模型、刺激飲料影響下的REM、N-REM睡眠周期模型N-REM睡眠周期模型、疲勞狀態(tài)下的REM、N-REM睡眠周期模型;選擇最合適的模型擬合,對(duì)TVs進(jìn)行調(diào)整得到用戶(hù)的REM、N-REM睡眠期識(shí)別結(jié)果。
進(jìn)一步地,具有音頻采集和處理功能的智能設(shè)備放置在用戶(hù)睡眠位置周?chē)阅芴綔y(cè)到用戶(hù)睡眠中產(chǎn)生的音頻為工作距離;其中音頻采集和處理功能的智能設(shè)備包括智能手機(jī)和智能手表。
進(jìn)一步地,步驟2)的具體過(guò)程為:
2.1)具有音頻采集和處理功能的智能設(shè)備以高于min kHz采樣頻率采集音頻數(shù)據(jù),為保證對(duì)事件捕獲的完整性,2)中的min不應(yīng)該小于0.6;對(duì)采集到的數(shù)據(jù)進(jìn)行緩存,留備后用;
2.2)對(duì)采集到的音頻數(shù)據(jù)按照s秒劃分?jǐn)?shù)據(jù)幀,其中s根據(jù)使用環(huán)境決定,s的取值0.1至0.5為宜;
2.3)對(duì)分幀后的數(shù)據(jù)以幀為單位進(jìn)行快速傅立葉變換,得到該幀在頻域內(nèi)的數(shù)字表示;
2.4)對(duì)經(jīng)過(guò)快速傅立葉變換后的幀的頻域數(shù)據(jù),截取0到k kHz的數(shù)據(jù),留備后用;其中k根據(jù)使用環(huán)境的不同設(shè)置,k的取值應(yīng)當(dāng)大于300小于32000。
進(jìn)一步地,步驟3)的具體過(guò)程為:
3.1)對(duì)步驟2.4中產(chǎn)生的每個(gè)幀中截取后的快速傅立葉變換結(jié)果的頻域離散值分別累加,得到幀頻域和;
3.2)構(gòu)造長(zhǎng)度twind秒,即twind/s個(gè)幀長(zhǎng)度的滑動(dòng)窗口,該滑動(dòng)窗口每次向時(shí)間增加的方向推移1個(gè)幀的時(shí)間長(zhǎng)度,其中twind介于[0.5,5];
3.3)每次推移執(zhí)行前對(duì)該滑動(dòng)窗口內(nèi)的twind/s個(gè)幀頻域和計(jì)算均值得到滑動(dòng)窗口頻域均值;取該滑動(dòng)窗口第一幀的幀頻域和與滑動(dòng)窗口頻域均值n倍做比較;若幀頻域和較大,則在事件序列后添加標(biāo)記標(biāo)注此幀包含事件;若幀頻域和較小,則在事件序列后添加標(biāo)記標(biāo)注此幀不包含事件;得到事件序列S=<s1,s2,...,st>;
其中的n由使用環(huán)境決定,若使用環(huán)境相對(duì)嘈雜,則n設(shè)置為在區(qū)間[3,10];若使用環(huán)境相對(duì)安靜,則n設(shè)置在區(qū)間[1.5,3)。
進(jìn)一步地,步驟4)的具體過(guò)程為:
4.1)遍歷步驟3.3中產(chǎn)生的S序列,對(duì)其中標(biāo)記為包含事件的幀,添加該幀的開(kāi)始時(shí)間數(shù)據(jù)構(gòu)造Ors序列;Ors中每個(gè)條目ori=<fri,ti>由頻域信息fri和采樣時(shí)間ti構(gòu)成,fri由2)中FFT變換結(jié)果順序存儲(chǔ)得到,ti由2)中s秒劃分的每次劃分的切割的開(kāi)始時(shí)間構(gòu)成;其中t可以作為單獨(dú)的序列Ts=<t1,t2,...,tn>提取使用,且元素順序和Ors中保持一致。
進(jìn)一步地,步驟5)的具體過(guò)程為:
5.1)使用步驟4.1中的Ts序列,對(duì)其按照時(shí)間從小到大的順序進(jìn)行遍歷,若ti+s=ti+1,就認(rèn)為ti和ti+1連續(xù);此處的連續(xù)具有傳遞性,即ti和ti+1連續(xù)、ti+1和ti+2連續(xù),則ti、ti+1、ti+2三者連續(xù),因?yàn)橛衪i+1元素的存在,ti和ti+2也具有連續(xù)性;將具有連續(xù)性的t分別構(gòu)成集合tset,若ti不存在于任何tset集合,則將其單獨(dú)構(gòu)成一個(gè)集合;
通過(guò)上述方法形成一系列tset,其中任意一個(gè)集合中的t元素都和該集合內(nèi)的其他元素具有連續(xù)性,且任意一個(gè)集合中的ti都不應(yīng)該和其他集合中的tj具有連續(xù)性;
5.2)對(duì)于每一個(gè)集合構(gòu)造事件條目e=<fr,tstart,tend>,e中包含Ors中的頻域信息以及時(shí)間信息,計(jì)算步驟如下:將集合內(nèi)的數(shù)據(jù)以及其對(duì)應(yīng)的Ors中數(shù)據(jù)按照時(shí)間順序排列,找出最小的時(shí)間tmin和最大時(shí)間tmax;將屬于該集合對(duì)應(yīng)Ors條目中的fr序列按照時(shí)間順序存儲(chǔ),并將tmin和tmax+s同時(shí)存儲(chǔ),分別命名為tstart和tend,保持其中的對(duì)應(yīng)關(guān)系,組織成事件條目e整個(gè)S序列將被分割成由若干個(gè)e條目組成的事件條目序列Es=<e1,e2,...,ez>;其中s為步驟2.2中的分幀s;
進(jìn)一步地,步驟6)的具體過(guò)程為:
6.1)對(duì)5)中的每個(gè)條目e取出其tstart和tend,計(jì)算elength=tend-tstart;
6.2)對(duì)5)中兩個(gè)相鄰條目e的采樣時(shí)間間隔estep計(jì)算步驟如下:對(duì)于序列Es選取其中某一個(gè)條目ei后,取出該條目中tstarti,即該條目的開(kāi)始時(shí)間,取出該條目中tendi,即該條目的結(jié)束時(shí)間;在序列Es去除ei后的元素中,選tstartj小于tstarti的序列Ess中tstart最大的條目ef;在序列Es去除ei元素后的元素中,選取tstartj大于tstarti的序列Esl中tstart最小的條目eb;條目ei的estep由前項(xiàng)間隔ei.tstarti-ef.tend和后項(xiàng)間隔eb.tstart-ei.tendi組成;
6.3)若步驟6.2中的前項(xiàng)間隔滿(mǎn)足(1/elength)>l*estep.前項(xiàng)間隔,前后兩項(xiàng)即指步驟6.2中的ei和ef并在之間填補(bǔ)(ei.tstarti-ef.tend)/s個(gè)空條目Oif=<o1,o2,...,o(ei.tstarti-ef.tend)/s>,形成的新條目稱(chēng)為em=<ei,Oif,ef>;若步驟6.2中的后項(xiàng)間隔滿(mǎn)足(1/Elength)>l*estep.后項(xiàng)間隔,前后兩項(xiàng)即指步驟6.2中的ei和eb并在之間填補(bǔ)(eb.tstart-ei.tendi)/s個(gè)空條目Obi=<o1,o2,...,o(eb.tstart-ei.tendi)/s>,形成的新條目稱(chēng)為em=<eb,Obi,ei>;
其中的s為步驟2.2中的取值;其中的(1/elength)>l*estep,其中l(wèi)應(yīng)當(dāng)介于[0.5,2];
6.4)將所有em組織成整個(gè)Ems=<em1,em2,...,emi>序列,進(jìn)行存儲(chǔ)留備后用。
進(jìn)一步地,步驟7)的具體過(guò)程為:
7.1)計(jì)算Ems的時(shí)序相關(guān)特征,具體如下:對(duì)每個(gè)em元素計(jì)算得到每個(gè)ei的幀頻域和sumi,得到幀頻域和序列SUM=<sum1,sum2,...,sumj>,對(duì)該序列求方差所得的值記為Dsum;em中空條目的數(shù)量除以j的值記為loadR,其中j為em中元素的個(gè)數(shù);Ems的時(shí)序相關(guān)特征由Dsum和loadR構(gòu)成;
7.2)將em條目中的每個(gè)幀頻域信息對(duì)應(yīng)的頻段計(jì)算平均值后歸一化,形成新的條目Eavrg;
7.3)計(jì)算頻域相關(guān)特征,具體如下:計(jì)算Eavrg的均值、方差;
7.4)計(jì)算頻域均值統(tǒng)計(jì)特征,具體如下:Eavrg的最小值、最小值出現(xiàn)的頻率、最大值、最大值出現(xiàn)的頻率、非零頻率的數(shù)量、非零最大頻率、非零最小頻率、非零最大頻率減去非零最小頻率的差、非零最大頻率減去非零最小頻率的差除以非零頻率個(gè)數(shù)的商;
7.5)將步驟7.1至步驟7.4中的結(jié)果按固定順序?qū)r(shí)序相關(guān)特征、頻域相關(guān)特征、頻域均值統(tǒng)計(jì)特征、em中最小tstart(對(duì)應(yīng)該em的開(kāi)始時(shí)間)、Em中最大tend(對(duì)應(yīng)該em的結(jié)束時(shí)間)排列組成的序列,稱(chēng)作attr;
7.6)將整個(gè)序列Ems產(chǎn)生的所有Attr序列組織存儲(chǔ)形成Attrs=<attr1,attr2,...,attri>序列,留備后用。
進(jìn)一步地,步驟8)的具體過(guò)程為:
8.1)按照1)至7)得到的Attrs加上額外的類(lèi)別標(biāo)簽數(shù)據(jù)訓(xùn)練出的監(jiān)督式機(jī)器學(xué)習(xí)分類(lèi)器;
8.2)將Attrs中的條目逐一送入訓(xùn)練完成的分類(lèi)器,完成對(duì)事件的類(lèi)型識(shí)別,將類(lèi)型結(jié)果和em中最小tstart、em中最大tend組織成tempR;對(duì)所有Attrs中的條目進(jìn)行該操作,得到事件類(lèi)型結(jié)果序列
TempRs=<tempR1,tempR2,...,tempRi>。
進(jìn)一步地,步驟9)的具體過(guò)程為:
9.1)構(gòu)造鍵值序列TVs=<tv1,tv2,...,tve>,每一個(gè)鍵值tvi中鍵為時(shí)間,值為睡眠狀態(tài)評(píng)估;其中值預(yù)置為a,表示REM睡眠狀態(tài),鍵中的時(shí)間應(yīng)當(dāng)與用戶(hù)睡眠時(shí)段相吻合;鍵中的時(shí)間單元前后跨度為m分鐘;一個(gè)鍵所表示的時(shí)間覆蓋范圍是該鍵中的時(shí)間值開(kāi)始和其后的m分鐘;
9.2)對(duì)8)中得到的TempRs中的每個(gè)元素tempR,取出8)中保存在其中的tstart、tend;將TVs序列中鍵覆蓋范圍和tstart和tend構(gòu)成的區(qū)間有重合的元素標(biāo)記為需要修改的元素;
9.3)根據(jù)tempR中類(lèi)型識(shí)別結(jié)果調(diào)整TVs序列中對(duì)應(yīng)的需要修改的元素操作如下:若tempR中識(shí)別結(jié)果為軀干運(yùn)動(dòng)、咳嗽、夢(mèng)囈就將步驟9.2中需要修改的元素?cái)?shù)值設(shè)置為b;若結(jié)果為其他則不調(diào)整;其中b不等于a;
9.4)對(duì)8)中得到的TempRs中每個(gè)元素都執(zhí)行步驟9.1和步驟9.2操作,得到修改完成的序列TVs=<tv1,tv2,...,tve>。
進(jìn)一步地,步驟10)的具體過(guò)程為:
10.1)睡眠模型構(gòu)造方式如下:生成長(zhǎng)度為用戶(hù)睡眠時(shí)長(zhǎng)除以m的全b序列L,其中b表示N-REM睡眠狀態(tài);計(jì)算用戶(hù)睡眠時(shí)長(zhǎng)除以100分鐘的商,對(duì)其四舍五入得到整數(shù)n;將L序列等分n份,形成L=<l1,l2,...,ln>序列,其中m為9.1)中所述m分鐘中的時(shí)間長(zhǎng)度;
10.2)對(duì)于正常睡眠REM、N-REM周期模型,對(duì)每個(gè)li在其長(zhǎng)度*0.7的位置開(kāi)始,將在長(zhǎng)度*0.7至長(zhǎng)度*0.95內(nèi)的數(shù)字設(shè)置為a得到lni;得到序列Lnorm=<ln1,ln2,...,lnn>;
10.3)對(duì)刺激飲料影響下的REM、N-REM睡眠周期模型,設(shè)置睡眠階段計(jì)數(shù)參數(shù)j=1;
定義操作OP:對(duì)所有i>j的Li在其長(zhǎng)度*0.7的位置開(kāi)始,將后續(xù)li長(zhǎng)度*0.25個(gè)數(shù)字設(shè)置為a得到ldi;得到序列Ldrinkj=<ld1,ld2,..,ldn>;
對(duì)所有1<j<n的整數(shù)執(zhí)行操作OP,得到Ldrinkj組,該組內(nèi)的元素都是刺激飲料影響下的REM、N-REM睡眠周期模型;
10.4)10)中疲勞狀態(tài)下的REM、N-REM睡眠周期模型:對(duì)l1在其長(zhǎng)度*0.2的位置開(kāi)始,將后續(xù)li長(zhǎng)度*0.3個(gè)數(shù)字設(shè)置為a得到lt1;對(duì)后續(xù)每個(gè)li在其長(zhǎng)度*0.7的位置開(kāi)始,將后續(xù)li長(zhǎng)度*0.25個(gè)數(shù)字設(shè)置為a得到lti;得到序列Ltired=<lt1,lt2,...ltn>;
10.5)將9)中得到TVs序列和步驟10.2至10.4產(chǎn)生的各個(gè)模型序列做逐位做比較,若對(duì)應(yīng)位置上的數(shù)值不相等,則記錄對(duì)該模型的錯(cuò)誤匹配數(shù)量增加;完成對(duì)所有序列的比較后,將錯(cuò)誤數(shù)量最小的模型序列命名為L(zhǎng)bestfit,并存儲(chǔ)留后用;
10.6)重新逐位比較TVs和Lbestfit,對(duì)于由TVs中值為a而Lbestfit中值為b導(dǎo)致的錯(cuò)誤,將TVs中該位置的數(shù)值調(diào)整為b;對(duì)于由TVs中值為b而Lbestfit中值為a導(dǎo)致的錯(cuò)誤,不做操作;得到最終結(jié)果TVs,其中a表示用戶(hù)睡眠的REM狀態(tài),b表示用戶(hù)睡眠的N-REM狀態(tài)。
方法的實(shí)施如圖1所示:
1)智能設(shè)備端基于數(shù)據(jù)分幀和快速傅里葉變換的數(shù)據(jù)預(yù)處理方法
如圖1,在智能設(shè)備端監(jiān)聽(tīng)麥克風(fēng)讀數(shù),并以不低于600Hz的采樣率獲取音頻采樣數(shù)據(jù)。當(dāng)接收到來(lái)自智能手表的音頻信號(hào)后,其表現(xiàn)形式為按照時(shí)間順序排列的一系列音頻采樣數(shù)據(jù),每秒鐘不少于600個(gè)數(shù)據(jù)點(diǎn)。后使用一個(gè)長(zhǎng)度為0.1s的非重疊式滑動(dòng)窗口對(duì)輸入音頻數(shù)據(jù)流進(jìn)行分割,每次分割得到一個(gè)數(shù)據(jù)幀,其中包含不少于60個(gè)數(shù)據(jù)點(diǎn)。對(duì)于每一個(gè)數(shù)據(jù)幀,對(duì)其進(jìn)行快速傅里葉變換,得到數(shù)據(jù)幀可探測(cè)最高頻率不低于300Hz的表示(即技術(shù)方案步驟二中的k的取值決定)。將該頻域表示進(jìn)行緩存以備后續(xù)使用。
2)智能設(shè)備端基于超均值n倍的事件探測(cè)方法完成事件提取
對(duì)事件的探測(cè)基于技術(shù)方案步驟3),以滑動(dòng)窗口均值為基準(zhǔn),對(duì)每一個(gè)幀進(jìn)行超均值n倍的監(jiān)測(cè)方式(n的取值以落在[3,10]區(qū)間內(nèi)為宜),從連續(xù)的頻域表示中篩選出包含事件特征的幀,步驟三中滑動(dòng)窗口的長(zhǎng)度介于[3,15]秒為宜;按照技術(shù)方案步驟4),將挑選出的幀添加時(shí)間信息,即該幀的采樣時(shí)間;依照添加的時(shí)間信息,按照技術(shù)方案步驟5)進(jìn)行連續(xù)幀的合并;按照技術(shù)方案步驟6),將連續(xù)發(fā)生的事件進(jìn)行自適應(yīng)的合并,其中l(wèi)設(shè)置在0.25左右為宜;得到對(duì)單一事件的數(shù)字表示,留備后續(xù)使用;
3)智能設(shè)備端的特征提取和基于機(jī)器學(xué)習(xí)的事件識(shí)別
按照技術(shù)方案步驟7)得到時(shí)序相關(guān)特征、頻域相關(guān)特征、統(tǒng)計(jì)學(xué)數(shù)字特征,形成對(duì)該事件的數(shù)字特征提??;按照技術(shù)方案步驟8)中的事件標(biāo)簽設(shè)置配監(jiān)督式機(jī)器學(xué)習(xí)算法,訓(xùn)練機(jī)器學(xué)習(xí)算法時(shí)需要注意不平衡標(biāo)記問(wèn)題,應(yīng)當(dāng)對(duì)其中的軀干運(yùn)動(dòng)應(yīng)當(dāng)予以增加權(quán)重,使得該事件的誤判漏判率盡量低,分類(lèi)器的選擇推薦Random Forest,或效果更佳的分類(lèi)器;按照技術(shù)方案步驟8.1對(duì)機(jī)器學(xué)習(xí)方法進(jìn)行訓(xùn)練得到適合該場(chǎng)景的分類(lèi)器模型;并且按照技術(shù)方案步驟8)中所述完成分類(lèi)和時(shí)間信息的添加得到事件分類(lèi)結(jié)果,留備后續(xù)使用;
4)智能設(shè)備端REM、N-REM周期初步判別
按照技術(shù)方案步驟9)所述,預(yù)置參數(shù)(其中a、b只要不相等即可,其中m的取值范圍(0,10]為宜)對(duì)睡眠時(shí)段判別結(jié)果進(jìn)行初始化,依照事件分類(lèi)結(jié)果對(duì)睡眠時(shí)段判別結(jié)果進(jìn)行調(diào)整,完成對(duì)事件分類(lèi)結(jié)果進(jìn)行REM、N-REM睡眠周期的匹配數(shù)學(xué)轉(zhuǎn)換,得到初步的REM、N-REM睡眠周期判別結(jié)果,留備后用;
5)睡眠中REM、N-REM睡眠周期固有模式的建立
按照技術(shù)方案10.1、步驟10.2、步驟10.3、步驟10.4,實(shí)現(xiàn)對(duì)正常睡眠REM、N-REM周期模型、刺激飲料影響下的REM、N-REM睡眠周期模型N-REM睡眠周期模型、疲勞狀態(tài)下的REM、N-REM睡眠周期模型分別的匹配模型的建立,留備后用;
6)針對(duì)用戶(hù)的REM、N-REM睡眠周期的識(shí)別
按照技術(shù)方案10.5所述方式,使用4)中得到的初步REM、N-REM睡眠周期判別結(jié)果作為測(cè)試模型和5)中建立的匹配模型,得到最匹配的模型,按照技術(shù)方案10.6所述方式修正后得到最終識(shí)別結(jié)果。