本發明涉及一種高分辨率裸眼3d視頻生成中的實時空洞填充方法,屬于三維重建。
背景技術:
1、在三維場景重建過程中,利用虛擬視點生成算法能夠顯著降低信息獲取的難度和計算復雜度。通過輸入少量參考視點圖像,并結合深度信息作為引導,可以在一定范圍內生成任意視點的虛擬視圖。這些生成的虛擬視點視圖經過合成后,實現了根據觀察者視點變化而產生對應視圖的效果,從而成功重建三維場景。
2、通過虛擬視點產生對應的視圖在合成的過程中往往會出現空洞,而且隨著視場角的增大,信息的缺失和計算誤差會導致生成的虛擬視點中存在大量的空洞,可以將空洞分為視野外空洞和遮擋空洞:視野外空洞通常分布在生成的虛擬視圖的左側或右側邊界處,虛擬視點中會出現這類空洞主要因為虛擬視點的成像范圍超出了輸入參考視點的成像范圍,參考視點無法提供足夠的邊界信息來填補虛擬視點中額外看到的邊界區域;遮擋空洞表現為前景和背景交界處的黑色空洞,還會表現為前景結構的大范圍缺失,這些缺失在深度變化相對緩和處表現為小型裂縫,在深度劇烈變化處表現為前景結構上的嚴重撕裂,虛擬視點中會出現這類空洞主要因為在生成虛擬視點的過程中,物體的遮擋關系發生了變化,一些在輸入視點中被擋住的物體或結構在生成的虛擬視點中暴露出來,但輸入視點中無法提供有效信息來填補這些暴露出來的區域,從而造成空洞。
3、為有效填充虛擬視點生成過程中產生的大量空洞,提出了一種高分辨率裸眼3d視頻生成中的實時空洞填充方法。該方法以固定夾角的兩張視點圖像為輸入,計算出對應同一角度的虛擬視點,并對這兩張互補映射的虛擬視點視圖進行融合。在融合前后,均進行簡單的空洞填充,最終輸出符合裸眼3d屏幕參數的視頻。
技術實現思路
1、本發明的目的是提供一種高分辨率裸眼3d視頻生成中的實時空洞填充方法,該方法在輸入多個參考視點的rgb圖像及其對應的深度圖像以生成裸眼3d視頻源的過程中,本方法通過三個步驟——虛擬視點融合前填充空洞、融合填充空洞以及融合后填充空洞,旨在有效減少視頻源中的視野外空洞和遮擋空洞,從而提升裸眼3d視頻源的顯示質量。
2、為了實現上述目的,本發明的技術方案如下:一種高分辨率裸眼3d視頻生成中的實時空洞填充方法,其特征在于,包括以下步驟:
3、步驟1)融合前填充空洞:輸入多個參考視點的正交投影rgb圖像及其對應的深度圖像,根據各參考視點深度圖的深度信息對多個虛擬視點進行映射,生成不同視點位置的虛擬視圖。針對虛擬視圖中的空洞,采用預處理策略進行填充,包括改善映射誤差、單行濾波后近鄰插值等方法,以預先填充空洞;
4、步驟2)融合填充空洞:對于每個虛擬視點,由兩張互補的虛擬視圖組成,采用投票融合的方法將這兩張虛擬視圖的空洞填充結果進行融合處理,進一步填補虛擬視點中的空洞區域;
5、步驟3)融合后填充空洞:在裸眼3d視頻生成過程中,根據裸眼3d屏幕的參數,從不同虛擬視點中選取像素進行合成。當前像素所屬的虛擬視點存在空洞時,優先使用其他虛擬視點中的像素進行填充。
6、作為本發明的一種改進,所述步驟1)輸入的參考視點圖像由環繞式相機陣列獲取,各相機沿圓弧分布排列,參考視點的數目大于等于2,左右參考視圖用于確定裸眼3d視頻的視場角,所生成的多個虛擬視點位于左右參考視圖所覆蓋的視場角范圍內。
7、作為本發明的一種改進,所述步驟1)中,依據各參考視點深度圖的深度信息對多個虛擬視點進行映射的過程是以行為單位進行的,空洞填充過程同樣以行為單位完成。
8、作為本發明的一種改進,所述步驟1)中的虛擬視點映射過程中會生成視野外空洞和遮擋空洞,融合前主要針對遮擋空洞進行填充。具體填充方法包括:根據參考視點的深度信息和像素位置計算虛擬視點的映射地址,通過對映射地址進行上下取整,消除計算誤差導致的空洞;或通過單行濾波去除虛擬視點中的離散點,并在此基礎上使用近鄰插值進行進一步填充。
9、作為本發明的一種改進,所述步驟2)中,每個虛擬視點包含兩個映射結果,這些結果分別來自于虛擬視點位置左右側的參考視點的映射數據。
10、作為本發明的一種改進,所述步驟2)中的融合填充機制能夠有效填充空洞。該方法采用投票融合的方式,在確保提取各映射結果中有效信息的前提下,基于空洞標志位和映射角度進行投票融合。以生成左側虛擬視點為例,融合過程可以表示為以下公式:
11、
12、其中θ為生成的虛擬視圖與中間參考視圖之間的光軸夾角,θmax為左參考視圖與中間參考視圖之間的光軸夾角,i表示當前像素在虛擬視圖行中的位置。pvi表示第i個像素生成虛擬視圖的融合結果,pmi和pli分別表示第i個像素的中間參考視圖和左參考視圖在虛擬視點處的映射結果,fmi和fli分別表示第i個像素的中間參考視圖和左參考視圖在虛擬視點處映射結果的空洞標志位。當某個像素在多個參考視點的映射結果中均含有有效信息時,還可基于此方法引入深度仲裁等輔助方式,以進一步優化投票融合過程。
13、作為本發明的一種改進,所述步驟3)采用單行濾波的方法對融合后的虛擬視圖中的空洞進行填充。具體而言,選用尺寸為1×4的濾波窗口,對當前映射行的空洞標志位和像素偏移坐標同步進行濾波處理,以確保空洞區域的有效填充和圖像的平滑過渡。
14、作為本發明的一種改進,所述步驟3)針對不同參數和不同類型的三維顯示設備,編碼重組過程可以根據各設備的視點排布規則進行靈活調整和調度,以適應不同的顯示需求并優化視頻輸出效果。
15、作為本發明的一種改進,所述步驟3)選擇相鄰虛擬視點或參考視點來填充當前虛擬視點的空洞。在考慮到相鄰視點像素高度一致性的基礎上,優先選用與當前虛擬視點距離較近的其他虛擬視點。
16、相對于現有技術,本發明的優點如下:
17、1.本方案提出了一種基于行處理的空洞填充方法。該方法無需存儲整幀圖像數據,只需存儲單行數據即可完成實時計算,從而提高空洞填充效率。該方法能夠滿足8k/30p甚至更高分辨率和幀率的裸眼3d視頻的實時空洞填充需求。
18、2.本方案通過三個步驟有序填充空洞,針對不同類型的空洞及其成因分別進行處理。融合前主要針對由小范圍遮擋引起的部分小空洞,進行快速填補以提高初始畫面的完整性,融合階段填充主要填充處理視野外產生的空洞以及由大面積遮擋引起的較大空洞,確保融合過程中圖像連貫性和質量,融合后填充利用其他視點的有效像素對當前視點中仍存在的遺留空洞進行互補填充,尤其針對融合映射結果中無法填補的空洞,進一步提升圖像的完整度。這種分階段的有序處理方式有效解決了不同空洞的填充問題,保證了最終圖像的高質量呈現。
19、3.本方案提出的單行濾波方法僅需存儲連續的四個像素數據,相較于傳統濾波方法顯著節省了硬件存儲空間。以3×3中值濾波為例,常規方法輸出一個濾波后的數據至少需要存儲兩行像素數據,導致硬件存儲壓力顯著增加。而本方案通過優化存儲需求,有效降低了硬件資源的占用,為實現高效實時處理提供了更優的解決方案。