工具/软件:
HiGang Hua、
我们正在研究分析 H3A 数据,然后再输入到自动曝光。 我们需要对这方面作出几项澄清。
In file imaging/kernels/aewb/arm/vx_aewb_target.c 、在下面的函数中。 TI 正在做平均 gr 和 GB 值.然而,我们没有得到为什么+1 ,你的家伙正在做( sum_gr + sum_GB + 1)>> 1 )。请说明吗?请参阅下面的突出显示的代码。
静态 void parse_h3A_out (uint8_t h3a_buf[]、int32_t n_col、int32_t n_row、
int32_t、int32_t id_gr、int32_t id_Gb、int32_t id_b、
h3a_aewb_pixel_data_t *h3A_data)
{
uint8_t * cur_addr = h3a_buf;
INT n_WIN = 0;
int j、i;
对于(j = 0;j < n_row;j++)
{
对于(i = 0;i < n_col;i++)
{
uint16_t * pAewbWinData =(uint16_t *) cur_addr;
uint32_t sum_gr = pAewbWinData[id_gr];
uint32_t sum_GB = pAewbWinData[id_GB];
uint16_t sum_g =(uint16_t)((sum_gr + sum_GB + 1)>> 1);
h3A_data[j * n_col + i].green = sum_g;
h3A_data[j * n_col + i].red = pAewbWinData[id_r];
h3A_data[j * n_col + i].blue = pAewbWinData[id_b];
CUR_addr += sizeof (uint16_t)* 8;
N_WIN++;
if (n_win % 8 == 0)
{
CUR_addr += sizeof (uint16_t)* 8;
}
}
if ((cur_addr - h3a_buf)% 32 == 16)
{
CUR_addr += 16;
}
}
}
此致
Sriharsha.