1. 程式人生 > 其它 >HEVC程式碼閱讀- - xDCPredFiltering函式

HEVC程式碼閱讀- - xDCPredFiltering函式

技術標籤:HEVC視訊處理c++

xDCPredFiltering函式

功能:在DC預測模式之後的一個濾波操作,主要針對邊緣畫素進行。

對應公式:

Void TComPrediction::xDCPredFiltering( Int* pSrc, Int iSrcStride, Pel*& rpDst, Int iDstStride, Int iWidth, Int iHeight )
{
  Pel* pDst = rpDst;
  Int x, y, iDstStride2, iSrcStride2;

  // boundary pixels processing
  // 邊緣畫素的處理

  //左上角畫素
  pDst[0] = (Pel)((pSrc[-iSrcStride] + pSrc[-1] + 2 * pDst[0] + 2) >> 2);

  // 第一行畫素
  for ( x = 1; x < iWidth; x++ )
  {
    pDst[x] = (Pel)((pSrc[x - iSrcStride] +  3 * pDst[x] + 2) >> 2);
  }

  
  // 第一列畫素
  for ( y = 1, iDstStride2 = iDstStride, iSrcStride2 = iSrcStride-1; y < iHeight; y++, iDstStride2+=iDstStride, iSrcStride2+=iSrcStride )
  {
    pDst[iDstStride2] = (Pel)((pSrc[iSrcStride2] + 3 * pDst[iDstStride2] + 2) >> 2);
  }

  return;
}