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 为校准参数创建校准文件文件夹#

请按照以下步骤为每个分辨率创建文件夹:

  1. 使用sensor名称创建文件夹 (如:/OV9732)

  2. 使用镜头名称创建文件夹 (如:/2MP)

  3. 使用样本名称创建文件夹 (如:/01_30)

  4. 为每个校准功能创建子文件夹 (如下图所示)
    创建文件夹

  5. 将校准参数文件复制到相应的参数文件夹中

对于每个分辨率,示例如下:

  • 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”对话框:

选取生成XML文件

在“Data Location”栏中选择正确的标定目录地址,在“Sensor”选择创建的sensor文件夹,“Lens”选择栏中选择创建的镜头文件夹,“Data”栏中选择创建的样本文件夹。

在“Resolution”栏中输入图片正确的Width和Height,“Format”栏中选择“XML”, “Creator”栏中输入创建者名称,然后点击“Manually Generate”,即可在所选的镜头文件夹下生成“XML”子目录,该目录中将生成.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帧为参考帧;
1: L帧为参考帧。
推荐设置为0.

bls

int[4]

Black level(12bit)
[bls_r,bls_gr,bls_gb,bls_b]。
目前驱动仅支持各通道配置相同的黑电平

bls_out

int[4]

Black level out(12bit)
默认配置为[0,0,0,0]

bypass

bool

false: 经过HDR模块
true: 不经过HDR模块

bypass_select

int 0~2

0: HDR模块输出L帧;
1: HDR模块输出S帧;
2: HDR模块输出VS帧

color_weight

int[3] 0~255

color_weight
stitch_color_weight0+stitch_color_weight1*2+stitch_color_weight2=256
建议设置为[255, 0, 1]

driver_load

bool

false: 不加载该模块参数
true: 加载该模块参数

enable

bool

false: HDR不使能
true: HDR使能

extend_bit

int[2] -1~8

扩展bit位
[L/S帧融合, LS/VS帧融合]
建议设置为[-1,-1], 自动计算;0 ~ 8为手动设置值。

ratio

float[3] 1.0~256.0

曝光量比值
[long/short, short/very short, very short/exposure 3]

sensor_type

int 0~6

0,1,2: L_12+S_12+VS_12
3: LS_16+VS_12
4,6: L_12+S_12
5: L_12+VS_12

stitching_mode

int 0~1

0: 线性合成模式;
1: 非线性合成模式

trans_range

float[6][2] 0.0~1.0

合成区间的起始值与终止值
参考帧像素低于起始值,合成帧像素为较长帧;
参考帧像素高于终止值,合成帧像素为较短帧;
参考真像素位于两者之间,合成帧为较长帧与较短帧的融合。
[[L+S_ref(L)_start, L+S_ref(L)_end],
[LS+VS_ref(LS)_start, LS+VS_ref(LS)_end],
[L+S_ref(S)_start, L+S+ref(S)_end],
[LS+VS_ref(VS)_start, LS+VS_ref(VS)_end],
[LSVS+E3_ref(LSVS)_start, LSVS+E3_ref(LSVS)_end],
[LSVS+E3_ref(E3)_start, LSVS+E3_ref(E3)_end]]

上表中:

帧号

描述

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)
[bls_r,bls_g,bls_b,bls_ir]。
目前驱动仅支持各通道配置相同的黑电平

ccmatrix

float[12]

3x4色彩转换矩阵,将RGBIR值转换为RGB值

dpcc_mid_th

int

DPCC通道中阈值值

dpcc_th

int

DPCC通道阈值

enable

bool

false: RGBIR子模块不使能
true: RGBIR子模块使能

gain

int[3]

R/G/B通道增益
默认设置为[1,1,1]

ir_threshold

int

IR高值阈值
如果IR值高于该值,IR色彩影响因子为0.

irbayer_pattern

int

RGBIR排列类型
0: BGGIR
2: RGGIR
K230 仅支持RGGIR和BGGIR两种排列类型, 请将RGBIR sensor的数据输出设置为该两种类型其中的一种。

l_threshold

int

IR低值阈值
如果IR值低于该值,IR色彩影响因子为1.

out_rgb_pattern

int

输出RGB数据排列类型
3: BGGR
无需更改。

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_r,bls_gr,bls_gb,bls_b]。
目前驱动仅支持各通道配置相同的黑电平

bls_enable

bool

false: 不使能BLS.
true: 使能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

抗工频干扰工作模式
0: Off
1: 50Hz
2: 60Hz
3: User defined

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

自动曝光使能开关。
false: 关闭自动曝光
true : 使能自动曝光

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

自动曝光模式
0: AE(不含抗工频干扰等功能)
1: 抗工频干扰AE模式
2: 场景评估AE模式

motionFilter

float 0~1.0

运动变化平滑参数,用于计算AE场景评估自适应模式下的运动因子

motionThreshold

float 0~1.0

运动判别阈值

roiWeight

float

ROI窗口的亮度计算权重

semMode

int 0~2

场景模式
0: 场景评估关闭模式
1: 场景评估固定模式
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自适应
true : 使能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
true : 使能AF

mode

int

0: 普通AF模式
(计划开发其它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
true : 使能ISP

请将其设置为使能。

4.5 CcWhitePixels#

4.5.1 功能描述#

该模块用于控制CCM是否随AWB自适应切换。

4.5.2 主要参数#

参数

类型及取值范围

描述

damping

float 0~1.0

用于平滑CCM变化的阻尼系数

enable

bool

false: 关闭CCM自适应
true : 使能CCM自适应

4.6 LscWhitePixels#

4.6.1 功能描述#

该模块用于控制LSC是否随AWB自适应切换。

4.6.2 主要参数#

参数

类型及取值范围

描述

damping

float 0~1.0

用于平滑LSC变化的阻尼系数

enable

bool

false: 关闭LSC自适应
true : 使能LSC自适应

4.7 AutoHdr#

4.7.1 功能描述#

该模块用于使能自动HDR。该模块暂未生效。

4.7.2 主要参数#

参数

类型及取值范围

描述

enable

bool

false: 关闭自动HDR
true : 使能自动HDR

4.8 DciHist#

4.8.1 功能描述#

该模块用于设置动态对比度改善直方图(DciHist)的参数。 该模块暂未生效。

4.8.2 主要参数#

参数

类型及取值范围

描述

enable

bool

false: 关闭DciHist
true : 使能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: 关闭图像传感器自动控制
true : 使能图像传感器自动控制

请将其设置为使能。

4.10 其它#

本章节对其它自适应功能模块进行统一介绍。

这些自适应功能模块的设置参数,通常用“tables”标记引导的中括号“[]”分为两部分,在该中括号外的都为bool类型的使能参数,在该中括号内的则为参与自适应功能调节的参数。

4.10.1 tables外的参数说明#

这些功能模块中,在tables外通常有以下三个参数:

参数

类型

描述

disable

bool

可固定设置为false

enable

bool

false: 关闭; true: 使能
按所需adaptive模块功能进行设置

forcecreate

bool

可固定设置为true

在A3dnrv3模块中,在tables外还有两个参数:

参数

类型

描述

nlm_en

bool

非局部均值降噪使能开关,建议设置为true

tnr_en

bool

时域降噪使能开关。因K230 ISP tnr打开实际由外部命令参数控制,故可固定设置为false

4.10.2 tables内的参数说明#

在功能模块中,都有以下两个参数:

参数

类型及取值范围

描述

hdr

bool

false: 表示该组设置为线性模式下的设置
true: 表示该组设置为HDR模式下的设置。

gain

float[20]

各阶对应的增益值

其它自适应功能参数,请参考《K230 ISP图像调优指南》中的相应功能章节。

“gain”从最小值(通常为1倍)到最大值,最多可被分为20阶,每阶都需在gain这个参数数组中设置对应的增益值。

需要注意的是,各个自适应模块都可根据其自适应的需要自定义不同的阶数,最大不超过20阶即可。

同一自适应功能模块中的所有参与自适应的参数,都随gain的阶数来确定其数组大小,并且每阶都应根据对应的同阶增益值大小来设置合适的值。