郭 旭,涂紹平,徐 蕾
(上海中車艾森迪海洋裝備有限公司,上海 201306)
全景很早就出現(xiàn)在藝術作品中,用于表達內容繁多、事物連貫的宏大場景,譬如兩宋山水畫[1]。搖頭式全景雛形出現(xiàn)在19世紀中期,反射式全景在生活中較早在20世紀初通過使用后視鏡實現(xiàn),用于代替賽車的安全員,之后在各種交通運載工具上普及[2]。19 世紀60年代,計算機技術的出現(xiàn)使得三維建模和數(shù)字圖像處理成為可能;真正將全景推廣開來是等到21世紀數(shù)碼相機普及后,人們可以通過數(shù)字信號來處理圖像,完成多幅圖像拼接,這才實現(xiàn)真正意義上的360°全景[3]。目前全景技術在直播、虛擬現(xiàn)實、交通運輸?shù)阮I域熱度高,隨著計算機視覺技術、信號處理技術的不斷發(fā)展,360°全景所呈現(xiàn)的視覺信息越來越完善,無死角的全景攝像系統(tǒng)將推廣應用到許多領域。目前,陸地有成熟的全景產品,如全景相機、車載全景攝像;但水下場景的全景產品主要在水產養(yǎng)殖領域有成熟的應用[4],而在超過300 m的深水區(qū)域則鮮有使用。
對于水下攝像,最早產品為19世紀50年代的防水照相機;19世紀90年代末,配套水下閃光設備的防水相機成功獲取了50 m水深的照片[5]。后續(xù),隨著海洋經濟發(fā)展、科研項目落地,海底觀測帶來了深海光學成像系統(tǒng)的資金投入。如今,具備研制深海攝像產品能力的大型公司有美國的DP&light(Deepsea Power &Light)、挪威的Kongsberg、加拿大的SubC Imaging,這些機構生產的深海攝像產品可被裝載在潛水器上進行觀測、記錄及探索海洋。如,HUGIN高級自主水下潛航器搭載了Kongsberg 公司自身的深海超高清相機[6]。相對激光、聲吶等掃描成像,鏡頭的凝視感光成像更容易被人的視覺所理解,水下遙控機器人(remotely operated vehicle,ROV)的全景攝像系統(tǒng)可以很好地幫助領航員、海底工作人員等去實時了解ROV周邊的水域信息。
全景圖像一般不能直接由單鏡頭獲取。短焦鏡頭有更大的視角,能達到120°;再配合前彎月鏡片作成魚眼鏡頭,視場角度一般能超過180°。為了能實時得到360°全景圖像,至少需要2 個魚眼鏡頭或更多的廣角鏡頭,然后將多鏡頭攝像系統(tǒng)所獲得的包含重疊視角的多幅圖像拼接為一幅“無縫”圖像,實現(xiàn)全景[7]。為了將水下ROV的全景圖像傳回船上設備,需要很高的傳輸帶寬,比如傳輸H.264編碼的4K@30fps視頻需要占用約50 Mbit/s 的帶寬。由于帶寬還會被其他控制、測量信號占用,因此,全景攝影系統(tǒng)需要在保證質量的同時縮減帶寬,其中一個可行的方法是裁剪畫面[8]。一套水下ROV 平臺的全景設攝像系統(tǒng)需要多路不同視角相機,先經拼接算法生成全景畫面;再經合適的壓縮、視窗裁剪生成120°寬幅攝像,以較低的帶寬傳輸給領航員。從水下生成到水面顯示,全景系統(tǒng)都有復雜的構成及處理方式。鑒于此,本文從總體著手,介紹全景系統(tǒng)各部分當前的主流技術和產品,說明ROV平臺全景攝像系統(tǒng)的研究現(xiàn)狀。
ROV 平臺全景攝像系統(tǒng)可分為硬件和軟件兩部分。其中,硬件方面主要是考慮攝像頭及燈陣數(shù)量、空間布局、規(guī)格參數(shù);軟件方面則是完成多路圖像處理、全景合成及上位機功能的實現(xiàn)。整個系統(tǒng)由照明系統(tǒng)、相機系統(tǒng)、圖像處理系統(tǒng)和視頻傳輸系統(tǒng)組成,如圖1所示。本文主要介紹全景攝像系統(tǒng)的硬件、圖像處理及視頻傳輸?shù)能浖糠?,相機系統(tǒng)硬件有感光元件、鏡頭等重要單元,圖像處理數(shù)據(jù)有分門別類的處理算法和傳輸協(xié)議。
圖1 ROV 平臺全景攝像系統(tǒng)分解Fig.1 Breakdown view of panoramic camera system on ROV platform
相機是水下常見的感知硬件。光感相機采用玻璃窗口,考慮深海相機的硬度和強度,一般選擇藍寶石視窗。對于廣角需求和水中1.33高折射率,視窗更多選擇球面。國際上可以供應深海相機的廠商近來變化不大,表1示出常規(guī)的深海相機設備[9]。
表1 國際高品質深海相機性能Table 1 Performance of international top quality deep-sea cameras
傳統(tǒng)的相機布局是前后兩路,能基本滿足ROV行駛方向上的環(huán)境分辨。為實現(xiàn)ROV環(huán)視,還需增加左右兩路,或是繼續(xù)增加上下兩路。這樣不僅要增加相機數(shù)量,還要約束這些相機的相對位置,盡可能讓兩兩相機的光軸重疊或相交適當角度,方便后續(xù)的圖像處理[10]。
上述四周布局的多路相機系統(tǒng)是針對中大型箱式載運工具,避免了自身遮擋相機的情況。對于小型或不規(guī)則載運工具或是靜態(tài)攝像,一體集成的陣列相機則是最方便的相機布局方式。多路相機的兩種布局方式如圖2所示。
圖2 多路相機的兩種布局Fig.2 Two layouts for multiple cameras
單個相機之間無直接物理連接約束的全景布局方案被稱為分布式全景相機,其需要根據(jù)具體的運載平臺來確定相機各自的安裝位置。對于箱式運載平臺,相機可被安裝在4個側面的表面上;對于長側面,則需要放置多個相機[11]。
分布式相機的每個鏡頭都配有主板,有獨立的IP通信,即可以單獨啟用一個相機來傳輸一路畫面。雖然硬件成本高,但可以在空曠等特定場景下僅開啟少量相機,降低算力等負載。
相機規(guī)格參數(shù)主要有視場角和分辨率。如果鏡頭組的視場角在水平方向要達到360°,則可選定4 個水下110°的廣角鏡頭。為了達到畫面3 840×2 160 ppi 的分辨率,多路圖像的像素之和也需要達到800 萬像素以上,如可選定4個300萬像素的高清相機。
對于安裝位置,分布式全景相機需要約束相機系統(tǒng)所有相機的光軸在同一平面或是平行于一個平面,以方便建立系統(tǒng)的投影坐標系。因此系統(tǒng)應盡量滿足下列條件:相機型號一致,光軸投影在同一平面,光軸高度一致。水下ROV 平臺一般為規(guī)則的方形框架,適合在框架外側各個方向安裝相機。參考德國Geomer實驗室研制的深??梢暬到y(tǒng),該系統(tǒng)的全景相機模組的布置方案如圖3所示,其在前后、左右4個面的下側各安裝一個魚眼鏡頭(紅框所注)。
圖3 一種ROV 全景相機布局方案Fig.3 A layout scheme for ROV panoramic cameras
集成式全景相機是將多個鏡頭、傳感器封裝為一體式,可共用主板解算和IP 通信。相較分布式全景相機,集成式全景相機結構緊湊、價格有所降低、多鏡頭的相對位置容易確定,缺點是俯仰角會被中大型箱式載運工具的安裝平面遮擋。
集成式全景相機的各個鏡頭規(guī)格一般都相同,光軸被嚴格限制在同一個平面或圓錐面,且均勻分布。目前市場上主流產品單個鏡頭的視場角在110°左右,像素在300萬附近,圖像處理、編碼等處理單元被集成在主板上。
除了無人機上用于鳥瞰的全景相機被安裝在底部,集成式全景相機一般被安裝在頂面上,在中型運載平臺上通過頂桿拔高視野,如圖4所示。圖4(a)中,集成全景相機被安置在水下ROV的頂部中線位置;圖4(b)是配有多目相機的三維地圖街景車。
圖4 集成式全景相機布局Fig.4 Layout of integrated panoramic cameras
集成式全景相機在自媒體領域應用較廣泛[12],而在深海探索領域目前還鮮有成熟產品,相關的設計有中科院西安光學精密機械研究所的4π 視場深海相機模組以及美國巴特勒公司的360°深海相機,如圖5 和圖6所示。
圖5 4π 視場深海相機模組Fig.5 Deep-sea camera module with 4π field of view
圖6 360°深海相機Fig.6 Deep-sea camera with 360° field of view
硬件獲得的多路圖像并不能直接邊界貼合,需要將相鄰的具有部分重疊的圖像進行無縫拼接、融合,才能生成一張360°視角的全景圖像。早在1986 年,Haywood[13]通過水下攝像頭的精確相對位置來確定獲取的兩幅圖像之間的空間坐標關系,然后直接拼接圖像??紤]相機位姿的估計誤差偏大,拼接前可引入圖像視覺信息的邊緣配準,以改善拼接效果[14]。圖像拼接技術在水下裝備領域已有應用[15-16],拼接的關鍵是圖像配準和圖像融合。配準是尋找兩幅圖像之間的對準關系,融合是消除拼接間隙并平滑過渡。圖像拼接基本流程是圖像預處理、圖像配準、坐標變換和圖像融合,如圖7所示。
圖7 圖像拼接流程Fig.7 Process of image stitching
物景是通過相機將三維空間的點映射到二維空間所得的圖像,由于相機的安裝設計(透鏡和成像面不平行)會存在誤差,那么同一物景通過不同位置的相機所生成的圖像會存在較大差異,如縮放程度、傾斜度、方位角及高度。這些物理差異會影響后續(xù)配準的效果,因此圖像預處理是圖像拼接前重要的步驟。
一般,針對相機本身成像的圖像預處理被稱為相機標定,對水霧、渾濁等環(huán)境因素的預處理是圖像復原。
3.1.1 相機標定
相機標定是為了標定好成像參數(shù),包括自身的內參(焦距、畸變系數(shù))及相對位置的外參(世界坐標系到相機坐標系的旋轉平移矩陣)。對于獨立的單個相機,只需標定內參,外參則是為了確定相機之間的位置關系。通過內、外參數(shù)可以確定世界坐標系到像素坐標系的投影矩陣,這些坐標系的關系如圖8所示。相機需要通過實際特征物的成像實驗進行標定,方法有直接線性標定、兩步標定和張正友標定[17]。特征物通常是規(guī)格已知的黑白棋盤方格,如圖9所示。
圖8 相機坐標系關系示意Fig.8 Relationship between coordinate systems related to cameras
圖9 標定方格Fig.9 Checkerboard for calibration
3.1.2 圖像復原
圖像的成像過程是光線經過物體反射后到達相機后再成像。良好的天氣、光線等環(huán)境下成像真實;相反,霧雨渾濁環(huán)境會使得圖像信息錯誤或者缺失,稱之為圖像退化。在水下ROV成像過程中,水介質、懸浮顆粒對光線有比較嚴重的吸收和散射效應,會造成光線強度的衰減和光傳播方向的改變,典型的影響是水下圖像普遍呈現(xiàn)青色[18]。為了提高圖像的真實度,需要針對圖像的退化原因進行補償,即利用圖像退化的逆過程去恢復原始圖像。圖像復原方法分為3種,包括基于多圖像及特殊硬件的復原方法、基于先驗信息的復原方法和基于卷積神經網絡的復原方法。按照McGlamery建立的光學成像模型[19],退化過程可被簡化為線性疊加,即退化函數(shù)與特殊噪聲的疊加。退化函數(shù)可以通過符合先驗知識的 “真實”圖像與退化圖像的頻域比值、場景的頻域模型等方法估計;特殊噪聲按照可能存在的噪聲類型(高斯噪聲、瑞利噪聲等)進行相應的濾波。
圖像配準是找到待拼接圖像和參考圖像之間重疊部分的對準關系,即將兩幅圖像中對應于空間同一位置的點一一對應起來。圖像配準的算法主要分3類:基于灰度和模板的配準、基于特征的配準及基于頻域變換的配準。其中,基于特征的匹配方法因為運算量小、對圖像形變不敏感等優(yōu)點,在實際中應用得更為廣泛。
除了配準算法,還可以直接通過標定來確定重合的對應點,即在圖像預處理的標定過程中確定相鄰畫面的公共標定點,從而直接計算出兩幅圖像之間的尺度關系。
3.2.1 基于特征的圖像配準
基于特征的圖像配準需要圖像特征辨識度高,特征點達到一定數(shù)量且盡量均勻分布。根據(jù)所選取的特征點,可以求取圖像之間的坐標變換關系并實現(xiàn)圖像的配準。
尺度不變特征變換算法(SIFT)由Lowe在1999年提出[20],后續(xù)出現(xiàn)了較多基于該算法不變量思想的優(yōu)化算法,如SURF、PCA-SIFT、Harris-SIFT[21]等。SIFT算法根據(jù)尺度空間理論,將圖像引入不斷變化的尺度空間內,通過提取主輪廓,保證特征點的尺度無關性。特征點的篩選則是利用高斯差分尺度空間算子(difference of Gaussian,DoG)尋找出像素點鄰域內同尺度的近鄰點及相鄰尺度對應位置的像素點總計27個點的極值點,并將其作為潛在特征點加入特征集合,如圖10所示。由于水下環(huán)境的圖像普遍存在像素模糊和亮度不均等問題,基于特征的配準就需要平衡魯棒性和實時性。
圖10 高斯差分的極值檢測Fig.10 Extreme detection using DoG
3.2.2 基于標定點的圖像配準
基于水下攝像頭的精確相對位置,可以直接計算兩幅圖像的空間轉換關系。對于相對位置未知,但安裝位置固定的多個相機,可以通過相機標定確定相對位置,直接配準。譬如多相機系統(tǒng)經過黑白棋方格的標定,可以選定相鄰圖像重疊區(qū)域兩個以上的標定點及附近特征點作為配準點?;谂錅庶c位置關系,對待拼接圖像進行相應的縮放、旋轉,如圖11所示,縮放比例為標定點A、B在兩幅圖像的直線距離比值,旋轉角度為標定點在各自像素坐標的傾角差值。
圖11 標定點在相鄰視圖的位置示意Fig.11 Positions of calibration point in adjacent views
圖像通過配準關系進行初步拼接。針對特征疊加的區(qū)域,即兩幅圖像重疊部分,由于亮度、視角點的差異,簡單的疊放會使得圖像模糊、割裂,有明顯的拼接痕跡,因此需要對初步拼接的圖像進行二次圖像融合處理。
融合的目的是消除拼接痕跡,使重疊區(qū)過渡自然。為保證圖像清晰、自然,可以降低部分細節(jié)要求,即追求圖像的視覺效果,容許降低一定的真實度。根據(jù)圖像的表征層,圖像融合分為像素級融合、特征級融合和決策級融合[22-23]。像素級融合是常用的圖像融合方法,其直接對像素灰度信息進行處理,處理方法還可以進一步分為加權融合、小波融合、多分辨率融合和基于深度學習的模型訓練融合[24]。特征級融合也是需要先提取圖像輪廓、角點等特征,再基于融合規(guī)則進行融合的。決策級融合是基于特征的決策可信度進行決策融合。
常用的像素級融合方法中,加權融合具有簡單直接和運算量小的優(yōu)點,其通過提取圖像灰度信息,按照灰度值貢獻率計算權重并進行加權平均,計算公式如下:
式中:f——像素點灰度;f1——第一張圖像灰度值;f2——第二張圖像灰度值;w1,w2——權重值,區(qū)間在[0,1],且w1+w2=1。
權重值的選擇有2種方法:一種是帽子函數(shù)加權,另一種是漸入漸出。
多分辨率融合則分為兩種,即基于Laplacian金字塔和基于小波分解的融合,它們都是將圖像分解為不同分辨率,然后在低頻信息和高頻信息處分別進行融合。
水下ROV 視頻的收看者一般是位于陸地上或是船上,即原視頻經過ROV 視頻系統(tǒng)采集后,還需經過壓縮處理,然后再遠距離傳輸?shù)娇蛻舳说娘@示系統(tǒng)。全景視頻由于視場擴大到一般視頻的3到5倍,按照標清圖像的要求,分辨率需要達到4 K以上。一般視頻的幀率在30 fps,色深為8 bit,4K 全景視頻原畫的碼率是5.6 Gbit/s,在壓縮比率為100時所需帶寬為56 Mbit/s,因此,全景視頻的傳輸對帶寬資源的要求較高。球面全景視頻的像素點不均勻,也沒有對應的視頻編碼,按照全方位媒體的格式(omnidirectional media application format,OMAF),3D 畫面需要經過等距圓柱體投影(equirectangular projection,ERP)、改進的圓柱等面積投影(adjusted equal-area projection,AEP)等映射方式轉換成2D畫面,然后才能進行編碼傳輸。目前,全景視頻在流媒體傳輸領域還處于不斷完善接口協(xié)議的過程中。
當前,全景視頻主要是基于Tile 劃分的自適應多速率傳輸,該方案根據(jù)實時網絡帶寬變化,動態(tài)傳輸感興趣域(region of interest,ROI)對應的一組Tile流給用戶[25]。人的雙目視域在110°左右,傳輸ROI 是比較合理的節(jié)省硬件的策略,通過人機交互、ROI 預測,即捕捉用戶視角旋轉進行Tile流快速切換,從而節(jié)省帶寬。ROI域是完整的高碼率流,除去ROI域的其余畫面(如在ROI前后30°視場角為低碼流、偏遠角度為1幀的圖像)同樣需要及時傳輸,進而提高用戶視角快速切換的體驗。全景視頻遠距離碼率優(yōu)化傳輸系統(tǒng)如圖12 所示,基礎層為低幀率的完整全景,增強層為高碼流的多層Tile 圖像數(shù)據(jù),增強層對應的ROI 會經過運動約束分塊(motion constrained tile sets,MCTS)編碼,生成碼流,然后將兩個碼流封裝,按照HTTP 協(xié)議傳輸。碼流融合可以拼接多分辨率的視頻流,在進行子圖像碼流融合前,要初始化頭信息,碼流融合過程中將子圖像的每一幀作為最小的壓縮數(shù)據(jù)進行編碼[26]。
圖12 一種碼率優(yōu)化的全景視頻傳輸系統(tǒng)Fig.12 Panoramic video transmission system with optimized rate
全景視頻的傳輸應用場景更多是流媒體、VR等偏娛樂辦公場景,注重流暢、沉浸感等用戶體驗,而水下運載平臺的全景視頻應該是更注重傳輸過程的時延和帶寬占用。對于水下ROV全景實時性視頻的長距離傳輸,可嘗試使用UDP 無連接式的協(xié)議傳輸,編碼則考慮選擇效率更高的H.265。
本文對水下ROV 平臺的全景攝像系統(tǒng)做了清晰化的拆解介紹,包括全景相機分布式、集成式兩種布局方式、標定拼接的多路圖像處理,還有考慮帶寬資源的遠距離全景視頻傳輸。全景攝像能夠幫助駕駛員快速熟悉四周環(huán)境,提高在復雜環(huán)境駕駛的安全性,讓工作人員沉浸深海環(huán)境成為可能。目前水下全景攝像應用較少,隨著圖像處理的特征識別和復原算法等全景技術的發(fā)展以及計算效率的提高,加上水下設備的推廣應用,水下全景攝像系統(tǒng)將會有更多的研究應用。