苑瑋琦,金 爽
(沈陽工業(yè)大學(xué)視覺檢測技術(shù)研究所,遼寧沈陽 110870)
為了能夠清晰便捷地觀察到虹膜的情況,人們對虹膜采集技術(shù)的研究一直在進行。一個優(yōu)秀的虹膜圖像采集系統(tǒng)能夠大大提高虹膜診斷的正確率,為醫(yī)生觀察虹膜特征提供極大的方便。
現(xiàn)有的虹膜圖像采集裝置還存在各種不足,例如有的裝置會在檢測時受到各方面影響,造成被測者眨眼或轉(zhuǎn)動眼球,檢測難以準(zhǔn)確;有的裝置過于龐大、復(fù)雜和昂貴,使得使用范圍受到限制。另外,光源強度過大傷害人眼,存在光斑等都是目前虹膜檢測領(lǐng)域存在的問題。
文中所設(shè)計的是一種便攜式的虹膜采集裝置,通過USB接口即可將圖像顯示在電腦上,攜帶方便,使用方法簡單。該裝置根據(jù)虹膜特點以及醫(yī)療診斷的要求選取合適的光源和鏡頭,設(shè)計了抗干擾性強、對人眼無損傷的光學(xué)結(jié)構(gòu)。數(shù)據(jù)傳輸電路以USB2.0接口芯片CY7C68013A為主控芯片,圖像的處理分析均在上位機進行,響應(yīng)速度快,圖像質(zhì)量好,可滿足大部分虹膜醫(yī)療診斷的要求。
虹膜圖像采集裝置以人眼虹膜為采集對象,由光學(xué)系統(tǒng)、圖像傳感器、USB接口芯片等組成。光學(xué)系統(tǒng)采集用戶的虹膜圖像,圖像信息由圖像傳感器進行數(shù)字化處理。處理后的數(shù)據(jù)進入USB接口芯片,快速上傳至計算機主機端進行顯示、存儲等操作,如圖1所示。
圖1 虹膜圖像的采集過程
在虹膜圖像的采集過程中,光學(xué)系統(tǒng)提供光源和鏡頭,并配以輔助的遮擋裝置。設(shè)計時需要考慮以下幾個主要問題:
(1) 光源強度適中、顯色性好、位置合理。既能滿足圖像質(zhì)量的要求又不給被采集者的眼睛造成傷害。
(2) 選擇合適的鏡頭,充分考慮各方面因素使圖像質(zhì)量達到最佳。
(3) 遮擋裝置一方面要消除外界雜光干擾,一方面又起到固定拍攝位置的作用。
虹膜診斷需要觀察虹膜的形態(tài)變化,如顏色、色斑,結(jié)構(gòu)和瞳孔變化等[1]。單色光的顯色性很差,會極大地影響觀察到的物體顏色,而白光顯色性很好[2],作為光源時能最大程度地還原虹膜顏色信息。
設(shè)計選用的是一款高指向性白光LED。目前市場上同類虹膜采集設(shè)備的光源發(fā)光強度多在2 500~3 500 mcd范圍內(nèi),而本裝置的光源發(fā)光強度為1 500~1 800 mcd,低于大部分同類產(chǎn)品,被采集者并無不適感。另外,CMOS傳感器要求的最低照度一般在6~15 Lux范圍內(nèi),該光源照度遠高于該值。
采集過程中光線要盡量避免直射瞳孔,因此需要根據(jù)虹膜直徑和瞳孔直徑來確定拍攝距離、光源的安裝位置與角度。除此之外光源方向性、體積、發(fā)光角度等均需要考慮。
光源安裝位置如圖2所示,兩燈位于主光軸兩側(cè),直線距離L=30 mm,照射方向與光軸夾角φ=60°。人眼虹膜直徑約為10~12 mm,瞳孔直徑2~4 mm.光源直射位置要在瞳孔之外,虹膜之內(nèi)。取虹膜直徑R=10 mm,瞳孔直徑r=4 mm。已知光源直徑1 mm,由于拍攝距離很近,且高指向性光源的散射角很小,光斑直徑r′可視為與光源直徑一致,即r′=1 mm.計算裝置允許的最遠拍攝距離:
(1)
最近拍攝距離:
(2)
將拍攝位置固定在S=6.5 mm處,光線照射在距瞳孔中心約3.75 mm處,不會直射入瞳孔。
圖2 光源安裝位置
當(dāng)有光線照射在虹膜上時,會在虹膜區(qū)域上反光,形成位于虹膜區(qū)內(nèi)的光斑,造成該部分虹膜區(qū)域信息被破壞。該裝置光源形成的光斑位于瞳孔兩側(cè)的虹膜上,直徑1 mm左右。為消除光斑干擾,照明裝置(圖3)中兩個LED發(fā)光管的開啟可以分別控制。使用時依次打開左燈、右燈,采集兩幅圖像,即可觀察到光斑遮擋的區(qū)域。
若被測人眼睛受到自然光或景物影響,會眨眼或轉(zhuǎn)動眼球[3],影響檢測效果。因此設(shè)計添加了遮擋裝置,用于避免外界干擾,而且遮擋裝置與被測人接觸,起到固定拍攝位置的作用。
圖3 照明裝置平面示意圖
光學(xué)鏡頭在虹膜采集裝置中具有非常重要的作用。虹膜直徑僅10 mm左右,必須使用光學(xué)鏡頭放大虹膜圖像。焦距決定了放大倍數(shù),分辨率則影響圖像的清晰度[4]。另外景深、視場角、拍攝距離等也決定圖像的質(zhì)量。選取鏡頭時要充分考慮各種因素,保證虹膜圖像滿足醫(yī)療分析的要求。
如圖4所示,當(dāng)已知被攝物體的大小及該物體到鏡頭距離,則可根據(jù)下式計算所選取配鏡頭的焦距:
(3)
式中:f為鏡頭焦距;D為被攝物體到鏡頭的距離;W和H為被攝物體的寬度和高度;w和h為被攝物體在傳感器靶面上成像寬度和高度。
圖4 鏡頭成像示意圖
鏡頭是否能拍攝到完整的虹膜圖像由視場角決定。計算公式如下:
(4)
(5)
帶入各值進行計算,得水平視角θah=22.62°,垂直視角θav=17.06°。鏡頭的視場角要大于該值,且鏡頭尺寸要與圖像傳感器靶面大小匹配。綜合以上計算,選擇靶面大小為1/4英寸,焦距9 mm,視場角25.0°×18.5°的鏡頭。
該裝置為接觸式采集設(shè)備,使用時將遮擋裝置緊貼眼眶,即可固定人眼到鏡頭的距離,但虹膜在視場中的位置并不能精確固定,因此將整個眼部納入到成像范圍內(nèi)。
光源、鏡頭、傳感器和遮擋裝置的位置關(guān)系如圖5。遮擋裝置將人眼固定在距光源約6.5 mm的拍攝區(qū)域內(nèi),使眼部基本布滿整個視場。鏡頭距拍攝位置約50 mm,根據(jù)鏡頭焦距,將圖像傳感器放置在距鏡頭9 mm處。
圖5 光學(xué)系統(tǒng)結(jié)構(gòu)示意圖
圖像數(shù)據(jù)的傳輸由USB接口芯片完成。本裝置使用EZ-USB FX2LP系列中的CY7C68013A芯片作為核心處理器。數(shù)據(jù)傳輸通常需要微處理器通過固件訪問接口芯片的端點FIFO和外圍設(shè)備接口,固件程序執(zhí)行較慢會限制數(shù)據(jù)傳輸速率,而CY7C68013A提供了一種獨特的“量子FIFO”架構(gòu),USB接口和應(yīng)用環(huán)境直接共享FIFO存儲器,無需執(zhí)行固件程序便可實現(xiàn)端點FIFO與外部的數(shù)據(jù)交換[6]。端點FIFO可工作在5~48 MHz時鐘頻率下,而圖像傳感器的信號輸出頻率為24 MHz,CY7C68013A符合要求。
硬件電路如圖6所示,圖像傳感器輸出8位數(shù)字視頻信號,并提供行信號、場信號及像素時鐘信號對端點FIFO進行外部邏輯控制。IIC總線用于圖像傳感器與USB接口芯片的通信。整個裝置由USB總線提供5 V電壓源,電壓經(jīng)轉(zhuǎn)換后為各部分供電。接口芯片內(nèi)部無程序存儲器,需要外部程序存儲器裝載固件程序。LED光源的開關(guān)由I/O接口控制。
圖6 虹膜采集裝置硬件電路
3.2.1 硬件連接
圖7是圖像傳感器OV7725與USB2.0接口芯片CY7C68013A的連接方式。接口芯片的時鐘輸出引腳CLKOUT為傳感器提供24 MHz時鐘信號。圖像傳感器像素時鐘輸出PCLK為CY7C68013A提供外部參考時鐘。將OV7725設(shè)置為每個PCLK的上升沿輸出一個像素點。每當(dāng)檢測到FIFO時鐘接口IFCLK信號的上升沿時(端點FIFO寫使能情況下)圖像傳感器就將一個8位數(shù)據(jù)寫入USB端口FIFO緩沖區(qū)中,達到圖像傳感器與USB控制器同步傳輸?shù)男Ч?/p>
圖7 圖像傳感器與USB接口芯片的連接
系統(tǒng)設(shè)置為從屬FIFO模式,即將外設(shè)作為主控方,控制端點FIFO與外設(shè)間的數(shù)據(jù)傳輸。信號時序如圖8所示,圖像傳感器輸出的行信號(HREF)控制端點FIFO的寫信號(SLWR),行信號高電平期間使端點FIFO寫有效,保證傳輸有效的圖像數(shù)據(jù)。場信號(VSYNC)與外部中斷引腳(INT0)連接,當(dāng)一幀數(shù)據(jù)到來時觸發(fā)中斷服務(wù)子程序,通知USB控制器新一幀圖像的到來以達到與CMOS圖像場同步的目的。在中斷程序中進行從屬FIFO模式轉(zhuǎn)換,系統(tǒng)便可在PC機命令下開始采集傳輸。
圖8 圖像傳感器輸出信號時序圖
對圖像傳感器的配置通過I2C總線(SCL與SDA)實現(xiàn)。傳感器的數(shù)據(jù)輸出管腳Y[7:0] 和接口芯片的FD[7:0] 相連,傳輸實際的圖像數(shù)據(jù)。
3.2.2 數(shù)據(jù)傳輸方式選擇
若圖像傳感器輸出YUV4:2:2格式圖像,則每兩個像素點占用四字節(jié)存儲空間,圖像大小為640×480像素,每秒輸出30幀,計算有效圖像數(shù)據(jù)傳輸速度為:
640×480×2×30≈17.6 MB/s
(6)
USB2.0協(xié)議規(guī)定USB總線速度上限為60 MB/s,考慮各種通信協(xié)議開銷后,理論傳輸速度如表1[7],其中每微幀為125 μs.由表1可知中斷傳輸、批量傳輸、同步傳輸?shù)膫鬏斔俣染笥趫D像傳感器的17.6 MB/s.但實際應(yīng)用中傳輸速度受其他因素的影響會大大降低,為確保圖像數(shù)據(jù)正常傳送,選擇傳輸速度為53.248 MB/s,最接近總線速度上限的批量傳輸方式。
表1 USB2.0數(shù)據(jù)最大傳輸速度
接口芯片CY7C68013A工作在Auto-In(自動打包)機制下,數(shù)據(jù)在“量子FIFO”中以數(shù)據(jù)包而非字節(jié)的形式傳輸,即對端點FIFO進行寫操作時,寫滿協(xié)議規(guī)定的數(shù)據(jù)封包容量后便自動啟動一次數(shù)據(jù)傳輸過程。工作時,圖像數(shù)據(jù)經(jīng)由通用接口進入端點緩沖區(qū),再以數(shù)據(jù)包的形式進行傳送。USB串行接口引擎(SIE)通過USB總線將數(shù)據(jù)上傳至主機端。一般情況下使用雙重或三重、四重緩沖在通用接口與串行接口間輪換,如圖9所示。
圖9 圖像數(shù)據(jù)傳輸示意圖
虹膜采集裝置的軟件系統(tǒng)由3部分組成:固件程序、驅(qū)動程序、應(yīng)用程序。
固件程序是指USB接口芯片CY7C68013A的片內(nèi)程序。為減少設(shè)計人員的工作量,Cypress公司提供了一個固件框架firmware,大部分與USB協(xié)議相關(guān)的工作都已在固件中完成了。固件程序主要實現(xiàn)以下3方面功能:對USB端口和FIFO進行初始化配置;完成對圖像傳感器的編程配置;其他自定義功能的設(shè)定。
進行固件開發(fā)時,首先要根據(jù)設(shè)備情況來定義USB描述符。然后進行端點配置和操作模式設(shè)定,該設(shè)計使用slave FIFO模式,數(shù)據(jù)自動打包,批量傳輸,設(shè)置四重緩沖區(qū),每個緩沖區(qū)大小1 024字節(jié)。
對圖像傳感器進行配置時,主機向OV7725傳輸?shù)挠行?shù)據(jù)分為三個部分,依次為芯片的ID地址、目地寄存器地址和要寫的數(shù)據(jù)。使用時不必配置所有的寄存器,只針對設(shè)計中需要的寄存器進行配置即可,主要包括圖像分辨率、輸出格式、時鐘、攝像頭和影像處理功能等。
驅(qū)動程序使用Cypress公司提供的通用USB驅(qū)動程序CYUSB.SYS。相應(yīng)地,主機則使用CyAPI控制函數(shù)類庫方法進行編程。
CyAPI控制函數(shù)類庫為EZ-USB系列接口芯片提供了精細的控制接口。進行應(yīng)用程序編程時,以Cypress提供的驅(qū)動程序為基礎(chǔ),在主機程序中加入頭文件CyAPI.h和庫文件CyAPI.lib即可調(diào)用CyAPI函數(shù)庫中的基礎(chǔ)函數(shù)。
為提高數(shù)據(jù)傳輸速率,主程序中單獨開啟一個批量傳輸線程。在該線程中使用設(shè)備控制類下的Open()函數(shù)打開USB設(shè)備,然后調(diào)用3個函數(shù)BeginDataXfer()、WaitForXfer()、FinishDataXfer()讀取FIFO中的數(shù)據(jù),最后調(diào)用Close()函數(shù)結(jié)束程序。圖像數(shù)據(jù)存放于計算機內(nèi)存中,設(shè)計中圖像傳感器輸出YUV422格式的數(shù)據(jù),不能直接在計算機顯示,需先轉(zhuǎn)化為RGB24數(shù)據(jù)格式。轉(zhuǎn)化公式如下:
R=Y+1.042×(V-128)
(7)
G=Y-0.344 14×(U-128)-0.714 14×(V-128)
(8)
B=Y+1.772×(U-128)
(9)
傳輸過程中達到一幀數(shù)據(jù)量并完成格式轉(zhuǎn)化后即開始顯示圖像,直到下一幀數(shù)據(jù)傳輸轉(zhuǎn)換完成,進行刷新,實現(xiàn)實時顯示。圖像以BMP格式保存。采集虹膜圖像時,觀察上位機顯示的視頻,滿足要求時即可拍照并保存圖像,應(yīng)用程序流程如圖10。
圖10 應(yīng)用程序流程圖
文中設(shè)計了一個基于USB2.0接口芯片的虹膜圖像采集裝置,輸出VGA格式(30萬像素)圖像,速度達到30 fps,具備實時顯示、拍照、存儲等功能。該虹膜圖像采集裝置光源強度較小,抗干擾性強,為虹膜醫(yī)療診斷提供了良好的硬件基礎(chǔ)。圖11為該裝置采集到的虹膜圖像。
圖11 裝置采集的虹膜圖像
參考文獻:
[1] 王齡.觀察虹膜知健康.沈陽:遼寧科學(xué)技術(shù)出版社,2010:2.
[2] 曾華陽,劉寶林,黃文達,等.發(fā)光二極管的色度分析.光電器件與材料,2009,24(2):40-43.
[3] 楊思蘊.一種虹膜檢測裝置:中國,200910039113.1[P] .2009-04-30.
[4] 胡宗星.虹膜采集關(guān)鍵問題的研究與實踐:[學(xué)位論文] .長春:吉林大學(xué),2011.
[5] OmniVision Technologies,lnc.OV7725_CSP2_DS_(1.5) [DB/OL]. (2008-08-04).[2013-11-03] .http://www.ovt.com/products/category.php?id=15.
[6] 焦斌亮,韓志學(xué).基于EZ-USB FX2實現(xiàn)的高速數(shù)據(jù)采集系統(tǒng).儀表技術(shù)與傳感器,2005(7):21-22.
[7]劉思久,趙蔚.實現(xiàn)USB2.0高速數(shù)據(jù)傳輸?shù)膯栴}探討.計算機工程與應(yīng)用,2007,43(2):75-77.