趙曉梅, 張正平, 余穎聰,袁 剛, 劉兆邦*
(1.貴州大學(xué) 大數(shù)據(jù)與信息工程學(xué)院, 貴州 貴陽 550025;2.中國科學(xué)院蘇州生物醫(yī)學(xué)工程技術(shù)研究所, 江蘇 蘇州 215163;3.溫州市人民醫(yī)院, 浙江 溫州 325699)
舌診是指中醫(yī)通過觀察舌質(zhì)和舌苔的形態(tài)、色澤、潤燥等特征來判斷人體疾病重要的方法。傳統(tǒng)的中醫(yī)診斷往往受醫(yī)生的經(jīng)驗(yàn)影響而得不到關(guān)于舌頭精確的信息。如今隨著互聯(lián)網(wǎng)技術(shù)的迅速發(fā)展以及數(shù)字圖像處理技術(shù)算法的成熟,用計(jì)算機(jī)輔助舌診分析成為一大優(yōu)勢。計(jì)算機(jī)舌診[1]包括舌象的顏色校正、分割[2]、特征提取[3]、分類[4]等步驟。由于人體舌象的采集過程中因拍攝環(huán)境、角度以及拍攝設(shè)備等因素造成舌象顏色與真實(shí)顏色存在一定的偏差,這將會(huì)影響計(jì)算機(jī)舌診后續(xù)步驟的準(zhǔn)確性。由此可見,舌象的顏色校正對計(jì)算機(jī)舌診算法研究至關(guān)重要。
目前常見舌象的顏色校正方法分為監(jiān)督學(xué)習(xí)算法和無監(jiān)督學(xué)習(xí)算法。其中監(jiān)督學(xué)習(xí)算法是指在拍攝圖像的現(xiàn)場,放了標(biāo)準(zhǔn)顏色色塊的監(jiān)督色板,以這些色塊在標(biāo)準(zhǔn)光照和非標(biāo)準(zhǔn)光照下顏色進(jìn)行學(xué)習(xí),求出顏色轉(zhuǎn)換關(guān)系。例如文獻(xiàn)[5]提出了基于多項(xiàng)式回歸、偏最小二乘回歸和感興趣色域的舌象顏色校正算法,文獻(xiàn)[6]比較了人工神經(jīng)網(wǎng)絡(luò)、支持向量回歸以及多項(xiàng)式回歸這三種算法的準(zhǔn)確性,同樣的研究團(tuán)隊(duì)在文獻(xiàn)[7]提出一個(gè)優(yōu)化的舌象顏色校正方案以及時(shí)隔三年開發(fā)了一臺(tái)用于計(jì)算機(jī)舌象分析的高質(zhì)量彩色成像系統(tǒng)[8]。近幾年,陸續(xù)有人在原來的算法進(jìn)行改進(jìn)對舌象進(jìn)行顏色校正,例如ZHOU[9-10]等人提出了SA(模擬退火)-GA(遺傳算法)-BP的顏色校正算法和KPSR(核偏最小二乘回歸)的顏色校正算法。然而上述算法都只在固定的場景中進(jìn)行的,不具普適性。無監(jiān)督學(xué)習(xí)算法是指不需要監(jiān)督色板,通過色彩假設(shè)而得到色彩之間的映射關(guān)系。例如文獻(xiàn)[11]中提出了一種在自然環(huán)境中采用改進(jìn)的灰度世界和完美反射相結(jié)合的顏色校正算法對舌象進(jìn)行處理,該算法無法定性地評價(jià)校正效果的優(yōu)劣。
隨著智能手機(jī)的普及和移動(dòng)端攝像技術(shù)的提升,采用手機(jī)在開放環(huán)境中進(jìn)行舌象采集并通過互聯(lián)網(wǎng)在線分析診斷成為新型的研究方向,而且基于移動(dòng)互聯(lián)網(wǎng)的人工智能在線舌診診斷算法的研究,對于我國兩千多年中醫(yī)舌診技術(shù)的傳承和發(fā)展有莫大的作用。在文獻(xiàn)[12]中提到用SVM(支持向量機(jī))分類器估計(jì)方法去預(yù)測智能手機(jī)所拍舌象的顏色校正矩陣,該方法雖準(zhǔn)確率高,但實(shí)現(xiàn)過程復(fù)雜且執(zhí)行效率較低。本文在前人的研究基礎(chǔ)上針對中醫(yī)舌診拍攝環(huán)境的局限性,在不同場景中通過智能手機(jī)采集舌象,采用標(biāo)準(zhǔn)24色色卡作為金標(biāo)準(zhǔn),然后提出一種基于CS(布谷鳥搜索算法)-BP的舌象顏色校正算法,通過布谷鳥算法對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,經(jīng)過實(shí)驗(yàn)對比分析校正前后色差值指標(biāo),本文算法顏色校正效果要優(yōu)于傳統(tǒng)多項(xiàng)式回歸和BP神經(jīng)網(wǎng)絡(luò)算法。
多項(xiàng)式回歸算法多用于打印機(jī)色彩校正,主要優(yōu)點(diǎn)是存儲(chǔ)空間少,計(jì)算速度塊,容易實(shí)現(xiàn)。
本文與文獻(xiàn)[5]有兩點(diǎn)不一樣的地方,一是使用的色卡為國際標(biāo)準(zhǔn)的24色卡而不是自制色卡,二是采用的多項(xiàng)式模型經(jīng)過多次實(shí)驗(yàn)選用{R,G,B},如式(1)所示:
(1)
多項(xiàng)式回歸自變量R、G、B之間存在多重相關(guān)性,回歸精度受其影響,導(dǎo)致校正后的舌象與真實(shí)舌象之間還有一定的偏差。
BP神經(jīng)網(wǎng)絡(luò)用于顏色校正中目的是通過訓(xùn)練學(xué)習(xí)得到標(biāo)準(zhǔn)色卡與待校正色卡之間像素關(guān)系。
接下來用公式簡單闡述BP神經(jīng)網(wǎng)絡(luò)的原理。假設(shè)用I表示整個(gè)網(wǎng)絡(luò)的輸入,W1表示輸入層到隱藏層的閾值,B1表示輸入層到隱藏層的閾值,W2表示隱藏層到輸出層的權(quán)值,B2表示隱藏層到輸出層的權(quán)值。H表示隱藏層的輸入,Hout表示隱藏層的輸出,O表示輸出層的輸入。Oout表示網(wǎng)絡(luò)的輸出,則有:
H=W1I+B1Hout=y(H)
O=W2Hout+B2Oout=y(O)
(2)
其中y為激活函數(shù),目前常用的激活函數(shù)有階躍函數(shù) hardlim(x),線性轉(zhuǎn)移函數(shù) purelin(x),對數(shù) S 型函數(shù) logsig(x)和正切 S 型函數(shù) tansig(x)。
基于BP網(wǎng)絡(luò)的舌象顏色校正算法訓(xùn)練階段和測試階段見文獻(xiàn)[13-14]。
由于BP神經(jīng)網(wǎng)絡(luò)的初始值隨機(jī)設(shè)置,每次訓(xùn)練后的權(quán)值和閾值都在發(fā)生變化,導(dǎo)致校正后的舌象顏色不穩(wěn)定,會(huì)出現(xiàn)模糊,且BP神經(jīng)網(wǎng)絡(luò)一直存在易收斂到局部最優(yōu)的問題,由此可知,該方法魯棒性不佳,適應(yīng)度不強(qiáng)。
為了解決BP神經(jīng)網(wǎng)絡(luò)在舌象顏色校正中存在依賴初始值與易收斂到局部最小的問題,在BP的基礎(chǔ)上引入了布谷鳥搜索算法。
(1)布谷鳥搜索(Cuckoo Search)算法介紹
布谷鳥搜索算法,也叫杜鵑搜索,是由劍橋大學(xué)ZHOU等[10]提出的一種新型元啟發(fā)式搜索算法。CS算法主要是通過模擬布谷鳥的巢寄生性和levy飛行機(jī)制來有效求解最優(yōu)化問題,并且通過隨機(jī)游走的方式搜索到最佳鳥巢孵化鳥蛋,CS算法具有很好的全局搜索能力,不易陷入局部最優(yōu),且算法所涉及參數(shù)較少,簡單通用。
為了模擬布谷鳥的巢寄生性在文獻(xiàn)[15]中假定了3個(gè)理想狀態(tài):①每只布谷鳥一次只下一個(gè)蛋,并隨機(jī)選擇一個(gè)鳥巢存放;②在尋窩的過程中,放有優(yōu)質(zhì)蛋的鳥巢將會(huì)保存到下一代。③可用鳥巢的數(shù)量固定不變,一旦布谷鳥蛋被寄主鳥發(fā)現(xiàn),寄主鳥就丟棄鳥蛋或鳥巢,那么將重新尋找鳥巢,避免影響尋找優(yōu)化問題的解。
在這3個(gè)理想狀態(tài)的基礎(chǔ)上,布谷鳥尋優(yōu)搜索的位置和路徑的更新公式如式(3)所示:
(3)
Step1: 初始化BP神經(jīng)網(wǎng)絡(luò)權(quán)值和閾值長度;
Step2: 首先隨機(jī)產(chǎn)生n個(gè)鳥巢位置,每一個(gè)鳥巢位置對應(yīng)著一組BP神經(jīng)網(wǎng)絡(luò)中的權(quán)值和閾值,BP神經(jīng)網(wǎng)絡(luò)根據(jù)隨機(jī)產(chǎn)生的權(quán)值和閾值對訓(xùn)練集進(jìn)行訓(xùn)練,計(jì)算每個(gè)鳥巢位置對應(yīng)的適應(yīng)度值即為網(wǎng)絡(luò)的訓(xùn)練誤差,并由適應(yīng)度值找到當(dāng)前最優(yōu)鳥巢,且得出當(dāng)前最優(yōu)適應(yīng)度值fmin;
Step3: 將上一代最優(yōu)鳥巢帶入式(3),并對其他鳥巢進(jìn)行更新,得到一組新的鳥巢位置,然后對它們進(jìn)行測試,并與上一代的鳥巢位置進(jìn)行比較,用較好的鳥巢位置代替原來的鳥巢位置;
Step4: 將step3更新的每一組鳥巢位置送入BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,如同step2,更新鳥巢位置,并得出新的最優(yōu)鳥巢位置;
Step5: 將隨機(jī)數(shù)與發(fā)現(xiàn)概率p比較,保留step4中被發(fā)現(xiàn)概率較小的鳥巢,同時(shí)隨機(jī)改變其他鳥巢,得到一組新鳥巢位置。
Step6: 將step5得到的新巢帶入BP神經(jīng)網(wǎng)絡(luò),如同step2,計(jì)算每一組的適應(yīng)度值,并得到最佳的鳥巢位置和適應(yīng)度值fnew;
Step7: 將step6得到的最佳適應(yīng)度值與step2的適應(yīng)度值進(jìn)行比較,若fnew Step8: 循環(huán)step3-step7; Step9: 循環(huán)結(jié)束,將最優(yōu)鳥巢位置即最佳權(quán)值和閾值代入BP神經(jīng)網(wǎng)絡(luò)并對訓(xùn)練樣本再次訓(xùn)練,訓(xùn)練結(jié)束,用舌象像素進(jìn)行測試得到校正后的舌象圖。 為更好說明本文算法的正確性和有效性,將采用顏色恒常性研究中普遍使用的色差計(jì)算方法,色差是在Lab顏色空間中對顏色差異的度量,用ΔE表示,公式如下: (4) (5) 其中L*、a*、b*表示標(biāo)準(zhǔn)色卡24色塊的標(biāo)準(zhǔn)值,L、a、b表示校正后色卡24色塊的校正值,ΔEtotal表示整體色差值。 因場景、時(shí)間等因素導(dǎo)致光照強(qiáng)度不同,進(jìn)而導(dǎo)致舌象的顏色存在一定的失真,故本文在室內(nèi)、室外、白熾燈三種場景下分別采了早上9點(diǎn),中午12點(diǎn),下午2點(diǎn),下午5點(diǎn)的數(shù)據(jù)進(jìn)行對比分析,各采10例,校正前和校正后的色差值進(jìn)行了平均處理。校正色卡為麥克貝斯色卡,采集設(shè)備為小米5s,性能參數(shù)為后置攝像頭1 200萬像素,分辨率:1 920*1 080像素。采用多項(xiàng)式回歸、BP網(wǎng)絡(luò)、CS-BP網(wǎng)絡(luò)校正的結(jié)果比較如下: 圖1 室內(nèi)的校正結(jié)果Fig.1 Indoor calibration results 圖2 室外的校正結(jié)果Fig.2 Outdoor calibration results 圖3 白熾燈下的校正結(jié)果Fig.3 Calibration results under incandescent lamps 從圖1、圖2中可清晰地看到,室外校正前的色差值相比于室內(nèi)波動(dòng)大,原因在于室外所拍攝的圖像受天氣影響變化大,用三種算法對場景中的色卡進(jìn)行了顏色校正,從圖1-3中,多項(xiàng)式回歸和BP神經(jīng)網(wǎng)絡(luò)對其校正后色差值受校正前的色差值的影響,波動(dòng)較大,并且BP神經(jīng)網(wǎng)絡(luò)依賴于初始值以及易收斂于局部最優(yōu),每次訓(xùn)練后得到的參數(shù)變化較大,導(dǎo)致舌象校正后的結(jié)果不一致。因此這兩種算法都不利于后期中醫(yī)舌診的研究,而本文算法CS-BP對其校正后的色差值保持在9上下,波動(dòng)范圍較小,不受光照強(qiáng)度、環(huán)境等因素的影響,且解決了BP網(wǎng)絡(luò)遇到的兩大問題,比較適合后續(xù)舌診進(jìn)一步研究,也由此說明了CS-BP優(yōu)于多項(xiàng)式回歸和BP神經(jīng)網(wǎng)絡(luò)。 對場景中的色卡進(jìn)行校正并得到對應(yīng)的顏色校正模型,將此用于舌象的顏色校正中,校正結(jié)果如圖4-7。 圖4和圖5是室內(nèi)舌象顏色校正的情況,主觀上來看,由于圖像受智能手機(jī)參數(shù)的影響,原圖整體偏亮,經(jīng)多項(xiàng)式回歸校正后,顏色有一定的改善,但從色卡的白塊可看出,校正效果并沒有得到多大提高;用BP神經(jīng)網(wǎng)絡(luò)進(jìn)行校正后,結(jié)果在多項(xiàng)式回歸的基礎(chǔ)之上有所提高,用CS優(yōu)化BP之后,解決了在BP神經(jīng)網(wǎng)絡(luò)中遇到的問題并且校正結(jié)果有一定的改進(jìn),這與圖1中的結(jié)果相吻合。 圖4 室內(nèi)早上9點(diǎn)校正結(jié)果Fig.4 Indoor calibration results at 9 am 圖5 室內(nèi)下午2點(diǎn)校正結(jié)果Fig.5 Indoor calibration results at 2 pm 圖6和圖7是室外舌象顏色校正的情況,可以看到,因室外不同時(shí)間的溫度變化大,會(huì)出現(xiàn)偏色情況,如圖7a,因那時(shí)正接近黃昏,所以原圖顏色偏黃,經(jīng)三種算法校正后,都很大程度上修正了原圖的顏色。多項(xiàng)式回歸,BP神經(jīng)網(wǎng)絡(luò)以及本文方法校正效果依次遞進(jìn),雖說從表面上看不出BP神經(jīng)網(wǎng)絡(luò)與本文方法的優(yōu)劣,但我們可以從圖6c和圖6d的色卡可看出,BP網(wǎng)絡(luò)校正后出現(xiàn)模糊,而本文算法避免了這一缺陷,且校正結(jié)果更佳,這與圖2的結(jié)果相符。 圖6 室外早上9點(diǎn)校正結(jié)果Fig.6 Outdoor calibration results at 9 am 圖7 室外下午5點(diǎn)校正結(jié)果Fig.7 Outdoor calibration results at 5 pm 由于在拍攝過程中,拍攝角度與被拍攝者的細(xì)微動(dòng)作變化將會(huì)導(dǎo)致在相同光照下拍攝的兩幅舌象之間仍存在一定的色差,所以本文在實(shí)驗(yàn)中分別在相同時(shí)間內(nèi)的室內(nèi)、室外和白熾燈三種場景下共拍攝了9幅圖像,每個(gè)場景3幅圖像,經(jīng)三種算法校正后,將色差值取均值得到表1,從表中可看出,多項(xiàng)式回歸校正結(jié)果最差且因拍攝角度、拍攝設(shè)備等因素影響而導(dǎo)致色差值波動(dòng)較大,而BP神經(jīng)網(wǎng)絡(luò)和本文算法得到的結(jié)果相對穩(wěn)定,如表中的室內(nèi)室外兩種場景下的色差值對比情況。 本文提出了一種基于CS-BP網(wǎng)絡(luò)的舌象顏色校正算法,通過與多項(xiàng)式回歸和BP神經(jīng)網(wǎng)絡(luò)兩種方法進(jìn)行實(shí)驗(yàn)對比,證實(shí)了本文算法的有效性。 表1 各算法校正結(jié)果色差值Tab.1 Color difference values of the calibration results of each algorithm 因色卡的樣本量以及開放環(huán)境不確定因素的影響,本文三種算法的校正結(jié)果有所局限,無法達(dá)到標(biāo)準(zhǔn)封閉環(huán)境下的校正結(jié)果,故如若像文獻(xiàn)[6]中取與舌色相近的顏色定制色卡進(jìn)行訓(xùn)練,校正結(jié)果會(huì)更佳。但本文在有限的實(shí)驗(yàn)條件下,研究了舌象在三種不同場景下舌象的顏色校正,對于未來互聯(lián)網(wǎng)應(yīng)用中醫(yī)舌診技術(shù)的推廣,仍具有較高的實(shí)用性和研究價(jià)值。2 實(shí)驗(yàn)結(jié)果及分析
2.1 評價(jià)分析
2.2 結(jié)果分析
4 結(jié)語