qualcomm platform 3a algorithm -- awb

3A algorithm consists of auto exposure ,auto white balance and auto focous.The describtion sequence is based on different files.

1.config.c (vendor/qcom/proprietary/mm-camera/targers/gtcommon/config/config.c)

(1)int8_t config_init_ctrl(void) 

Is a damon thread,the beginning is int8_t config_init_ctrl(void) ,in this function there is a invoked function isp3a_init(&cfgctrl) == FALSE),the cfgctrl is global variable.cfgctrl is initialized in this function,and among the following procedurce ,lots parameters are from this parameter.

(2)int8_t isp3a_init(void *cctrl)

int8_t isp3a_init(void *cctrl)
{
...
  isp3a_ctrl_t   *ctrl3a = &(ctrl->isp3aCtrl);   // is pointer conversion, so,realization, is cfgctrl be initiated.

  sensor_ctrl_t *sensor = &(ctrl->sensorCtrl);
/*sensor_from_chromatix_3a_t,this structrue is related with the chromatix_XXX.h file,which we use to tune camera*/
  sensor_from_chromatix_3a_t *chroma = &(sensor->chromatixAnd3a); 
/*Parameters got above be used*/   
  isp3a_load_chroma(chroma, &(ctrl3a->isp3a_input.isp3a_chromatix)); //Filed of ctrl3a be assigned
  isp3a_load_sensor(sensor, &(ctrl3a->isp3a_input.isp3a_sensor));    //Filed of ctrl3a be assigned

  if (!aec_init(ctrl3a))
    CDBG("aec init failed\n");

  if (!awb_init(ctrl3a))
    CDBG("awb init failed\n");

  if (!af_init(ctrl3a))
    CDBG("af init failed\n");

  if (!sd_init(ctrl3a ))
    CDBG("sd init failed\n");

  ctrl3a->isp3a_input.vfeStatStruct = malloc(sizeof(isp3a_stats_out_t));
  if (ctrl3a->isp3a_input.vfeStatStruct == NULL) {
    CDBG("ctrl3a->isp3a_input.vfeStatStruct malloc failed\n");
    return FALSE;
  }
  ....
} /* isp3a_init */
2.awb.c  vendor/qcom/proprietary/mm-camera/targets/tgtcommon/isp3a/awb

(1)int8_t awb_init(isp3a_ctrl_t *ctrl3a)  

In this function awbCtrl be created and assigned first, and thenawb_settings_init(ctrl3a) be called.

(2)static void awb_settings_init(isp3a_ctrl_t *ctrl3a)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值