劉 橋,李 晗,何凌杰
(長沙理工大學電氣與信息工程學院,湖南長沙 410114)
柔式內(nèi)窺鏡是一種微創(chuàng)性的醫(yī)學手段,用于檢測人體內(nèi)腔,如圖1所示。普遍的醫(yī)學手段有胃鏡、食道檢測以及結(jié)腸道鏡等。在傳統(tǒng)的腸道內(nèi)窺鏡[1]檢查中,醫(yī)生注視著一個監(jiān)控器,其上顯示著由腸道內(nèi)窺鏡頭部的圖像傳感器得到的實時圖像。當醫(yī)生把腸道內(nèi)窺鏡推入腸道時,會通過轉(zhuǎn)動腸道內(nèi)窺鏡末端的手術(shù)控制手柄,來調(diào)整角度使內(nèi)窺鏡的頭部對準腸道的腔道,只有內(nèi)窺鏡的前端正對腔道時,內(nèi)窺鏡才能順利地進入腸道。這是一種被動的方式,帶有一定柔性的裝置在腔道組織上滑行時,對腔道壁面產(chǎn)生壓力,有可能對人體內(nèi)部軟組織造成擦傷和拉傷,一旦這個壓力超過一定閾值時,還可能造成組織破損。同時人體腔道的結(jié)構(gòu)比較復雜,存在多處彎道,僅憑手感把內(nèi)窺鏡順利插入到深處并非易事。
圖1 柔式內(nèi)窺鏡工作原理圖
因此,為了給醫(yī)師提供清晰的圖像、安全的操縱環(huán)境,內(nèi)窺鏡圖像集中應保持在內(nèi)腔壁最遠的部分,即使內(nèi)窺鏡處于內(nèi)腔的中心線位置。本文研究設計一個機器人柔式內(nèi)窺鏡系統(tǒng),即一個視覺伺服系統(tǒng)(Visual Servo - System)[2-3]來引導操縱柔式內(nèi)窺鏡進行常規(guī)的胃鏡檢查。在基于光流算法的自主機器人避障系統(tǒng)[4]設計中,光流是用于計算到圖像中特征點的相對距離,并且通過均衡移動機器人兩側(cè)光流值的大小來實現(xiàn)機器人避障。研究這種方法是因為操縱內(nèi)窺鏡通過內(nèi)腔的任務與自主機器人避障任務相似。如果能恢復場景中關(guān)鍵的第三維信息,那么就可以通過深度估算[5]來操縱控制內(nèi)窺鏡躲避距離其最近的物體。本文將自主機器人避障系統(tǒng)中光流算法的思路,引用到機器人柔式內(nèi)窺鏡系統(tǒng)中,提出了一種基于LK光流算法的機器人柔式內(nèi)窺鏡系統(tǒng),并對常用的圖像灰度算法進行了仿真模擬的對比實驗。
本文利用基于LK光流算法的機器人柔式內(nèi)窺鏡系統(tǒng)的方式來恢復近似球形的全景深度信息。光學距離的依賴環(huán)境可以很容易地被球型攝像模型描繪出來。M是目標點,p∈R3,p映射到球面上,S2,如圖2(a)所示
對于每個點q=M(p),定義
為從P到攝像機的光學中心的距離。
當攝像機在靜態(tài)環(huán)境中移動,光流θ(q)是θR(q)旋轉(zhuǎn)分量和平移分量θT(q)的總和
這里V指光學中心的平移速度;Ω指光學中心的轉(zhuǎn)動速度,深度信息包含在θT(q)中,常規(guī)獲得θT(q)的方法是取消轉(zhuǎn)動光流θR(q),通過測程法來估算Ω。然而,利用內(nèi)窺鏡不能直接獲得此數(shù)據(jù),在這里運用運動學模型的輸入來估算Ω的方法并不可行。由于攝像機前端的運動高度依賴內(nèi)窺鏡的整體形狀,因此選擇單獨使用光流作為輸入。
為估算攝像機的運動,使用中央?yún)^(qū)域作為參考區(qū)域,即圖2(a)的區(qū)域C。在區(qū)域C中,平移速度V大約在攝像機光軸的方向,因此,q大約與V在相同的方向。這就使得(I-qqT)V變得很小,因為它是V于該平面正交的q的投影。另外,由于圖像的中心距離攝像機較遠,所以1/λ(q)也很小,因此,根據(jù)C可得,θT(q)≈0,θ(q)≈θR(q)= - Ω × q,所以 θ(q)能夠被用于估算Ω。
圖2 球形攝像機模型示意圖
所獲得的Ω可從整個攝像圖像的光流中計算平移部分θT(q),這樣就可以控制內(nèi)窺鏡,使其遠離那些距離攝像機最近的點。
Lucas-Kanade光流算法具有計算簡單、對較小的場景和較小運動的光流估計精度較高的優(yōu)點,正好適用于胃鏡檢查的環(huán)境,利用這種算法從兩個后續(xù)攝像機圖像中獲取稀疏光流場(sparse flow)。光流矢量對(ui,vi)∈S2×S2,其中下標 i表示第 i個矢量對(i=1,…,n),ui和vi分別表示運動物體的運動矢量投影與二維平面得到的瞬時變化率。對于vi落在中心區(qū)域C的矢量對,估算從ui到vi的旋轉(zhuǎn)角度。這些旋轉(zhuǎn)被表示為一個正交的旋轉(zhuǎn)矩陣R。利用正交旋轉(zhuǎn)矩陣R,可以將屬于每一個矢量對(ui,vi)的平移流矢量計算出來,定義
其中,Δt是幀時間;R-1vi是 vi的攝像機旋轉(zhuǎn)補償[13]。
通過計算光流矢量θTi來得到所需的攝像頭旋轉(zhuǎn)速度ω。一個移動攝像機所拍攝的圖像中,離攝像機較近的特征點產(chǎn)生更大的光流矢量,因此可以分別計算攝像機左右兩側(cè)特征點的光流矢量,圖像將被分為左(L)和右(R)區(qū)域,如圖2(b)。左側(cè)光流平均矢量模φL和左側(cè)光流平均矢量模φR定義為
通過計算圖像左右兩側(cè)平均光流矢量模的差來判斷內(nèi)窺鏡的相對位置,計算方法為
當φR-φL<0時,可認為腸道內(nèi)腔障礙物在左側(cè)的可能性大;當φR-φL>0時,可認為腸道內(nèi)腔障礙物在右側(cè)的可能性大。攝像機繞x軸所需的旋轉(zhuǎn)速度是ωx,可以從式(5)和式(6)中得到
其中,K是恒定的增益;繞y軸旋轉(zhuǎn)速度是ωy,利用頂部和底部的圖像分離,其算法與式(7)相似。
因為胃鏡的光源和探測器可以認為幾乎是在同一個平面上并且非常接近,在這種情況下,腸道表面越接近光源的地方照明越充分。因此,考慮到觀察點的角度,腸道內(nèi)最深的部分對應著圖像上最暗的區(qū)域,如圖3(a)所示。采用暗區(qū)提取法[6]進行內(nèi)窺鏡圖像尋徑,通過自適應閾值獲得二值圖像后將其處理以獲得腔壁的輪廓形狀,圖像中的黑暗區(qū)域通過閾值轉(zhuǎn)換得到二進制圖像,用于查找及確定內(nèi)腔口的位置。
圖3 基于灰度的圖像的處理
為定位到內(nèi)腔的中央方向,將圖3(a)的圖像進行灰度反轉(zhuǎn),計算反轉(zhuǎn)圖像中黑暗區(qū)域的中心。采用灰度質(zhì)心算法快速給區(qū)域中心定位。定義反轉(zhuǎn)圖像的灰度質(zhì)心點C。反轉(zhuǎn)圖像I″(x,y)定義為
其中,I'(x,y)是I(x,y)的應用直方圖均衡化?;叶戎行狞cC通過圓心區(qū)域A來計算,將所需的區(qū)域集中在圖像中,具有直徑等于圖像高度的性質(zhì)。這里采用一個圓形區(qū)域,希望在旋轉(zhuǎn)攝像頭繞光軸的同時算法不變。它還可以防止圖像中暗角落照明不均勻的情況出現(xiàn),如圖3(a)所示?;叶荣|(zhì)心點C計算公式為
這里,∑A代表A面積的總和。
攝像機所需要的轉(zhuǎn)速,ωx繞著X軸,ωy繞著 Y軸,其定義為
其中,K是一個恒定的增益。對于旋轉(zhuǎn)的攝像頭,該暗部區(qū)域的中心將在該圖像的中心。因此,攝像機的移動方向即為內(nèi)腔中心的方向。
針對內(nèi)窺鏡診療環(huán)境的特殊性和復雜性,分析醫(yī)生在內(nèi)窺鏡檢查中的動作和決策方式,在此基礎上提出了采用計算機視覺方法引導柔式內(nèi)窺鏡的介入。在柔式內(nèi)窺鏡手術(shù)中,可以通過視頻傳感器ADVC55[7]采集腔道內(nèi)實時圖像并傳輸?shù)接嬎銠C,計算機自動處理分析圖像,自動控制和調(diào)節(jié)柔式內(nèi)窺鏡頭部的姿態(tài)或給醫(yī)生適當?shù)慕ㄗh使內(nèi)窺鏡順利進入腸道。
對改進的LK光流和灰度圖像這兩種算法用Matlab 7.0編寫,運行硬件為 3.00 GHz PentiumIV CPU,512 MB RAM,在二維空間中提取結(jié)果。為定制虛擬條件下圖像的仿真環(huán)境,該系統(tǒng)的閉環(huán)性能在模擬柔性內(nèi)窺鏡檢查的過程中也進行了驗證。圖4是用本文所介紹的基于LK光流和灰度圖像兩種算法來處理的,所得到的結(jié)果可以用于校正和調(diào)整柔式內(nèi)窺鏡介入。在這次仿真實驗中,沒有考慮內(nèi)腔和內(nèi)窺鏡之間的相互影響,而內(nèi)腔部分采用的是人體模型。
圖4 柔式內(nèi)窺鏡手術(shù)操作仿真
圖4(a)采用美國Silicon Graphics公司生產(chǎn)的“IRISExplorer”數(shù)據(jù)可視化軟件展示了本次仿真實驗的虛擬環(huán)境圖,圖4(b)為在Matlab 7.0的環(huán)境下兩種算法的柔式內(nèi)窺鏡介入內(nèi)腔的運動軌跡的仿真圖。在圖4(b)中,實線為圖像灰度算法下的柔式內(nèi)窺鏡的路徑,虛線為LK光流算法下,柔式內(nèi)窺鏡的路徑。為更好地評估兩種算法的性能,計算了仿真中內(nèi)窺鏡的實際運行軌跡與內(nèi)腔的中心線之間的“均方根距離”。在改進的LK光流算法下,“均方根距離”為21%,而圖像灰度值算法為24%。從兩組數(shù)據(jù)中來看,LK光流算法的實驗效果更符合期望。
本文設計了一個柔式內(nèi)窺鏡機器人操縱控制系統(tǒng),它能夠控制柔式內(nèi)窺鏡從口腔安全、精確地進入到十二指腸等內(nèi)腔管道。將光流算法引用到醫(yī)學內(nèi)窺鏡視覺導航系統(tǒng)中,并對常用的圖像灰度算法進行了分析比較。仿真并檢測了基于LK光流算法和圖像灰度算法在柔式內(nèi)窺鏡介入內(nèi)腔管道時的位置和性能。實驗比較表明:本文設計的基于LK光流算法得到的內(nèi)腔管道中心路徑要更加精確、安全。
本文的研究工作在未來將集中在提高系統(tǒng)性能上。整個系統(tǒng)的性能可以通過結(jié)合具有更復雜的特征空間的控制器來進行改善結(jié)合,它使用視覺算法的輸出來引導柔式內(nèi)窺鏡的行動路徑,并且考慮內(nèi)窺鏡的固有特性。將來的研究中也將包括性能評定下讓該系統(tǒng)在更逼真的環(huán)境中進行研究和仿真。
[1]Harewood G C.Relationship of colonoscopy completion rates and endoscopist features[J].Digestive Diseases and Sciences,2005,50(1):47 -51.
[2]Burkhardt M R,Soper T D,Yoon W J,et al.Controlling the trajectory of a flexible ultrathin endoscope for fully automated bladder surveillance [J].IEEE/ASME Transactions on Mechatronics,2014,19(1):366 -373.
[3]Phee S J,Ng W S,Chen I M.Locomotion and steering aspects in automation of colonoscopy.I.A literature review[J].Engineering in Medicine and Biology Magazine,IEEE,2002,196(5):784 -795.
[4]肖雪,秦貴和,陳筠瀚.基于光流的自主移動機器人避障系統(tǒng)[J].計算機工程,2013,39(10):305 -308.
[5]羅桂娥.雙目立體視覺深度感知與三維重建若干問題研究[D].長沙:中南大學,2013.
[6]史少龍,伊達一.改進型灰度質(zhì)心實時算法研究[J].光電工程,2013,40(20):18 -24.
[7]Paolo Dario,Blake Hannaford,Ariama Menciassi.Smart surgical tools and augmenting devices[J].IEEE Transactions on Robotics and Automation,2003,19(5):782-792.