周健煖
佛山市南海區(qū)第二人民醫(yī)院 設備科,廣東 佛山 528251
一定規(guī)模的醫(yī)院基本配備了婦科、消化內(nèi)科、呼吸內(nèi)科、五官科、超聲科、手術室、檢驗科、病理科等醫(yī)療圖像采集工作站。這些工作站通過各種內(nèi)窺鏡、顯微鏡或其它物理學設備顯示醫(yī)療圖像,種類繁雜,圖文報告格式和軟件架構(gòu)不盡相同,大多數(shù)是單機版,這對病人醫(yī)療圖文信息的收集、傳輸、查閱、統(tǒng)計和保存工作帶來諸多不便。工作站都包括攝像系統(tǒng)、采集卡、電腦和圖像采集軟件。通用化醫(yī)療圖像采集系統(tǒng)能實現(xiàn)常用圖像采集軟件新建病人信息、采集圖像、報告打印、報告管理等等相似的功能,此外,在原來單機的基礎上增加了聯(lián)機功能,為數(shù)字化醫(yī)院的醫(yī)療圖文信息共享提供了很好的支持。現(xiàn)將通用化醫(yī)療圖像采集系統(tǒng)的具體設計方法介紹如下。
本系統(tǒng)后臺采用SQL Server建立數(shù)據(jù)庫,SQL server數(shù)據(jù)庫作為目前流行的關系型數(shù)據(jù)庫管理系統(tǒng),具有使用方便、可伸縮性好與相關軟件集成程度高等優(yōu)點[1];對于硬件配置低的電腦,可用微軟Office Access建立數(shù)據(jù)庫,它是常用的輕量級數(shù)據(jù)庫管理系統(tǒng),在中小型應用程序開發(fā)中應用非常廣泛[2]。本系統(tǒng)前臺軟件采用VB.NET開發(fā),VB.NET是基于微軟.NET Framework之上的面向?qū)ο蟮木幊陶Z言[3]。本系統(tǒng)可運行在多種Windows系統(tǒng),能適配繁雜的多種醫(yī)療圖像采集系統(tǒng)。
本系統(tǒng)包括圖像采集工作站軟件和醫(yī)生電腦軟件:兩端軟件之間使用C/S結(jié)構(gòu),醫(yī)生電腦通過局域網(wǎng)和工作站進行通信,以實現(xiàn)網(wǎng)絡新建病人信息、查閱和打印報告的功能。C/S結(jié)構(gòu)是一種分布式處理模式,通過充分利用兩端硬件環(huán)境的優(yōu)勢,將任務合理分配到客戶機和服務器來實現(xiàn),降低了系統(tǒng)的通訊開銷[4]。本系統(tǒng)的功能結(jié)構(gòu)圖,見圖1。
每種專科醫(yī)療圖像采集工作站的病人信息數(shù)據(jù)庫表字段都不會完全相同。本系統(tǒng)工作站軟件的選項設置可以自定義軟件名稱,例如“耳鼻咽喉鏡圖像采集系統(tǒng)”,見圖2。軟件使用select case條件判斷分支語句,根據(jù)軟件名稱來選擇對應專科的SQL數(shù)據(jù)庫表。
圖1 通用化醫(yī)療圖像采集系統(tǒng)的功能結(jié)構(gòu)圖
圖2 系統(tǒng)軟件的選項設置
兩端軟件的新建病人信息功能包括新建病人預約和新建采集報告兩種,前者是方便病人預約其它日期來診檢,后者是新建病人信息后直接采集圖像,兩者都會新建病人的基礎信息,見圖3。
圖3 新建病人信息的界面
采集圖像是工作站軟件的關鍵技術和難點。醫(yī)療攝像系統(tǒng)輸出接口主要有AV(聲音和圖像)、S-Video(S端子)、VGA(視頻圖形陣列)、DVI(數(shù)字視頻接口)、HDMI(高清晰度多媒體接口)等幾種,采集的圖像分辨率分為普清和高清。連接工作站上的采集卡接口主要有PCI、PCI-E、USB等幾種,在Windows系統(tǒng)下主要有基于VFW(Video for Windows)、DirectShow(微軟新一代流媒體處理的開發(fā)包)和SDK(軟件開發(fā)工具包)這3種視頻采集方法[5],SDK是被軟件工程師用于特定的軟件包、軟件框架、硬件平臺、操作系統(tǒng)等建立應用軟件的開發(fā)工具的集合[6],所以選取含有SDK的采集卡進行開發(fā)具有有較強兼容性和開發(fā)迅速的優(yōu)勢,本系統(tǒng)采用這種方法來開發(fā)采集圖像功能。
工作站上配備了機械式腳踏開關來采集圖像。腳踏開關是一種通過腳踩或踏來控制電路通斷的開關,使用在雙手不能觸及的控制電路中以代替雙手達到操作的目的,具有腳踏控制和控制距離遠等優(yōu)勢,解放了操作人員的雙手,同時又保持圖像采集的實時性與精確性[7]。腳踏開關通過連接電腦COM口(串口)的4和6腳與電腦進行通信,在軟件上創(chuàng)建SerialPort串口控件,使用串口控件的DsrHolding(數(shù)據(jù)設置就緒信號)狀態(tài)和PinChanged(非數(shù)據(jù)信號)事件捕捉開關的通斷信號來引發(fā)采集圖像的動作。機械式開關在一次開關切換的瞬間出現(xiàn)抖動現(xiàn)象,在開關信號穩(wěn)定的前后發(fā)生多個抖動脈沖[8],從而導致多個串口捕獲事件,本系統(tǒng)采用軟件延時來大大消除這種抖動干擾。對于沒有串口的電腦,可以購買PCI、PCI-E或USB轉(zhuǎn)串口的轉(zhuǎn)換頭裝在電腦上,并安裝好驅(qū)動即可。
同時,在工作站軟件上加入采圖和錄像按鈕,使用鼠標點擊按鈕來采集圖片和錄像,見圖4。
圖4 圖像采集和錄像界面
軟件加入一些主流采集卡硬件的自動識別設置功能,根據(jù)SDK加入視頻接口、亮度、對比度、飽和度、色度、分辨率和白平衡等的設置,同時加入腳踏開關的通信串口選擇設置,見圖5。
術語字典包括基礎字典和??谱值?。基礎字典包括交費類別、性別、初復診、診檢部位、診檢科室、診檢醫(yī)生等常用填寫詞語,在新建病人信息時通過引用到對應的ComboBox組合框控件(它由一個允許用戶鍵入的文本框和下拉列表框組成[9])的數(shù)據(jù)源,達到快速選擇輸入文字,減少輸入的時間和錯誤率。因為基礎字典信息量較少,只用到listbox列表框控件和緩存文件的聯(lián)動來進行管理,見圖2下方部分。??谱值浒ú∪酥髟V、采圖結(jié)果描述、診檢建議、病理診斷等??菩g語以及一些常用但鍵盤不容易輸入的字符(例如cm2),這些信息量多,甚至有層次的結(jié)構(gòu),所以用到TreeView樹結(jié)構(gòu)控件(它是以樹形目錄形式顯示數(shù)據(jù),并能分層展開和收縮各節(jié)點子目錄[10])和數(shù)據(jù)庫表的聯(lián)動來管理,見圖3右側(cè)部分,在編輯病人報告信息時,先點擊要填寫內(nèi)容的文件框,再點擊對應術語名稱的TreeView節(jié)點,可快速輸入術語內(nèi)容。
圖5 系統(tǒng)硬件的選項設置
兩端軟件都可以選取采集的圖片進行打印報告,軟件能根據(jù)選取的圖片數(shù)量自動縮放和編排,這里用到PrintPreviewDialog打印對話框控件的PrintPage打印事件,并使用Graphics.DrawString和Graphics.DrawImage繪制打印報告的文字和圖片。在工作站電腦將打印機共享,可供醫(yī)生電腦聯(lián)機使用。
兩端軟件使用DataGridView控件(DataGridView控件功能強大、擴展性強,用戶可以單獨或與其他控件結(jié)合使用,實現(xiàn)數(shù)據(jù)的顯示和編輯[11])顯示預約表和報告表,雙擊表行即可打開對應病人的報告信息進行查閱。軟件具有按序號、姓名、門診號、住院號和時間范圍的快速查找功能,也具有能自由組合數(shù)據(jù)表各字段的邏輯表達式的萬能查詢器,以滿足特殊的查找需要。報告統(tǒng)計是為了方便醫(yī)生根據(jù)性別、時間季節(jié)等感興趣的因素進行疾病研究,也方便統(tǒng)計工作量和效益分析。軟件還加入了修改保存、刪除、導出、導入、備份等報告管理功能,實現(xiàn)對圖文報告的常規(guī)存儲管理。上述功能,見圖6。
兩端軟件之間的通信使用Socket技術。Socket是面向C/S結(jié)構(gòu)而設計的,Socket接口是TCP/IP網(wǎng)絡的應用編程接口[12]。在工作站軟件通過上述圖2的主機地址和端口設置,來創(chuàng)建IPEndPoint實例指定IP地址和端口對,使用Socket.Bind方法綁定IPEndPoint,啟動Socket.Listen方法來偵聽醫(yī)生電腦軟件發(fā)來的新建病人信息、報告打印或報告查閱請求任務,并使用ThreadPool類創(chuàng)建線程池來處理這些請求任務。線程池可以最大程度的利用系統(tǒng)的資源,消除系統(tǒng)因頻繁創(chuàng)建、銷毀線程而帶來的系統(tǒng)開銷[13],同時不阻塞工作站軟件的其它界面操作。醫(yī)生電腦軟件同樣通過軟件設置來創(chuàng)建IPEndPoint實例指定和工作站一致的IP地址和端口對,使用Socket.Connect方法和后者連接,創(chuàng)建新線程向工作站發(fā)送請求任務,不阻塞軟件的其它界面操作。醫(yī)生電腦可以不安裝SQL Server,將查詢得到的病人信息保存成緩存文件,并將查閱過的圖像下載保存,以便下次能本地快速查閱。
圖6 報告查閱和報告管理界面
通用化醫(yī)療圖像采集系統(tǒng)能集成現(xiàn)有的多數(shù)醫(yī)療圖像采集系統(tǒng),根據(jù)自定義的軟件名稱自動適配為對應專科的參數(shù)設置,統(tǒng)一軟件的操作流程,促進醫(yī)護人員的工作效率,規(guī)范化圖文報告的格式,提高醫(yī)療圖文信息的管理便捷性,減少存儲錯誤率,增加了聯(lián)機功能,適應醫(yī)療業(yè)務數(shù)字化共享的要求。
為適應醫(yī)療業(yè)務和醫(yī)護人員的業(yè)務需求,要不斷改善通用化系統(tǒng)的功能模塊。近年來,電子內(nèi)窺鏡為了實現(xiàn)高清成像,逐漸發(fā)展為高清電子內(nèi)窺鏡[14],通用化系統(tǒng)要同步添加對新型高清采集硬件的軟件支持,存儲設備可以替換為比機械硬盤讀寫速度更快的固態(tài)硬盤。數(shù)字化醫(yī)院不單純是醫(yī)院的信息化,它是將病人的各種信息以及診療過程的各種數(shù)據(jù)進行一元化管理[15],DICOM是PACS的實際工業(yè)標準,解析DICOM格式是醫(yī)學圖像處理的基礎[16],而本系統(tǒng)規(guī)范化多種醫(yī)療圖像采集系統(tǒng)的操作流程和圖文報告格式,實現(xiàn)圖文信息的網(wǎng)絡傳輸,為將這些醫(yī)療圖文向DICOM文件轉(zhuǎn)換進而接入PACS提供了基礎,這是本系統(tǒng)需要拓展的領域。
[參考文獻]
[1] 張穎.關于SQL server數(shù)據(jù)庫安全監(jiān)控系統(tǒng)的設計的探討[J].數(shù)字技術與應用,2011,(11):239.
[2] 劉曉天.基于Access的數(shù)據(jù)安全性分析[J].福建電腦,2012,28(7):79-80.
[3] 黃維.關于VB.NET的管理信息系統(tǒng)的開發(fā)的研究[J].數(shù)字技術與應用,2017,(1):130.
[4] 張夢.基于C/S結(jié)構(gòu)的中小企業(yè)人事管理系統(tǒng)的設計與開發(fā)[J].計算機科學,2016,43(S1):547-550.
[5] 李欽存,王春明,段海龍.基于Windows的幾種視頻采集方法設計與實現(xiàn)[J].硅谷,2008,1(21):67-68.
[6] 陳俊良,葛俊鋒,葉林,等.基于??低昐DK的視頻監(jiān)控軟件的開發(fā)[J].工業(yè)控制計算機,2015,28(7):97-98.
[7] 劉德軍,張金美.醫(yī)用腳踏開關控制串口采集圖像功能的實現(xiàn)[J].硅谷,2014,7(22):55-56.
[8] 周松青,任偉艷,蔡雷.開關電路中按鍵抖動信號的比較[J].兵工自動化,2012,31(10):71-72.
[9] 馮偉偉,王遠斌,嵇亮亮.高級輸入聯(lián)想在組合控件中的應用[J].江蘇科技信息,2014,(23):51-52.
[10] 袁芳.TreeView控件在宿舍管理系統(tǒng)中分類導航的設計與應用[J].電腦知識與技術,2015,11(31):88-90.
[11] 陳江,劉佳.C#實現(xiàn)DataGridView調(diào)用ComboBox控件[J].電腦編程技巧與維護,2015,(9):26-27.
[12] 葛福鴻,劉曉瑩,張麗萍.基于Socket技術的即時通信軟件的設計與實現(xiàn)[J].電腦開發(fā)與應用,2011,24(5):63-65.
[13] 張垠波.線程池技術在并發(fā)服務器中的應用[J].計算機與數(shù)字工程,2012,40(7):153-156.
[14] 張雯雯,周正東,管紹林,等.電子內(nèi)窺鏡的研究現(xiàn)狀及發(fā)展趨勢[J].中國醫(yī)療設備,2017,32(1):93-98.
[15] 李勁松,王華瓊,張小光.數(shù)字化醫(yī)院的信息一元化管理[J].醫(yī)學信息學雜志,2011,32(5):19-22.
[16] 龍華飛,唐月華,陳泓伶.PACS系統(tǒng)中DICOM醫(yī)學圖像格式解析[J].中國數(shù)字醫(yī)學,2014,9(3):29-31.