short TI_2A_SetEEValues_ar0331(int shift_val) //shift=3 for 1080P/720P, shift=4 for D1
{
    CSL_IpipeEdgeEnhanceConfig config;

    config.enable                   = TRUE;
    config.haloReduceEnable         = FALSE;
    config.mergeMethod              = CSL_IPIPE_YEE_EE_ES_MERGING_METHOD_SUMMATION;
    config.hpfShift                 = shift_val;
    config.hpfCoeff[0][0]           = 48;
    config.hpfCoeff[0][1]           = 12;
    config.hpfCoeff[0][2]           = 1024-10;
    config.hpfCoeff[1][0]           = 12;
    config.hpfCoeff[1][1]           = 0;
    config.hpfCoeff[1][2]           = 1024-6;
    config.hpfCoeff[2][0]           = 1024-10;
    config.hpfCoeff[2][1]           = 1024-6;
    config.hpfCoeff[2][2]           = 1024-2;
    config.lowerThres               = 8;//32; //changed based on Gang Comment
    config.edgeSharpGain            = 0;
    config.edgeSharpHpValLowThres   = 128;
    config.edgeSharpHpValUpLimit    = 768;
    config.edgeSharpGainGradient    = 32;
    config.edgeSharpOffsetGradient  = 0;
    config.table                    = TI_YEE_TABLE;

    DRV_ipipeSetEdgeEnhance(&config);

    return 0;
}
示例#2
0
short ALG_aewbSetEdgeEnhancement(EDGE_PARAM  *pParm )
{
  CSL_IpipeEdgeEnhanceConfig config;
  static CSL_IpipeEdgeEnhanceConfig prev_config = {0};



  config.enable                   = pParm->yee_en;
  config.haloReduceEnable         = pParm->en_halo_red;
  config.mergeMethod              = pParm->merge_meth;
  config.hpfShift                 = pParm->yee_shf;
  config.hpfCoeff[0][0]           = pParm->yee_mul_00;
  config.hpfCoeff[0][1]           = pParm->yee_mul_01;
  config.hpfCoeff[0][2]           = pParm->yee_mul_02;
  config.hpfCoeff[1][0]           = pParm->yee_mul_10;
  config.hpfCoeff[1][1]           = pParm->yee_mul_11;
  config.hpfCoeff[1][2]           = pParm->yee_mul_12;
  config.hpfCoeff[2][0]           = pParm->yee_mul_20;
  config.hpfCoeff[2][1]           = pParm->yee_mul_21;
  config.hpfCoeff[2][2]           = pParm->yee_mul_22;
  config.lowerThres               = pParm->yee_thr;
  config.edgeSharpGain            = pParm->es_gain;
  config.edgeSharpHpValLowThres   = (pParm->es_thr1&0x3F);
  config.edgeSharpHpValUpLimit    = (pParm->es_thr2&0x3F);
  config.edgeSharpGainGradient    = pParm->es_gain_grad;
  config.edgeSharpOffsetGradient  = pParm->es_ofst_grad;
  config.table                    = yee_table;

  if(memcmp(&prev_config, &config, sizeof(config))==0)
    return 0;

  #ifdef ALG_AEWB_DEBUG
  OSA_printf(" AEWB: EDGE ENHANCEMENT \n");
  #endif

  memcpy(&prev_config, &config, sizeof(config));

  if(gALG_aewbObj.vnfDemoCfg == 0)
	DRV_ipipeSetEdgeEnhance(&config);

  return 0;
}