余兆釵 張祖昌 李佐勇* 劉維娜
1(閩江學院計算機與控制工程學院 福建 福州 350121)2(福建省信息處理與智能控制重點實驗室(閩江學院) 福建 福州 350121)3(福建省高校人文社科研究基地互聯網創新研究中心(閩江學院) 福建 福州 350121)4(福建信息職業技術學院計算機工程系 福建 福州 350003)
在傳統中醫(TCM)中,舌診[1-2]具有無痛、簡單和直接等特點,被廣泛用于評估人體健康狀態。中醫舌診在我國已經有3 000多年的歷史,積累了豐富的臨床經驗。中醫從業者可以從舌體的顏色、形狀、紋理、舌苔厚薄等特征出發提取人體的生理和病理信息。舌苔的顏色和紋理特征,被稱為中醫證候,能夠反映人體的一些疾病以及健康狀態[3]。
現代西醫逐漸將人的舌體作為上消化道的一個擴展,它為人體健康狀況提供了重要的線索。越來越多的西醫從業者將舌診視為臨床決策的一種有效方法[4]。舌體表面黏膜新陳代謝旺盛,身體疾病的征兆會很快在舌體上表現出來。以舌苔為例,由于其與唾液細菌的存活存在密切聯系,成了無牙患者吸入性肺炎的一個風險指標[5]。甚至有醫學文獻記載,舌淀粉樣本可能是漿細胞瘤的臨床表現[6]。越來越多的研究證實了人類舌體在臨床診斷中推斷系統性疾病的潛力。
傳統中醫舌診依賴于醫生的經驗,缺乏定量和穩定的診斷。現在,隨著計算機硬件和軟件的發展,利用圖像處理和模式識別技術開發計算機輔助的舌象自動診斷系統變得可能[6]。自動舌診系統通常首先利用圖像分割技術從舌圖像中提取出目標(即舌體),然后利用特征提取方法提取舌體特征,最后使用分類器得到最終的舌診結果。在這個過程中,用于提取舌體的舌圖像分割是至關重要的一步。近年來,人們提出了一些舌圖像分割方法[7-10]。然而,由于不同個體的舌體在形狀、大小、顏色、舌苔厚薄等方面存在巨大差異,以及舌體與其近鄰組織之間顏色相似性引起的弱邊緣,舌圖像分割仍然是一個具有挑戰性的課題。
國際主流的舌圖像分割方法是基于主動輪廓模型ACM(Active Contour Model)的方法。ACM又稱為Snake模型,是一種流行的可變形狀模型,廣泛應用于輪廓提取中。給定一個初始輪廓曲線,主動輪廓模型在內外力的共同作用下將初始輪廓曲線朝真實目標輪廓處演化。基于ACM的分割方法主要研究點在初始輪廓的獲取和曲線演化上。比如,Pang等提出一種雙橢圓形變輪廓模型方法BEDC[7],其結合了雙橢圓形變模板(BEDT)和主動輪廓模型。BEDC首先定義了一種稱為BEDT的形變模板作為舌體的一種粗略描述,然后通過最小化BEDT能量函數來獲得初始的舌體輪廓,最后利用模板能量代替傳統內能量的主動輪廓模型來演化初始輪廓,進而獲得最終的分割結果。Zhang等[8]提出了一種融合極坐標邊緣檢測和主動輪廓模型的方法。此方法先對原始圖像進行極坐標轉化,利用邊緣檢測算子獲得極坐標邊緣圖像,同時從舌圖像中提取邊緣模板;然后,利用邊緣模板過濾掉舌體內部紋理造成的虛假舌體邊緣;接著,利用圖像二值化技術結合形態學濾波進一步剔除舌體以外的虛假舌體邊緣(比如,臉部褶皺引起的邊緣);最后,將邊緣檢測結果作為初始的舌體輪廓,運用主動輪廓模型方法對初始輪廓進行演化,進而獲得最終的分割結果。此方法對舌體與近鄰部分(嘴唇和臉部)顏色近似造成的弱輪廓提取效果欠佳,而且在舌體與嘴唇的間隙處以及舌尖部分容易發生誤分割。Ning等[9]提出了一種融合梯度向量流GVF(Gradient Vector Flow)、區域合并技術RM(Region Merging)和主動輪廓模型的方法,簡稱為GVFRM。此方法先將傳統的梯度向量流改造為標量擴散方程,對舌圖像進行擴散以期達到平滑圖像、保留舌體輪廓結構的預處理目的;然后,利用分水嶺算法將預處理過的舌圖像分割成許多小區域;接著,運用基于最大相似性準則的區域合并算法結合目標、背景標記將小區域合并成大區域,從而形成初始的舌體輪廓;最后,利用主動輪廓模型對初始輪廓進行演化,得到最終的分割結果。當舌體靠近圖像的邊界時,錯誤的目標、背景標記容易造成錯誤的區域合并結果,從而導致誤分割。此方法在舌體與嘴唇的間隙處以及顏色近似性造成的弱邊緣處分割效果欠佳。Shi等主要提出了兩種基于主動輪廓模型的舌圖像分割方法,分別簡稱為C2G2F[10]和DGF[11]。C2G2F方法首先檢測舌尖點、舌根點和左右舌體三角點共4個特征點,利用4個特征點結合舌體形狀先驗構成初始的舌體輪廓;然后,將初始舌體輪廓分成上半部分輪廓和下半部分輪廓;接著,用參數化GVF主動輪廓模型和測地線主動輪廓模型分別演化上半部分和下半部分初始輪廓;最后,把演化后的上半部分和下半部分初始輪廓合并成最終的舌體輪廓。不幸的是,這種方法容易檢測到不理想的特征點,甚至未能檢測到部分特征點。在C2G2F方法基礎之上,Shi等提出了一種改進的方法即DGF。DGF方法首先利用顯著目標檢測算子來粗略地定位舌體所在的圖像窗口;然后,利用C2G2F方法思路在圖像窗口內檢測四個特征點,獲取包含上半部分輪廓和下半部分輪廓的初始舌體輪廓;接著,利用測地線主動輪廓模型和測地線-梯度向量流主動輪廓模型來分別演化上半部分初始輪廓和下半部分初始輪廓;最后合并上半部分初始輪廓和下半部分初始輪廓作為最終的舌體輪廓。DGF方法未能完全克服C2G2F方法的局限性,分割準確性和穩定性都有待提升。綜上所述,現有的舌圖像分割方法存在一定的局限性,分割效果有待進一步提升。為了提高分割精度,在探索RGB和HSI顏色空間中舌圖像特征的基礎上,本文提出一種簡單而有效的舌圖像閾值分割算法,改善了舌圖像分割的效果。
本文算法通過對多個顏色分量執行閾值分割來實現舌圖像的分割,算法流程如圖1所示。下面將詳細闡述算法的每個步驟。

圖1 本文算法的流程圖
通過圖像采集設備采集到的舌圖像往往含有下巴托架、人臉擋板等非人臉區域。下巴托架和人臉擋板等非人臉區域會對舌圖像的分割造成不良影響,因此需要先提取出人臉區域。為此,本文算法設計了以下過程來提取人臉區域:
(1) 下巴托架區域的分割:對舌圖像的藍色通道執行經典的Otsu閾值分割算法[12],得到如圖2(b)所示的閾值分割結果,圖中黑色區域即為下巴托架區域。

(a) 原始舌圖像(b) 用于確定下巴托架區域的藍色通道閾值分割結果

(c) 圖像托架之外區域紅色通道閾值分割結果(d) 對(c)進行形態學開運算、孔洞填充后的最大目標區域圖2 人臉區域分割過程本文算法產生的中間結果
(2) 人臉區域的提取:首先,將舌圖像紅色通道中下巴托架區域的像素點信息排除,利用剩余像素點信息執行Otsu閾值分割算法,得到如圖2(c)所示的閾值分割結果;接著,對圖2(c)的分割結果執行形態學開運算和孔洞填充操作,搜索最大目標區域,即可得到如圖2(d)所示的人臉區域。其中,開運算采用了半徑為1的圓盤狀結構元。采用圓盤狀結構元的原因在于臉部形狀與圓盤相似。圖3展示了半徑為“1”的圓盤狀結構元。

010111010
圖3 半徑為1的圓盤狀結構元
(1) 顏色空間轉換:將一幅圖像從RGB顏色空間轉換到HSI顏色空間,即:

(1)
(2)
(3)
式中:
其中,CC1101模塊為數據包處理、載波監聽、數據傳輸等提供了廣泛的硬件支持[9],采用該芯片作為傳感器節點的射頻模塊,可以保證節點的長期可靠工作。CC1101模塊外接26 MHz的晶振作為外部時鐘源,無線模塊工作時,綜合節點實時性和通信距離,設定其數據傳輸率為38.4 kbps,數據包格式為19個字節。此時,模塊的室外傳輸距離170 m左右,穿一層墻(25 cm)情況下,傳輸距離為70 m。
(4)
在式(1)-式(4)中,R、G和B分別代表圖像的紅色、綠色和藍色分量,H、S、I代表圖像的色調、飽和度和亮度分量。以圖2(a)中的舌圖像為例,由式(1)計算所得的色調分量如圖4(a)所示。從圖4(a)可以看到,舌體和上嘴唇像素點通常比其周圍的臉部像素點更暗或更亮,更亮的像素點擁有更大的色調值。由此,可以通過對高低色調像素點各設置一個色調閾值(參數)來提取包含真實舌體和上嘴唇區域的初始舌體區域。為了減少算法參數的個數,下一步將執行色調分量的變換。

(a) 圖2(a)對應的色調分量 (b) 變換后的色調分量

(c) 變換后色調分量的閾值分割結果(d) 初始舌體區域圖4 初始舌體區域提取過程中本文算法產生的中間結果
(2) 色調分量的變換:對HSI顏色空間中圖像的色調分量執行如下變換:
H′(i,j)=max{H(i,j),Hmax-H(i,j)}
(5)
式中:Hmax表示圖像所有像素點色調的最大值,(i,j)表示像素點坐標。圖4(a)的色調變換結果如圖4(b)所示。從圖4(b)可以看到,色調變換步驟使大部分舌體和上嘴唇像素點比它們周圍的臉部像素點更亮,即大部分舌體和上嘴唇像素點擁有更高的色調值。因此,下一步只需要設置一個參數(如式(6)中的閾值T) 來獲得用于提取初始舌體區域的圖像二值化結果。相比于通過對像素點原始色調值設置兩個閾值(參數)來提取初始舌體區域的做法,這樣就減少了一個參數。
(3) 圖像閾值分割:在變換后的色調分量上執行如下的圖像閾值分割,可得到一幅圖像的二值化結果:

(6)
式中:
T=VH′(αN)
(7)
在式(7)中,VH′表示降序排列后的向量H′,N表示H′中元素的總個數,α則是一個控制圖像中目標像素點比例的參數。圖4(c)展示了在圖4(b)所示的色調變換結果上執行閾值分割后所得的圖像二值化結果。

如圖4(d)所示,本文算法提取初始舌體區域時,容易將上嘴唇、上嘴唇與舌根之間的間隙區域誤分割為舌體區域。
通過觀察舌圖像可以發現,舌根和上嘴唇之間通常存在一個偏暗的間隙區。在RGB顏色空間下,對初始目標區域的紅色通道進行Otsu[12]閾值分割,很容易得到此間隙區,如圖5(a)所示。然后,通過形態學腐蝕操作擴大間隙區,以分離舌體和上嘴唇,如圖5(b)所示。最后,搜索最大目標區域,執行形態學膨脹操作,得到圖5(c)的結果。這里的腐蝕與膨脹操作均使用了半徑為“6”的圓盤狀結構元。圖5(d)展示了本文算法提取的最終舌體輪廓。

(a) 對舌圖像初始舌體區域的R通道執行Otsu閾值分割所得結果(b) 對閾值分割結果執行腐蝕操作后的結果,用于分離上嘴唇和舌體區域

(c) 修正后的舌體區域(d) 舌體輪廓圖5 舌體區域修正過程中本文算法產生的中間結果
為了驗證本文算法的分割性能,我們從福建省第三人民醫院提供的100幅舌圖像作為實驗對象,將本文算法與GVFRM[9]、G2G2F[10]以及DGF[11]算法進行了分割效果的定性和定量比較、分割速度的定量比較。其中,定量比較采用四個常見的分類測度[13],即錯分類誤差ME(Misclassification Error)、假正率/虛警率FPR(False Positive Rate)、假負率FNR(False Negative Rate)以及kappa指數KI(Kappa Index)。四種定量測度定義如下:
(8)
(9)
(10)
(11)
式中:Bm與Fm分別是手動分割結果的背景與目標,Ba與Fa為自動分割算法分割出來的背景與目標,·表示集合中元素的個數。ME、FPR、FNR的取值范圍都在0到1之間,值越小,表明分割效果越好;而KI值則是越大表明分割效果越好。
首先,我們對4種分割算法的分割效果進行了定性的評價。圖6給出了6幅典型舌圖像的分割結果,這些圖像的典型特征包括有裂紋、病態舌苔、舌體偏小或偏大、是否包含牙齒、健康舌像。圖中從左到右分別展示了原圖像、手動理想分割結果、GVFRM分割結果、C2G2F分割結果、DGF分割結果、本文算法分割結果。GVFRM的分割結果如圖6(c)所示,其在第二幅圖上產生了嚴重的欠分割;在第六幅圖上產生了比較嚴重的過分割現象;在其他四幅圖上分割效果稍好,但每幅舌圖像的上邊界都在上嘴唇下沿或者牙齒下沿附近,把舌根與上嘴唇之間的間隙區域錯誤地分割為舌體。C2G2F的分割結果如圖6(d)所示,其在第二幅和第四幅圖上分割效果尚可,分別產生了輕微的過分割和欠分割,但在第五幅和第六幅圖上產生了嚴重的過分割,在第一幅和第三幅圖上同時產生了嚴重的欠分割和過分割。DGF分割結果如圖6(e)所示,其在第二幅和第四幅圖上的分割效果較好,但仍然存在一定程度的過分割現象;在第五幅和第六幅圖上產生了明顯的過分割;在第一幅和第三幅圖上分割效果最差,同時存在比較嚴重的欠分割和過分割。本文算法分割結果如圖6(f)所示,與上述三種方法相比,本文算法在六幅代表性舌圖像上均獲得了更加準確的分割結果,但本文算法仍然在第二幅和第四幅圖上存在一定程度的過分割,這是由于舌體和嘴唇顏色太過近似造成的,將在以后的工作中加以解決。

(a)原圖像(b)手動理想分割結果(c)GVFRM分割結果(d)C2G2F分割結果(e)DGF分割結果(f)本文算法分割結果圖6 四種算法分割結果的對比
接著,我們對使用這四種算法分割舌像庫里的100幅舌圖像所得到的分割精度與時間消耗進行了定量評價。表1列出了四種算法分割結果對應測度(ME、FPR、FNR、KI)的平均值和標準偏差,以及時間消耗的平均值和標準偏差。這些定量測試結果表明,相比于其他三種算法,本文算法具有更高的KI值,更低的ME值,表明本文算法擁有更高的分割精度、更低的誤分割率;本文算法擁有更低的FPR值,表明本文算法過分割程度更輕;本文算法的FNR值低于C2G2F和DGF,略高于GVFRM,主要原因在于相比于本文算法,GVFRM算法存在比較嚴重的過分割,把舌體及周圍非舌體區域都分割成了舌體,所以其對應的欠分割程度比本文算法還低。從時間消耗來看,本文算法運行速度要比其他三種算法快,主要原因是其他三種算法都要先得到舌體的初始輪廓模型,然后再演化出最終輪廓,而本文算法只使用了閾值分割以及其他形態學運算,沒有做時間復雜度高的操作。

表1 100幅舌像平均分割性能的定量比較(均值±標準差)
本文提出了一種融合多顏色分量的舌圖像閾值分割算法。本文算法首先對RGB顏色空間中的藍色和紅色分量執行Otsu閾值分割,檢測出舌圖像中的人臉區域;然后,對HSI顏色空中的色調分量執行變換,在變換后的色調分量對應人臉區域上執行閾值分割,以獲得包含真實舌體和上嘴唇區域的初始舌體區域;接著,對初始舌體區域對應的紅色通道執行Otsu閾值分割,得到舌根和上嘴唇之間的間隙區域;最后,利用間隙區域分離舌體和上嘴唇,進而剔除掉初始舌體區域中的上嘴唇區域,獲得最終的舌體分割結果。實驗結果表明,本文算法不僅明顯改善了舌圖像分割的效果,而且運行速度也更快。