喬 霈,閆學文,李德源,牛蒙青
(中國輻射防護研究院,山西 太原 030006)
目前,放射治療廣泛應用于癌癥等人體疾病治療中,在放射治療過程中,劑量的估算至關重要,準確的劑量估算可以避免患者出現超劑量照射風險[1]。光場成像技術作為現代圖像測量的一個分支,廣泛應用于工業制造、機器視覺等領域。使用光場成像技術,通過獲取光場的二維圖像,利用深度估計算法進行反演,進而獲取光場三維分布信息。場景的三維信息包括高度、寬度和深度。深度信息能更好的展示物體在三維空間中的結構,獲取物體深度信息,可以廣泛應用于計算機視覺、成像、醫療影像等方面。基于光場圖像的深度信息提取方法主要通過計算視差來實現。通過獲取空間中同一物體在不同視點下的兩幅或者多幅視差信息,利用光學傳播的幾何原理,計算出物體的深度信息。
目前,深度估計方法主要分為兩大類:主動深度估計方法和被動深度估計方法[2]。主動深度估計方法是根據場景信息,控制攝像機系統和成像環境,然后,獲得場景信息。該方法獲取深度信息的準確度較高,但是其測量系統體積較大,成本較高,一般不被大家廣泛使用。被動深度估計方法,與主動方法差異較大,通過調整攝像機鏡頭的光圈,找到拍攝圖片時各個像素點最佳的拍攝角度,然后,根據相機的成像原理,計算各像素的清晰度,用清晰的像素點構成一張全聚焦圖像,對這張圖進行深度估計,最后進行優化處理,得到圖像的場景深度信息。這種方法雖然操作較復雜,但是得到的深度信息準確。光場相機通過在主鏡頭組和圖像傳感器(CCD芯片或CMOS芯片)之間的特定位置加入微透鏡陣列[3],實現采集物體光強和記錄光線方向的信息[4],因此,它不僅可以捕獲圖像的平面信息,還可以通過深度估計方法得到圖像的深度信息。本項目組利用光場相機和組織等效的閃爍材料構建三維劑量測量系統,利用光場相機獲取質子或重離子在組織等效閃爍材料中產生閃爍體光的三維分布信息來計算質子或重離子在組織等效材料中三維劑量分布。為了獲取圖像的三維信息,需要用深度估計算法得到圖像的深度信息,現有的被動深度估計算法主要有傳統的深度估計算法[5]和快速極線平面圖(epipolar plane image, EPI)的深度估計算法[6]。三維場景中物體在不同深度位置處獲得圖像的像素存在差異,為了在不同的深度得到圖像的最佳像素,引入圖像的縱向分辨率,即圖像在不同深度位置處的像素與尺寸的比例。并且,深度估計算法對圖像縱向分辨率的影響至關重要,而圖像的縱向分辨率又直接影響三維劑量的測量準確性,因此,開展深度估計算法對圖像縱向分辨率影響的對比研究尤為重要。
盡管深度估計算法已取得顯著進展,但是在三維劑量測量中,深度估計算法對圖像縱向分辨率的影響未有深入研究。因此,本文圍繞兩種深度估計算法對圖像的縱向分辨率影響進行對比研究,結合其在三維劑量測量領域實際情況展開分析。
利用光場相機獲取實體的初始圖片,然后,采用傳統的深度估計算法和快速極線平面圖(epipolar plane image, EPI)算法得到圖像的深度信息,通過實驗結果的對比及分析,比較兩種方法對圖像縱向分辨率的影響。
光場相機由鏡頭、微透鏡陣列和圖像傳感器組成。在圖像獲取中,為了得到清晰度高的圖像,采用聚焦型光場相機獲取圖像,成像原理如圖1所示,物體所有方向上的光線通過主透鏡匯聚到微透鏡上,每個微透鏡將得到主透鏡像面上的一個區域內的圖像。由于方向不同,繼而散射到微透鏡后面的傳感器像元上,使得主透鏡像面上的景物二次成像。a、b分別為微透鏡到主透鏡像平面的距離、微透鏡到傳感器的距離,因此,光場相機對光場的方向分辨率為a/b,a、b滿足透鏡的基本成像公式,公式見(1),通過調整參數a、b來實現光場的方向采樣。

圖1 聚焦型光場相機的成像原理圖Fig.1 Imaging schematic of a focused plenoptic camera
(1)
式中,f為微透鏡的焦距,根據具體的微透鏡獲得,a為微透鏡到主透鏡像平面的距離,b為微透鏡到傳感器的距離。
聚焦型光場相機拍攝所得的圖像示于圖2,被拍攝物體會在多個微透鏡圖像中出現,每個微透鏡圖像都與相鄰的圖像有重疊區域。由于微透鏡是圓形,為了方便后續的圖像處理,本文選擇微透鏡圖像中的一部分做處理,示于圖3,選取圓形圖像中長度為m的矩形區域,進行整圖拼接得到重組后的圖像,重組后的圖像示于圖4。

圖2 聚焦型光場相機拍攝圖Fig.2 Photograph of a focused plenoptic camera

圖3 圖像塊的裁剪模型Fig.3 Cropping model of the image block

圖4 重組后的圖像Fig.4 The reorganized image
圖4中,微透鏡的個數為Nxx×Ny,各個微透鏡圖像的大小為nxx×ny,圖像塊的大小為m×m。
依據重組的圖像獲取圖片的深度估計信息。詳細的原理示于圖5。首先,將微透鏡圖像中m′×m′的圖像塊A表示為Am;然后,在與A相鄰的微透鏡子圖像B中平行的選取多個圖像塊Bm;計算Am與若干Bm的相關值,并記錄獲得最大相關值的圖像塊Bm的中心位置kx。以此類推,對微透鏡圖像A和C進行上述操作,得到ky。最后,將水平方向的kx和豎直方向的ky求平均值k,k即為微透鏡子圖像A的相對深度。遍歷圖像中的每一個微透鏡子圖像,得到由k構成的矩陣即為三維圖像的深度信息K。

圖5 深度估計算法原理圖Fig.5 Schematic of depth estimation algorithm
在光場成像的圖像處理過程中,由于序列圖像中的各個圖像單獨處理操作比較繁瑣,因此引入了EPI[7]結構,將序列圖像看成一個整體進行切分[8],使得操作的復雜度降低。

圖6 極平面、極線示意圖Fig.6 Schematic diagram of polar plane and polar line
為了更好的理解EPI,首先需要清楚極平面、極線等的形成原理。假設兩個相機對場景中的點M成像,示意圖示于圖6。場景中的任意點M,均可以和兩個透鏡的中心連線形成平面,該平面為極平面。然后,極平面與兩個像面各自相交,所對應的交線即為極線。極平面上的所有點在像面1上的投影都在像面1與極平面相交的極線上,同理,像面2上的投影也在對應的極線上。因此,可以得出,所有極平面上的點在各自像面上的投影都在相應的極線上。在搜索圖像的匹配點時,可以依據其對應的極線對,使二維平面的搜索降到一維極線的搜索,大大降低了匹配點的搜索范圍。因此,尋找點M在兩個像平面中的匹配點,只需要在極線中搜索即可。
圖像在極平面上的點都可以投影到對應的極線上,因此,圖像極平面中的信息可以包含在對應的極線序列中。在分析圖像序列時,為了能夠將信息集中處理,需要將這些極線序列對按照某種特定的順序進行排列,形成一幅新的圖像,這個新的圖像即為EPI,它涵蓋了圖像極平面中所有的特征信息。

圖7 水平方向EPI序列表示Fig.7 Horizontal EPI sequence representation
EPI場景可以通過多個攝像機從不同的視角同時拍攝同一個場景,或者一個相機從不同的位置捕捉場景[9],這樣構成的多個視圖圖像形成了EPI圖像;本研究中,在快速EPI深度全光相機獲取深度分辨率[6]中,首先將原始的光場圖像用EPI表示。EPI塊由水平方向EPI表示和豎直方向EPI表示兩塊構成,水平和豎直方向各自EPI表示的獲取方式如圖7和圖8所示,每一個正方形代表一個圖像塊的像素矩陣分布,圖7依次從圖像塊A相鄰的幾個微透鏡構成的像素塊矩陣中各抽取中間一行的像素,按照圖中Block1、Block2、Block3的排列方式構成三行像素組矩陣,即為水平方向EPI。同理,可以得到圖8中豎直方向的EPI。將水平和垂直的EPI表示進行連接構成最終的EPI表示,示于圖9。

圖8 垂直方向EPI表示Fig.8 Vertical EPI sequence representation
由圖7可知,對于微透鏡陣列中的子圖像塊A,選擇其相鄰的各圖像塊中間一行像素點,按照圖中的順序進行排列和拼接,構成新的水平EPI表示。圖8選取與子圖像塊A相鄰的各圖像塊中間一列像素點,構成新的垂直EPI表示。
接下來,需要利用圖像的EPI序列表示獲取圖像的深度估計信息。首先,引入一個差異值d,利用d值來移動EPI序列中像素點的位置。EPI序列表示的第一行像素點不做改變,第二行像素點平移d,第三行像素點平移2d,以此類推(本文中只對三行做位移)。因此,得到一個平移后的EPI序列。然后,計算每一列重合像素的方差之和,具體計算如公式(2)所示,改變d值的大小,尋找方差值最小時對應的d值為d′,如公式(3)所示,此時,d′為微透鏡子圖像A的深度估計值;最后,遍歷每一個微透鏡子圖像,得到各個子圖像的d′值形成的深度信息矩陣D。
(2)
(3)
公式(2)中j為EPI序列中像素點所在的列。

圖9 最終的EPI序列表示Fig.9 Final EPI sequence representation
本文使用java語言實現上述第1節中的兩種深度估計算法,兩種算法的結果均由一個矩陣展示。傳統的深度估計算法獲取深度信息時得到的矩陣為K,該方法是從相鄰圖像塊間的相關度方面進行考慮;快速EPI全光相機獲取深度信息的方法得到的矩陣為D,該方法從方差的角度分析并獲取每一列像素點的方差,然后選取方差最小值對應的d,其含義是從相鄰的圖像塊中尋找差異最小(即偏離程度最小)值。通過比較兩種算法分別得到的矩陣K和D,來衡量方法對圖像縱向分辨率的影響程度。
本文以光場相機捕獲的圖像圖2為研究示例,通過圖像的初步處理得到圖2所示重組后的圖像,在圖3的基礎上,分別用傳統的深度估計算法獲取深度信息和快速EPI獲取深度信息算法得到各自對應的深度信息矩陣K和D。兩種方法的實驗結果列于表1。將傳統的深度估計算法簡稱為算法1,快速EPI獲取深度信息的方法簡稱為算法2。

表1 算法1和算法2獲取的深度信息矩陣結果Table 1 Depth information matrix results obtained by Algorithm 1 and Algorithm 2
由表1的圖像深度信息計算結果可知,算法1由于是相關度結果,因此范圍在0~1之間,整體的相關度結果比較離散,表示與各個圖像塊最相關的相關系數值;算法2得到的為差異值d′的分布結果,但是,從結果D可以看出深度信息均集中在d′為74的鄰近值。
兩種深度信息獲取算法都是通過獲取圖像的深度值,衡量圖像的三維信息。圖像的深度范圍一般比較廣,這樣才能充分體現圖像的縱向分辨率,并且為后期全聚焦圖像確定良好和健壯的深度估計[7]。結果值波動越小,說明該圖像的深度值相差不大,不能很好的體現圖像的縱向分辨率。
從算法的原理角度進行分析,我們發現算法2在深度信息獲取過程中,首先對圖像的EPI序列表示進行位移變化,然后再計算每個重疊列的方差和,選擇最小方差對應的d值。每次循環d的過程中,由于EPI序列長度較短,并且序列中的像素值較大,因此方差和的變化很微小,導致最終d值相差較小,而且在d臨近末端時,由于像素值變少,使得方差更容易最小。因此,從原理的角度考慮,算法1在圖像范圍較小的情況下也能獲得高的縱向分辨率,然而,算法2需要在圖像分布范圍較廣的情況下才能發揮其算法的優勢。
從算法獲得的結果進行分析,表1中兩種算法的結果可以得知,算法1獲得子圖像塊的相關度值反映深度信息,矩陣K中各個相關度值k比較離散,可以較充分的反映圖像的深度信息,因而對圖像的縱向分辨率影響更大;然而,算法2得到的d′值差異較小,這樣很難展現出圖像的深度信息。
在三維劑量測量系統中,質子或重離子在組織等效閃爍材料中沉積能量產生閃爍光,且產生的閃爍光的量與質子或重離子所沉積的能量成正比。且能量以布拉格峰的形式沉積,產生的光分布的橫向分布較窄。在此種情況下,傳統的深度估計算法獲得圖像的縱向分辨率更好,因此,傳統的深度估計算法更適用于質子或重離子放射治療過程中的三維劑量測量。
光場相機突破了傳統相機記錄三維場景的不完備性[10],相較于其他成像裝置而言,采集方式便捷,獲取的光場數據精確,這使得本文的圖像采集工作順利開展。在三維劑量測量系統中,通過光場相機獲得閃爍光的平面分布圖像,然后利用兩種深度信息獲取算法挖掘圖像中的三維信息,分析和比較兩種深度估計算法對圖像縱向分辨率的影響,由于質子或重離子在組織等效的閃爍材料中以布拉格峰形式進行能量沉積,使得光的橫向分布較窄,傳統的深度估計算法能夠針對該問題得到較高的圖像縱向分辨率。而快速EPI深度估計算法邏輯結構更簡單,更適合于圖像分布范圍較大的應用場合。