陳璞
(江蘇海明醫療器械有限公司,江蘇揚州225101)
基于ActiveMIL的數字化X射線圖像采集系統的設計
陳璞
(江蘇海明醫療器械有限公司,江蘇揚州225101)
本文介紹了X射線數字成像技術,闡述在使用影像增強器的診斷設備中,數字化X射線圖像采集系統的硬件組成。設計了基于ActiveMIL組件的X射線圖像采集系統軟件,其編程語言為VC++/CLR,實現了圖像的實時顯示、單幀采集、序列采集、畸變校正處理、分析、存檔等功能。結果表明:所設計的圖像采集系統工作穩定,采集圖像清晰,實現了設計的要求。
X射線;數字成像;圖像采集;ActiveMIL
德國物理學家倫琴發現X射線至今已有一百多年歷史。這期間X射線設備迅速發展,放射條件日臻完善,放射技術日新月異。特別是近幾年來,隨著計算機、圖像處理及相關技術的發展,數字成像技術得到了前所未有的發展。數字成像技術內容廣泛,技術炯然,原理各異,這些成像技術有一個共同的特點,即以計算機為基礎,使圖像信息數字化,我們可以盡可能地對其實施圖像信息后處理,這使醫學影像技術發生了巨大的變化。
X射線數字成像技術使用的探測器主要包括平板探測器和影像增強器兩種設備。平板探測器可以將X射線信息直接數字化,不存在任何的中間過程,數字圖像不僅可以方便地將圖像顯示在監示器上,而且可以進行各種各樣的圖像后處理。但因平板探測器價格昂貴,目前常規的X射線數字成像大部分還是使用影像增強器,其價格比使用平板探測器低廉,而且便于對老式的X射線機進行數字化升級。
本文主要討論在使用影像增強器的診斷設備中,數字化X射線圖像采集系統的設計。
本系統主要由泰雷茲12寸影像增強器(TH59432)、CCD攝像機 (TH8740-012)、計算機、圖像采集卡 (Matrox Meteor-II/Digital)組成。
系統工作原理如圖1所示:來自球管的X射線信號通過患者,被影像增強器轉換為亮度很高的可見光圖像,通過攝像機轉換成電信號,經過數字化處理后輸出高達每秒30幀,分辨率為1000× 1000的數字視頻信號,再通過計算機采集及處理后用傳送到監視器,顯示出人體各部位的組織結構圖像。

圖1 系統工作原理
系統中的TH8740-012攝像機是專門設計用于醫療圖像鏈中X射線影像增強器的CCD攝像機。它針對透視和數字放射成像進行了優化,噪聲低、動態范圍寬。它還包括了一個處理控制單元(PCU),能提供實時透視狀態下的高清圖像處理功能。它可以同時輸出的模擬視頻信號和12位數字視頻信號,可以通過屏幕顯示 (OSD)和RS232串口來實現簡單的設置和靈活的圖像處理。
TH8740-012的主要參數如下: (1)可輸出高達30逐行幀/秒,1000×1000像素的12位數字視頻信號;(2)連續,脈沖,點片下的內部或外部同步;(3)遞歸濾波器、末幀圖像保持、伽瑪校正、陰影校正、邊緣增強、水平和垂直圖像反轉、圓消隱等圖像處理功能;(4)LVDS接口,輸出15路并行的成對差分信號。
Matrox Meteor-II/Digital是Matrox MeteorⅡ高性能低價格系列采集卡中的一款。它可以用RS-422或LVDS差分信號標準,采集黑白/分量RGB,面陣/線陣信號。Matrox Meteor-Ⅱ/Digital將功能強大的函數擴展性能集成到了采集卡上,可以構建功能強大,價格低廉,基于PC的圖像系統。
其主要特點如下: (1)PCI或PC/104-Plus格式視頻采集卡;(2)采集數字面陣/線陣信號,包括多抽頭配置; (3)32-bit寬 RS-422或LVDS接口;(4)采樣率RS-422下達到25MHz,LVDS下達到40MHz;(5)可配置LUT(4個256 ×8-bit或2個4K×16-bit);(6)觸發輸入,時鐘輸出; (7)PCI總線主模式32-bit/33 MHz; (8)實時傳輸到系統或顯卡;(9)擴展板上緩存,確保采集;(10)支持packed or planar傳輸彩色或多路黑白數據流;(11)RS-232串口;(12)軟件包括 Matrox Imaging Library(MIL),ActiveMIL,MIL-Lite,ActiveMIL-Lite和 Matrox Inspector; (13)支持Microsoft? Windows NT?4.0,Windows?2000和Windows?XP和QNX?2。
系統編程語言使用VS2005的VC++/CLR,需安裝Microsoft.NET Framework 2.0及以上版本。數據庫使用MicroSoft SQL Server 2000,用于病歷及定位圖像的管理。軟件開發包采用 Matrox ActiveMIL 8組件,可以完成數字化X線圖像的實時顯示、單幀采集、序列采集 (可以程序設置:采集時間長短、采集幀數、時間間隔等參數)、畸變校正處理、分析、存檔等功能。
ActiveMIL是以Matrox Imaging Library(MIL)為基礎,所構建的一系列ActiveX控件,是一套與硬件平臺無直接關聯的開發工具,可供開發者在VB和 VC中快速地進行應用程序的開發。ActiveMIL除了能完成圖像采集、顯示、繪圖、標注等基本功能外,還包括許多圖像前處理和分析功能,比如測量、BLOB分析、校正、文字識別(OCR)、幾何圖形對比、條碼讀取與識別、統計分析、控件濾波、幾何轉換等功能。
系統由于使用了ActiveX控件,所以很大程度上降低了程序設計的難度,縮短了軟件開發周期,提高了應用系統的穩定性。
ActiveMIL應用程序的結構如圖2所示。即每個ActiveMIL應用程序只有一個應用控件,但可以有多個系統控件,每個系統控件下也可以有許多圖像、采集卡、顯示及圖像處理控件。
在VS 2005的開發環境中設計ActiveMIL應用程序 (見圖3),首先在工具箱中添加ActiveMIL控件,然后在窗體設計器中拖入需要的ActiveMIL控件,再在每個ActiveMIL控件的屬性頁中設置好組件的屬性,確保屬性頁Error欄沒有錯誤,最后在源程序中對ActiveMIL控件編程實現需要的功能。

圖2 ActiveMIL應用程序的結構

圖3 程序設計界面
(1)本系統中使用的 ActiveMIL控件定義如下:
ActiveMIL::AxMApplication^axMApplication1; //應用控件
ActiveMIL::AxMSystem^axMSystem1;//系統控件
ActiveMIL::AxMDigitizer^axMDigitizer1;//采集卡控件
ActiveMIL::AxMDisplay^axMDisplay1;//主顯示控件
ActiveMIL::AxMImage^axMImageGrab;//采集圖像控件
ActiveMIL::AxMImage^axMImageSave;//保存圖像控件
ActiveMIL::AxMImage^axMImageDisplay;//顯示圖像控件
ActiveMIL::AxMImage^axMImagePrint;//打印圖像控件
ActiveMIL:: Calibration:: AxMCalibration ^ axMCalibration1;//校正控件
ActiveMIL:: Calibration:: AxMCalibration ^ axMImageProcessing1;//圖像處理控件
(2)初始化代碼如下:
this->axMImageGrab->MaximumPixelValue =4095;//設置采集12位數字信號
axMImageGrab->SizeX=1000;//圖像大小為1000×1000
axMImageGrab->SizeY=1000;
axMDigitizer1- >Image=this- >axMImageGrab;//采集的影像存入axMImageGrab控件
axMImageProcessing1- >Source1=this- >axMImageDisplay;//圖像處理控件輸入圖像
axMImageProcessing1->Destination1=this->axMImageSave;//圖像處理控件輸出圖像
axMDisplay1->Free();//釋放控件資源
//初始化主顯示控件的LUT表屬性
axMDisplay1->LUT->Size=4096;
axMDisplay1->LUT->DataType=Matrox:: ActiveMIL::LUTDataTypeConstants::lutUnsigned;
axMDisplay1->LUT->DataDepth=8;//顯示8位灰度圖像
axMDisplay1->LUT->MaximumPixelValue =255;
axMDisplay1->LUT->NumberOfBands=1;
axMDisplay1->Allocate();//分配控件資源
axMDisplay1->Image=this->axMImage-Display;//指定顯示axMImageDisplay的圖像
(3)實時顯示代碼如下:
axMDigitizer1->GrabContinuous();
timer3->Start();//啟動定時器,每秒30次,用于顯示30FPS的實時圖像,
//定時器timer3中的代碼
axMImageDisplay->Copy(axMImageGrab);
(4)單幀采集代碼如下:
axMDigitizer1->Halt();
timer3->Stop();
this->axMDigitizer1->Grab();
axMImageDisplay->Copy(axMImageGrab);
this- >axMImageProcessing1- >LUTMap (1);
this->axMImageSave->Save(picname);//采集圖像存盤
(5)序列采集代碼如下:
axMDigitizer1->Halt();
timer3->Stop();//停止實時顯示
timer2->Start();//啟動序列采集定時器,每次定時采集一幀圖像,采集間隔時間在界面中設置
//定時器timer2中的代碼
this->axMDigitizer1->Halt();
this->axMDigitizer1->Grab();
axMImageDisplay->Copy(axMImageGrab);
this- >axMImageProcessing1- >LUTMap (1);
this->axMImageSave->Save(picname);//采集圖像存盤

圖4 采集的X射線數字化圖像
本文介紹的數字化X射線圖像采集系統已在醫院臨床中實際使用,經用戶反映系統運行穩定可靠,圖像清晰、操作方便,實現了系統的設計目標。
[1]王瑞玉,劉愛武.醫用數字胃腸X射線機原理構造和維修[M].北京:中國醫藥科技出版社,2005.
[2]高守傳,姚領田.Visual C++實踐與提高~數字圖像處理與工程應用篇[M].北京:中國鐵道工業出版社,2006.
[3]陳瑜,葉玉堂,羅穎,等.手動PCB外觀檢查機的圖像采集與拼接[J].電子設計工程,2011,19(4): 120-123.
[4]王爽,胡炳棵,劉彩芳,等.基于Matrox Meteor-II/ Digital的圖像采集系統研究 [J].電子設計工程,2012,20(3):71-74.
TP274
A
1002-2376(2015)03-0003-03
2014-12-07