• 沒有找到結果。

Database

AP Server WEB Server DB Server

COM+

Image Database

影像擷取工作站 醫療儀器

Internet

一般使用者 影像轉換工作站

本系統如圖 3-1 所示,採 three-tier 架構,把 client-server 架構中的資料連結的部份抽出,封裝為 COM+放置於應用伺服器中,

透過分散式處理的方式,將原本需由主機執行的工作,透過數台應用 伺服器來分擔,做到平行處理的能力(parallel processing),讓使 用者覺得使處理速度變快,進而達到負載平衡(load balancing )及 風險分擔(risk sharing)等優點。Client 端透過應用伺服器來連接 資料庫,所以當資料庫的位置改變時,只要修改應用伺器中 COM+設 定,而不需對每個 Client 做修正,不但方便系統維護,也減低維護 成本。在網路服務的部份,也因 Web-Client 端是透過 COM+連接至資 料庫,因此對於資料庫在網路上的風險大為降低,在安全控管上也較 為容易。

本系統在架構上主要區分為 DB Server、AP Server、Web Server、

AP Client 及 Web Client 五個部份。(1) DB Server 是用來管理 HIS(醫 療資訊系統)的資料庫及醫療影像檔案; (2) AP Server 主要負責提 供 AP-Client 與 資 料 庫 連 結 之 部 份 ; (3) Web Server 是 負 責 Web-Client 與資料庫連結的部份; (4) AP Client,主要負責超音 波影像的擷取、儲存、傳輸、報告登錄/查詢及影像轉檔等功能;(5) Web Client,則是讓使用者以瀏覽器為介面,查詢病患基本資料及其 醫療影像。

二、系統軟硬體

圖 3-2 硬體架構圖

如圖 3-2 所示,本系統所使用的硬體設備上包含了資料庫伺服 器、應用伺服器、網路用戶端、一般用戶端、影像擷取端等電腦外,

還需影像擷取卡、超音波掃瞄掃儀及網路設備。

在資料庫伺服器及應用伺服器我們是使用個案醫院原購買之 IBM Netifinity 5600 的機器,搭配 1G 的記憶體;一般用戶端及網路用 戶端的部份則採用 P3-750 等級以上之個人電腦;平版電腦是使用 Acer C100 之型號,以配合醫師手寫輸入使用;影像擷取卡是使用 UPG300PLUS USB 魔法師為影像擷取的工具;超音波掃瞄儀是採用個

資料庫伺服器 應用伺服器

超音波掃描儀

影像擷取 平版電腦 一般用戶端 網路用戶端 乙太網路

案醫院中 Toshiba MODEL SSA-260A 的機型;在此系統中,所有的網 路線都是透過 RJ-45 的網路線,互相連結,網路卡皆採用 D-LINK350 10/100 Bytes。

系統軟體的部份,資料庫伺服器及應用伺服器的作業系統皆採 Windows Server 2000,資料庫則是使用 Microsoft SQL Server 2000,

而 Web Server 則是搭配 Microsoft IIS 4.0 所建構而成。在個人電 腦部份,無論超音波的工作平台或是診間的用戶端及平板電腦,作業 系統皆是採 Windows 系統,而 Web Client 只要是 IE 5.0 以上版本 的瀏覽器即可。

在程式發展工具部份,為了迅速開發此系統,我們採用 Delphi 7.0 及 VB 6.0 為發展語言;影像擷取部份,為了達到程式之可攜性,

我們使用 Microsoft 所提供的 Windows Video For Windows 1.1 的函 式庫來控制影像擷取;網頁查詢功能的部份則是採 ASP 加上 COM+元 件所建構而成。

三、軟體架構圖

圖 3-3 軟體架構圖

本系統首先透過「影像擷取系統」抓取醫療儀器上面的影像,再 經由「影像儲傳系統」,將醫療儀像以絕對路徑的方式儲存至遠端主 機上;接著醫師可連結「報告登錄系統」,直接登打病患的檢查報告,

以便整合流程,縮短報告等候時間;為了節省診間醫師查詢醫療影像 的時間,我們利用了「prefetching」的功能,將過去的醫療影像結

AV 影像

影像儲傳系統 影像擷取系統

autorouting 系統

圖檔轉換系統

報告影像查詢系統

prefetching 系統 資料庫

醫療儀器

轉至 client 端,新產生的醫療影像則是利用「autorouting」方式,

主動將醫療影像分派至各診間;在「影像擷取系統」及「報告登錄系 統」中,我們提供「影像處理」功能,醫師可針對醫療影像做一些簡 單的處理,如標記、放大、亮度調整等; Web 的部份目前系統僅提 供「影像查詢」功能,讓醫師可透過 Internet 及 Intranet 查詢病患 的醫療影像,以下就整個軟體設計分別介紹。

電話…),主要用於病患基本資料之取得;檢查à處置排程檔(病歷號 後直接幫病患做檢查,在影像擷取的方面,我們是利用 Microsoft Video for Windows API 中的 Video Capture 的函數來完成,如圖 6.1

1

所示,首先先利用 capCreateCaptureWindow() 建立一個影像擷取視 窗,接著根據我們擷取影像及裝置的要求,取得現在系統中有多少支 援 Video for Windows 的裝置及其它資訊,再利用 capDriverConnect() 選擇其中一個裝置與影像擷取視窗建立連接,然後依據我們對擷取影 像及裝置的需求,用 capPreviewRate()設定影像擷取參數,即可用 capPreview()顯示擷取到的 Video。此時擷取畫面上的影像是與儀器上 面的影像為同步,當看到想要存檔的畫面時,呼叫 capPreview()之擷 取影像的函數即可儲存成 BMP,當完成影像擷取工作時,則呼叫 capDriverDisconnect()函式,完成影像擷取工作,結束裝置與視窗的連 接。

圖 3-5 Video Capture 程式設計流程圖

設定裝置與影像擷取視窗相連接 capDriverConnect()

顯示影像 capPreview()

結束

capDriverDisconnect() 建立一個影像擷取視窗 capCreateCaptureWindow()

設定影像擷取參數 capPreviewRate()

影像儲存 capFileSaveDIB()

2、 影 像 儲 傳 系 統

要即針對影像欄位分別以 BLOB(Binary Large Object,二進位大型物 件格式)及 FI(File Index,文字欄位格式的檔案索引)方式儲存,並 比較兩種方式對連續存入、讀取及刪除的時間,結果如表 1,我們可 號為 7,那此次第一張圖檔我們就命名為 L222222222_930601_008,

依此類推,這樣每張醫療影像的編號就不會重複,且方便日後之援尋。

影像大小 256K 512K 768K BLOB 0.225312 0.902187 2.165937 存

入 FI 0.048125 0.131875 0.256250 BLOB 0.035000 0.331875 0.318750 讀

取 FI 0.015313 0.037813 0.197500 BLOB 0.089193 0.249023 0.728516 刪

除 FI 0.031250 0.057943 0.156276 表 1 BLOB、 FI 資料庫儲存、讀取、刪除時間表(單位秒)

資料來源:周樂正[21]

為了讓診間在查詢病患醫療影像時,不受限於網路頻寬之影嚮,

我們參考了文獻中 autorouting 及 prefetching 的技術,將醫療影像 以主動送出的方式傳送至各診間,減少醫師在調閱圖檔時的等候時 間,以下分別就 autorouting 及 prefetching 的系統設計說明之。

3、 Prefetching 系 統

所謂 Prefetching 即根據醫師在作診斷時,常常會參考到病患以 前的醫療影像,所以 Server 在醫師做診斷前,就先將醫師可能會參 考到的影像影像先從資料庫取出,傳送到醫師的電腦裡面,供醫師快

速的查詢,本系統即根據此概念來設計。

圖 3-6 Prefetching 的流程圖

在個案醫院中,醫師每日約八點半開始看診,每個看診醫師的診 間約略固定,而診間小姐八點即開始上班,於是我們利用八點至八點 半這個離峰時間,來啟動此系統的運作,如圖 3-6 所示,當診間小姐 八點啟動電腦系統時,系統即會開始進行 Prefetching 操作,系統依 據”登錄醫師”的帳號,主動下載”登錄醫師”在本日內所有『預約

掛號』病患,在近六個月內所產生的醫療影像圖檔;當有『現場掛號』

4、 AutoRouting 系 統

所謂 autorouting 是指新產生的醫療影像都有特定的醫師要閱 讀,所以當有新的醫療影像產生時,Server 需主動的將醫療影像送 至給特定的醫師。此部份我們利用 Winsock 的功能來完成,socket 主要是網際網路上用來執行應用程式之間的通訊動作,是 IP 位址和 TCP 埠號碼結合成的唯一性數值,埠號碼小於 256 大部份被用來做網 際網路服務,如:FTP、HTTP 等;埠號碼 256-1023 則是被特定的 UNIX 服務所使用,因此,此程式中製定一個 1024 至 65535 之間的一個埠

然後先對開單診間做一個 Connection 的動作,當連線成功時,即傳

如圖 3-9 所示,診間電腦僅是啟動一個 Socket 的 listen()服 務,當檢查室完成檢查時,才會傳送字串診間,而診間在根據字串內 容,下載相關醫療影像,這個 listen()僅是一個等待別人連線機制,

當有封包傳入才做接收的動作,故透過此機制,不需不斷的偵測是否 有新影像需下載,可保持主機較佳的狀態。

圖 3-9 診間 AutoRouting 的流程圖 判讀字串

接收訊息 等待連線

下載醫療影像

判斷是否 下載成功

N

5、 報 告 登 錄 查 詢 系 統

6、 影 像 處 理 系 統

為了輔助醫師對醫療影像之判讀,在此部份系統提供了一些基本 的影像處理功能,如固定倍數放大、定點放大、負片閱覽及亮度調整 等功能,此外為了輔助病兆影像之註記,醫師可把標記後圖檔另存下 來,以供以後之參考。如圖 3-11 所示,此部份所使用到的資料表為

『醫療影像檔』,主要是把醫師標記後要存檔的影像,記錄至資料表 中,並把標記後的醫療影像儲放至主機中。

圖 3-11 影像處理系統的個體關係圖

7、 影 像 轉 換 系 統

個案醫案雖未有符 DICOM 之醫療影像,但為了往後之醫療影像交 換,系統中還是提供了影像轉換功能,主要將 BMP 格式的圖檔,轉換 為 DICOM 格式,此部份是利用 DICOM 3.0 元件所建構而成的;我們參 考 DICOM 3.0 中 US Image IOD Module Table 來產生檔案,主要包含 五個部份:(1)Patient Information:這個部份是指病患的基本資 料,例如:姓名,身份証字號,生日,性別,都是由 HIS 系統中的病

醫師 標記 影像

1 M

患檔取出;(2)Study Information:這個部份是指病患的檢查資料,

例如:檢查日期、檢查時間、檢查醫師,及檢查時病患的資料,如身 高、體重等,這個部份會隨次每次檢查而改變;(3)Series:此部份 是記錄檢查的序號,其來源主要是儀器之流水號;(4)Equipment:儀 器本身之資訊;(5)Image Information:這個部份是 DICOM 影像的主 體,包含了影像本身的資訊,如:影像型態、解析度及影像本身數值

相關文件