国产精品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>

      一種HEVC幀內(nèi)預(yù)測(cè)模式快速選擇方法與流程

      文檔序號(hào):11524682閱讀:780來(lái)源:國(guó)知局
      一種HEVC幀內(nèi)預(yù)測(cè)模式快速選擇方法與流程

      本方法屬于音視頻處理領(lǐng)域,涉及hevc(highefficiencyvideocoding)中幀內(nèi)預(yù)測(cè)模塊的預(yù)測(cè)模式快速選擇方法。



      背景技術(shù):

      超高清視頻是未來(lái)發(fā)展的一種必然趨勢(shì),如何讓人們快速有效的獲取到超高清資源,如何實(shí)時(shí)性的傳輸超高清視頻。這些都是下一代超高清視頻面向?qū)嶋H應(yīng)用所必須要解決的問(wèn)題。幀內(nèi)預(yù)測(cè)作為hevc編碼中的核心模塊,有效的較少其編碼時(shí)間是一項(xiàng)比較有意義的研究。

      實(shí)現(xiàn)幀內(nèi)預(yù)測(cè)的快速編碼大致可以分為以下三類方法:

      第一類方法是對(duì)幀內(nèi)編碼單元四叉樹劃分算法進(jìn)行優(yōu)化,通過(guò)分析圖像的編碼尺寸和視頻內(nèi)容之間的聯(lián)系,實(shí)現(xiàn)編碼單元cu劃分的提前終止,或者基于統(tǒng)計(jì)手段,通過(guò)離線學(xué)習(xí)或在線處理等分類技術(shù),提前確定不同圖像區(qū)域的編碼尺寸的范圍。

      第二類方法是對(duì)幀內(nèi)預(yù)測(cè)模式算法進(jìn)行優(yōu)化,分析幀內(nèi)預(yù)測(cè)模式同圖像紋理分布聯(lián)系以及幀內(nèi)預(yù)測(cè)模式之間的關(guān)聯(lián)性,通過(guò)排除不必要的模式判斷,實(shí)現(xiàn)編碼加速。

      第三類方法是簡(jiǎn)化率失真優(yōu)化rdo計(jì)算的復(fù)雜度。

      上述三類實(shí)現(xiàn)方法,每一類都具有各種手段來(lái)實(shí)現(xiàn)。一般而言,編碼單元cu的快速劃分主要有以下幾種方法來(lái)實(shí)現(xiàn):

      第一種方法就是利用圖像編碼單元cu的復(fù)雜度,復(fù)雜度越高劃分深度越大,復(fù)雜度越低,劃分深度越小。我們可以通過(guò)計(jì)算編碼單元cu的復(fù)雜度來(lái)預(yù)判編碼單元cu將采用何種劃分方式。

      第二種方法是通過(guò)相鄰編碼單元cu的深度來(lái)預(yù)測(cè)當(dāng)前編碼單元cu的深度,也可以利用前一幀相同位置的編碼單元cu深度來(lái)預(yù)測(cè)當(dāng)前編碼單元cu的深度。通過(guò)此類方法,我們可以跳過(guò)某些編碼單元cu的劃分方式,也可以提前終止某些編碼單元cu的劃分方式。

      第三種方法是利用分類器的方法來(lái)判斷當(dāng)前編碼單元cu是否繼續(xù)劃分。例如,利用支持向量機(jī)svm,利用決策樹,隨機(jī)深林,貝葉斯分類器等。

      幀內(nèi)預(yù)測(cè)模式算法的優(yōu)化主要有以下幾種方法來(lái)實(shí)現(xiàn):

      第一種是利用上層預(yù)測(cè)單元pu的最佳預(yù)測(cè)模式來(lái)預(yù)測(cè)當(dāng)前預(yù)測(cè)單元pu的預(yù)測(cè)模式。

      第二種是利用相鄰預(yù)測(cè)單元pu的預(yù)測(cè)模式來(lái)預(yù)測(cè)當(dāng)前預(yù)測(cè)單元pu的預(yù)測(cè)模式。

      第三種是利用當(dāng)前預(yù)測(cè)單元pu的紋理方向來(lái)提前預(yù)判當(dāng)前預(yù)測(cè)單元pu可能的最佳預(yù)測(cè)模式



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

      本發(fā)明的目的在于提出一種hevc幀內(nèi)預(yù)測(cè)模式快速選擇算法,主要是通過(guò)得到當(dāng)前預(yù)測(cè)單元pu的紋理方向,來(lái)實(shí)現(xiàn)預(yù)測(cè)模式的快速選擇。能夠在不大影響編碼性能的情況下,減少編碼時(shí)間。能夠用來(lái)進(jìn)行實(shí)時(shí)編碼,降低編碼時(shí)間太長(zhǎng)引起的時(shí)延。

      實(shí)現(xiàn)本發(fā)明目的的技術(shù)解決方案為。

      一種hevc幀內(nèi)預(yù)測(cè)模式快速選擇方法,其包括如下步驟:

      步驟1:從視頻序列中提取一幀圖像,將一幀圖像劃分為若干個(gè)編碼樹單元ctu,每個(gè)編碼樹單元ctu包含64×64個(gè)像素,此時(shí)編碼樹單元ctu的劃分深度設(shè)置為0,執(zhí)行步驟2;

      步驟2:通過(guò)prewitt算子得到編碼單元cu的紋理方向,通過(guò)紋理方向選出相應(yīng)的最有可能的一種角度預(yù)測(cè)模式,將最有可能的模式mpm和兩種非角度模式直流dc模式和planar模式加入到候選模式中,執(zhí)行步驟3;

      步驟3:對(duì)候選模式中每一種預(yù)測(cè)模式進(jìn)行率失真優(yōu)化rdo代價(jià)的計(jì)算,選擇率失真優(yōu)化rdo代價(jià)最小的預(yù)測(cè)模式作為最優(yōu)的預(yù)測(cè)模式,執(zhí)行步驟4;

      步驟4:如果劃分深度小于3,將編碼單元cu劃分深度加1,重復(fù)步驟2-3,直到劃分深度大于3停止劃分,就可以得到當(dāng)前編碼樹單元ctu最優(yōu)的深度劃分和預(yù)測(cè)模式,整幀圖像完成幀內(nèi)預(yù)測(cè)。

      進(jìn)一步地,步驟2具體包括以下步驟:

      步驟2.1:根據(jù)prewitt算子模板,對(duì)編碼單元cu的像素值進(jìn)行模板卷積計(jì)算得到水平和垂直方向即x,y方向的梯度,利用y/x的反正切值得到編碼單元cu的紋理方向角度,執(zhí)行步驟2.2;

      步驟2.2:根據(jù)得到的紋理方向角度,與hevc幀內(nèi)預(yù)測(cè)角度作出一一對(duì)應(yīng),從而能夠找出編碼單元cu的紋理方向角度相對(duì)應(yīng)的最有可能的一種預(yù)測(cè)模式,執(zhí)行步驟2.3;

      步驟2.3:建立一個(gè)候選模式列表,將得到的一種角度預(yù)測(cè)模式加入到候選列表,然后將當(dāng)前編碼單元cu相鄰的三個(gè)編碼單元cu的最佳預(yù)測(cè)模式和兩種非角度預(yù)測(cè)模式即直流dc模式和planar模式同樣加入到候選模式列表中。

      進(jìn)一步地,步驟2.1具體包括以下步驟:

      步驟2.1.1:判斷當(dāng)前預(yù)測(cè)單元pu的寬度和高度是否小于等于8個(gè)像素,如果是,則利用prewitt算子的四個(gè)方向模板對(duì)每一個(gè)3×3像素矩陣進(jìn)行卷積計(jì)算,對(duì)于4×4大小的預(yù)測(cè)單元pu而言,有4個(gè)3×3像素矩陣,執(zhí)行步驟2.1.2;如果不是執(zhí)行步驟2.1.3;

      步驟2.1.2:將每一個(gè)3×3像素矩陣的四個(gè)方向模板計(jì)算結(jié)果進(jìn)行坐標(biāo)x,y合成,得到水平梯度值gx和垂直梯度值gy;求取上述步驟得到的gx和gy的平均值,利用得到的平均值的反正切值得到預(yù)測(cè)單元pu的紋理方向角度;

      步驟2.1.3:如果編碼單元cu的寬度高度大于8個(gè)像素,則由于尺寸太大,造成各3×3像素矩陣的計(jì)算結(jié)果相互抵消,從而使得提取效果不好,此時(shí),仍采用標(biāo)準(zhǔn)算法中的粗模式選擇方法。

      進(jìn)一步地,步驟2.2具體包括以下步驟:

      步驟2.2.1:計(jì)算出hevc幀內(nèi)預(yù)測(cè)33種角度預(yù)測(cè)模式所對(duì)應(yīng)的角度;執(zhí)行步驟2.2.2。

      步驟2.2.2:根據(jù)計(jì)算出的角度,算出兩個(gè)相鄰模式的平均角度,以當(dāng)前模式與前一模式的角度作為右側(cè)值,以當(dāng)前模式與后一模式的角度平均值作為左側(cè)值,得到每一個(gè)模式對(duì)應(yīng)的角度范圍,執(zhí)行步驟2.2.3;

      步驟2.2.3:依次遍歷所有模式的角度范圍,找到對(duì)應(yīng)與紋理方向角度垂直的角所對(duì)應(yīng)的模式。

      與hevc編碼標(biāo)準(zhǔn)中幀內(nèi)預(yù)測(cè)技術(shù)相比,本發(fā)明具有如下優(yōu)點(diǎn):

      1.提出的幀內(nèi)預(yù)測(cè)模式快速選擇算法能夠快速的確定可能的最優(yōu)的角度預(yù)測(cè)模式,能夠有效的減少編碼時(shí)間,實(shí)現(xiàn)實(shí)時(shí)編碼。

      2.能夠降低幀內(nèi)預(yù)測(cè)編碼過(guò)程的復(fù)雜度。

      附圖說(shuō)明

      圖1是本發(fā)明一種幀內(nèi)預(yù)測(cè)模式快速選擇方法的整體流程圖。

      圖2是prewitt算子四個(gè)方向的卷積模板。

      圖3是編碼單元cu的劃分流程圖。

      圖4是利用prewitt算子提取當(dāng)前編碼單元cu紋理方向的流程圖。

      具體實(shí)施方式

      下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式做進(jìn)一步說(shuō)明。

      結(jié)合圖1,本發(fā)明一種幀內(nèi)預(yù)測(cè)快速模式快速選擇方法,具體實(shí)施方式如下:

      步驟1:將平臺(tái)配置的hevc視頻序列分割為若干個(gè)小的圖像組,從圖像組中提取出一幀圖像。將該幀圖像劃分成若干個(gè)編碼樹單元ctu,先將每一個(gè)編碼樹單元ctu的劃分深度設(shè)置為0,執(zhí)行步驟2;

      步驟2:建立當(dāng)前編碼單元cu的候選模式列表,具體步驟如下:

      2.1):如果編碼單元cu尺寸為4或者8個(gè)像素,對(duì)當(dāng)前深度的編碼單元cu進(jìn)行prewitt算子模板卷積計(jì)算,利用0度方向的模板進(jìn)行水平方向的梯度計(jì)算,利用90度方向的模板進(jìn)行垂直方向的梯度計(jì)算,再利用45°角和135°角的模板計(jì)算梯度方向,最后通過(guò)坐標(biāo)合成得到當(dāng)前編碼單元cu的水平和垂直梯度向量,求取紋理方向角度值。執(zhí)行步驟2.2;如果編碼單元cu尺寸比8大,則采用粗模式選擇得到候選模式,結(jié)合圖4,步驟2.1的具體步驟如下:

      a):提取當(dāng)前編碼單元cu的左上角的3×3像素矩陣,以中心點(diǎn)像素值為f(x,y)。定義兩個(gè)變量i和j,其中i代表當(dāng)前像素矩陣所在寬度的位置,j代表當(dāng)前像素矩陣所在高度的位置,i和j均初始化為1。

      b):利用圖2所示的prewitt算子四個(gè)方向的模板來(lái)分別計(jì)算四個(gè)方向的梯度值,如式(1)-(4)所示。

      g0°=f(x-1,y+1)+f(x,y+1)+f(x+1,y+1)-f(x-1,y-1)-f(x,y-1)-f(x+1,y-1)(1)

      g90°=f(x+1,y-1)+f(x+1,y)+f(x+1,y+1)-f(x-1,y-1)-f(x-1,y)-f(x-1,y+1)(2)

      g45°=f(x-1,y)+f(x-1,y+1)+f(x,y+1)-f(x,y-1)-f(x+1,y-1)-f(x+1,y)(3)

      g135°=f(x-1,y-1)+f(x,y-1)+f(x-1,y)-f(x+1,y+1)-f(x,y+1)-f(x+1,y)(4)

      其中g(shù)0°表示是0度方向的梯度值,g90°表示90度方向梯度值,g45°表示的是45度方向的梯度值,g135°表示的是135度方向的梯度值,f(x-1,y-1)表示坐標(biāo)為(x-1,y-1)的像素值,f(x-1,y-1)表示坐標(biāo)為(x-1,y-1)的像素值,f(x-1,y)表示坐標(biāo)為(x-1,y)的像素值,f(x-1,y+1)表示坐標(biāo)為(x-1,y+1)的像素值,f(x,y-1)表示坐標(biāo)為(x,y-1)的像素值,f(x,y)表示坐標(biāo)為(x,y)的像素值,f(x,y+1)表示坐標(biāo)為(x,y+1)的像素值,f(x+1,y-1)表示坐標(biāo)為(x+1,y-1)的像素值,f(x+1,y)表示坐標(biāo)為(x+1,y)的像素值,f(x+1,y+1)表示坐標(biāo)為(x+1,y+1)的像素值;

      c):將四個(gè)方向的梯度值進(jìn)行坐標(biāo)合成,得到合成后的水平方向梯度值gx和垂直方向梯度值gy,如式(5)和(6)所示

      d):將3×3像素矩陣右移,此時(shí)i自增1,如果此時(shí)的i等于編碼單元cu寬度減1,則將像素矩陣下移,j加1,執(zhí)行步驟e)。否則i自增1之后重復(fù)上述步驟b)和c)。

      e):j加1之后,依然是重復(fù)上述步驟b)、c)和d)。直到將編碼單元cu內(nèi)所有的像素矩陣均處理計(jì)算完成。

      f):求得上述所有計(jì)算的像素矩陣的水平方向梯度值gx和垂直方向梯度值gy的平均值,根據(jù)其反正切值就可求得當(dāng)前編碼單元cu的紋理方向角度。

      2.2):求得當(dāng)前紋理方向的角度值后,與幀內(nèi)預(yù)測(cè)角度模式進(jìn)行一一對(duì)照,從而能夠找出與紋理方向角度最接近的兩種角度預(yù)測(cè)模式,將這兩種角度預(yù)測(cè)模式加入到模式候選列表中。執(zhí)行步驟2.3);

      2.3):獲取當(dāng)前編碼單元cu相鄰的編碼單元cu的最佳預(yù)測(cè)模式mpm,將mpm加入到候選模式列表中,同時(shí)也將兩種非角度預(yù)測(cè)模式直流dc模式和planar模式加入到候選模式列表中。這樣就組成了候選模式列表,其數(shù)量一般為6種。

      步驟3:對(duì)候選模式中每一種預(yù)測(cè)模式進(jìn)行率失真優(yōu)化rdo代價(jià)的計(jì)算,選擇率失真優(yōu)化rdo代價(jià)最小的預(yù)測(cè)模式作為最優(yōu)的預(yù)測(cè)模式,具體步驟為:

      3.1):對(duì)候選模式列表中的每一種模式進(jìn)行預(yù)測(cè)計(jì)算,得到當(dāng)前編碼單元cu內(nèi)像素的預(yù)測(cè)值,用原始值減去預(yù)測(cè)值,得到殘差值。執(zhí)行步驟3.2;

      3.2):將殘差值作平方和的計(jì)算得到采用不同預(yù)測(cè)模式的失真度,另外計(jì)算得到采用不同預(yù)測(cè)模式所需要的比特?cái)?shù)。執(zhí)行步驟3.3;

      3.3):通過(guò)步驟3.2的計(jì)算,按照式(7)得到各種候選預(yù)測(cè)模式的rdo代價(jià),選取rdo代價(jià)值最小的預(yù)測(cè)模式作為最優(yōu)預(yù)測(cè)模式。

      rdomode=sse+λmode×bmode(7)

      sse表示平方差值之和,bmode表示預(yù)測(cè)單元熵編碼后的編碼代價(jià),包括殘差數(shù)據(jù)熵編碼后的碼流信息,λmode表示拉馬達(dá)值的大小。

      步驟4:結(jié)合圖3,對(duì)編碼單元cu進(jìn)行四叉樹的劃分,具體步驟為:

      4.1):判斷編碼單元cu的劃分深度的大小,如果當(dāng)前編碼單元cu的劃分深度小于3,則編碼單元cu能夠繼續(xù)劃分,執(zhí)行上述步驟2-3。否則當(dāng)前編碼單元cu無(wú)法繼續(xù)劃分,執(zhí)行步驟4.2;

      4.2):比較當(dāng)前深度的編碼單元cu的率失真優(yōu)化rdo代價(jià)與下一深度的四個(gè)子編碼單元cu的率失真優(yōu)化rdo代價(jià)之和的大小。如果當(dāng)前深度的率失真優(yōu)化rdo代價(jià)比較小,則編碼單元cu無(wú)需繼續(xù)劃分,否則需要繼續(xù)劃分。執(zhí)行步驟4.3;

      4.3):遞歸比較每一深度與下一深度的率失真優(yōu)化rdo代價(jià),從而確定當(dāng)前編碼樹單元ctu的最優(yōu)劃分模式。

      步驟5:重復(fù)步驟2-4,直到將整幀圖片處理完成。

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