張靜
空軍軍醫(yī)大學 軍事生物醫(yī)學工程學系,陜西 西安 710032
根據原國家衛(wèi)計委《2019中國衛(wèi)生統(tǒng)計年鑒》[1],腸胃病在“居民前十種慢性疾病患病率”中已經上升至第四位,發(fā)病率占人口的8%~10.2%,其中約40%的患者長期受到腸胃病的困擾。且腸胃疾病有發(fā)病時間長、醫(yī)治難度大、反復發(fā)作等特點[2]。患者如果不能及時發(fā)現(xiàn)并接受治療,腸胃的病變可造成胃食管反流病、胃潰瘍、胃炎,進一步誘發(fā)食管癌、胃癌、結腸癌等。同時,由于我國地域和經濟發(fā)展的限制且人口眾多,存在東西部、城鄉(xiāng)間消化內鏡資源差距顯著。2012年全國的消化內鏡醫(yī)師僅占全國注冊醫(yī)師的1.06%[3-4],醫(yī)患比例差距巨大,難以滿足眾多患者的需求。內鏡診療操作復雜,醫(yī)生需要接受專業(yè)培訓,個體技術熟練度差異較大。遠程內鏡診療技術有望解決這一難題,而目前視頻傳輸方法為全局編解碼,該技術仍存在一些顯著問題,主要包括遠程視頻傳輸延時大和遠程解決方案不成熟等方面。
2013年,日本神戶大學開發(fā)的遠程輔導系統(tǒng),使用專用網絡作為安全鏈路,數據傳輸速率達到1 GB/s,視頻平均延時254±37 ms[5]。2019年,Lacy等[6]使用5G網絡技術完成了巴塞羅那-上海的遠程指導手術,可實現(xiàn)穩(wěn)定的數據傳輸,其速度比4G快100倍,傳輸速度為101 MB/s,平均網絡延遲為146 ms,但需要昂貴的特定硬件作為支撐。2018年,汪洋[7]基于標準視頻編解碼算法提出了無I幀全P幀的低時延編解碼算法,但是未能降低數據量。多數研究者主要關注遠程通訊技術,提高帶寬和通訊方式等方面進行研究,但是未從圖像的冗余信息[8]進行優(yōu)化研究。本文提出區(qū)域視頻傳輸算法,只傳輸感興趣區(qū)域(Region of Interest,ROI)而不影響關注信息,可降低視頻數據量,在帶寬有限的情況下降低延時,有效提高視頻質量。
在本地內鏡操控機器人的基礎上拓展遠程手術功能,遠程內鏡診療最終實現(xiàn)大幅度節(jié)省時間和費用,進而使偏遠地區(qū)患者接受到高水平內鏡診療。本課題是探索出一套適用于偏遠地區(qū)的遠程消化內鏡診療的圖像低延時傳輸解決方案,將極大地提高消化介入治療的安全性和有效性,特別是向基層醫(yī)院推廣應用,將對我國醫(yī)療資源再配置具有重要意義。
消化內窺鏡術是指在光線照明下可直視胃腸道及腹腔內臟器進行觀察、診斷和治療的手段。電子內窺鏡的結構如圖1所示,主要包括操作部、導光束、連接部、插入管、彎曲段和柔性鏡體等,是一種集光、機、電等高精尖技術于一體的醫(yī)用電子光學儀器[9]。光源通過傳光束照射到人體內腔,從腔內反射的光進入光學系統(tǒng),采用尺寸極小的高分辨率彩色面陣CCD(電荷耦合器件)上成像,然后通過導像纖維束將采集的圖像信號送到圖像處理系統(tǒng)上,最后在監(jiān)視器上輸出處理后的圖像,供醫(yī)生觀察和診斷[10]。其主要優(yōu)勢為供醫(yī)師直接用來觀察人體內臟器官的組織形態(tài),可提高診斷的準確性。
圖1 電子內窺鏡
消化內鏡采集的視頻分辨率為1920×1080,幀率為25幀。采集的視頻幀如圖2所示。
圖2 采集的視頻幀
由于消化內鏡采集畫面中存在由于離焦而產生的邊緣模糊、高光反射(亮區(qū))和暗區(qū)域,而人眼只關注人體組織的高清信息,為了降低視頻數據量,本文提出遠程區(qū)域圖像傳輸算法。核心算法主要包含2方面:ROI區(qū)域檢測,通過算法將模糊區(qū)域、暗區(qū)和高光區(qū)域進行分割檢測,得到掩膜圖像;內鏡圖像修復,為了提高整體視覺質量,對掩膜圖像進行紋理修復。
ROI信息提取流程如圖3所示。首先對內鏡圖像分別進行模糊區(qū)域檢測、暗區(qū)提取和亮區(qū)去除得到掩膜圖,然后再對暗區(qū)區(qū)域通過中心計算得到每幀圖像的中心作為醫(yī)生操作輔助指向。
圖3 視頻幀ROI信息提取流程
2.1.1 模糊區(qū)域檢測
模糊檢測方法如下:針對存在邊緣模糊的內鏡圖像進行梯度處理得到梯度圖,然后逐像素完成離散余弦變換,得到模糊強度分布圖,最后通過形態(tài)學運算分割提取圖像的局部模糊區(qū)域。處理過程如圖4所示。
圖4 模糊區(qū)域檢測圖流程
圖像的梯度圖可以有效得到局部結構圖,人類的視覺系統(tǒng)對此非常敏感。通過計算梯度大小,去除大部分空間冗余,保留了圖像結構和形狀分量。梯度圖G計算如公式(1)所示。
由于在頻率域可以反映圖像結構和特征信息,因此本文考慮離散余弦變換(Discrete Cosine Transform,DCT)方法[11]對模糊區(qū)域的檢測與劃分,DCT系數可以表示不同的頻率,而模糊會導致圖像的高頻信息降低。對于M×N的圖像矩陣G,其二維離散余弦變換為公式(2)~(3)。
其中,i為M行中的第i行且滿足1≤i≤M-1,j為N列中的第j列且滿足1≤i≤M-1。
DCT(i,j)即為梯度圖G的高頻系數矩陣。而對整幅圖像進行DCT運算不能檢測模糊圖像的局部信息,因而需要對整個圖像的每個像素點周圍一定尺寸的鄰域進行DCT運算。比如選中7×7大小的鄰域,單個像素經過DCT運算可以得到28個高頻系數。第一層包含最小高頻值,可以區(qū)分清晰與模糊區(qū)域;更高層包括更大的高頻系數,在清晰和模糊區(qū)域可以看到更多的結構和邊緣信息。
模糊檢測圖D 計算如公式(4)所示。
其中,DCT(i,j,t)為第t層的DCT(i,j),L為總的層數。
截取消化內鏡視頻的食管、賁門和十二指腸視頻幀,進行處理去除模糊區(qū)域與中間的暗區(qū),得到消化內鏡視頻幀的模糊檢測圖和去模糊區(qū)域的掩膜圖像如圖5所示。
圖5 消化內鏡視頻幀掩膜圖
2.1.2 亮區(qū)與暗區(qū)檢測
消化內鏡是一條高柔性的軟管,前端有攝像頭與點光源,內鏡頭部結構示意圖如圖6所示。醫(yī)生在內鏡診療過程中,根據工作站的顯示器上的內鏡圖像的暗區(qū)作為內鏡末端的前進方向。只有內鏡的頭部正對腔道時,內鏡才能順利進入消化道;如果沒有對準腔道,就會被醫(yī)生推到消化道的內壁上,使得患者產生疼痛感。
圖6 內窺鏡頭部結構示意圖
由于鏡頭前的燈發(fā)出的光線,會使人體組織部分區(qū)域產生鏡面反射,得到的圖像是白色的,為無效信息;在消化內鏡介入過程中,由于前端為點光源,且人體上消化道為管狀的結構,所以絕大部分圖像中心區(qū)域一般是中心位置附近的最暗區(qū)域,這也是醫(yī)生最為關注的區(qū)域,見圖7。
圖7 高亮與中心區(qū)域示意圖
由于高亮的區(qū)域灰度值接近于255,而黑色的灰度值是0。通過設置合理的閾值,灰度值大于一個參數值,認為是高亮區(qū)域;灰度值小于一個參數值,認為是暗區(qū)域,即為中心區(qū)域。像素值歸一化如公式(5)所示。
其中,x、y分別表示中心區(qū)域在圖像坐標系中的橫坐標與縱坐標;I是原始的圖像的灰度圖像,B是歸一化后的像素值范圍為0~1。對于中心區(qū)域通過對像素點的遍歷進而得到內鏡視野的中心點,并用其來指示內鏡末端,起到指向性作用。通過公式(6)~(7)進行計算。
其中,x、y分別表示中心區(qū)域在圖像坐標系中的橫坐標與縱坐標;N、M分別表示圖像的寬度與高度;i、j分別表示圖像中像素值為0的點的位置;Nd表示圖像中像素值為0的數量。
對內鏡視頻圖像中的高亮區(qū)域與暗區(qū)進行檢測,同時對暗區(qū)中間采用統(tǒng)計方法找到幾何中心,標記紅點作為醫(yī)生的操作提供指向性信息,實現(xiàn)人機交互功能。
圖像修復是使用缺失部分的周邊圖像將進行修復使能夠接近原圖的視覺質量。對大區(qū)域的圖像信息缺失常用的方法是Criminisi算法,主要思想是先根據邊緣上塊區(qū)域的優(yōu)先值來選取待修復塊,對完整區(qū)域進行搜索找到最相似塊進行填充,直到缺失區(qū)域都被修復[12]。Criminisi算法的過程圖如圖8所示。其中,I是待修復的圖像,Φ是完好的圖像區(qū)域,Ω是待修復部分,δΩ是交界邊緣,ψp是待修復塊區(qū)域,一般大小為9×9,p是區(qū)域ψp的中心點。
圖8 Criminisi算法過程圖
算法重復以下三個步驟,直到所有像素已修復。
(1)計算邊緣上所有塊優(yōu)先級。通過選擇最佳塊來填充紋理,該策略完全取決于每個候選塊的優(yōu)先級值。給定一個以點p為中心的塊ψp,其中ΨP∈δ?(參見圖8),將其優(yōu)先級P(p)定義為兩項的乘積,見公式(8)。
其中,C(p)為置信度矩陣,D(p)為迭代數據矩陣。計算如公式(9)~(10)。
其中,|ψp|是塊的面積,C(p)為像素點的置信度,初始值為1,缺失像素點的置信度為0。在修復過程中,置信度更新在C(p)。是等照度向量,先計算原始圖位于p點的梯度值,然后逆時針旋轉90°;α是歸一化因子。
(2)填充紋理和結構信息。計算完邊緣上每個塊的優(yōu)先級后,找到優(yōu)先級最高作為待修復塊;然后,使用歐式距離作為標準判斷在源圖區(qū)域中搜索與目標塊區(qū)域最相似的塊;最后,通過復制紋理區(qū)域對待修復塊進行填充。
(3)更新置信度矩陣。在待修復塊填充了新像素值后,置信度更新如公式(11)所示。
這個簡單的迭代算法在沒有圖像特定參數的情況下,可通過填充邊緣塊紋理得到相對置信度。隨著修復過程的進行,已修復區(qū)域像素的置信度會逐漸減小。使用Criminisi算法可以處理大區(qū)域的圖像信息缺失。算法重復以下三個步驟,直到所有像素已修復。Criminisi算法修復結果圖,見圖9。
圖9 Criminisi算法修復結果圖
內鏡處理結果圖,可以看到Criminisi算法對模糊區(qū)域的修復程度很好,但是對于高亮區(qū)域中間仍有空洞,因此在模糊區(qū)域使用Criminisi算法進行修復,而在高亮區(qū)域采用紋理填補方法。
從端客戶端實時讀取內鏡圖像并基于FFmpeg庫[13]實現(xiàn)軟件編碼對視頻壓縮,同時使用網絡收發(fā)程序來發(fā)送碼流數據;主端服務端通過網絡收發(fā)程序來接收碼流數據,然后使用軟件解碼之后在屏幕端顯示。使用模塊化編程實現(xiàn)軟件視頻編碼、碼流編碼和網絡收發(fā)程序。遠程視頻傳輸過程,見圖10。
圖10 遠程視頻傳輸過程
消化內鏡采集的未壓縮視頻文件的數據量計算公式如下所示,數據量的單位是MB。1080P視頻通過計算可得到一幀的理論數據量為759.4 kB。通過本文提出的ROI信息提取對消化內鏡視頻的處理,圖像數據量明顯減少,對比圖如圖11所示。
圖11 視頻幀數據量對比
其中,數據量=圖像分辨率×彩色深度×幀率/(8×1024×1024)。
對實際的消化內鏡視頻在遠程手術系統(tǒng)中完成遠程傳輸測試。在碼率同樣的情況下使用提出的感興趣區(qū)域檢測方法與圖像修復方法處理和直接傳輸方法對比效果如圖12所示。圖12b是使用全局編解碼得到的效果圖,其中組織血管特征比較模糊;圖12c是使用圖像優(yōu)化算法傳輸回來的區(qū)域圖像掩膜圖,可以看到比較清晰的內鏡圖像,但是圖像的不完整影響醫(yī)生的整體視覺體驗;圖12d是遠程操作端對模糊區(qū)域采用Criminisi算法修復,高亮區(qū)域采用紋理貼圖算法處理,可以看到修復的視頻幀保留了關注信息,算法具有效率高,計算用時小。經實驗驗證,采用提出的區(qū)域圖像傳輸算法的時延有明顯降低,可用于H.264/H.265等當前主流視頻編解碼算法,該算法對實時性要求很高的消化診療系統(tǒng)有很大意義。
圖12 視頻幀效果對比
胃鏡圖像尺寸和分辨率決定了所需傳輸的數據量大小與圖像傳輸耗費時間,且存在如下關系:圖像尺寸和分辨率與圖像傳輸耗費時間成正比。與汪洋[7]提出的無I幀全P幀低時延編解碼算法研究思路不同,雖然每幀圖像編碼后的數據量波動不大,但是未能降低數據量。經實驗驗證,采用提出的區(qū)域圖像傳輸算法的時延與全局視頻編解碼算法相比有明顯降低,且在相同碼率傳輸下顯示出更多圖像紋理細節(jié),該算法對實時性要求很高的視頻編解碼系統(tǒng)有很大意義,提出的算法可用于H.264/H.265等當前主流視頻編解碼算法中降低時延。但本文提出的算法在模糊區(qū)域檢測算法的實現(xiàn)過程中較為繁瑣且對感興趣區(qū)域的定義只考慮了客觀圖像因素,未從醫(yī)生關注信息的機理出發(fā),進一步應考慮基于深度學習方法[14-15]精準地識別關注目標的區(qū)域。同時對接收端的胃鏡視頻進一步增強感官視覺反饋,采用張慧[16]提出基于小波與人眼視覺的特征增強方法,能夠有效提高胃鏡視頻質量效果。
基于人眼感興趣區(qū)域編碼[17]和掩膜修復重建兩大技術可以大幅降低視頻傳輸所需的帶寬和存儲視頻所需的空間,同時保證高質量的圖像和良好的視覺效果[18]。對于高清胃鏡圖像的遠程傳輸情景,本文針對視頻冗余提出了區(qū)域視頻傳輸算法,核心思想是只傳輸ROI,可降低視頻數據量而不影響醫(yī)師所關注的信息,在帶寬有限的情況下降低延時,有效提高了視頻質量。首先是感興趣區(qū)域提取方法,通過對內鏡視頻中的模糊區(qū)域、亮區(qū)和暗區(qū)進行剔除得到ROI區(qū)域,平均可降低8.3%的數據量;采用Criminisi算法修復掩膜圖像具有簡單、清晰度高的特點。整個圖像優(yōu)化過程用時約為93 ms。該遠程區(qū)域傳輸算法具有安全可靠、延時低和不影響操作效果等特點,可順利完成消化內鏡遠程診療,有效提高偏遠地區(qū)的醫(yī)療水平。本算法可延展應用于諸多領域,包括:遠程會議、線上教育、視頻聊天等領域,尤其針對偏遠地區(qū)存在帶寬有限和網絡信號不穩(wěn)定等現(xiàn)象,可將區(qū)域圖像傳輸算法應用于在線視頻輔導,使得當地學生能享受穩(wěn)定可靠的視頻教育資源。