K230 ISP初始化配置指南#
1. K230 ISP初始化配置概述#
在图像调优后,所形成的ISP配置参数,需要写入相应sensor的初始化配置文件中。开机时,ISP会自动调用这些配置文件中的设置完成初始化。当模块自适应功能使能时,ISP将按该模块自适应功能的设置进行运行。 ISP初始化配置有三个文件:xml、manaual.json和auto.json,若sensor可选不同分辨率,则不同分辨率下都需有这三个配置文件。这些配置文件都存放于\k230_sdk\src\big\mpp\userapps\src\sensor\config目录下。
2. xml文件#
2.1 概述#
可使用K230 ISP Calibration Tool生成xml文件,工具中所有模块的校准都需要完成,以得到完整的校准数据。
xml文件中包含的数据有两个来源:
使用Calibration Tool得到的校准结果
工具发布包中提供的专业数据文件
校准数据及校准参数文件存放的位置,如下表所示:
校准数据 |
生成方法或参数文件 |
校准参数文件位置 |
---|---|---|
Auto White Balance |
Calibration Tool |
sensor/lens/sample/AWB/ |
Black Level Calibration |
Calibration Tool |
sensor/lens/sample/BlackLevel/ |
Chromatic Aberration |
Calibration Tool |
sensor/lens/sample/Calibration Tool/ChromaticAberration/ |
Color Calibration |
Calibration Tool |
sensor/lens/sample/Calibration Tool/ColorReproduction/ |
Defect Pixel Color Correction |
dpcc_para.txt |
sensor/lens/sample/Calibration Tool/DefectPixel/ |
Auto Exposure Calibration |
aec_para.m; k_para.txt |
sensor/lens/sample/Calibration Tool/ExposureCalibration/ |
HDR |
hdr_para.txt |
sensor/lens/sample/Calibration Tool/HDR/ |
Lens Shading Correction |
Calibration Tool |
sensor/lens/sample/Calibration Tool/LensShading/ |
Noise Calibration |
Calibration Tool |
sensor/lens/sample/Calibration Tool/Noise/ |
Photo Response Linearity |
degamma_para.txt |
sensor/lens/sample/Calibration Tool/PhotoResponseLinearity/ |
2.2 为校准参数创建校准文件文件夹#
请按照以下步骤为每个分辨率创建文件夹:
使用sensor名称创建文件夹 (如:/OV9732)
使用镜头名称创建文件夹 (如:/2MP)
使用样本名称创建文件夹 (如:/01_30)
为每个校准功能创建子文件夹 (如下图所示)
将校准参数文件复制到相应的参数文件夹中
对于每个分辨率,示例如下:
sensor
lens
sample
AWB
AWB parameters.txt
AWB parameters.mat
BlackLevel
BLS parameters.txt
…
2.2 使用K230 ISP Calibration Tool生成xml文件#
将所有校准参数文件复制到相应文件夹后, 打开K230 ISP Calibration Tool,用其生成xml文件。
如下图所示,点击主界面“7. XML Generator”按钮:
弹出如图所示“XML Generator”对话框:
在“Data Location”栏中选择正确的标定目录地址,在“Sensor”选择创建的sensor文件夹,“Lens”选择栏中选择创建的镜头文件夹,“Data”栏中选择创建的样本文件夹。
在“Resolution”栏中输入图片正确的Width和Height,“Format”栏中选择“XML”, “Creator”栏中输入创建者名称,然后点击“Manually Generate”,即可在所选的镜头文件夹下生成“XML”子目录,该目录中将生成.xml文件。
将生成的xml文件,按K230 SDK代码中输入的xml名称改名后(如ov9732-1280x720.xml),放入config目录下,即可被K230 SDK正确调用。
3. manual.json文件#
manual.json文件需手动创建。请参考imx335-2592x1944_manual.json文件创建所需sensor分辨率的manual.json文件。
3.1 CHdrv2#
3.1.1 功能描述#
该模块为未包含在其它ISP模块下的HDR mode参数的设置。
3.1.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
base_frame |
int 0~1 |
0: S帧为参考帧; |
bls |
int[4] |
Black level(12bit) |
bls_out |
int[4] |
Black level out(12bit) |
bypass |
bool |
false: 经过HDR模块 |
bypass_select |
int 0~2 |
0: HDR模块输出L帧; |
color_weight |
int[3] 0~255 |
color_weight |
driver_load |
bool |
false: 不加载该模块参数 |
enable |
bool |
false: HDR不使能 |
extend_bit |
int[2] -1~8 |
扩展bit位 |
ratio |
float[3] 1.0~256.0 |
曝光量比值 |
sensor_type |
int 0~6 |
0,1,2: L_12+S_12+VS_12 |
stitching_mode |
int 0~1 |
0: 线性合成模式; |
trans_range |
float[6][2] 0.0~1.0 |
合成区间的起始值与终止值 |
上表中:
帧号 |
描述 |
---|---|
L帧 |
(曝光时长)长帧 |
S帧 |
(曝光时长)短帧 |
VS帧 |
(曝光时长)非常短帧 |
LS帧 |
L帧与S帧融合后的帧 |
LSVS帧 |
LS帧与VS帧融合后的帧 |
请注意,K230 HDR模式下,K230 CSI(Camera serial interface)模块不支持Hsync在Vsync之前的sensor数据模式,且各帧(L/S/VS)Vsync拉高(有效数据输出)时不能有交叠。
3.2 CGreenEqu#
请参考《K230 ISP图像调优指南》第3.7章节。
3.3 CRgbIR#
3.3.1 功能描述#
该模块为针对RGBIR sensor的输入处理设置.
3.3.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
bit |
int |
12, 固定值 |
bls |
int[4] |
Black level(12bit) |
ccmatrix |
float[12] |
3x4色彩转换矩阵,将RGBIR值转换为RGB值 |
dpcc_mid_th |
int |
DPCC通道中阈值值 |
dpcc_th |
int |
DPCC通道阈值 |
enable |
bool |
false: RGBIR子模块不使能 |
gain |
int[3] |
R/G/B通道增益 |
ir_threshold |
int |
IR高值阈值 |
irbayer_pattern |
int |
RGBIR排列类型 |
l_threshold |
int |
IR低值阈值 |
out_rgb_pattern |
int |
输出RGB数据排列类型 |
3.4 CManualWb#
请参考《K230 ISP图像调优指南》第3.12章节。
3.5 CCcm#
请参考《K230 ISP图像调优指南》第3.13章节。
3.6 CDgain#
请参考《K230 ISP图像调优指南》第3.3章节。
3.7 CCpdv1#
3.7.1 功能描述#
设置线性模式下的bls。
3.7.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
bls |
int[4] |
Black level(12bit) |
bls_enable |
bool |
false: 不使能BLS. |
请不要更改其它参数的设置。
3.8 CGamma64#
请参考《K230 ISP图像调优指南》第3.14章节。
3.9 CDpcc#
请参考《K230 ISP图像调优指南》第3.8章节。
3.10 CDpf#
请参考《K230 ISP图像调优指南》第3.9章节。
3.11 CLscv2#
请参考《K230 ISP图像调优指南》第3.2章节。
3.12 CWdrv4#
请参考《K230 ISP图像调优指南》第3.6章节。
3.13 C3dnrv3_1#
请参考《K230 ISP图像调优指南》第3.10章节。
3.14 CCproc#
请参考《K230 ISP图像调优指南》第3.18章节。
3.15 CEEv1#
3.15.1 功能描述#
该模块包含了CA、DCI和EE三个子块。
3.15.2 主要参数#
请参考《K230 ISP图像调优指南》第3.15(EE)、3.16(CA)和3.17(DCI)章节。
3.16 CDmscv2#
3.16.1 功能描述#
该模块包含了CAC和DMSC两个子块。
3.16.2 主要参数#
CAC参数设置请参考xml文件中CAC模块的相应参数。 DMSC参数设置请参考《K230 ISP图像调优指南》第3.11章节。
4. auto.json文件#
auto.json文件需手动创建。请参考imx335-2592x1944_auto.json文件创建所需sensor分辨率的auto.json文件。
4.1 AdaptiveAe#
4.1.1 功能描述#
该模块为AE控制和AE自适应功能的参数设置。
4.1.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
antiBandingMode |
Int 0~3 |
抗工频干扰工作模式 |
dampOver |
float 0~1.0 |
阻尼因子,用于平滑过曝时的AE收敛 |
dampOverGain |
float 0~128.0 |
AE过曝时clip范围外的收敛加速增益因子,值越大,收敛越快 |
dampOverRatio |
float 1.0~4.0 |
AE过曝时clip范围外比例因子,值越小,收敛越快 |
dampUnder |
float 0~1.0 |
阻尼因子,用于平滑欠曝时的AE收敛 |
dampUnderGain |
float 0~16.0 |
AE欠曝时clip范围外的收敛加速增益因子,值越大,收敛越快 |
dampUnderRatio |
float 0~1.0 |
AE欠曝时clip范围比例因子,值越大,收敛越快 |
enable |
bool |
自动曝光使能开关。 |
lowlight |
||
hdr_gain |
float[20] 0~255.0 |
宽动态模式下,各阶gain对应的增益值 |
hdr_repress |
float[20] 0~1.0 |
宽动态模式下,各阶gain对应的目标亮度压制比例 |
linear_gain |
float[20] 0~255.0 |
线性模式下,各阶gain对应的增益值 |
linear_epress |
float[20] 0~1.0 |
线性模式下,各阶gain对应的目标亮度压制比例 |
maxISPDgain |
float 1.0~255.99609375 |
设置ISP数字增益最大值 |
maxSensorAgain |
float |
设置sensor模拟增益最大值 |
maxSensorDgain |
float |
设置sensor数字增益最大值 |
mode |
int 0~2 |
自动曝光模式 |
motionFilter |
float 0~1.0 |
运动变化平滑参数,用于计算AE场景评估自适应模式下的运动因子 |
motionThreshold |
float 0~1.0 |
运动判别阈值 |
roiWeight |
float |
ROI窗口的亮度计算权重 |
semMode |
int 0~2 |
场景模式 |
setPoint |
float 0~255.0 |
设置AE的亮度目标值 |
targetFilter |
float 0~1.0 |
AE的亮度目标值变化平滑系数,值越大变化越快 |
tolerance |
float 0~100.0 |
设置AE的亮度目标值百分比锁定范围 |
wdrContrast.max |
float 0~255.0 |
AE场景评估自适应模式下计算AE setpoint的最大对比度值 |
wdrContrast.min |
float 0~255.0 |
AE场景评估自适应模式下计算AE setpoint的最小对比度值 |
4.2 Awbv2#
4.2.1 功能描述#
该模块为awb自适应功能的参数设置。该模块暂未生效。
4.2.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
avg |
float |
暂未使用 |
enable |
bool |
false: 关闭AWB自适应 |
illuorder |
char |
所有参与了校验的光源 |
indoor |
float 0~1.0 |
处于室内情形时的各光源权重 |
outdoor |
float 0~1.0 |
处于室外情形时的各光源权重 |
overExposureWeight |
float[16] 0~1.0 |
不同曝光亮度等级下的计算权重 |
transition |
float 0~1.0 |
处于室内外过渡情形时的各光源权重 |
4.3 Af#
4.3.1 功能描述#
该模块为AF功能的参数设置。该模块暂未生效。
4.3.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
enable |
bool |
false: 关闭AF |
mode |
int |
0: 普通AF模式 |
weightWindow |
float[3] 0~255.0 |
设置用于锐度计算的三个统计值窗口的权重值 |
cMotionThreshold |
float 0~1.0 |
暂未使用,将用于运动检测 |
cPointsOfCurve |
int 1~20 |
AF爬坡算法等分数量。该值越大,聚焦速度越慢;该值越小,聚焦速度越快,但移动步长过大会造成一定聚焦不准的情况。 |
cStableTolerance |
float 0~1.0 |
AF从锁定状态进入失焦状态的阈值。该值越小,越容易失焦进入重新聚焦状态。 |
focalFilter |
float[5] 0~1023 |
暂未使用 |
shapFilter |
float[5] 0~1023 |
暂未使用 |
focalStableThreshold |
float 0~1.0 |
聚焦进入锁定状态的阈值。该值越小,越难进入锁定状态 |
maxFocal |
int 0~1023 |
AF标定的最大马达位置 |
minFocal |
int 0~1023 |
AF标定的最小马达位置 |
cMseTolerance |
float 0~1.0 |
暂未使用 |
cPdConfThreshold |
float 0~1023.0 |
未使用 |
PdFocal |
int -254~254 |
未使用 |
PdDistance |
int 1~254 |
未使用 |
PdShiftThrehold |
float 0~1.0 |
未使用 |
PdStablecountMax |
uint8 1~10 |
未使用 |
PdROIIndex |
uint8 0~48 |
未使用 |
4.4 IspController#
4.4.1 功能描述#
该模块用于控制ISP的使能。
4.4.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
enable |
bool |
false: 关闭ISP |
请将其设置为使能。
4.5 CcWhitePixels#
4.5.1 功能描述#
该模块用于控制CCM是否随AWB自适应切换。
4.5.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
damping |
float 0~1.0 |
用于平滑CCM变化的阻尼系数 |
enable |
bool |
false: 关闭CCM自适应 |
4.6 LscWhitePixels#
4.6.1 功能描述#
该模块用于控制LSC是否随AWB自适应切换。
4.6.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
damping |
float 0~1.0 |
用于平滑LSC变化的阻尼系数 |
enable |
bool |
false: 关闭LSC自适应 |
4.7 AutoHdr#
4.7.1 功能描述#
该模块用于使能自动HDR。该模块暂未生效。
4.7.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
enable |
bool |
false: 关闭自动HDR |
4.8 DciHist#
4.8.1 功能描述#
该模块用于设置动态对比度改善直方图(DciHist)的参数。 该模块暂未生效。
4.8.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
enable |
bool |
false: 关闭DciHist |
gaussAmpNeg |
float |
|
gaussAmpPos |
float |
|
gaussMeanNeg |
float |
|
gaussMeanPos |
float |
|
gaussSigmaNeg |
float |
|
gaussSigmaPos |
float |
4.9 SensorController#
4.9.1 功能描述#
该模块用于使能图像传感器的自动控制。
4.9.2 主要参数#
参数 |
类型及取值范围 |
描述 |
---|---|---|
enable |
bool |
false: 关闭图像传感器自动控制 |
请将其设置为使能。
4.10 其它#
本章节对其它自适应功能模块进行统一介绍。
这些自适应功能模块的设置参数,通常用“tables”标记引导的中括号“[]”分为两部分,在该中括号外的都为bool类型的使能参数,在该中括号内的则为参与自适应功能调节的参数。
4.10.1 tables外的参数说明#
这些功能模块中,在tables外通常有以下三个参数:
参数 |
类型 |
描述 |
---|---|---|
disable |
bool |
可固定设置为false |
enable |
bool |
false: 关闭; true: 使能 |
forcecreate |
bool |
可固定设置为true |
在A3dnrv3模块中,在tables外还有两个参数:
参数 |
类型 |
描述 |
---|---|---|
nlm_en |
bool |
非局部均值降噪使能开关,建议设置为true |
tnr_en |
bool |
时域降噪使能开关。因K230 ISP tnr打开实际由外部命令参数控制,故可固定设置为false |
4.10.2 tables内的参数说明#
在功能模块中,都有以下两个参数:
参数 |
类型及取值范围 |
描述 |
---|---|---|
hdr |
bool |
false: 表示该组设置为线性模式下的设置 |
gain |
float[20] |
各阶对应的增益值 |
其它自适应功能参数,请参考《K230 ISP图像调优指南》中的相应功能章节。
“gain”从最小值(通常为1倍)到最大值,最多可被分为20阶,每阶都需在gain这个参数数组中设置对应的增益值。
需要注意的是,各个自适应模块都可根据其自适应的需要自定义不同的阶数,最大不超过20阶即可。
同一自适应功能模块中的所有参与自适应的参数,都随gain的阶数来确定其数组大小,并且每阶都应根据对应的同阶增益值大小来设置合适的值。