下面是划分结果
如果有什么不对的地方还请指正。
亮度分量的划分具体程序如下(色度分量类似),VTM2.1版本declib.cpp594行左右(m_pcPic->reconstructed = true;在重建结束之后进行)。
Picture* pic=m_pcPic;
PelUnitBuf recpic=pic->getRecoBuf();
AreaBuf<Pel>& recYpoint=recpic.Y();
AreaBuf<Pel>& recCbpoint= recpic.Cb();
AreaBuf<Pel>& recCrpoint= recpic.Cr();
uint64_t culength=pic->cs->cus.size();
for(uint64_t n=0;n<culength;n++){
CodingUnit* finalCU=pic->cs->cus.at(n);
int x= finalCU->lx();
int y= finalCU->ly();
int h= finalCU->lheight();
int w= finalCU->lwidth();
for(int j=0;j<h;j++){
recYpoint.at(x,y+j)=0;
recYpoint.at(x+1,y+j)=0;
recCbpoint.at(x/2,(y+j)/2)=0x80;
recCrpoint.at(x/2,(y+j)/2)=0x80;
}
for(int i=0;i<w;i++){
recYpoint.at(x+i,y)=0;
recYpoint.at(x+i,y+1)=0;
recCbpoint.at((x+i)/2,y/2)=0x80;
recCrpoint.at((x+i)/2,y/2)=0x80;
}
}