081、瑞芯微RK3568 ISP的3A框架深度适配——AE/AWB统计窗口配置与产线标定参数的迁移方法
081、瑞芯微RK3568 ISP的3A框架深度适配——AE/AWB统计窗口配置与产线标定参数的迁移方法去年年底接手一个项目,客户把一颗OV64A40 sensor往RK3568上搬,原平台是海思Hi3559,产线标定流程已经跑了大半年,数据表堆了一抽屉。本以为就是个sensor驱动移植的活儿,结果点亮之后预览画面偏色偏到怀疑人生,自动曝光在室内外切换的时候来回抽风,暗光下噪点跟下雪似的。查了三天,最后定位到问题根本不在sensor驱动,而是RK3568的ISP 3A统计窗口配置和产线标定参数的迁移方式完全没对齐。这篇文章就把这坑里爬出来的经验整理一下,给后面踩进来的兄弟省点时间。先说AE统计窗口。RK3568的ISP用的是RkAiq(Rockchip AIQ)框架,3A算法跑在用户态的librkaiq里,和内核的ISP驱动通过v4l2 subdev交互。AE统计窗口的配置入口在rkisp_aiq的AecConfig结构体里,但真正决定统计区域的是RkAiqCore里的AecStatsCfg。这里有个关键点:RK3568的AE统计窗口不是简单的一个矩形框,它支持多窗口加权,每个窗口可以独立配置权重,而且权重是8bit的,范围0~255。海思那边习惯用单窗口加全局权重,直接搬过来就会出问题——RK的AE算法对窗口权重的敏感度比海思高得多,你给一个低权重窗口里的高亮区域,算法照样会把它当成主要参考,导致曝光整体拉低。我当时遇到的现象是室内背光场景,人脸黑成一团,窗外过曝。查了RkAiqCore的log,发现AE统计窗口