朱明揚(yáng),陳 鯨,楊學(xué)志,沈 晶,吳克偉
(1.合肥工業(yè)大學(xué) 計(jì)算機(jī)與信息學(xué)院,安徽 合肥 230601; 2.工業(yè)安全與應(yīng)急技術(shù)安徽省重點(diǎn)實(shí)驗(yàn)室,安徽 合肥 230601; 3.合肥工業(yè)大學(xué) 軟件學(xué)院,安徽 合肥 230601; 4.合肥師范學(xué)院 電子信息與電氣工程學(xué)院,安徽 合肥 230061; 5.安徽微波與通信工程技術(shù)研究中心,安徽 合肥 230061)
隨著計(jì)算機(jī)科學(xué)技術(shù)的進(jìn)步,視頻圖像處理技術(shù)快速發(fā)展,并與醫(yī)療領(lǐng)域相結(jié)合,在醫(yī)學(xué)診斷和人體健康監(jiān)測等方面成為現(xiàn)代醫(yī)學(xué)的重要助力。在醫(yī)學(xué)領(lǐng)域,呼吸率是重要的健康指標(biāo),對呼吸率的監(jiān)測在呼吸疾病的預(yù)防方面具有重大意義。傳統(tǒng)的呼吸率檢測多為接觸式方法,通過傳感器探測人體因呼吸運(yùn)動(dòng)引起的變化來獲取呼吸率,該類方法需要在被測者身上粘貼傳感器,會引起諸多不便,且對于長期癲癇患者、燒傷患者、睡眠中患者難以實(shí)施?;谝曨l的呼吸率檢測方法是一種遠(yuǎn)距離、非接觸式的生理測量方法,可以避免帶來患者身體上的不適,并提供長時(shí)間、自動(dòng)化的呼吸率檢測,相比于接觸式檢測方法更具優(yōu)勢,是未來呼吸率檢測領(lǐng)域的發(fā)展方向。
近年來,基于視頻的呼吸率檢測方法得到了廣泛的研究。其中,從測量方法上可分為直接測量法和間接測量法。從心電信號、光電容積脈搏波或動(dòng)脈血壓信號等信號中提取呼吸信號屬于間接測量。文獻(xiàn)[1]通過小波分析和經(jīng)驗(yàn)?zāi)B(tài)分解從光電容積脈搏波中提取呼吸率;文獻(xiàn)[2]通過連續(xù)小波變換從脈搏波信號中提取呼吸率,這些方法都是從已有的完整信號進(jìn)行再研究,實(shí)時(shí)性不強(qiáng)?;跈C(jī)器視覺記錄胸部起伏的呼吸率檢測方法屬于直接測量。文獻(xiàn)[3]提出了基于最大似然的呼吸率檢測方法,但該方法沒有對呼吸區(qū)域進(jìn)行預(yù)估,對全圖進(jìn)行最大似然估計(jì)定位呼吸區(qū)域,因此算法時(shí)間復(fù)雜度較高;文獻(xiàn)[4]提出了基于相位的呼吸率檢測算法,該算法具有良好的抗噪性能,但是算法定位的呼吸區(qū)域過大,且后續(xù)在使用復(fù)可控金字塔分解獲取呼吸信號時(shí)沒有選擇呼吸運(yùn)動(dòng)方向,影響了算法整體速度;文獻(xiàn)[5]利用光流法加歐拉算法進(jìn)行呼吸率檢測,實(shí)現(xiàn)對人體胸腹區(qū)域的準(zhǔn)確定位,但對于整個(gè)視頻的放大處理和光流編碼需要龐大的計(jì)算開銷,最終影響整體算法實(shí)時(shí)性。
針對以上問題,本文提出了一種基于運(yùn)動(dòng)特征預(yù)估的呼吸率快速檢測方法。通過對視頻中呼吸運(yùn)動(dòng)區(qū)域和運(yùn)動(dòng)方向的預(yù)估,實(shí)現(xiàn)基于相位的呼吸率快速檢測。首先通過人臉檢測確定人臉區(qū)域,并結(jié)合人體頭身比選出胸部區(qū)域,然后建立呼吸信號模型,在人體呼吸率有效范圍內(nèi)利用最大似然法精準(zhǔn)定位呼吸區(qū)域,并且通過梯度信息確定呼吸區(qū)域內(nèi)主要運(yùn)動(dòng)方向。在獲取有效的呼吸區(qū)域后,結(jié)合呼吸運(yùn)動(dòng)方向,采用基于相位的復(fù)可控金字塔算法提取呼吸信號,最后根據(jù)峰值檢測獲取呼吸率。
呼吸率檢測方法由呼吸區(qū)域選取和呼吸信號分析兩部分組成。精確的呼吸區(qū)域可以減少后續(xù)呼吸信號處理的數(shù)據(jù)量。本文初步選取到胸部區(qū)域后,進(jìn)一步通過最大似然估計(jì)選取更精確的呼吸區(qū)域。人臉檢測僅需一幀圖像即可實(shí)現(xiàn),因此相較于文獻(xiàn)[3]、文獻(xiàn)[5]能夠更快選取呼吸區(qū)域,后續(xù)經(jīng)最大似然估計(jì)選取的呼吸區(qū)域較文獻(xiàn)[4]更為精確,提升了實(shí)時(shí)性。此外,本文提出使用方向梯度直方圖算法[6](histograms of oriented gradients,HOG)獲取運(yùn)動(dòng)的主要方向,在后續(xù)使用復(fù)可控金字塔分解獲取呼吸相位信號時(shí)僅沿主要方向進(jìn)行分解,相較文獻(xiàn)[4]有效減少了信號處理的計(jì)算量,提升了實(shí)時(shí)性。本文通過獲取更精確的呼吸區(qū)域和呼吸運(yùn)動(dòng)主要方向減少了計(jì)算量,提升了實(shí)時(shí)性。
本文提出的呼吸率檢測算法以基于運(yùn)動(dòng)特征的預(yù)估為基礎(chǔ),通過人臉檢測初步選出胸部區(qū)域,并建立信號模型,通過最大似然法精確定位胸部呼吸區(qū)域。然后通過梯度信息確定主要運(yùn)動(dòng)方向,為復(fù)可控金字塔的方向選取提供依據(jù)。最后采用基于相位的處理方法,提取呼吸信號,并根據(jù)峰值檢測獲得呼吸率。呼吸率檢測的流程圖如圖1所示,圖1包括4個(gè)主要步驟:① 基于最大似然的呼吸區(qū)域預(yù)估;② 基于方向梯度直方圖的運(yùn)動(dòng)方向預(yù)估;③ 呼吸相位信號提取;④ 基于峰值檢測的呼吸率估計(jì)。
基于視覺的人體呼吸率檢測方法通過檢測人體胸部一段時(shí)間內(nèi)起伏的次數(shù)來實(shí)現(xiàn)。由于胸部特征的提取存在困難,沒有直接的胸部識別算法。因此,本文采用人臉檢測算法首先定位人臉位置,然后根據(jù)人體比例關(guān)系,由人臉區(qū)域初步確定胸部區(qū)域位置。此時(shí)的呼吸區(qū)域的選取沒有針對具體呼吸情況,選取區(qū)域過大,會造成檢測算法計(jì)算量大,實(shí)時(shí)性低。為了提高算法的實(shí)時(shí)性,對區(qū)域內(nèi)的像素建立信號模型,通過最大似然估計(jì)計(jì)算信號基頻和運(yùn)動(dòng)幅度,根據(jù)運(yùn)動(dòng)幅度較大的點(diǎn)所在位置選取較為準(zhǔn)確的呼吸區(qū)域。
1.1.1 呼吸區(qū)域初步定位
人臉檢測是胸部定位的第1步,本文使用基于膚色模型[7]的人臉檢測方法來獲取人臉位置。通過人臉檢測器進(jìn)行人臉定位后,使用矩形框框選人臉范圍并獲取4個(gè)頂點(diǎn)的坐標(biāo),為胸部區(qū)域初定位提供位置信息。
圖1 算法流程圖
在獲取人臉范圍后,根據(jù)頭身比獲取胸部區(qū)域。成人身高一般是頭高的8倍,結(jié)合實(shí)驗(yàn)結(jié)果本文選擇第6頭高和第7頭高之間作為胸部區(qū)域。具體區(qū)域?yàn)?從頭頂開始分別向下移動(dòng)1.5倍頭高和2倍頭高作為縱坐標(biāo),橫坐標(biāo)保持不變,將4點(diǎn)相連初步獲得胸部區(qū)域,然后進(jìn)行基于最大似然的呼吸區(qū)域定位。呼吸區(qū)域選取示意圖如圖2所示。
圖2 呼吸區(qū)域選取示意圖
圖2中:紅色區(qū)域?yàn)槿四槄^(qū)域;藍(lán)色區(qū)域?yàn)榻?jīng)頭身比選取的胸部區(qū)域;綠色區(qū)域?yàn)楸疚倪x取的精確呼吸區(qū)域。
1.1.2 呼吸區(qū)域精確定位
假設(shè)所選胸部區(qū)域的像素亮度的變化僅由呼吸運(yùn)動(dòng)引起,將表示這種變化的周期信號建模為:
X[n]=C+Acos(2πf0TSn+Φ)+W[n]
(1)
其中:矩陣大小為所選胸部區(qū)域大小,即M1×M2;C為視頻中不變的量;A為幅度;f0為基頻;TS為采樣周期;n為幀序列;Φ為初始相位;W[n]為高斯噪聲。本文使用最大似然對基頻f0和幅度A進(jìn)行估計(jì),首先對基頻f0進(jìn)行估計(jì),然后根據(jù)基頻f0估計(jì)幅度A,最后根據(jù)幅度A來選取包含呼吸運(yùn)動(dòng)的區(qū)域。
為簡化符號,引入表示視頻幀X[n]的矩陣向量化算子:
XV[n]=vec(X[n])=
[x(1,1,n) …x(1,M2,n)
x(2,1,n) …x(2,M2,n)
?
x(M1,1,n) …x(M1,M2,n)]T
(2)
其中:vec為矢量化函數(shù),將矩陣轉(zhuǎn)化為列向量;列向量XV[n]的大小為M1M2×1;x(i,j,n)為視頻幀X[n]矩陣中第n幀中坐標(biāo)(i,j)處的亮度值。相應(yīng)的逆算子被定義為
X[n]=vec-1(XV[n])
(3)
av[n]cos(2πf0TSn+φv[p])]2
(4)
(5)
由于呼吸運(yùn)動(dòng)是周期運(yùn)動(dòng),設(shè)呼吸率范圍為[fmin,fmax],其中fmin、fmax分別為呼吸率的最低值和最高值。(5)式可以改寫為:
(6)
其中:kmin和kmax分別為能夠取到的最接近fmin和fmax的頻率值;Sp[k]為離散的周期圖譜[8]。第p個(gè)像素位置[9]的離散值可表示為:
(7)
(8)
經(jīng)處理后,人體呼吸區(qū)域如圖2b所示,綠色矩形區(qū)域?yàn)樗x精確呼吸區(qū)域。由圖2可知,經(jīng)過最大似然估計(jì),呼吸區(qū)域顯著減小,算法所需計(jì)算量減少,整體算法速度明顯提升。以下是基于最大似然的呼吸區(qū)域選取算法。
輸入:由1.1.1節(jié)初步選取的呼吸區(qū)域內(nèi)視頻幀X[n];呼吸區(qū)域內(nèi)像素點(diǎn)集合Points;人體呼吸率最高值和最低值fmax、fmin。
1.矢量化處理。簡化符號,引入表示視頻幀X[n]的矩陣向量化算子XV[n]。
for each row ofX[n]
point ofXV[n]=row ofX[n];
end
for eachfbetween [fmin,fmax]
for each point of Points
for each frame ofX[n]
calculate the discrete periodogramSp[k];
end
end
calculate Maximum likelihood estimate off;
end
for each point of Points
for each frame ofX[n]
end
end
for each point of Points
end
find biggest element ofAasA[p];
select region aroundA[p] asXV[p]
通過方向梯度直方圖算法HOG[6]獲取運(yùn)動(dòng)的主要方向,為復(fù)可控金字塔中濾波器的方向選擇提供依據(jù)。
HOG算法通過灰度化將視頻幀轉(zhuǎn)化為二維矩陣,并將矩陣分解為一些大小為16×16的塊,且相鄰塊重疊50%區(qū)域。由以下公式計(jì)算塊中每點(diǎn)的梯度信息:
(9)
(10)
(11)
(12)
(13)
圖3 方向梯度效果圖
圖3表示圖2b中呼吸區(qū)域?qū)?yīng)的S矩陣效果圖。由圖3可知,此時(shí)胸部呼吸的主要運(yùn)動(dòng)方向?yàn)?方向,對應(yīng)45°。后續(xù)使用復(fù)可控金字塔分解視頻圖像時(shí),僅沿45°方向分解,通過減少信號通道數(shù),提升檢測算法實(shí)時(shí)性。以下是基于HOG的運(yùn)動(dòng)方向預(yù)估算法。
輸入:由1.1.2節(jié)選取的呼吸區(qū)域內(nèi)視頻幀灰度矩陣X[n];呼吸區(qū)域內(nèi)像素點(diǎn)集合Points。
1.建立每幀對應(yīng)串聯(lián)矩陣C。將X[n]每幀分解為若干等大小的塊Blocks;計(jì)算每塊中像素點(diǎn)梯度大小和方向。
Decompose each frame into Blocks;
for each point in each block of Blocks
calculate gradient magnitudeG(x,y);
calculate gradient directionΘ(x,y);
end
計(jì)算每塊對應(yīng)的向量,進(jìn)而獲取串聯(lián)矩陣C。
for each block of Blocks
calculate the vector corresponding to block;
end
concatenate all vectors to get the MatrixC
2.計(jì)算和矩陣S。將所有C矩陣取平均計(jì)算平均矩陣M;使用C矩陣和M矩陣計(jì)算和矩陣S。
take average of all MatrixCto get MatrixM。
for each frame
MatrixS=S+|C-M|;
end
for eachθbetween [0,π]
calculate Maximum likelihood estimate ofθ;
end
完成對胸部運(yùn)動(dòng)特征的預(yù)估后,接下來需要提取呼吸信號。如圖 1所示,首先在空間上,使用復(fù)數(shù)可控金字塔對視頻序列沿主要運(yùn)動(dòng)方向進(jìn)行不同尺度的子帶分解,獲取相位信息;然后在時(shí)域上,對子帶進(jìn)行帶通濾波、將獲取到的序列取平均得到表征呼吸運(yùn)動(dòng)的子帶序列;最后將所有序列求和得到基于相位的呼吸信號。
1.3.1 空間分解
胸部起伏在視頻中表現(xiàn)為像素點(diǎn)亮度的周期性變化。為了減少計(jì)算量并突出亮度信息,本文方法將色彩空間由RGB域轉(zhuǎn)換到Gray域,將三通道整合為單一通道。RGB與Gray-Scale轉(zhuǎn)換公式為:
Igray=0.298 9R+0.587 0G+0.114 0B
(14)
其中:R、G、B分別為紅、綠、藍(lán)3個(gè)顏色通道矩陣;Igray為轉(zhuǎn)換后的灰度矩陣。
為了在頻率空間中提取相位信息,本文通過傅里葉變換實(shí)現(xiàn)圖像從時(shí)域空間到頻域空間的轉(zhuǎn)換,并在頻域空間進(jìn)行相位信息提取、理想帶通濾波等操作用于提取呼吸信號。根據(jù)文獻(xiàn)[10],本文采用復(fù)可控金字塔沿主要運(yùn)動(dòng)方向?qū)⒖臻g域拓展至不同相位域,通過多次迭代將圖像分解為不同尺度的子帶信息,圖像的相位信息蘊(yùn)含在子帶信息中。以下是復(fù)可控金字塔的實(shí)現(xiàn)過程。
(1) 根據(jù)輸入圖像尺寸,確定金字塔分解層數(shù)。計(jì)算公式為:
(15)
其中,h、w為圖像的高和寬。由(15)式可知,選取更加精確的呼吸區(qū)域后,金字塔分解層數(shù)變少,算法時(shí)間復(fù)雜度降低。
(2) 濾波器方向選取。首先設(shè)置方向參數(shù)N,即金字塔每層共有N個(gè)方向(本文N=4),然后根據(jù)1.2節(jié)結(jié)果選取主要運(yùn)動(dòng)方向,在后續(xù)金字塔分解中僅沿主要運(yùn)動(dòng)方向進(jìn)行不同尺度分解。
(3) 算法首先將輸入圖像分解為高通子帶H0與低通子帶L0,其中低通子帶包含圖像全局信息,高通子帶包含圖像細(xì)節(jié)。然后按照參數(shù)N與1.2節(jié)結(jié)果進(jìn)行主要方向帶通濾波,獲得主要方向的帶通子帶序列Bk(k=0,1,…,N)和子帶部分L1。
(4) 將子帶部分L1進(jìn)行二抽樣后,按步驟(3)中低通子帶分解方法繼續(xù)分解,不斷重復(fù)這一步驟,直到尺度分解層數(shù)達(dá)到M。
操作完成后,共獲得M+2(H0+M+1)個(gè)子帶序列,其中M個(gè)帶通子帶序列B中包含呼吸相位信息。至此,方向可控金字塔分解完成。相較于原有N方向分解,僅沿主要方向分解后的通道數(shù)顯著減少,算法時(shí)間復(fù)雜度降低。
1.3.2 呼吸信號提取與呼吸率計(jì)算
成人呼吸頻率一般分為3種情況:呼吸過速(超過24次/min)、呼吸正常(12~24次/min)、呼吸過緩(低于12次/min)。因此本文采用理想帶通濾波器對子帶序列進(jìn)行濾波,通頻帶為0.1~1.0 Hz(對應(yīng)呼吸率6~60 次/min)。
獲取呼吸運(yùn)動(dòng)序列后,根據(jù)文獻(xiàn)[11],將序列轉(zhuǎn)換為平均相位信號來表征呼吸運(yùn)動(dòng),平均相位信號為:
(16)
其中,Wl、Hl分別為各級金字塔分解后的圖像尺寸。
將多通道信號按幀相加,計(jì)算呼吸區(qū)域內(nèi)平均相位隨時(shí)間的變化序列得到呼吸信號,視頻提取的呼吸波形如圖4所示。
圖4 視頻提取的呼吸波形
呼吸頻率的計(jì)算公式為:
(17)
其中:N為視頻總幀數(shù);FS為幀率;P為波峰檢測算法檢測到的呼吸波形中波谷數(shù)目。
實(shí)驗(yàn)通過MATLAB軟件調(diào)用攝像機(jī)采集完成的視頻,并對采集視頻進(jìn)行呼吸率估計(jì)。實(shí)驗(yàn)中被測者與攝像機(jī)水平相距0.5 m,并拍攝人體上半身圖像,如圖5所示。實(shí)驗(yàn)在室內(nèi)穩(wěn)定白熾燈環(huán)境下使用普通光學(xué)攝像機(jī)采集視頻,在分辨率1 280×720像素,幀率30幀/s條件下,在RGB空間下保存成AVI格式。
圖5 呼吸率檢測設(shè)備場景
由于成人呼吸頻率可分為呼吸過速、正常與呼吸過緩3種狀態(tài),考慮呼吸狀態(tài)與測量對象的差異性[12],實(shí)驗(yàn)要求測試者在呼吸頻率6~36 次/min范圍內(nèi)進(jìn)行周期呼吸,對測試者進(jìn)行多次視頻采集和呼吸率檢測,驗(yàn)證算法的準(zhǔn)確性。測試者按照顯示屏提示進(jìn)行特定頻次的呼吸作為真實(shí)呼吸率進(jìn)行參考。
實(shí)驗(yàn)復(fù)現(xiàn)了文獻(xiàn)[3-5]的視頻呼吸率檢測方法進(jìn)行本文方法的性能驗(yàn)證。本文采用3種指標(biāo)進(jìn)行性能評估。第1個(gè)指標(biāo)為平均誤差Me,即真實(shí)值與檢測值的偏差,即
(18)
其中:N為視頻的數(shù)目;Rev為呼吸率估計(jì)值;Rtrue為真實(shí)呼吸率值。
第2個(gè)指標(biāo)是平均準(zhǔn)確率,記做Rac,根據(jù)相關(guān)醫(yī)學(xué)指導(dǎo)建議[13],以誤差±3 次/min作為正確組,其余為錯(cuò)誤組。
(19)
第3個(gè)指標(biāo)為視頻時(shí)長與算法用時(shí)的比例,記做Rt,用來反映實(shí)時(shí)性能。
Rt=tv/td
(20)
其中:tv為視頻時(shí)長;td為獲取呼吸率所需時(shí)間。Rt越大表示實(shí)時(shí)性越好。
實(shí)驗(yàn)在室內(nèi)穩(wěn)定白熾燈條件下對測試者進(jìn)行呼吸率測量,并與其他算法進(jìn)行實(shí)時(shí)性和穩(wěn)定性的比較,最后進(jìn)行各步驟貢獻(xiàn)度驗(yàn)證實(shí)驗(yàn)。
2.2.1 檢測性能比較
本次實(shí)驗(yàn)在視頻時(shí)長60 s,采樣率30幀/s,室內(nèi)穩(wěn)定白熾燈條件下進(jìn)行。將采集的視頻采用文獻(xiàn)[3-5]方法和本文方法檢測呼吸率,并根據(jù)檢測結(jié)果進(jìn)行算法性能比較。在上述實(shí)驗(yàn)條件下,呼吸率檢測性能的記錄見表1所列。為直觀解釋表格數(shù)據(jù),本文選取30組實(shí)驗(yàn)數(shù)據(jù)制成散點(diǎn)圖,如圖6所示。
表1 理想環(huán)境下呼吸率檢測性能對比
由表1和圖6可知,本文方法與文獻(xiàn)[3-5]方法在呼吸率檢測準(zhǔn)確率上均保持了很好的性能。文獻(xiàn)[3]方法直接對全圖建立呼吸模型并進(jìn)行最大似然估計(jì),能夠準(zhǔn)確地定位到呼吸區(qū)域,從而保證了呼吸率檢測的準(zhǔn)確性,然而算法對全圖進(jìn)行的呼吸信號建模和最大似然估計(jì)都需要計(jì)算開銷,影響了算法的運(yùn)行速度;文獻(xiàn)[4]的方法雖然進(jìn)行了胸口定位和基于相位的圖像處理,但選取的呼吸區(qū)域過大,并且由于沒有選取主要方向,增加了信號通道數(shù),導(dǎo)致計(jì)算開銷增大,降低了算法實(shí)時(shí)性;文獻(xiàn)[5]的方法通過人臉檢測加光流編碼處理,精確定位了運(yùn)動(dòng)區(qū)域,且使用歐拉視頻放大[14](Eulerian video magnification,EVM)算法進(jìn)行預(yù)處理,但對于全圖的EVM處理和光流編碼在視頻質(zhì)量較高、分辨率較大時(shí),影響算法整體的實(shí)時(shí)性。
圖6 30組呼吸率散點(diǎn)圖
本文方法在提取呼吸信號前用人臉檢測加最大似然估計(jì)法精確定位呼吸區(qū)域,減少了需要處理的像素?cái)?shù)。然后通過確定主要運(yùn)動(dòng)方向,在呼吸信號提取階段時(shí),僅沿主要運(yùn)動(dòng)方向進(jìn)行時(shí)空處理,有效地減少了金字塔層數(shù)與通道數(shù),降低了計(jì)算復(fù)雜度,在保持檢測精度的同時(shí)提高了算法實(shí)時(shí)性。
2.2.2 算法穩(wěn)定性驗(yàn)證
穩(wěn)定性驗(yàn)證可以用于評估算法是否適用于真實(shí)場景。本節(jié)通過不同時(shí)長、不同衣服特征量、不同呼吸區(qū)域大小、不同幀率4種情況下分別進(jìn)行呼吸率檢測,并與文獻(xiàn)[3-5]方法進(jìn)行對比,驗(yàn)證方法的穩(wěn)定性。
對不同視頻時(shí)長條件下的呼吸率檢測進(jìn)行穩(wěn)定性驗(yàn)證。在光照條件為普通白熾燈穩(wěn)定光源環(huán)境,呼吸區(qū)域大小64×64,普通帶花紋T恤條件下,分別采集10、20、40、60 s時(shí)長的視頻進(jìn)行驗(yàn)證。計(jì)算4種情況下的平均準(zhǔn)確率Rac和Rt,見表2、表3所列。由于文獻(xiàn)[3]和文獻(xiàn)[5]的方法在短時(shí)長下失去穩(wěn)定性,僅對文獻(xiàn)[4]方法和本文方法進(jìn)行實(shí)時(shí)性的比較。
由表2可知,隨著視頻時(shí)長的減少,4種方法呼吸率檢測的平均準(zhǔn)確率均逐漸下降,其中文獻(xiàn)[3]方法、文獻(xiàn)[5]方法在10 s視頻時(shí)長條件下已經(jīng)失去穩(wěn)定性。文獻(xiàn)[4]方法和本文方法由于通過金字塔分解獲得了呼吸運(yùn)動(dòng)多通道的子帶信息,在視頻時(shí)長較短的情況下也能彌補(bǔ)數(shù)據(jù)量較少產(chǎn)生的估計(jì)偏差問題。由表3可知,隨著視頻時(shí)長的減少,本文方法雖然實(shí)時(shí)性一直優(yōu)于文獻(xiàn)[4]方法,但也在下降,這是因?yàn)閷τ谌我忾L度視頻,本文算法均花費(fèi)一定時(shí)間選取呼吸區(qū)域與運(yùn)動(dòng)方向,當(dāng)時(shí)長變短,后續(xù)呼吸信號處理減少的時(shí)間不足以彌補(bǔ)預(yù)處理的時(shí)間花費(fèi),從而導(dǎo)致對短視頻進(jìn)行呼吸率檢測時(shí),本文方法實(shí)時(shí)性有所下降。
表2 不同時(shí)長下的呼吸率檢測平均準(zhǔn)確率 單位:%
表3 不同時(shí)長下的呼吸率檢測用時(shí)比
對不同衣服特征量條件下的呼吸率檢測進(jìn)行穩(wěn)定性驗(yàn)證。在光照條件為普通白熾燈穩(wěn)定光源環(huán)境,呼吸區(qū)域大小為64×64,視頻采集時(shí)間為60 s條件下,分別對衣服類型為純色T恤、花紋T恤2種特征量不同的衣服進(jìn)行測試,具體衣服類型如圖7所示,并以平均準(zhǔn)確率Rac作為衡量標(biāo)準(zhǔn)進(jìn)行穩(wěn)定性驗(yàn)證,結(jié)果見表4所列。
圖7 不同衣服特征量效果圖
表4 不同衣服特征量下的呼吸率檢測平均準(zhǔn)確率 單位:%
從表4數(shù)據(jù)可以看出,當(dāng)衣服特征量較少時(shí),文獻(xiàn)[4]方法、文獻(xiàn)[5]方法已經(jīng)失去了穩(wěn)定性,而文獻(xiàn)[3]方法、本文方法仍保持良好的性能。主要因?yàn)槲墨I(xiàn)[4]和文獻(xiàn)[5]的方法均使用了閾值進(jìn)行二值化處理,當(dāng)所選呼吸區(qū)域都缺少特征時(shí),無論是基于亮度的差值[15]還是基于相位的的差值均可能會因?yàn)樾∮陂撝刀缓雎?導(dǎo)致提取不到運(yùn)動(dòng)。在相同視頻質(zhì)量的條件下,文獻(xiàn)[3]方法和本文方法沒有使用二值化,通過最大似然估計(jì)法仍能精確獲取呼吸運(yùn)動(dòng)信號,因此較其他方法準(zhǔn)確率會有一定程度提升。
在不同呼吸區(qū)域尺寸條件下進(jìn)行呼吸率檢測穩(wěn)定性驗(yàn)證。經(jīng)最大似然估計(jì)后選取到胸口區(qū)域振幅最大的點(diǎn)的位置,以此位置為中心可選取不同尺寸的呼吸區(qū)域。在光照條件為普通白熾燈穩(wěn)定光源環(huán)境,普通帶花紋T恤,視頻采集時(shí)間為60 s條件下進(jìn)行測試。分別采用128×128、64×64、32×32、16×16進(jìn)行測試,具體區(qū)域大小如圖8所示。在2.2.1節(jié)性能實(shí)驗(yàn)的條件下,分別以50、30、15幀率進(jìn)行測試。最終以平均準(zhǔn)確率Rac、實(shí)時(shí)性Rt作為衡量標(biāo)準(zhǔn)進(jìn)行穩(wěn)定性驗(yàn)證,結(jié)果見表5所列。
從表5可以看出,隨著呼吸區(qū)域逐漸減小,Rt逐漸增大,實(shí)時(shí)性增強(qiáng)。當(dāng)呼吸區(qū)域過小時(shí),平均準(zhǔn)確率Rac顯著下降,本文算法失去穩(wěn)定性。這是因?yàn)楹粑鼌^(qū)域內(nèi)包含的數(shù)據(jù)量太少,影響后續(xù)呼吸率提取。視頻幀率方面,當(dāng)幀率為15幀時(shí),所要處理數(shù)據(jù)量變小,實(shí)時(shí)性提高,但平均誤差和平均準(zhǔn)確率均會下降。當(dāng)幀率為50幀時(shí),數(shù)據(jù)量增大,但相較30幀率準(zhǔn)確率沒有顯著提高且實(shí)時(shí)性顯著下降。
圖8 不同呼吸區(qū)域尺寸下的顯示效果圖
表5 不同呼吸區(qū)域尺寸下的呼吸率檢測準(zhǔn)確性和實(shí)時(shí)性
2.2.3 逐步測試
為了驗(yàn)證呼吸區(qū)域選取和主要運(yùn)動(dòng)方向選取對本文算法的貢獻(xiàn)度,本文進(jìn)行逐步測試。在2.2.1節(jié)性能實(shí)驗(yàn)的條件下,分別在僅選取呼吸區(qū)域、僅選取主要運(yùn)動(dòng)方向、本文完整算法條件下進(jìn)行測試。并以平均準(zhǔn)確率Rac、實(shí)時(shí)性Rt作為衡量標(biāo)準(zhǔn)進(jìn)行驗(yàn)證,結(jié)果見表6所列。
表6 不同條件下的呼吸率檢測準(zhǔn)確性和實(shí)時(shí)性
從表6中可以看出,在實(shí)時(shí)性方面呼吸區(qū)域選取貢獻(xiàn)了34.6%,主要運(yùn)動(dòng)方向選取貢獻(xiàn)了65.4%,通過精確選取呼吸區(qū)域,可有效減少所需計(jì)算的像素點(diǎn)數(shù)量,進(jìn)而降低算法時(shí)間復(fù)雜度;通過確定主要運(yùn)動(dòng)方向,在后續(xù)金字塔分解中可減少3/4的通道數(shù),有效降低了時(shí)間復(fù)雜度。在準(zhǔn)確性方面,3種方法都保持了良好的性能,說明基于最大似然的呼吸區(qū)域和主要運(yùn)動(dòng)方向的選取能夠有效反映人體呼吸時(shí)胸腔的主要運(yùn)動(dòng)情況。
本文提出了一種基于運(yùn)動(dòng)特征預(yù)估的呼吸率檢測快速方法。通過基于最大似然的呼吸區(qū)域預(yù)估和基于HOG的呼吸方向預(yù)估為后續(xù)視頻信號處理降低時(shí)間復(fù)雜度;最后采用基于相位的歐拉視頻處理方法對呼吸區(qū)域進(jìn)行快速時(shí)空處理,獲取呼吸信號,提取呼吸頻率。
在真實(shí)場景中,當(dāng)被測者出現(xiàn)大的運(yùn)動(dòng)或定位不到呼吸區(qū)域時(shí),本文方法無法準(zhǔn)確地檢測呼吸率。另外,由于呼吸率的精度要求,當(dāng)視頻時(shí)長小于10 s時(shí),會因?yàn)轭l率分辨率太低影響檢測結(jié)果。在未來的工作中,可針對呼吸運(yùn)動(dòng)中存在的大運(yùn)動(dòng)干擾、各種情況下的呼吸區(qū)域定位和減少檢測所需視頻時(shí)長等方面進(jìn)行改進(jìn),進(jìn)一步擴(kuò)大算法的應(yīng)用范圍。