23. LDCI¶
23.1. Functional Description¶
Local Dynamic Contrast Improvement simplename, usingbyAdjusthistogramFiguretoaddstrongimageforratiodegree, raiseincreasedark areadetails.
23.2. API Reference¶
CVI_ISP_SetLDCIAttr : SetLDCI parameter attributes
CVI_ISP_GetLDCIAttr : GetLDCI parameter attributes
23.2.1. CVI_ISP_SetLDCIAttr¶
[Description]
SetLDCI parameter attributes
[Syntax]
CVI_S32 CVI_ISP_SetLDCIAttr(VI_PIPE ViPipe, const ISP_LDCI_ATTR_S *pstLDCIAttr);
[Parameters]
Parameter Name |
Description |
Input/Output |
|---|---|---|
ViPipe |
VI_PIPE No. |
Input |
pstLDCIAttr |
LDCI parameter attributes |
Input |
[Return Value]
Return Value |
Description |
|---|---|
0 |
Success |
Non-zero |
Failure, whose value is Error Code. |
[Requirements]
Header File: cvi_isp.h, cvi_comm_isp.h
Library File: libisp.so
[Note]
None
[Example]
VI_PIPE ViPipe = 0;
ISP_LDCI_ATTR_S stAttr;
CVI_ISP_GetLDCIAttr(ViPipe, &stAttr);
stAttr.enOpType = OP_TYPE_AUTO;
CVI_ISP_SetLDCIAttr(ViPipe, &stAttr);
[Related Topics]
23.2.2. CVI_ISP_GetLDCIAttr¶
[Description]
GetLDCI parameter attributes
[Syntax]
CVI_S32 CVI_ISP_GetLDCIAttr(VI_PIPE ViPipe, ISP_LDCI_ATTR_S *pstLDCIAttr);
[Parameters]
Parameter Name |
Description |
Input/Output |
|---|---|---|
ViPipe |
VI_PIPE No. |
Input |
pstLDCIAttr |
LDCI parameter attributes |
output |
[Return Value]
Return Value |
Description |
|---|---|
0 |
Success |
Non-zero |
Failure, whose value is Error Code. |
[Requirements]
Header File: cvi_isp.h, cvi_comm_isp.h
Library File: libisp.so
[Note]
None
[Example]
None
[Related Topics]
23.3. Data Types¶
ISP_LDCI_MANUAL_ATTR_S : Manual DefinitionLDCI parameter attributes
ISP_LDCI_AUTO_ATTR_S : Automatic DefinitionLDCI parameter attributes
ISP_LDCI_ATTR_S : Defines LDCI parameter attributes
23.3.1. ISP_LDCI_MANUAL_ATTR_S¶
[Description]
Manual DefinitionLDCI parameter attributes
[Definition]
typedef struct _ISP_LDCI_MANUAL_ATTR_S {
CVI_U8 LdciStrength[9]; /*Rw; Range:[0, 255]*/
CVI_U8 AdaptiveGainMax; /*Rw; Range:[0, 255]*/
CVI_U8 AdaptiveGainMin; /*Rw; Range:[0, 255]*/
CVI_U8 FBCStrength; /*Rw; Range:[0, 31]*/
CVI_U8 LdciThres1; /*Rw; Range:[0, 255]*/
} ISP_LDCI_MANUAL_ATTR_S;
[Members]
Member Name |
Description |
|---|---|
LdciStrength |
according todifferent brightness, performdifferentstrength forratiodegreeboost. Value Range: [0, 255] Data Types: CVI_U8 |
AdaptiveGainMax |
according tocurrentpointbrightnessandlocalaveragebrightness difference, performdifferentstrength forratiodegreeboost. the larger the value, brightnessdifferencelarge point, forratiodegreeboostdegreethe morelarge. Value Range: [0, 255] Data Types: CVI_U8 |
AdaptiveGainMin |
according tocurrentpointbrightnessandlocalaveragebrightness difference, performdifferentstrength forratiodegreeboost. the larger the value, brightnessdifferencesmall point, forratiodegreeboostdegreethe morelarge. Value Range: [0, 255] Data Types: CVI_U8 |
FBCStrength |
backlightfaceprotectionfunction. 0indicatesfunctionnotopenenable; non-0indicatesfunctionopenenable, andandthe smaller the value, facebrightnessprotectiondegreethe morelarge. Value Range: [0, 31] Data Types: CVI_U8 |
LdciThres1 |
forpixelpointbrightnessandblockaveragebrightness differencevalueperformshrink. Value Range: [0, 255] Data Types: CVI_U8 |
[Precautions]
None
[Related Data Types and Interfaces]
23.3.2. ISP_LDCI_AUTO_ATTR_S¶
[Description]
Automatic DefinitionLDCI parameter attributes
[Definition]
typedef struct _ISP_LDCI_AUTO_ATTR_S {
CVI_U8 LdciStrength[9][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 AdaptiveGainMax[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 AdaptiveGainMin[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 FBCStrength[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 31]*/
CVI_U8 LdciThres1[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
} ISP_LDCI_AUTO_ATTR_S;
[Members]
Member Name |
Description |
|---|---|
LdciStrength |
according todifferent brightness, performdifferentstrength forratiodegreeboost. Value Range: [0, 255] Data Types: CVI_U8 |
AdaptiveGainMax |
according tocurrentpointbrightnessandlocalaveragebrightness difference, performdifferentstrength forratiodegreeboost. the larger the value, brightnessdifferencelarge point, forratiodegreeboostdegreethe morelarge. Value Range: [0, 255] Data Types: CVI_U8 |
AdaptiveGainMin |
according tocurrentpointbrightnessandlocalaveragebrightness difference, performdifferentstrength forratiodegreeboost. the larger the value, brightnessdifferencesmall point, forratiodegreeboostdegreethe morelarge. Value Range: [0, 255] Data Types: CVI_U8 |
FBCStrength |
backlightfaceprotectionfunction. 0indicatesfunctionnotopenenable; non-0indicatesfunctionopenenable, andandthe smaller the value, facebrightnessprotectiondegreethe morelarge. Value Range: [0, 31] Data Types: CVI_U8 |
LdciThres1 |
forpixelpointbrightnessandblockaveragebrightness differencevalueperformshrink. Value Range: [0, 255] Data Types: CVI_U8 |
[Precautions]
None
[Related Data Types and Interfaces]
23.3.3. ISP_LDCI_ATTR_S¶
[Description]
Defines LDCI parameter attributes
[Definition]
typedef struct _ISP_LDCI_ATTR_S {
CVI_BOOL Enable; /*Rw; Range:[0, 1]*/
ISP_OP_TYPE_E enOpType;
CVI_U8 UpdateInterval; /*Rw; Range:[0, 255]*/
CVI_U8 BlockNum; /*Rw; Range:[4, 62]*/
ISP_LDCI_MANUAL_ATTR_S stManual;
ISP_LDCI_AUTO_ATTR_S stAuto;
} ISP_LDCI_ATTR_S;
[Members]
Member Name |
Description |
|---|---|
Enable |
module enable switch Value Range: [0, 1] Data Types: CVI_BOOL |
enOpType |
operation type OP_TYPE_AUTO: automatic mode OP_TYPE_MANUAL: manual mode Data Types: ISP_OP_TYPE_E |
UpdateInterval |
affects the parameter update interval,the larger the value, the slower the image changes,the better the performance. Value Range: [0, 255] Data Types: CVI_U8 |
BlockNum |
systemstatisticallumaaveragevalue blockquantity. Value Range: [4, 62] Data Types: CVI_U8 |
stManual |
manual parameters |
stAuto |
automatic parameters |
[Precautions]
None
[Related Data Types and Interfaces]