(長沙理工大學物理與電子科學學院 長沙 410114)
治病,正確診斷是基礎。中醫診斷,望、聞、問、切,四診合參。望而知之謂之神,聞而知之謂之圣,問而知之謂之工,切脈而知謂之巧。面對望診的舌像診斷有經驗的中醫醫師通常要在食后兩小時后進行舌診,以求排除飲食因素的影響。中醫醫師望舌診斷要求患者坐直,自然伸出舌,面對自然光對舌進行觀察。對于舌的色澤,舌邊、舌尖部位由于苔質較少所以它們的色澤近似,色澤呈現的多為舌質的顏色。舌中部有較多的舌苔,會有與舌尖、舌兩邊不同的色澤出現,一般呈現的是苔色。在臨床診斷中舌色應以舌邊以及舌尖的舌質為準,苔色應以舌中部的舌苔為主[1~2]。項目研究了淡紅舌薄白苔在飲食紅色火龍果對舌色造成的偏色與去干擾,首先研究了飲食紅色火龍果不會對舌質(舌尖、舌兩側)的顏色造成影響,其次采用了偽彩色圖像處理對偏色進行了校正,完成了中醫舌診的食品偏色研究與去干擾。
使用高像素照相機獲取舌圖片,攝像的光源選取問題是圖像處理技術的一大難點,所以只能照相且嚴格意義上來講要處以黑白圖片作精準分析。在飲食前后分別拍攝兩張照片,圖1(a)是未染色的舌像,圖1(b)是被紅色火龍果染色后的舌像,與圖1(a)是一組對照圖像。采取同樣光源拍攝,采集好舌像后,首先進行預處理,預處理包括去噪,圖像變換,顏色空間的轉換等。
圖像分割方法主要有四大類分割法[6]:邊界檢測、閾值分割、基于區域的分割等。在中醫舌像分割中,除了上述中的圖像分割方法,文獻[3]中,OT?SU算法與數學形態學結合的方法進行舌像分割。由KaS[4]提出了Snake模型(動態輪廓模型),Snake模型在舌像輪廓提取和分割中產生了很好的效果。在深度學習出現后,王麗冉等提出了利用兩階段的卷積神經網絡實現舌像分割[5]。本研究采用了彩色閾值分割,閾值分割通過以像素特性分布為基礎的閾值處理。如圖2(a)分割后舌像、圖2(b)分割后舌像對照圖所示。

圖1 舌像采集
舌像主要有舌質舌苔兩部分。舌質指舌的肌肉脈絡組織,是臟腑氣血之所榮。舌苔指舌面上附著的一層苔狀物,是胃氣上蒸所生。中醫舌診辨證論治的主要參照依據有舌形[7~8]和舌色[11],舌診中,舌色主要參考舌質、舌苔顏色及其分布[9~10,12]。舌質和舌苔在舌像上沒有顯著的分界,一般情況下,認為舌苔位于舌像的中間部分,舌兩邊以及舌尖是舌質部分。本研究處理的舌像是淡紅舌薄白苔,主要通過觀察被染色的舌像以及未被染色的舌像,分離出舌質,然后比較未染色舌質圖以及被染色舌質圖的顏色分布[6]。

圖2 分割后舌頭
舌象由舌質和舌苔組成,苔質分離本質上是彩色圖像分割問題。本研究在進行苔質分離后對舌質的RGB值進行直方圖統計且對直方圖進行了比較得出了相關系數。苔質分離后的舌質圖像,如圖3(a)舌質、如圖3(b)舌質對照圖所示。

圖3 分離舌質
3.2.1 舌質的基準值
兩個舌質顏色的相似可設置兩個舌質顏色的基準值,設置基準值為舌質的不同位置處舌左側(R1、G1、B1)、舌右側(R2、G2、B2)和舌尖(R3、G3、B3)的均值(R、G、B),如公式所示。若基準值相差不遠即可認為舌質顏色相似,不需改變。計算出的未染色與被染色局部舌質RGB均值如表1所示。

表1 未染色與被染色局部舌質RGB均值
舌質右側的顏色比左側以及舌尖顏色深,是因為平時吃東西時習慣在右側咀嚼,故而舌質右側顏色較深。且未被染色和被紅色火龍果染色的舌質RGB值相差不大,每個分量的誤差在20以內,這個差值指整個圖像的均值,不是圖像中每個像素的灰度差,對于整個舌質圖來說誤差均值在20。
3.2.2 直方圖比較
作出舌質在未染色以及染色后的RGB的直方圖,繪制出的直方圖如圖4(a)舌質RGB的直方圖、圖4(b)舌質對照圖RGB的直方圖所示。對比如圖4(a)舌質RGB直方圖和圖4(b)舌質對照圖的RGB直方圖所示,兩舌質直方圖總體走勢基本一致,但在舌質對照圖的RGB值在R分量以及G分量上個別值會有突增,也就是在紅色以及綠色的顏色數會有所的增加,但舌質RGB直方圖總體走勢基本一致,認為在圖像中每個顏色的分布是近似的。

圖4 舌質的RGB直方圖
3.2.3 相關系數
兩個舌質顏色的統計分布的相似性可用相關系數來度量。相關系數則是用相關、卡方、直方圖相交以及巴士距離進行比較。如表2所示,在相關以及直方圖相交計算中可知未染色與被染色舌質圖相關值相差不大,而卡方相比相關值、正交以及距離會稍微偏大,這是因為函數在描述相關時量度的選取問題,但在處理相關以及距離問題上依然在相似度很近的區域范圍中。相關系數指出兩幅舌質圖像的每個顏色直方圖的相似度,具體在顏色分布以及顏色均值是近似的,只有少許的誤差。造成誤差的原因有:
1)圖像采集時的條件不在人為可控制范圍,例如光照條件的影響等;
2)信息采集時,拍照的角度;
3)飲食后對身體的影響在舌質上有變化。
由比較得知被染色舌質與未染色舌質在顏色特征沒有明顯的差距,所以舌質不易受到偏色干擾,而舌苔易被顏色較深的食品染色,舌苔集中于舌中部和舌的兩側,因此食品偏色去干擾的部分集中于解決舌苔顏色特征。

表2 直方圖比較的相關值以及距離
傳統偏色去干擾算法主要有灰度世界算法和鏡面法兩種,這兩種算法都針對圖像內容的某種假設進行處理[9],兩種方法均適用于光照對舌像產生的影響與本研究產生偏色的原因不同,故不適用上述兩種方法。文獻[13]中提取了油畫中的主題色,利用色相直方圖與色彩和諧模式進行匹配提取主色。本研究利用主題色提取的方法進行了舌像校正,如圖5舌像校正研究流程圖所示。

圖5 舌像校正研究流程圖
苔質分離分為兩種情況來進行:薄舌苔和厚舌苔,薄舌苔的情況,因為舌苔顏色淺,采用閾值法,可分離出薄舌苔舌像的苔質區域。厚舌苔的情況,因為苔色區與舌質顏色區別大,適合用聚類分類法。本研究中的舌頭是薄舌苔,苔質分離使用閾值分割,分離出的舌苔如圖6(a)舌苔、圖6(b)舌苔對照圖所示。
彩色圖像的每個像素一般有RGB三個顏色分量組成,一張圖像不會包含色彩空間中所有的顏色,只會包含其中的部分顏色。主題色即為在圖像或人的視覺中顏色占比較大的顏色,主題色提取算法目前主要有顏色量化法、聚類、和顏色建模法等。本文利用K-means算法實現了提取舌苔的主色。算法主要步驟:
1)首先要隨機的產生聚類中心(個數需自己確定),計算像素到聚類中心的距離,把像素歸類在距離最近的一類中。
2)計算像素灰度值的平均數,求每一類主題色中離平均數最近的像素記為這一類主題色新的聚類中心。
3)判斷所有主題色中心的變化,如果聚類中心改變,則再次由該聚類中心對所有像素聚類,直到所有的主題色的聚類中心不變,算法終止。
如圖7舌苔對照圖主題色可知,圖中主題色應該是除了黑、白、灰等不是舌苔上的顏色,其主題色以及顏色所占比例如表3所示。提取主題色后,對每個主題色的區域進行標記,以便下一步的偽彩色圖像處理。計算出舌苔的顏色均值為R'=137.912,G'=86.381,B'=149.572,對比舌質數據進行中醫判斷和偽彩色的灰度等級研究,進行偽彩色圖像處理。

圖6 分離舌苔

圖7 舌苔對照圖主題色
在彩色空間中,圖像由RGB三個彩色分量線性組合,在對色彩進行處理主要有真彩色、偽彩色和調配色。真彩色是在一副圖像中的每個像素值,都有RGB三個顏色分量,每個顏色分量的強度決定顯示屏的顏色,是真實的原圖彩色。偽彩色圖像認為每個像素值是一個代碼,這個值作為色彩查找的一個地址,在這個像素中查找出RGB值,然后對應其映射關系,重新在該色彩區域中對像素賦RGB值[14~15]。由于對圖像重新賦彩色值,故而顯示的彩色圖像不是圖像本身的顏色,所以稱其為偽彩色。處理結果前后如圖8校正后的舌苔所示。偽彩色圖像處理具體步驟:
1)確定主題色在圖像中的區域標記(a、b、c、d、e、f、g、h、i、j);
2)在不同的區域中重新對顏色區域細化,每區域中細化3個區域;
3)在每個細化區域中重新賦彩色值,彩色值選取依據表1中未染色局部舌質RGB均值。

圖8 校正后的舌苔

表3 舌苔主題色提取
項目研究通過確定區域標色的校正研究方法應用于完整舌體,使用opencv以及Matlab等工具進行實踐,得到如圖9(b)校正后舌像。表4校正前舌質均值與校正后舌像局部位置均值比較可知,校正后的舌像與校正前舌質的顏色相差不大,灰度級在20左右,這里的閾值取20是因為在表1未染色與被染色舌質均值的R、G、B分量的差值在20之內。結果圖表明,對于舌苔中顏色較深的部分,已經和周邊舌質部分的顏色相近,但圖像缺少原圖的生動。這主要是以下原因所導致:
1)在提取彩色圖像的主題色時,主題色的聚類中心是彩色圖像某個像素近似的RGB值,并不能將其籠統地確定為該區域的色彩值;
2)偽彩色圖像處理只是單純給圖像賦RGB值,雖然本文已經對色彩區域進行了細化,但經過軟件處理的照片與自然場景中拍攝的圖像相比,自然場景的圖像在色彩分布上會更復雜多樣且在視覺上色彩更和諧。

圖9 校正舌體

表4 校正前舌質均值與校正后舌像局部位置均值
望診是中醫診斷的主要手段之一,舌診是望診的核心內容。本研究通過對食品偏色與去干擾方法的探討,解決了舌色的舌邊色澤和舌中色苔的相對性問題。項目采用偽彩色圖像處理和灰度等級的數據校正,將開創中醫的現代化、無損傷醫療與人類健康管理的新氣象,應用前景廣闊。