Ignore:
Timestamp:
22 Aug 2013, 13:02:16 (11 years ago)
Author:
kwu-htm
Message:

JCT3V-E0117, "CE6-related: Simplified DC calculation for SDC"

  • a check list file (KWU_E0117.doc)
  • a coding result file (E0117_vs_rev585.xls)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/HTM-DEV-2.0-dev3-KWU/source/Lib/TLibCommon/TComPrediction.cpp

    r583 r589  
    25892589}
    25902590#endif
     2591
    25912592#if H_3D_DIM_SDC
    2592 Void TComPrediction::analyzeSegmentsSDC( Pel* pOrig, UInt uiStride, UInt uiSize, Pel* rpSegMeans, UInt uiNumSegments, Bool* pMask, UInt uiMaskStride )
     2593Void TComPrediction::analyzeSegmentsSDC( Pel* pOrig, UInt uiStride, UInt uiSize, Pel* rpSegMeans, UInt uiNumSegments, Bool* pMask, UInt uiMaskStride
     2594#if KWU_SDC_SIMPLE_DC_E0117
     2595                                         ,UInt uiIntraMode
     2596                                         ,Bool orgDC
     2597#endif
     2598                                        )
    25932599{
    25942600  Int iSumDepth[2];
     
    25962602  Int iSumPix[2];
    25972603  memset(iSumPix, 0, sizeof(Int)*2);
    2598  
     2604 
     2605#if KWU_SDC_SIMPLE_DC_E0117
     2606  if (orgDC == false)
     2607  {
     2608    if ( getDimType(uiIntraMode) == DMM1_IDX )
     2609    {
     2610      UChar ucSegmentLT = pMask[0];
     2611      UChar ucSegmentRT = pMask[uiSize-1];
     2612      UChar ucSegmentLB = pMask[uiMaskStride * (uiSize-1)];
     2613      UChar ucSegmentRB = pMask[uiMaskStride * (uiSize-1) + (uiSize-1)];
     2614
     2615      rpSegMeans[ucSegmentLT] = pOrig[0];
     2616      rpSegMeans[ucSegmentRT] = pOrig[uiSize-1];
     2617      rpSegMeans[ucSegmentLB] = pOrig[uiStride * (uiSize-1) ];
     2618      rpSegMeans[ucSegmentRB] = pOrig[uiStride * (uiSize-1) + (uiSize-1) ];
     2619    }
     2620    else if (uiIntraMode == PLANAR_IDX)
     2621    {
     2622      Pel* pLeftTop = pOrig;
     2623      Pel* pRightTop = pOrig + (uiSize-1);
     2624      Pel* pLeftBottom = (pOrig+ (uiStride*(uiSize-1)));
     2625      Pel* pRightBottom = (pOrig+ (uiStride*(uiSize-1)) + (uiSize-1));
     2626
     2627      rpSegMeans[0] = (*pLeftTop + *pRightTop + *pLeftBottom + *pRightBottom + 2)>>2;
     2628    }
     2629    return;
     2630  }
     2631#endif
     2632
    25992633  Int subSamplePix;
    26002634  if ( uiSize == 64 || uiSize == 32 )
Note: See TracChangeset for help on using the changeset viewer.