大家好,今天我们继续来讲解isp第二期内容,这期内容主要分三个部分:
那对于RKISP2.x_Tuner的工具使用,这个在第一期的内容里面有详细的介绍,当时也给大家大概的介绍了一些isp专用术语;随着内容的深入,这些专业俗语会慢慢详细讲解,并实战演示!
希望这个专题的内容,对大家学习isp内容有帮助!
在我们进行对图像质量校准的时候,我们肯定是需要大体知道一个工作流程,只有知道了工作流程,我们才知道干什么。
这里以rv1126平台为例,实际的tunning工作流程如下:
BLC:黑电平校正
LSC:镜头阴影校正
CCM:色彩校正矩阵
AWB:自动白平衡校正
GIC:绿通道平衡校正
Bayer NR:Raw域降噪
YNR:Y通道降噪
MFNR:多帧降噪
FEC:鱼眼校正
今天会专门来介绍黑电平校准!
在第一步新建工程完成后,工具将会在工程路径下生成一份XML文件,该文件记录ISP开放的所有可调参数,无论是后续的标定流程中输出的标定参数,还是调试流程中用户调试的结果,都将记录在XML文件中,最后用户应将该文件替换固件或设备中相应位置的XML即可,这个是在rk平台上是这种参数保存方式,其它soc平台就可能不太一样:
拍摄Raw图是为了进行基础模块的标定,同时也可以采集效果异常的场景,在仿真器中排查问题(这个暂时没讲解,如果要用到再来弄)。基础模块标定需要按照一定流程来进行,如下图:
由于某些模块的标定会依赖前级模块的标定结果,所以用户应按照流程顺序完成标定工作。在完成某一模块标定计算后,应确认参数是否正确,以免错误的结果影响到后级模块。
下面正式开始来创建一个tunning工程:
选择当前项目或产品使用的sensor,Tuner会自动加载对应的配置(分辨率、曝光表等),同时填写镜头型号和模组型号,便于区分项目或产品名称,这里rv1126开发板上使用的sensor是格科微的sensor:gc2053,对应的datasheet如下:
最终生成的工程文件如下:
下面开始来连接rv1126开发板;上次我给大家分享了如何在rv1126开发板通过udhcpc来自动获取局域网的ip方法,这里我就不再重复写了!
点击connect to devices 和test按钮出现下面情况,说明连接开发板成功:
现在这里使用vlc来查看预览画面:
最后来使用Capture Tool抓取Raw图:
加载完成后工具会根据XML中的配置,初始化拍摄配置界面:
接着开始按照下面步骤配置下面的参数,不过这里全部默认即可(根据实际情况做调整):
1、选择正确的分辨率、光源和模块名,便于后续使用时区分
2、配置增益、曝光时间和拍摄张数等参数
3、点击Start Manual Capture按钮
4、 拍摄到的raw图会在右侧的Raw Preview & Statistics界面中显示:
5、下方显示了该raw图对应的直方图信息、最大/最小/均值亮度、全局白平衡增益等:
6、抓拍的图片就保存在工程里面:
各模块的标定工作主要可以分为三个部分:
1、拍摄标定图:根据各模块的需求,用合适的曝光拍摄标定板或场景的raw图
2、计算标定参数:导入raw图,计算标定参数,个别模块可以根据需要微调一些参数
3、确认效果并保存参数:根据各模块的标准,判断标定参数是否正确
看下面这幅图的介绍介绍即可:
1、拍摄时遮黑镜头,确保没有任何光线进入
2、拍摄需要遍历Gain=1x、2x、4x、8x、16x...Max(若驱动最大Gain支持到40x,则Max=32)
3、曝光时间并不影响BLC标定,可以统一10ms
1、打开RKISP Tuner Capture Tool,参考前面的方法,连接设备,光源名选择unknow(无光),模块名称选择BLC;
2、将设备或模组置于无光环境下,并使用黑布、镜头盖等将镜头盖紧;
3、 在Manual Exposure页面中配置Gain=1.0 ExpTime=0.010 Frame Number=1;
4、 点击Start Manual Capture拍摄Raw图;
5、 拍摄到的raw图会显示在右侧,确认raw图基本正常后拍摄下一张;
6、 调整Gain值,Gain=2,重复步骤c、d、e,直至遍历完成(意思就是多抓几张不太同gain值得图片);
标定方法:
1、打开Calibration Tool,点击界面左上角的Edit Options按钮,打开配置界面,输入raw图的尺寸、位宽和bayer顺序;
2、选择BLC标签页,点击下方的Load Raw Files按钮,选择存放Raw图的文件夹,导入的Raw图会显示在右侧的列表中:
3、点击Calibrate按钮,开始标定计算:
最后保存参数即可,并这个xml文件放到开发板里面去看实际的现象.
文章相关参考:Rockchip_IQ_Tools_Guide_ISP2x_CN_v1.2.1
最后的效果,我会在第三期内容进行展示给大家!