Opened 9 years ago

Closed 9 years ago

#86 closed defect (fixed)

Potential issue on identical motion check

Reported by: Tomohiro Ikai Owned by: Vadim
Priority: minor Milestone: SHM-11.0
Component: SHM software Version: SHM-10.0
Keywords: Cc: Vadim, jct-vc@…

Description

As reported in the 3D-HEVC bug tracker at
https://hevc.hhi.fraunhofer.de/trac/3d-hevc/ticket/106, the identical motion check may have problem in layered coding.

Specifically, in layerd coding, pictures has two dimentions, POC and layer, but we only check POCs in the identical motion check. Thus we may fail in the case that two reference pictures have the same POC but different layer id.

Bool TComPrediction::xCheckIdenticalMotion ( TComDataCU* pcCU, UInt PartAddr )
{
...
#if SVC_EXTENSION

Int layerIdL0 = pcCU->getSlice()->getRefPic(REF_PIC_LIST_0, pcCU->getCUMvField(REF_PIC_LIST_0)->getRefIdx(PartAddr))->getLayerId();
Int layerIdL1 = pcCU->getSlice()->getRefPic(REF_PIC_LIST_1, pcCU->getCUMvField(REF_PIC_LIST_1)->getRefIdx(PartAddr))->getLayerId();
if(layerIdL0 == layerIdL1 && RefPOCL0 == RefPOCL1 && pcCU->getCUMvField(REF_PIC_LIST_0)->getMv(PartAddr) == pcCU->getCUMvField(REF_PIC_LIST_1)->getMv(PartAddr))

#else

if(RefPOCL0 == RefPOCL1 && pcCU->getCUMvField(REF_PIC_LIST_0)->getMv(PartAddr) == pcCU->getCUMvField(REF_PIC_LIST_1)->getMv(PartAddr))

#endif

Change history (1)

comment:1 Changed 9 years ago by Vadim

  • Resolution set to fixed
  • Status changed from new to closed

fixed as suggested with rev 1468

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)
  • jct-vc@…(Subscriber)
  • Karsten Suehring(Always)
  • Tomohiro Ikai(Reporter)
  • Vadim Seregin(Owner, Subscriber, Participant)