本發(fā)明主要涉及醫(yī)學(xué)影像數(shù)據(jù)處理,尤其涉及一種醫(yī)學(xué)影像的渲染方法和系統(tǒng)。
背景技術(shù):
:隨著醫(yī)學(xué)影像技術(shù)和計(jì)算機(jī)技術(shù)的發(fā)展,X光成像、計(jì)算機(jī)斷層掃描(CT)、磁共振成像(MR)、超聲成像(US)和正子發(fā)射斷層掃描(PET)等成像技術(shù)和設(shè)備在醫(yī)療機(jī)構(gòu)的臨床和研發(fā)工作中發(fā)揮著相當(dāng)重要的作用。這些醫(yī)學(xué)影像設(shè)備所產(chǎn)生的醫(yī)學(xué)影像數(shù)據(jù)通常儲(chǔ)存在諸如影像歸檔和通信系統(tǒng)(Picturearchivingandcommunicationsystem,PACS)這樣的存儲(chǔ)系統(tǒng)中。當(dāng)使用者需要時(shí),可以向存儲(chǔ)系統(tǒng)的服務(wù)器請(qǐng)求查詢和調(diào)閱。由于醫(yī)學(xué)影像,尤其是三維醫(yī)學(xué)影像數(shù)據(jù)量大,其渲染需要高性能顯卡且占用大量顯存,因此難以在普通配置的安裝有客戶端的客戶機(jī),例如普通辦公計(jì)算機(jī)、平板計(jì)算機(jī)或智能手機(jī)上的瀏覽器進(jìn)行。傳統(tǒng)的基于Web的三維醫(yī)學(xué)影像的可視化渲染均放在高配置的服務(wù)器端進(jìn)行。在這種情況下,用戶幾乎所有的顯示相關(guān)操作均需通過服務(wù)器來進(jìn)行渲染。例如在用戶進(jìn)行一系列連續(xù)操作(如體渲染圖像旋轉(zhuǎn)、縮放、平移,MPR調(diào)窗等)時(shí),需要連續(xù)多次發(fā)出渲染請(qǐng)求,并在服務(wù)器返回渲染結(jié)果時(shí)更新圖像。對(duì)于服務(wù)器和網(wǎng)絡(luò)側(cè)的極端依賴會(huì)造成渲染結(jié)果的不穩(wěn)定。舉例來說,如果由于服務(wù)器負(fù)載、網(wǎng)絡(luò)等原因造成渲染結(jié)果返回不及時(shí),用戶就會(huì)感覺到明顯卡頓,影響查看體驗(yàn)。另一方面,現(xiàn)有的存儲(chǔ)系統(tǒng)在數(shù)據(jù)量達(dá)到一定規(guī)模后,訪問效率會(huì)大大降低,過度依賴服務(wù)器的方式也加重了服務(wù)器的負(fù)擔(dān)。技術(shù)實(shí)現(xiàn)要素:本發(fā)明要解決的技術(shù)問題是提供一種醫(yī)學(xué)影像的渲染方法和系統(tǒng),可以降低對(duì)醫(yī)學(xué)影像數(shù)據(jù)的服務(wù)器和網(wǎng)絡(luò)的需求。為解決上述技術(shù)問題,本發(fā)明提供了一種醫(yī)學(xué)影像的渲染方法,包括以下步驟:從客戶機(jī)向服務(wù)器發(fā)起加載醫(yī)學(xué)影像請(qǐng)求;在該服務(wù)器加載醫(yī)學(xué)影像數(shù)據(jù),并進(jìn)行第一級(jí)渲染操作以產(chǎn)生第一渲染結(jié)果;從該服務(wù)器將第一渲染結(jié)果發(fā)送給該客戶機(jī);在該客戶機(jī)呈現(xiàn)該第一渲染結(jié)果;在該服務(wù)器將該醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行預(yù)處理;在該服務(wù)器將該預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)發(fā)送給該客戶機(jī);在該客戶機(jī)接收該預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù),準(zhǔn)備用于渲染;在該客戶機(jī)響應(yīng)于用戶的連續(xù)操作,使用該預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行第二級(jí)渲染操作,產(chǎn)生第二渲染結(jié)果,該第二渲染結(jié)果的精度低于該第一渲染結(jié)果;以及在該連續(xù)操作期間在該客戶機(jī)呈現(xiàn)該連續(xù)操作的第二渲染結(jié)果。可選地,在該客戶機(jī)的瀏覽器執(zhí)行該第二級(jí)渲染操作??蛇x地,在該客戶機(jī)以WebGL技術(shù)執(zhí)行該第二級(jí)渲染操作??蛇x地,該連續(xù)操作包含但不限于旋轉(zhuǎn)、縮放、平移、調(diào)窗等造成顯示圖像連續(xù)變化的操作中的至少一個(gè)。可選地,該預(yù)處理包括降采樣和壓縮??蛇x地,在該連續(xù)操作期間在該客戶機(jī)呈現(xiàn)該第二渲染結(jié)果后還包括:在該客戶機(jī)檢測(cè)該連續(xù)操作結(jié)束;從該客戶機(jī)向該服務(wù)器發(fā)起渲染請(qǐng)求;在該服務(wù)器進(jìn)行該第一級(jí)渲染操作以產(chǎn)生第三渲染結(jié)果;從該服務(wù)器將第三渲染結(jié)果發(fā)送給該客戶機(jī);在該客戶機(jī)顯示該第三渲染結(jié)果。可選地,上述的醫(yī)學(xué)影像的渲染方法還包括在該服務(wù)器和該客戶機(jī)中維護(hù)渲染所需的參數(shù)狀態(tài),且在該服務(wù)器和該客戶機(jī)之間傳輸該參數(shù)狀態(tài)。可選地,該醫(yī)學(xué)影像是三維醫(yī)學(xué)影像,所采用渲染方式為體渲染。本發(fā)明還提出一種醫(yī)學(xué)影像的渲染方法,是在一客戶機(jī)執(zhí)行且包括以下步驟:向服務(wù)器發(fā)起加載醫(yī)學(xué)影像請(qǐng)求;接收從該服務(wù)器發(fā)送的第一渲染結(jié)果,該第一渲染結(jié)果是使用醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行第一級(jí)渲染操作而產(chǎn)生;呈現(xiàn)該第一渲染結(jié)果;接收從該服務(wù)器發(fā)送的預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù);響應(yīng)于用戶的連續(xù)操作,對(duì)該預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行第二級(jí)渲染操作而產(chǎn)生該連續(xù)操作的第二渲染結(jié)果,該第二渲染結(jié)果的精度低于該第一渲染結(jié)果;以及在該連續(xù)操作期間呈現(xiàn)該第二渲染結(jié)果??蛇x地,在該客戶機(jī)的瀏覽器執(zhí)行該第二級(jí)渲染操作。可選地,在該客戶機(jī)以WebGL技術(shù)執(zhí)行該第二級(jí)渲染操作。可選地,該連續(xù)操作包括旋轉(zhuǎn)、縮放、平移和調(diào)窗中的至少一個(gè)。可選地,在該連續(xù)操作期間呈現(xiàn)該第二渲染結(jié)果后還包括:檢測(cè)該連續(xù)操作的結(jié)束;向該服務(wù)器發(fā)起渲染請(qǐng)求;接收從該服務(wù)器發(fā)送的第三渲染結(jié)果,該第三渲染結(jié)果是進(jìn)行該第一級(jí)渲染操作而產(chǎn)生??蛇x地,上述的醫(yī)學(xué)影像的渲染方法還包括從該服務(wù)器接收渲染所需的參數(shù)狀態(tài),且在連續(xù)操作結(jié)束后,向該服務(wù)器發(fā)送連續(xù)操作后的當(dāng)前參數(shù)狀態(tài)。本發(fā)明還提出一種醫(yī)學(xué)影像的渲染方法,是在一服務(wù)器執(zhí)行且包括以下步驟:接收客戶機(jī)的加載醫(yī)學(xué)影像請(qǐng)求;加載該醫(yī)學(xué)影像數(shù)據(jù),并進(jìn)行第一級(jí)渲染操作以產(chǎn)生第一渲染結(jié)果;將該第一渲染結(jié)果發(fā)送給該客戶機(jī);以及將該醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行預(yù)處理;將該預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)發(fā)送給該客戶機(jī)。本發(fā)明還提出一種醫(yī)學(xué)影像的渲染系統(tǒng),包括客戶機(jī)和服務(wù)器,其中該客戶機(jī)配置為:向該服務(wù)器發(fā)起加載醫(yī)學(xué)影像請(qǐng)求;接收從該服務(wù)器發(fā)送的第一渲染結(jié)果,該第一渲染結(jié)果是使用醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行第一級(jí)渲染操作而產(chǎn)生;呈現(xiàn)該第一渲染結(jié)果;接收從該服務(wù)器發(fā)送預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù);響應(yīng)于用戶的連續(xù)操作,使用該預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行第二級(jí)渲染操作而產(chǎn)生第二渲染結(jié)果,該第二渲染結(jié)果的精度低于該第一渲染結(jié)果;以及在該連續(xù)操作期間在呈現(xiàn)該第二渲染結(jié)果;該服務(wù)器配置為:接收該客戶機(jī)的該加載醫(yī)學(xué)影像請(qǐng)求;加載該醫(yī)學(xué)影像數(shù)據(jù),并進(jìn)行第一級(jí)渲染操作以產(chǎn)生第一渲染結(jié)果;將該醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行預(yù)處理,產(chǎn)生該預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù);將該預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)發(fā)送給該客戶機(jī)??蛇x地,該客戶機(jī)配置有支持WebGL的瀏覽器。與現(xiàn)有技術(shù)相比,本發(fā)明通過采用客戶機(jī)和服務(wù)器雙引擎來渲染醫(yī)學(xué)影像數(shù)據(jù),在進(jìn)行一系列連續(xù)操作時(shí),中間過程則只在客戶機(jī)引擎渲染。因此本發(fā)明能夠有效利用客戶機(jī)硬件資源,大大增加服務(wù)器支持的用戶數(shù),減小使用過程中受網(wǎng)絡(luò)及服務(wù)器負(fù)載的影響。附圖說明圖1是本發(fā)明一實(shí)施例的醫(yī)學(xué)影像的渲染系統(tǒng)架構(gòu)。圖2是本發(fā)明一實(shí)施例的醫(yī)學(xué)影像的渲染方法流程圖。圖3是本發(fā)明一實(shí)施例的醫(yī)學(xué)影像的渲染方法在服務(wù)器端的流程圖。圖4是本發(fā)明一實(shí)施例的醫(yī)學(xué)影像的渲染方法在客戶機(jī)的流程圖。具體實(shí)施方式為讓本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能更明顯易懂,以下結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式作詳細(xì)說明。在下面的描述中闡述了很多具體細(xì)節(jié)以便于充分理解本發(fā)明,但是本發(fā)明還可以采用其它不同于在此描述的其它方式來實(shí)施,因此本發(fā)明不受下面公開的具體實(shí)施例的限制。本發(fā)明的實(shí)施例描述醫(yī)學(xué)影像的渲染方法和系統(tǒng),能夠減小使用過程中受網(wǎng)絡(luò)及服務(wù)器負(fù)載的影響,在有限帶寬、有限服務(wù)器資源的條件下也能取得流暢的用戶體驗(yàn)。圖1是本發(fā)明一實(shí)施例的醫(yī)學(xué)影像的渲染系統(tǒng)架構(gòu)。參考圖1所示,醫(yī)學(xué)影像的渲染系統(tǒng)包括服務(wù)器10和客戶機(jī)20。在此,服務(wù)器10可以是單個(gè)服務(wù)器或者是服務(wù)器陣列或服務(wù)器場(chǎng)。服務(wù)器10可以是由處理器、硬盤、內(nèi)存等部件組成的設(shè)備,也可以是影像歸檔和通信系統(tǒng)(Picturearchivingandcommunicationsystem,PACS)這樣的存儲(chǔ)系統(tǒng)的一部分,還可以是云平臺(tái)中的渲染服務(wù)器主機(jī)。服務(wù)器10中儲(chǔ)存醫(yī)學(xué)影像數(shù)據(jù)。例如,X射線攝影數(shù)據(jù)、CT影像數(shù)據(jù)、MR影像數(shù)據(jù)、超聲成像數(shù)據(jù)和PET影像數(shù)據(jù)。醫(yī)學(xué)影像數(shù)據(jù)可以是二維影像數(shù)據(jù)或者是三維影像數(shù)據(jù)??蛻魴C(jī)20例如是臺(tái)式計(jì)算機(jī)、筆記本計(jì)算機(jī)、平板計(jì)算機(jī)、智能手機(jī)、云電腦或者類似的能夠訪問服務(wù)器的計(jì)算設(shè)備。服務(wù)器10和客戶機(jī)20通?;贐/S架構(gòu)。在客戶機(jī)20提供瀏覽器軟件,作為用戶進(jìn)行操作和察看的交互界面。在本實(shí)施例的系統(tǒng)中,在客戶機(jī)和服務(wù)器使用雙引擎來渲染數(shù)據(jù)。如圖1所示,服務(wù)器10中可配置服務(wù)器引擎11和輸入輸出組件12。服務(wù)器引擎11負(fù)責(zé)進(jìn)行渲染,輸入輸出組件12負(fù)責(zé)數(shù)據(jù)的輸入和輸出。客戶機(jī)20中可配置用戶界面21和客戶機(jī)引擎22。用戶界面21負(fù)責(zé)與用戶交互。客戶機(jī)引擎22負(fù)責(zé)進(jìn)行渲染。下面分別展開描述。圖2是本發(fā)明一實(shí)施例的醫(yī)學(xué)影像的渲染方法流程圖。參考圖1和圖2所示,本實(shí)施例的醫(yī)學(xué)影像的渲染方法包括以下步驟:在步驟101,從客戶機(jī)20向服務(wù)器10發(fā)起加載醫(yī)學(xué)影像請(qǐng)求。例如,用戶在客戶機(jī)20的瀏覽器請(qǐng)求加載醫(yī)學(xué)影像,此時(shí)用戶界面21向服務(wù)器10的服務(wù)器引擎11請(qǐng)求加載醫(yī)學(xué)影像。在步驟102,在服務(wù)器10加載醫(yī)學(xué)影像數(shù)據(jù),并進(jìn)行第一級(jí)渲染操作以產(chǎn)生第一渲染結(jié)果。例如,服務(wù)器10的服務(wù)器引擎11從輸入輸出組件12加載醫(yī)學(xué)影像數(shù)據(jù),并進(jìn)行第一級(jí)渲染操作,產(chǎn)生第一渲染結(jié)果。由于服務(wù)器10的高配置及可高速獲取存儲(chǔ)于局域網(wǎng)內(nèi)的體數(shù)據(jù)信息,第一級(jí)渲染操作可以產(chǎn)生高精度的第一渲染結(jié)果。在步驟103,從服務(wù)器10將第一渲染結(jié)果發(fā)送給客戶機(jī)20。例如服務(wù)器10的服務(wù)器引擎11將第一渲染結(jié)果發(fā)送給客戶機(jī)20的用戶界面21。在步驟104,在客戶機(jī)10呈現(xiàn)第一渲染結(jié)果。例如客戶機(jī)10的用戶界面21獲得第一渲染結(jié)果后,向用戶呈現(xiàn)渲染結(jié)果。此時(shí),用戶看到的是高質(zhì)量的渲染結(jié)果,即高分辨率的渲染圖像。在步驟105,在服務(wù)器10對(duì)醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行預(yù)處理。在此,預(yù)處理可包括降采樣和壓縮。在步驟106,從服務(wù)器10將預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)發(fā)送給客戶機(jī)20。例如服務(wù)器10的輸入輸出組件12將未經(jīng)渲染的預(yù)處理醫(yī)學(xué)影像數(shù)據(jù)傳輸給客戶機(jī)20的客戶機(jī)引擎22。在此,步驟105-步驟106中,服務(wù)器向客戶機(jī)傳輸預(yù)處后的醫(yī)學(xué)影像數(shù)據(jù),與步驟102-103是相互獨(dú)立,可以如本實(shí)施例中附圖2所示流程順序進(jìn)行,也可以與步驟102-103不同步進(jìn)行,本發(fā)明對(duì)此不作具體限定。在步驟107,在客戶機(jī)20接收預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù),準(zhǔn)備用于渲染。在此,如果預(yù)處理是降采樣和壓縮,則在收到降采樣、壓縮的醫(yī)學(xué)影像數(shù)據(jù)后先檢測(cè)是否有壓縮,如有則將其解壓,得到降采樣后的體數(shù)據(jù),準(zhǔn)備用于渲染。在步驟108,在客戶機(jī)20響應(yīng)于用戶的連續(xù)操作,使用預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行第二級(jí)渲染操作,產(chǎn)生第二渲染結(jié)果。例如客戶機(jī)20的用戶界面21接收到用戶的連續(xù)操作時(shí),請(qǐng)求客戶機(jī)引擎22使用預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行第二級(jí)渲染操作,產(chǎn)生第二渲染結(jié)果。相比服務(wù)器10,由于客戶機(jī)20配置較低,且使用的數(shù)據(jù)為降采樣、有損壓縮后的數(shù)據(jù),因此第二級(jí)渲染操作獲取精度較低的渲染結(jié)果,只能產(chǎn)生圖像質(zhì)量較低的第二渲染結(jié)果。舉例來說,在客戶機(jī)20可以WebGL技術(shù)執(zhí)行第二渲染操作。WebGL技術(shù)是瀏覽器支持的技術(shù),因此可以方便地使用客戶機(jī)20的瀏覽器執(zhí)行這一操作。在步驟109,在連續(xù)操作期間在客戶機(jī)20呈現(xiàn)第二渲染結(jié)果。也就是說,在用戶連續(xù)操作中某一步操作結(jié)束后,客戶機(jī)顯示對(duì)應(yīng)該操作的第二渲染結(jié)果。因連續(xù)操作中連續(xù)返回第二渲染結(jié)果,造成顯示圖像的連續(xù)變化,所以用戶在連續(xù)操作過程中,可以認(rèn)為同步于第二級(jí)渲染操作在客戶機(jī)同步該連續(xù)操作顯示本地渲染的低質(zhì)量的第二渲染結(jié)果,即相對(duì)第一渲染結(jié)果,分辨率較低的渲染圖像。在本實(shí)施例中,連續(xù)操作可包括體渲染圖像旋轉(zhuǎn)、縮放、平移、多平面重建(MPR)調(diào)窗或其他需要服務(wù)器隨用戶操作(如移動(dòng)鼠標(biāo))連續(xù)返回渲染結(jié)果的操作中的至少一個(gè)。在連續(xù)操作中,用戶對(duì)于畫面連續(xù)性的需求比畫面質(zhì)量的要求更高,因此通過本地渲染能夠兼顧用戶對(duì)于畫面質(zhì)量和連續(xù)性的需求。在步驟110,在客戶機(jī)20檢測(cè)該連續(xù)操作結(jié)束。例如,客戶機(jī)20可以檢測(cè)用戶的旋轉(zhuǎn)、縮放、平移等連續(xù)操作是否結(jié)束,并通知服務(wù)器10進(jìn)行高精度渲染。舉例來說,當(dāng)使用個(gè)人計(jì)算機(jī)時(shí),根據(jù)用戶的設(shè)置可以以鼠標(biāo)左中右鍵點(diǎn)擊作為連續(xù)操作(平移、旋轉(zhuǎn)、縮放、調(diào)窗)開始條件,拖動(dòng)鼠標(biāo)過程中連續(xù)改變視圖矩陣,鼠標(biāo)彈起時(shí)終止該連續(xù)操作,或也可以在鼠標(biāo)靜止時(shí)間過長(zhǎng)時(shí)終止連續(xù)操作,并在鼠標(biāo)再次拖動(dòng)時(shí)進(jìn)入連續(xù)操作狀態(tài)。當(dāng)使用平板計(jì)算機(jī)、智能手機(jī)時(shí),可以是手指的觸摸、滑動(dòng)、靜止、雙指旋轉(zhuǎn)、雙指縮放等操作來作為連續(xù)操作起始、終止的判斷條件。在步驟111,從客戶機(jī)20向服務(wù)器10發(fā)起渲染請(qǐng)求。在步驟112,在服務(wù)器10進(jìn)行第一級(jí)渲染操作以產(chǎn)生第三渲染結(jié)果。在此步驟中,服務(wù)器10的服務(wù)器引擎11進(jìn)行第一級(jí)渲染操作,產(chǎn)生第三渲染結(jié)果。由于連續(xù)操作已經(jīng)改變了部分渲染參數(shù),因此第三渲染結(jié)果不同于第一渲染結(jié)果。在步驟113,從服務(wù)器10將第三渲染結(jié)果發(fā)送給客戶機(jī)20。在此,由于第三渲染結(jié)果仍然是高質(zhì)量的渲染結(jié)果。因此當(dāng)連續(xù)操作結(jié)束后,客戶機(jī)20可以呈現(xiàn)高質(zhì)量的結(jié)果。為了實(shí)現(xiàn)服務(wù)器10和客戶機(jī)20之間的狀態(tài)同步,在服務(wù)器10和客戶機(jī)20中均保存有渲染醫(yī)學(xué)影像數(shù)據(jù)所需的參數(shù)狀態(tài),該參數(shù)狀態(tài)以約定的協(xié)議在服務(wù)器10和客戶機(jī)20之間進(jìn)行傳輸。在WebGL中對(duì)于平移、旋轉(zhuǎn)、縮放信息等參數(shù)狀態(tài)是以復(fù)合轉(zhuǎn)換矩陣的形式存儲(chǔ)。該復(fù)合轉(zhuǎn)換矩陣用于初始視圖矩陣、初始比例尺可以唯一確定新的視圖矩陣及比例尺,其形式如下:m00m10m20m30m01m11m21m31m02m12m22m32m03m13m23m33]]>對(duì)于平行投影,m03,m13,m23均為0,m33一般為1。對(duì)應(yīng)的平移矢量為(m30,m31,m32),對(duì)應(yīng)的x、y、z的縮放系數(shù)分別為:Zoomx=(m002+m012+m022)]]>Zoomy=(m102+m112+m122)]]>Zoomz=(m202+m212+m222)]]>對(duì)應(yīng)的旋轉(zhuǎn)矩陣則為:m00Zoomxm10Zoomym20Zoomz0m01Zoomxm11Zoomym21Zoomz0m02Zoomxm12Zoomym22Zoomz00001]]>平移、旋轉(zhuǎn)、縮放的同步流程如下:首先,服務(wù)器10響應(yīng)用戶加載醫(yī)學(xué)影像請(qǐng)求,并在步驟106中同時(shí)將比例尺、初始視圖矩陣、初始比例尺、復(fù)合轉(zhuǎn)換矩陣、相機(jī)擺位信息、窗寬窗位信息、顏色查找表LUT、層厚信息等信息返回給客戶機(jī)20。其次,用戶在客戶機(jī)20本地進(jìn)行平移、旋轉(zhuǎn)、縮放等連續(xù)變化操作,操作過程中可能會(huì)改變本地的視圖矩陣、比例尺。此過程中無需與服務(wù)器10進(jìn)行狀態(tài)同步。在連續(xù)操作結(jié)束后,客戶機(jī)20將經(jīng)過連續(xù)操作后改變的參數(shù)傳至服務(wù)器10,例如平移、旋轉(zhuǎn)、縮放后會(huì)根據(jù)當(dāng)前視圖矩陣、比例尺計(jì)算新的復(fù)合轉(zhuǎn)換矩陣,并將該復(fù)合轉(zhuǎn)換矩陣傳至服務(wù)器10。服務(wù)器10收到復(fù)合轉(zhuǎn)換矩陣后,更新服務(wù)器端醫(yī)學(xué)影像數(shù)據(jù)的參數(shù)信息,如視圖矩陣、比例尺等信息,即實(shí)現(xiàn)了與客戶機(jī)的狀態(tài)同步。對(duì)于調(diào)窗來說,其使用的參數(shù)為窗寬、窗位,具體流程與上述流程類似。圖3是本發(fā)明一實(shí)施例的醫(yī)學(xué)影像的渲染方法在服務(wù)器端的流程圖。參考圖3,從服務(wù)器端角度看,本實(shí)施例的醫(yī)學(xué)影像的渲染方法包括如下步驟:在步驟301,接收客戶機(jī)20的加載醫(yī)學(xué)影像請(qǐng)求;在步驟302,加載醫(yī)學(xué)影像數(shù)據(jù),并進(jìn)行第一級(jí)渲染操作以產(chǎn)生第一渲染結(jié)果;在步驟303,將該第一渲染結(jié)果發(fā)送給客戶機(jī)20;在步驟304,將醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行預(yù)處理,產(chǎn)生預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù);在步驟305,將預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)發(fā)送給客戶機(jī)20;在步驟306,接收客戶機(jī)20的渲染請(qǐng)求;在步驟307,進(jìn)行第一級(jí)渲染操作以產(chǎn)生第三渲染結(jié)果;在步驟308,將第三渲染結(jié)果發(fā)送給客戶機(jī)20。圖4是本發(fā)明一實(shí)施例的醫(yī)學(xué)影像的渲染方法在客戶機(jī)的流程圖。參考圖4,從客戶機(jī)角度看,本實(shí)施例的醫(yī)學(xué)影像的渲染方法包括如下步驟:在步驟401,向服務(wù)器10發(fā)起加載醫(yī)學(xué)影像請(qǐng)求;在步驟402,接收從服務(wù)器10發(fā)送的第一渲染結(jié)果,第一渲染結(jié)果是使用醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行第一級(jí)渲染操作而產(chǎn)生;在步驟403,呈現(xiàn)第一渲染結(jié)果;在步驟404,接收從服務(wù)器10發(fā)送的預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù);在此,客戶機(jī)檢查是否有壓縮,如有壓縮則將其解壓得到降采樣的體數(shù)據(jù)在收到降采樣、壓縮的醫(yī)學(xué)影像數(shù)據(jù)后檢測(cè)是否有壓縮,如有則將其解壓,得到降采樣后的體數(shù)據(jù),準(zhǔn)備用于渲染。在步驟405,響應(yīng)于用戶的連續(xù)操作,使用預(yù)處理后的醫(yī)學(xué)影像數(shù)據(jù)進(jìn)行第二級(jí)渲染操作而產(chǎn)生第二渲染結(jié)果,該第二渲染結(jié)果的精度低于該第一渲染結(jié)果;以及在步驟406,在連續(xù)操作期間在呈現(xiàn)第二渲染結(jié)果;在步驟407,檢測(cè)連續(xù)操作結(jié)束;在步驟408,向服務(wù)器10發(fā)起渲染請(qǐng)求;在步驟409,接收服務(wù)器10發(fā)送的第三渲染結(jié)果。本發(fā)明上述實(shí)施例的醫(yī)學(xué)影像的渲染方法和系統(tǒng),通過采用客戶機(jī)和服務(wù)器雙引擎來渲染醫(yī)學(xué)影像數(shù)據(jù),在進(jìn)行一系列連續(xù)操作時(shí),中間渲染過程在客戶機(jī)引擎進(jìn)行,該級(jí)渲染質(zhì)量低于服務(wù)器引擎端的渲染,而操作完成時(shí)用服務(wù)器引擎進(jìn)行高質(zhì)量渲染。因此本發(fā)明能夠有效利用客戶機(jī)硬件資源,大大增加服務(wù)器支持的用戶數(shù),減小使用過程中受網(wǎng)絡(luò)及服務(wù)器負(fù)載的影響,在有限帶寬、有限服務(wù)器資源的條件下也能取得流暢的用戶體驗(yàn)。雖然本發(fā)明已參照當(dāng)前的具體實(shí)施例來描述,但是本
技術(shù)領(lǐng)域:
中的普通技術(shù)人員應(yīng)當(dāng)認(rèn)識(shí)到,以上的實(shí)施例僅是用來說明本發(fā)明,在沒有脫離本發(fā)明精神的情況下還可作出各種等效的變化或替換,因此,只要在本發(fā)明的實(shí)質(zhì)精神范圍內(nèi)對(duì)上述實(shí)施例的變化、變型都將落在本申請(qǐng)的權(quán)利要求書的范圍內(nèi)。當(dāng)前第1頁1 2 3