块的HEVC像素

时间:2014-02-11 19:42:36

标签: hevc

所以我正在玩HEVC的代码,并想知道如何找到一个块的像素。更具体地说,我有一个32x32 CU,如何找到32x32块中的实际像素?

我用来提取CU的代码(取自3d-HEVC的TEncSearch.cpp):

TComPic*      pcPicTex = pcCU->getSlice()->getTexturePic();
TComDataCU* pcColTexCU = pcPicTex->getCU( pcCU->getAddr() );

从那里我添加了以下内容,结果是32x32块:

printf("CU %ux%u \n", pcColTexCU->getWidth(0), pcColTexCU->getHeight(0) );

有谁知道如何找到32x32块的实际像素?

由于

1 个答案:

答案 0 :(得分:1)

由于去块滤波器模块对重建像素进行滤波,您可以参考源代码(TComLoopF​​ilter.cpp)来查看如何访问重建像素。

TComPicYuv* pcPicYuvRec = pcCU->getPic()->getPicYuvRec();
Pel* piSrc    = pcPicYuvRec->getLumaAddr( pcCU->getAddr(), uiAbsZorderIdx );

pcCU-> getAddr()表示CTU的索引

uiAbsZorderIdx表示CTU中的zindex(通常可能是4x4块索引)