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)

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

  • 支持防闪烁

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

  • 支持锐化 / 模糊滤镜

  • 支持 RGB-IR 4x4 模式

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

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

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 CSM 色彩空间转换
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 - - - AE 曝光值
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 相关模块是否正常工作。