Opened 2 years ago

#115 new defect

Region-of-interest offset issue

Reported by: ghaznavi Owned by: Vadim
Priority: major Milestone: SHM-13.0
Component: SHM software Version: SHM-12.0
Keywords: ROI Scalability Cc: Vadim, jct-vc@…

Description

There's an issue regarding ROI scalable coding in SHM-12.2.
The upsampling must be applied to the corresponding ROI in the base layer not the whole BL picture, otherwise the Height/Width of the BL and EL will be different.
The following changes must be applied in Void TComUpsampleFilter::upsampleBasePic in TComUpsampleFilter.cpp:

//Luma:
piSrcY = piSrcBufY + windowRL.getWindowLeftOffset() + windowRL.getWindowTopOffset() * strideBL;

//Luma:
for (i = 0; i < heightEL; i++)
{
   for (j = 0; j < widthEL; j++)
     {
	piDstY[j] = piSrcY[j] << shift;
     }
     piSrcY += strideBL;
     piDstY += strideEL;
}

Similar changes need to be applied to chroma components:

//Chroma:
piSrcU = piSrcBufU + (windowRL.getWindowLeftOffset() / chromaHorScalingEL) + (windowRL.getWindowTopOffset() / chromaVerScalingEL) * strideBL;
piSrcV = piSrcBufV + (windowRL.getWindowLeftOffset() / chromaHorScalingEL) + (windowRL.getWindowTopOffset() / chromaVerScalingEL) * strideBL;
piDstU = piDstBufU + (scalEL.getWindowLeftOffset() / chromaHorScalingEL) + (scalEL.getWindowTopOffset() / chromaVerScalingEL) * strideEL;
piDstV = piDstBufV + (scalEL.getWindowLeftOffset() / chromaHorScalingEL) + (scalEL.getWindowTopOffset() / chromaVerScalingEL) * strideEL;
for (i = 0; i < heightEL; i++)
{
    for (j = 0; j < widthEL; j++)
    {
	piDstU[j] = piSrcU[j] << shift;
	piDstV[j] = piSrcV[j] << shift;
    }

    piSrcU += strideBL;
    piSrcV += strideBL;
    piDstU += strideEL;
    piDstV += strideEL;
}

Change history (0)

Note: See TracTickets for help on using tickets.

This list contains all users that will be notified about changes made to this ticket.

These roles will be notified: Reporter, Owner, Subscriber, Participant

  • Gerhard Tech(Always)
  • Ghaznavi (Reporter)
  • jct-vc@…(Subscriber)
  • Karsten Suehring(Always)
  • Vadim Seregin(Owner, Subscriber)