在瀏覽器上繪制醫(yī)學(xué)影像定位線的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及醫(yī)學(xué)影像處理技術(shù),尤其是涉及一種在瀏覽器上繪制醫(yī)學(xué)影像定位線 的方法
【背景技術(shù)】
[0002] 比如,CT、MR序列中的切片數(shù)量很多,醫(yī)生對(duì)病灶位的確診需要對(duì)多組不同視點(diǎn)角 度,通過分析一個(gè)序列的人體組織器官二維切片圖像,醫(yī)生能夠得到病灶的大小及形狀,方 便診斷。但CT切片圖像的定位,MR不同切片間的相互定位是一個(gè)難題,針對(duì)某一幅圖像, 醫(yī)生并不知道該切片圖像在組織器官上對(duì)應(yīng)的精確位置。
[0003] 現(xiàn)有技術(shù)是基于PC客戶端在醫(yī)學(xué)影像上繪制定位線,由于PC端的移動(dòng)性能較差, 無法適應(yīng)于現(xiàn)在遠(yuǎn)程醫(yī)療中醫(yī)生精確定位病人病灶的需求。
【發(fā)明內(nèi)容】
[0004] 為克服現(xiàn)有技術(shù)的缺陷,本發(fā)明提出一種在瀏覽器上繪制醫(yī)學(xué)影像定位線的方 法,采取高效準(zhǔn)確的服務(wù)端定位線算法和顯示算法,在不安裝任何插件的瀏覽器上完成醫(yī) 學(xué)影像的定位線繪制。
[0005] 本發(fā)明采用如下技術(shù)方案實(shí)現(xiàn):一種在瀏覽器上繪制醫(yī)學(xué)影像定位線的方法,其 包括步驟:
[0006] 瀏覽器將醫(yī)學(xué)影像中定位圖像和切片圖像的唯一標(biāo)識(shí)UID基于WADO協(xié)議構(gòu)成請(qǐng) 求URL,并向Web醫(yī)學(xué)影像服務(wù)器發(fā)送請(qǐng)求URL ;
[0007] Web醫(yī)學(xué)影像服務(wù)器通過解析請(qǐng)求URL讀取需要的DICOM文件信息,通過定位圖像 計(jì)算出繪制定位線所需二維坐標(biāo)值,然后將二維坐標(biāo)值返回瀏覽器;
[0008] 瀏覽器根據(jù)返回的二維坐標(biāo)值,使用HTML5中canvas屬性在醫(yī)學(xué)影像的切片圖像 上畫出定位線。
[0009] 其中,瀏覽器使用JavaScript中的Ajax技術(shù)與Web醫(yī)學(xué)影像服務(wù)器進(jìn)行異步通 ?目。
[0010] 其中,通過定位圖像計(jì)算出繪制定位線所需二維坐標(biāo)值的步驟具體包括:
[0011] 對(duì)DICOM文件信息中所包含醫(yī)學(xué)影像區(qū)分定位圖片與切片圖片;
[0012] 利用獲取的DICOM文件中TAG標(biāo)記建立統(tǒng)一的坐標(biāo)系;
[0013] 確定定位圖像所在平面,計(jì)算切片圖像的左上角、右上角、右下角和左下角這 四個(gè)端點(diǎn)與定位圖像之間的矢量位移,通過矢量位移判斷和計(jì)算出切片圖形與定位圖 像之間的兩個(gè)交點(diǎn)坐標(biāo)值,將兩個(gè)交點(diǎn)坐標(biāo)值轉(zhuǎn)換為二維坐標(biāo)值CrossPointl (X,y)和 CrossPoint2(X,y)〇
[0014] 其中,確定定位圖像所在平面的步驟包括:
[0015] 左上角端點(diǎn)在統(tǒng)一坐標(biāo)系的三維坐標(biāo),假設(shè)為O1U1, yi,Z1),以及該定位圖像的第 一行的方向矢量$ = ,\ )和第一列的方向矢量A = (',Λ,,戈);
[0016] 將定位圖像的第一行的方向矢量5 =(·ν-?)和第一列的方向矢量 ^ Hv-1V \)進(jìn)行叉乘運(yùn)算,得到定位圖像平面的法向量珥=(Κ ^);
[0017] 依據(jù)定位圖像的法向量A =(?,《'_-)得到定位圖像的平面,以平面方程表示為 (X-X1) dx+(y-y^ dy+(Z-Z1) dz = 0〇
[0018] 其中,計(jì)算切片圖像的四個(gè)端點(diǎn)與定位圖像之間的矢量位移的步驟包括:
[0019] 依次從切片圖像中取出Tag (0020, 0032)值來確定切片圖像的左上角端點(diǎn)在所述 統(tǒng)一坐標(biāo)系中的三維坐標(biāo)值O2 (x2, y2, Z2)、取出Tag(0020, 0037)值確定切片圖像的單位行 向量弓=('2,JVzr2)和單位列向量& =(Λ2,Λ2,\)、取出Tag(0028,0030)值確定切片圖像 中每個(gè)像素代表的物理高度Spacingx, Spacingy、取出Tag(0028, 0010)值確定切片圖像的 高度SrcHeight、取出Tag(0028, 0011)值確定切片圖像的寬度SrcWight ;
[0020] 確定切片圖像的左上角、右上角、右下角和左下角這四個(gè)端點(diǎn)的坐標(biāo),分別記為 P1 (X,y,z)、P2 (X,y,z)、P3 (X,y,z)和 P4 (X,y,z);
[0021 ]分別計(jì)算 P1 (x, y, z)、P2 (x, y, z)、P3 (x, y, z)和 P4 (x, y, z)與以(X-X1) dx+ (y-yj (^+(Z-Z1) dz = 0表示的定位圖像之間的矢量位移dvp dv2、dv3和dv4。
[0022] 其中,通過下列公式分別確定切片圖像的左上角端點(diǎn)的坐標(biāo)P1O^y, z)、右上角端 點(diǎn)的坐標(biāo)P2 (X,y,Z)、右下角端點(diǎn)的坐標(biāo)P3(x, y, z)和左下角端點(diǎn)的坐標(biāo)P4(x, y, z):
[0023] P1(Xj1Z)即為 02(x2, y2, z2), P2 = i^+ * (Spacingx*SrcW\^\\t), P3 =P2+c2 *(Spacingy*SrcI lcight),尸4 = f+? *(Spacingy *SrcHcight)。
[0024] 其中,計(jì)算切片圖像在內(nèi)適應(yīng)瀏覽器上的顯示框時(shí)的縮放系數(shù),將切片圖像的寬 度與高度均按照該縮放系數(shù)進(jìn)行縮放處理后,使切片圖像顯示在瀏覽器的顯示框中。
[0025] 其中,瀏覽器根據(jù)返回的二維坐標(biāo)值及縮放系數(shù)進(jìn)行轉(zhuǎn)換處理后,得到起點(diǎn)坐標(biāo) 值 TransStartPoint (X,y)和終點(diǎn)坐標(biāo)值 TransEndPoint (X,y),使用 HTML5 中 canvas 屬 性在醫(yī)學(xué)影像的切片圖像上用虛線連接起點(diǎn)坐標(biāo)值TransStartPoint (X,y)和終點(diǎn)坐標(biāo)值 TransEndPoint (x,y)即畫出定位線。
[0026] 與現(xiàn)有技術(shù)相比,本發(fā)明具有如下有益效果:
[0027] 本發(fā)明結(jié)合DIC0M3. 0標(biāo)準(zhǔn)中WADO協(xié)議和DIOCM文件的數(shù)據(jù)信息,采取高效準(zhǔn)確 的服務(wù)端定位線算法和WEB客戶端的顯示算法,基于HTML5的畫布屬性最終實(shí)現(xiàn)了 CT/MR 圖像序列定位線在瀏覽器上的顯示。本發(fā)明可以在不安裝任何插件的瀏覽器上完成醫(yī)學(xué)影 像的定位線繪制,可以使醫(yī)生利用任何移動(dòng)設(shè)備隨時(shí)隨地登陸瀏覽器,通過網(wǎng)址訪問醫(yī)學(xué) 影像服務(wù)器并在瀏覽器上完成醫(yī)學(xué)影像的定位線繪制,借助定位線對(duì)病人病灶的位置進(jìn)行 準(zhǔn)確判斷,從而提高診斷的效率和精度,并為遠(yuǎn)程會(huì)診的精確診斷提供了重要輔助工具。
【附圖說明】
[0028] 圖1是本發(fā)明的系統(tǒng)結(jié)構(gòu)示意圖。
[0029] 圖2是瀏覽器與WEB醫(yī)學(xué)影像服務(wù)器之間的工作流程示意圖。
【具體實(shí)施方式】
[0030] 本發(fā)明結(jié)合 DIC0M3. 0 (Digital Imaging and Communications in Medicine)標(biāo) 準(zhǔn)中 WADO (Web Access to DICOM Persistent Object)協(xié)議和 DIOCM 文件的數(shù)據(jù)信息, 采取高效準(zhǔn)確的服務(wù)端定位線算法和客戶端的顯示算法,基于HTML5 (Hypertext Markup Language)的畫布屬性最終實(shí)現(xiàn)了 CT/MR圖像序列定位線在瀏覽器上的顯示。因此,本發(fā)明 可以在不安裝任何插件的瀏覽器上完成醫(yī)學(xué)影像的定位線繪制,可以使醫(yī)生利用任何移動(dòng) 設(shè)備隨時(shí)隨地登陸瀏覽器,通過網(wǎng)址訪問醫(yī)學(xué)影像服務(wù)器并在瀏覽器上完成醫(yī)學(xué)影像的定 位線繪制,借助定位線對(duì)病人病灶的位置進(jìn)行準(zhǔn)確判斷,從而提高診斷的效率和精度,并為 遠(yuǎn)程會(huì)診的精確診斷提供了重要輔助工具。
[0031] 為了便于理解,在描述本申請(qǐng)具體實(shí)現(xiàn)方法之前,先對(duì)本申請(qǐng)中使用到的幾個(gè)關(guān) 鍵技術(shù)進(jìn)行說明:
[0032] 1、有關(guān)DICOM文件中的數(shù)據(jù)信息。
[0033] 標(biāo)準(zhǔn)的DICOM文件由文件頭和數(shù)據(jù)信息構(gòu)成。DICOM文件頭(DICOM File Meta Information)包含了標(biāo)識(shí)數(shù)據(jù)集合的相關(guān)信息。數(shù)據(jù)信息是DICOM數(shù)據(jù)元素 Tag的組號(hào) 從0x0008開始的數(shù)據(jù)元素構(gòu)成的數(shù)據(jù)集。數(shù)據(jù)信息按內(nèi)容可分為圖像文件數(shù)據(jù)信息和非 圖像文件數(shù)據(jù)信息。圖像文件數(shù)據(jù)信息是多個(gè)信息對(duì)象的復(fù)合體,包括病人(Patient)、檢 查(Study)、系列(Series)和圖像(Image)數(shù)據(jù)等數(shù)據(jù)元素;非圖像文件數(shù)據(jù)信息由目錄 管理、病人管理、檢查管理、就診管理、結(jié)果管理等管理信息和其它信息構(gòu)成。
[0034] 本申請(qǐng)?jiān)诜?wù)端算法就用到了 DICOM文件的數(shù)據(jù)信息中的Patient Position(0018,5100)、ImageType (0008,00008)、ImagePositionPatient(0020,0032)、 IamgeOrientationPatient (0020, 0037) > PixelSpacing (0028, 0030) > Rows (0028, 0010) > Columns (0028、0011)和 Frame of Reference UID (0x20, 0x52)等屬性。
[0035] 其中圖像的TAG(0018, 5100)的值就確定了統(tǒng)一坐標(biāo)系的方向,即所有圖像序列 的各個(gè)參數(shù)都是在參考該統(tǒng)一坐標(biāo)系計(jì)算給出的(根據(jù)DIC0M3. 0的標(biāo)準(zhǔn))。
[0036] 圖像的TAG(0020,0032)的值就確定了該張影像首個(gè)像素("左上方")的坐標(biāo) X,Y,Z值。它和TAG(0020,0037)的值可以確定整幅圖像的所有點(diǎn)的空間坐標(biāo)。
[0037] 圖像的TAG(0020, 0037)的值可以確定圖像的單位行向量和單位列向量,而兩者 的外積(叉積)就是單位法向量,因此從TAG (0020, 0037)可以獲取3個(gè)單位向量。
[0038] 圖像的TAG(0028, 0030)的值可以確定圖像的每個(gè)像素代表的實(shí)際物理寬度和代 表的實(shí)際物理高度。
[0039] 圖像的TAG(0028, 0010)的值可以確定圖像的高度。
[0040] 圖像的TAG(0028, 0011)的值可以確定圖像的寬度。
[0041] 2、有關(guān)瀏覽器與Web醫(yī)學(xué)影像服務(wù)器之間的異步請(qǐng)求。
[0042] 本發(fā)明瀏覽器使用JavaScript中的Ajax技術(shù)對(duì)Web醫(yī)學(xué)影像服務(wù)器進(jìn)行異步請(qǐng) 求,它使瀏覽器繪制定位線時(shí)能夠更加自然流暢。在Ajax技術(shù)之前,Web站點(diǎn)強(qiáng)制用戶進(jìn) 入提交/等待/重新顯示范例,用戶的動(dòng)作總是與服務(wù)器的"思考時(shí)間"同步。Ajax提供與 服務(wù)器異步通信的能力,從而使用戶從請(qǐng)求/響應(yīng)的循環(huán)中解脫出來。借助于Ajax,可以在 用戶單擊按鈕時(shí),使用JavaScript和HTML5立即更新UI,并向服務(wù)器發(fā)出異步請(qǐng)求,以執(zhí)行 更新或計(jì)算。當(dāng)請(qǐng)求返回時(shí),就可以使用JavaScript和CSS來相應(yīng)地更新UI,而不是刷新 整個(gè)頁面。最重要的是,用戶甚至不知道瀏覽器正在與服務(wù)器通信:Web站點(diǎn)看起來是即時(shí) 響應(yīng)的。采用Ajax后,對(duì)于需要連續(xù)繪制定位線,與服務(wù)器不斷交互的情況,可以縮短Web 站點(diǎn)的響應(yīng)時(shí)間,提高服務(wù)的處理速度。
[0043] 3、有關(guān)瀏覽器使用HTML5中canvas屬性畫出定位線。
[0044] HTML (Hypertext Markup Language),是用于描述網(wǎng)頁文檔的一種標(biāo)記語言。而 HTML5是用于取代1999年所制定的HTML4. 01和XHTML1. 0標(biāo)準(zhǔn)的HTML