基于深度的塊分割方法和電子裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明有關(guān)于三維(three-dimensional, 3D)和多視圖(multi-view)視頻編碼, 且尤其有關(guān)于采用基于深度的塊分割(Depth-BasedBlockPartitioning,DBBP)以改進(jìn)編 碼效率的紋理(texture)編碼。
【背景技術(shù)】
[0002] 近些年3D電視(television,TV)已成為技術(shù)潮流,其可帶給觀看者非常好的觀 看體驗(yàn)。已開發(fā)多種技術(shù)以用于3D觀看,其中,多視圖視頻尤其是用于3DTV的一個(gè)關(guān)鍵技 術(shù)。傳統(tǒng)視頻為2D媒體,只能提供觀看者攝像機(jī)角度的一場景的單一視圖。然而,3D視頻 可提供動(dòng)態(tài)場景的任意視點(diǎn)(viewpoint),并提供給觀看者真實(shí)的感覺。
[0003] 3D視頻通常通過采用視頻攝像機(jī)捕捉一場景并采用相關(guān)裝置捕捉深度信息而 建立,或通過同時(shí)采用多個(gè)相機(jī)捕捉一場景而建立,其中多個(gè)相機(jī)被適當(dāng)放置,使得每個(gè) 相機(jī)可從一個(gè)視點(diǎn)捕捉該場景。對應(yīng)于場景的紋理數(shù)據(jù)和深度數(shù)據(jù)通常展現(xiàn)出實(shí)質(zhì)關(guān) 聯(lián)。因此,深度信息可用來改進(jìn)紋理數(shù)據(jù)的編碼效率或降低紋理數(shù)據(jù)的處理復(fù)雜度,反 之亦然。舉例來說,紋理塊的對應(yīng)的深度塊可揭示對應(yīng)于像素級(pixellevel)對象分 段(objectsegmentation)的類似信息。因此,深度信息可幫助實(shí)現(xiàn)像素級基于分段的 (segment-based)運(yùn)動(dòng)補(bǔ)償。相應(yīng)地,在當(dāng)前基于高效視頻編碼(HighEfficiencyVideo Coding,HEVC)的 3D視頻編碼(3DvideocodingbasedonHEVC,3D-HEVC)中,采用DBBP 進(jìn)行紋理編碼。
[0004] 當(dāng)前DBBP包括虛擬深度獲取、塊分段、塊分割和雙分段(bi-segment)補(bǔ)償?shù)牟?驟。首先,采用相鄰塊的視差矢量(DisparityVectorFromNeighboringBlocks,NBDV)獲 取當(dāng)前紋理塊的虛擬深度。獲取的視差矢量用來由當(dāng)前紋理塊的位置在參考視圖中對深度 塊進(jìn)行定位。參考視圖可為基準(zhǔn)視圖(baseview)。在參考視圖中已定位的深度塊隨后被 用作虛擬深度塊,用于對當(dāng)前紋理塊編碼。虛擬深度塊用來獲取并置(collocated)紋理塊 的塊分段,其中塊分段可為非矩形。虛擬深度塊的均數(shù)(mean)值^被確定。通過將虛擬深 度值與均數(shù)值進(jìn)行比較,塊的每個(gè)像素的二值化分段掩膜(binarysegmentationmask) 得以生成。均數(shù)值用來與每個(gè)虛擬深度值比較,以生成掩膜值。若左上角虛擬深度值大于 均數(shù)值,所有對應(yīng)于大于S的深度值的分段掩膜值為〇,而所有對應(yīng)于小于沒的深度值的分 段掩膜值為1。圖IA-B是基于虛擬深度塊的塊分段的示范性示意圖。圖IA是為依賴視圖 中的當(dāng)前紋理塊在參考視圖中獲取對應(yīng)的深度塊的獲取進(jìn)程的示范性示意圖。圖IB是基 于依賴視圖中當(dāng)前紋理塊的在參考視圖中對應(yīng)的深度塊生成分段掩膜的獲取進(jìn)程的示范 性示意圖。在圖IA中,基于依賴視圖中當(dāng)前紋理塊110的位置和獲取的DV112,在參考視圖 中對當(dāng)前紋理塊110的對應(yīng)的深度塊120進(jìn)行定位,其中DVl12根據(jù)3D-HEVC采用NBDV獲 取。在步驟140中,確定虛擬深度塊的均數(shù)值。在步驟150中,虛擬深度像素的值與平均深 度值進(jìn)行比較,以生成分段掩膜160。如圖IB中兩種不同的線型所示,分段掩膜以二進(jìn)制數(shù) 據(jù)表示,以指示底層像素(underlyingpixel)屬于分段1還是分段2。
[0005] 為了避免與基于像素的(pixel-based)運(yùn)動(dòng)補(bǔ)償有關(guān)的高計(jì)算復(fù)雜度,DBBP采 用基于塊的(block-based)運(yùn)動(dòng)補(bǔ)償。每個(gè)紋理塊可采用包括2NxN、Nx2N、2NxnU、2NxnD、 nLx2N以及nRx2N的6個(gè)非矩形分割之一,其中后4個(gè)非矩形分割對應(yīng)于非對稱運(yùn)動(dòng)分割 (AsymmetricMotionPartition,AMP)。通過塊分割選擇進(jìn)程從上述塊分割候選中選出塊 分割后,分別獲取已分割塊的兩個(gè)預(yù)測運(yùn)動(dòng)矢量(PredictiveMotionVector,PMV)。PMV 隨后用來對待劃分的(to-be-divided)兩個(gè)分段進(jìn)行補(bǔ)償。根據(jù)當(dāng)前的3D-HEVC,通過將分 段掩膜和分段掩膜求反(negation)與6個(gè)非矩形分割候選(即2NxN、Nx2N、2NxnU、2NxnD、 nLx2N以及nRx2N)進(jìn)行比較,選擇出最佳塊分割,其中分段掩膜求反即翻轉(zhuǎn)(inverted)分 段掩膜。逐像素(pixel-by-pixel)的比較計(jì)算分段掩膜和塊分割樣式(pattern)之間的 所謂匹配像素(matchedpixel)。共有12組匹配像素需被計(jì)算,其對應(yīng)2個(gè)互補(bǔ)分段掩膜 和6個(gè)塊分割類型的組合。塊分割進(jìn)程選擇具有最多數(shù)目匹配像素的候選者。圖2是塊分 割選擇進(jìn)程的示范性示意圖,其示出了塊分割選擇的塊分割類型與分段掩膜/翻轉(zhuǎn)分段掩 膜的12個(gè)可能組合。在圖2中,6個(gè)非矩形塊分割類型被疊加于分段掩膜和對應(yīng)的翻轉(zhuǎn)分 段掩膜之上。塊分割類型和分段掩膜之間的最佳匹配分割被選作DBBP進(jìn)程的塊分割。
[0006] 選擇塊分割類型后,可確定兩個(gè)PMV。每個(gè)PMV被用于整個(gè)塊,以形成對應(yīng)的預(yù)測 塊。兩個(gè)預(yù)測塊隨后根據(jù)分段掩膜逐像素地合并(merge)為一個(gè),這個(gè)進(jìn)程被稱為兩分段 補(bǔ)償。圖3是3D或多視圖編碼中采用DBBP進(jìn)程的示范性示意圖。在本示范例中,選擇了 Nx2N塊分割類型,且分別獲取了兩個(gè)已分割塊的兩個(gè)對應(yīng)的運(yùn)動(dòng)矢量(MV1和MV2)。每個(gè) 運(yùn)動(dòng)矢量用來補(bǔ)償整個(gè)紋理塊(310)。相應(yīng)地,運(yùn)動(dòng)矢量MVl用于紋理塊320,以根據(jù)運(yùn)動(dòng) 矢量MVl生成預(yù)測塊330 ;運(yùn)動(dòng)矢量MV2也用于紋理塊320,以根據(jù)運(yùn)動(dòng)矢量MV2生成預(yù)測 塊332。兩個(gè)預(yù)測塊通過采用各自的分段掩膜(340和342)生成最終預(yù)測塊(350)。
[0007] 雖然DBBP進(jìn)程通過避免基于逐像素的運(yùn)動(dòng)補(bǔ)償而降低了計(jì)算復(fù)雜度,但在塊分 割和塊分段的步驟中仍存在問題。一個(gè)問題有關(guān)塊分割和塊分段的均數(shù)值計(jì)算。上述步驟 對塊分割和塊分段采用不同的均數(shù)值計(jì)算。對于塊分割來說,均數(shù)值基于對應(yīng)的深度塊中 4x4子塊(sub-block)的所有左上角像素確定。另一方面,對于塊分段來說,均數(shù)值根據(jù)對 應(yīng)的深度塊的所有像素的平均值(average)確定。DBBP中兩種不同的均數(shù)值計(jì)算會(huì)不可避 免地增加編碼和解碼復(fù)雜度。另一問題與塊分割進(jìn)程中涉及的高計(jì)算復(fù)雜度有關(guān)。然而, 該步驟僅用來從更可靠的塊分割中獲取合適的運(yùn)動(dòng)矢量,如圖3所示,獲取運(yùn)動(dòng)矢量之后, 塊分割類型并不再生成最終預(yù)測塊中起任何作用。與塊分割有關(guān)的另一問題是采用AMP導(dǎo) 致分割類型的數(shù)目較大。當(dāng)前實(shí)作直接基于編碼單元(CodingUnit,⑶)尺寸決定是否采 用AMP分割,但采用AMP并不一定給系統(tǒng)性能提供可觀改進(jìn)。因此,需要開發(fā)一些方法來克 服上述問題。
【發(fā)明內(nèi)容】
[0008] 有鑒于此,本發(fā)明提供基于深度的塊分割方法和相關(guān)電子裝置。
[0009] 本發(fā)明一實(shí)施例提供一種基于深度的塊分割方法,用于多視圖編解碼或三維視頻 編解碼中,該基于深度的塊分割方法包括:接收與依賴視圖中當(dāng)前紋理塊有關(guān)的輸入數(shù)據(jù); 在參考視圖中為該當(dāng)前紋理塊確定對應(yīng)的深度塊或參考紋理塊;基于該對應(yīng)的深度塊或該 參考紋理塊獲取統(tǒng)一的代表值;由該對應(yīng)的深度塊或該參考紋理塊采用該統(tǒng)一的代表值生 成當(dāng)前分段掩膜;基于該對應(yīng)的深度塊或該參考紋理塊以及該統(tǒng)一的代表值,從塊分割候 選中選擇當(dāng)前塊分割;以及根據(jù)生成的該當(dāng)前分段掩膜和選擇的該當(dāng)前塊分割,對該當(dāng)前 紋理塊進(jìn)行基于深度的塊分割編碼或解碼。
[0010] 本發(fā)明另一實(shí)施例提供一種基于深度的塊分割方法,用于多視圖編解碼或三維視 頻編解碼中,該基于深度的塊分割方法包括:接收與依賴視圖中當(dāng)前紋理塊有關(guān)的輸入數(shù)