馮躍飛,李 湘,付元媛,余孟儒,劉 洋,黃 東*
(1.空軍軍醫(yī)大學(xué)軍事生物醫(yī)學(xué)工程學(xué)系軍事醫(yī)學(xué)信息技術(shù)教研室,西安 710032;2.空軍軍醫(yī)大學(xué)基礎(chǔ)醫(yī)學(xué)院四大隊,西安 710032)
人口問題是我國現(xiàn)階段發(fā)展面臨的重大問題之一,目前我國已經(jīng)成為世界上老齡人口數(shù)量最多、獨居和空巢老人數(shù)量最多的國家。有研究預(yù)測我國老年人口將持續(xù)增長至21 世紀(jì)50 年代后期,而老齡化程度不斷加深的趨勢將貫穿于整個21 世紀(jì),老年人口數(shù)量將快速增長,到21 世紀(jì)后半葉才轉(zhuǎn)而緩慢下降[1]。嚴(yán)峻的老齡化人口趨勢意味著我國也將面臨著日益增加的養(yǎng)老服務(wù)需求,基于我國人口和養(yǎng)老服務(wù)體系現(xiàn)狀,我國提出以居家養(yǎng)老為基礎(chǔ),提升社區(qū)養(yǎng)老服務(wù)能力和發(fā)展“互聯(lián)網(wǎng)+照護服務(wù)”的倡導(dǎo)[2]。多地積極響應(yīng)推進互聯(lián)網(wǎng)+與養(yǎng)老服務(wù)的結(jié)合,出現(xiàn)了一些以“互聯(lián)網(wǎng)+照護服務(wù)”為思路的智慧養(yǎng)老服務(wù),如劉海亮等[3]設(shè)計的智慧居家養(yǎng)老系統(tǒng)可以向監(jiān)護人提供老年人實時的心率及血壓數(shù)據(jù),并可以查看老年人的居家生活情況;張震等[4]設(shè)計的居家智慧養(yǎng)老監(jiān)測系統(tǒng)可以進行環(huán)境監(jiān)測和老年人摔倒監(jiān)測。然而我國的智慧養(yǎng)老服務(wù)仍然處于探索發(fā)展階段[5],大部分智慧養(yǎng)老服務(wù)是以智能傳感器和物聯(lián)網(wǎng)技術(shù)為核心,少有深度學(xué)習(xí)、云計算等先進技術(shù)在智慧養(yǎng)老中的應(yīng)用。
對老年人而言,疼痛反應(yīng)是他們健康的直接體現(xiàn)。通常而言,老年人出現(xiàn)疼痛的信號表明自身的健康出現(xiàn)了某種問題。從生理學(xué)而言,疼痛是機體對損傷組織或潛在的損傷產(chǎn)生的一種不愉快的反應(yīng),是一種復(fù)雜的生理心理活動。機體能夠通過多種渠道傳遞疼痛信息,比如個體既能通過軀體的活動或運動表達自己的不適,也能通過言語或面部表情的改變展現(xiàn)自己的痛苦[6]。老年人因為身體機能衰弱,會經(jīng)常出現(xiàn)疼痛反應(yīng),對這種反應(yīng)的捕捉顯得尤為重要。近年來,隨著機器學(xué)習(xí)技術(shù)和計算機視覺的不斷發(fā)展,基于靜態(tài)圖像或動態(tài)視頻進行人臉表情識別的技術(shù)越發(fā)成熟。疼痛表情作為疼痛判別的可靠指標(biāo)之一,能夠較為精準(zhǔn)和可靠地傳遞身體疼痛信息和不適狀況。因此把疼痛表情看作一種特殊的復(fù)雜的面部表情,利用人的面部信息進行疼痛識別具有可行性[7-10]。目前國內(nèi)外有一些研究者相繼開發(fā)了疼痛表情識別算法并設(shè)計了相應(yīng)的應(yīng)用場景,但在養(yǎng)老服務(wù)領(lǐng)域研究較少,主要集中在醫(yī)療領(lǐng)域的新生兒監(jiān)護、重癥監(jiān)護患者的疼痛識別方面[11]。因此,基于家用攝像頭實時視頻設(shè)計一種老年人居家活動面部疼痛表情智能監(jiān)測算法能在一定程度上滿足老年人居家養(yǎng)老過程中健康照護的現(xiàn)實需要。
本研究設(shè)計一種老年人健康智能監(jiān)測提醒算法,能夠?qū)崟r進行人臉檢測和疼痛表情識別并及時反饋給子女或社區(qū)照護人員,以提醒相關(guān)人員及時關(guān)注老年人健康狀況,避免影響健康的不利因素進一步惡化。本研究可適用性強,既能夠在各類家用監(jiān)控視頻終端上應(yīng)用,也可以基于互聯(lián)網(wǎng)搭載在云端;而且是基于靜態(tài)圖像或動態(tài)視頻分析,無需穿戴傳感器,對監(jiān)護對象無額外負(fù)擔(dān),監(jiān)護對象可接納程度高。
對老年人的健康進行實時監(jiān)測需要對視頻中的老年人的疼痛狀態(tài)進行獲取,而后對檢測到疼痛的情況進行提醒。如圖1 所示,本文所設(shè)計的老年人健康智能監(jiān)測提醒算法共包含人臉檢測、疼痛識別以及健康提醒3 個部分。
圖1 老年人健康智能監(jiān)測提醒算法框架
由于人臉的表情是疼痛狀態(tài)最為直接的體現(xiàn),本研究首先設(shè)計了人臉檢測部分對視頻中的人臉進行檢測,以便獲取僅包含表情的信息。人臉檢測部分算法利用多任務(wù)級聯(lián)卷積網(wǎng)絡(luò)(multi-task cascaded convolutional networks,MTCNN)[12]實現(xiàn),該網(wǎng)絡(luò)是一種基于深度學(xué)習(xí)的人臉檢測算法,可以同時完成人臉檢測和人臉對齊的任務(wù),相比于傳統(tǒng)的算法,性能更好、檢測速度更快,被廣泛應(yīng)用于自然場景的人臉檢測中。
MTCNN 包括建議網(wǎng)絡(luò)、細(xì)化網(wǎng)絡(luò)和輸出網(wǎng)絡(luò)3層。其中建議網(wǎng)絡(luò)(如圖2 所示)由一系列的卷積層構(gòu)成,先將圖像進行3 層特征提取,隨后通過一個人臉分類器判別輸入圖像是否包含人臉,同時使用邊框回歸以及一個面部關(guān)鍵點的定位來對人臉區(qū)域進行建議,最終建議網(wǎng)絡(luò)輸出多個包含人臉的圖像,并將所有的輸出圖像發(fā)送給下一級的細(xì)化網(wǎng)絡(luò)進行進一步處理分析。
圖2 人臉檢測部分算法中的建議網(wǎng)絡(luò)
細(xì)化網(wǎng)絡(luò)(如圖3 所示)包含多層卷積層,與建議網(wǎng)絡(luò)的區(qū)別在于增加了一個全連接層,用于對輸入特征的篩選。由于建議網(wǎng)絡(luò)給出的往往是一系列的粗糙的結(jié)果,這些結(jié)果均會被送入到細(xì)化網(wǎng)絡(luò)中進行篩選,對一些效果不好的人臉進行剔除,最后留下效果較好的候選框用于區(qū)域框的回歸和人臉關(guān)鍵點的定位。
圖3 人臉檢測部分算法中的細(xì)化網(wǎng)絡(luò)
輸出網(wǎng)絡(luò)(如圖4 所示)也是由一系列的卷積層和全連接層構(gòu)成,相較于細(xì)化網(wǎng)絡(luò)增加了1 層卷積層,以增加更多的監(jiān)督來識別面部區(qū)域。同時全連接層提高了輸出維度,保留了圖像更多的特征,在細(xì)化網(wǎng)絡(luò)的基礎(chǔ)上再次進行人臉的判別、人臉區(qū)域候選框的回歸以及人臉關(guān)鍵點的定位。
MTCNN 將人臉檢測的任務(wù)拆分成多個模型組合的方式,先使用小模型生成一切有可能的候選框,隨后一步步使用更復(fù)雜、更精細(xì)化的模型對粗略的結(jié)果進行篩選,從而形成3 層網(wǎng)絡(luò)的檢測模型,實現(xiàn)人臉的精準(zhǔn)檢測,使得后續(xù)的算法僅對人臉表情進行分析,排除了其他大量的背景干擾信息。
疼痛識別部分是本算法的核心內(nèi)容。
首先,本研究構(gòu)建VGG16 的網(wǎng)絡(luò)模型,一共包括5 個卷積塊(每個卷積塊由一定數(shù)量的卷積層、批歸一化層、非線性層和池化層組成)和2 個全連接層來提取全局特征。其中第一個卷積塊的結(jié)構(gòu)參數(shù)見表1。第二個卷積塊將特征的輸出維度提升至128,其余結(jié)構(gòu)和第一個卷積塊相同。第三、四、五個卷積塊在第二個卷積塊的基礎(chǔ)上增加了一個卷積層、一個批歸一化層和一個非線性層,并分別將特征維度提升至256、512、512。2 個全連接層分別將特征維度由512 升至4 096,并連接輸出層輸出分類結(jié)果。在構(gòu)建網(wǎng)絡(luò)之后再使用預(yù)訓(xùn)練的VGGface 模型[13]參數(shù)對模型進行初始化。
表1 第1 個卷積塊的結(jié)構(gòu)參數(shù)
隨后,本研究使用來自于UNBC-McMaster 的肩部疼痛數(shù)據(jù)庫[14]進行模型的微調(diào),該數(shù)據(jù)庫共收錄了25 個被試的200 個視頻序列,共48 398 幀圖像,而且每一幀圖像均有疼痛的標(biāo)記,這為該部分算法的深度模型訓(xùn)練提供了充足的數(shù)據(jù)。假設(shè)訓(xùn)練集D={xi,yi}(i=1,2,…,N,xi、yi分別表示人臉圖像和疼痛標(biāo)簽)包含了N張圖像,在使用VGGface 模型初始化之后,再使用Softmax 分類損失函數(shù)進行微調(diào)的訓(xùn)練,如下式所示:
式中,m表示一個批次的圖像數(shù)量;N表示分類數(shù)量;al表示全局分支在第l個類別的輸出;yi表示樣本的標(biāo)簽。由于該網(wǎng)絡(luò)以及損失函數(shù)均是可導(dǎo)的,損失誤差可以反向傳播到前面所有層中來更新這些層中的參數(shù)。參數(shù)更新方法為隨機梯度下降法,其中動量為0.9,衰減系數(shù)為0.000 5。
在健康提醒部分算法中,本研究根據(jù)疼痛識別部分所輸出的結(jié)果,選擇是否向老年人的子女或者社區(qū)養(yǎng)老機構(gòu)護工進行健康提醒。當(dāng)疼痛識別部分檢測到老年人有疼痛表情時,健康提醒部分采用開源的wechatpy 項目調(diào)用PC 端微信,發(fā)送疼痛報警信息給相應(yīng)的人員。
本文疼痛識別部分算法使用的訓(xùn)練數(shù)據(jù)來自于UNBC-McMaster 肩部疼痛公共數(shù)據(jù)庫,共選取10 000張圖像子集(包含了均衡的疼痛和非疼痛類別)。
在深度網(wǎng)絡(luò)構(gòu)建時,所依賴的軟件環(huán)境是基于Python 3.8 的Pytorch 1.9.1 框架搭建的,硬件環(huán)境主要由Intel(R)Core(TM)i9-10900K CPU 和NVIDIA RTX3060 顯卡構(gòu)成。
本研究利用基于MTCNN 所構(gòu)建的人臉檢測算法對原始圖像進行人臉檢測,識別出人臉區(qū)域。人臉檢測的結(jié)果如圖5 所示。
圖5 人臉檢測的結(jié)果
在獲得人臉的檢測框之后,可以利用檢測框的坐標(biāo)對人臉部分進行裁剪,將視頻中的背景進行剔除,只留下人臉的部分。與此同時,需對人臉區(qū)域進行尺度放縮,以滿足后續(xù)疼痛識別部分對輸入圖像尺寸的要求,從而進行后續(xù)的疼痛識別。
在訓(xùn)練過程中使用留一交叉驗證來評估算法的性能,即將數(shù)據(jù)庫中的25 個被試均作為一次測試樣本,其余24 個被試的數(shù)據(jù)作為訓(xùn)練集,一共做25 次循環(huán),獲得最終的平均值來進行疼痛識別部分最終的性能評估。本文所設(shè)計的疼痛識別算法的平均識別率為94.1%,得到的疼痛識別ROC 曲線如圖6 所示,其中AUC 值為0.969。可以看出,本文所設(shè)計的疼痛識別算法能夠識別絕大部分疼痛的情況,算法性能可靠。
圖6 疼痛識別的ROC 曲線
以上的結(jié)果為數(shù)據(jù)庫中的實驗結(jié)果,數(shù)據(jù)庫中的各個被試視頻采集條件基本一致。為了驗證疼痛識別算法是否能夠應(yīng)對更多的實際場景,使用自行錄制的腹瀉引起的腹部疼痛的視頻,并將視頻轉(zhuǎn)化為連續(xù)的圖像幀輸入到人臉檢測算法中先進行人臉的檢測,隨后將人臉區(qū)域輸入到疼痛識別算法中進行疼痛檢測。實際檢測的結(jié)果如圖7 所示。
圖7 實際環(huán)境中的疼痛檢測結(jié)果
從圖7 中的結(jié)果能夠看出,疼痛識別算法具有較強的泛化性,在實際環(huán)境中的人臉出現(xiàn)疼痛時也能夠及時產(chǎn)生報警信號,并將報警信號傳遞到健康提醒算法中進行消息推送。圖8 為檢測到疼痛時該算法調(diào)用微信發(fā)送的健康提醒消息。
圖8 實際環(huán)境中的微信提醒信息
我國是世界上老齡化速度最快、空巢老人數(shù)量最多的國家之一,并且大部分老齡人口以居家養(yǎng)老為主。為此,本研究以“互聯(lián)網(wǎng)+照護服務(wù)”為思路設(shè)計一種基于家庭攝像頭的老年人健康智能監(jiān)測提醒算法,能夠?qū)崿F(xiàn)基于家庭攝像頭的實時視頻序列進行人臉檢測和疼痛識別,從而及時發(fā)現(xiàn)老年人居家養(yǎng)老過程中的不適,并實時提醒相關(guān)人員采取相應(yīng)干預(yù)措施。本算法在保證網(wǎng)絡(luò)可靠性和家庭攝像頭較高覆蓋范圍的前提下能夠為“互聯(lián)網(wǎng)+照護服務(wù)”提供一個可行的技術(shù)實現(xiàn)和創(chuàng)新的思路,對健全家庭和社區(qū)兩級的老年人照護服務(wù)體系有著重要意義。然而出于隱私保護家庭住房中部分洗手間、臥室等區(qū)域不具備配置攝像頭的可能,而且家庭住房環(huán)境也存在著大量攝像頭的盲區(qū),很難實現(xiàn)對老年人的實時疼痛監(jiān)測;此外,算法采用深度學(xué)習(xí)模型來識別疼痛表情,沒有與其他表情有明確的區(qū)分特征,同時跌倒也是老年人居家過程中的健康危險因素之一。因此,本研究下一步將設(shè)計算法學(xué)習(xí)疼痛表情與其他表情的區(qū)分特征,同時加入姿態(tài)檢測算法,并與其他“互聯(lián)網(wǎng)+照護服務(wù)”融合,進一步完善老年人居家養(yǎng)老過程中的健康監(jiān)測體系。