毛 巖,燕 展,劉新蕾,荊 濤,黃應清,蔣曉瑜,閆興鵬
(陸軍裝甲兵學院 信息通信系,北京100072)
集成成像三維顯示具有穩定性高、實現成本較低、不受外界光照干擾、便于研發和實際應用等優點,其不需要佩戴設備就能觀看全視差、彩色、視點無跳變的三維場景[1],也不需要相干光源就可以實現多人觀看。
集成成像系統中使用的透鏡陣列,通常有微透鏡陣列和宏透鏡陣列。微透鏡陣列透鏡間距通常小于3 mm,在集成成像中應用廣泛。因此,關于集成成像中微透鏡陣列的相關研究[2-4]較多。然而,微透鏡陣列視場角非常有限,一旦超出有效視場角,將會產生視區跳變,這表明使用微透鏡陣列難以實現精確的大幅面集成成像三維顯示。隨著研究的不斷發展,越來越多的研究人員開始在大幅面集成成像系統中使用宏透鏡陣列。宏透鏡陣列一般是通過機械方式內嵌在硬質基板上,其優點是成本低、制作工藝成熟,可以實現大幅面、寬視場角的集成成像顯示,不足是安裝或使用造成的位置誤差較大。因此,為獲得更好的顯示效果,需要對宏透鏡陣列的位置誤差進行度量與校正。
2004 年,Arai 等人[5]分析了單元透鏡位置誤差作用下單元圖像再現的局部和全局誤差。同年,Heejin Choi 等人[6]提出了一種使用階梯透鏡陣列(SLA)或復合透鏡陣列(CLA)的方法,從而增加了重建圖像的深度,隨后又在2014 年,提出了一種使用偏移透鏡陣列和垂直柵欄提高三維圖像質量的新技術[7],所提出的系統適合于實現具有高像素密度的平鋪整體浮動顯示器。2016 年,Jae-Young Jang 等人[8]設計了一種新的深度優先集成成像系統,該系統的透鏡陣列由3 個子透鏡配置組成,并引入了一種新的子像素重排算法,減少了三維圖像的彩色偽影。同年,Song Min-Ho 等 人[9]設 計 了 一 種 自 適 應 透 鏡 陣列,該陣列由多個以彎曲形狀排列且曲率半徑可調的平面透鏡陣列組成,可以解決使用曲面透鏡陣列時出現的間隙不匹配問題。在國內,2017年,北京郵電大學的高鑫等人[10]提出了一種360°光場三維顯示系統,得出了像素、三維物體和觀看位置之間的映射關系,并將“基本像差理論”和“阻尼最小二乘法”用于光學分析和透鏡設計,有效地抑制了像差。2018 年,楊神武等人[11]借助LED 面板(尺寸為3 840 像素×2 160 像素),展示了基于非球面透鏡陣列和全息功能屏的大規模水平光場顯示器,其可以顯示高質量的三維圖像。同年,郭敏[12]提出了基于膠合透鏡陣列的集成成像顯示方法,增加了透鏡陣列搭建的靈活性,并構建了采集圖像與立體元圖像之間的光學映射模型,從實現機理上解決了深度反轉問題。2019 年,閆興鵬等人[13]研究了宏透鏡陣列橫向位置誤差,通過LCD 平面上像素與透鏡陣列中透鏡中心實際位置的連線,重構實際光線與研究平面的交點。2020 年,文軍等人[14]比較了矩形排列的透鏡陣列和六邊形排列的透鏡陣列的視點數量和每個視點的分辨率,研究表明后一種透鏡布置可以提高視點圖像的分辨率,而不會明顯降低視點的數量。同年,王悅迪等人[15]設計了一種基于雙凸透鏡陣列和全息功能屏的光場顯示系統,該系統可以再生具有大水平視角和高視角的高視點密度三維光場。系統中引入了雙凸透鏡陣列,以擴展關鍵的水平視角并改善立體感。2021 年,燕展等人[16]提出采用散斑面積來度量宏透鏡陣列軸向位置誤差,并對宏透鏡陣列軸向位置誤差提出了補償的方法。
現有研究表明,在集成成像系統中采用宏透鏡陣列,重構光場方向性信息依賴于宏透鏡陣列與基元圖像的相對位置關系。如圖1(a)所示,宏透鏡陣列規則排布,相鄰單元透鏡之間間距相等,為理想值pD。任意單元透鏡與LCD 之間的距離相同,為理想值g,此時沒有位置誤差。然而,實際上,因為安裝和操作,透鏡陣列不可避免地產生位置誤差。圖1(b)中,宏透鏡陣列在垂直于LCD 平面的方向上存在位置誤差,單元透鏡Ln-1、Ln+1到LCD 平面的距離分別為g+Δn-1、g+Δn,與理想值g存在誤差,定義這類誤差為軸向位置誤差。圖1(c)中,宏透鏡陣列在平行于LCD 平面的方向上存在位置誤差,單元透鏡Ln-1和Ln、Ln和Ln+1之間的間 距分別為pD+Δdn-1、pD+Δdn,與理想值pD存在誤差,定義這類誤差為橫向位置誤差。

圖1 宏透鏡陣列的空間位置誤差示意圖。(a)沒有位置誤差;(b)軸向位置誤差;(c)橫向位置誤差。Fig.1 Schematic diagram of spatial position error of macro lens array.(a)Free position error;(b)Axial position error;(c)Lateral position error.
在理想情況下,宏透鏡陣列無位置誤差表征如圖2 所示,以透鏡陣列局部為例,理想的顯示端透鏡中心位置分別為a、b、c,以點b 為原點O,分別以平行于透鏡陣列行、列方向為X、Y軸,以垂直透鏡陣列方向為Z軸,建立空間直角坐標系,透鏡陣列行、列間距為w、l,透鏡陣列、LCD 所在平面深度為0、z1。LCD 平面上D、E、F 三點經過對應的透鏡中心a、b、c,在中心深度平面上形成重構點R。

圖2 宏透鏡陣列無位置誤差表征Fig.2 Free position error characterization of macro lens array
假設原透鏡陣列中心a、b、c坐標為(xa,ya,0)、(xb,yb,0)、(xc,yc,0),則存在以下關系:
xa=xb=0,xc=l, (1)
ya=w,yb=yc=0 . (2)
假設空間任一重構點R 坐標為(xR,yR,zR),則直線aR的參數方程可以表示如下:

同理可得直線bR、cR的參數方程。記直線aR、bR、cR分別與LCD 平面相交于點D(xD,yD,z1)、E(xE,yE,z1)、F(xF,yF,z1),其對應直線參數方程的參數分別為s1、s2、s3,則存在以下關系
z1=zR+zR×s1=zR+zR×s2=zR+zR×s3. (4)
由公式(4)可得,s1=s2=s3。由此,可求出點D、E、F 對應坐標。實際情況下,顯示過程中宏透鏡陣列軸向位置誤差表征如圖3 所示。只考慮軸向位置誤差,即透鏡陣列中心只在垂直于LCD 平面的方向上存在位置誤差時,點D、E、F發出的光錐將不在深度平面上匯聚,即點D、E、F發出的光錐經過透鏡陣列上有偏差的實際透鏡A、B、C,分別與點R 所在深度平面相交于點d、e、f。顯然,線段dR、eR、fR的平均值和方差越大,軸向位置誤差越大,因此可以用線段dR、eR、fR的平均值和方差來度量透鏡陣列軸向位置誤差。

圖3 宏透鏡陣列軸向位置誤差表征Fig.3 Axial position error characterization of macro lens array
記透鏡陣列中心實際點A、B、C 坐標為(xA,yA,zA)、(xB,yB,zB)、(xC,yC,zC),則
xA=xB=0,xC=l, (5)
yA=w,yB=yC=0 . (6)
直線AD的參數方程為

同理可得直線BE、CF的參數方程。直線AD、BE、CF與 點R 所 在 深 度 平 面 相 交 于 點d(xd,yd,zd)、e(xe,ye,ze)、f(xf,yf,zf),其 對 應 直線參數方程的參數分別為t1、t2、t3。因為點d 在點R 所在深度平面上,故有
zd=ze=zf=zR. (8)
結合公式(7)和(8),可以求得t1,從而得到點d 坐標。同樣地,可以得到點e、f 坐標,記線段dR、eR、fR的距離分別為d1、d2、d3,則

同理可得d2、d3,記線段dR、eR、fR的平均值分別為davg,則

對應的方差dvar為

實際情況下,顯示過程中宏透鏡陣列橫向位置誤差表征如圖4 所示。只考慮橫向位置誤差,即透鏡陣列中心只在平行于LCD 平面的方向上存在位置誤差時,點D、E、F 發出的光錐經過透鏡陣列上有偏差的實際透鏡A、B、C,分別與點R所在深度平面相交于點d、e、f。同樣地,線段dR、eR、fR的平均值和方差越大,橫向位置誤差越大,因此仍可以用線段dR、eR、fR的平均值和方差來度量透鏡陣列橫向位置誤差。

圖4 宏透鏡陣列橫向位置誤差表征Fig.4 Lateral position error characterization of macro lens array
記透鏡陣列中心實際點A、B、C 的坐標為(xA,yA,zA)、(xB,yB,zB)、(xC,yC,zC),則
zA=zB=zC=0 . (12)
橫向位置誤差分析過程與軸向位置誤差分析時基本一致,通過直線AD、BE、CF的參數方程,分別用參數t1、t2、t3表示點d、e、f 坐標,因為點d、e、f 在點R 所在中心深度平面上,結合公式(7)和(8),可以求得t1,從而得到點d 坐標。同樣地,可以得到點e、f 坐標,從而得到線段dR、eR、fR距離d1、d2、d3,根據公式(10)和(11),最終求得線段dR、eR、fR的平均值davg和對應的方差dvar。
集成成像顯示時,全息功能屏可以用來接收所成的像,通過調整全息功能屏的位置來測量軸向位置誤差。如圖5 所示,以LCD 平面上點o 為原點,過LCD 平面且垂直于透鏡主光軸所在直線為x軸,平行于透鏡主光軸所在直線為z軸,透鏡中心與LCD 顯示屏的理想軸向距離為g,實際軸向距離為gr。單元透鏡中心橫向坐標為d,選取其所對應的基元圖像中心上方某一像素,像素中心的x坐標為xS,調整全息功能屏,使得像素在全息功能屏上成像,且像的底部落在z軸上,此時全息功能屏與LCD 顯示屏的軸向距離分別為l。

圖5 透鏡陣列中單元透鏡軸向位置測量示意圖Fig.5 Schematic diagram of measuring unit lens' axial position in lens array
根據幾何關系,透鏡的軸向位置可表示為

利用公式(13)即可獲得實際的軸向位置。對于每個單元透鏡,都通過調整全息功能屏,從而實現宏透鏡陣列軸向位置誤差的測量。在對軸向位置誤差測量的基礎上,對其進行校正。當獲得單元透鏡中心實際位置與LCD 平面的軸向位置gr后,軸向位置誤差可以通過重排單元透鏡對應的基元圖像像素點位置的方式進行校正。如圖6 所示,虛線透鏡為理想透鏡位置,實線透鏡為實際透鏡位置,重構像點R 坐標為(xR,zR)。理想情況下對應的像素與單元透鏡Ln-1中心的橫向距離為Δxideal,為確保像素仍能在點R 成像,該像素經過校正后與單元透鏡Ln-1中心的橫向距離為Δxcorrect。

圖6 軸向位置誤差校正原理Fig.6 Principle of axial position error correction
根據幾何關系,此時存在以下關系:

當透鏡中心理想位置所在平面與重構點的距離較大且遠大于透鏡陣列的軸向位置誤差,即zR?g-gr時,則公式(14)可以簡化為:
此時,軸向位置誤差的校正與重構點所在位置無關,僅與單元透鏡中心理想位置、實際位置與LCD 平面的軸向位置有關。記理想像素在該基元圖像中序號為i,校正后像素在該基元圖像中序號為j,每個基元圖像的像素個數為n,根據公式(15),可得

結合上述對單元透鏡橫向位置誤差顯示過程分析,仍然通過調整全息功能屏的位置來測量橫向位置誤差。當全息功能屏在不同深度位置移動時,像的位置將會發生變化。這里,因為像素的間隙被放大,所以不同像素能夠辨認。因此,可以通過像的位置變化測量透鏡陣列橫向位置誤差。
如圖7 所示,透鏡陣列與LCD 顯示屏的軸向距離為g;與全息功能屏位置1 和位置2 的軸向距離分別為l1、l2;選取合適數量像素,μ為像素間隔大小,n為像素的間隔數量。當全息功能屏放置在位置1 時,一定數量像素在全息功能屏上成像。調整全息功能屏于位置2 處,使得這些像素在全息功能屏上成像,且像的底部落在z軸上,底部像素的橫向位置變化為Δsbottom,單元透鏡橫向位置坐標為d,由此,透鏡橫向位置可表示為

圖7 透鏡陣列中單元透鏡橫向位置測量示意圖Fig.7 Schematic diagram of measuring unit lens' lateral position in lens array

利用公式(17),即可獲得實際的橫向位置,從而可以實現宏透鏡陣列橫向位置誤差的測量。在對橫向位置誤差測量的基礎上,對其進行校正。當獲得單元透鏡的橫向位置d后,可以按照理想重構點位置和真實橫向位置得到正確的像素位置,因此,橫向位置誤差可以通過重排對應的基元圖像像素點位置的方式進行校正。如圖8所示,理想情況下對應的像素橫向坐標為xideal,為確保像素仍能在點R 成像,該像素經過校正后的橫向坐標應為xcorrect。

圖8 橫向位置誤差校正原理Fig.8 Principle of lateral position error correction
根據幾何關系,此時存在以下關系:

當透鏡中心理想位置所在平面與重構點的距離較大且遠大于透鏡陣列與LCD 平面的距離,即zR?g時,則公式(18)可以簡化為:
xcorrect=d-dideal+xideal. (19)
此時,橫向位置誤差的校正與重構點所在位置無關,僅與單元透鏡的橫向位置有關,這使得校正更加簡單。記理想像素在該基元圖像中序號為i,校正后像素在該基元圖像中序號為j,像素大小為μ,根據公式(19),可得

根據公式(20)可以發現,理想像素在該基元圖像中序號i和校正后像素在該基元圖像中序號j呈線性關系,也就是說,對于同一基元圖像,只要將其像素移動相同的橫向距離,就可以實現橫向位置誤差的校正。
結合下步實驗所用裝置參數,對宏透鏡陣列軸向位置誤差下的距離的平均值和方差進行仿真。透鏡陣列行間距和列間距相等,記為pD,理想情況下LCD 到透鏡陣列中心所在平面距離g=-z1=11.5 mm。以單元透鏡b 作為參考,單元 透 鏡a、c 的 誤 差 分 別 為Δg1、Δg2,其 范 圍都為[-0.1g,0 .1g]。
如圖10 所示,水平、垂直方向代表的物理含義不變,距離的方差用顏色表示,每幅圖像中顏色代表的數值仍由圖像右側的圖例給出。同樣地,每幅圖像高度對稱。觀察每幅圖像的中心,發現當都為0 時,即沒有軸向位置誤差時,距離的方差為0,與理想情況一致。在參考透鏡視場角范圍內,比較圖10(a)和(b),在相同的軸向位置誤差下,重構點在X方向上越偏離參考透鏡,距離的方差越大,即受到的影響越大,結論在圖10(c)和(d)上也得到了驗證;同樣地,比圖10(a)和(c),在相同的軸向位置誤差下,重構點在Y方向上越偏離參考透鏡,距離的方差越大,即受到的影響越大,結論在圖10(b)和(d)上也得到了驗證;比較圖10(a)和(e),在相同的軸向位置誤差下,重構點在Z方向上越偏離參考透鏡,對應的距離方差越小,即受到的影響越小,結論在圖10(d)和(h)、(f)和(g)上也得到了驗證;比較圖10(a)和(f)、(e)和(g),在相同的軸向位置誤差下,透鏡陣列中單元透鏡間距pD越大,對應的距離方差越小,即受到的影響越小;而在圖10(d)和(i)中,結論剛好相反,在相同的軸向位置誤差下,透鏡陣列中單元透鏡間距pD越大,對應的距離方差越大,即受到的影響越大,同樣表明單元透鏡間距pD對距離平均值的影響是復雜的,不存在簡單的正相關或者負相關關系。

圖10 不 同 參 數 下,距 離 的 方 差(單 位 為mm)。(a)(xR,yR,zR,pD)=(50,50,100,12.6);(b)(xR,yR,zR,pD)=(0,50,100,12.6);(c)(xR,yR,zR,pD)=(50,0,100,12.6);(d)(xR,yR,zR,pD)=(0,0,100,12.6);(e)(xR,yR,zR,pD)=(50,50,200,12.6 );(f)(xR,yR,zR,pD)=( 50,50,100,25.2 );(g)(x R,yR,zR,pD)=( 50,50,200,25.2 );(h)(xR,yR,zR,pD)=( 0,0,200,12.6 );(i)(x R,yR,zR,pD)=( 0,0,100,25.2 )。Fig.10 Aariance of distance under different parameters(mm).(a)(xR,yR,zR,pD)=(50,50,100,12.6);(b)(xR,yR,zR,p D)=(0,50,100,12.6);(c)(xR,yR,zR,pD)=(50,0,100,12.6);(d)(xR,yR,zR,pD)=(0,0,100,12.6);(e)(xR,yR,zR,pD)=(50,50,200,12.6);(f)(xR,yR,zR,pD)=(50,50,100,25.2);(g)(xR,yR,zR,pD)=(50,50,200,25.2);(h)(xR,yR,zR,pD)=(0,0,200,12.6);(i)(xR,yR,zR,pD)=(0,0,100,25.2).

宏透鏡陣列橫向位置誤差涉及X、Y兩個方向。如果X、Y兩個方向都有誤差,則引入的變量較多。因此,仿真分析時,可只在其中一個方向產生誤差,具體分析過程與軸向位置誤差相似,這里不再討論。
通過上面分析,可知宏透鏡陣列橫向位置誤差校準較為簡單,對于同一基元圖像,只要將其所有像素移動相同的橫向距離,就可以實現橫向位置誤差的校正。顯示系統裝置如圖11 所示,其由LCD 屏、宏透鏡陣列和全息功能屏組成,LCD顯示屏分辨率為3 840×2 160,其像素尺寸為0.072 mm,宏透鏡陣列呈矩形排布,13 行22 列,宏透鏡陣列中單元透鏡半徑為5 mm,焦距為10 mm,上下、左右間距都為12.6 mm,視場角為60°,LCD 顯示屏與宏透鏡陣列中心所在平面的軸向距離理想值為11.5 mm。

圖11 顯示系統裝置Fig.11 Display system device
實驗中,將基元圖像中心“+”字點亮,“+”字成規則排布,按照上述方法進行顯示,計算宏透鏡陣列中各單元透鏡的橫向位置,從而得到宏透鏡陣列橫向位置誤差。隨后,利用所提方法對宏透鏡陣列橫向位置誤差進行校正,并通過對比校正前后的三維再現效果進行驗證。觀察校正前和校正后的三維再現效果(圖12),沒有校正橫向位置誤差時的顯示效果如圖12(a)所示,利用所提方法進行橫向位置測量和補償后的顯示效果如圖12(b)所示??梢钥闯?,校正前,由于橫向位置誤差的存在,再現圖像中“+”字排列不再規則,局部成像位置甚至產生嚴重的畸變,而校正后,再現圖像中“+”字排列較為規則,緩解了橫向位置誤差所引起成像位置的畸變。

圖12 橫向位置誤差對比。(a)校正前;(b)校正后。Fig.12 Comparison of lateral position errors.(a)Befor ecorrection;(b)After correction.
下面進行宏透鏡陣列軸向位置誤差校正實驗。實驗中,同樣將基元圖像中心“+”字點亮,“+”字成規則排布,按照上述方法進行顯示,計算宏透鏡陣列中各單元透鏡的軸向位置,從而得到宏透鏡陣列軸向位置誤差。設置的虛擬相機陣列大小為77×77,總體成正方形排列,相鄰相機間距4 mm,相機視場角為60°,采集相機拍攝圖片的像素分辨率為501×501。設置的虛擬場景由半徑為10 mm 的排球組成,排球表面為紅、黃、藍相間的塊狀拼接而成,場景正面圖像如圖13 所示。

圖13 虛擬場景正面圖像Fig.13 Frontal image of virtual scene
排球中心距離虛擬相機陣列所在平面為160 mm。運用SPOC 算法合成新的基元圖像陣列時,參考面設置距離拍攝陣列160 mm 處,即排球中心所在位置。將合成的基元圖像陣列進行三維再現,觀察校正前和校正后的三維再現效果(圖14),沒有校正誤差時的顯示效果如圖14(a)所示,利用所提方法進行軸向位置測量和補償后的顯示效果如圖14(b)所示??梢钥闯觯U?,由于軸向位置誤差的存在,再現的排球形狀出現了一定畸變,且塊間的分界線模糊不清,出現重影;而校正后,再現的排球形狀更圓潤,與模型更為相似,并且塊間的分界線較為清晰,重影現象得到了緩解。

圖14 軸向位置誤差對比。(a)校正前;(b)校正后。Fig.14 Comparison of axial position errors.(a)Before correction;(b)After correction.
本文分析了宏透鏡陣列位置誤差對集成成像顯示效果的影響,針對宏透鏡陣列位置誤差,將其分為軸向位置誤差和橫向位置誤差。選擇透鏡陣列局部,光線從該局部透鏡陣列中各單元透鏡對應的基元圖像像素出發,經過各單元透鏡中心,在空間中匯聚于一點。當存在位置誤差時,這些像素將在其他點處成像,本文通過重構點到這些點的距離的平均值和方差來度量位置誤差,從而實現了對宏透鏡陣列位置誤差的表征。其次,通過移動全息功能屏來變化像的位置和大小,實現了對宏透鏡陣列軸向位置和橫向位置的測量,將其與理想軸向位置和橫向位置作差,從而實現了對宏透鏡陣列軸向位置誤差和橫向位置誤差的測量。接著,分析了宏透鏡陣列軸向位置誤差和橫向位置誤差下,理想像素序號與校正后的補償像素序號之間的關系,實現了宏透鏡陣列位置誤差的校正。最后,通過仿真對宏透鏡陣列位置誤差進行了度量,并通過實際顯示效果驗證了校正方法的有效性。