葉樺杉,李 翔
(文山學(xué)院 人工智能學(xué)院,云南 文山 663099)
美國醫(yī)學(xué)會曾對200多例嬰兒猝死綜合癥病例進行過研究,結(jié)果發(fā)現(xiàn),大約有30%的嬰兒因睡沙發(fā)床堵住口或鼻造成窒息[1]。睡姿不當(dāng)是嬰兒在熟睡中窒息的一大誘因,不具備自主翻身能力的嬰兒極易因為在側(cè)臥過程中頭部向某一側(cè)的偏轉(zhuǎn)程度過大,致使臥具上柔軟的被褥或枕頭堵住口鼻而存在窒息的風(fēng)險。而嬰兒頭部的偏轉(zhuǎn)程度又直接反映在正俯視圖像中近耳側(cè)眼角與鼻骨凹點處距離的大小關(guān)系上。因此,可以采用在圖像上檢測嬰兒近耳側(cè)眼角與鼻骨凹點處的距離同預(yù)設(shè)值的進行比較的方法,實現(xiàn)對嬰兒因睡眠姿態(tài)不當(dāng)而產(chǎn)生窒息風(fēng)險的預(yù)判。
本方法首先進行圖像預(yù)處理和耳部圖像提取。隨后將耳部圖像按比例分割后進行部位判斷與耳部特征點查找。最后借助歐幾里得距離計算公式進行近耳側(cè)眼角坐標(biāo)推算、鼻骨凹點查找和近耳側(cè)眼角與鼻骨凹點距離計算,通過實測值與預(yù)設(shè)值的比對,對嬰兒當(dāng)前睡眠姿態(tài)有無窒息風(fēng)險進行判斷。方法單次實現(xiàn)流程圖如圖1所示。
圖 1 單次實現(xiàn)流程圖
由于本方法主要應(yīng)用于夜間,獲取的圖像整體偏暗,對比度較低,且圖像尺寸不盡相同,因此首先對圖像進行預(yù)處理。預(yù)處理階段輸出的圖像將作為后續(xù)運算操作的輸入圖像。
首先對圖像進行尺寸歸一化處理,使捕獲的圖像統(tǒng)一變?yōu)閄×Y尺寸的圖像,這有利于后續(xù)進行圖像分割及各項坐標(biāo)值運算的正常進行。接著將尺寸歸一化后的圖像灰度化,并通過直方圖均衡化的方式,提高圖像對比度,處理結(jié)果如圖2所示。
圖 2 直方圖均衡化處理
最后使用Sobel算子[2]對圖像中被檢測對象主體的邊緣進行提取并去除部分無關(guān)區(qū)域,提取效果如圖3所示。
圖 3 二值化邊緣提取
圖像預(yù)處理階段的輸出圖像是一幅尺寸為X×Y、由像素值為0或1的像素點構(gòu)成的二值化邊緣提取圖像。P(i,j)為圖像矩陣中第i行第j列的的像素值。
對于同一個被檢測對象,在二值化邊緣提取圖像中各部位的像素值和基本不變,且耳部只位于圖像的上半部分。根據(jù)此特點提出一種基于像素值匹配的耳部提取方法。
在二值化邊緣提取圖像上,令一尺寸為x×y、特征點為(M,N)的矩形選框從P(1, 1)處開始以特定步長d對圖像上半部分進行遍歷,同時計算選區(qū)內(nèi)的像素值和在誤差D允許的范圍內(nèi),當(dāng)S(p)達到某一預(yù)設(shè)值S(p0)時,即|S(p)-S(p0)|≤D,便可認為耳部存在于此選區(qū)之中,提取效果如圖4所示。
圖 4 尺寸為x×y的耳部圖像選區(qū)
為快速確定耳部特征點、減少運算資源浪費、提升運算結(jié)果的精準(zhǔn)度,故將2.2小節(jié)所得耳部圖像進行橫向四等分、縱向六等分處理。結(jié)果如圖5所示。
圖 5 左耳與右耳的判別依據(jù)
從耳部圖像比例分割的結(jié)果來看,耳朵上部、下部特征點在耳部提取圖像中所處的位置相對固定,據(jù)此可在特定區(qū)域內(nèi)通過提取元數(shù)組求和的方式來確定耳部特征點。由于不同部位特征點在耳部提取圖像中的相對位置不同,因此必須先借助獲取上步運算過程中賦予圖像的特征值來選擇恰當(dāng)?shù)倪\算方式。
3.2.1 左側(cè)
設(shè)左耳上部、下部特征點坐標(biāo)分別為:(xl1,yl1)和(xl2,yl2)、對應(yīng)選框特征點坐標(biāo)為:(Ml,Nl)。則此兩點在2.2小節(jié)所得圖像中的坐標(biāo)值具有如下特點:
對于左耳上部特征點,采用在上述約束條件確定的區(qū)域內(nèi),從下向上逐行取出元數(shù)組進行求和的方式進行查找。當(dāng)發(fā)現(xiàn)某行所在的元數(shù)組值之和不為零時,讀取該行行號作為左耳上部特征點縱坐標(biāo)yl1,并讀取該行元數(shù)組中最左端的非零元素的列號作為左耳上部特征點橫坐標(biāo)xl1。綜上可得左耳上部特征點在2.1節(jié)所得二值圖像中的坐標(biāo)為:(Ml+xl1-1,Nl+yl1-1)。
對于左耳下部特征點,則從左到右逐列取出元數(shù)組進行求和,當(dāng)發(fā)現(xiàn)某列所在的元數(shù)組值之和不為零時,讀取該列列號作為左耳下部特征點橫坐標(biāo)xl2,并在該列元數(shù)組中讀取最下端非零元素的行號作為耳朵下部特征點縱坐標(biāo)yl2??傻米蠖虏刻卣鼽c在二值圖像中的坐標(biāo)為:(Ml+xl2-1,Nl+yl2-1)
3.2.2 右側(cè)
設(shè)右耳上部、下部特征點坐標(biāo)分別為:(xr1,yr1)和(xr2,yr2)、對應(yīng)選框特征點坐標(biāo)為:(Mr,Nr)。則此兩點在所得圖像中的坐標(biāo)值具有如下特點:
對于右耳上部特征點,采用在上述約束條件確定的區(qū)域內(nèi),從下向上逐行取出元數(shù)組進行求和的方式進行查找。當(dāng)發(fā)現(xiàn)某行所在的元數(shù)組值之和不為零時,讀取該行行號作耳朵上部特征點縱坐標(biāo)yr1,并讀取該行元數(shù)組中最右側(cè)非零元素的列號作為耳朵上部特征點橫坐標(biāo)xr1。綜上可得右耳上部特征點在2.1節(jié)所得二值圖像中的坐標(biāo)為:(Mr+xr1-1,Nr+yr1-1)。
對于右耳下部特征點,則從右到左逐列取出元數(shù)組進行求和,當(dāng)發(fā)現(xiàn)某列所在的元數(shù)組值之和不為零時,讀取該列列號作為右下部特征點橫坐標(biāo)xr2,并讀取該列元數(shù)最下端非零元素的行號作為右耳下部特征點縱坐標(biāo)yr2,可得右耳耳朵下部在二值圖中的坐標(biāo)為:(Mr+xr2-1,Nr+yr2-1)。
在二維平面上,任意兩點(xm,ym)和(xn,yn)間的距離L可用歐氏距離來度量,即[3]
由幾何學(xué)公理可知,圓心到圓周上的距離處處相等[4]。若設(shè)耳朵上部、下部在二值化邊緣提取圖像中的坐標(biāo)為(x1,y1)、(x2,y2),它們到近耳側(cè)眼角坐標(biāo)的距離分別為R1和R2,并分別以(x1,y1)和(x2,y2)為圓心,R1和R2為半徑作圓。在誤差允許的范圍內(nèi),兩圓的交點之一恰是眼角坐標(biāo)。因此,可借助此原理聯(lián)立方程組,并根據(jù)實際情況選取恰當(dāng)?shù)慕?,求出近耳?cè)眼角坐標(biāo)(xe,ye)。
設(shè)左耳上部、下部特征點到左眼近耳側(cè)眼角的距離分別為Rl1和Rl2。則由式(1)可求得左眼近耳側(cè)眼角坐標(biāo)為(xle,yle),如圖6所示。
圖 6 面部左側(cè)特征點歐氏距離
設(shè)右耳上部、下部特征點到右眼近耳側(cè)眼角的距離分別為Rr1和Rr2。則由式(2)可求得右眼近耳側(cè)眼角坐標(biāo)為(xre,yre),如圖7所示。
圖 7 面部右側(cè)特征點歐氏距離
若嬰兒在睡覺時,口鼻一側(cè)緊貼臥具,則存在窒息風(fēng)險。而嬰兒口鼻緊貼臥具時,其近耳側(cè)眼角與鼻骨凹點處的距離同正常側(cè)臥時相比較小??赏ㄟ^計算近耳側(cè)眼角與鼻骨最凹點處的距離與對應(yīng)預(yù)設(shè)值相比較,從而判斷嬰兒睡姿有無窒息風(fēng)險。
在二值化邊緣提取圖像中,采用延拓法通過眼角坐標(biāo)構(gòu)建包含鼻骨最凹點的選區(qū),并根據(jù)圖像特征值在此選區(qū)中進行鼻骨凹點的查找。
依據(jù) 4.1、4.2 計算值得出近耳側(cè)眼角坐標(biāo)值,在該點處進行橫向延伸。當(dāng)找到其對應(yīng)邊界區(qū)中第一個非零值像素點時,將此兩點確定的直線縱向拓展30個像素,將兩點的運動軌跡及二直線包含的區(qū)域作為下步計算區(qū)域。
以此區(qū)域橫向邊界的中垂線為界,再次對選區(qū)進行分割。以該區(qū)域中垂線為下界,以近邊緣側(cè)界線為上界,在此范圍內(nèi)逐列求和,當(dāng)某列元數(shù)組求和之值不為零時,讀取該列數(shù)組中最上端非零值像素點的橫縱坐標(biāo),加以幾何變換,便可得到鼻骨凹點在二值化邊緣提取圖像中的坐標(biāo)值,再計算該點與眼角坐標(biāo)點的歐氏距離得到實測距離L,如圖8中a、b所示。
圖 8 延拓法提取鼻梁處區(qū)域
令實測距離L與預(yù)設(shè)距離L0相比較,當(dāng)L<L0時,則說明當(dāng)前睡姿可能存在窒息風(fēng)險,可向外界發(fā)出警報,反之則說明當(dāng)前睡姿無窒息風(fēng)險。
由于不同被檢測對象個體間存在差異,因此,相關(guān)參數(shù)應(yīng)根據(jù)被檢測對象的實際情況做出相應(yīng)調(diào)整。使用仿真娃娃在適合的預(yù)設(shè)參數(shù)下對其左側(cè)臥姿態(tài)進行檢測,以驗證本方法的可行性。測試所用預(yù)設(shè)值如表1所示;左側(cè)實測用圖、判據(jù)如表2所示;測試過程GUI界面如圖9.1、圖9.2所示。
表1 仿真測試預(yù)設(shè)值
表2 測試圖及閾值設(shè)定
圖 9.1 左側(cè)實測·狀態(tài)正常
圖 9.2 左側(cè)實測·窒息風(fēng)險
從仿真實驗結(jié)果來看,使用單張圖像測試時,實測結(jié)果與期望結(jié)果一致。能夠?qū)雰核耸欠翊嬖谥舷L(fēng)險進行判斷。但本方法目前只能對單幅圖像進行檢測,圖片導(dǎo)入需要通過手動操作實現(xiàn)??尚行匀匀煌A粼诶碚搶用嫔稀?/p>
在日后的提升與優(yōu)化中,將考慮把本方法與從視頻流分幀提取得到時序圖像組的方法相結(jié)合,實現(xiàn)通過視頻流直接獲取圖像并檢測的功能,對被檢測對象進行連續(xù)監(jiān)測,提高本方法的實用性。