梅笑冬,王 彪,朱 哲,趙培陸,胡小龍,盧革宇
(1.吉林大學(xué)電子科學(xué)與工程學(xué)院,長(zhǎng)春130012;2.中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所,長(zhǎng)春130033)
近年來(lái),隨著經(jīng)濟(jì)的發(fā)展和生活質(zhì)量的逐步提高,香水的使用成為提升自身人格魅力的一種新風(fēng)尚,香水的選用在一定程度上代表選用者的個(gè)人品味和修養(yǎng),選擇一款合適的香水成為許多人追求的目標(biāo)。然而,目前市場(chǎng)上存在大量含有苯類、醛類等致癌物質(zhì)的劣質(zhì)香水,其安全性很難得到保證。因此,如何方便有效地識(shí)別真假、優(yōu)劣的香水顯得十分重要。
傳統(tǒng)的香水識(shí)別主要靠感官評(píng)定,主觀性強(qiáng),重復(fù)性較差;而氣相色譜、色譜-質(zhì)譜聯(lián)用及電化學(xué)等方法,又存在分析過(guò)程復(fù)雜,費(fèi)用昂貴、不能實(shí)時(shí)檢測(cè)等問(wèn)題。新興的電子鼻檢測(cè)技術(shù)憑借其客觀性強(qiáng)、操作簡(jiǎn)單、價(jià)格低廉等優(yōu)勢(shì)[1,2]已被廣泛應(yīng)用于環(huán)境監(jiān)測(cè)、污染治理、食品安全和醫(yī)療診斷等領(lǐng)域,但是在化妝品領(lǐng)域,電子鼻的應(yīng)用還是很少。其中模式識(shí)別在整個(gè)電子鼻系統(tǒng)中有著舉足輕重的地位[3,4]。目前應(yīng)用比較廣泛的主成分分析法(PCA:Principal Component Analysis))、線性判別法(LDA:Linear Discriminant Analysis)[5]、BP神經(jīng)網(wǎng)絡(luò)等都具有一定的局限性,如神經(jīng)網(wǎng)絡(luò)法通常要求訓(xùn)練樣本數(shù)足夠多,以保證泛化精度。而根據(jù)統(tǒng)計(jì)學(xué)理論提出的支持向量機(jī)(SVM:Support Vector Machine)[6],能較好地解決小樣本、非線性、高維數(shù)和局部極小點(diǎn)等實(shí)際問(wèn)題,在解決有限樣本及不等距樣本的分類問(wèn)題上具有潛在的優(yōu)勢(shì)。為此,筆者將SVM應(yīng)用到香水分類檢測(cè)中,研制了基于支持向量機(jī)的香水識(shí)別電子鼻系統(tǒng)。
系統(tǒng)分為硬件設(shè)計(jì)和軟件設(shè)計(jì)兩部分。硬件設(shè)計(jì)主要完成對(duì)傳感器陣列的驅(qū)動(dòng),數(shù)據(jù)的采集、去噪、存儲(chǔ)和發(fā)送等功能。軟件設(shè)計(jì)包括兩方面:一方面是對(duì)硬件電路上主芯片的控制、溫濕度傳感器的底層驅(qū)動(dòng)以及模數(shù)轉(zhuǎn)換后數(shù)據(jù)的處理;另一方面是上位機(jī)監(jiān)控界面的設(shè)計(jì)及內(nèi)嵌模式識(shí)別算法的實(shí)現(xiàn)。電子鼻系統(tǒng)結(jié)構(gòu)如圖1所示。傳感器陣列采集樣本數(shù)據(jù),經(jīng)信號(hào)調(diào)理電路和模數(shù)轉(zhuǎn)換后,交給微控制器進(jìn)行初步去噪,然后傳給上位機(jī)進(jìn)行特征提取和模式識(shí)別。
圖1 電子鼻系統(tǒng)結(jié)構(gòu)圖Fig.1 The system structure of the e-nose system
硬件電路板以微控制器dsPIC30F6014A[7]為核心,配合氣敏傳感器陣列,12位精度的模數(shù)轉(zhuǎn)換器(A/D),串行接口,電源模塊等實(shí)現(xiàn)數(shù)據(jù)的采集、轉(zhuǎn)換和上傳功能。
氣敏傳感器初步選定日本FIGARO公司的5種廣譜型金屬氧化物傳感器(TGS2600、TGS2602、TGS2610、TGA2611和TGS2620)。經(jīng)實(shí)驗(yàn)測(cè)試發(fā)現(xiàn)TGS2602和TGS2610兩種傳感器對(duì)4種香水樣本的響應(yīng)曲線與TGS2600和TGS2611大體相同,為減小冗余,選定TGS2600、TGA2611和TGS2620這3種傳感器。此外,該系統(tǒng)還加入了集成的溫濕度傳感器SHT10,用來(lái)實(shí)時(shí)監(jiān)測(cè)實(shí)驗(yàn)環(huán)境的溫濕度。傳感器陣列電路如圖2所示。
圖2 傳感器陣列電路原理圖Fig.2 The schematic diagram of the sensor array
微控制器電壓選用+5 V,溫濕度傳感器和氣敏傳感器陣列的加熱電壓和回路電壓也是+5 V。但由于傳感器工作時(shí)電流相對(duì)較大,為保證電壓能達(dá)到所需電壓,筆者采用+9 V電源電壓輸入,通過(guò)LM7805三端穩(wěn)壓器將其轉(zhuǎn)為+5 V給電子鼻系統(tǒng)供電。同時(shí)在穩(wěn)壓電源上安裝散熱板,保證電源芯片能及時(shí)散熱。微控制器電路圖如圖3所示。
圖3 微控制器電路原理圖Fig.3 The schematic diagram of MCU
該系統(tǒng)的軟件設(shè)計(jì)包括dsPIC及外圍電路的硬件驅(qū)動(dòng)程序編寫和上位機(jī)軟件設(shè)計(jì)。硬件驅(qū)動(dòng)開發(fā)環(huán)境為Maplab X,上位機(jī)控制分析采用Visual C++6.0和Matlab R2010a混合編程。軟件設(shè)計(jì)流程圖如圖4所示。
圖4 軟件設(shè)計(jì)流程圖Fig.4 Flow chart of software design
該系統(tǒng)將片上A/D配置為外部參考電壓方式,選用RB3-RB5做 A/D輸入口,分別對(duì)應(yīng) TGS2600、TGS2611、TGS2620 3個(gè)采樣通道,掃描輸入,每12個(gè)采樣中斷一次。為了使采集到的樣本更準(zhǔn)確,將每個(gè)通道的4次采樣數(shù)據(jù)存在ADCBUFFER中,取平均值后作為返回值輸出。
溫濕度傳感器SHT10的主要接口函數(shù)為ReadTemp_SHT10()和ReadHumi_SHT10(),在設(shè)計(jì)時(shí)根據(jù)讀取到的溫度值進(jìn)行相應(yīng)的濕度補(bǔ)償,SHT_HUMI=(SHT_TEMP-25)(0.01+0.000 08temp)+SHT_HUMI_Linear。
上位機(jī)控制面板(見(jiàn)圖5)是基于Microsoft Visual C++中的MFC模式開發(fā)的,控制程序中嵌入了MSComm控件[8],用來(lái)和下位機(jī)通信。在OnTimer()處理函數(shù)中實(shí)現(xiàn)定時(shí)采樣,計(jì)算機(jī)給MCU發(fā)送一個(gè)通道號(hào),MCU收到通道號(hào)后回發(fā)給計(jì)算機(jī)相應(yīng)通道的采樣數(shù)據(jù)。
圖5 電子鼻系統(tǒng)控制面板Fig.5 The control panel of the e-nose system
程序中還嵌入了 TeeChart控件繪制各傳感器的動(dòng)態(tài)響應(yīng)曲線;使用 COleDateTime∷GetCurrentTime()獲取系統(tǒng)時(shí)間;用SetTimer()添加定時(shí)器,控制傳輸數(shù)據(jù)的速度;用ListControl完成采樣數(shù)據(jù)的實(shí)時(shí)顯示。
點(diǎn)擊保存文件按鈕,可將列表框中的內(nèi)容保存到Excel表格里,以便后續(xù)分析處理數(shù)據(jù)使用。點(diǎn)擊預(yù)測(cè)和分類按鈕,可以看到數(shù)據(jù)通過(guò)學(xué)習(xí)后預(yù)測(cè)和分類的結(jié)果。
系統(tǒng)利用SVM對(duì)電子鼻系統(tǒng)獲取的數(shù)據(jù)進(jìn)行分析,SVM利用輸入空間的核函數(shù)取代了高維特征空間中的內(nèi)積運(yùn)算,解決了算法可能導(dǎo)致的“維數(shù)災(zāi)難”問(wèn)題[9]。
SVM模型的判別函數(shù)[10]
它在形式上類似于一個(gè)神經(jīng)網(wǎng)絡(luò),輸出是M個(gè)中間節(jié)點(diǎn)的線性組合,每個(gè)中間結(jié)點(diǎn)對(duì)應(yīng)一個(gè)支持向量(見(jiàn)圖6)。
圖6 SVM的網(wǎng)絡(luò)結(jié)構(gòu)Fig.6 The network structure of SVM
該系統(tǒng)通過(guò)Matlab和VC6.0混合編程[11]對(duì)樣本進(jìn)行分析處理。利用Matlab自帶的mapminmax()函數(shù)對(duì)樣本進(jìn)行歸一化,然后調(diào)用libsvm工具箱中的函數(shù)svmtrain、svmpredict、svmclassify對(duì)所測(cè)數(shù)據(jù)進(jìn)行學(xué)習(xí)、預(yù)測(cè)和分類[12]。核函數(shù)使用多項(xiàng)式核函數(shù),是最常用的一種非線性映射,d階的多項(xiàng)式核函數(shù)定義如下
啟動(dòng)deploytool將.m文件編譯、打包成COM組件,在VC6.0中調(diào)用編譯好的COM組件,通過(guò)類別參數(shù)的傳遞,就可顯示出識(shí)別結(jié)果。
使用搭建的電子鼻系統(tǒng)進(jìn)行實(shí)驗(yàn),通過(guò)配備不同種類的香水氣體環(huán)境,驗(yàn)證本系統(tǒng)對(duì)香水識(shí)別的效果。實(shí)驗(yàn)選用了同一品牌4種香型的香水進(jìn)行測(cè)試,分別為:迪奧真我EDP、迪奧真我純香、迪奧粉紅魅惑和迪奧小姐淡香氛。
取樣過(guò)程采用靜態(tài)蒸發(fā)法,用微量進(jìn)樣器分別抽取0.1 μL的樣品,放入1 000 mL氣體瓶中揮發(fā)30 min,組成測(cè)試樣本。測(cè)試環(huán)境溫度25℃,相對(duì)濕度35%。訓(xùn)練數(shù)據(jù)由50組在測(cè)試樣本中穩(wěn)定的特征值組成。利用SVM預(yù)測(cè)得到測(cè)試集的實(shí)際分類和預(yù)測(cè)分類情況如圖7所示,準(zhǔn)確率達(dá)92%。
對(duì)未知樣品進(jìn)行識(shí)別測(cè)試實(shí)驗(yàn)。檢測(cè)樣本由3×250個(gè)特征數(shù)據(jù)矩陣構(gòu)成:電子鼻進(jìn)入測(cè)試環(huán)境前點(diǎn)擊“進(jìn)樣前采集”按鈕,采樣50個(gè)數(shù)據(jù)點(diǎn)后自動(dòng)結(jié)束;將電子鼻置于測(cè)試樣本中,點(diǎn)擊“樣本中采集”按鈕,采樣100個(gè)數(shù)據(jù)點(diǎn)后自動(dòng)結(jié)束;將電子鼻重新置于空氣中,點(diǎn)擊“離樣后采集”按鈕,再采樣100個(gè)數(shù)據(jù)點(diǎn)后自動(dòng)結(jié)束。將采樣數(shù)據(jù)保存后,點(diǎn)擊“分類”按鈕給出識(shí)別結(jié)果(見(jiàn)圖8)??梢钥吹剑粶y(cè)樣品為迪奧真我純香,與事實(shí)相符。
圖7 SVM預(yù)測(cè)分類圖Fig.7 The classification figure of SVM prediction
圖8 SVM檢測(cè)結(jié)果圖Fig.8 The test result of SVM classification
筆者自主研制了一套以dsPIC30F6014A為主芯片的電子鼻硬件系統(tǒng),并將適用于小樣本分類的支持向量機(jī)方法運(yùn)用到香水識(shí)別分類中,實(shí)現(xiàn)了對(duì)未知香水的種類檢測(cè)。同時(shí),還為該套電子鼻設(shè)備開發(fā)了相應(yīng)的上位機(jī)控制軟件,其界面簡(jiǎn)潔美觀、人機(jī)交互便捷而且可移植性好。通過(guò)4種香水樣品的測(cè)試可以看到,各種樣品被有效地區(qū)分開,達(dá)到了樣本識(shí)別的目的,驗(yàn)證了該系統(tǒng)具有較好的穩(wěn)定性和實(shí)用性。與傳統(tǒng)的香水識(shí)別方法相比,該系統(tǒng)具有操作簡(jiǎn)便、高可靠性、低成本、高精度和高集成度等優(yōu)點(diǎn),并且經(jīng)過(guò)擴(kuò)展即可應(yīng)用到與之相關(guān)的領(lǐng)域中,為今后電子鼻系統(tǒng)的實(shí)用化和廣泛化奠定了良好的基礎(chǔ)。
[1]YU Huichun,WANG Jun.Discrimination of Longjing Green-Tea Grade by Electronic Nose[J].Sensors and Actuators B,2007,122:134-140.
[2]LHPUS D,WILSON M.Applications and Advances in Electronic-Nose Technologies[J].Sensors,2009,37(9):5099-5148.
[3]BICEGO M,TESSARI G,TECCHIOLLI G,et al.A Comparative Analysis of Basic Pattern Recognition Techniques for the Development of Small Size Electronic Nose[J].Sensors and Actuators B,2002,85(4):137-144.
[4]MANUEL CANO,VIRGINIA BORREGO,et al.Rapid Discrimination and Counterfeit Detection of Perfumes by an Electronic Olfactory System[J].Sensors and Actuators B,2011,122(3):319-324.
[5]CLAUDE D,MARTINE L,MARYAM S.Discrimination and Identification of a Refrigerant Gas in a Humidity Controlled Atmosphere Containing or not Carbon Dioxide:Application to the Electronic Nose [J].Sensors and Actuators B,2004,98(11):46-53.
[6]汪輝,皮道映,孫優(yōu)賢.支持向量機(jī)在線訓(xùn)練算法及其應(yīng)用[J].浙江大學(xué)學(xué)報(bào):工學(xué)版,2004,38(12):1642-1645.WANG Hui,PI Daoying,SUN Youxian.On-Line Support Vector Machine Training Algorithm and Its Application[J].Journal of Zhejiang University:Engineering Science,2004,38(12):1642-1645.
[7]胡薔.dsPIC數(shù)字信號(hào)處理控制器及其應(yīng)用[J].機(jī)械制造與自動(dòng)化,2005(2):136-129.HU Qiang.The Digital Signal Handle Controller dsPIC and Its Application[J].Jiangsu Machine Building& Automation,2005(2):136-129.
[8]章輝,葉建芳,葉建威.基于MSComm控件串口通信的實(shí)現(xiàn)[J].電子測(cè)量技術(shù),2011,34(8):126-129.ZHANG Hui,YE Jianfang,YE Jianwei.Realization of Serial Communication Based on MSComm Control[J].Electronic Measurement Technology,2011,34(8):126-129.
[9]常志勇,陳東輝,門海濤,等.基于圓錐形仿生氣體室的雞肉新鮮度電子鼻檢測(cè)技術(shù)[J].吉林大學(xué)學(xué)報(bào):工學(xué)版,2011,41(增刊2):334-337.CHANG Zhiyong,CHEN Donghui,MEN Haitao,et al.Electronic Nose in Chicken Freshness Detection Based on Con-Shaped Gas Chamber Bionic Technology [J].Journal of Jilin University:Engineering and Technology Edition,2011,41(S2):334-337.
[10]崔建明,劉建明,廖周宇.基于SVM算法的文本分類技術(shù)研究[J].計(jì)算機(jī)仿真,2013,30(2):299-302.CUI Jianming,LIU Jianming,LIAO Zhouyu.Research of Text Categorization Based on Support Vector Machine [J].Computer Simulation,2013,30(2):299-302.
[11]李芳,徐麗.基于COM組件的Matlab7.x與VC++6.0接口技術(shù)及實(shí)際應(yīng)用[J].計(jì)算機(jī)應(yīng)用與軟件,2009,26(2):131-134.LI Fang,XU Li.On Techonology of Interface between MATLAT7.X and VC++6.0 Based on COM and Its Actual Application[J].Computer Applications and Software,2009,26(2):131-134.
[12]高媛媛,劉強(qiáng)國(guó).基于 LIBSVM的葡萄酒品質(zhì)評(píng)判模型[J].四川理工學(xué)院學(xué)報(bào):自然科學(xué)版,2010,23(5):530-532.GAO Yuanyuan,LIU Qiangguo.Wine Quality Evaluation Model Based on LIBSVM [J].Journal of Sichuan University of Science& Engineering:Natural Science Edition,2010,23(5):530-532.