楊磊鑫,喬梁,陳欣,高鵬
1.第三軍醫(yī)大學(xué) a.學(xué)員19營;b.生物醫(yī)學(xué)工程學(xué)院,重慶 400038;2.重慶正大軟件職業(yè)技術(shù)學(xué)院,重慶 400056;3.中國人民解放軍第一八一醫(yī)院 醫(yī)學(xué)工程科,廣西 桂林 541002
現(xiàn)代醫(yī)學(xué)診斷中,連續(xù)斷層影像集的三維(3D)可視化已成為很多疾病診療的重要基礎(chǔ)。隨著遠(yuǎn)程醫(yī)療和區(qū)域醫(yī)療的快速發(fā)展,基于普通網(wǎng)絡(luò)平臺(tái)的連續(xù)斷層影像集的3D可視化實(shí)時(shí)共享和交互具有重要作用。例如,醫(yī)生可以通過網(wǎng)頁調(diào)取千里之外的影像數(shù)據(jù)集,在網(wǎng)頁中進(jìn)行3D可視化的瀏覽與操作,并進(jìn)一步與其他醫(yī)生進(jìn)行“手對(duì)手”會(huì)診。但目前主流的基于Web3D技術(shù)的交互平臺(tái)存在以下問題[1-2]:① 客戶端設(shè)備要求方面,大多需安裝特定插件來增強(qiáng)網(wǎng)頁傳輸和處理功能,同時(shí)需依賴特定的操作系統(tǒng)和移動(dòng)終端;② 數(shù)據(jù)傳輸方面,大多數(shù)技術(shù)均是把所需影像數(shù)據(jù)集一次性下載到客戶端本地,然后在本地進(jìn)行渲染處理,對(duì)移動(dòng)設(shè)備的圖像處理能力和網(wǎng)絡(luò)帶寬有著很高要求;③ 即時(shí)通訊與多終端同步表達(dá)方面,大多需要第三方插件支持。因此,本文提出了基于B/S架構(gòu)的在線醫(yī)學(xué)影像偽3D交互平臺(tái)。
作為工作基礎(chǔ),建立基于XML文檔存儲(chǔ)結(jié)構(gòu)的事件模型,提取出醫(yī)學(xué)影像3D化操作的事件特征,記錄并存儲(chǔ)每次操作事件,為實(shí)現(xiàn)操作的可追溯以及多終端間的同步瀏覽奠定基礎(chǔ);在處理結(jié)構(gòu)上,以服務(wù)器為中心,構(gòu)筑3D圖像處理終端,將3D數(shù)據(jù)重建任務(wù)交由服務(wù)器處理,并根據(jù)客戶端瀏覽指令(操作事件特征)進(jìn)行相應(yīng)渲染處理后實(shí)時(shí)投影為二維(2D)圖像,并將2D投影圖像交由客戶端下載顯示(偽3D效果),以減輕對(duì)客戶端硬件處理能力和操作系統(tǒng)兼容性的要求;最后引入AJAX網(wǎng)頁通訊技術(shù)和JPEG2000標(biāo)準(zhǔn)中的漸進(jìn)式傳輸理論,實(shí)現(xiàn)純凈網(wǎng)頁下的即時(shí)通訊和“偽3D”影像的視覺連貫,進(jìn)而實(shí)現(xiàn)純凈網(wǎng)頁在低網(wǎng)速條件下的醫(yī)學(xué)3D影像實(shí)時(shí)在線交互。
醫(yī)學(xué)影像可視化交互的關(guān)鍵在于操作事件的準(zhǔn)確提取與記錄,其層次化和結(jié)構(gòu)化存儲(chǔ)尤為重要。XML[3]作為一種元標(biāo)記語言,可以較好地描述結(jié)構(gòu)化和模塊化的信息模型,規(guī)范產(chǎn)品數(shù)據(jù)的定義。本平臺(tái)利用XML結(jié)構(gòu)特點(diǎn)設(shè)計(jì)的事件存儲(chǔ)模型涉及“公共信息”、“事件閉鎖”、“瀏覽操作”、“通道設(shè)置”和“信息標(biāo)注”5部分。
公共信息:包括歷次操作所涉及的數(shù)據(jù)源對(duì)象、時(shí)間、操作者、操作類型等信息。
事件閉鎖:由于服務(wù)器端的影像重建以及相應(yīng)的操作變換等工作需要一定運(yùn)算時(shí)間,服務(wù)器端在此期間根據(jù)狀態(tài)信息對(duì)事件模型進(jìn)行事件閉鎖等待,防止客戶端累計(jì)操作引發(fā)錯(cuò)誤。
瀏覽操作:客戶端對(duì)頁面醫(yī)學(xué)影像的旋轉(zhuǎn)、縮放等操作均有事件內(nèi)容的詳細(xì)記錄,以便進(jìn)行歷史回顧和在線交流。
通道設(shè)置:設(shè)定客戶端對(duì)同一連續(xù)斷層影像數(shù)據(jù)集的操作模式,包括獨(dú)立操作和同步查閱兩種模式。獨(dú)立操作即客戶端各自瀏覽操作同一數(shù)據(jù)集對(duì)象(每個(gè)用戶與數(shù)據(jù)集各自建立一個(gè)獨(dú)立通道),同步查閱即多個(gè)客戶端可以同步瀏覽操作同一數(shù)據(jù)集對(duì)象(多用戶共用一個(gè)處理通道)。
信息標(biāo)注:對(duì)某一觀察視角做電子筆勾畫、注釋等操作。
依照XML語法的基本規(guī)則,對(duì)會(huì)診專家在影像圖片上的每一次操作事件都提取出其特征,建立起基于特征的統(tǒng)一事件模型。該模型XML元素包括事件類型、事件狀態(tài)、事件時(shí)間、角度變換、角度方向、影像縮放、橫/縱向移動(dòng)位置、操作者、數(shù)據(jù)集地址、通道編號(hào)、通道類型、標(biāo)注類型、標(biāo)注坐標(biāo)。具體表述,見表1。
根據(jù)上述設(shè)計(jì)將瀏覽3D影像的操作事件記錄成XML文檔(示例片段):
表1 操作事件存儲(chǔ)模型表述
上述XML文檔所記錄的操作事件,見表2(分別對(duì)應(yīng)編號(hào)1和編號(hào)4)。
表2 XML文檔所記錄的操作事件
XML文檔始終存儲(chǔ)在服務(wù)器端,服務(wù)器通過實(shí)時(shí)監(jiān)控XML文檔及時(shí)獲取下一步工作指令,如渲染后根據(jù)投影原則生成2D結(jié)果圖。客戶端通過與服務(wù)器的交互,即時(shí)了解XML文檔的最新記錄狀態(tài),判斷是否有新的投影需要更新下載或是否允許用戶提交新的操作請(qǐng)求。操作示意圖,見圖1。
圖1 在線瀏覽與標(biāo)注同步操作示意圖
XML有標(biāo)記直觀、結(jié)構(gòu)簡單的特點(diǎn),便于后臺(tái)管理和拆解。系統(tǒng)可以通過修改之間的順序或刪除某部分,方便實(shí)現(xiàn)操作事件的歷史回放、標(biāo)記間上下疊置等工作。
同時(shí),一個(gè)即記錄一次事件,且數(shù)據(jù)量很小,可以字符串的形式進(jìn)行B/S的交互,如承載客戶端瀏覽操作事件請(qǐng)求信息的發(fā)送。
基于HTTP通信機(jī)制的傳統(tǒng)網(wǎng)頁在每一次從服務(wù)器端更新數(shù)據(jù)或者向服務(wù)器端上傳數(shù)據(jù)時(shí)均需刷新操作頁面,即使很小的一次數(shù)據(jù)更新都要求重新提交和加載所有頁面數(shù)據(jù),極大浪費(fèi)網(wǎng)絡(luò)帶寬,并對(duì)視覺連貫性造成很大影響。AJAX(Asynchronous JavaScript and XML)[4]網(wǎng)頁通訊技術(shù),利用獨(dú)特的XMLHTTPRequest對(duì)象可以在瀏覽器與Web服務(wù)器之間使用異步數(shù)據(jù)傳輸(HTTP請(qǐng)求),從而使網(wǎng)頁從服務(wù)器請(qǐng)求少量信息,而不是整個(gè)頁面,確保Web頁面不用打斷交互流程進(jìn)行重新加載即可動(dòng)態(tài)地進(jìn)行更新。絕大多數(shù)主流瀏覽器都支持的AJAX技術(shù)可用于實(shí)現(xiàn)純凈網(wǎng)頁條件下的頁面無刷新即時(shí)通信以及局部更新功能,如客戶端對(duì)新投影圖的下載和同步操作信息的傳遞。
JPEG2000支持許多類型的漸進(jìn)傳輸(圖像的可伸縮性),在慢速通信接收?qǐng)D像中極為有用。不同于傳統(tǒng)基線JPEG(Baseline JPEG)標(biāo)準(zhǔn)中對(duì)圖像自上而下的重建方式,JPEG2000增加了漸進(jìn)傳輸理論[5]。其中,在分辨率類型的漸進(jìn)性中,傳輸?shù)膱D像數(shù)據(jù)前面部分字節(jié)用于顯示圖像的一個(gè)小縮略圖;當(dāng)接收到更多字節(jié)時(shí),圖像的分辨率會(huì)以每邊倍乘2的速度增加,最后可獲得整幅圖像。
經(jīng)過測試,漸進(jìn)JPEG格式的圖像能夠被幾乎所有的主流瀏覽器支持。本文借鑒了JPEG2000漸進(jìn)傳輸?shù)暮诵乃枷耄瑢⑵渥鳛?D投影應(yīng)用方案的補(bǔ)充,在網(wǎng)絡(luò)帶寬極差的情況下,可從視覺和時(shí)間上增強(qiáng)其應(yīng)用連續(xù)性。
斷層影像的3D交互與渲染是整個(gè)工作的基礎(chǔ),利用VTK(Visualization Toolkit)可視化工具包已集成的光線投影(Ray Casting)等算法可以快速地實(shí)現(xiàn)符合醫(yī)學(xué)觀察要求的3D渲染效果[6-8]。由于此項(xiàng)工作以服務(wù)器為中心,客戶端僅需通過網(wǎng)頁提交操作請(qǐng)求,服務(wù)器處理后將實(shí)時(shí)映射的2D圖像傳輸給客戶端顯示,因此,客戶請(qǐng)求指令的準(zhǔn)確操作意義重大。VTK封裝的vtkCamera類的命令方式極為豐富,包括:“水平翻轉(zhuǎn)Azimuth(角度參數(shù))”、“水平旋轉(zhuǎn)Roll(角度參數(shù))”、“垂直翻轉(zhuǎn)Elevation(角度參數(shù))”和“水平/垂直位移SetWindowCenter(x,y)”等,通過這些指令完全能滿足臨床診療的操作需求。
3D可視化標(biāo)注可在3D模型某個(gè)視角進(jìn)行文字、線條的標(biāo)注操作。針對(duì)標(biāo)注操作,傳統(tǒng)設(shè)計(jì)一般采用空間幾何模型分析定位表示,理論模型較為復(fù)雜。以確保實(shí)用為目的,將3D模型的標(biāo)注演變?yōu)?D圖像的標(biāo)注,即在某一個(gè)位點(diǎn)、角度將3D影像投影為2D圖像,利用圖形設(shè)備接口 (Graphics Device Interface Plus,GDI+)對(duì)其進(jìn)行水印等操作,重新存儲(chǔ)為新的投影,交由客戶端下載顯示,以一種3D觀感的2D處理方式,簡化模型結(jié)構(gòu)。
系統(tǒng)處理流程:① 客戶端選擇影像集,請(qǐng)求以XML結(jié)構(gòu)提交至服務(wù)器XML模型存儲(chǔ);② 服務(wù)器實(shí)時(shí)讀取XML模型,完成3D圖像重建等預(yù)處理操作并存入VTK影像數(shù)據(jù)庫備用;③ 客戶端通過網(wǎng)頁可視操作發(fā)出“旋轉(zhuǎn)”、“標(biāo)注”等指令,以XML結(jié)構(gòu)化的字符串形式傳送至服務(wù)器端XML模型存儲(chǔ)(與①形式等同);④當(dāng)服務(wù)器接收到來自客戶端的指令時(shí),做出相應(yīng)渲染處理,投影為2D圖像并改變XML模型標(biāo)記;⑤ 客戶端定時(shí)發(fā)出AJAX數(shù)據(jù),從服務(wù)器端獲取XML模型最新標(biāo)記狀態(tài),確認(rèn)是否需更新影像或獲準(zhǔn)發(fā)出新的請(qǐng)求。系統(tǒng)處理流程圖,見圖2。
圖2 系統(tǒng)處理流程圖
在服務(wù)器端圖像處理方面,以VTK工具包作為3D圖像渲染平臺(tái),設(shè)計(jì)Winform模式的事件偵聽進(jìn)程實(shí)時(shí)監(jiān)控XML文檔狀態(tài),調(diào)度VTK的工作;將JPEG2000的漸進(jìn)式傳輸理論融合在Winform進(jìn)程中,直接將2D投影圖存儲(chǔ)為漸進(jìn)圖,從而實(shí)現(xiàn)以服務(wù)器為中心的圖像處理模式。
在B/S架構(gòu)設(shè)計(jì)上,以Visual Studio .NET C# 2008為開發(fā)平臺(tái),采用SQLServer 2005數(shù)據(jù)庫作為XML操作事件存儲(chǔ)模型事件的載體,用于存儲(chǔ)服務(wù)器端醫(yī)學(xué)影像、病例、客戶端基本資料、權(quán)限等重要信息;結(jié)合AJAX技術(shù),使網(wǎng)頁能夠像C/S窗口模式那樣實(shí)時(shí)刷新,并利用javascript腳本語言,實(shí)現(xiàn)基于純凈網(wǎng)頁的影像更新無縫切換。
(1)實(shí)驗(yàn)設(shè)備。服務(wù)器、客戶上網(wǎng)終端和測試數(shù)據(jù)。服務(wù)器為聯(lián)想PC計(jì)算機(jī)一臺(tái)(Windows 2003,IIS6.0,集成256 MB顯卡,4 GB內(nèi)存);客戶上網(wǎng)終端為普通個(gè)人電腦(Windows XP,集成顯卡,2 GB內(nèi)存)以及IPad mini(IOS 6)各一臺(tái)。測試數(shù)據(jù)為某醫(yī)療儀器產(chǎn)生的CT連續(xù)斷層影像數(shù)據(jù)集,數(shù)據(jù)源含280幀約141 MB DICOM圖像,單幀斷面圖像分辨率為512×512。
(2)網(wǎng)絡(luò)實(shí)驗(yàn)。將系統(tǒng)服務(wù)器架設(shè)在第三軍醫(yī)大學(xué)可接入Internet網(wǎng)絡(luò)的教育網(wǎng)服務(wù)器上,用戶網(wǎng)絡(luò)為一般家庭網(wǎng)絡(luò)環(huán)境(1 Mbps帶寬的ADSL電信撥號(hào)網(wǎng)絡(luò)),并在客戶機(jī)上安裝流量監(jiān)控軟件。
(3)測試方法。兩個(gè)客戶上網(wǎng)終端同時(shí)對(duì)同一測試數(shù)據(jù)進(jìn)行瀏覽觀察,其中,用戶A只打開一個(gè)網(wǎng)頁與B同步查閱;用戶B打開兩個(gè)網(wǎng)頁,一個(gè)與A同步查閱,一個(gè)獨(dú)立瀏覽。即服務(wù)器端有兩個(gè)處理通道,一個(gè)公用,一個(gè)由B單獨(dú)使用。連續(xù)測試1 h,各終端隨機(jī)操作,并以 5min為間隔同時(shí)截圖,用于后續(xù)比對(duì)。
(4)測試結(jié)果。根據(jù)連續(xù)應(yīng)用測試,各通道對(duì)3D影像的位移、角度變換、信息標(biāo)注等操作均能準(zhǔn)確記錄和表達(dá),瀏覽視覺均無失真、細(xì)節(jié)表現(xiàn)清晰、連貫性好、延遲時(shí)間<1 s。總體而言,本系統(tǒng)功能均可正常使用,可滿足低網(wǎng)速下3D醫(yī)學(xué)影像的共享需求。
本文實(shí)現(xiàn)了基于XML事件存儲(chǔ)模型的B/S模式的在線醫(yī)學(xué)影像偽3D交互平臺(tái),重點(diǎn)解決了大數(shù)據(jù)量3D醫(yī)學(xué)影像的跨平臺(tái)交互、低網(wǎng)速共享以及可視化同步問題;該平臺(tái)基于純凈網(wǎng)頁,具有使用成本低、操作方便的優(yōu)點(diǎn),可作為PACS的低成本輔助工具,具有較大的拓展應(yīng)用空間;但也存在多通道并行時(shí)服務(wù)器端負(fù)載過重的問題。下一步,首先需對(duì)XML模型做進(jìn)一步的優(yōu)化,并重點(diǎn)對(duì)服務(wù)器同時(shí)處理多個(gè)通道的大數(shù)據(jù)量3D影像的效率問題進(jìn)行研究,在一定硬件支持的情況下,擬從提高算法效率和進(jìn)行分布式處理兩方面入手??傊?,遠(yuǎn)程醫(yī)療是21世紀(jì)以來一項(xiàng)新興的醫(yī)學(xué)工程學(xué)科,并必將不斷擴(kuò)展和創(chuàng)新,而低網(wǎng)速傳輸條件下基于純凈網(wǎng)頁的醫(yī)學(xué)影像3D可視化交互平臺(tái)的實(shí)現(xiàn),將為信息化手段下的影像診斷輔助技術(shù)提供新的思路。
[1]Marcello Carrozzino,Nicoletta Bruno,Massimo Bergamasco.Designing interaction metaphors for Web3D cultural dissemination[J].Journal of Cultural Heritage,2013,(14):146-155.
[2]高鵬,劉鵬,喬梁.基于Web的醫(yī)學(xué)影像三維可視化實(shí)現(xiàn)方式[J].中國數(shù)字醫(yī)學(xué),2013,8(7):78-82.
[3]Flavio Ferrarottia,Sven Hartmannb,Sebastian Link.Efficiency frontiers of XML cardinality constraints[J].Data & Knowledge Engineering,2013,87(9):297-319.
[4]楊俊峰,黎建輝,楊風(fēng)雷.深層網(wǎng)站Ajax頁面數(shù)據(jù)采集研究綜述[J].計(jì)算機(jī)應(yīng)用研究,2013,30(6):1606-1610.
[5]Yuan Tian,Weihua Cai,Jianyong Sun,et al.A novel strategy to access high resolution DICOM medical image based on JPEG2000 interactive protocol[J].Proc of SPIE,2008,(13):1-11.
[6]石玉.基于VTK的可視化技術(shù)研究與實(shí)現(xiàn)[D].西安:西安建筑科技大學(xué),2009.
[7]楊磊鑫,張一馳,章程杰,等.基于XML和VTK的醫(yī)學(xué)影像三維書簽系統(tǒng)設(shè)計(jì)[J].醫(yī)療衛(wèi)生裝備,2013,34(5):9-12.
[8]Freud N,Duvauchelle P,Lé tang J M,et al.Fast and robust ray casting algorithms for virtual X-ray imaging[J].Nuclear Instruments and Methods in Physics Research,2006,248(1):175-180.