本發(fā)明涉及計(jì)算機(jī)視覺(jué)與數(shù)字圖像處理
技術(shù)領(lǐng)域:
,尤其涉及一種光場(chǎng)圖像壓縮方法。
背景技術(shù):
:伴隨著消費(fèi)級(jí)手持式光場(chǎng)相機(jī)的問(wèn)世,其先拍照后聚焦的功能引起了廣泛關(guān)注。與傳統(tǒng)相機(jī)圖片不同,光場(chǎng)相機(jī)因其獨(dú)特的光學(xué)結(jié)構(gòu)能夠同時(shí)記錄光強(qiáng)信息和光線角度信息,光場(chǎng)圖像的分辨率也因此巨大增加,使得光場(chǎng)圖像的數(shù)據(jù)量急劇膨脹。隨著移動(dòng)終端設(shè)備的大量使用和對(duì)實(shí)時(shí)數(shù)據(jù)傳輸?shù)木薮笮枨?,如此龐大的?shù)據(jù)量勢(shì)必給光場(chǎng)數(shù)據(jù)的存儲(chǔ)和傳輸帶來(lái)巨大的壓力,也將制約手持式光場(chǎng)相機(jī)的廣泛應(yīng)用。因此,針對(duì)光場(chǎng)圖像的數(shù)據(jù)特點(diǎn),提出一種高效壓縮方法勢(shì)在必行。針對(duì)光場(chǎng)圖像的壓縮,當(dāng)前的壓縮方案可以大致分為兩類:基于圖像的壓縮方法和基于視頻的壓縮方法?;趫D像的壓縮方法是利用現(xiàn)有的壓縮工具如JPEG和JPEG2000,直接對(duì)光場(chǎng)圖像進(jìn)行壓縮;該方案不可避免地給壓縮圖像帶引入基于塊的壓縮分塊贗像,同時(shí)光場(chǎng)圖像中宏像素的相對(duì)關(guān)系也未能被有效利用?;谝曨l的壓縮方案是指從原始光場(chǎng)數(shù)據(jù)中提取出一系列子光圈圖像,基于現(xiàn)有的視頻編碼器如H.265或HEVC,對(duì)由子光圈圖像生成的視頻序列進(jìn)行壓縮,該方案雖然有效的提升了編碼效率,但是計(jì)算復(fù)雜度也極大增加,影響了編碼的實(shí)時(shí)性。在這兩類壓縮方案的基礎(chǔ)上,分層表示、壓縮感知等算法也被引入到壓縮方案中來(lái),這些算法的引入要么需要改變?cè)邢鄼C(jī)的光學(xué)架構(gòu),要么為解碼端帶來(lái)巨大的復(fù)雜度。技術(shù)實(shí)現(xiàn)要素:為解決上述技術(shù)問(wèn)題,本發(fā)明提出一種基于線性變換和插值的光場(chǎng)圖像壓縮方法,避免引入較大的計(jì)算復(fù)雜度,有效提高了編碼效率。為了達(dá)到上述目的,本發(fā)明采用以下技術(shù)方案:本發(fā)明公開了一種光場(chǎng)圖像壓縮方法,包括以下步驟:A1:輸入原始光場(chǎng)圖像f(x,y),對(duì)所述原始光場(chǎng)圖像f(x,y)進(jìn)行前期數(shù)據(jù)處理,生成正交排列的微透鏡陣列圖像L(x,y);A2:對(duì)所述微透鏡陣列圖像L(x,y)進(jìn)行線性變換,使得多個(gè)相互交疊的宏像素模塊彼此分離且均勻排布,構(gòu)成規(guī)則化光場(chǎng)圖像Lt(x,y),其中所述宏像素模塊是僅包含一個(gè)宏像素的n×n正方形子塊;A3:對(duì)所述規(guī)則化光場(chǎng)圖像Lt(x,y)中的待插值像素點(diǎn)進(jìn)行插值;A4:根據(jù)編碼器格式需求對(duì)所述規(guī)則化光場(chǎng)圖像Lt(x,y)進(jìn)行圖像或色度空間處理,利用編碼器對(duì)進(jìn)行圖像或色度空間處理后的所述規(guī)則化光場(chǎng)圖像Lt(x,y)進(jìn)行編解碼得到壓縮解碼圖像,對(duì)所述壓縮解碼圖像進(jìn)行圖像或色度空間逆處理,并進(jìn)行反線性變換,生成與所述微透鏡陣列圖像L(x,y)相同結(jié)構(gòu)的重建圖像L'(x,y)。優(yōu)選地,步驟A1具體包括:輸入原始光場(chǎng)圖像f(x,y),對(duì)所述原始光場(chǎng)圖像f(x,y)進(jìn)行Bayer格式解碼、去漸暈效果、微透鏡中心標(biāo)定和從六邊形格點(diǎn)向正交格點(diǎn)矯正的一系列前期數(shù)據(jù)處理,生成正交排列的微透鏡陣列圖像L(x,y)。優(yōu)選地,步驟A2中具體還包括:對(duì)所述微透鏡陣列圖像L(x,y)進(jìn)行線性變換后,所述微透鏡陣列圖像L(x,y)中的多個(gè)所述宏像素的中心點(diǎn)在橫向和縱向上都正交對(duì)齊。優(yōu)選地,步驟A2中對(duì)所述微透鏡陣列圖像L(x,y)進(jìn)行線性變換具體包括以下步驟:A21:根據(jù)式(1)對(duì)所述微透鏡陣列圖像L(x,y)進(jìn)行縱向的線性變換,使得每個(gè)所述宏像素模塊相互交疊部分在縱向?qū)崿F(xiàn)分離;其中,m為每個(gè)所述宏像素的縱向像素點(diǎn)距離,x0為空域水平方向的初始偏置,y0為空域垂直方向的初始偏置;A22:根據(jù)式(1)對(duì)所述微透鏡陣列圖像L(x,y)進(jìn)行縱向的線性變換后,每個(gè)所述宏像素的邊界上會(huì)有S個(gè)像素點(diǎn)未被移動(dòng),根據(jù)式(2)將S個(gè)像素點(diǎn)移回到原所述宏像素所在的位置;Lt(i+pn+x0,qn+y0)=Lt(i+pn+x0,qn+y0+2)i=1,2,...Sp=1,2,...,(W/n)q=1,2,...,(H/n)---(2)]]>其中,W為L(zhǎng)t(x,y)的寬,H為L(zhǎng)t(x,y)的高;A23:根據(jù)式(3)將多個(gè)所述宏像素的中心點(diǎn)縱向?qū)R,構(gòu)成所述規(guī)則化光場(chǎng)圖像Lt(x,y)。Lt(x,y)=Lt(x+n×sign(y)2,y)=sign(y)0qn<y≤(q+1)n,q=2i-11(q+1)n<y≤(q+2)n,q=2i,i=1,2,...(H/m)---(3)]]>優(yōu)選地,步驟A3中所述待插值像素點(diǎn)是指除了能捕捉到有效光場(chǎng)信息的所述宏像素點(diǎn)之外的其他外圍像素點(diǎn)。優(yōu)選地,步驟A3中所述插值步驟是根據(jù)所述待插值像素點(diǎn)的自身所處位置和周圍可利用像素點(diǎn)進(jìn)行的。優(yōu)選地,步驟A3具體包括:A31:根據(jù)式(4)計(jì)算待插值的像素點(diǎn)(x,y)的橫向的邊界檢測(cè)因子Hdetector和縱向的邊界檢測(cè)因子Vdetector;Hdetector=Lt(x-hl,y)-Lt(x+hr,y)hl+hrVdetector=Lt(x,y-vu)-Lt(x,y+vd)vu+vd---(4)]]>其中,hl為水平方向上所述待插值像素點(diǎn)和左側(cè)最近可利用像素點(diǎn)的距離,hr為水平方向上所述待插值像素點(diǎn)和右側(cè)最近可利用像素點(diǎn)的距離,vu為垂直方向上所述待插值像素點(diǎn)和上方最近可利用像素點(diǎn)的距離,vd為垂直方向上待所述插值像素點(diǎn)和下方最近可利用像素點(diǎn)的距離;A32:根據(jù)式(5)計(jì)算待插值像素點(diǎn)(x,y)的像素值;Lt(x,y)=wv(Lt(x,y+vd)+vd×Vdetector)+wh(Lt(x+hr,y)+hr×Hdetector)(5)其中,wv為水平方向的權(quán)值,wh為垂直方向的權(quán)值,其中wv和wh的大小根據(jù)Hdetector和Vdetector進(jìn)行優(yōu)化。優(yōu)選地,其中當(dāng)Hdetector≥Vdetector時(shí),wv≥wh;當(dāng)Hdetector<Vdetector時(shí),wv<wh。優(yōu)選地,步驟A4中對(duì)所述規(guī)則化光場(chǎng)圖像Lt(x,y)進(jìn)行的圖像或色度空間處理具體包括顏色空間轉(zhuǎn)換和下采樣;對(duì)所述壓縮解碼圖像進(jìn)行的圖像或色度空間逆處理具體包括顏色空間反轉(zhuǎn)換和上采樣。優(yōu)選地,步驟A4中對(duì)所述規(guī)則化光場(chǎng)圖像Lt(x,y)進(jìn)行顏色空間轉(zhuǎn)換和下采樣具體為從RGB轉(zhuǎn)換為YCbCr4:2:0、YCbCr4:2:2、YCbCr4:1:1或YCbCr4:4:4。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果在于:本發(fā)明的光場(chǎng)圖像壓縮方法,利用光場(chǎng)圖像中具有相似結(jié)構(gòu)的宏像素交疊排布的特點(diǎn),在原始光場(chǎng)圖像輸入編碼器進(jìn)行壓縮之前,對(duì)光場(chǎng)圖像中的宏像素以塊為單位進(jìn)行重新劃分和規(guī)則排布;其中重新劃分和規(guī)則排布是將經(jīng)過(guò)前期數(shù)據(jù)處理的光場(chǎng)圖像中彼此交疊排布的宏像素,以與壓縮技術(shù)的塊大小相一致的僅包含一個(gè)宏像素的正方形子塊為單位實(shí)現(xiàn)彼此分離并均勻排布;進(jìn)行了重新劃分和規(guī)則排布后,對(duì)規(guī)則化光場(chǎng)圖像中的待插值像素點(diǎn)進(jìn)行插值,并進(jìn)行圖像或色度處理后輸入編碼器,實(shí)現(xiàn)光場(chǎng)數(shù)據(jù)的有效壓縮。該基于線性變換和圖像插值的光場(chǎng)圖像壓縮方法,充分利用了光場(chǎng)圖像中記錄光線方向信息的相鄰宏像素具有相似結(jié)構(gòu)的特點(diǎn),重新劃分和規(guī)則排布的光場(chǎng)圖像和當(dāng)前編碼器基于塊的混合編碼架構(gòu)相匹配,實(shí)現(xiàn)光場(chǎng)數(shù)據(jù)的高效壓縮,有效提高編碼效率;且避免了在編解碼兩端引入較大的計(jì)算復(fù)雜度,使得光場(chǎng)圖像研究領(lǐng)域和光場(chǎng)相機(jī)的市場(chǎng)化都將廣泛受益。在進(jìn)一步的方案中,在進(jìn)行線性變化過(guò)程中,使得多個(gè)宏像素的中心點(diǎn)橫縱向正交對(duì)齊;另外在進(jìn)行插值過(guò)程中,將除了每個(gè)宏像素中用于生成子光圈圖像的有效像素點(diǎn)之外的其他像素點(diǎn)作為待插值像素點(diǎn),插值的方法采用基于位置和梯度檢測(cè)的自適應(yīng)插值方法,使得利用具有基于塊的混合式編碼架構(gòu)的編碼器對(duì)該規(guī)則化光場(chǎng)圖像進(jìn)行壓縮時(shí)的效率得到進(jìn)一步提高。附圖說(shuō)明圖1是本發(fā)明的一個(gè)實(shí)施例的光場(chǎng)圖像壓縮方法的流程示意圖;圖2是本發(fā)明優(yōu)選實(shí)施例的光場(chǎng)圖像壓縮方法的流程示意圖;圖3a至圖3f是本發(fā)明優(yōu)選實(shí)施例的光場(chǎng)圖像壓縮方法的過(guò)程示意圖。具體實(shí)施方式下面對(duì)照附圖并結(jié)合優(yōu)選的實(shí)施方式對(duì)本發(fā)明作進(jìn)一步說(shuō)明。如圖1所示,本發(fā)明的一個(gè)實(shí)施例提出一種光場(chǎng)圖像壓縮方法,包括以下步驟:A1:輸入原始光場(chǎng)圖像f(x,y),對(duì)所述原始光場(chǎng)圖像f(x,y)進(jìn)行前期數(shù)據(jù)處理,生成正交排列的微透鏡陣列圖像L(x,y);A2:對(duì)所述微透鏡陣列圖像L(x,y)進(jìn)行線性變換,使得多個(gè)相互交疊的宏像素模塊彼此分離且均勻排布,構(gòu)成規(guī)則化光場(chǎng)圖像Lt(x,y),其中所述宏像素模塊是僅包含一個(gè)宏像素的n×n正方形子塊;A3:對(duì)所述規(guī)則化光場(chǎng)圖像Lt(x,y)中的待插值像素點(diǎn)進(jìn)行插值;A4:根據(jù)編碼器格式需求對(duì)所述規(guī)則化光場(chǎng)圖像Lt(x,y)進(jìn)行圖像或色度空間處理,利用編碼器對(duì)進(jìn)行圖像或色度空間處理后的所述規(guī)則化光場(chǎng)圖像Lt(x,y)進(jìn)行編解碼得到壓縮解碼圖像,對(duì)所述壓縮解碼圖像進(jìn)行圖像或色度空間逆處理,并進(jìn)行反線性變換,生成與所述微透鏡陣列圖像L(x,y)相同結(jié)構(gòu)的重建圖像L'(x,y)。下述結(jié)合優(yōu)選實(shí)施例對(duì)本發(fā)明的實(shí)施例的光場(chǎng)圖像壓縮方法進(jìn)行進(jìn)一步說(shuō)明,需要注意的是,在下面的實(shí)施過(guò)程中所述的光場(chǎng)圖像類型和插值方法都僅為列舉說(shuō)明,本發(fā)明所涵蓋的范圍不局限于所列舉的這些方法。如圖2所示,本發(fā)明的優(yōu)選實(shí)施例的光場(chǎng)圖像壓縮方法包括以下步驟:A1:輸入原始光場(chǎng)圖像f(x,y)(如圖3a所示為通過(guò)光場(chǎng)相機(jī)(如LytroIllum)采集所得,數(shù)據(jù)格式為原始光場(chǎng)數(shù)據(jù)或RGB圖像),在對(duì)該原始光場(chǎng)圖像f(x,y)經(jīng)過(guò)Bayer格式解碼、去漸暈效果、微透鏡中心標(biāo)定和從六邊形格點(diǎn)向正交格點(diǎn)矯正等一系列前期數(shù)據(jù)處理后,生成如圖3b所示的正交排列的微透鏡陣列圖像L(x,y),該圖像由一系列正交的宏像素組成。以LytroIllmu所采集圖像為例,圖像中每個(gè)宏像素對(duì)應(yīng)實(shí)際場(chǎng)景中的一點(diǎn),由于每個(gè)微透鏡相對(duì)于相機(jī)的主透鏡而言代表某角度上的子孔徑,宏像素記錄了其相應(yīng)場(chǎng)景點(diǎn)通過(guò)整個(gè)微透鏡陣列的角度信息,將各點(diǎn)的強(qiáng)度值與分布位置保留下來(lái)。A2:對(duì)正交排列的微透鏡陣列圖像L(x,y)進(jìn)行線性變換,實(shí)現(xiàn)相互交疊的僅包含一個(gè)宏像素的n×n正方形子塊彼此分離且均勻排布,各個(gè)宏像素的中心點(diǎn)橫縱方向?qū)R。n×n正方形子塊大小的確定則依據(jù)僅包含一個(gè)完整宏像素并且與所采用的壓縮技術(shù)的塊大小相一致,同樣以LytroIllmu所采集圖像為例,L(x,y)宏像素的大小為15×15,當(dāng)采用HEVC編碼器,該正方形子塊大小則為16×16,即n=16。A21:首先對(duì)L(x,y)進(jìn)行縱向的線性變換,實(shí)現(xiàn)包含每個(gè)宏像素的n×n正方形塊交疊部分在縱向?qū)崿F(xiàn)分離,依據(jù)公式如下:Lt(x+x0,y+y0+2(n-m)k)=L(x+x0,y+y0)其中,m代表每個(gè)宏像素的縱向像素點(diǎn)距離,(x0,y0)為空域水平和垂直方向的初始偏置,即光場(chǎng)圖像中左上角第一個(gè)非完整宏像素所占橫向和縱向距離。A22:如圖3c所示,經(jīng)過(guò)縱向線性變換后,每個(gè)宏像素的邊界上會(huì)有S個(gè)像素點(diǎn)未被移動(dòng),根據(jù)下式:Lt(i+pn+x0,qn+y0)=Lt(i+pn+x0,qn+y0+2)i=1,2,…Sp=1,2,…,(W/n)q=1,2,…,(H/n)其中,W×H為L(zhǎng)t(x,y)的大小,即W和H分別為L(zhǎng)t(x,y)的寬和高。如圖3d所示,S個(gè)像素點(diǎn)移回至其在原宏像素的所在位置,最終實(shí)現(xiàn)交替的宏像素模塊(僅包含一個(gè)宏像素的n×n正方形子塊)彼此縱向分離,但是圖像中行與行之間的宏像素中心點(diǎn)彼此交錯(cuò)。A23:依據(jù)下式實(shí)現(xiàn)宏像素中心點(diǎn)的縱向?qū)R,如圖3e所示:Lt(x,y)=Lt(x+n×sign(y)2,y)]]>sign(y)0qn<y≤(q+1)n,q=2i-11(q+1)n<y≤(q+2)n,q=2i,i=1,2,...(H/m)]]>A3:對(duì)規(guī)則化光場(chǎng)圖像Lt(x,y)中的待插值像素點(diǎn)進(jìn)行插值;其中待插值像素點(diǎn)指除了能捕捉到有效光場(chǎng)信息的所述宏像素點(diǎn)之外的其他外圍像素點(diǎn);插值步驟是根據(jù)待插值像素點(diǎn)的自身所處位置和周圍可利用像素點(diǎn)來(lái)進(jìn)行。即:本發(fā)明具體實(shí)施例中,除捕捉到有效光場(chǎng)信息的宏像素點(diǎn)以外,正方形子塊中其他無(wú)實(shí)際意義的像素點(diǎn)根據(jù)其位置和上下左右可利用像素值,提出一種自適應(yīng)邊界插值方法。A31:首先計(jì)算待插值像素點(diǎn)(x,y)的橫縱方向梯度,即橫向的邊界檢測(cè)因子Hdetector和縱向的邊界檢測(cè)因子Vdetector,如圖3f所示,依據(jù)下式:Hdetector=Lt(x-hl,y)-Lt(x+hr,y)hl+hr]]>Vdetector=Lt(x,y-vu)-Lt(x,y+vd)vu+vd]]>其中,vu和vd表示Lt(x,y)垂直方向上當(dāng)前插值像素點(diǎn)和上下最近可利用像素點(diǎn)的距離,而hl和hr表示Lt(x,y)水平方向上當(dāng)前插值像素點(diǎn)和左右最近可利用像素點(diǎn)的距離。A32:進(jìn)而計(jì)算待插值像素點(diǎn)(x,y)點(diǎn)的像素值:Lt(x,y)=wv(Lt(x,y+vd)+vd×Vdetector)+wh(Lt(x+hr,y)+hr×Hdetector)其中,wv和wh表示水平和垂直方向的權(quán)值。根據(jù)Hdetector和Vdetector的大小對(duì)橫縱方向不同的權(quán)值進(jìn)行優(yōu)化,實(shí)現(xiàn)自適應(yīng)插值,保證宏像素模塊之間的連續(xù)性和一致性。在更具體的實(shí)例中,可以根據(jù)當(dāng)Hdetector≥Vdetector時(shí),wv≥wh;當(dāng)Hdetector<Vdetector時(shí),wv<wh的關(guān)系來(lái)對(duì)wv和wh進(jìn)行優(yōu)化。A4:重新劃分和規(guī)則排布后的圖像,依據(jù)編碼器格式需求進(jìn)行圖像或色度空間處理,該處理過(guò)程進(jìn)一步可以包括色度空間轉(zhuǎn)換、下采樣等;在具體的實(shí)例中,規(guī)則化光場(chǎng)圖像Lt(x,y)進(jìn)行顏色空間轉(zhuǎn)換和下采樣具體為從RGB轉(zhuǎn)換為YCbCr4:2:0、YCbCr4:2:2、YCbCr4:1:1或YCbCr4:4:4。將處理所得圖像輸入至具有基于塊的壓縮技術(shù)的視頻/圖像編碼器中,實(shí)現(xiàn)壓縮。解碼后的壓縮解碼圖像經(jīng)過(guò)諸如色度空間轉(zhuǎn)換和上采樣等圖像或色度空間逆處理,進(jìn)而利用與A2步驟相反的反線性變換生成與A1中微透鏡陣列圖像L(x,y)相同結(jié)構(gòu)的重建圖像L′(x,y)。本發(fā)明的光場(chǎng)圖像壓縮方法,利用原始光場(chǎng)圖像中相鄰宏像素具有相似結(jié)構(gòu)的特點(diǎn),通過(guò)線性變換和圖像插值,以涵蓋每個(gè)宏像素的正方形子塊為單位,實(shí)現(xiàn)對(duì)光場(chǎng)圖像的重新劃分和規(guī)則排布,進(jìn)而對(duì)規(guī)則化的光場(chǎng)圖像實(shí)現(xiàn)壓縮;本發(fā)明的方法通過(guò)將光場(chǎng)圖像的結(jié)構(gòu)特點(diǎn)和當(dāng)前編碼器基于塊的混合編碼結(jié)構(gòu)相匹配,從而實(shí)現(xiàn)編碼效率的有效提升。以上內(nèi)容是結(jié)合具體的優(yōu)選實(shí)施方式對(duì)本發(fā)明所作的進(jìn)一步詳細(xì)說(shuō)明,不能認(rèn)定本發(fā)明的具體實(shí)施只局限于這些說(shuō)明。對(duì)于本發(fā)明所屬
技術(shù)領(lǐng)域:
的技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干等同替代或明顯變型,而且性能或用途相同,都應(yīng)當(dāng)視為屬于本發(fā)明的保護(hù)范圍。當(dāng)前第1頁(yè)1 2 3