999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于VS和SQL的數字PACS系統設計

2017-02-23 14:15:58韋偉朱俊陳琳琳劉偉
電子技術與軟件工程 2016年24期

韋偉+朱俊+陳琳琳+劉偉

目前國內X光機成像急需數字化改造,構建成數字化醫院。針對這一問題,在VC++.net架構上,設計和實現了一整套數字化醫院PACS操作軟件。主要包括建立管理數據庫,通過以太網方式采集圖像并轉換成DICOM3.0格式,對圖像進行增強處理及膠片和報告的打印等內容。通過現場的聯合調試,性能良好,滿足了醫院的實際使用需求。

【關鍵詞】PACS 以太網傳輸 DICOM圖像 圖像增強 膠片打印

1 引言

PACS(Picture Archiving and Communication Systems,影像歸檔和通信系統)是數字化醫院的重要硬件支撐,包括獲取圖像、圖像管理、圖像處理、圖像歸檔等內容。該系統起源于美國陸軍的遠程放射診斷系統項目。隨后,美國及歐洲、日本的很多科研機構開始研究商業 PACS 系統。目前,西門子公司生產的 PACS 系統比較著名,在很多歐美國家使用。在我國,研究開發 PACS 系統比較晚,到目前為止,只有一些大型醫療機構使用 PACS 系統,其規模較小,即為小型化、迷你化的 PACS 系統。主要原因是PACS 系統價格昂貴、遠程醫療不發達、標準化程度不高等。我國生產 PACS 系統的廠家較少,主要有中聯醫學圖像系統、永安科技和東軟系統。目前國內的一些大醫院逐步淘汰模擬X射線機和普通的暗室洗片,而開始使用數字化DR攝影設備,結合數字化網絡,組成醫療診斷系統,所以PACS系統的研究和開發具有十分重要的現實意義。

2 系統工作原理

PACS是一套可用于X光機成像的軟件系統,其主要功能是采集和保存X光機所拍攝的海量醫學圖像,通過圖像加密技術并對圖像進行處理,提供病理信息和診斷依據,可在授權的情況下通過外部接口進行圖像的傳輸,醫生及專家在授權情況下進行查看 PACS 系統中的圖像信息,進行診斷。

3 系統軟件設計

本系統以Visual Studio.Net 為框架,以模塊化和嵌入式為技術指導思想,以SQL Server、Quartus為開發工具,完成了一個PACS完整系統的實際開發。本系統組成如圖1所示。

3.1 病人信息登記

信息登記是將病人的姓名、ID號、年齡、性別及注冊日期等基本信息錄入到醫院的PACS系統中統一管理。本系統采用SQL Server 2005作為數據庫引擎,在SQL Server的環境下編寫數據庫文件,創建數據庫。設置主數據文件名稱(PatientManager)及其初始大小、增長最大值及增長率。設置日志文件文件名及其初始大小和增長值。創建含有病人基本信息的數據表、病人圖像數據表格(包括圖像拍攝大小、保存路徑及生成日期等)、病人診斷報告信息表(包括病人ID、病情及診斷記錄等信息)。

在VS系統中編寫對話界面,輸入病人的ID、姓名、年齡等個人信息,并將這些信息錄入到創建的數據庫中。MFC訪問數據庫常用的技術是ADO,它提供了訪問對象鏈接和嵌入數據庫的應用程序編程接口。VC++.net為開發ADO應用程序提供了動態連接庫。使用前先導入ADO類型庫,在stdafx. h 文件里直接使用#import引入,#import " C: Program Files Common Files Systemado msado15. dll"之后調用CoInitialize進行OLE/COM數據庫初始化,聲明一個指向Connection對象的指針,創建對象的實例并連接數據庫,創建記錄集。

CoInitialize(NULL);//初始化OLE/COM庫環境

pConn.CreateInstance("ADODB.Connection");//初始化Connection指針

pRst.CreateInstance("ADODB.Recordset");//初始化Recordset指針

pConn->ConnectionString = (_bstr_t)GetConnectionStr();//數據庫的連接字符串

pConn->Open("","","",adConnectUnspecified);//打開數據庫連接

通過病人信息輸入對話框,讀取病人的基本信息,并將這些信息存入結構體iSqlSentence中。病人的信息輸入后調用pConn->Execute((_bstr_t)iSqlSentence,NULL,adCmdText); 將信息存入數據庫中。

3.2 圖像獲取

PACS系統和高壓發生器配合,接收高壓發生器傳輸的KV、mAs、劑量水平及曝光時間信號,在軟件里設置曝光時間,再接收高壓發生器的外觸發信號后進行觸發曝光成像。PACS系統采用CCD作為圖像探測傳感器,采用碘化銫(CsI)作為DR探測器的主要閃爍材料,經過X射線曝光后,將X射線光子轉換為可見光,再由CCD探測器變為圖像電信號,最后獲得數字圖像。本系統所采用的CCD為柯達公司的KAF16803高分辨率圖像探測器,在輸出屏后端配有聚焦光學鏡頭成像,再輸入計算機進行圖像處理。KAF16803是一款單輸出的高性能全幀型CCD圖像傳感器,有效分辨率為4096×4096,像元數量為16M,最小像素尺寸為9um×9um,兩相驅動讀出,最大支持10MHz的采樣頻率,實現高速高分辨率成像。AD轉換芯片是AD9824,片內含有最高30MS/s相關雙采樣電路(CDS),并且可以編程控制其內部增益放大器。KAF16803行列像素轉移所需要的驅動信號,AD轉換及鎖存信號由FPGA在Quartus環境下采用Verilog語言變成用狀態機的方法實現。這些信號通過電壓轉換(LM317/LM337)和脈沖驅動芯片(DS0026)經過調整后加載到各自元件上。

CCD探測器與采集計算機通過千兆以太網進行連接,采用MAC加PHY芯片的結構組成千兆以太網傳輸模塊。具體采用AX88180作為數據鏈路層MAC控制器,采用88E1111作為自適應物理層傳輸芯片。AX88180及88E1111的編程通過在FPGA中建立NIOS II軟核來實現。首先用Verilog語言編寫AX88180基于NIOS II總線(Avalon)接口的IP內核,然后編程對AX88180內置256字節的配置寄存器進行配置初始化,參考亞信電子相關資料進行初始化編程。采用Verilog語言編寫高效率的HDL語言封包程序。封包程序參考TCP/IP協議。為了滿足程序良好的兼容性,便于移植,PC端軟件采用Wincap類庫編寫程序來捕獲網絡數據包。圖像采集流程圖2所示。

3.3 圖像保存

16M像素所生成的圖像裸數據為32Mbyte,為了統一標準,實現信息共享,需要將裸數據轉為DICOM標準格式。DICOM格式完整的定義了醫學影像及相關信息的消息格式及傳輸機制,使得影像信息在醫學設備間的交換更加有效。DICOM標準也一直在完善中,本系統的3.0版本,文件后綴為.DCM。DICOM實際上是一種文件封裝方式,一般由DICOM文件元信息和描述DICOM SOP類實例的數據集合而成。每個DICOM文件都有兩部分組成:頭文件信息和數據集。DICOM文件頭包含了數據集合的相關信息,包括文件的SOP、UID及傳輸格式等。數據集放在頭文件之后,代表了一個SOP(Service-Object Pair)實例,主要包括醫學圖像以及許多和醫學圖像有關的信息,如病人姓名、圖像大小等。文件頭元素采用顯示格式(Explicit VR)編碼,各個數據元素的排列按照標簽數值從小到大的傳輸格式編碼。標簽是一個4字節的無符號整數,它被人為地分為兩個部分: 組號(高位2字節)和元素號(低位2字節)。

由于DICOM標準內容較多,涉及到多種圖像壓縮,開發時可以借鑒專業的DCMTK開發包,進行二次開發。DCMTK是一個遵循DICOM標準的公開源代碼的專業開發包,利用其自帶的庫可以實現DICOM應用。二次開發時用到的DCMTK開發包里的庫主要有dcmdata.lib、dcmimage.lib、dcmimgle.lib等相關庫。

DCMTK開發包里DcmItem類中定義的putAndInsertString()函數創建一個DICOM dataset數據集,根據標簽,寫入頭文件的信息。

部分代碼如:

DcmDataset *dataset = fileformat.getDataset();

dataset –>putAndInsertString(DcmTagKey(0x0002, 0x0002),UID_RawDataStorage);

dataset –>putAndInsertString(DcmTagKey(0x0002, 0x0003),dcmGenerateUniqueIdentifier(uid,SITE_INSTANCE_UID_ROOT));

調用DcmItem類函數編寫void GenerateHead(DcmDataset * dataset,intwidth,int height)將病人的信息寫入到頭文件中。編寫DICOM文件存儲函數voidSaveDicom(CStringpathName,intwidth,intheight,unsigned short* buf,boolbIsJpegCompressed),其中pathName為保存文件名,width 和height分別為CCD探測器行列像素大小,指針buf為32Mbyte圖像數字量信息的首地址,bIsJpegCompressed選擇是否保存為壓縮的DICOM文件。采集圖像結束后調用此函數將圖像保存成DICOM格式文件等。

3.4 圖像增強處理

圖像增強是改善圖像質量,突出有用特征、增加圖像的清晰度、獲取較好視覺效果的一種手段,可以輔助醫生準確地診斷病情。圖像增強包括灰度增強、平滑濾波和邊緣增強等。

本系統嵌入了南京醫療軟件公司的增強模塊,通過加密狗的操作方式達到增強效果。根據所拍攝人體部位的不同,采用了中值濾波、探測器邊界校準、計算物體灰度閾值、背景灰度閾值、Sobel 濾波器、去除行偽影等一系列綜合圖像算法提高了不同部位,不同劑量強度下圖像清晰度。增強模塊與原始圖像之間采用DICOM文件接口方式,用戶以磁盤文件的形式指定原始圖像路徑以及文件名,增強之后的圖像也以文件的形式存放于磁盤,文件類型為DICOM格式。接口以動態鏈接庫的形式提供,按照動態鏈接庫的一般調用方式,調用動態連接庫IeLauncher.dll,(接口描述包含在頭文件IeLauncher.h中)。

增強時調用庫文件下的LaunchImageEnhancer_DICOM(srcPath, destPath, strRegion);函數。srcPath,destPath和strRegion分別為原始圖像數據文件地址、增強后圖像文件地址和增強部位選擇(現有胸部、腰椎、頸椎、盆骨、頭部、膝蓋及手足等部位可選)。

3.5 診斷報告打印及膠片打印

采集圖像結束后通過對話窗口打開診斷報告對話框。對話框先從數據錄中加載病人的基本信息,同時加載DICOM圖像并且創建縮略位圖文件,在Picture Control 控件里加載顯示。將MFC對話框界面轉換成打印文件的實現方法是采用MFC類打印及預覽CPrintFrame,CPrintView類。通過此類建立CPrintFrame的對象,設置該對象的指針為pframe, 并將對話框的指針傳給m_pCallerDlg(指向PrintFrame對話框的指針),調用對象的Creat函數創建框架窗口。

pframe->m_pCallerDlg = this;

pframe->Create(NULL,_T("打印預覽"),WS_VISIBLE | WS_CAPTION,CRect(0,0,0,0));

pframe->m_pView->OnMyPrintPreview();

pframe->m_pView->OnMyPrint();

在OnMyPrint函數中實現的功能包括打印表格、圖片、數據等。采用Rectangle(&DrawRect),SelectObject(&font);TextOut;Lineto等函分別實現矩形繪制、設置字體、文字輸出和劃線等功能。在主機上安裝打印驅動,進行報告編輯的打印。

膠片打印功能通過在PACS系統基礎上編寫接收打印數據包的方法實現。為了方便開發,可以采用德國offis公司提供的DCMTK開源項目,該平臺提供了所有必要的配置方法和示例工程文件,操作中使用標準中的打印管理服務類來實現打印管理的數據流模型。主要是編寫 dcmpstat.cfg 文件,此文件為打印引用的配置文件,打印膠片所需的參數都在該文件中。首先在VS中編寫膠片打印機配置界面,通過界面將打印機的基本信息錄入到dcmpstat.cfg。之后在該cfg中編寫Aetitle(系統與外部DICOM節點連接的實體名)、主機名稱、端口號、IP地址等信息。在VS中先調出需打印的一張影像,將該影像的文件路徑信息加上dcmprescu啟動DICOM接受服務,從PACS服務器接收影像。通過CreateProcess創建進程并調用進程,即可將文件發送到打印服務器上。本系統所采用的是DRYPIX4000膠片打印機,將打印機和PACS主機通過路由器設置在同一個IP段內實現在線膠片打印。

4 運行結果

本系統完成后,安裝在河北南皮縣利民醫院,對其原有的傳統X光成像和手工膠片沖洗進行了DR 成像系統數字化改造。將所開發的PACS軟件、CCD探測器與醫院原有的高壓發生器配合使用,對整個系統進行了聯合測試,主要對系統各個模塊進行了功能測試和整體性能測試。功能測試包括用戶登錄、圖像采集與增強、診斷報告及膠片打印等,而整體性能測試主要是對PACS工作站在運行過程中系統性能進行測試,包括系統登錄響應時間、查詢獲取病人信息的時間以及運行過程等。從結果看本系統運行穩定,性能良好,滿足了醫院的實際使用需求。

5 結束語

本文討論了一套完整的PACS系統開發。基于VC++.NET框架配合SQL、ADO、FPGA、DCMTK 工具包等技術實現了對CCD探測器的以太網數據采集成像顯示、DICOM醫療圖像數據存儲、圖像增強分析及診斷信息和膠片打印等一系列工作,開發過程中進行了大量的編程試驗和調試,最終投入到醫院實際使用。目前我國數字式X射線機主要依靠進口,無法進行成像檢測的普及,因此,以中小醫院為主要對象,開發國產數字式X光機及PACS系統非常迫切,PACS系統在以后將會有極其廣闊的發展前景。

參考文獻

[1]曹奕雯,陶薔.PACS關鍵技術及國內應用[J].醫療衛生裝備,2011,32(01):77-80.

[2]郭強.ADO技術在VC編程中的研究及應用分析[J].電子科技,2013,26(01):37-40.

[3]朱曉科.醫用膠片數字化軟件中圖像采集與文件管理的設計與實現[D].西安:西安電子科技大學,2007.

[4]門金瑞,姚大志,韋偉. 基于千兆以太網的CCD相機設計[J]. 激光與光電子學進展,2012,49(03):146-150.

[5]王韻靈.跨平臺移動醫學圖像顯示系統[D].上海:中國科學院研究生院(上海技術物理研究所),2014.

[6]江和.數字醫院PACS系統的設計與實現[D].成都:電子科技大學,2012.

[7]賈斌.醫學影像按需打印系統關鍵技術研究[D].廣州:華南理工大學,2013.

作者單位

1.南京理工大學紫金學院 江蘇省南京市 210046

2.紫金山天文臺 江蘇省南京市 210008

主站蜘蛛池模板: 亚洲无码视频一区二区三区| 国产成人亚洲无码淙合青草| 夜夜操天天摸| 欧美区日韩区| 亚洲欧美一区在线| 亚洲无码视频喷水| 综合色在线| 国产精品原创不卡在线| 亚洲第一视频网| 国产成人精品视频一区二区电影| 91精品国产91久无码网站| 久久香蕉国产线看观| 91 九色视频丝袜| 成人国产免费| 99久久99视频| 香蕉蕉亚亚洲aav综合| 午夜福利视频一区| 久久永久免费人妻精品| 国产成人一级| 国产精品亚洲精品爽爽| 一级做a爰片久久毛片毛片| 国产成人免费视频精品一区二区| 噜噜噜久久| 久久精品这里只有国产中文精品| 亚洲人网站| 国产精品无码作爱| 91视频精品| 一区二区理伦视频| 九九九久久国产精品| 国产美女免费网站| 欧美视频二区| 国产亚洲精品97在线观看| jizz国产视频| 91午夜福利在线观看精品| 婷婷亚洲天堂| 亚洲第一页在线观看| 国产精品99一区不卡| 国产欧美日韩资源在线观看| 国产迷奸在线看| 伊人久久福利中文字幕 | 国产黄在线免费观看| 亚洲精品无码高潮喷水A| 91精品久久久无码中文字幕vr| 波多野吉衣一区二区三区av| 亚洲香蕉在线| 亚洲中文字幕23页在线| 东京热高清无码精品| 白浆视频在线观看| 中文字幕久久亚洲一区| 四虎国产精品永久在线网址| 香蕉久人久人青草青草| 亚洲中字无码AV电影在线观看| a亚洲天堂| 亚洲激情区| 三级欧美在线| 欧美午夜视频| 国内精品伊人久久久久7777人| 天堂网亚洲系列亚洲系列| 精品国产网| 久久精品午夜视频| 久久夜色精品| 欧美精品v欧洲精品| 亚洲成av人无码综合在线观看| 一级黄色欧美| 3344在线观看无码| 在线日韩一区二区| 午夜欧美理论2019理论| 亚洲精品视频免费观看| 久久久久青草线综合超碰| 97视频在线精品国自产拍| 亚洲国产中文在线二区三区免| a级毛片免费看| 亚洲天堂网在线视频| 亚洲第一色网站| 98精品全国免费观看视频| 精品国产自| 日韩在线播放欧美字幕| 日本高清有码人妻| 国产一级片网址| 蝌蚪国产精品视频第一页| 久久亚洲综合伊人| 欧美成人午夜影院|