27. FSHDR¶
27.1. Functional Description¶
widthdynamicrangesynthesisrelatedparameternumber.
27.2. API Reference¶
CVI_ISP_SetFSHDRAttr : Setframesynthesisattribute parameters
CVI_ISP_GetFSHDRAttr : Getframesynthesisattribute parameters
27.2.1. CVI_ISP_SetFSHDRAttr¶
[Description]
Setframesynthesisattribute parameters
[Syntax]
CVI_S32 CVI_ISP_SetFSHDRAttr(VI_PIPE ViPipe, const ISP_FSHDR_ATTR_S *pstFSHDRAttr);
[Parameters]
Parameter Name |
Description |
Input/Output |
|---|---|---|
ViPipe |
VI_PIPE No. |
Input |
pstFSHDRAttr |
framesynthesisattribute parameters |
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_FSHDR_ATTR_S stAttr;
CVI_ISP_GetFSHDRAttr(ViPipe, &stAttr);
stAttr.enOpType = OP_TYPE_AUTO;
CVI_ISP_SetFSHDRAttr(ViPipe, &stAttr);
[Related Topics]
27.2.2. CVI_ISP_GetFSHDRAttr¶
[Description]
Getframesynthesisattribute parameters
[Syntax]
CVI_S32 CVI_ISP_GetFSHDRAttr(VI_PIPE ViPipe, ISP_FSHDR_ATTR_S *pstFSHDRAttr);
[Parameters]
Parameter Name |
Description |
Input/Output |
|---|---|---|
ViPipe |
VI_PIPE No. |
Input |
pstFSHDRAttr |
framesynthesisattribute parameters |
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]
27.3. Data Types¶
ISP_FSHDR_ATTR_S : Define framesynthesisattribute parameters
27.3.1. ISP_FSHDR_ATTR_S¶
[Description]
Define framesynthesisattribute parameters
[Definition]
typedef struct _ISP_FSHDR_ATTR_S {
ISP_OP_TYPE_E enOpType;
CVI_U8 UpdateInterval; /*Rw; Range:[0, 255]*/
CVI_BOOL FusionEnable; /*Rw; Range:[0, 1]*/
CVI_U8 FusionMode; /*Rw; Range:[0, 2]*/
CVI_U8 FusionDbgMode; /*Rw; Range:[0, 4]*/
CVI_U8 FusionYsel; /*Rw; Range:[0, 2]*/
CVI_U8 FusionBldNsel; /*Rw; Range:[0, 1]*/
CVI_U8 FusionBldDsel; /*Rw; Range:[0, 1]*/
CVI_U16 FusionDS1Th; /*Rw; Range:[0, 4095]*/
CVI_U8 FusionDS1Step; /*Rw; Range:[0, 255]*/
CVI_U8 FusionDS1Lb; /*Rw; Range:[0, 255]*/
CVI_U16 FusionDS2Th; /*Rw; Range:[0, 4095]*/
CVI_U8 FusionDS2Step; /*Rw; Range:[0, 255]*/
CVI_U8 FusionDS2Lb; /*Rw; Range:[0, 255]*/
CVI_U16 LENormBldRange; /*Rw; Range:[0, 4095]*/
CVI_U16 LENormBldP0; /*Rw; Range:[0, 4095]*/
CVI_U16 SENormBldRange; /*Rw; Range:[0, 4095]*/
CVI_U16 SENormBldP0; /*Rw; Range:[0, 4095]*/
CVI_U16 LEDynmBldRange; /*Rw; Range:[0, 4095]*/
CVI_U16 LEDynmBldP0; /*Rw; Range:[0, 4095]*/
CVI_U16 SEDynmBldRange; /*Rw; Range:[0, 4095]*/
CVI_U16 SEDynmBldP0; /*Rw; Range:[0, 4095]*/
CVI_U16 NDBldLumTh; /*Rw; Range:[0, 256]*/
CVI_U8 NDBldDarkWt; /*Rw; Range:[0, 16]*/
CVI_U8 NDBldDiffLut[FS_DIFF_DW_LENGTH]; /*Rw; Range:[0, 16]*/
CVI_BOOL MCurveEnable; /*Rw; Range:[0, 1]*/
ISP_MCURVE_MODE_E MCurveMode;
CVI_U16 MCurveAutoSEMin; /*Rw; Range:[0, 4095]*/
CVI_U16 MCurveManualSEMax; /*Rw; Range:[0, 4095]*/
CVI_U8 MCurveSmooth; /*Rw; Range:[0, 255]*/
CVI_U16 MCurveDelta; /*Rw; Range:[0, 8560]*/
CVI_U16 MCurveX1; /*Rw; Range:[0, 65535]*/
CVI_U8 MCurveBldRatio; /*Rw; Range:[0, 10]*/
CVI_U16 MCurveXMaxRatio; /*Rw; Range:[0, 256]*/
CVI_U8 MCurveYsel; /*Rw; Range:[0, 2]*/
CVI_U8 MCurveYvWet; /*Rw; Range:[0, 8]*/
CVI_U8 MCurveFlumWet[FS_FLUMW_LUT_LENGTH]; /*Rw; Range:[0, 255]*/
} ISP_FSHDR_ATTR_S;
[Members]
Member Name |
Description |
|---|---|
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 |
FusionEnable |
HDR FusionEnable. HDR modeSet1; linear modeSet0. Value Range: [0, 1] Data Types: CVI_BOOL |
FusionMode |
selectoutputresult. 0: output the HDR Fusion result; 1: output the SE result; 2: output the LE result; Value Range: [0, 2] Data Types: CVI_U8 |
FusionDbgMode |
SetDebugmode Value Range: [0, 4] Data Types: CVI_U8 |
FusionYsel |
useBayercalculateLuma method, 0: RGB averagevalue, 1: G averagevalue, 2: rawBayervalue Value Range: [0, 2] Data Types: CVI_U8 |
FusionBldNsel |
calculatestaticfusionweight standard, 0: usingLE brightnessisstandardcalculatestaticfusionweight, 1: usingSE brightnessisstandardcalculatestaticfusionweight Value Range: [0, 1] Data Types: CVI_U8 |
FusionBldDsel |
calculatedynamicfusionweight standard, 0: usingLE brightnessisstandardcalculatedynamicfusionweight, 1: usingSE brightnessisstandardcalculatedynamicfusionweight Value Range: [0, 1] Data Types: CVI_U8 |
FusionDS1Th |
ControlSE Yandrawopenstartfusion range, the smaller the value, openstartfusion brightnessthe morelow, the moreless dark regionisdecreaselowsaturation Value Range: [0, 4095] Data Types: CVI_U16 |
FusionDS1Step |
ControlSE Yandrawfusion throughtransitionregioninterval, the smaller the value, throughtransitionthe moreflatbuffer Value Range: [0, 255] Data Types: CVI_U8 |
FusionDS1Lb |
ControlSE Yandraw fusionweight, the smaller the value, dark regionusemoremultipleY, dark regionsaturationthe morelow Value Range: [0, 255] Data Types: CVI_U8 |
FusionDS2Th |
ControlLE Yandrawopenstartfusion range, the smaller the value, openstartfusion brightnessthe morelow, the moreless dark regionisdecreaselowsaturation Value Range: [0, 4095] Data Types: CVI_U16 |
FusionDS2Step |
ControlLE Yandrawfusion throughtransitionregioninterval, the smaller the value, throughtransitionthe moreflatbuffer Value Range: [0, 255] Data Types: CVI_U8 |
FusionDS2Lb |
ControlLE Yandraw fusionweight, the smaller the value, dark regionusemoremultipleY, dark regionsaturationthe morelow Value Range: [0, 255] Data Types: CVI_U8 |
LENormBldRange |
LE Normal blending curve range, stationary regionlongshortexposurefusionwhen, usinglong exposureisbaseline throughtransitionregionrange. heightinLENormBldP0+ LENormBldRange imagenumberdatawillonlyselectshortexposurenumberdatasynthesisHDRimage. Value Range: [0, 4095] Data Types: CVI_U16 |
LENormBldP0 |
LE Normal blending curve P0, stationary regionlongshortexposurefusionwhen, usinglong exposureisbaseline criticalvalue, lowinthecriticalvalue imagenumberdatawillonlyselectlong exposurelightnumberdatasynthesisHDRimage. Value Range: [0, 4095] Data Types: CVI_U16 |
SENormBldRange |
SE Normal blending curve range, stationary regionlongshortexposurefusionwhen, usingshortexposureisbaseline throughtransitionregionrange. heightinSENormBldP0+SENormBldRange imagenumberdatawillonlyselectshortexposurenumberdatasynthesisHDRimage. Value Range: [0, 4095] Data Types: CVI_U16 |
SENormBldP0 |
SE Normal blending curve P0, stationary regionlongshortexposurefusionwhen, usingshortexposureisbaseline criticalvalue, lowinthecriticalvalue imagenumberdatawillonlyselectlong exposurelightnumberdatasynthesisHDRimage. Value Range: [0, 4095] Data Types: CVI_U16 |
LEDynmBldRange |
LE Dynamic blending curve range, motion regionlongshortexposurefusionwhen, usinglong exposureisbaseline throughtransitionregionrange. heightinLENormBldP0+ LENormBldRange imagenumberdatawillonlyselectshortexposurenumberdatasynthesisHDRimage. Value Range: [0, 4095] Data Types: CVI_U16 |
LEDynmBldP0 |
LE Dynamic blending curve P0, motion regionlongshortexposurefusionwhen, usinglong exposureisbaseline criticalvalue, lowinthecriticalvalue imagenumberdatawillonlyselectlong exposurelightnumberdatasynthesisHDRimage. Value Range: [0, 4095] Data Types: CVI_U16 |
SEDynmBldRange |
SE Dynamic blending curve range, motion regionlongshortexposurefusionwhen, usingshortexposureisbaseline throughtransitionregionrange. heightinSENormBldP0+ SENormBldRange imagenumberdatawillonlyselectshortexposurenumberdatasynthesisHDRimage. Value Range: [0, 4095] Data Types: CVI_U16 |
SEDynmBldP0 |
SE Dynamic blending curve P0, motion regionlongshortexposurefusionwhen, usingshortexposureisbaseline criticalvalue, lowinthecriticalvalue imagenumberdatawillonlyselectlong exposurelightnumberdatasynthesisHDRimage. Value Range: [0, 4095] Data Types: CVI_U16 |
NDBldLumTh |
movestationaryregionweightfusion brightnessthreshold, the smaller the value, forthe moredark region motionthe moresensitive Value Range: [0, 256] Data Types: CVI_U16 |
NDBldDarkWt |
movestationaryregionweightfusionminimum value, the larger the value, mostdark regionuse dynamicweightthe morelarge Value Range: [0, 16] Data Types: CVI_U8 |
NDBldDiffLut |
movestationaryregionweightfusion look uptable, the larger the value, formotion regionthe moresensitive, dynamicweightthe morelarge Value Range: [0, 16] Data Types: CVI_U8 |
MCurveEnable |
Map Curve openclose. HDR modeSet1; linear modeSet0. Value Range: [0, 1] Data Types: CVI_BOOL |
MCurveMode |
Auto Map Curve Controlopenclose. 0: Automode, automaticgeneratebecomeCurve, 1: Manualmode, SetMCurveManualSEMaxAdjustCurvemaximumvalue. Data Types: ISP_MCURVE_MODE_E |
MCurveAutoSEMin |
limitautomatic modeunderparameterandcalculate short framemaximumvalue underlimit, canimproveshort framethroughdarkwhenforimagebrightnessraisethroughlarge problem Value Range: [0, 4095] Data Types: CVI_U16 |
MCurveManualSEMax |
manualSetCurvehorizontalcoordinatesmaximumvalue, inManualmodeunderuse. the smaller the value, globalraisebrightdegreethe morelarge. Value Range: [0, 4095] Data Types: CVI_U16 |
MCurveSmooth |
Adjust mcurve change fastslow, the larger the valuethe moreslow Value Range: [0, 255] Data Types: CVI_U8 |
MCurveDelta |
determinesMap Curvedark area diagonalrate. the smaller the value, dark arearaisebrightthe moreobvious. Value Range: [0, 8560] Data Types: CVI_U16 |
MCurveX1 |
forbrightness greater thanX1 bright regionperformforratiodegreeprotection. the smaller the value, forratiodegreeprotectionregionthe morelarge. Value Range: [0, 65535] Data Types: CVI_U16 |
MCurveBldRatio |
bright regionforratiodegreeprotectiondegree. the smaller the value, protectiondegreethe morelarge. 0: linear, 10: curve Value Range: [0, 10] Data Types: CVI_U8 |
MCurveXMaxRatio |
Adjustdark regionraisebrightdegree. inAutomodeunderuse. 128indicatesMap Curvecompleteallautomaticgeneratebecome. smallin128when, the smaller the value, dark regionraisebrightdegreethe morelarge. largein128when, the larger the value, imageoverallpressdarkdegreethe morelarge. Value Range: [0, 256] Data Types: CVI_U16 |
MCurveYsel |
useBayercalculateLuma method, 0: RGB averagevalue( 4G+2B+2R), 1: G averagevalue(4G), 2: rawBayervalue Value Range: [0, 2] Data Types: CVI_U8 |
MCurveYvWet |
YandLocalMaxfusion weight, the larger the valuethe morebiastoLocalMax, 0: alltakey, 8: alltakev Value Range: [0, 8] Data Types: CVI_U8 |
MCurveFlumWet |
YandRawfusion weighttable, the larger the valuethe morebiastoRaw, 0: alluseymean Value Range: [0, 255] Data Types: CVI_U8 |
[Precautions]
None
[Related Data Types and Interfaces]