31. DRC

31.1. Function Overview

The dynamic range of the whole image makes the display effect on the display device consistent with the human visual experience.

31.2. API Reference

31.2.1. CVI_ISP_SetDRCAttr

【Description】

Set DRC attribute parameter.

【Syntax】

CVI_S32 CVI_ISP_SetDRCAttr(VI_PIPE ViPipe, const ISP_DRC_ATTR_S *pstDRCAttr);

【Parameter】

Parameter

Description

Input/Output

ViPipe

VI_PIPE number

Input

pstDRCAttr

DRC attribute parameter

Input

【Return Value】

Return Value

Description

0

Success

Non 0

Failure. An error code is returned. For details, see chapter Error Codes.

【Requirement】

  • Header files: cvi_isp.h, cvi_comm_isp.h

  • Library files: libisp.so

【Note】

  • When the wdr mode is enabled, you are advised to set Gamma table to sRGB.

【Example】

None.

【Related Topic】

31.2.2. CVI_ISP_GetDRCAttr

【Description】

Get DRC attribute parameter.

【Syntax】

CVI_S32 CVI_ISP_GetDRCAttr(VI_PIPE ViPipe, ISP_DRC_ATTR_S *pstDRCAttr);

【Parameter】

Parameter

Description

Input/Output

ViPipe

VI_PIPE number

Input

pstDRCAttr

DRC attribute parameter

Output

【Return Value】

Return Value

Description

0

Success

Non 0

Failure. An error code is returned. For details, see chapter Error Codes.

【Requirement】

  • Header files: cvi_isp.h, cvi_comm_isp.h

  • Library files: libisp.so

【Note】

  • When the wdr mode is enabled, you are advised to set Gamma table to sRGB..

【Example】

None.

【Related Topic】

31.3. Data Types

31.3.1. ISP_DRC_MANUAL_ATTR_S

【Description】

DRC attribute manual parameter.

【Syntax】

 typedef struct _ISP_DRC_MANUAL_ATTR_S {
  CVI_U32 TargetYScale; /*RW; Range:[0x0, 0x800]*/
  CVI_U16 HdrStrength; /*RW; Range:[0x0, 0x100]*/
  CVI_U8 DEAdaptPercentile; /*RW; Range:[0x0, 0x19]*/
  CVI_U8 DEAdaptTargetGain; /*RW; Range:[0x1, 0x60]*/
  CVI_U8 DEAdaptGainUB; /*RW; Range:[0x1, 0xff]*/
  CVI_U8 DEAdaptGainLB; /*RW; Range:[0x1, 0xff]*/
  CVI_U8 BritInflectPtLuma; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 BritContrastLow; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 BritContrastHigh; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 SdrTargetY; /*RW; Range:[0x0, 0xff]*/
  CVI_U8 SdrTargetYGain; /*RW; Range:[0x20, 0x80]*/
  CVI_U16 SdrGlobalToneStr; /*RW; Range:[0x0, 0x100]*/
  CVI_U8 SdrDEAdaptPercentile; /*RW; Range:[0x0, 0x19]*/
  CVI_U8 SdrDEAdaptTargetGain; /*RW; Range:[0x1, 0x40]*/
  CVI_U8 SdrDEAdaptGainLB; /*RW; Range:[0x1, 0xff]*/
  CVI_U8 SdrDEAdaptGainUB; /*RW; Range:[0x1, 0xff]*/
  CVI_U8 SdrBritInflectPtLuma; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 SdrBritContrastLow; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 SdrBritContrastHigh; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 TotalGain; /*RW; Range:[0x0, 0xff]*/
} ISP_DRC_MANUAL_ATTR_S;

【Members】

Member

Description

LETargetYScale

The tone map of the dark part enhances the reference target brightness value gain, drc generates a reference target brightness value based on this value and the average value of the current wide dynamic brightness distribution, and adaptively generates a tone mapping curve based on this value

Value range: [0x0, 0x800]

Data type: CVI_U32

TargetYScale

Reference target brightness value gain, drc generates a reference target brightness value based on this value and the average value of the current wide dynamic brightness distribution, and adaptively generates a tone mapping curve based on this value

Value range: [0x0, 0x800]

Data type: CVI_U32

HdrStrength

Control the parameter of the HDR enhancement effect. The larger the value, the stronger the overall transparency stretch, and vice versa, the weaker the stretch.

Value range: [0x0, 0x100]

Data type: CVI_U16

DarkOffset

Control the brightening of dark areas, the larger the value, the more brightening of dark areas, but the transparency of bright areas will decrease. It is not recommended to set this value too large.

Value range: [0x0, 0x100]

Data type: CVI_U16

ContrastDarkMinThrd

Local Contrast Enhancement: The weight used to control the contrast of dark areas adapts to the minimum threshold with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMaxThrd

Local Contrast Enhancement: The weight used to control the contrast of dark areas adapts to the maximum critical value with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMinWeight

Local Contrast Enhancement: Used to control the weight corresponding to the minimum critical value of dark area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastDarkMaxWeight

Local Contrast Enhancement: Used to control the weight corresponding to the maximum critical value of dark area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastBrightMinThrd

Local contrast enhancement: The weight used to control the contrast of bright areas adapts to the minimum threshold with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastBrightMaxThrd

Local Contrast Enhancement: The weight used to control the contrast of bright areas adapts to the maximum critical value with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastBrightMinWeight

Local Contrast Enhancement: Used to control the weight corresponding to the minimum critical value of bright area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastBrightMaxWeight

Local Contrast Enhancement: Used to control the weight corresponding to the maximum critical value of bright area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastGain

Global contrast control parameter, 128 is 1 times, the smaller the value is less than 128, the more the contrast will be reduced, and the larger the value is greater than 128, the more the contrast will be improved.

Value range: [0x0, 0x100]

Data type: CVI_U16

DarkToneRange

Control the brightening range value of the dark area. The larger the value is, the brighter the dark area will be, but the transparency of the bright area will decrease. It is not recommended to set this value too large.

Value range: [0x0, 0x100]

Data type: CVI_U16

DEAdaptPercentile

Defines the percentile for Dark, which determines the areas not to be enhanced.

Value range: [0x0, 0x19]

Data type: CVI_U8

DEAdaptTargetGain

The enhancement of Dark Tone adaptive target, the bigger the value is, the brighter it will be, 32 is double, 40 is 1.25x.

Value range: [0x1, 0x40]

Data type: CVI_U8

DEAdaptGainLB

The lower bound of Dark Tone adaptive enhancement, the larger the value, the less dark it will be suppressed, 32 is double, and 96 is 3x.

Value range: [0x1, 0xFF]

Data type: CVI_U8

DEAdaptGainUB

The upper limit of Dark Tone adaptive enhancement, the larger the value, the brighter it is, 32 is double, and 96 is 3x.

Value range: [0x1, 0xFF]

Data type: CVI_U8

SdrDEAdaptPercentile

Defines the percentile for Dark, which determines the areas not to be enhanced.

Value range: [0x0, 0x19]

Data type: CVI_U8

SdrDEAdaptTargetGain

The enhancement of Dark Tone adaptive target, the bigger the value is, the brighter it will be, 32 is double, 40 is 1.25x.

Value range: [0x1, 0x40]

Data type: CVI_U8

SdrDEAdaptGainLB

The lower bound of Dark Tone adaptive enhancement, the larger the value, the less dark it will be suppressed, 32 is double, and 96 is 3x.

Value range: [0x1, 0xFF]

Data type: CVI_U8

SdrDEAdaptGainUB

The upper limit of Dark Tone adaptive enhancement, the larger the value, the brighter it is, 32 is double, and 96 is 3x.

Value range: [0x1, 0xFF]

Data type: CVI_U8

BritInflectPtLuma

Bright Tone The brightness of the long-short exposure boundary area, the larger the value, the higher the brightness.

Value range: [0x0, 0x64]

Data type: CVI_U8

BritContrastLow

Bright Tone The degree of darkening of dark areas in bright areas, the larger the value, the more darkening.

Value range: [0x0, 0x64]

Data type: CVI_U8

BritContrastHigh

Bright Tone Brightening degree of the bright areas in the bright area, the larger the value, the more the brightening.

Value range: [0x0, 0x64]

Data type: CVI_U8

SdrTargetY

Globally use Global Tone to brighten the screen, the larger the value, the more the brightness will be raised.

Value range: [0x0, 0xFF]

Data type: CVI_U8

SdrTargetYGain

Globally use Global Tone to brighten the screen, and the target brightness is a multiple of the current average brightness, 1x=32, 2x = 64.

Value range: [0x20, 0x80]

Data type: CVI_U8

SdrGlobalToneStr

The strength of the Global Tone, the larger the value, the stronger the Global Tone, otherwise it is closer to the Linear Tone.

Value range: [0x0, 0x100]

Data type: CVI_U16

SdrBritInflectPtLuma

Bright Tone The brightness of the long-short exposure boundary area, the larger the value, the higher the brightness.

Value range: [0x0, 0x64]

Data type: CVI_U8

SdrBritContrastLow

Bright Tone The degree of darkening of dark areas in bright areas, the larger the value, the more darkening.

Value range: [0x0, 0x64]

Data type: CVI_U8

SdrBritContrastHigh

Bright Tone Brightening degree of the bright areas in the bright area, the larger the value, the more the brightening.

Value range: [0x0, 0x64]

Data type: CVI_U8

LETargetYScale

The tone map of the dark part enhances the reference target brightness value gain, drc generates a reference target brightness value based on this value and the average value of the current wide dynamic brightness distribution, and adaptively generates a tone mapping curve based on this value

Value range: [0x0, 0x800]

Data type: CVI_U32

TargetYScale

Reference target brightness value gain, drc generates a reference target brightness value based on this value and the average value of the current wide dynamic brightness distribution, and adaptively generates a tone mapping curve based on this value

Value range: [0x0, 0x800]

Data type: CVI_U32

HdrStrength

Control the parameter of the HDR enhancement effect. The larger the value, the stronger the overall transparency stretch, and vice versa, the weaker the stretch.

Value range: [0x0, 0xff]

Data type: CVI_U16

DarkOffset

Control the brightening of dark areas, the larger the value, the more brightening of dark areas, but the transparency of bright areas will decrease. It is not recommended to set this value too large.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMinThrd

Local Contrast Enhancement: The weight used to control the contrast of dark areas adapts to the minimum threshold with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMaxThrd

Local Contrast Enhancement: The weight used to control the contrast of dark areas adapts to the maximum critical value with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMinWeight

Local Contrast Enhancement: Used to control the weight corresponding to the minimum critical value of dark area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastDarkMaxWeight

Local Contrast Enhancement: Used to control the weight corresponding to the maximum critical value of dark area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastBrightMinThrd

Local contrast enhancement: The weight used to control the contrast of bright areas adapts to the minimum threshold with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastBrightMaxThrd

Local Contrast Enhancement: The weight used to control the contrast of bright areas adapts to the maximum critical value with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastBrightMinWeight

Local Contrast Enhancement: Used to control the weight corresponding to the minimum critical value of bright area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastBrightMaxWeight

Local Contrast Enhancement: Used to control the weight corresponding to the maximum critical value of bright area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

TotalGain

Overall detail intensity, 1x = 32

Value range: [0x0, 0xff]

Data type: CVI_U8

【Note】

None.

【Related Data Type and Interface】

31.3.2. ISP_DRC_AUTO_ATTR_S

【Description】

DRC attribute auto parameter.

【Syntax】

 typedef struct _ISP_DRC_AUTO_ATTR_S {
  CVI_U32 TargetYScale[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x800]*/
  CVI_U16 HdrStrength[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x100]*/
  CVI_U8 DEAdaptPercentile[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x19]*/
  CVI_U8 DEAdaptTargetGain[ISP_AUTO_LV_NUM]; /*RW; Range:[0x1, 0x60]*/
  CVI_U8 DEAdaptGainUB[ISP_AUTO_LV_NUM]; /*RW; Range:[0x1, 0xff]*/
  CVI_U8 DEAdaptGainLB[ISP_AUTO_LV_NUM]; /*RW; Range:[0x1, 0xff]*/
  CVI_U8 BritInflectPtLuma[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 BritContrastLow[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 BritContrastHigh[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 SdrTargetY[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0xff]*/
  CVI_U8 SdrTargetYGain[ISP_AUTO_LV_NUM]; /*RW; Range:[0x20, 0x80]*/
  CVI_U16 SdrGlobalToneStr[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x100]*/
  CVI_U8 SdrDEAdaptPercentile[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x19]*/
  CVI_U8 SdrDEAdaptTargetGain[ISP_AUTO_LV_NUM]; /*RW; Range:[0x1, 0x40]*/
  CVI_U8 SdrDEAdaptGainLB[ISP_AUTO_LV_NUM]; /*RW; Range:[0x1, 0xff]*/
  CVI_U8 SdrDEAdaptGainUB[ISP_AUTO_LV_NUM]; /*RW; Range:[0x1, 0xff]*/
  CVI_U8 SdrBritInflectPtLuma[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 SdrBritContrastLow[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 SdrBritContrastHigh[ISP_AUTO_LV_NUM]; /*RW; Range:[0x0, 0x64]*/
  CVI_U8 TotalGain[ISP_AUTO_ISO_STRENGTH_NUM]; /*RW; Range:[0x0, 0xff]*/
} ISP_DRC_AUTO_ATTR_S;

【Members】

Member

Description

LETargetYScale

The tone map of the dark part enhances the reference target brightness value gain, drc generates a reference target brightness value based on this value and the average value of the current wide dynamic brightness distribution, and adaptively generates a tone mapping curve based on this value

Value range: [0x0, 0x800]

Data type: CVI_U32

TargetYScale

Reference target brightness value gain, drc generates a reference target brightness value based on this value and the average value of the current wide dynamic brightness distribution, and adaptively generates a tone mapping curve based on this value

Value range: [0x0, 0x800]

Data type: CVI_U32

HdrStrength

Control the parameter of the HDR enhancement effect. The larger the value, the stronger the overall transparency stretch, and vice versa, the weaker the stretch.

Value range: [0x0, 0x100]

Data type: CVI_U16

DarkOffset

Control the brightening of dark areas, the larger the value, the more brightening of dark areas, but the transparency of bright areas will decrease. It is not recommended to set this value too large.

Value range: [0x0, 0x100]

Data type: CVI_U16

ContrastDarkMinThrd

Local Contrast Enhancement: The weight used to control the contrast of dark areas adapts to the minimum threshold with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMaxThrd

Local Contrast Enhancement: The weight used to control the contrast of dark areas adapts to the maximum critical value with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMinWeight

Local Contrast Enhancement: Used to control the weight corresponding to the minimum critical value of dark area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastDarkMaxWeight

Local Contrast Enhancement: Used to control the weight corresponding to the maximum critical value of dark area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastBrightMinThrd

Local contrast enhancement: The weight used to control the contrast of bright areas adapts to the minimum threshold with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastBrightMaxThrd

Local Contrast Enhancement: The weight used to control the contrast of bright areas adapts to the maximum critical value with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastBrightMinWeight

Local Contrast Enhancement: Used to control the weight corresponding to the minimum critical value of bright area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastBrightMaxWeight

Local Contrast Enhancement: Used to control the weight corresponding to the maximum critical value of bright area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastGain

Global contrast control parameter, 128 is 1 times, the smaller the value is less than 128, the more the contrast will be reduced, and the larger the value is greater than 128, the more the contrast will be improved.

Value range: [0x0, 0x100]

Data type: CVI_U16

DarkToneRange

Control the brightening range value of the dark area. The larger the value is, the brighter the dark area will be, but the transparency of the bright area will decrease. It is not recommended to set this value too large.

Value range: [0x0, 0x100]

Data type: CVI_U16

DEAdaptPercentile

Defines the percentile for Dark, which determines the areas not to be enhanced.

Value range: [0x0, 0x19]

Data type: CVI_U8

DEAdaptTargetGain

The enhancement of Dark Tone adaptive target, the bigger the value is, the brighter it will be, 32 is double, 40 is 1.25x.

Value range: [0x1, 0x40]

Data type: CVI_U8

DEAdaptGainLB

The lower bound of Dark Tone adaptive enhancement, the larger the value, the less dark it will be suppressed, 32 is double, and 96 is 3x.

Value range: [0x1, 0xFF]

Data type: CVI_U8

DEAdaptGainUB

The upper limit of Dark Tone adaptive enhancement, the larger the value, the brighter it is, 32 is double, and 96 is 3x.

Value range: [0x1, 0xFF]

Data type: CVI_U8

SdrDEAdaptPercentile

Defines the percentile for Dark, which determines the areas not to be enhanced.

Value range: [0x0, 0x19]

Data type: CVI_U8

SdrDEAdaptTargetGain

The enhancement of Dark Tone adaptive target, the bigger the value is, the brighter it will be, 32 is double, 40 is 1.25x.

Value range: [0x1, 0x40]

Data type: CVI_U8

SdrDEAdaptGainLB

The lower bound of Dark Tone adaptive enhancement, the larger the value, the less dark it will be suppressed, 32 is double, and 96 is 3x.

Value range: [0x1, 0xFF]

Data type: CVI_U8

SdrDEAdaptGainUB

The upper limit of Dark Tone adaptive enhancement, the larger the value, the brighter it is, 32 is double, and 96 is 3x.

Value range: [0x1, 0xFF]

Data type: CVI_U8

BritInflectPtLuma

Bright Tone The brightness of the long-short exposure boundary area, the larger the value, the higher the brightness.

Value range: [0x0, 0x64]

Data type: CVI_U8

BritContrastLow

Bright Tone The degree of darkening of dark areas in bright areas, the larger the value, the more darkening.

Value range: [0x0, 0x64]

Data type: CVI_U8

BritContrastHigh

Bright Tone Brightening degree of the bright areas in the bright area, the larger the value, the more the brightening.

Value range: [0x0, 0x64]

Data type: CVI_U8

SdrTargetY

Globally use Global Tone to brighten the screen, the larger the value, the more the brightness will be raised.

Value range: [0x0, 0xFF]

Data type: CVI_U8

SdrTargetYGain

Globally use Global Tone to brighten the screen, and the target brightness is a multiple of the current average brightness, 1x=32, 2x = 64.

Value range: [0x20, 0x80]

Data type: CVI_U8

SdrGlobalToneStr

The strength of the Global Tone, the larger the value, the stronger the Global Tone, otherwise it is closer to the Linear Tone.

Value range: [0x0, 0x100]

Data type: CVI_U16

SdrBritInflectPtLuma

Bright Tone The brightness of the long-short exposure boundary area, the larger the value, the higher the brightness.

Value range: [0x0, 0x64]

Data type: CVI_U8

SdrBritContrastLow

Bright Tone The degree of darkening of dark areas in bright areas, the larger the value, the more darkening.

Value range: [0x0, 0x64]

Data type: CVI_U8

SdrBritContrastHigh

Bright Tone Brightening degree of the bright areas in the bright area, the larger the value, the more the brightening.

Value range: [0x0, 0x64]

Data type: CVI_U8

LETargetYScale

The tone map of the dark part enhances the reference target brightness value gain, drc generates a reference target brightness value based on this value and the average value of the current wide dynamic brightness distribution, and adaptively generates a tone mapping curve based on this value

Value range: [0x0, 0x800]

Data type: CVI_U32

TargetYScale

Reference target brightness value gain, drc generates a reference target brightness value based on this value and the average value of the current wide dynamic brightness distribution, and adaptively generates a tone mapping curve based on this value

Value range: [0x0, 0x800]

Data type: CVI_U32

HdrStrength

Control the parameter of the HDR enhancement effect. The larger the value, the stronger the overall transparency stretch, and vice versa, the weaker the stretch.

Value range: [0x0, 0xff]

Data type: CVI_U16

DarkOffset

Control the brightening of dark areas, the larger the value, the more brightening of dark areas, but the transparency of bright areas will decrease. It is not recommended to set this value too large.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMinThrd

Local Contrast Enhancement: The weight used to control the contrast of dark areas adapts to the minimum threshold with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMaxThrd

Local Contrast Enhancement: The weight used to control the contrast of dark areas adapts to the maximum critical value with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastDarkMinWeight

Local Contrast Enhancement: Used to control the weight corresponding to the minimum critical value of dark area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastDarkMaxWeight

Local Contrast Enhancement: Used to control the weight corresponding to the maximum critical value of dark area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastBrightMinThrd

Local contrast enhancement: The weight used to control the contrast of bright areas adapts to the minimum threshold with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastBrightMaxThrd

Local Contrast Enhancement: The weight used to control the contrast of bright areas adapts to the maximum critical value with the dynamic range.

Value range: [0x0, 0x3ff]

Data type: CVI_U16

ContrastBrightMinWeight

Local Contrast Enhancement: Used to control the weight corresponding to the minimum critical value of bright area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

ContrastBrightMaxWeight

Local Contrast Enhancement: Used to control the weight corresponding to the maximum critical value of bright area contrast.

Value range: [0x0, 0xff]

Data type: CVI_U8

TotalGain

Overall detail intensity, 1x = 32

Value range: [0x0, 0xff]

Data type: CVI_U8

【Note】

None.

【Related Data Type and Interface】

31.3.3. ISP_DRC_ATTR_S

【Description】

DRC attribute parameter.

【Syntax】

 typedef struct _ISP_DRC_ATTR_S {
  CVI_BOOL Enable; /*RW; Range:[0, 1]*/
  ISP_OP_TYPE_E enOpType;
  CVI_U8 UpdateInterval; /*RW; Range:[0x1, 0xFF]*/
  CVI_U8 TuningMode; /*RW; Range:[0x0, 0x7]*/
  CVI_BOOL LocalToneEn; /*RW; Range:[0x0, 0x1]*/
  CVI_BOOL LocalToneRefineEn; /*RW; Range:[0x0, 0x1]*/
  CVI_U8 ToneCurveSelect; /*RW; Range:[0x0, 0x1]*/
  CVI_U16 CurveUserDefine[DRC_GLOBAL_USER_DEFINE_NUM]; /*RW; Range:[0x0, 0xffff]*/
  CVI_U16 DarkUserDefine[DRC_DARK_USER_DEFINE_NUM]; /*RW; Range:[0x0, 0xffff]*/
  CVI_U16 BrightUserDefine[DRC_BRIGHT_USER_DEFINE_NUM]; /*RW; Range:[0x0, 0xffff]*/
  CVI_U32 ToneCurveSmooth; /*RW; Range:[0x0, 0x1f4]*/
  CVI_U8 CoarseFltScale; /*RW; Range:[0x3, 0x6]*/
  CVI_U8 SdrTargetYGainMode; /*RW; Range:[0x0, 0x1]*/
  CVI_BOOL DetailEnhanceEn; /*RW; Range:[0x0, 0x1]*/
  CVI_U8 LumaGain[33]; /*RW; Range:[0x0, 0xff]*/
  CVI_U8 DetailEnhanceMtIn[4]; /*RW; Range:[0x0, 0xff]*/
  CVI_U16 DetailEnhanceMtOut[4]; /*RW; Range:[0x0, 0x100]*/
  CVI_U8 OverShootThd; /*RW; Range:[0x0, 0xff]*/
  CVI_U8 UnderShootThd; /*RW; Range:[0x0, 0xff]*/
  CVI_U8 OverShootGain; /*RW; Range:[0x0, 0x3f]*/
  CVI_U8 UnderShootGain; /*RW; Range:[0x0, 0x3f]*/
  CVI_U8 OverShootThdMax; /*RW; Range:[0x0, 0xff]*/
  CVI_U8 UnderShootThdMin; /*RW; Range:[0x0, 0xff]*/
  CVI_BOOL SoftClampEnable; /*RW; Range:[0x0, 0x1]*/
  CVI_U8 SoftClampUB; /*RW; Range:[0x0, 0xff]*/
  CVI_U8 SoftClampLB; /*RW; Range:[0x0, 0xff]*/
  CVI_BOOL dbg_182x_sim_enable; /*RW; Range:[0, 1]*/
  CVI_U8 DarkMapStr; /*RW; Range:[0x0, 0x80]*/
  CVI_U8 BritMapStr; /*RW; Range:[0x0, 0x80]*/
  CVI_U8 SdrDarkMapStr; /*RW; Range:[0x0, 0x80]*/
  CVI_U8 SdrBritMapStr; /*RW; Range:[0x0, 0x80]*/
  CVI_U32 DRCMu[32]; /*RW; Range:[0x0, 0x7fffffff]*/
  ISP_DRC_MANUAL_ATTR_S stManual;
  ISP_DRC_AUTO_ATTR_S stAuto;
} ISP_DRC_ATTR_S;

【Members】

Member

Description

Enable

DRC module enable

Value range: [0, 1]

Data type: CVI_BOOL

enOpType

job type

OP_TYPE_AUTO: automatic mode

OP_TYPE_MANUAL: manual mode

UpdateInterval

Affects the parameter update interval, the larger the value, the slower the screen changes and the better the performance

Value range: [0x0, 0xff]

Data type: CVI_U8

TuningMode

Debug mode, output visual auxiliary information to help users debug.

0: Do not output visual auxiliary information

1: Output the visual result of SE image highlight information.

2: Output the visualization result of the dark part information of the LE screen.

3: Output the SE screen DC information visualization result.

4: Output LE screen DC information visualization results

Value range: [0x0, 0x7]

Data type: CVI_U8

LocalToneEn

Enable Bright Local Tone Mapping and Dark Local Tone Mapping

Value range: [0x0, 0x1]

Data type: CVI_BOOL

LocalToneRefineEn

Optimize the enablement of local tone mapping to make the area division more precise

Value range: [0x0, 0x1]

Data type: CVI_BOOL

CoarseFltScale

Control the size of the filtering window, and the adjustment step size is larger than that of DRangeFltScale. The larger the value, the larger the filter window, the richer the details. On the contrary, the weaker

Value range: [0x3, 0x6]

Data type: CVI_U8

DarkUserDefine[257]

User-Definable Shadow Tone Mapping Curves

Value range: [0x0, 0xffff]

Data type: CVI_U16

BrightUserDefine[513]

User-Definable Highlight Tone Mapping Curve

Value range: [0x0, 0xffff]

Data type: CVI_U16

CurveUserDefine[1025]

user defined curve

Value range: [0x0, 0xffff]

Data type: CVI_U16

ToneCurveSelect

Tone Curve selection:

0: Select user-defined curve.

1: Select the Asymmetry curve

Value range: [0x0, 0x1]

Data type: CVI_U8

LinearStart

Limits the intensity of tone-mapping compression within a specified value range, preserving the transparency of image values falling within that region. LinearStart defines the starting point value of the range

Value range: [0x0, 0xfff]

Data type: CVI_U16

LinearEnd

Limits the intensity of tone-mapping compression within a specified value range, preserving the transparency of image values falling within that region. LinearEnd defines the end value of the range

Value range: [0x0, 0xfff]

Data type: CVI_U16

ToneCurveSmooth

The smoothness of the change in the time domain of the Tone Curve curve. The larger the value, the smoother the change in the time domain, and vice versa

Value range: [0x0, 0x1f4]

Data type: CVI_U32

DetailEnhanceEnable

Sharpen module enable

Value range: [0x0, 0x1]

Data type: CVI_BOOL

DetailEnhanceEn

Enable the ltm_ee module to enhance the details of HDR

Value range: [0x0, 0x1]

Data type: CVI_BOOL

LumaGain[33]

Adjust the intensity of enhanced details according to the brightness, 1x = 64

Value range: [0x0, 0xff]

Data type: CVI_U8

DetailEnhanceMtIn[4]

According to the strength of the motion, adjust the enhanced details

Value range: [0x0, 0xff]

Data type: CVI_U8

DetailEnhanceMtOut[4]

According to the strength of the motion, adjust the enhanced details

Value range: [0x0, 0x100]

Data type: CVI_U16

OverShootThd

White edge sharpening upper limit

Value range: [0x0, 0xff]

Data type: CVI_U8

UnderShootThd

Black edge sharpening upper limit range

Value range: [0x0, 0xff]

Data type: CVI_U8

OverShootGain

The intensity of white edge sharpening, 16 is doubled

Value range: [0x0, 0x3f]

Data type: CVI_U8

UnderShootGain

The intensity of black edge sharpening, 16 is doubled

Value range: [0x0, 0x3f]

Data type: CVI_U8

OverShootThdMax

White edge sharpening maximum upper limit range

Value range: [0x0, 0xff]

Data type: CVI_U8

UnderShootThdMin

Black edge sharpening maximum upper limit range

Value range: [0x0, 0xff]

Data type: CVI_U8

SoftClampEnable

Smooth Processing Edge Enhancement

Value range: [0x0, 0x1]

Data type: CVI_BOOL

SoftClampUB

The upper and lower bounds of edge enhancement are smoothed. The larger the value is, the more continuous the edge enhancement will be, but the weaker the enhancement effect will be.

Value range: [0x0, 0xff]

Data type: CVI_U8

SoftClampLB

The upper and lower bounds of edge enhancement are smoothed. The larger the value is, the more continuous the edge enhancement will be, but the weaker the enhancement effect will be.

Value range: [0x0, 0xff]

Data type: CVI_U8

dbg_182x_sim_enable

Debug mode for 182x performance simulation

Value range: [0x0, 0x1]

Data type: CVI_BOOL

DrcMode

DRC Mode

0: Do DRC in HSV domain

1: Do DRC in RGB domain

Value range: [0x0, 0x1]

Data type: CVI_BOOL

SatEnable

Saturation debug function enable

Value range: [0x0, 0x1]

Data type: CVI_BOOL

SdrToneCurveSelect

SDR DRC Tone curve curve selection

0: Bypass Mode

4: SdrDarkEnhance(SdrDE) Mode

Value range: [0x0, 0x4]

Data type: CVI_U8

DEAdaptEn

Dark Tone Adaptive Function Enabled

Value range: [0, 1]

Data type: CVI_BOOL

DEAdaptMode

Dark Tone adaptive function mode

0: Do not consider Dark info

1: Consider Dark info

Value range: [0, 1]

Data type: CVI_BOOL

SdrDEAdaptMode

Dark Tone adaptive function mode

0: Do not consider Dark info

1: Consider Dark info

Value range: [0, 1]

Data type: CVI_BOOL

DarkMapStr

The strength of Dark Tone, it is recommended to use the default value, the higher the value, the stronger the effect of dark tone

Value range: [0x1, 0x80]

Data type: CVI_U8

SdrDarkMapStr

The strength of Dark Tone, it is recommended to use the default value, the higher the value, the stronger the effect of dark tone

Value range: [0x1, 0x80]

Data type: CVI_U8

BritMapStr

The strength of Bright Tone, it is recommended to use the default value, the higher the value, the stronger the effect of bright tone

Value range: [0x1, 0x80]

Data type: CVI_U8

SdrBritMapStr

The strength of Bright Tone, it is recommended to use the default value, the higher the value, the stronger the effect of bright tone

Value range: [0x1, 0x80]

Data type: CVI_U8

SdrTargetYGainMode

SdrTargetY Gain Mode switch

0: Directly specify the average target brightness of the screen LmapLeMode

1: Based on the average of the screen, the brightening factor is 1x=32, 2x=64

Value range: [0x0, 0x1]

Data type: CVI_U8

stManual

Manual Mode Parameter Properties

stAuto

Auto Mode Parameter Properties

【Note】

None.

【Related Data Type and Interface】