周文光,王春飛,毛坤劍,陳 慶,孔 悅
基于CCD和FPGA的內(nèi)窺鏡圖像采集系統(tǒng)的設(shè)計
周文光,王春飛,毛坤劍,陳慶,孔悅
目的:設(shè)計一種內(nèi)窺鏡圖像采集系統(tǒng),以輔助診療。方法:采用高分辨率電荷耦合器件(charge coupled device,CCD)圖像傳感器將內(nèi)窺鏡觀測到的光學(xué)信號轉(zhuǎn)換為電信號,經(jīng)模數(shù)轉(zhuǎn)換后由現(xiàn)場可編程門陣列(field-programmable gate array,F(xiàn)PGA)控制器進行數(shù)據(jù)存儲,最后經(jīng)外設(shè)組件互連標(biāo)準(zhǔn)(peripheral componet interconnect,PCI)總線傳輸?shù)接嬎銠C。結(jié)果:經(jīng)測試,該系統(tǒng)可采集到清晰、穩(wěn)定的圖像,且結(jié)構(gòu)簡單、操作方便。結(jié)論:該系統(tǒng)采集的圖像質(zhì)量好,臨床使用方便,非常適用于內(nèi)窺鏡的診療工作。
內(nèi)窺鏡;CCD;FPGA;圖像采集
從1795年德國醫(yī)生Philip Bozzini第一次使用硬管觀察患者膀胱和直腸內(nèi)部病變至今,內(nèi)窺鏡經(jīng)歷了硬管式內(nèi)窺鏡、半可曲式內(nèi)窺鏡、光纖內(nèi)窺鏡、電子內(nèi)窺鏡4個發(fā)展階段[1]。目前,應(yīng)用最為廣泛的電子內(nèi)窺鏡采用先進的微電子器件代替?zhèn)鹘y(tǒng)的纖維導(dǎo)像束和目鏡,通過安裝在內(nèi)窺鏡前端的電荷耦合器件(charge coupled device,CCD),將采集到的光學(xué)信號轉(zhuǎn)換成電信號,經(jīng)光纖傳遞至圖像處理器處理后在顯示器上重現(xiàn)高分辨率、色彩逼真的圖像。
現(xiàn)場可編程門陣列(field-programmable gate array,F(xiàn)PGA)作為專用集成電路領(lǐng)域中的一種半定制電路,既綜合了分離器件與大規(guī)模集成芯片的優(yōu)點,又具有用戶可編程特性,大大縮短了設(shè)計周期,減少了設(shè)計費用,降低了設(shè)計風(fēng)險[2]。
本文設(shè)計的內(nèi)窺鏡圖像采集系統(tǒng)采用高分辨率CCD圖像傳感器FTT1010M將內(nèi)窺鏡觀測到的光學(xué)信號轉(zhuǎn)換為電信號,經(jīng)模數(shù)轉(zhuǎn)換后由FPGA控制器EP1C6Q240C8進行數(shù)據(jù)的存儲與控制,最后經(jīng)外設(shè)組件互連標(biāo)準(zhǔn)(peripheral componet interconnect,PCI)總線傳輸?shù)接嬎銠C。
本系統(tǒng)由硬件部分和軟件部分組成。硬件部分主要包括CCD模塊、模數(shù)轉(zhuǎn)換模塊、FPGA模塊、PCI總線模塊等;軟件部分主要包括數(shù)據(jù)存儲和讀寫程序設(shè)計、FPGA對PCI的控制程序設(shè)計等。
1.1硬件部分
系統(tǒng)結(jié)構(gòu)框圖如圖1所示。由CCD采集到的信號經(jīng)噪聲抑制、自動增益控制、信號放大等處理后,傳輸至模數(shù)轉(zhuǎn)換模塊將串行圖像數(shù)據(jù)轉(zhuǎn)變成8位并行數(shù)字信號輸出給FPGA控制器,由FPGA控制完成數(shù)據(jù)的存儲和上傳過程。數(shù)據(jù)存儲到先入先出隊列(first in first out,F(xiàn)IFO)中,在FPGA接收到來自上位機(計算機)的數(shù)據(jù)讀取命令后,將存儲在FIFO中的8 bit的圖像數(shù)據(jù)轉(zhuǎn)換成32 bit的圖像數(shù)據(jù)依次輸出到PCI總線上,并傳輸?shù)接嬎銠C。
圖1 系統(tǒng)結(jié)構(gòu)框圖
1.1.1CCD模塊
本次設(shè)計選用的CCD芯片是DALSA公司生產(chǎn)的單色逐行掃描幀轉(zhuǎn)移型圖像傳感器FTT1010M,具有高速、高線性和較寬的動態(tài)范圍等優(yōu)勢[3]。
(1)工作原理。一般來說,CCD芯片主要由光敏單元、移位寄存器、轉(zhuǎn)移柵和輔助輸入、輸出電路等部分組成[4]。當(dāng)其處于工作狀態(tài)時,光敏單元在設(shè)定的時間內(nèi)對光源進行采樣,然后將所采集到的光的信號強弱轉(zhuǎn)換為光敏單元電荷量的多少。采樣結(jié)束后,各光敏單元中的電荷從轉(zhuǎn)移柵轉(zhuǎn)移到移位寄存器內(nèi)對應(yīng)的單元中存儲。之后,移位寄存器在驅(qū)動時鐘的作用下,將信號電荷依次轉(zhuǎn)移到輔助輸出端,最后將輸出信號傳輸?shù)酵饨拥男盘柎鎯?、處理設(shè)備中,就可對所采集的光信號進行存儲處理或再現(xiàn)。
(2)驅(qū)動設(shè)計。CCD芯片的驅(qū)動電路如圖2所示。15.5 V的輸入電壓經(jīng)過集成芯片LM317濾波、調(diào)壓后,輸出穩(wěn)定的10 V驅(qū)動集成芯片MAX4426上電工作,中央處理器EP1C6Q240C8輸出的5路時鐘信號經(jīng)過MAX4426轉(zhuǎn)換為D_A、D_B、D_C、D_SG和 D_RG 5路數(shù)字信號輸出。
圖2 CCD芯片驅(qū)動電路圖
CCD芯片F(xiàn)TT1010M的電路連接圖如圖3所示,水平轉(zhuǎn)移時鐘使用CX端的3個接口,垂直轉(zhuǎn)移時鐘使用BX端的4個接口,幀轉(zhuǎn)移時鐘使用AY端的4個接口。在輸出端,選用了NPN型三極管BFR92AW對輸出模擬信號進行放大。
1.1.2模數(shù)轉(zhuǎn)換模塊
該模塊采用美國國家半導(dǎo)體公司生產(chǎn)的一種8位分辨率、雙通道A/D轉(zhuǎn)換芯片ADC0832來實現(xiàn),將CCD輸出的模擬串行信號變成8位并行數(shù)字信號。其優(yōu)點是體積小、兼容性強、性價比高,并具有以下特點[5]:
圖3 FTT1010M電路連接圖
(1)8位分辨率;(2)雙通道A/D轉(zhuǎn)換;(3)輸出、輸入電平與TTL/CMOS電平相兼容;(4)工作頻率為250kHz,轉(zhuǎn)換時間為32μs;(5)功耗低,一般為15mW。
ADC0832有雙列直插式封裝技術(shù)(dual inlinepin package,DIP)和小外形集成電路封裝(small outline integrated circuit package,SOIC)2種封裝,本次設(shè)計選用DIP封裝,其引腳排列如圖4所示。CH0、CH1為2路模擬信號的輸入端,VCC、VREF為正電源端和基準(zhǔn)電壓輸入端,D1為2路模擬輸入選擇輸入端,D0為模數(shù)轉(zhuǎn)換結(jié)果串行輸出端,CLK為時鐘信號輸入端。
1.1.3FPGA控制器
在該模塊中,采用的是塑料方塊平面封裝(plastic quad flat package,PQFP)的FPGA芯片EP1C6Q240C8,其系統(tǒng)功能圖如圖5所示。
圖4 ADC0832引腳圖
圖5 EP1C6Q240C8系統(tǒng)功能圖
此芯片支持標(biāo)準(zhǔn)AS編程接口和JTAG調(diào)試接口、+5 V直接輸入,包含4個用戶自定義按鍵、4個用戶自定義LED、1個7段數(shù)碼管LED、1個50 MHz的高精度時鐘源、3個高密度擴展接口,并且自帶上電復(fù)位電路。
1.1.4PCI總線模塊
PCI總線是一種不依附于某個具體處理器的局部總線,是在CPU和原系統(tǒng)總線之間插入的一級總線,由一個橋接電路對這一級的總線進行管理,實現(xiàn)上下之間數(shù)據(jù)的傳輸,其傳輸速率理論上可以達到132 MB/s的峰值[6]。
該模塊的實現(xiàn)主要采用橋接芯片PEX8111。在FPGA的控制下,將8位并行數(shù)據(jù)轉(zhuǎn)變成PCI總線需要的32位數(shù)據(jù),PEX8111將該32位數(shù)據(jù)以PCI模式傳輸給計算機,完成數(shù)據(jù)的采集和上傳。
PEX8111是一款從本地總線到PCIE接口的橋接芯片,它的設(shè)計符合PCIE1.0規(guī)范,支持自動極性反轉(zhuǎn)、循環(huán)冗余校驗和直接內(nèi)存存?。╠irect memory access,DMA)等多項功能。圖6為PEX8111的內(nèi)部結(jié)構(gòu)圖。
圖6PEX8111內(nèi)部結(jié)構(gòu)圖
PEX8111橋接芯片可實現(xiàn)與計算機PCIE接口的對接,并可在不做任何形式更改的前提下將現(xiàn)有的PCI卡轉(zhuǎn)換成PCIE設(shè)計,實現(xiàn)從PCI到PCIE的平滑過度。
圖7 PCI橋接芯片的引腳圖
PEX8111橋接芯片包含144個引腳、1個66MHz的本地時鐘、2個DMA通道和4個通用輸入/輸出接口,內(nèi)部PCI仲裁器可以支持4個外部PCI主控制器,支持最高可達266 MB/s的突發(fā)峰值傳送速率[7]。PCI橋接芯片的引腳如圖7所示。
1.2軟件部分
該系統(tǒng)采用VHDL編程語言對EP1C6Q240C8芯片進行編程。從結(jié)構(gòu)上來講,VHDL語言區(qū)別于其他編程語言的最大特征是,它在進行程序設(shè)計時將整個系統(tǒng)設(shè)計分為外部可視部分及內(nèi)部不可視部分[8]。從操作層面上來說,VHDL語言先是定義好系統(tǒng)的外部界面,待其內(nèi)部結(jié)構(gòu)開發(fā)完成后,其他的設(shè)計就可以直接調(diào)用這個設(shè)計實體。其優(yōu)點還包括以下幾個方面[9]:
(1)具有較廣的覆蓋面,語言描述能力強;(2)可讀性強,編程人員容易理解,計算機也可接受;(3)當(dāng)工藝改變時,VHDL語言只需修改相應(yīng)程序中的屬性參數(shù)即可滿足新要求,適應(yīng)性較強;(4)支持大規(guī)模設(shè)計的分解和已有設(shè)計的再利用;(5)可支持自上而下(top down)和基于庫(library-based)的設(shè)計方法,而且支持同步電路、異步電路等的設(shè)計。
1.2.1數(shù)據(jù)存儲和讀寫程序設(shè)計
該部分的設(shè)計是用FPGA內(nèi)部FIFO實現(xiàn)的。FIFO作為一種先進先出的數(shù)據(jù)緩存器,與普通存儲器的最大區(qū)別是沒有外部讀寫地址線,因此使用起來非常方便。其數(shù)據(jù)存儲和讀寫程序如圖8所示。
1.2.2FPGA對PCI的控制程序設(shè)計
在該部分設(shè)計中,F(xiàn)PGA需要將8位數(shù)據(jù)變成并行的32位數(shù)據(jù),流程圖如圖9所示。
連接好CCD芯片F(xiàn)TT1010M、EP1C6Q240C8控制器、PEX8111總線控制器、計算機等硬件模塊后,運行VHDL控制程序?qū)φw系統(tǒng)進行仿真測試,可在顯示器上顯示由CCD芯片采集到的清晰穩(wěn)定的圖像。
圖8 數(shù)據(jù)存儲和讀寫程序流程圖
圖9 FPGA對PCI的控制程序流程圖
該圖像采集系統(tǒng)經(jīng)多家醫(yī)療單位進行臨床測試,其數(shù)據(jù)傳輸速度快,可采集到清晰、穩(wěn)定的圖像;系統(tǒng)結(jié)構(gòu)簡單、操作方便,體積小、質(zhì)量輕、便于攜帶;系統(tǒng)抗干擾能力強,可適應(yīng)野外復(fù)雜多變的環(huán)境。該系統(tǒng)深受醫(yī)護人員的一致好評,建議推廣應(yīng)用。
該系統(tǒng)以高分辨率CCD圖像傳感器FTT1010M為圖像采集芯片,將實時觀測到的光學(xué)信號轉(zhuǎn)換為電信號,經(jīng)模數(shù)轉(zhuǎn)換芯片ADC0832數(shù)字化處理后,由FPGA控制器EP1C6Q240C8進行數(shù)據(jù)的存儲與控制,最后經(jīng)PCI總線傳輸?shù)接嬎銠C。經(jīng)測試,該系統(tǒng)采集的圖像質(zhì)量好、穩(wěn)定性高,且設(shè)計周期短、造價低廉,非常適用于各種電子內(nèi)窺鏡的圖像采集。
[1]李勵.醫(yī)用內(nèi)窺鏡的發(fā)展歷程[J].醫(yī)療設(shè)備信息,1999(4):51-53.
[2]徐忠,劉洪英,皮喜田,等.醫(yī)用超細(xì)內(nèi)窺鏡系統(tǒng)研究[J].中國生物醫(yī)學(xué)工程學(xué)報,2014,33(1):107-111.
[3]宋海吒,唐立軍,謝新輝.基于FPGA和OV7620的圖像采集及VGA顯示[J].電視技術(shù),2011,35(5):45-47.
[4]徐健,蕭澤新.基于嵌入式的數(shù)字顯微鏡圖像采集系統(tǒng)的研究[J].光學(xué)技術(shù),2008,34(3):26-28.
[5]陳曉冬,郁道銀,宋玲玲,等.醫(yī)用電子內(nèi)窺鏡成像系統(tǒng)的研制[J].儀器儀表學(xué)報,2005,26(10):1 047-1 051.
[6]陳冬青,謝洪波,徐智,等.醫(yī)用電子內(nèi)窺鏡圖像畸變校正方法的研究[J].中國生物醫(yī)學(xué)工程學(xué)報,2001,20(1):89-94.
[7]江潔,郁道銀,張漢奇,等.醫(yī)用電子內(nèi)窺鏡圖像采集與視頻顯示系統(tǒng)的設(shè)計與實現(xiàn)[J].中國生物醫(yī)學(xué)工程學(xué)報,2001,20(3): 281-285.
[8]王炳乂.面陣CCD圖像采集與多接口傳輸系統(tǒng)[D].成都:電子科技大學(xué),2009.
[9]張俊藻.單片機中級教程[M].北京:北京航天航空大學(xué)出版社,2006:25-32.
(收稿:2014-09-19修回:2014-12-19)
Design of endoscope image acquisition system based on CCD and FPGA
ZHOU Wen-guang,WANG Chun-fei,MAO Kun-jian,CHEN Qing,KONG Yue
(Chenggong Hospital of Xiamen University,the 174th Hospital of the PLA,Xiamen 361003,Fujian Province,China)
Objective To design an endoscopic image acquisition system.Methods High resolution CCD image sensor was used as the image acquisition equipment to converse the optical signals into electrical ones.Data were stored with FPGA controller after ADC,and then transmitted to the computer with PCI bus,Results Trials proved that the system could acquire clear and stable image with simple structure and easy operation.Conclusion The system can acquire high-quality images for the diagnosis and treatment of endoscope.[Chinese Medical Equipment Journal,2015,36(5):37-40]
endoscope;CCD;FPGA;image acquisition
[中國圖書資料分類號]R318.6;TH777A
1003-8868(2015)05-0037-04
10.7687/J.ISSN1003-8868.2015.05.037
南京軍區(qū)2013年度科技創(chuàng)新項目資助課題(MS087)
周文光(1970—),男,主任技師,主要從事醫(yī)療設(shè)備的維修、質(zhì)量控制、使用管理等方面的研究工作,E-mail:zhouwgsun@126.com。
361003福建廈門,解放軍174醫(yī)院,廈門大學(xué)附屬成功醫(yī)院(周文光,王春飛,毛坤劍,陳慶,孔 悅)
孔悅,E-mail:xmky2005@126.com