国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于視頻編碼模式的方向變換方法與流程

      文檔序號:12498304閱讀:362來源:國知局
      一種基于視頻編碼模式的方向變換方法與流程

      本發(fā)明屬于視頻壓縮編碼的技術(shù)領(lǐng)域,具體地涉及一種與視頻相關(guān)的基于預(yù)測模式的方向變換的幀內(nèi)編解碼方法。



      背景技術(shù):

      從MPEG-2,H.263,MPEG-4到H.264/AVC,編碼效率更高的技術(shù)一直是人們追求的更高目標(biāo)。近些年來,隨著大量的高清視頻與日劇增,一種更高效率的編碼框架--HEVC應(yīng)運(yùn)而生。

      HEVC采用了許多新的技術(shù),其中重要的一項技術(shù)為基于編碼單元的自適應(yīng)四叉樹分割,最大的編碼單元為64×64,其作為樹根分割為4個32×32的編碼單元,而且每一個32×32的編碼單元可以繼續(xù)分割,直至4×4的編碼單元。對每一個編碼單元,對其進(jìn)行不同的預(yù)測得到不同的殘差單元(變換單元)。每一個殘差單元(變換單元)需要進(jìn)行變換以及量化操作,根據(jù)RDO從這些不同的預(yù)測模式選取最優(yōu)的預(yù)測模式以及分割模式。

      盡管HEVC比H.264/AVC得到50%以上的增益,然而,由于預(yù)測時使用此編碼單元周圍的像素值對當(dāng)前預(yù)測單元進(jìn)行預(yù)測,僅僅利用到像素之間的局部相關(guān)性,并沒有利用到像素之間的非局部信息,所以利用序列間的非局部信息提高壓縮效率成為近些年研究的一個熱點(diǎn)。

      研究人員利用外部圖像的相關(guān)性對圖像壓縮進(jìn)行了一次探索性的嘗試。對一副高分辨的圖像I進(jìn)行下采樣之后得到低分辨率圖像D,對D進(jìn)行壓縮,同時在解碼端將壓縮過的低分辨率圖像D進(jìn)行上采樣,得到高分辨率圖像然而由于壓縮之前對原始圖像進(jìn)行的下采樣操作造成了信息的損失,通過簡單的三次線性差值很難得到高質(zhì)量的高分辨率圖像,那么利用與外部的圖像數(shù)據(jù)庫進(jìn)行匹配,對其增強(qiáng)重構(gòu)得到了高質(zhì)量的高分辨率圖像匹配時利用了與外部的圖像數(shù)據(jù)庫的SIFT特征的相關(guān)性。但此種方法對大量數(shù)據(jù)庫的需求成為了弊端,一旦數(shù)據(jù)庫與所壓縮的圖像相關(guān)性不強(qiáng),那么并不能對一些圖像的細(xì)節(jié)信息進(jìn)行很好的恢復(fù)。

      眾所周知,KLT能夠最大化使信號能量集中,而DCT在信號滿足一階馬爾科夫模型能夠很好的逼近KLT。但是DCT是固定的變換,而且并非所有信號均滿足一階馬爾科夫模型,所以近些年來,KLT對于一類數(shù)據(jù)的表達(dá)能力再次被人們得到重視,所以如何設(shè)計滿足一類數(shù)據(jù)的KLT便成為研究的課題之一。而基于編碼模式的方向變換(MDDT)便是根據(jù)預(yù)測方向?qū)⑾嚓P(guān)性較強(qiáng)的一類數(shù)據(jù)共同使用一個KLT,從而得到更優(yōu)的壓縮效率。MDDT最早在H.264/AVC上提出,其方法觀察到使用同一個預(yù)測模式的殘差數(shù)據(jù)有相似的方向性,如圖1,這種具有相似方向性的數(shù)據(jù)可以用來生成一組分離的KLT,在編碼端,通過對傳統(tǒng)DCT進(jìn)行RDO選取更好的變換。

      MDDT提供了一種理念,其以后的離線變換的一些研究中對其進(jìn)行了改進(jìn)。基于編碼模式的稀疏變換(MDST)產(chǎn)生了更加魯棒的行和列變換,解決了當(dāng)外點(diǎn)存在于訓(xùn)練數(shù)據(jù)集中時MDDT不夠高效的問題。另外,一些研究人員觀察到即使使用同一個預(yù)測模式的殘差數(shù)據(jù)仍舊有很多殘差之間并不存在很強(qiáng)的相關(guān)性,如圖2所示,對于均為垂直預(yù)測模式下的殘差塊,其方向性仍舊區(qū)分很大。RDOT通過對同一個模式的殘差數(shù)據(jù)更好的分類,對同一個預(yù)測模式的殘差使用更多的變換,從而提高了編碼效率。同時,將MDDT中的分離KLT變?yōu)榉欠蛛xKLT也成為了改進(jìn)MDDT的途徑之一。

      盡管基于MDDT的改進(jìn)方法都取得了一定的增益,但是,MDDT,MDST,RDOT均為離線訓(xùn)練,其預(yù)定義的變換并不能適應(yīng)于越來越多的不同分辨率下以及各種各樣的視頻序列。而且,不同的視頻序列殘差塊像素之間的相關(guān)性也不盡相同,這造成了預(yù)定義的變換訓(xùn)練時需要的數(shù)據(jù)集的包容性變得至關(guān)重要。然而對于KLT變換,其訓(xùn)練集自身內(nèi)部的差異性越大,得到的KLT變換越接近于DCT變換。那么,如何使訓(xùn)練集滿足同一類特性同時生成與其相關(guān)的變換變得至關(guān)重要。

      基于信號的自適應(yīng)變換(SDT)采用在線訓(xùn)練的方法。對于每一個編碼單元,SDT通過模版匹配(TM)在已重構(gòu)的序列中找出與當(dāng)前殘差塊有高度相關(guān)性的數(shù)據(jù)集,得到基于此編碼單元的自適應(yīng)KLT,從而改進(jìn)編碼效率。此種方法避免了訓(xùn)練集的預(yù)選取造成的當(dāng)訓(xùn)練集與當(dāng)前編碼單元相關(guān)性較弱的問題。盡管如此,在編碼時,由于對每一塊編碼單元均使用TM進(jìn)行逐像素搜索,其編碼復(fù)雜度較高。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明的技術(shù)解決問題是:克服現(xiàn)有技術(shù)的不足,提供一種基于視頻編碼模式的方向變換方法,其能夠根據(jù)當(dāng)前序列不同模式的殘差的統(tǒng)計特性,使得殘差數(shù)據(jù)在變換之后能量更加集中,從而得到更小的碼流,提升編碼效率。

      本發(fā)明的技術(shù)解決方案是:這種基于視頻編碼模式的方向變換方法,該方法包括編碼和解碼,在編碼端,首先對其進(jìn)行數(shù)據(jù)的收集,對其進(jìn)行訓(xùn)練,得到KLT集合;在編碼時,通過RDO在KLT和DCT中選取對于當(dāng)前編碼單元更好的變換方法;在解碼端,首先對傳輸?shù)浇獯a端的字典進(jìn)行解碼,再進(jìn)行整個視頻的解碼。

      本發(fā)明充分地利用了同一個視頻序列中非局部信息之間的相關(guān)性,從而得到性能更好的KLT集合,同時避免了過高的計算復(fù)雜度。本發(fā)明中,對于同一模式下,不同塊大小的殘差塊進(jìn)行訓(xùn)練得到非分離或分離的KLT集合,此KLT集合能夠使其對于當(dāng)前序列的殘差塊能量更加集中,在量化之后得到更小的碼流,從而提升了編碼效率。

      附圖說明

      圖1示出了殘差絕對值量級標(biāo)準(zhǔn)化分布。

      圖2示出了使用垂直預(yù)測模式下的殘差塊。

      圖3是根據(jù)本發(fā)明的基于視頻編碼模式的方向變換方法的流程圖。

      圖4是根據(jù)本發(fā)明的編碼的一個優(yōu)選實(shí)施例的流程圖。

      圖5是根據(jù)本發(fā)明的解碼的一個優(yōu)選實(shí)施例的流程圖。

      圖6示出了相同序列以及不同序列之間殘差的像素間的相關(guān)性。

      具體實(shí)施方式

      如圖3所示,這種基于視頻編碼模式的方向變換方法,該方法包括編碼和解碼,在編碼端,首先對其進(jìn)行數(shù)據(jù)的收集,對其進(jìn)行訓(xùn)練,得到KLT集合;在編碼時,通過RDO在KLT和DCT中選取對于當(dāng)前編碼單元更好的變換方法;在解碼端,首先對傳輸?shù)浇獯a端的字典進(jìn)行解碼,再進(jìn)行整個視頻的解碼。

      本發(fā)明充分地利用了同一個視頻序列中非局部信息之間的相關(guān)性,從而得到性能更好的KLT集合,同時避免了過高的計算復(fù)雜度。本發(fā)明中,對于同一模式下,不同塊大小的殘差塊進(jìn)行訓(xùn)練得到非分離或分離的KLT集合,此KLT集合能夠使其對于當(dāng)前序列的殘差塊能量更加集中,在量化之后得到更小的碼流,從而提升了編碼效率。

      優(yōu)選地,所述編碼包括以下步驟:

      (1)數(shù)據(jù)的收集:通過HEVC壓縮得到需要訓(xùn)練的殘差集,其根據(jù)QP、塊大小、模式進(jìn)行分類,得到每一類的殘差數(shù)據(jù)集;

      (2)變換的生成:在全I(xiàn)幀編碼時,對QP數(shù)據(jù)集進(jìn)行訓(xùn)練,分別得到每一種塊大小的每一種模式的KLT,從而形成KLT集合;形成的分?jǐn)?shù)非分離KLT將其使用尺度為210進(jìn)行放大變?yōu)檎蚄LT,而分離KLT使用尺度為25進(jìn)行放大變?yōu)檎蚄LT,作為需要傳輸?shù)淖儞Q;

      (3)變換的使用:在RDO對KLT集和DCT進(jìn)行比較時,在使用量化前,根據(jù)當(dāng)前模式選取的掃描方法對其進(jìn)行排序,使掃描時先掃到統(tǒng)計意義上能量更加集中的系數(shù);對其量化,得到需要傳輸?shù)拇a流;對其量化過的碼流進(jìn)行反量化,反量化之后的數(shù)據(jù),根據(jù)排序方法,使其符合掃描的順序,進(jìn)而反變換,得到重建的圖像;

      (4)變換的傳輸:傳輸KLT時,將KLT寫入到二進(jìn)制碼流,從而對此二進(jìn)制碼流使用行程編碼進(jìn)行壓縮。

      優(yōu)選地,所述解碼包括以下步驟:

      (5)解碼得到整型KLT集合,讀取二進(jìn)制碼流,將其轉(zhuǎn)化為整型KLT集合;

      (6)根據(jù)解碼出來的標(biāo)識位,來選取DCT或者KLT集合中的對應(yīng)此塊大小以及模式的KLT,對于選取KLT的已反量化的殘差的系數(shù),根據(jù)掃描方式對其進(jìn)行排序,從而對此得到的量化之后的殘差塊進(jìn)行反變換重構(gòu)。

      優(yōu)選地,所述步驟(2)中,對大小為32×32的殘差塊采用分離KLT的同時對其他大小的殘差塊采用非分離KLT,并對大小為16×16的殘差塊所對應(yīng)的256×256的變換采用了降維技術(shù),從而在KLT集合傳輸中使用的碼流更小。

      優(yōu)選地,所述步驟(3)中,編寫一個標(biāo)識位來區(qū)別選中的變換,0代表DCT,1代表KLT集合。

      優(yōu)選地,所述步驟(4)中,使用WINRAR進(jìn)行壓縮。

      具體做法如下:

      由于之前的離線訓(xùn)練變換方法其中的訓(xùn)練集固定造成與當(dāng)前需要編碼的序列之間的不相關(guān)性,使得離線訓(xùn)練的變換對于相關(guān)性不強(qiáng)的視頻序列并沒有得到很好的效果,而同一個視頻序列之間相同預(yù)測模式下殘差數(shù)據(jù)之間的相關(guān)性要比不同視頻序列之間相同預(yù)測模式下殘差數(shù)據(jù)之間的相關(guān)性要強(qiáng)很多,在此,定義了像素間的相關(guān)性(Correlat ion coeffi c i ent),

      為了更好地觀察像素間的在空域上的相關(guān)性,像素間的曼哈頓距離(Manhattan distance)作為統(tǒng)計的標(biāo)尺。

      通過圖6,即使使用同一預(yù)測模式,相同序列的殘差像素間的相關(guān)性達(dá)到一致的特性,而對于不同序列,其殘差像素間的相關(guān)性有所差異。同時,其生成的KLT變換也不盡相同,RaceHorses以及BasketballDrill的序列不同預(yù)測模式訓(xùn)練得到的非分離KLT變換也有很大不同,存在差異性。

      因此,本發(fā)明提出了一種基于視頻編碼模式的方向變換,本發(fā)明充分地利用了同一個視頻序列中非局部信息之間的相關(guān)性,從而得到性能更好的KLT集合,同時避免了過高的計算復(fù)雜度。本發(fā)明中,對于同一模式下,不同塊大小的殘差塊進(jìn)行訓(xùn)練得到非分離或分離的KLT集合,此KLT集合能夠使其對于當(dāng)前序列的殘差塊能量更加集中,從而在量化之后得到更小的碼流,從而提升了編碼效率。

      本發(fā)明利用了同一個視頻的非局部信息,從而得到對當(dāng)前序列殘差塊具有更好變換的KLT集合,提升了編碼效率。其編碼端以及解碼端的示意圖如圖3。

      在編碼端,本發(fā)明首先對其進(jìn)行數(shù)據(jù)的收集,對其進(jìn)行訓(xùn)練,得到KLT集合,在編碼時,通過RDO在此KLT和DCT中選取對于當(dāng)前編碼單元更好的變換方法。在解碼端,首先對傳輸?shù)浇獯a端的字典進(jìn)行解碼,之后再進(jìn)行整個視頻的解碼工作。

      在此發(fā)明中,數(shù)據(jù)的收集、變換的生成、變換的使用、變換的傳輸為其主要組成部分。

      數(shù)據(jù)的收集:對于當(dāng)前序列片段首先使用HEVC框架進(jìn)行壓縮,得到其關(guān)于當(dāng)前量化步長(QP)的每一種塊大小的每一個預(yù)測模式下的數(shù)據(jù)集。

      變換的生成:非分離的KLT變換與分離的KLT變換相比,能夠使得殘差塊的能量更加集中,同時卻帶來更高的計算復(fù)雜度以及傳輸時所需要的更多碼流。對于N×N的編碼塊,其非分離的KLT變換系數(shù)的個數(shù)為N4,那么對于4×4以及8×8的塊,這樣的規(guī)??梢越邮埽欢?,對于16×16大小的殘差塊,其規(guī)模為256×256,如果對于此大小的塊需要傳輸?shù)淖儞Q的規(guī)模太大,從而會抵消掉引入16×16變換帶來的增益。幸運(yùn)的是,256×256的非分離字典中并不是所有的變換基元均在變換當(dāng)中占據(jù)主導(dǎo)作用,在此減少256×256的規(guī)模變?yōu)?56×32,從而減少傳輸所需的額外開銷的同時,基本保持了此變換的原本的變換特性。

      然而對于32×32的塊,對于每一個基元的長度為1024,即使利用對16×16塊的處理方法其規(guī)模仍舊很大,所以對于32×32的塊,本發(fā)明采用兩種方法:1.不使用KLT;2.使用更小規(guī)模的分離KLT。

      變換的使用:在HEVC框架中通過RDO在DCT和KLT集中選取編碼效率更高的變換。

      變換的傳輸:采用行程編碼技術(shù)對其進(jìn)行傳輸,比如WINRAR。

      此發(fā)明已經(jīng)在HEVC的HM12.1版本中被證明對于全I(xiàn)幀編碼時能夠得到很高的增益效果,如表1。

      表1

      在此編碼框架中,測試了前150幀的實(shí)驗結(jié)果(每150幀可以作為一個變換生成的單元),在圖表中,“直到16×16”表示在此方法中,僅僅對4×4、8×8、16×16訓(xùn)練了非分離的KLT集,“直到32×32”表示在此方法中,不僅對小于32×32的三種大小的塊采用非分離的KLT變換,而且對32×32大小的殘差塊采用了分離的KLT變換。對此發(fā)明與SDT進(jìn)行了比較,在表中,很明顯可以看到,相較于HEVC的標(biāo)準(zhǔn),得到了更高的壓縮效率。

      對于序列BasketballDrill,采用“直到16×16”方法時,在較高碼率下,此發(fā)明達(dá)到接近1db的增益。

      對于塊大小為4×4的殘差塊,不同的模式采用的KLT集合的個數(shù)也做了統(tǒng)計。在不具備方向信息的模式0(Planar模式)和模式1(DC模式),KLT集合被選中的概率仍舊接近于50%。

      整個測試序列集對于不同大小選取KLT集合所占的百分比如表2,

      表2

      觀察到,對于4×4、8×8、16×16大小的殘差塊,選取KLT集合作為變換所占的百分比均超過了50%,且8×8大小的殘差塊比較DCT更加傾向與選取KLT集合中的變換。

      圖4為本發(fā)明編碼端實(shí)施例的結(jié)構(gòu)示意圖,具體包括:

      1.首先通過HEVC壓縮得到需要訓(xùn)練的殘差集,其根據(jù)QP、塊大小、模式進(jìn)行分類,得到每一類的殘差數(shù)據(jù)集。

      2.由于在全I(xiàn)幀編碼時,QP已經(jīng)固定,對此數(shù)據(jù)集進(jìn)行訓(xùn)練,分別得到每一種塊大小的每一種模式的KLT,從而形成KLT集合。在此步驟中,形成的分?jǐn)?shù)非分離KLT將其使用尺度為210進(jìn)行放大變?yōu)檎蚄LT,而分離KLT由于對于當(dāng)前編碼塊有行變換和列變換,使用尺度為25進(jìn)行放大變?yōu)檎蚄LT,作為需要傳輸?shù)淖儞Q。

      3.在RDO對KLT集和DCT進(jìn)行比較時,由于訓(xùn)練的KLT均具有將能量集中而且按照遞減的次數(shù)排列的特性,所以在使用量化前,根據(jù)當(dāng)前模式選取的掃描方法對其進(jìn)行排序,使掃描時先掃到統(tǒng)計意義上能量更加集中的系數(shù)。之后對其量化,得到需要傳輸?shù)拇a流。為了編解碼匹配,在此對其量化過的碼流進(jìn)行反量化,反量化之后的數(shù)據(jù),仍舊根據(jù)排序方法,使其符合掃描的順序,進(jìn)而反變換,得到重建的圖像。同時,需要編寫一個標(biāo)識位來區(qū)別選中的哪種變換,在此發(fā)明中,0代表DCT,1代表KLT集合。

      4.傳輸KLT時,需要先將KLT寫入到二進(jìn)制碼流,從而對此二進(jìn)制碼流使用行程編碼進(jìn)行壓縮,比如WINRAR。

      圖5為本發(fā)明解碼端的流程示意圖,具體包括:

      5.先解碼得到整型KLT集合,讀取二進(jìn)制碼流,將其轉(zhuǎn)化為整型KLT集合。

      6.根據(jù)解碼出來的標(biāo)識位,來選取DCT或者KLT集合中的對應(yīng)此塊大小以及模式的KLT,對于選取KLT的已反量化的殘差的系數(shù),首先根據(jù)掃描方式對其進(jìn)行排序,從而對此得到的量化之后的殘差塊進(jìn)行反變換重構(gòu)。

      以上所述,僅是本發(fā)明的較佳實(shí)施例,并非對本發(fā)明作任何形式上的限制,凡是依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對以上實(shí)施例所作的任何簡單修改、等同變化與修飾,均仍屬本發(fā)明技術(shù)方案的保護(hù)范圍。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1