本篇主要内容:
-
- 一、前言
- 二、Tunner工具基本使用
-
- [1. 环境准备](#1. 环境准备)
- [2. 关闭rkaiq_3A相关服务](#2. 关闭rkaiq_3A相关服务)
- [3. 运行rkaiq_tool_server](#3. 运行rkaiq_tool_server)
- [4. 工具连接、创建iq文件](#4. 工具连接、创建iq文件)
- [5. 标定一般原则](#5. 标定一般原则)
一、前言
✔️在前面篇《RK开发板(四)imx415 bring-up》,大致了解了从sensor出发到应用层得到可视的图像的基本链路,从BSP角度只记录了sensor bring-up的基础内容,实际上不使用RK官方调试好的iqfile的话,此时的图像还达不到目标(即色彩准确、低噪、高动态范围的人眼可见图像),而想要调试好最终的图像,还需要使用ISP tunner工具来调试出sensor对应的iqfile,这是一个记录对应sensor的参数.json文件,启动摄像头后,rkaiq会加载iqfile,按sensor/场景/ISO选择对应参数把参数下发给ISP和3A算法,实现出图。
✔️ISP Tunner是一个不断优化不断调整较为漫长的调试过程,在sensor原厂亦或是相关半导体原厂,都会由专门的ISP tunner工程师调试,也依赖相关设备工具和专业实验室,据笔者从专业做ISP Tunner的朋友打听到,他调试所用的色卡一套是1400,两支补光灯2000,再加灯箱等其余专业设备,一套下来是非常昂贵的。ISP tunner的工作也高度依赖原厂(sensor 原厂、ISP平台方、模组厂的经验和支持),实际上瑞芯微ISP tunner也并不对个人开放。真正稳定的画质也不是一次调出来的,而是靠"按顺序、单变量、多场景、可回溯"调出来的,因此,本篇只简单记录基本的标定流程的操作方法,笔者条件也有限,无法完全实现所有的标定步骤,仅简单记录本篇内容,希望能给到初学读者一些参考。
二、Tunner工具基本使用
1. 环境准备
- 开发板信息:RV1126B、系统Linux-buildroot、版本ISP35
- 工具版本:RKISP_Tuner_v3.3.1_Release
- 网络环境:tunner工具连接开发板是通过网络,这里需要搭建好网络环境,可以是网线也可以是wifi,只要是同一局域网即可。连接不上可排查网络连通性(防火墙、网络配置等)和tunner工具版本。
- 其它:匀光板、遮光板、24色标准色卡、灰阶卡、标准光源箱、棋盘格标定板等
2. 关闭rkaiq_3A相关服务
✔️笔者使用的文件系统里带有rk原厂调好的imx415的iq文件,系统启动后默认使用该文件且加载3A相关服务,这里可以选择移除掉该iq文件重启板子,或kill掉3A相关服务进程。

✔️通过以下命令或界面自带的相机应用,可以看到此时摄像头图像是正常的,当我们停掉3A服务或移除iq文件,图像就是偏暗偏绿的效果
shell
gst-launch-1.0 v4l2src device=/dev/video-camera0 ! video/x-raw,format=NV12,width=480,height=320,framerate=30/1 ! videoconvert ! autovideosink

3. 运行rkaiq_tool_server
✔️rkaiq_tool_server可以在SDK的external/camera_engine_rkaiq/可找到,当然默认也会将该文件打包到buildroot的/usr/bin下,运行rkaiq_tool_server之后即可用tunner连接


4. 工具连接、创建iq文件
✔️打开ISP tunner.exe,填入开发板IP,选择对应的型号,点击connect即可



5. 标定一般原则
✔️创建完IQ文件后,就可以开始标定参数,一般标定核心原则是按Pipeline顺序来,如图所示。这么做的原因是ISP各模块之间存在依赖关系,前级输出会影响后级输入,比如BLC如果不准,LSC、AWB、CCM 都可能被错误基准污染,一般推荐的顺序是BLC -> LSC -> AWB -> CCM -> 其他


