喬 霈,閆學(xué)文,李德源,牛蒙青
(中國(guó)輻射防護(hù)研究院,山西 太原 030006)
目前,放射治療廣泛應(yīng)用于癌癥等人體疾病治療中,在放射治療過(guò)程中,劑量的估算至關(guān)重要,準(zhǔn)確的劑量估算可以避免患者出現(xiàn)超劑量照射風(fēng)險(xiǎn)[1]。光場(chǎng)成像技術(shù)作為現(xiàn)代圖像測(cè)量的一個(gè)分支,廣泛應(yīng)用于工業(yè)制造、機(jī)器視覺(jué)等領(lǐng)域。使用光場(chǎng)成像技術(shù),通過(guò)獲取光場(chǎng)的二維圖像,利用深度估計(jì)算法進(jìn)行反演,進(jìn)而獲取光場(chǎng)三維分布信息。場(chǎng)景的三維信息包括高度、寬度和深度。深度信息能更好的展示物體在三維空間中的結(jié)構(gòu),獲取物體深度信息,可以廣泛應(yīng)用于計(jì)算機(jī)視覺(jué)、成像、醫(yī)療影像等方面?;诠鈭?chǎng)圖像的深度信息提取方法主要通過(guò)計(jì)算視差來(lái)實(shí)現(xiàn)。通過(guò)獲取空間中同一物體在不同視點(diǎn)下的兩幅或者多幅視差信息,利用光學(xué)傳播的幾何原理,計(jì)算出物體的深度信息。
目前,深度估計(jì)方法主要分為兩大類(lèi):主動(dòng)深度估計(jì)方法和被動(dòng)深度估計(jì)方法[2]。主動(dòng)深度估計(jì)方法是根據(jù)場(chǎng)景信息,控制攝像機(jī)系統(tǒng)和成像環(huán)境,然后,獲得場(chǎng)景信息。該方法獲取深度信息的準(zhǔn)確度較高,但是其測(cè)量系統(tǒng)體積較大,成本較高,一般不被大家廣泛使用。被動(dòng)深度估計(jì)方法,與主動(dòng)方法差異較大,通過(guò)調(diào)整攝像機(jī)鏡頭的光圈,找到拍攝圖片時(shí)各個(gè)像素點(diǎn)最佳的拍攝角度,然后,根據(jù)相機(jī)的成像原理,計(jì)算各像素的清晰度,用清晰的像素點(diǎn)構(gòu)成一張全聚焦圖像,對(duì)這張圖進(jìn)行深度估計(jì),最后進(jìn)行優(yōu)化處理,得到圖像的場(chǎng)景深度信息。這種方法雖然操作較復(fù)雜,但是得到的深度信息準(zhǔn)確。光場(chǎng)相機(jī)通過(guò)在主鏡頭組和圖像傳感器(CCD芯片或CMOS芯片)之間的特定位置加入微透鏡陣列[3],實(shí)現(xiàn)采集物體光強(qiáng)和記錄光線(xiàn)方向的信息[4],因此,它不僅可以捕獲圖像的平面信息,還可以通過(guò)深度估計(jì)方法得到圖像的深度信息。本項(xiàng)目組利用光場(chǎng)相機(jī)和組織等效的閃爍材料構(gòu)建三維劑量測(cè)量系統(tǒng),利用光場(chǎng)相機(jī)獲取質(zhì)子或重離子在組織等效閃爍材料中產(chǎn)生閃爍體光的三維分布信息來(lái)計(jì)算質(zhì)子或重離子在組織等效材料中三維劑量分布。為了獲取圖像的三維信息,需要用深度估計(jì)算法得到圖像的深度信息,現(xiàn)有的被動(dòng)深度估計(jì)算法主要有傳統(tǒng)的深度估計(jì)算法[5]和快速極線(xiàn)平面圖(epipolar plane image, EPI)的深度估計(jì)算法[6]。三維場(chǎng)景中物體在不同深度位置處獲得圖像的像素存在差異,為了在不同的深度得到圖像的最佳像素,引入圖像的縱向分辨率,即圖像在不同深度位置處的像素與尺寸的比例。并且,深度估計(jì)算法對(duì)圖像縱向分辨率的影響至關(guān)重要,而圖像的縱向分辨率又直接影響三維劑量的測(cè)量準(zhǔn)確性,因此,開(kāi)展深度估計(jì)算法對(duì)圖像縱向分辨率影響的對(duì)比研究尤為重要。
盡管深度估計(jì)算法已取得顯著進(jìn)展,但是在三維劑量測(cè)量中,深度估計(jì)算法對(duì)圖像縱向分辨率的影響未有深入研究。因此,本文圍繞兩種深度估計(jì)算法對(duì)圖像的縱向分辨率影響進(jìn)行對(duì)比研究,結(jié)合其在三維劑量測(cè)量領(lǐng)域?qū)嶋H情況展開(kāi)分析。
利用光場(chǎng)相機(jī)獲取實(shí)體的初始圖片,然后,采用傳統(tǒng)的深度估計(jì)算法和快速極線(xiàn)平面圖(epipolar plane image, EPI)算法得到圖像的深度信息,通過(guò)實(shí)驗(yàn)結(jié)果的對(duì)比及分析,比較兩種方法對(duì)圖像縱向分辨率的影響。
光場(chǎng)相機(jī)由鏡頭、微透鏡陣列和圖像傳感器組成。在圖像獲取中,為了得到清晰度高的圖像,采用聚焦型光場(chǎng)相機(jī)獲取圖像,成像原理如圖1所示,物體所有方向上的光線(xiàn)通過(guò)主透鏡匯聚到微透鏡上,每個(gè)微透鏡將得到主透鏡像面上的一個(gè)區(qū)域內(nèi)的圖像。由于方向不同,繼而散射到微透鏡后面的傳感器像元上,使得主透鏡像面上的景物二次成像。a、b分別為微透鏡到主透鏡像平面的距離、微透鏡到傳感器的距離,因此,光場(chǎng)相機(jī)對(duì)光場(chǎng)的方向分辨率為a/b,a、b滿(mǎn)足透鏡的基本成像公式,公式見(jiàn)(1),通過(guò)調(diào)整參數(shù)a、b來(lái)實(shí)現(xiàn)光場(chǎng)的方向采樣。
圖1 聚焦型光場(chǎng)相機(jī)的成像原理圖Fig.1 Imaging schematic of a focused plenoptic camera
(1)
式中,f為微透鏡的焦距,根據(jù)具體的微透鏡獲得,a為微透鏡到主透鏡像平面的距離,b為微透鏡到傳感器的距離。
聚焦型光場(chǎng)相機(jī)拍攝所得的圖像示于圖2,被拍攝物體會(huì)在多個(gè)微透鏡圖像中出現(xiàn),每個(gè)微透鏡圖像都與相鄰的圖像有重疊區(qū)域。由于微透鏡是圓形,為了方便后續(xù)的圖像處理,本文選擇微透鏡圖像中的一部分做處理,示于圖3,選取圓形圖像中長(zhǎng)度為m的矩形區(qū)域,進(jìn)行整圖拼接得到重組后的圖像,重組后的圖像示于圖4。
圖2 聚焦型光場(chǎng)相機(jī)拍攝圖Fig.2 Photograph of a focused plenoptic camera
圖3 圖像塊的裁剪模型Fig.3 Cropping model of the image block
圖4 重組后的圖像Fig.4 The reorganized image
圖4中,微透鏡的個(gè)數(shù)為Nxx×Ny,各個(gè)微透鏡圖像的大小為nxx×ny,圖像塊的大小為m×m。
依據(jù)重組的圖像獲取圖片的深度估計(jì)信息。詳細(xì)的原理示于圖5。首先,將微透鏡圖像中m′×m′的圖像塊A表示為Am;然后,在與A相鄰的微透鏡子圖像B中平行的選取多個(gè)圖像塊Bm;計(jì)算Am與若干Bm的相關(guān)值,并記錄獲得最大相關(guān)值的圖像塊Bm的中心位置kx。以此類(lèi)推,對(duì)微透鏡圖像A和C進(jìn)行上述操作,得到ky。最后,將水平方向的kx和豎直方向的ky求平均值k,k即為微透鏡子圖像A的相對(duì)深度。遍歷圖像中的每一個(gè)微透鏡子圖像,得到由k構(gòu)成的矩陣即為三維圖像的深度信息K。
圖5 深度估計(jì)算法原理圖Fig.5 Schematic of depth estimation algorithm
在光場(chǎng)成像的圖像處理過(guò)程中,由于序列圖像中的各個(gè)圖像單獨(dú)處理操作比較繁瑣,因此引入了EPI[7]結(jié)構(gòu),將序列圖像看成一個(gè)整體進(jìn)行切分[8],使得操作的復(fù)雜度降低。
圖6 極平面、極線(xiàn)示意圖Fig.6 Schematic diagram of polar plane and polar line
為了更好的理解EPI,首先需要清楚極平面、極線(xiàn)等的形成原理。假設(shè)兩個(gè)相機(jī)對(duì)場(chǎng)景中的點(diǎn)M成像,示意圖示于圖6。場(chǎng)景中的任意點(diǎn)M,均可以和兩個(gè)透鏡的中心連線(xiàn)形成平面,該平面為極平面。然后,極平面與兩個(gè)像面各自相交,所對(duì)應(yīng)的交線(xiàn)即為極線(xiàn)。極平面上的所有點(diǎn)在像面1上的投影都在像面1與極平面相交的極線(xiàn)上,同理,像面2上的投影也在對(duì)應(yīng)的極線(xiàn)上。因此,可以得出,所有極平面上的點(diǎn)在各自像面上的投影都在相應(yīng)的極線(xiàn)上。在搜索圖像的匹配點(diǎn)時(shí),可以依據(jù)其對(duì)應(yīng)的極線(xiàn)對(duì),使二維平面的搜索降到一維極線(xiàn)的搜索,大大降低了匹配點(diǎn)的搜索范圍。因此,尋找點(diǎn)M在兩個(gè)像平面中的匹配點(diǎn),只需要在極線(xiàn)中搜索即可。
圖像在極平面上的點(diǎn)都可以投影到對(duì)應(yīng)的極線(xiàn)上,因此,圖像極平面中的信息可以包含在對(duì)應(yīng)的極線(xiàn)序列中。在分析圖像序列時(shí),為了能夠?qū)⑿畔⒓刑幚?,需要將這些極線(xiàn)序列對(duì)按照某種特定的順序進(jìn)行排列,形成一幅新的圖像,這個(gè)新的圖像即為EPI,它涵蓋了圖像極平面中所有的特征信息。
圖7 水平方向EPI序列表示Fig.7 Horizontal EPI sequence representation
EPI場(chǎng)景可以通過(guò)多個(gè)攝像機(jī)從不同的視角同時(shí)拍攝同一個(gè)場(chǎng)景,或者一個(gè)相機(jī)從不同的位置捕捉場(chǎng)景[9],這樣構(gòu)成的多個(gè)視圖圖像形成了EPI圖像;本研究中,在快速EPI深度全光相機(jī)獲取深度分辨率[6]中,首先將原始的光場(chǎng)圖像用EPI表示。EPI塊由水平方向EPI表示和豎直方向EPI表示兩塊構(gòu)成,水平和豎直方向各自EPI表示的獲取方式如圖7和圖8所示,每一個(gè)正方形代表一個(gè)圖像塊的像素矩陣分布,圖7依次從圖像塊A相鄰的幾個(gè)微透鏡構(gòu)成的像素塊矩陣中各抽取中間一行的像素,按照?qǐng)D中Block1、Block2、Block3的排列方式構(gòu)成三行像素組矩陣,即為水平方向EPI。同理,可以得到圖8中豎直方向的EPI。將水平和垂直的EPI表示進(jìn)行連接構(gòu)成最終的EPI表示,示于圖9。
圖8 垂直方向EPI表示Fig.8 Vertical EPI sequence representation
由圖7可知,對(duì)于微透鏡陣列中的子圖像塊A,選擇其相鄰的各圖像塊中間一行像素點(diǎn),按照?qǐng)D中的順序進(jìn)行排列和拼接,構(gòu)成新的水平EPI表示。圖8選取與子圖像塊A相鄰的各圖像塊中間一列像素點(diǎn),構(gòu)成新的垂直EPI表示。
接下來(lái),需要利用圖像的EPI序列表示獲取圖像的深度估計(jì)信息。首先,引入一個(gè)差異值d,利用d值來(lái)移動(dòng)EPI序列中像素點(diǎn)的位置。EPI序列表示的第一行像素點(diǎn)不做改變,第二行像素點(diǎn)平移d,第三行像素點(diǎn)平移2d,以此類(lèi)推(本文中只對(duì)三行做位移)。因此,得到一個(gè)平移后的EPI序列。然后,計(jì)算每一列重合像素的方差之和,具體計(jì)算如公式(2)所示,改變d值的大小,尋找方差值最小時(shí)對(duì)應(yīng)的d值為d′,如公式(3)所示,此時(shí),d′為微透鏡子圖像A的深度估計(jì)值;最后,遍歷每一個(gè)微透鏡子圖像,得到各個(gè)子圖像的d′值形成的深度信息矩陣D。
(2)
(3)
公式(2)中j為EPI序列中像素點(diǎn)所在的列。
圖9 最終的EPI序列表示Fig.9 Final EPI sequence representation
本文使用java語(yǔ)言實(shí)現(xiàn)上述第1節(jié)中的兩種深度估計(jì)算法,兩種算法的結(jié)果均由一個(gè)矩陣展示。傳統(tǒng)的深度估計(jì)算法獲取深度信息時(shí)得到的矩陣為K,該方法是從相鄰圖像塊間的相關(guān)度方面進(jìn)行考慮;快速EPI全光相機(jī)獲取深度信息的方法得到的矩陣為D,該方法從方差的角度分析并獲取每一列像素點(diǎn)的方差,然后選取方差最小值對(duì)應(yīng)的d,其含義是從相鄰的圖像塊中尋找差異最小(即偏離程度最小)值。通過(guò)比較兩種算法分別得到的矩陣K和D,來(lái)衡量方法對(duì)圖像縱向分辨率的影響程度。
本文以光場(chǎng)相機(jī)捕獲的圖像圖2為研究示例,通過(guò)圖像的初步處理得到圖2所示重組后的圖像,在圖3的基礎(chǔ)上,分別用傳統(tǒng)的深度估計(jì)算法獲取深度信息和快速EPI獲取深度信息算法得到各自對(duì)應(yīng)的深度信息矩陣K和D。兩種方法的實(shí)驗(yàn)結(jié)果列于表1。將傳統(tǒng)的深度估計(jì)算法簡(jiǎn)稱(chēng)為算法1,快速EPI獲取深度信息的方法簡(jiǎn)稱(chēng)為算法2。
表1 算法1和算法2獲取的深度信息矩陣結(jié)果Table 1 Depth information matrix results obtained by Algorithm 1 and Algorithm 2
由表1的圖像深度信息計(jì)算結(jié)果可知,算法1由于是相關(guān)度結(jié)果,因此范圍在0~1之間,整體的相關(guān)度結(jié)果比較離散,表示與各個(gè)圖像塊最相關(guān)的相關(guān)系數(shù)值;算法2得到的為差異值d′的分布結(jié)果,但是,從結(jié)果D可以看出深度信息均集中在d′為74的鄰近值。
兩種深度信息獲取算法都是通過(guò)獲取圖像的深度值,衡量圖像的三維信息。圖像的深度范圍一般比較廣,這樣才能充分體現(xiàn)圖像的縱向分辨率,并且為后期全聚焦圖像確定良好和健壯的深度估計(jì)[7]。結(jié)果值波動(dòng)越小,說(shuō)明該圖像的深度值相差不大,不能很好的體現(xiàn)圖像的縱向分辨率。
從算法的原理角度進(jìn)行分析,我們發(fā)現(xiàn)算法2在深度信息獲取過(guò)程中,首先對(duì)圖像的EPI序列表示進(jìn)行位移變化,然后再計(jì)算每個(gè)重疊列的方差和,選擇最小方差對(duì)應(yīng)的d值。每次循環(huán)d的過(guò)程中,由于EPI序列長(zhǎng)度較短,并且序列中的像素值較大,因此方差和的變化很微小,導(dǎo)致最終d值相差較小,而且在d臨近末端時(shí),由于像素值變少,使得方差更容易最小。因此,從原理的角度考慮,算法1在圖像范圍較小的情況下也能獲得高的縱向分辨率,然而,算法2需要在圖像分布范圍較廣的情況下才能發(fā)揮其算法的優(yōu)勢(shì)。
從算法獲得的結(jié)果進(jìn)行分析,表1中兩種算法的結(jié)果可以得知,算法1獲得子圖像塊的相關(guān)度值反映深度信息,矩陣K中各個(gè)相關(guān)度值k比較離散,可以較充分的反映圖像的深度信息,因而對(duì)圖像的縱向分辨率影響更大;然而,算法2得到的d′值差異較小,這樣很難展現(xiàn)出圖像的深度信息。
在三維劑量測(cè)量系統(tǒng)中,質(zhì)子或重離子在組織等效閃爍材料中沉積能量產(chǎn)生閃爍光,且產(chǎn)生的閃爍光的量與質(zhì)子或重離子所沉積的能量成正比。且能量以布拉格峰的形式沉積,產(chǎn)生的光分布的橫向分布較窄。在此種情況下,傳統(tǒng)的深度估計(jì)算法獲得圖像的縱向分辨率更好,因此,傳統(tǒng)的深度估計(jì)算法更適用于質(zhì)子或重離子放射治療過(guò)程中的三維劑量測(cè)量。
光場(chǎng)相機(jī)突破了傳統(tǒng)相機(jī)記錄三維場(chǎng)景的不完備性[10],相較于其他成像裝置而言,采集方式便捷,獲取的光場(chǎng)數(shù)據(jù)精確,這使得本文的圖像采集工作順利開(kāi)展。在三維劑量測(cè)量系統(tǒng)中,通過(guò)光場(chǎng)相機(jī)獲得閃爍光的平面分布圖像,然后利用兩種深度信息獲取算法挖掘圖像中的三維信息,分析和比較兩種深度估計(jì)算法對(duì)圖像縱向分辨率的影響,由于質(zhì)子或重離子在組織等效的閃爍材料中以布拉格峰形式進(jìn)行能量沉積,使得光的橫向分布較窄,傳統(tǒng)的深度估計(jì)算法能夠針對(duì)該問(wèn)題得到較高的圖像縱向分辨率。而快速EPI深度估計(jì)算法邏輯結(jié)構(gòu)更簡(jiǎn)單,更適合于圖像分布范圍較大的應(yīng)用場(chǎng)合。