韋 健,郭校源,籍風磊,郭紹源,胡笑含,賈 勇,王世剛
1.吉林大學 通信工程學院,長春 130012
2.吉林大學 第一醫院,長春 130061
3.吉林大學 護理學院,長春 130021
在平面顯示器上,患者的骨骼呈現直觀的三維數字模型[1-2],是當下深受醫生青睞的一種醫學影像可視化方式。隨著醫療領域對病例診斷、臨床觀摩、遠程會診、術前規劃和術中導航等手段的高精度、臨場感需求日益增長,這種方式的不足也逐漸凸顯。二維視圖不便于同時展現患者解剖結構的多視角空間信息,導致畫面的立體縱深感和動態交互性較差,而對于基于雙目視差的立體顯示媒介[3-4],其觀察視點的數量較少并且需要醫生佩戴輔助設備,容易造成人眼疲勞、視野受限以及畫面分辨率和亮度降低,尤其不利于長時間骨科顯微手術。相比之下,真三維顯示技術[5-8]無須任何助視設備就能為骨骼病灶再現具有物理景深的三維光學影像,可以為醫生帶來更舒適的觀看體驗、更逼真的感官沖擊和更優質的交互性能[9]。在真三維顯示方式中,相比于對光源、周圍環境有嚴格要求且成像質量受空間光調制器性能參數制約的全息顯示[10-11],以及顯示空間受限于真空保護罩且無法顯示物體的紋理和遮擋關系的體顯示[12],集成成像技術[13-15]在工作原理和硬件設備方面都比較簡單。它不需要相干光源或苛刻環境,影像具有真實色彩和準連續視點,并且采集與顯示過程都是場景三維點間的信息對應。
當下,平面顯示的二維視圖畫面非常清晰,而集成成像技術仍然處于探索期,三維影像在視角、景深、清晰度等方面通常較難同時滿足應用需求[16-17]。所以,實現三維骨骼模型的平面視圖和裸眼立體畫面的雙屏聯動顯示,可以使上述兩種可視化技術取長補短,讓醫生能夠對疑難雜癥的病灶體數據實施動態高清的全方位立體觀測,也有利于增強現實、虛擬現實等技術在精準醫療領域中的推廣應用。達成這種聯動顯示需要考慮以下方面:(1)使用同一套虛擬相機來采集二維視圖與集成成像所需的二維合成圖,以便確保兩種顯示屏呈現的內容時刻保持一致;(2)在手術等無菌環境下,醫生不便直接觸碰鍵盤與鼠標,最好借助空中手勢交互[18]來操縱屏上畫面的尺度與視角;(3)為了使交互操控具有高流暢度,二維視圖及二維合成圖的產生都應當具有高時效性。
本文針對所提問題建立了一套面向人體三維骨骼的平面顯示和集成成像手勢交互聯動系統。該系統基于Optix以及Leap Motion[19]:前者在NVⅠDⅠA CUDA并行計算平臺下具備高效率的光線追蹤引擎,允許對費時的光線投射進程做顯著的提速,進而完成近乎同步的二維視圖與二維合成圖渲染;而后者作為一種擅長高幀率且高精度識別手勢的小尺寸體感控制器,只會占用手術室中非常小的桌面面積。本文通過有效地融合Optix和Leap Motion的優點,利用反饋手勢信息、即時更新虛擬相機參數和快速內容繪制,來完成骨骼二維視圖和裸眼三維影像的同步顯示與手勢控制(如圖1)。

圖1 二維視圖與裸眼三維影像手勢交互聯動顯示Fig.1 Gesture interaction and linkage of two-dimensional view and naked-eye three-dimensional image
Leap Motion 利用雙目立體視覺原理,對內置雙目攝像頭上方一定視野范圍(大體為一個倒四棱錐體)內的手勢進行追蹤采集和快速識別。它能夠捕捉到每一幀手勢信息,包括手臂數據(方向、長度、空間位置),手掌數據(方向、法線、空間位置)以及手指數據(指尖空間位置、手指方向、手指類型),然后根據每幀和前幀檢測到的數據來生成運動信息。Leap Motion在探測手勢期間建立一個直角坐標系,坐標系的原點是傳感器的中心,坐標系的x軸平行于傳感器并指向屏幕右方,y軸指向上方,z軸指向背離屏幕的方向。
如圖2 描繪了基于相機陣列的集成成像系統的工作原理,整個流程依次分為三個部分。

圖2 基于相機陣列的集成成像系統的工作原理Fig.2 Principle of integral imaging system based on camera array
(1)視點圖像陣列采集:利用真實(或虛擬)相機陣列為真實物體(或物體的三維數字模型)拍攝一組不同角度、相同分辨率的視點圖像,從而將物體的三維信息存儲在采集到的視點圖像陣列中。相較于平面式相機陣列,會聚式相機陣列(如圖2所示)能夠增大集成成像的立體觀看視角[20]。
(2)像素重采樣:將所有視點圖像中的像素,按照二維虛擬透鏡陣列的采樣結構和光學映射關系,逐點映射到每個透鏡元對應的圖像(稱為立體元圖像)中,從而生成一個立體元圖像陣列(即一幅光場圖像)。在水平和垂直方向上,虛擬透鏡陣列中透鏡元的數量與視點圖像的分辨率相同,透鏡元的尺寸與視點圖像的數量相同。為描述方便,本文將由全部立體元圖像陣列拼接而成的整幅圖像稱為二維合成圖。
(3)集成成像顯示:將二維合成圖全屏顯示在平面顯示載體(如LCD 或LED 顯示屏)上,其發出的光線經過一個與前述虛擬二維透鏡陣列參數相同的真實二維透鏡陣列后,在空中聚焦,最終重現出物體的裸眼三維影像。
本文開發的手勢交互聯動系統主要由處理器、平面顯示器、集成成像子系統、Leap Motion 組成,如圖3 所示。其中,平面顯示器、集成成像子系統、Leap Motion均與處理器相連。處理器中配置Optix 框架、三維重建可視化開發包VTK(visualization toolkit)以及CUDA架構。集成成像子系統主要由傾斜的柱透鏡陣列和LED顯示屏組成,其視點數量為N(N為奇數)。為了降低透鏡陣列加工的難度和成本,集成成像子系統采用一維柱透鏡陣列取代二維透鏡陣列,因此本系統的裸眼三維影像僅具有水平視差;而將柱透鏡陣列傾斜于LED 顯示屏表面的坐標軸放置可以減小莫爾條紋和色彩混淆,從而改善立體觀看效果,但是會在一定程度上導致裸眼三維畫面在豎直和水平方向上的分辨率損失[21]。從本文的多次實驗效果來看,這種分辨率損失并未對觀看者的主觀感受帶來太大影響。

圖3 手勢交互聯動系統的結構示意圖Fig.3 Components diagram of gesture interaction and linkage system
手勢交互聯動系統的功能是:輸入患者的CT 斷層掃描圖像,經過處理器中的數據處理、圖像生成等運算,在平面顯示器上和集成成像子系統的前方分別呈現出患者骨骼的二維視圖和裸眼三維影像,并且觀看者能夠通過在Leap Motion 上的手勢變化(手掌的旋轉和收放),實時、同步操控兩種畫面的視角和尺度。兩種畫面的旋轉和縮放分別是通過在處理器中旋轉虛擬相機陣列以及改變虛擬相機陣列與三維模型之間的距離來實現的。系統的主要工作流程如圖4所示,分為預處理和主處理兩個階段。虛擬相機的圖像分辨率用W×H表示,在本文中,二維視圖與二維合成圖的分辨率均為W×H。

圖4 手勢交互聯動系統的流程圖Fig.4 Flowchart of gesture interaction and linkage system
2.2.1 預處理階段
預處理階段主要負責重建人體骨骼的三維數字模型以及搭建視點圖像陣列的虛擬采集環境,具體步驟如下:
(1)將患者的一組CT斷層圖像讀至處理器中,利用VTK 中基于光線投射技術的直接體繪制方法[22]重建出人體骨骼的三維網格模型。
(2)將集成成像子系統二維合成圖的R、G、B三個通道的像素-視點對應矩陣MR、MG、MB導入處理器中。這三個矩陣(尺寸均為W×H)將用于像素重采樣過程,具體使用方法見主處理階段的步驟4。
(3)在處理器的Optix 場景中,創建一個由N臺虛擬相機組成的會聚式虛擬相機陣列Cams,其主要參數見圖5。每臺虛擬相機Cam的視角為φ,其姿態由光心位置Cam_eye、焦點方向Cam_lookat、坐標軸向上方向Cam_up三個3×1列向量共同控制,相鄰虛擬相機焦點方向的夾角為θ。此過程包括下列步驟:

圖5 虛擬相機陣列參數示意圖Fig.5 Parameters diagram of virtual camera array
(3.1)初始化中心相機Camc≡Cams( (N-1)/ 2 )的參數,令其光心位置為:
其焦點方向為:
其坐標軸向上方向為:
其中,C為三維骨骼模型外接矩形框的中心點坐標,Sm為三維骨骼模型外接矩形框長和寬之間的最大值。
(3.2)初始化其他每臺相機Cami≡Cams(i)的參數,這里,i=0,1,…,N-1,并且i≠(N-1)/2。令其光心位置為:
其焦點方向為:
其坐標軸向上方向為:
在公式(4)中,R(v,α)表示環繞向量v旋轉角度α得到的3×3旋轉矩陣。
(4)設置一臺參考虛擬相機Camr,用于計算Camc與其起始姿態的偏離量,Camr的參數與Camc的初始參數相同。
2.2.2 主處理階段
主處理階段負責在隔空手勢的交互下聯動顯示三維骨骼模型的二維視圖和裸眼三維影像,顯示每一幀畫面的具體步驟如下:
(1)如果當前幀是第一幀,則執行步驟(3);否則,執行步驟(2)。
(2)利用Leap Motion 檢測是否當前時刻發生有效的手勢交互,即手掌移動速度是否屬于預先設定的有效速度范圍[vmin,vmax]或者抓取力g(Leap Motion SDK中Hand類的grabStrength屬性,手掌全張開時值為0,緊握拳時值為1)是否不為0,如果是,則更新Cams參數后,更新二維視圖和二維合成圖,即執行步驟(3)和(4);否則,執行步驟(5)。Cams參數的更新過程包括下列步驟:
(2.1)更新中心相機Camc的參數,其光心位置更新過程如下:
其中,βx、βz分別為手掌相對于Leap Motion的坐標系統中x軸、z軸的旋轉角度;s表示交互過程對動態手勢的靈敏度,此參數值可根據觀看者的交互體驗進行設置:
這里,cross表示兩個向量之間的叉乘運算。令其坐標軸向上方向更新為:
公式(7)和(9)中分別引入βx、βz,目的是讓虛擬相機陣列圍繞C點旋轉,其旋轉方向與手掌旋轉方向相同,旋轉角度與手掌旋轉角度成正比。公式(8)中引入g,目的是改變虛擬相機陣列的拍攝距離,如果手掌收緊,則縮小拍攝距離,縮小幅度與手掌的收緊程度成正比;如果手掌放開,則增大拍攝距離,增大幅度與手掌的放開程度成正比。
(2.2)更新其他每臺相機Cami的參數,更新過程與預處理階段中的步驟(3.2)相同。
(3)利用Camc和Optix 的實時光線投射渲染器,為三維骨骼模型渲染一幅視點圖像(即二維視圖),并在平面顯示器上顯示。
(4)利用Cams和Optix的實時光線投射渲染器,為三維骨骼模型生成一幅二維合成圖,并在集成成像子系統中的LED 顯示屏上全屏顯示,其光線穿過柱透鏡陣列后形成骨骼的裸眼三維影像。二維合成圖中每個像素值的計算(即像素重采樣)過程利用CUDA 架構實現并行化以提高處理速度,包括下列步驟:
(4.1)分別獲取該像素值所屬的像素點(x,y)在R、G、B三個通道上對應的視點序號:jR=MR(x,y) ,jG=MG(x,y),jB=MB(x,y)。
(4.2)對于每個通道和對應的視點序號j,利用虛擬相機Camj和其像素點(x,y)處的光線投射,得到該通道在此點處的像素值。
(5)如果關閉二維視圖,則關閉二維合成圖,整個聯動顯示過程結束;否則,轉至下一幀,執行步驟(2)。
本文依據前述設計搭建的骨骼平面顯示與集成成像手勢交互聯動系統如圖6 所示。處理器中帶有單塊GTX 1080Ti GPU,平面顯示器(27 寸)與集成成像子系統中LED 顯示屏(206 cm×122 cm)的分辨率都為2 160×1 280,LED 屏的像素點間距為0.952 5 mm,柱透鏡陣列傾斜角為向右(arctan1/3)°,集成成像的視點數量為26(由于本文中視點數量N應為奇數,為了適用于本文的硬件系統,實驗中實際設置為N=27,而在渲染視圖時只渲染出連續的26個視點圖像),水平體素分辨率為270,最佳觀看距離約6.5 m,觀看視角約60°。

圖6 手勢交互聯動系統實物圖Fig.6 Diagram of practical gesture interaction and linkage system
如圖7 列出了7 種不同的手勢姿態,將不同姿態組合即構成本系統支持的兩種手勢動作:手掌收放(①、②、③)和手掌旋轉(②、④、⑤、⑥、⑦),這兩種手勢動作可以同時使用以產生疊加作用,例如,將姿態③按照動作②→④的方向旋轉可表示為③→(③+④),或者將姿態⑥按照動作②→①將手掌收緊可表示為⑥→(⑥+①)。

圖7 不同的手勢姿態Fig.7 Different gesture postures
如圖8給出了本系統使用一組人體雙腳CT圖像得到的足骨雙屏顯示效果;重建出的三維足骨模型如圖9所示,采用法線貼圖為二維視圖與裸眼三維影像賦色,為了觀察細節更加清晰,對比度進行了適當增強,雙屏聯動的幀率為36 幀/s。對比圖9 中二維視圖與裸眼三維影像左、右視圖的局部(黑色框內)放大區域可以看出,集成成像的立體畫面呈現出比較明顯的水平視差,并且二維、三維的顯示內容在不同的手勢姿態下始終保持同步;通過手勢交互,觀看者可以同時從尺寸較小但畫面細節清晰度更高的平面顯示器,以及大尺寸、高分辨率且具有較強立體感的集成成像子系統中觀測到不同視角、不同尺度的足骨模型。

圖8 手勢交互雙屏聯動顯示效果Fig.8 Display effects of gesture interaction and two-screen linkage

圖9 三維足骨模型Fig.9 3D model of foot bones
3.3.1 實驗設計
為了進一步驗證本系統的可用性、易用性和主觀體驗感,選取40名大學生、研究生和高校教師志愿者以及20 名臨床醫生進行了應用實驗,測試者年齡范圍為21歲到61歲。臨床醫生來自關節外科、創傷骨科、足踝外科等科室,并且都具有多年的骨科臨床診療經驗。在所有測試者中,19 人對裸眼三維顯示或裸手手勢交互沒有任何的體驗經歷,其余測試者對集成成像或Leap Motion 具有不同程度的了解和使用經驗。在實驗前,對測試者們進行了相關知識和使用技能的簡單培訓,以避免對這兩種技術的陌生感降低最終實驗結果的可靠性。
除了3.2 節中使用的三維足骨模型,實驗還使用了圖10(a)所示的由另外兩組CT 圖像三維重建得到的骨盆和腰椎模型,兩個模型的集成成像立體顯示效果如圖10(b)和圖10(c)所示,裸眼三維影像的著色方式為法線貼圖。三個骨骼模型呈現出不同的幾何特點,其中,骨盆模型整體寬闊,足骨模型由多個細長結構組成,而腰椎模型由于腰椎分割不夠精確使得其周圍還存在一些血管和其他組織器官。

圖10 三維骨盆和腰椎模型以及集成成像效果Fig.10 3D pelvic and lumbar models and integrated imaging effects
本文在實驗中提供了傳統的鍵盤交互系統和鼠標交互系統各一套,用作手勢交互聯動性能評估的參考系統,兩套系統分別使用鍵盤和鼠標代替Leap Motion,其余的軟硬件運行環境與手勢交互系統相同。在鍵盤交互系統中,利用鍵盤上的上、下、左、右四個方向鍵分別控制雙顯示畫面向對應方向旋轉,利用Ⅰ、O兩個按鍵分別操控雙顯示畫面的放大、縮小。在鼠標交互系統中,通過按住鼠標左鍵并且拖拽鼠標來旋轉雙顯示畫面,通過按住鼠標右鍵同時水平向上或向下移動鼠標來放大或縮小雙顯示畫面。
本文共設計了兩個實驗,每名測試者分別對每個三維骨骼模型進行兩次實驗,在完成所有實驗后填寫表1所示的調查問卷。

表1 調查問卷內容Table 1 Content of questionnaire
考慮到測試期間交互操作準確性判斷標準的統一性,全部實驗采用同一位評判人員。此外,為了保證不同交互系統之間對比的公平性,評判人員在實驗前經過多次測試,將鍵盤交互與鼠標交互的靈敏度均調節至與手勢交互的靈敏度達到其主觀上基本一致。
實驗1通過使用上述三套交互系統以及觀測“二維+裸眼三維”混合畫面,按照圖11所示的示例順序,將雙顯示畫面中的三維模型操控至對應的視角和相對尺度(相對于所屬屏幕),然后記錄在每種交互方式下各個被試操作的平均準確率與平均時長。交互操作準確的認定標準為評判人員主觀上認為所顯示內容無明顯抖動,并且其視角和相對尺度都與圖11 中對應的參考示例無顯著區別。

圖11 實驗1的操作流程(以三維骨盆模型為例)Fig.11 Operation procedure of experiment 1(taking 3D pelvis model as example)
實驗2在評判人員的監督下,通過使用手勢交互系統,并且分別以只觀測二維顯示畫面、只觀測裸眼三維顯示畫面、同時觀測“二維+裸眼三維”混合畫面的方式,在5分鐘內按照隨機順序準確完成對所顯示內容的90°旋轉(向上、下、左、右四個方向)、50%縮小、200%放大操作,然后分別記錄在每種觀測方式下對各個三維模型完成所有操作的平均時長。
3.3.2 實驗結果
根據實驗1的結果,三種交互方式下對雙顯示畫面執行不同操作的平均準確率和平均時長對比,分別如圖12和圖13所示。通過觀察圖12可以發現,鍵盤交互的準確率最高,主要原因在于測試者通過按鍵可以對顯示內容的視角和尺度進行穩定的微調,而手持鼠標和空中手勢都難免發生無意識的手部抖動;手勢交互能夠達到與鼠標交互相當的準確度,在模型尺度較大的情況下(如操作2、3、6、7)其操控準確性更高,因為此時裸眼三維影像的細節辨識度更高。由圖13可見,手勢交互的速度最快,尤其是當顯示內容改變幅度較大時(如操作3和7);而鍵盤交互和鼠標交互由于都需要依靠物理設備來實現,故交互時長有所增加;操作2、4、6、8 的耗時普遍較少,歸結于這些操作只是調整了顯示內容的尺度,相較于其他操作對視角的變化來說,更加容易正確完成。

圖12 每種交互方式下不同操作的平均準確率Fig.12 Average accuracy of different operations in each interaction mode

圖13 每種交互方式下不同操作的平均時長Fig.13 Average duration of different operations in each interaction mode
實驗2的數據分析情況如圖14所示。結果表明,二維顯示的畫面清晰度最高,因而手勢交互的平均耗時最短;集成成像的畫面立體感更強,但是其畫質難與二維畫面媲美,導致精準的手勢交互用時最長;相比之下,“二維畫面+裸眼三維畫面“的混合顯示方式結合了二者的優點,在實現對骨骼進行高清平面觀測和裸眼立體觀測的同時,其時效性介于兩種單一畫面觀測方式之間,取得了觀測體驗與交互性能之間的較好平衡;顯示內容的復雜度也對手勢交互有著微弱的影響,骨盆模型的結構最簡單,因此交互最快,而腰椎模型被其他人體組織頻繁遮擋,故交互相對較慢。

圖14 每種觀測方式下對不同模型的手勢交互平均時長Fig.14 Average duration of gesture interaction for different models in each observation mode
調查問卷的結果統計如圖15 所示。從問題1 和2的回答情況得知,大多數測試者對本系統的手勢識別設計比較符合期待;從問題3 的回答情況來看,本系統給93%的測試者帶來了比較舒適的觀看體驗,只有個別測試者因為不習慣裸眼三維成像方式而稍感不適;根據問題4和5的調查結果,大部分測試者對本系統的“二維+裸眼三維”混合顯示方案以及雙屏的聯動性都比較滿意;根據問題6 的調查,只有不到三分之一的測試者認為本系統對骨科診療與手術的作用不大,而在參與實驗的臨床醫生中給出肯定答案的人占到了85%,達到了本系統服務于醫療領域的預設期望。

圖15 調查結果統計(Q6-d表示臨床醫生的調查結果)Fig.15 Statistics of survey results(Q6-d represents results from clinicians)
本文提出一種人體骨骼二維視圖與集成成像裸眼三維影像雙屏聯動系統,實現了手勢控制下對多視角、多尺度骨骼空間信息的交互觀看。該系統能夠推動當前的三維骨骼觀測手段從鼠鍵操控的“偽立體”向隔空操控的“真三維”轉變,顯著提升高難度診療與手術的效率和可靠性。本文仍有一定的局限性,只依靠虛擬相機陣列位姿更新的方法很難進一步考慮語義信息,例如將股骨繞著髖臼旋轉(可用于全髖關節置換的術前三維規劃系統[23]),下一步將在這個方面繼續探索。在未來的工作中,還將嘗試結合基于Kinect的遠距離肢體運動操控[24],來彌補Leap Motion 只能探測近距離手勢變化的不足。