1 引言 隨著(zhù)醫療診斷儀器小型化、便攜化的進(jìn)程,高性能32位微處理器正在越來(lái)越多地應用于各類(lèi)小型醫療影像設備中,但是如何利用這些微處理器傳送和處理實(shí)時(shí)圖像,卻是一個(gè)丞待解決的問(wèn)題。從ARM 7系列開(kāi)始,ARM處理器就集成了CMOS(Complementary Metal Oxide SemiConductor)圖像傳感器接口,這為解決上述問(wèn)題提供了可能。處理器可以通過(guò)CMOS圖像傳感器接口適應不同的CMOS圖像傳感器。通過(guò)CMOS接口,圖像數據將被送入到系統的CMOS圖像通道中。CMOS圖像通道為CMOS圖像傳感器接口與系統AHB(Advanced High performanceBus)總線(xiàn)之間的連接通路,由CSI (CMOS Sensor Interface)和PRP(Pre-processor)組成。該通道專(zhuān)門(mén)用于高速圖像傳輸,提供了多種圖像格式輸入和傳輸方式,并能在通道內進(jìn)行顏色空間變換、窗體調整等多種操作,是診斷圖像以及其他圖像應用傳輸的理想通道。 本文討論了一種基于32位微處理器ARM9E和嵌入式Linux的便攜式超聲診斷儀的解決方案。系統以CMOS圖像通道為診斷網(wǎng)像的傳輸通道,將采集的超聲圖像信息送人系統總線(xiàn),在嵌入式Ijnux操作系統平臺上,實(shí)現了診斷圖像的實(shí)時(shí)顯示和靜態(tài)圖像的大容量非易失性存儲,所實(shí)現的診斷系統不僅功能強大、擴展容易,而且還兼顧了小型化的需求。 2 系統構架 本文設計的便攜式超聲診斷儀系統結構如圖l所示。用戶(hù)通過(guò)輸入設備向系統輸入控制命令,完成超聲圖像的采集、顯示、保存等相關(guān)處理。當執行掃描命令時(shí),系統通過(guò)串口向以FPGA為核心的超聲圖像采集模塊發(fā)送圖像采集命令,控制超聲探頭掃描驅動(dòng)電路和信號發(fā)射接收電路同步動(dòng)作。接收的超聲信號在超聲圖像采集模塊中經(jīng)放大、模數轉換后送人FPGA,完成數字掃描變換(DCS)和插值運算后,得到二維的B超圖像信息。將該圖像信息進(jìn)行格式轉換后通過(guò)ARM芯片CMOS接13送人控制系統,經(jīng)圖像通道傳輸后,完成在LCD(Liquid Crystal Display)上的實(shí)時(shí)顯示,同時(shí)可拔插的大容量SD(Secure Digital Memory Card)卡可對所需的圖像進(jìn)行保存。保存的圖像信息可以進(jìn)行離線(xiàn)處理,比如打印、電影回放、遠程瀏覽等。 ![]() 圖1 超聲診斷儀系統結構框圖 ![]() 圖2 控制系統的硬件框圖 3 系統硬件設計 3.1硬件框圖 本設計選用以ARM926EJ-S為內核的Freescale i.MX21作為處理器,控制系統的硬件框俐如圖2所示,系統是以ARM處理器為核心,外加兼容的硬件外設。超聲采集模塊完成圖像的采集和傳入,LCD把傳人的圖像信息實(shí)時(shí)的顯示出來(lái),通過(guò)SD卡把大量的圖像數據保存起來(lái)以便后期處理。通過(guò)外加USB HUB?蓪⑹髽、鍵盤(pán)、打印機接入系統。本地儲存的診斷圖像數據可以通過(guò)快速以太網(wǎng)控制處理器DM9000送入網(wǎng)口,通過(guò)以太網(wǎng)實(shí)現遠程瀏覽。 3.2 CMOS圖像通道 本控制系統CMOS圖像通道框圖如圖3所示,超聲圖像數據的傳入利用i.MX21芯片的CMOS圖像傳感器接口來(lái)實(shí)現。該接口支持的圖像數據類(lèi)型包括RGB565、RGB888、YUV422、YUV444等。不同類(lèi)型的圖像數據在CMOS口經(jīng)過(guò)CSI 8位采樣后,封裝成32位圖像數據送人CSI RxFIFO。CSI RxFIFO中的圖像數據根據類(lèi)型的不同,送顯和存儲的硬件和軟件實(shí)現方法也是不同的。 ![]() 圖3控制系統CMOS圖像通道框圖 (1)若類(lèi)型為RGB565,且圖像窗體不需要調整(顯示設備單一)。圖像數據可以通過(guò)DMA通道直接傳送到顯示緩沖區,如圖3中通道①; (2)若類(lèi)型為RGB565,且圖像窗體需要調整(顯示設備多樣化),圖像數據則需要經(jīng)過(guò)前處理器(PRPl,在PRP中調整圖像大小送入顯示緩沖區,如圖3中通道②; (3)若類(lèi)型為YUV422,圖像數據則需要經(jīng)過(guò)PRP,在PRP中調整圖像大小并轉換成合適的顏色空間后送人顯示緩沖區,如圖3中通道②; (4)若類(lèi)型為YUV444、RGB888,圖像數據則需通過(guò)軟件編程實(shí)現圖像數據的顏色處理和轉換后送入PRP調整窗體,最后送入顯示緩沖區,如圖3中通道③。 本設計為使LCD接口輸出的圖像兼容QVGA、VGA、SVGA、XGA等尺寸的顯示屏,且兼顧圖像傳輸的速率、圖像顯示的質(zhì)量,我們使用RGB565格式,選用罔3中通道②。因此需將超聲圖像采集模塊所采集的圖像信息構造為RGB565格式,故CMOS接口輸入的罔像信息時(shí)序圖如圖4所示。 圖中Vsync是場(chǎng)I司步信號,Hsync是水平同步信號,Pixelk是象素數據輸入同步信號,D [7:0]為象素數據信號。Vsync和Hsync為低電平時(shí)即可開(kāi)始有效圖像數據的輸入,Pixelk上升沿的到來(lái)則表明進(jìn)行數據輸入,Pixelk的一個(gè)周期將完成一個(gè)圖像數據字節的輸入。在傳輸一幀圖像過(guò)程中,即Vsync的一個(gè)周期內,Hsync會(huì )出現H次(H為行數)高電平。在Hsync的一個(gè)周期內,Pixelk將出現W*Pixelbytes次(W為列數,Pixelbytes為每象素占用字節數)高電平。而下一個(gè)Vsync信號上升沿的到來(lái)則表明一幀分辨率為W*H的圖像輸入過(guò)程的結束。 CSI RxFIFO中的圖像數據送入PRP進(jìn)行窗體調整后,通過(guò)AHB(Advanced High performance Bus)進(jìn)入內存,PRP窗體的調整通過(guò)設置PRP控制寄存器實(shí)現。 3.3圖像顯示及保存 FrameBuffer是Linux為顯示設備提供的一個(gè)接口,它是顯存抽象后的一種設備.對該設備進(jìn)行讀/寫(xiě)則可直接對顯存進(jìn)行操作。通過(guò)驅動(dòng)程序可為FrameBuffer在文件系統中創(chuàng )建一個(gè)設備文件fb0,用戶(hù)要完成對FrameBuffer的圖像輸入,只需完成對fb0圖像的寫(xiě)入操作。當LCDC(LCD Controller)中的Pixel FIFO為空或者部分為空時(shí),LCDC要求從基于突發(fā)傳輸模式的FrameBuffer中取要顯示的圖像數據。當LCDC的傳輸請求被存儲控制器中過(guò)的總線(xiàn)仲裁器接收并確認后,FrameBuffer中的圖像數據將通過(guò)專(zhuān)用的DMA通道送入Pixel FIFO,然后經(jīng)過(guò)字節翻轉、背景前景圖像合成后通過(guò)LCDC邏輯接口直接送入LCD顯示屏接口。 通過(guò)MMC/SD接口可將SD卡接入控制系統,利用驅動(dòng)程序將SD卡掛載在文件系統中。用戶(hù)可以編寫(xiě)應用程序將內存中的圖像數據保存在SD卡中,也可將SD卡中的圖像數據讀入到內存中。 4 系統軟件設計 本控制系統是基于上述硬件平臺和嵌入式Linux操作系統開(kāi)發(fā)設計的。首先在硬件平臺上實(shí)現嵌入式Linux操作系統內核和文件系統的移植,并實(shí)現對外設硬件的底層驅動(dòng)。應用程序采用模塊化設計,其中功能模塊設計主要包括GUI(Graphical User Interface)和WebServer程序設計,應用模塊主要包括采集模塊子程序,LCD顯示模塊子程序,打印模塊子程序,SD卡存儲子程序,以太網(wǎng)傳輸子程序等。本文重點(diǎn)對罔像通道相關(guān)程序做出論述。 如圖3,設計CSI RxFIFO中的圖像數據通過(guò)專(zhuān)用總線(xiàn)通道②送人PRP,DMA通道①被內部邏輯控制器關(guān)斷。因此在CSI和PRP的驅動(dòng)程序中,CSI和PRP的初始化代碼應作如下修改: CSI初始化: ![]() 本設計初始安裝分辨率為640 x 480的LCD.如上設置初始化后,圖像數據將由CSI RxFIFO進(jìn)入PRP處理。為了使上層用戶(hù)在不改變設備文件的前提下,直接利用CSI設備文件描述符,采用如下代碼將CSI設備文件的虛擬地址映射為PRP輸出的物理地址,用戶(hù)就可以直接從CSI設備文件中讀取經(jīng)PRP處理后的圖像數據。 ![]() 通過(guò)如上驅動(dòng)程序的修改,用戶(hù)就可以編寫(xiě)應用程序實(shí)現對PRP處理后的圖像數據進(jìn)行送顯和存儲。應用程序的程序概圖如圖5所示: ![]() 圖4 CMOS接口輸入的圖像信息時(shí)序圖 ![]() 圖5 圖像髓示和存儲稷序框圖 5 測試結果 本文設計的控制系統經(jīng)測試,診斷圖像實(shí)時(shí)顯示的幀率可以達到20‰,大于便攜式B超圖像10幀/s的幀率要求.且LCD觀(guān)察圖像畫(huà)面清晰。采用RGB565格式的標準位圖保存診斷圖像信息,每張圖片的數據大小為: 640 * 480 * (5+6+5)/8=614400 bytes 使用1G的SD卡作為外部存儲設備,可以存儲1747張診斷圖片。完全滿(mǎn)足便攜式診斷設備的要求和實(shí)際診斷情況的需要。 6 結論 本設計采用ARM9E為核心的Freescale i.MX21芯片作為便攜式超聲診斷儀中央處理器,利用其內置的CMOS圖像傳感器通道,將超聲圖像采集模塊輸入的圖像信息實(shí)時(shí)的顯示出來(lái),并根據需要對顯示的圖像進(jìn)行保存。經(jīng)測試,該控制系統工作穩定可靠,滿(mǎn)足了常規的診斷需要,具有較高的實(shí)用價(jià)值。 本文作者創(chuàng )新點(diǎn):本文采用的專(zhuān)用高速CMOS圖像傳輸通道將超聲診斷圖像輸入控制系統并進(jìn)行處理。在軟硬件都滿(mǎn)足需求的基礎上給出了詳細的設計實(shí)現,說(shuō)設計的系統在診斷圖像的顯示幀率、顯示畫(huà)面清晰度方面都達到了很好的效果。為同類(lèi)系統設計、升級和改進(jìn)打下了良好的基礎。 本項目產(chǎn)業(yè)化后投入市場(chǎng),年經(jīng)濟效益可達1000萬(wàn)元。 作者:冉焱 來(lái)源:《微計算機信息》(嵌入式與SOC)2009年第25卷第2-2期 |