何余海,陳小燕
(江西科技學院,江西 南昌 330098)
虛擬現實技術是通過三維圖像和視覺靈境技術實現對目標圖像的三維視景仿真與重建[1],在視景模擬和系統仿真等領域具有很好的應用前景。通過對船舶的三維重建和虛擬現實仿真設計,模擬海上船舶調度和推演[2]。
對船舶三維圖像重建中,通過視覺圖像處理和三維實體模型重組,建立船舶三維圖像重建的圖像分析模型,采用紋理映射和實體渲染技術,實現對船舶三維圖像重建處理。張顥等[3]中提出基于局部窗口K 分布的快速船舶檢測和三維檢測算法,通過最優特征融合的紋理空間映射,采用Android 系統建模下的三維視景跟蹤渲染方法,實現對船舶目標三維重建,但該方法的計算復雜度較大。王培元等[4]提出基于多尺度自適應顯著區域檢測的艦船三維重建方法,通過特征點和動態匹配和噪點及外點消除技術,提高重建精度,降低船舶三維重建的噪點干擾性,但該方法對船舶三維重建的動態特征點匹配性不好。針對當前方法存在的弊端,本文提出基于虛擬現實的船舶三維圖像重建方法。首先構建船舶三維重建的體模型結構,然后進行三維圖像渲染和實體模型構建,通過顏色、透明度和光照效果的動態渲染等技術,實現對船舶三維圖像重建優化處理。最后采用視景仿真技術進行船舶三維重建實驗測試,展示了本文方法的優越性能。
為了實現基于虛擬現實的船舶三維圖像重建,采用特征圖模型參數分析方法,構建船舶三維圖像的分類子網特征圖模型。通過對船舶表面物體的邊緣輪廓信息分析,結合輪廓跟蹤法進行輪廓提取和網格模型分析,通過構建船舶三維虛擬現實重建的OpenFlight 數據結構庫,進行多層次細節(LOD)模型參數分析[5],在圖形硬件(如SGI 工作站)中實現對圖像三維視景仿真和渲染,實現流程如圖1 所示。
圖1 船舶三維圖像重建實現結構圖Fig.1 Implementation structure of ship 3D image reconstruction
根據圖1 所示的船舶三維圖像重建實現結構圖,采用鄰域跟蹤法方法,得到初始船舶圖像,用Fm(x,y)表示;得到第m幀(x,y)處船舶圖像的像素灰度值;Bm(x,y)代表從前一幀計算的相同屬性值的數據點的集合,增強圖像輸出為:
式中:m為當前幀的船舶目標斷層序列圖像上的外部輪廓;Fi(x,y)為動態幀序列的梯度序列。當m逐漸變大時,根據斷層序列船舶圖像上的外部真實像素,采用信息素增強技術,得到增強處理后的視覺樣本序列為:
式中:λ為外部輪廓進行船舶重建的視覺均衡度;Lg(φ)為船舶SAR 圖像光照強度;v(I)為模糊匹配系數;Ag(φ)為船舶圖像檢測實體的外部表面信息,圖像梯度權系數λ,ν均為常數,且λ>0,各層圖像輪廓線之間相互收斂。
根據對圖像模型參數采集結果,結合坐標點儲存和動態參數識別,實現圖像三維重建。
在對船舶三維圖像建模的基礎上,采用虛擬現實的三維重組技術實現對船舶三維圖像重建過程中的紋理渲染和實體建模.采用輪廓線搜索的方法,得到船舶圖像的三維紋理提取公式如下:
式中:Rt為輪廓提取之后的圖像邊緣分布矩陣;Rh為船舶輪廓表面細小的多余像素點;為輪廓點在Y方向位置信息偏移信息;為輪廓點在Z方向位置信息偏移信息。
以圖像清晰度表達水平為約束對象,采用邊界紋理信息特征點檢測方法,提取輪廓點的位置信息,其公式如下:
式中:hj為能夠用來描述相鄰斷層上的輪廓灰度變化率;g(y,z,a)為船舶三維重建分支處理的拼接特征函數;Tj為對應的灰度矩陣。
式中:cq為圖像的相關特性和結構特征;yq為亞像元;z為全局特征與局部特征;j為特征點之間的歐氏距離;ρq為像素間距;φq為紋理邊界特征信息;v為復雜圖像的特征融合分量。
根據船舶三維重建長度、角度、曲率,特征關系,基于空間距離和幾何特征檢測方法,得到三維紋理重構輸出。根據上述分析,建立船舶三維紋理特征分析模型,結合紋理參數識別,采用虛擬現實技術進行三維圖像重建。
在構建船舶三維圖像模型的基礎上,基于模型參數識別,采用跨尺度連接的特征參數分析方法,進行船舶三維重構的特征點提取,得到特征點空間位置關系:
選擇損失最小的特征層分析方法,Q1和Q2表示成型點,點Q是2 個成像點與原點之間連線相交的位置。基于實例本身特征圖模型參數分析,得到船舶動態重構的輸出穩態特征值與Y軸平行。三維重建的空間分配成像點Q1和Q2在對應的圖像重建的空間位置分別是(v1,w1)和(v2,w2),得到虛擬現實重構的坐標的轉換關系:
式中:M為三維重建細節損失最小的特征層;E為多尺度艦船目標的適應性參數;Y和Z為最小閉包區域的坐標軸;A為最小閉包區域面積;?為圖像中目標區域的偏離信息;D為實例的特征提取層。
根據上述分析,結合船舶原型的幾何特性,通過圖像類型化參數分析,實現對船舶三維圖像重構。
在船舶三維圖模型的Face Tools 中選擇虛擬現實重構的面類型,采用MPI 的視景仿真渲染工具進行紋理映射,通過顏色、透明度和光照效果的動態渲染實現對船舶三維圖像重建,對船舶環境的旋渦、浮標、等長線、懸掛線進行動態賦值,基于LOD(Level of Detail)技術,得到船舶的三維重構的尾流長度由下式計算:
式中:lw為船首到船首圓心點位移;ls為船舶長度(船的吃水線長度);lf為水平方向的角度與長度的關聯因素;vf為速度系數;v為船舶速度。
由此構建船舶三維重建參數關系如圖2 所示。根據圖2 的參數關系,進行船舶三維重建設計。
圖2 船舶三維重建參數關系Fig.2 Relationship between ship 3D reconstruction parameters
仿真實驗中,在Lynx Prime 面板定義一個海上航行船舶的MarineShip 實例集,設定船首偏移70,最大旋轉速率參數5.5,浪長度系數18,Stern Parameter 中的船尾偏移?50。
根據參數配置,使用Multigen Creator 軟件建立3D 模型,進行船舶的體繪制,如圖3 所示。
圖3 船舶三維體繪制Fig.3 3D drawing of ships
根據圖3 對船舶的實體繪制結果,采用Map Texture Tools 選擇貼圖方法,使用本文的三維圖像重建算法,生成一個Open Flight 格式的文件,并在圖形視圖區輸出船舶三維重建結果,如圖4 所示。
圖4 船舶三維重建結果Fig.4 3D reconstruction results of ships
分析圖4 可知,本文方法能有效實現對船舶三維圖像重建,圖像重建的視覺表達能力較好,對比重建精度,如圖5 所示。分析可知,本文方法進行三維重建誤差的較小,重建的精度水平較高。
圖5 重建性能對比Fig.5 Comparison of reconstruction performance
本文提出基于虛擬現實的船舶三維圖像重建方法,構建船舶三維圖像的分類子網特征圖模型,結合輪廓跟蹤法進行輪廓提取和網格模型分析,構建船舶三維虛擬現實重建的OpenFlight 數據結構庫,建立船舶三維紋理特征分析模型,采用跨尺度連接的特征參數分析方法,進行船舶三維重構的特征點提取,得到特征點空間位置關系,結合紋理參數識別進行船舶三維重建的參數賦值。分析可知,本文方法能有效實現對船舶三維圖像重建,圖像重建的視覺表達能力較好,誤差較低。