5.7. 图像质量 - ISP

5.7.1. 模块描述

ISP( Image Signal Processing,图像信号处理)是一种用于处理前端图像传感器输出信号关键单元,其主要功能适配不同厂商图像传感器,以实现最佳图像质量性能。

X5 SDK 集成一个 ISP 单元,用于处理摄像头输入图像动态范围 (WDR)、高动态范围 (HDR) 及降噪 (3DNR) 等。该 ISP 支持 8bit、 10bit、 12bit 和 16bit 的 RAW 数据输入,最支持长、短曝光两帧的 HDR 合成,性能达 4K@60fps,最大支持 12M 图像输入。其主要特性如下:

  • 图像信号处理器 (ISP),支持 RAW 转 YUV 转换

  • 最大处理能力: 3840x2160@60fps

    • 硬件模式: 4096x3072

    • 软件模式 ( tile mode ): 5472x3076

  • 支持动态范围 (HDR) 传感器:

    • 最大支持 20 位 HDR 处理

    • 支持数字重叠 (DOL2)HDR 传感器

    • 支持线性化 HDR 传感器

    • 支持原生 ( 传感器内 ) 压缩 HDR 传感器

  • 支持自动曝光 (Auto-Exposure)、自动白平衡 (Auto-White Balance, awb) 和自动对焦 (Auto-Focus)(3A) 直方图统计

  • 支持镜头阴影校正

  • 支持缺陷像素校正 (DPC)

  • 支持空间噪声抑制 (2DNR)

  • 支持时域噪声抑制 (3DNR)

  • 支持色彩噪声抑制

  • 支持 RGB 锐化边缘增强

  • 支持伽马校正

  • 支持电平补偿

  • 支持传感器线性修正

  • 支持绿色均衡化

  • 支持数字增益

  • 支持增强色彩插值 (拜耳去马赛克滤镜)

  • 支持色差校正 (CAC)

  • 支持色彩校正 (Xtalk) 矩阵 (CCM)

  • 支持色彩空间转换 (CSC)

  • 支持闪烁

  • 支持色彩处理:对比度、饱和度、亮度、色调 (CPROC)

  • 支持锐化 / 模糊滤镜

  • 支持 RGB-IR 4x4 模式

  • 支持动态范围 (WDR),结合全局局部色调映射

  • 支持 PDAF(相位检测自动对焦)

注意:当接入 HDR Sensor 时,VIN 和 ISP 的连接方式只能选择 online,由于 online 模式独占 ISP 资源,所以支持 1 路。

5.7.1.1. 术语解释

以下表格函数名称变量名称涉及专业术语缩写进行说明:

术语 缩写 说明
Built-in Image Signal Processor ISP 内置图像信号处理器
High Dynamic Range HDR 动态范围
Digital Overlap DOL2 数字重叠( DOL2 )
Auto-Exposure, Auto-White balance, and Auto-Focus 3A 自动曝光、自动白平衡自动对焦
Auto-Exposure AE 自动曝光
Auto-White balance AWB 自动白平衡
Auto-Focus AF 自动对焦
Lens Shading Correction LSC 镜头阴影校正
Defect Pixel Correction DPC 缺陷像素校正
Spatial Noise Reduction 2DNR 空间噪声降低(二维噪声降低)
Temporal Noise Reduction 3DNR 时间噪声降低(三维噪声降低)
Gamma Correction GC 伽马校正
Digital Gain DG 数字增益
Chromatic Aberration Correction CAC 色差校正
Color Correction (Xtalk) Matrix CCM 色彩校正(串扰)矩阵
Color Space Conversion CSC 色彩空间转换
Color Processing: Contrast, Saturation, Brightness, Hue CPROC 色彩处理:对比度、饱和度、亮度、色调
Wide Dynamic Range WDR 宽度动态范围

5.7.1.2. 图像处理模式说明

平台支持两种图像处理模式: Offline 模式和 Online 模式。

Offline 模式

Offline 模式数据传输路径如下所示:

VIN_ISP_offline

具体说明如下:

  1. VNode1:

    • VIN: 视频输入模块,负责接收来自相机原始视频数据。

    • MIPI RX(CSIx): 通过 MIPI 接口接收相机数据。

    • SIFx: 将接收数据进行初步处理格式化。

  2. 数据传输:

    • 数据从 VNode1 的 SIFx 模块传输到 VNode2 的 ISP 模块。

    • 数据传输路径为: SIFx → DDR → ISP。

    • 意味着在 Offline 模式下,数据经过 DDR(动态随机存取存储器)进行存储处理。

  3. VNode2:

    • ISP: 图像信号处理器,负责原始图像数据进行进一步处理。

    • Pipeline: 图像处理流水线,处理图像数据。

    • RDMA: 可能一个存储模块,用于存储处理图像数据。

    • RAW 和 YUV: 表示图像数据不同格式, RAW 是未经处理原始数据, YUV 是常见图像格式。

Online 模式

online 模式数据传输路径如下所示:

VIN_ISP_offline

具体说明如下:

  1. VNode1:

    • VIN: 视频输入模块,负责接收来自相机原始视频数据。

    • MIPI RX(CSIx): 通过 MIPI 接口接收相机数据。

    • SIFx: 将接收数据进行初步处理格式化。

  2. 数据传输:

    • 数据从 VNode1 的 SIFx 模块直接传输到 VNode2 的 ISP 模块,而经过 DDR。

    • 数据传输路径为: SIFx → Ichn0 → ISP。

    • 意味着在 Online 模式下,数据经过 DDR,直接处理流水线进行处理。

  3. VNode2:

    • ISP: 图像信号处理器,负责原始图像数据进行进一步处理。

    • Pipeline: 图像处理流水线,处理图像数据。

    • 在 Online 模式下,数据直接在 Pipeline 中进行处理,而经过 DDR。

两种传输模式主要区别为:

  • Offline 模式:数据经过 DDR 进行存储处理,适用需要大量存储复杂处理场景。

  • Online 模式:数据直接处理流水线进行处理,不经过 DDR,适用实时处理延迟场景。

两种模式选择取决于具体应用需求,需要综合考虑处理速度、存储需求系统资源因素。

5.7.2. 参考示例

ISP 部分示例代码可以参考 sample_isp 使用说明的 multi_isp_vflow 章节。

5.7.3. API 参考

5.7.4. 接口说明

Note:

  1. 使用 API 接口需要通过 tuning json 将对应模块打开,否则调用 get 接口获取参数可能存在问题。

  2. tuning json 中 state 为1的模块,为 manual 模式,获取到 auto 参数问题。state 为2时为 auto 模式,可以获取当前参数与 auto 参数。

5.7.4.1. hbn_isp_set_module_control

【函数声明】

int32_t hbn_isp_set_module_control(hbn_vnode_handle_t vnode_fd, hbn_isp_module_ctrl_t *p_ctrl)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_module_ctrl_t *p_ctrl: isp 模块控制结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

isp 的 pipeline 中包含多个模块,该接口控制是否使能 isp 的某些功能。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.2. hbn_isp_get_module_control

【函数声明】

int32_t hbn_isp_get_module_control(hbn_vnode_handle_t vnode_fd, hbn_isp_module_ctrl_t *p_ctrl)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_module_ctrl_t *p_ctrl: isp 模块控制结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 模块控制状态。 isp 的 pipeline 中包含多个模块,该接口获取 isp 中某个功能是否使能。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.3. hbn_isp_set_exposure_attr

【函数声明】

int32_t hbn_isp_set_exposure_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_exposure_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_exposure_attr_t *p_attr: isp 曝光属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的曝光属性,包括手动自动曝光模式相关参数。调用接口时 hbn_isp_exposure_attr_t 中需要配置当前 ae 的 mode( manual/auto),以及对应配置( manual_attr/auto_attr)。

【注意事项】

需要确保传入参数有效范围内,否则可能导致设置失败。

【兼容性】

硬件 : X5 。

5.7.4.4. hbn_isp_get_exposure_attr

【函数声明】

int32_t hbn_isp_get_exposure_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_exposure_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_exposure_attr_t *p_attr: isp 曝光属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的曝光属性。获取参数中 isp_mode 暂时不可用,可以同时获取到 manual_attr 与 auto_attr。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.5. hbn_isp_set_hdr_exposure_attr

【函数声明】

int32_t hbn_isp_set_hdr_exposure_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_hdr_exposure_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_hdr_exposure_attr_t *p_attr: isp hdr 曝光属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp hdr 功能相关参数,调用接口时 hbn_isp_hdr_exposure_attr_t 中需要配置当前 hdr 的 mode( manual/auto),以及对应配置( manual_attr/auto_attr)。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.6. hbn_isp_get_hdr_exposure_attr

【函数声明】

int32_t hbn_isp_get_hdr_exposure_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_hdr_exposure_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_hdr_exposure_attr_t *p_attr: isp hdr 曝光属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp hdr 功能参数,获取参数中 isp_mode 暂时不可用,可以同时获取到 manual_attr 与 auto_attr。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.7. hbn_isp_set_awb_attr

【函数声明】

int32_t hbn_isp_set_awb_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_awb_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_awb_attr_t *p_attr: isp 自动白平衡属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的自动白平衡属性,包括手动自动白平衡模式相关参数。调用接口时 hbn_isp_awb_attr_t 中需要配置当前 awb 的 mode( manual/auto),以及对应配置( manual_attr/auto_attr)。

【注意事项】

需要确保传入参数有效范围内,否则可能导致设置失败。

【兼容性】

硬件 : X5 。

5.7.4.8. hbn_isp_get_awb_attr

【函数声明】

int32_t hbn_isp_get_awb_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_awb_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_awb_attr_t *p_attr: isp 自动白平衡属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的自动白平衡属性。获取参数中 isp_mode 暂时不可用,可以同时获取到 manual_attr 与 auto_attr。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.9. hbn_isp_get_awb_gain_by_temper

【函数声明】

int32_t hbn_isp_get_awb_gain_by_temper(hbn_vnode_handle_t vnode_fd, uint32_t temper, hbn_isp_awb_gain_t *p_awb_gain)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] uint32_t temper:温度值。

  • [OUT] hbn_isp_awb_gain_t *p_awb_gain: isp 白平衡增益结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

根据色温获取 isp 的自动白平衡增益。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.10. hbn_isp_set_ae_zone_weight_attr

【函数声明】

int32_t hbn_isp_set_ae_zone_weight_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_ae_zone_weight_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_ae_zone_weight_attr_t *p_attr: isp ae 区域权重属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 ae 区域权重属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.11. hbn_isp_get_ae_zone_weight_attr

【函数声明】

int32_t hbn_isp_get_ae_zone_weight_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_ae_zone_weight_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_ae_zone_weight_attr_t *p_attr: isp ae 区域权重属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 ae 区域权重属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.12. hbn_isp_set_af_zone_weight_attr

【函数声明】

int32_t hbn_isp_set_af_zone_weight_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_af_zone_weight_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_af_zone_weight_attr_t *p_attr: isp af 区域权重属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 af 区域权重属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.13. hbn_isp_get_af_zone_weight_attr

【函数声明】

int32_t hbn_isp_get_af_zone_weight_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_af_zone_weight_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_af_zone_weight_attr_t *p_attr: isp af 区域权重属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 af 区域权重属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.14. hbn_isp_get_ae_statistics

【函数声明】

int32_t hbn_isp_get_ae_statistics(hbn_vnode_handle_t vnode_fd, hbn_isp_ae_statistics_t *p_data)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_ae_statistics_t *p_data: isp ae 统计数据结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 ae 统计数据。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.15. hbn_isp_get_awb_statistics

【函数声明】

int32_t hbn_isp_get_awb_statistics(hbn_vnode_handle_t vnode_fd, hbn_isp_awb_statistics_t *p_data)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_awb_statistics_t *p_data: isp awb 统计数据结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 awb 统计数据。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.16. hbn_isp_get_af_statistics

【函数声明】

int32_t hbn_isp_get_af_statistics(hbn_vnode_handle_t vnode_fd, hbn_isp_af_statistics_t *p_data)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_af_statistics_t *p_data: isp af 统计数据结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 af 统计数据。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.17. hbn_isp_set_exposure_table

【函数声明】

int32_t hbn_isp_set_exposure_table(hbn_vnode_handle_t vnode_fd, hbn_isp_exposure_table_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_exposure_table_t *p_attr: isp 曝光表结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的曝光表。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.18. hbn_isp_get_exposure_table

【函数声明】

int32_t hbn_isp_get_exposure_table(hbn_vnode_handle_t vnode_fd, hbn_isp_exposure_table_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_exposure_table_t *p_attr: isp 曝光表结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的曝光表。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.19. hbn_isp_set_exposure_roi

【函数声明】

int32_t hbn_isp_set_exposure_roi(hbn_vnode_handle_t vnode_fd, hbn_isp_exposure_roi_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_exposure_roi_t *p_attr: isp 曝光 roi 结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的曝光 roi。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.20. hbn_isp_get_exposure_roi

【函数声明】

int32_t hbn_isp_get_exposure_roi(hbn_vnode_handle_t vnode_fd, hbn_isp_exposure_roi_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_exposure_roi_t *p_attr: isp 曝光 roi 结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的曝光 roi。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.21. hbn_isp_get_lines_persecond

【函数声明】

int32_t hbn_isp_get_lines_persecond(hbn_vnode_handle_t vnode_fd, uint32_t *lines)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] uint32_t *lines:每秒指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 每秒数。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.22. hbn_isp_set_2dnr_attr

【函数声明】

int32_t hbn_isp_set_2dnr_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_2dnr_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_2dnr_attr_t *p_attr: isp 2dnr 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 2dnr 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.23. hbn_isp_get_2dnr_attr

【函数声明】

int32_t hbn_isp_get_2dnr_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_2dnr_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_2dnr_attr_t *p_attr: isp 2dnr 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 2dnr 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.24. hbn_isp_set_3dnr_attr

【函数声明】

int32_t hbn_isp_set_3dnr_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_3dnr_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_3dnr_attr_t *p_attr: isp 3dnr 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 3dnr 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.25. hbn_isp_get_3dnr_attr

【函数声明】

int32_t hbn_isp_get_3dnr_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_3dnr_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_3dnr_attr_t *p_attr: isp 3dnr 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 3dnr 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.26. hbn_isp_get_lsc_attr

【函数声明】

int32_t hbn_isp_get_lsc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_lsc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_lsc_attr_t *p_attr: isp lsc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 lsc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.27. hbn_isp_set_lsc_attr

【函数声明】

int32_t hbn_isp_set_lsc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_lsc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_lsc_attr_t *p_attr: isp lsc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 lsc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.28. hbn_isp_set_awb_preference_attr

【函数声明】

int32_t hbn_isp_set_awb_preference_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_awb_preference_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_awb_preference_attr_t *p_attr: isp awb 偏好属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 awb 偏好属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.29. hbn_isp_get_awb_preference_attr

【函数声明】

int32_t hbn_isp_get_awb_preference_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_awb_preference_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_awb_preference_attr_t *p_attr: isp awb 偏好属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 awb 偏好属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.30. hbn_isp_get_wdr_attr

【函数声明】

int32_t hbn_isp_get_wdr_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_wdr_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_wdr_attr_t *p_attr: isp wdr 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 wdr 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.31. hbn_isp_set_wdr_attr

【函数声明】

int32_t hbn_isp_set_wdr_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_wdr_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_wdr_attr_t *p_attr: isp wdr 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 wdr 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.32. hbn_isp_set_ccm_attr

【函数声明】

int32_t hbn_isp_set_ccm_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_ccm_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_ccm_attr_t *p_attr: isp ccm 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 ccm 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.33. hbn_isp_get_ccm_attr

【函数声明】

int32_t hbn_isp_get_ccm_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_ccm_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_ccm_attr_t *p_attr: isp ccm 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 ccm 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.34. hbn_isp_set_gc_attr

【函数声明】

int32_t hbn_isp_set_gc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_gc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_gc_attr_t *p_attr: isp gc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 gc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.35. hbn_isp_get_gc_attr

【函数声明】

int32_t hbn_isp_get_gc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_gc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_gc_attr_t *p_attr: isp gc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 gc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.36. hbn_isp_set_dmsc_attr

【函数声明】

int32_t hbn_isp_set_dmsc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_dmsc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_dmsc_attr_t *p_attr: isp dmsc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 dmsc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.37. hbn_isp_get_dmsc_attr

【函数声明】

int32_t hbn_isp_get_dmsc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_dmsc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_dmsc_attr_t *p_attr: isp dmsc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 dmsc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.38. hbn_isp_set_ee_attr

【函数声明】

int32_t hbn_isp_set_ee_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_ee_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_ee_attr_t *p_attr: isp ee 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 ee 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.39. hbn_isp_get_ee_attr

【函数声明】

int32_t hbn_isp_get_ee_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_ee_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_ee_attr_t *p_attr: isp ee 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 ee 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.40. hbn_isp_set_cproc_attr

【函数声明】

int32_t hbn_isp_set_cproc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_cproc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_cproc_attr_t *p_attr: isp cproc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 cproc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.41. hbn_isp_get_cproc_attr

【函数声明】

int32_t hbn_isp_get_cproc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_cproc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_cproc_attr_t *p_attr: isp cproc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 cproc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.42. hbn_isp_get_dpcc_attr

【函数声明】

int32_t hbn_isp_get_dpcc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_dpcc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [OUT] hbn_isp_dpcc_attr_t *p_attr: isp dpcc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

获取 isp 的 dpcc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.43. hbn_isp_set_dpcc_attr

【函数声明】

int32_t hbn_isp_set_dpcc_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_dpcc_attr_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_dpcc_attr_t *p_attr: isp dpcc 属性结构指针。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 dpcc 属性。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.44. hbn_isp_set_pattern_attr

【函数声明】

int32_t hbn_isp_set_pattern_attr(hbn_vnode_handle_t vnode_fd, hbn_isp_pattern_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] hbn_isp_pattern_t *p_attr: Bayer Pattern。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

设置 isp 的 bayer pattern。

【注意事项】

无。

【兼容性】

硬件 : X5 。

5.7.4.45. hbn_isp_cal_gain_by_temp

【函数声明】

int32_t hbn_isp_cal_gain_by_temp(hbn_vnode_handle_t vnode_fd, uint32_t color_temp, int32_t shift, hbn_isp_awb_gain_t *p_attr)

【参数描述】

  • [IN] hbn_vnode_handle_t vnode_fd: isp vnode handle。

  • [IN] uint32_t color_temp: 色温值,单位为 Kelvin,取值范围:[1500,10000]。

  • [IN] int32_t shift: 白点与Planckian 曲线位置距离,取值范围:[-64, 64]。

  • [OUT] hbn_isp_awb_gain_t *p_attr: 预设色温的 R, Gr, Gb, B 四个通道增益。

【返回值】

  • 成功: HBN_STATUS_SUCESS 0 。

  • 失败:异常负值错误码,参考 返回值说明

【功能描述】

计算特定色温白平衡增益系数。

【注意事项】

白平衡标定参数决定预设色温增益计算准确性,因此,在调用接口前,必须完成标定,标定小于3个且标定参数加载到ISP。当色温超过标定最大最小色温时,按照最大最小色温标定参数输出。 shift参数决定光源与 Planckian 曲线位置关系,shift 为负数时,光源位于 Planckian 曲线左侧,计算白平衡增益预设色温下会稍微偏红;shift为正数时,光源位于 Planckian 曲线右侧,计算白平衡增益预设色温下会稍微偏绿。

【兼容性】

硬件 : X5 。

5.7.5. 数据结构

5.7.5.1. hbn_isp_param_range_t

名称 类型 最小值 最大值 默认值 含义 必选
min float - - - 参数最小值
max float - - - 参数最大值

5.7.5.2. hbn_isp_zone_weight_t

名称 类型 最小值 最大值 默认值 含义 必选
x uint32_t - - - 区域的 x 坐标
y uint32_t - - - 区域的 y 坐标
h uint32_t - - - 区域高度
w uint32_t - - - 区域宽度
weight float - - - 区域权重

5.7.5.3. hbn_windows_t

名称 类型 最小值 最大值 默认值 含义 必选
h_offset uint32_t - - - 水平起始偏移量
v_offset uint32_t - - - 垂直起始偏移量
width uint32_t - - - 宽度
height uint32_t - - - 高度

5.7.5.4. hbn_isp_roi_t

名称 类型 最小值 最大值 默认值 含义 必选
window hbn_windows_t - - - ROI 窗口
weight float - - - 权重

5.7.5.5. hbn_isp_exposure_auto_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
exp_time_range hbn_isp_param_range_t - - - 曝光时间范围(单位:秒),可以通过get接口获取参数,暂时无法设置
again_range hbn_isp_param_range_t - - - 模拟增益范围,可以通过get接口获取参数,暂时无法设置
dgain_range hbn_isp_param_range_t - - - 数字增益范围,可以通过get接口获取参数,暂时无法设置
isp_dgain_range hbn_isp_param_range_t - - - ISP 数字增益范围,可以通过get接口获取参数,暂时无法设置
speed_over float - - - 速度
speed_under float - - - 暗到速度
dampover_gain float - - - 加速收敛控制参数
dampover_ratio float - - - 加速收敛控制参数
dampunder_gain float - - - 加速收敛控制参数
dampunder_ratio float - - - 加速收敛控制参数
tolerance float - - - 偏差容忍度
target float - - - 目标亮度
anti_flicker_status uint32_t - - - 抗频状态
flicker_freq float - - - 频闪频率
mode hbn_isp_auto_exposure_mode_e - - - 自动曝光模式。
HBN_ISP_AUTO_EXP_MODE_ADAPTIVE - target 自动适应模式;
HBN_ISP_ATIVEUTO_EXP_MODE_FIX - target 固定模式

5.7.5.6. hbn_isp_exposure_manual_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
exp_time float - - - 曝光时间(单位:秒)
again float - - - 模拟增益
dgain float - - - 数字增益
ispgain float - - - ISP 增益
ae_exp float - - - 亮度统计
cur_lux uint32_t - - - 当前环境照度,不支持
frame_id uint32_t - - - 帧 ID
timestamps uint64_t - - - 时间

5.7.5.7. hbn_isp_exposure_version_e

名称 类型 最小值 最大值 默认值 含义 必选
HBN_ISP_EXP_V0 enum - - - 曝光版本 0
HBN_ISP_EXP_V1 enum - - - 曝光版本 1
HBN_ISP_EXP_V2 enum - - - 曝光版本 2

5.7.5.8. hbn_isp_auto_exposure_mode_e

名称 类型 最小值 最大值 默认值 含义 必选
HBN_ISP_AUTO_EXP_MODE_ADAPTIVE enum - - - 适应自动曝光模式
HBN_ISP_AUTO_EXP_MODE_FIX enum - - - 固定自动曝光模式

5.7.5.9. hbn_isp_exposure_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
version hbn_isp_exposure_version_e - - - 版本信息
lock_state uint32_t - - - 锁定状态
mode hbn_isp_mode_e - - - HBN_ISP_MODE_AUTO - auto 模式
HBN_ISP_MODE_MANUAL - manual 模式
auto_attr hbn_isp_exposure_auto_attr_t - - - auto 模式参数
manual_attr hbn_isp_exposure_manual_attr_t - - - manual 模式参数

5.7.5.10. hbn_isp_hdr_exposure_version_e

名称 类型 最小值 最大值 默认值 含义 必选
HBN_ISP_HDR_EXP_V0 enum - - - HDR 曝光版本 0
HBN_ISP_HDR_EXP_V1 enum - - - HDR 曝光版本 1
HBN_ISP_HDR_EXP_V2 enum - - - HDR 曝光版本 2

5.7.5.11. hbn_isp_hdr_exposure_auto_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
exp_ratio float[4] - - - 曝光比例数组
exp_ratio_range hbn_isp_param_range_t - - - 曝光比例范围,暂时支持

5.7.5.12. hbn_isp_hdr_exposure_manual_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
exp_time float - - - 曝光时间(单位:秒)
again float - - - 模拟增益
dgain float - - - 数字增益
ispgain float - - - ISP 增益
ae_exp uint32_t - - - 亮度统计值,暂时支持

5.7.5.13. hbn_isp_hdr_exposure_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
version hbn_isp_hdr_exposure_version_e - - - 版本信息
mode hbn_isp_mode_e - - - HBN_ISP_MODE_AUTO - auto 模式
HBN_ISP_MODE_MANUAL - manual 模式
auto_attr hbn_isp_hdr_exposure_auto_attr_t - - - auto 模式参数
manual_attr hbn_isp_hdr_exposure_manual_attr_t - - - manual 模式参数

5.7.5.14. hbn_isp_awb_version_e

名称 类型 最小值 最大值 默认值 含义 必选
HBN_ISP_WB_V0 enum - - - 白平衡版本 0
HBN_ISP_WB_V1 enum - - - 白平衡版本 1

5.7.5.15. hbn_isp_awb_gain_t

名称 类型 最小值 最大值 默认值 含义 必选
rgain float - - - R 通道增益
grgain float - - - GR 通道增益
gbgain float - - - GB 通道增益
bgain float - - - B 通道增益

5.7.5.16. hbn_isp_awb_auto_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
use_damping uint32_t 0 1 - 启用收敛控制
use_manual_damp_coff uint32_t 0 1 - 使用固定收敛系数
manual_damp_coff float 0.1 0.999 - 收敛系数
lock_tolerance float 0.0 0.2 - 进入锁定状态容忍度
unlock_tolerance float 0.0 0.2 - 退出锁定状态容忍度
rg_strength uint32_t - - - R 通道强度(设置白平衡偏好r通道)(不支持)
bg_strength uint32_t - - - B 通道强度(设置白平衡偏好b通道) (不支持)
gain hbn_isp_awb_gain_t - - - AWB 增益值 (仅支持获取)
temper uint32_t - - - 色温(仅支持获取)

5.7.5.17. hbn_isp_awb_manual_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
gain hbn_isp_awb_gain_t - - - 手动设置的 AWB 增益值
temper uint32_t - - - 色温

5.7.5.18. hbn_isp_awb_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
version hbn_isp_awb_version_e - - - 版本信息
lock_state uint32_t - - - 是否收敛
mode hbn_isp_mode_e - - - HBN_ISP_MODE_AUTO - auto 模式
HBN_ISP_MODE_MANUAL - manual 模式
auto_attr hbn_isp_awb_auto_attr_t - - - auto 模式参数
manual_attr hbn_isp_awb_manual_attr_t - - - manual 模式参数

5.7.5.19. hbn_isp_ae_zone_weight_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
version hbn_isp_ae_zone_weight_version_e - - - 版本信息
weight hbn_isp_zone_weight_t[HBN_ISP_AE_ZONE_GRID_ITEMS] - - - AE 区域权重数组

5.7.5.20. hbn_isp_af_zone_weight_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
version hbn_isp_af_zone_weight_version_e - - - 版本信息
attr union { isp_af_zone_weight_func_a_attr_t func_a_attr; } - - - AF 区域权重属性

5.7.5.21. hbn_isp_exp_datatype_t

名称 类型 最小值 最大值 默认值 含义 必选
ISP_EXP_8BIT_DATA enum - - - EXP 8 位数据
ISP_EXP_16BIT_DATA enum - - - EXP 16 位数据
ISP_EXP_24BIT_DATA enum - - - EXP 24 位数据
ISP_BIT_DATA_MAX enum - - - 数据类型最大值

5.7.5.22. hbn_isp_ae_statistics_t

名称 类型 最小值 最大值 默认值 含义 必选
expStat uint32_t[HBN_ISP_AE_ZONE_GRID_ITEMS * HBN_ISP_PIXEL_CHANNEL] - - - AE 统计信息数组
datatype hbn_isp_exp_datatype_t - - - 数据类型
frame_id uint32_t - - - 帧 ID
timestamps uint64_t - - - 时间

5.7.5.23. hbn_isp_awb_statistics_t

名称 类型 最小值 最大值 默认值 含义 必选
awbStat uint32_t[HBN_ISP_AE_ZONE_GRID_ITEMS * HBN_ISP_PIXEL_CHANNEL] - - - AWB 统计信息数组
datatype hbn_isp_exp_datatype_t - - - 数据类型
frame_id uint32_t - - - 帧 ID
timestamps uint64_t - - - 时间

5.7.5.24. hbn_isp_af_statistics_t

名称 类型 最小值 最大值 默认值 含义 必选
sharpnessLowPass uint32_t[HBN_ISP_AFM_BLOCK_NUM] - - - 通滤波锐度值数组
sharpnessHighPass uint32_t[HBN_ISP_AFM_BLOCK_NUM] - - - 通滤波锐度值数组
histLowData uint32_t[HBN_ISP_AFM_BLOCK_NUM] - - - 低频直方图数据数组
histHighData uint32_t[HBN_ISP_AFM_BLOCK_NUM] - - - 高频直方图数据数组
frame_id uint32_t - - - 帧 ID

5.7.5.25. hbn_isp_table_t

名称 类型 最小值 最大值 默认值 含义 必选
exposure_time float - - - 曝光时间(单位:秒)
again float - - - 模拟增益
dgain float - - - 数字增益
isp_gain float - - - ISP 增益

5.7.5.26. hbn_isp_exposure_table_t

名称 类型 最小值 最大值 默认值 含义 必选
exp_table hbn_isp_table_t[HBN_ISP_EXP_TABLE_NUM] - - - 曝光表数组
valid_num uint8_t - - - 有效条目数量

5.7.5.27. hbn_isp_exposure_roi_t

名称 类型 最小值 最大值 默认值 含义 必选
roi_num uint32_t 0 HBN_ISP_ROI_WINDOWS_MAX - ROI 区域数量
roi_weight float 0 1 - ROI 权重
roi_window hbn_isp_roi_t[HBN_ISP_ROI_WINDOWS_MAX] - - - ROI 窗口数组

5.7.5.28. hbn_isp_2dnr_curve_t

名称 类型 最小值 最大值 默认值 含义 必选
ary_x uint16_t[HBN_ISP_2DNR_CURVE_SIZE] 0 4095 - Luma 曲线 X 轴数组
ary_y uint16_t[HBN_ISP_2DNR_CURVE_SIZE] - - - Luma 曲线 Y 轴数组
ary_px uint16_t[HBN_ISP_2DNR_CURVE_SIZE] - - - Luma 曲线 Delta X 数组
interp_mode uint32_t - - - 插值模式

5.7.5.29. hbn_isp_2dnr_motion_config_t

名称 类型 最小值 最大值 默认值 含义 必选
motion_anchor_x uint16_t[HBN_ISP_2DNR_MOTION_SIZE] 0 1024 - 运动锚点 X 轴数组
curve_cfg hbn_isp_2dnr_curve_t - - - 2DNR 曲线配置参数

5.7.5.30. hbn_isp_2dnr_manual_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
blend_static float 0 100 - 静态像素空间 NR 结果最终输出权重
blend_motion float 0 100 - 100% 运动像素空间 NR 结果最终输出权重
blend_slope float 0 32 - 合并斜率,值越表示 NLM 图像权重越大
vst_factor float 1 1000 - VST 因子
sigma_scale float[HBN_ISP_2DNR_SIGMA_NUM] 0.001 100 - Sigma 的缩放
sigma_factor_mul float[HBN_ISP_2DNR_SIGMA_NUM] 0.01 10 - Sigma 因子乘数
sigma_factor_motion_max uint16_t 1 1024 - 最大运动 Sigma 因子
sigma_factor_motion_min uint16_t 0 1024 - 最小运动 Sigma 因子
sigma_offset uint16_t 0 4095 - Sigma 平方
static_detail_thresh uint16_t[HBN_ISP_2DNR_STATIC_X_NUM][HBN_ISP_2DNR_STATIC_Y_NUM] 0 4095 - 静态细节阈值数组
static_detail_boost_thresh uint16_t[HBN_ISP_2DNR_STATIC_X_NUM][HBN_ISP_2DNR_STATIC_Y_NUM] 0 4095 - 静态细节增强阈值数组
static_detail_boost float[HBN_ISP_2DNR_STATIC_X_NUM][HBN_ISP_2DNR_STATIC_Y_NUM] 1 4 - 静态细节增强数组
static_detail_clip_thresh uint16_t[HBN_ISP_2DNR_STATIC_X_NUM][HBN_ISP_2DNR_STATIC_Y_NUM] 0 4095 - 静态细节剪辑阈值数组
moving_detail_thresh uint16_t[HBN_ISP_2DNR_MOVING_X_NUM][HBN_ISP_2DNR_MOVING_Y_NUM] 0 4095 - 运动细节阈值数组
moving_detail_boost_thresh uint16_t[HBN_ISP_2DNR_MOVING_X_NUM][HBN_ISP_2DNR_MOVING_Y_NUM] 0 4095 - 运动细节增强阈值数组
moving_detail_boost float[HBN_ISP_2DNR_MOVING_X_NUM][HBN_ISP_2DNR_MOVING_Y_NUM] 1 4 - 运动细节增强数组
moving_detail_clip_thresh uint16_t[HBN_ISP_2DNR_MOVING_X_NUM][HBN_ISP_2DNR_MOVING_Y_NUM] 0 4095 - 运动细节剪辑阈值数组
static_factor float[HBN_ISP_2DNR_SIGMA_NUM] 0.01 1 - 静态因子数组
luma_curve_cfg hbn_isp_2dnr_curve_t - - - Luma 曲线配置
lsc_comp_curve_cfg hbn_isp_2dnr_curve_t - - - LSC 比较曲线配置
motion_cfg hbn_isp_2dnr_motion_config_t - - - 运动配置

5.7.5.31. hbn_isp_2dnr_auto_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
auto_level uint8_t 1 20 - 自动级别
gain float[HBN_ISP_AUTO_LEVEL_MAX] - - - 2DNR 增益值数组
vst_factor float[HBN_ISP_AUTO_LEVEL_MAX] 1 1000 - VST 因子数组
blend_static float[HBN_ISP_AUTO_LEVEL_MAX] 0 100 - 静态像素空间 NR 结果最终输出权重数组
blend_motion float[HBN_ISP_AUTO_LEVEL_MAX] 0 100 - 100% 运动像素空间 NR 结果最终输出权重数组
blend_slope float[HBN_ISP_AUTO_LEVEL_MAX] 0 32 - 合并斜率数组,值越表示 NLM 图像权重越大
sigma_offset uint16_t[HBN_ISP_AUTO_LEVEL_MAX] 0 4095 - Sigma 偏移数组
luma_curve_y uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_CURVE_SIZE] 0 4095 - Luma 曲线 Y 轴数组
lsc_comp_curve_y uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_CURVE_SIZE] - - - LSC 比较曲线 Y 轴数组
motion_fac_curve_y uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_CURVE_SIZE] - - - 运动因子曲线 Y 轴数组
motion_anchor_x uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_MOTION_SIZE] 0 1024 - 运动锚点 X 轴数组
static_detail_thresh uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_STATIC_X_NUM][HBN_ISP_2DNR_STATIC_Y_NUM] 0 4095 - 静态细节阈值数组
static_detail_boost_thresh uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_STATIC_X_NUM][HBN_ISP_2DNR_STATIC_Y_NUM] 0 4095 - 静态细节增强阈值数组
static_detail_boost float[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_STATIC_X_NUM][HBN_ISP_2DNR_STATIC_Y_NUM] 1 4 - 静态细节增强数组
static_detail_clip_thresh uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_STATIC_X_NUM][HBN_ISP_2DNR_STATIC_Y_NUM] 0 4095 - 静态细节剪辑阈值数组
moving_detail_thresh uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_MOVING_X_NUM][HBN_ISP_2DNR_MOVING_Y_NUM] 0 4095 - 运动细节阈值数组
moving_detail_boost_thresh uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_MOVING_X_NUM][HBN_ISP_2DNR_MOVING_Y_NUM] 0 4095 - 运动细节增强阈值数组
moving_detail_boost float[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_MOVING_X_NUM][HBN_ISP_2DNR_MOVING_Y_NUM] 1 4 - 运动细节增强数组
moving_detail_clip_thresh uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_MOVING_X_NUM][HBN_ISP_2DNR_MOVING_Y_NUM] 0 4095 - 运动细节剪辑阈值数组
sigma_scale float[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_SIGMA_NUM] 0.001 100 - Sigma 缩放数组
static_factor float[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_SIGMA_NUM] 0.01 1 - 静态因子数组
sigma_factor_mul float[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_2DNR_SIGMA_NUM] 0.01 10 - Sigma 因子乘数数组
sigma_factor_motion_max uint16_t[HBN_ISP_AUTO_LEVEL_MAX] 1 1024 - 最大运动 Sigma 因子数组

5.7.5.32. hbn_isp_2dnr_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
mode hbn_isp_mode_e - - - 运行模式
manual_attr hbn_isp_2dnr_manual_attr_t - - - 手动配置属性
auto_attr hbn_isp_2dnr_auto_attr_t - - - 自动配置属性

5.7.5.33. hbn_isp_3dnr_noise_model_t

名称 类型 最小值 最大值 默认值 含义 必选
input_bits uint8_t 20 24 - 输入位数
fix_curve_start uint16_t 0 4096 - Start to fix curve
noisemodel_a double 0.1 100 - 噪声模型 A 参数
noisemodel_b double 0.1 10000 - 噪声模型 B 参数
bls_exp uint32_t[HBN_ISP_3DNR_BLS_EXP_NUM] - - - BLS 曝光数组

5.7.5.34. hbn_isp_3dnr_manual_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
vst_factor double 1 1000 - VST 因子
tnr_strength uint8_t 0 128 - TNR 强度阈值
tnr_strength2 uint8_t 0 128 - TNR 强度 2 阈值
filter_len uint8_t 1 99 - 参考的 IIR 滤波器长度
filter_len2 uint8_t 1 99 - 运动的 IIR 滤波器长度
motion_smooth_factor double 0.1 5 - 运动平滑因子
range_h hbn_isp_3dnr_range_dilate_t - - - 设置运动检测窗口大小(水平方向)
sad_weight uint8_t 0 16 - 运动差异权重( SAD+mean)
diff_type uint32_t 0 1 - 差异类型
sqr_diff_factor uint8_t 0 10 - 平方差异因子
motion_smooth_lvl uint8_t 0 1 - 运动平滑级别
dilate_h hbn_isp_3dnr_range_dilate_t - - - 设置运动膨胀窗口大小(水平方向)
noise_level uint16_t - - - 噪声校准数据
thr_motion_slope uint16_t 0 4095 - 静态与 100% 运动之间差距阈值
tnr_luma_curve_x uint16_t[HBN_ISP_3DNR_THR_LUMA_CURVE_NUM] 0 4095 - TNR 亮度曲线 X 轴数组
tnr_luma_curve_y uint16_t[HBN_ISP_3DNR_THR_LUMA_CURVE_NUM] 0 4095 - TNR 亮度曲线 Y 轴数组
tnr_motion_slop_y uint16_t[HBN_ISP_3DNR_THR_LUMA_CURVE_NUM] 0 4095 - TNR 运动斜率 Y 轴数组
noise_cfg hbn_isp_3dnr_noise_model_t - - - 3DNR 噪声模型配置

5.7.5.35. hbn_isp_3dnr_range_dilate_t

名称 类型 最小值 最大值 默认值 含义 必选
HBN_ISP_3DNR_RANGE_3 enum - - - 膨胀范围: 3
HBN_ISP_3DNR_RANGE_4 enum - - - 膨胀范围: 6

5.7.5.36. hbn_isp_3dnr_auto_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
auto_level uint8_t 1 20 - 3DNR 自动级别
nm_k float 0 100 - 噪声模型 K 参数
nm_p float 0 100 - 噪声模型 P 参数
gains float[HBN_ISP_AUTO_LEVEL_MAX] - - - 3DNR 增益值数组
fix_curve_start uint16_t[HBN_ISP_AUTO_LEVEL_MAX] 0 4096 - fix_curve_start
noisemodel_a double[HBN_ISP_AUTO_LEVEL_MAX] 0.1 100 - 噪声模型 A 参数数组
noisemodel_b double[HBN_ISP_AUTO_LEVEL_MAX] 0.1 10000 - 噪声模型 B 参数数组
bls_exp uint32_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_3DNR_BLS_EXP_NUM] - - - BLS 曝光数组
tnr_strength uint8_t[HBN_ISP_AUTO_LEVEL_MAX] 0 128 - TNR 强度阈值数组
tnr_strength2 uint8_t[HBN_ISP_AUTO_LEVEL_MAX] 0 128 - TNR 强度 2 阈值数组
filter_len uint8_t[HBN_ISP_AUTO_LEVEL_MAX] 1 99 - 参考的 IIR 滤波器长度数组
filter_len2 uint8_t[HBN_ISP_AUTO_LEVEL_MAX] 1 99 - 运动的 IIR 滤波器长度数组
motion_smooth_factor double[HBN_ISP_AUTO_LEVEL_MAX] 0.1 5 - 运动平滑因子数组
range_h hbn_isp_3dnr_range_dilate_t[HBN_ISP_AUTO_LEVEL_MAX] - - - 运动检测窗口大小数组(水平方向)
sad_weight uint8_t[HBN_ISP_AUTO_LEVEL_MAX] 0 16 - 运动差异权重数组( SAD+mean)
sqr_diff_factor uint8_t[HBN_ISP_AUTO_LEVEL_MAX] 0 10 - 平方差异因子数组
motion_smooth_lvl uint8_t[HBN_ISP_AUTO_LEVEL_MAX] 0 1 - 运动平滑级别数组
motion_dilate_en uint32_t[HBN_ISP_AUTO_LEVEL_MAX] 0 1 - 运动膨胀使能数组
dilate_h hbn_isp_3dnr_range_dilate_t[HBN_ISP_AUTO_LEVEL_MAX] - - - 运动膨胀窗口大小数组(水平方向)
tnr_luma_curve_y uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_3DNR_THR_LUMA_CURVE_NUM] 0 4095 - TNR 亮度曲线 Y 轴数组
tnr_motion_slop_y uint16_t[HBN_ISP_AUTO_LEVEL_MAX][HBN_ISP_3DNR_THR_LUMA_CURVE_NUM] 0 4095 - TNR 运动斜率 Y 轴数组

5.7.5.37. hbn_isp_3dnr_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
mode hbn_isp_mode_e - - - 运行模式
manual_attr hbn_isp_3dnr_manual_attr_t - - - 手动配置属性
auto_attr hbn_isp_3dnr_auto_attr_t - - - 自动配置属性

5.7.5.38. hbn_isp_module_ctrl_t

名称 类型 含义 必选
version hbn_isp_module_version_e 版本信息
module isp_module_ctrl_u isp 功能控制结构

5.7.5.39. isp_af_zone_weight_func_a_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
total_size uint32_t - - - 数组有效值大小 -
weight[15*15] hbn_isp_zone_weight_t - - - 权重数组,暂时支持 -

5.7.5.40. hbn_lsc_auto_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
auto_level uint8_t 0 HBN_ISO_STRENGTH_NUM - 自动配置级别
gains float32_t 0.0 - - LSC 增益系数
damping float32_t 0.0 1.0 - LSC 校正阻尼系数
strength float32_t 0.0 1.0 - 不同 ISO 档位的 LSC 校正强度
inter_mode hbn_lsc_inter_mode_t HBN_LSC_GAIN_INTER HBN_LSC_GAIN_COLOR_TEMP_WEIGHT_INTER - 插值模式

5.7.5.41. hbn_lsc_manual_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
matrix uint16_t HBN_ISP_LSC_M_MIN HBN_ISP_LSC_M_MAX - 矫正矩阵
x_size uint16_t HBN_ISP_LSC_X_MIN - - frame 分成 32x32 扇区,扇区的 x 方向大小。
32 个 xSzie 值相加必须和 image width 完全匹配
y_size uint16_t HBN_ISP_LSC_Y_MIN - - frame 分成 32x32 扇区,扇区的 y 方向大小,
16 个 ySize 值相加必须和 image height 除 2 完全匹配

5.7.5.42. hbn_isp_lsc_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
mode hbn_isp_mode_e - - - isp lsc 工作模式
manual_attr hbn_lsc_manual_attr_t - - - isp lsc manual 配置信息
auto_attr hbn_lsc_auto_attr_t - - - isp lsc auto 配置信息

5.7.5.43. hbn_isp_dpcc_manual_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
bpt_enable uint32_t - - - Bad pixel table enable -
bpt_num uint16_t 0 2048 - Bad pixel table number -
bpt_out_mode uint8_t 0 15 - Bad pixel table output mode -
bpt_pos_x[HBN_ISP_DPCC_DP_NUM] uint16_t - - - Bad pixel table X position -
bpt_pos_y[HBN_ISP_DPCC_DP_NUM] uint16_t - - - Bad pixel table Y position -
line_mad_fac[HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 63 - Line check for mean absolute difference factor -
line_thresh[HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 255 - Line threshold for green or red/blue channel -
methods_set[HBN_ISP_DPCC_MP_TYPE_NUM] uint16_t 0 8191 - DPCC methods enable bits -
out_mode uint8_t 0 15 - Interpolation mode for correction unit -
pg_fac[HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 63 - Peak of gradient factor -
rg_fac[HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 63 - Rank of gradient factor -
rnd_offs[HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 3 - Differential rank offsets for neighbor difference -
rnd_thresh[HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 63 - Rank neighbor difference threshold -
ro_limits[HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 3 - Rank order limits threshold -
set_use uint8_t 0 15 - Enable DPCC detection -

5.7.5.44. hbn_isp_dpcc_auto_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
auto_level uint8_t 1 20 - DPCC auto level -
gains[HBN_ISP_AUTO_LEVEL_MAX] float - - - DPCC gains -
line_mad_fac[HBN_ISP_AUTO_LEVEL_MAX] [HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 63 - Line check for mean absolute difference factor -
line_thresh[HBN_ISP_AUTO_LEVEL_MAX] [HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 255 - Line threshold for green or red/blue channel -
methods_set[HBN_ISP_AUTO_LEVEL_MAX] [HBN_ISP_DPCC_MP_TYPE_NUM] uint16_t 0 8191 - DPCC methods enable bits -
out_mode[HBN_ISP_AUTO_LEVEL_MAX uint8_t 0 15 - Interpolation mode for correction unit -
pg_fac[HBN_ISP_AUTO_LEVEL_MAX] [HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 63 - Peak of gradient factor -
rg_fac[HBN_ISP_AUTO_LEVEL_MAX] [HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 63 - Rank of gradient factor -
rnd_offs[HBN_ISP_AUTO_LEVEL_MAX] [HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 3 - Differential rank offsets for neighbor difference -
rnd_thresh[HBN_ISP_AUTO_LEVEL_MAX] [HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 63 - Rank neighbor difference threshold -
ro_limits[HBN_ISP_AUTO_LEVEL_MAX] [HBN_ISP_DPCC_CHANNEL_NUM] [HBN_ISP_DPCC_MP_TYPE_NUM] uint8_t 0 3 - Rank order limits threshold -
set_use[HBN_ISP_AUTO_LEVEL_MAX] uint8_t 0 15 - Enable DPCC detection -

5.7.5.45. hbn_isp_dpcc_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
mode hbn_isp_mode_e - - - The run mode
manual_attr hbn_isp_dpcc_manual_attr_t - - - DPCC manual configuration
auto_attr hbn_isp_dpcc_auto_attr_t - - - DPCC auto configuration

5.7.5.46. hbn_isp_wdr_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
mode hbn_isp_mode_e - - - The run mode
auto_attr hbn_isp_wdr_auto_attr_t - - - wdr manual configuration
manual_attr hbn_isp_wdr_manual_attr_t - - - wdr auto configuration

5.7.5.47. hbn_isp_ccm_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
manual_attr hbn_isp_ccm_manual_attr_t - - - ccm manual configuration

5.7.5.48. hbn_isp_gc_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
mode hbn_isp_mode_e - - - The run mode
auto_attr hbn_isp_gc_auto_attr_t - - - gamma correction manual configuration
manual_attr hbn_isp_gc_manual_attr_t - - - gamma correction manual configuration

5.7.5.49. hbn_isp_dmsc_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
mode hbn_isp_mode_e - - - The run mode
manual_attr hbn_isp_dmsc_manual_attr_t - - - demosaic manual configuration
auto_attr hbn_isp_dmsc_auto_attr_t - - - demosaic auto configuration

5.7.5.50. hbn_isp_ee_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
mode hbn_isp_mode_e - - - The run mode
manual_attr hbn_isp_ee_manual_attr_t - - - edge enhancement manual configuration
auto_attr hbn_isp_ee_auto_attr_t - - - edge enhancement auto configuration

5.7.5.51. hbn_isp_cproc_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
mode hbn_isp_mode_e - - - The run mode
auto_attr hbn_isp_cproc_auto_attr_t - - - color processing auto configuration
manual_attr hbn_isp_cproc_manual_attr_t - - - color processing auto manual configuration

5.7.5.52. hbn_isp_pattern_t

名称 类型 最小值 最大值 默认值 含义 必选
HBN_ISP_RAW_RGGB enum - - 0 RGGB -
HBN_ISP_RAW_GRBG enum - - 1 GRBG -
HBN_ISP_RAW_GBRG enum - - 2 GBRG -
HBN_ISP_RAW_BGGR enum - - 3 BGGR -

5.7.5.53. hbn_isp_awb_preference_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
gray_preference[HBN_ISP_ILLUPROFILE_NUM] hbn_isp_awb_gray_preference_attr_t - - - Gray scale preference -

5.7.5.54. hbn_isp_awb_gray_preference_attr_t

名称 类型 最小值 最大值 默认值 含义 必选
enable uint32_t - - - Grayscale preference enable -
brightness_level[HBN_ISP_AWB_LIGHT_LEVEL] float - - - Brightness level, must be incremental -
gray_rgain[HBN_ISP_AWB_LIGHT_LEVEL] uint16_t 0 512 - The grayscale of red channel -
gray_bgain[HBN_ISP_AWB_LIGHT_LEVEL] uint16_t 0 512 - The grayscale of green channel -

5.7.6. 返回值说明

错误码 定义 描述 常见原因解决方法
0 HBN_STATUS_SUCESS 成功
1 HBN_STATUS_INVALID_NODE vnode 无效,找不到对应的 vnode
2 HBN_STATUS_INVALID_NODETYPE vnode 类型无效,找不到对应的 vnode
3 HBN_STATUS_INVALID_HWID 无效硬件模块 id
4 HBN_STATUS_INVALID_CTXID 无效的 context id
5 HBN_STATUS_INVALID_OCHNID 无效输出通道 id
6 HBN_STATUS_INVALID_ICHNID 无效输入通道 id
7 HBN_STATUS_INVALID_FORMAT 无效格式
8 HBN_STATUS_INVALID_NULL_PTR 指针
9 HBN_STATUS_INVALID_PARAMETER 无效参数,版本检查失败
10 HBN_STATUS_ILLEGAL_ATTR 无效参数
11 HBN_STATUS_INVALID_FLOW 无效的 flow,找不到对应的 flow
12 HBN_STATUS_FLOW_EXIST flow 已经存在
13 HBN_STATUS_FLOW_UNEXIST flow 不存在
14 HBN_STATUS_NODE_EXIST node 已经存在
15 HBN_STATUS_NODE_UNEXIST node 不存在
16 HBN_STATUS_NOT_CONFIG 预留
17 HBN_STATUS_CHN_NOT_ENABLED 通道未使
18 HBN_STATUS_CHN_ALREADY_ENABLED 通道使
19 HBN_STATUS_ALREADY_BINDED node 已经绑定
20 HBN_STATUS_NOT_BINDED node 未绑定
21 HBN_STATUS_TIMEOUT 超时
22 HBN_STATUS_NOT_INITIALIZED 初始化
23 HBN_STATUS_NOT_SUPPORT 通道支持未激活
24 HBN_STATUS_NOT_PERM 操作允许
25 HBN_STATUS_NOMEM 内存不足
26 HBN_STATUS_INVALID_VNODE_FD 无效的 node 文件描述符
27 HBN_STATUS_INVALID_ICHNID_FD 无效输入通道文件描述符
28 HBN_STATUS_INVALID_OCHNID_FD 无效输出通道文件描述符
29 HBN_STATUS_OPEN_OCHN_FAIL 打开输出通道失败
30 HBN_STATUS_OPEN_ICHN_FAIL 打开输入通道失败
31 HBN_STATUS_JSON_PARSE_FAIL json 解析失败
32 HBN_STATUS_REQ_BUF_FAIL 请求 buffer 失败
33 HBN_STATUS_QUERY_BUF_FAIL 查询 buffer 信息失败
34 HBN_STATUS_SET_CONTROL_FAIL 模块控制、调节参数(如 ISP 效果参数)设置失败
35 HBN_STATUS_GET_CONTROL_FAIL 模块控制、调节参数(如 ISP 效果参数)获取失败
36 HBN_STATUS_NODE_START_FAIL node 开启失败
37 HBN_STATUS_NODE_STOP_FAIL node 停止失败
38 HBN_STATUS_NODE_POLL_ERROR node 通道 poll 错误
39 HBN_STATUS_NODE_POLL_TIMEOUT node 通道 poll 超时
40 HBN_STATUS_NODE_POLL_FRAME_DROP node 通道 poll 时发生
41 HBN_STATUS_NODE_POLL_HUP node 通道 poll 时描述符
42 HBN_STATUS_NODE_ILLEGAL_EVENT node 通道 poll 时事件非法
43 HBN_STATUS_NODE_DEQUE_ERROR node 通道 dequeue buffer 错误
44 HBN_STATUS_ILLEGAL_BUF_INDEX 无效的 buffer 索引
45 HBN_STATUS_NODE_QUE_ERROR node 通道 queue buffer 错误
46 HBN_STATUS_FLUSH_FRAME_ERROR node 通道帧 flush 错误
47 HBN_STATUS_INIT_BIND_ERROR 用 json 解析绑定发生错误
48 HBN_STATUS_ADD_NODE_FAIL 向 flow 中添加 node 失败
49 HBN_STATUS_WRONG_CONFIG_ID 系统支持的 node id
50 HBN_STATUS_BIND_NODE_FAIL flow 绑定 node 时发生错误
51 HBN_STATUS_INVALID_VERSION 底层驱动模块上层版本号匹配错误
52 HBN_STATUS_GET_VERSION_ERROR 获取底层驱动模块版本号错误
53 HBN_STATUS_MEM_INIT_FAIL hbmem 内存初始化失败
54 HBN_STATUS_MEM_IMPORT_FAIL hbmem 内存引入失败
55 HBN_STATUS_MEM_FREE_FAIL hbmem 内存释放失败
56 HBN_STATUS_SYSFS_OPEN_FAIL 系统文件打开失败
57 HBN_STATUS_STRUCT_SIZE_NOT_MATCH hal 层结构大小与 kernel 层匹配
58 HBN_STATUS_RGN_UNEXIST 获取不到对应的 rgn 数据
59 HBN_STATUS_RGN_INVALID_OPERATION rgn 操作无效
60 HBN_STATUS_RGN_OPEN_FILE_FAIL rgn 模块打开文件失败
128 HBN_STATUS_ERR_UNKNOW 未知错误
0x010008 HBN_STATUS_ISP_INVALID_NULL_PTR 无效指针 可能传递指针某个函数。检查传递指针是否有效。
0x010009 HBN_STATUS_ISP_INVALID_PARAMETER 无效参数 参数值合法超出范围。验证输入参数有效性合理性。
0x01000A HBN_STATUS_ISP_ILLEGAL_ATTR 非法属性 使用支持属性。检查传入属性是否符合要求。
0x01000F HBN_STATUS_ISP_NODE_UNEXIST 节点存在 尝试操作一个存在节点。检查节点是否正确初始化。
0x010022 HBN_STATUS_ISP_SET_CONTROL_FAIL 设置控制失败 设置控制参数失败。检查控制相关配置是否正确。
0x010023 HBN_STATUS_ISP_GET_CONTROL_FAIL 获取控制失败 获取控制参数失败。确认硬件状态是否正常重新获取。
0x010032 HBN_STATUS_ISP_BIND_NODE_FAIL 绑定节点失败 绑定节点出现错误。检查节点是否有效,或者是否正确绑定。
0x010033 HBN_STATUS_ISP_INVALID_VERSION 无效版本 版本匹配兼容。检查版本号确保软件硬件版本匹配。
0x010035 HBN_STATUS_ISP_MEM_INIT_FAIL 内存初始化失败 内存分配失败初始化失败。检查内存配置确保足够资源。
0x010036 HBN_STATUS_ISP_MEM_IMPORT_FAIL 内存导入失败 导入内存失败。检查内存导入过程参数路径是否正确。
0x010037 HBN_STATUS_ISP_MEM_FREE_FAIL 内存释放失败 释放内存失败。确保内存已经分配重复释放。
0x010038 HBN_STATUS_ISP_SYSFS_OPEN_FAIL 打开系统文件失败 打开系统文件失败。检查系统文件路径权限是否正确。
0x010080 HBN_STATUS_ISP_2A_ERROR 2A(自动对焦 / 曝光)错误 自动对焦曝光失败。检查 2A 相关模块是否正常工作。