T31快启图像效果优化
liwen01 20220821
(一)基础方法及概念
参考文档
《Ingenic_Zeratul_T31_快起效果调试说明_20200927_CN》
(1)起始EV参数
IPC 每次启动都是冷启动,画面有一个暗变亮的过程,称作为AE收敛过程(自动曝光收敛过程)。
为了加快AE收敛的整个过程,可以设置一个起始EV值,也就是开始曝光参数,AE曝光从这个值开始收敛,可以缩短整个AE收敛的过程。
(2)起始EV值采集方法
实际是通过光敏ADC值与曝光参数EV值建立一个关系表,启动的时候,软件根据ADC值去查找对应的EV值进行曝光设置。
启动过程中存在一个问题:
💡刚上电启动的时候光敏ADC不稳定
ev值与adc表采集需要分两种方式:
- 应用层直接采集ADC与EV值的对应关系
- 在boot中采集ADC与程序启动后稳定的EV值对应的关系
根据官方的说明,君正系列,在T20系列,可以直接使用应用层软件直接采adc值与稳定的ev值
但是在T30,T31芯片上,因为启动的时候ADC其实还未稳定,所以只能是采集启动时boot的adc值,与内核打印中稳定的ev值相互对应,不然会出现不准确的现象
(3)EV值相关
- 光线越强的时候,稳定的EV值就越小,实际测试到的值为4(gc2093)
- 光线越弱的时候,稳定的EV值就越大,测试到的最大值为16万多(gc2093)
- 判断EV值是否有效果
- 在某个场景(adc 值基本稳定)
- 手动调整不同的EV值,看实际的图片效果
- 可以在全黑的场景中测试到最大的EV值(比如用黑胶布封住光敏和镜头)
- 可以在太阳直射的场景中测试到最小EV值
- 不同的sensor,ev值的最值会不一样,与ADC的对应关系也是不一样
(二)存在问题
(1)问题一:第一张图像不正常,后续图像有个收敛的过程
问题现象:
上面第一张图像明显的过曝,第2张到第4张也是存在一个收敛的过程(由曝光不足到曝光正常)
问题原因:
-
出现这样的收敛过程,实际是不正常的,可能存在两个原因:
- ev 表有设置成功,但是实际没有生效
- ev 表采集的不是很准确,出现一个重新收敛的过程
-
ISP 中丢的帧数不够
- 每款sensor 丢的帧数有差异,需要实际调试
- 如果丢帧数量多,会导致启动速度变慢
解决方案:
-
将boot的打印打开,同时将kernel的 isp 快启调试数据打开
- 查看ev 值是否按boot查询到的ev值开始收敛
- 如果是,则为原因二,用稳定的ev值重新调整看图像效果
- 如果否,需排查为什么未生效
- 查看ev 值是否按boot查询到的ev值开始收敛
-
尝试不同帧数的丢,直到可以正常曝光为止
(2)问题二:快启没有缓存图片
问题现象:
实际快启的时候,发现图片没有缓存,对时间秒表进行拍照,发现拍360图片的时间比主码流的时间还早
问题原因:
- 因为使用的是gc2093 sensor,开启了WDR功能,使用riscv 后启动速度会非常慢,所以把riscv文件删除了
- 因为没有riscv,所以小核无法使用,无法快启缓存图片
解决方案
- 君正的说法:如果开启了WDR,就没法使用riscv,wdr 是IQ那边处理的,目前没办法处理。
注意事项
- 需要注意libz_gc2093.c中adc值的增长方向,IR,CUT切换等参数的配置要与实际板子相匹配
- 不同光照亮度下曝光值的采集,如果没有专业的调试显示屏,可以直接将设备放置在空旷的地方对着天空拍,采集24小时,那常用的亮度基本上就都有了。
- 君正并没有开放ISP相关的一些库,如果觉得库里面影响启动时间,可以尝试使用最新SDK中的库进行调试
附件
- 代码
//tools/make_tag/sensor_start_ae_table/libz_gc2093.c
#include "libz_common.h"
int g_gpio_led_mode = LED_MODE_LOW_ON;
int g_gpio_led = GPIO_PB(31);
int g_gpio_ircut_mode = IRCUT_MODE_IGNORE;
int g_gpio_ircut_p = GPIO_PB(18);
int g_gpio_ircut_n = GPIO_PB(17);
int g_gpio_ircut_edge = 0;
int g_adc_value = 3000;
int g_adc_direction = ADC_DIRECTION_1;
int g_adc_reference = -1;
int g_gpio_white_led = -1;
int g_gpio_white_led_status = -1;
struct vol_start_value_table table_day[] = {
{302,4},
{319,5},
{341,6},
{360,8},
{380,9},
{402,10},
{499,13},
{602,14},
{718,14},
{802,15},
{854,17},
{908,24},
{1002,96},
{1050,242},
{1102,706},
{1176,2616},
{1205,3553},
{1305,6799},
{1405,8325},
{1517,10479},
{1604,12626},
{1704,14484},
{1840,19098},
{1975,24062},
{2004,24742},
{2030,26612},
{2056,21423},
{2097,24041},
{2110,29908},
{2178,36098},
{2294,36675},
{2774,53740},
{2813,54801},
{2819,57503},
{2835,57165},
{2864,58467},
{2945,61555},
{3009,131359},
{3080,142020},
{3087,145011},
{3093,142503},
{3129,160014},
{3132,161172},
{3142,159098},
{3296,161220},
};