ISP Software Development Guide¶
REVISION HISTORY¶
| Revision No. | Description |
Date |
|---|---|---|
| 1.0 (API Ver. 1.0) | 12/20/2023 | |
| 1.1 (API Ver. 1.0) | 01/04/2024 | |
| 1.2 (API Ver. 1.0) | 01/04/2024 | |
| 1.3 (API Ver. 1.0) | 01/17/2024 | |
| 1.4 (API Ver. 1.0) | 02/05/2024 | |
| 1.5 (API Ver. 1.0) | 02/19/2024 | |
| 1.6 (API Ver. 1.0) | 03/14/2024 | |
| 1.7 (API Ver. 1.0) | 05/14/2024 | |
| 1.8 (API Ver. 1.0) | 05/20/2024 | |
| 1.9 (API Ver. 1.0) | 05/31/2024 | |
| 1.10 (API Ver. 1.0) | 05/31/2024 | |
| 1.11 (API Ver. 1.0) | 06/20/2024 | |
| 1.12 (API Ver. 1.0) | 06/26/2024 | |
| 1.13 (API Ver. 1.0) | 08/07/2024 | |
| 1.13 (API Ver. 1.0) | 08/16/2024 | |
| 1.14 (API Ver. 1.0) | 09/27/2024 | |
| 1.15 (API Ver. 1.0) | 11/11/2024 | |
| 1.16 (API Ver. 1.0) | 08/13/2025 | |
| 1.17 (API Ver. 1.0) | 09/05/2025 | |
| 1.18 (API Ver. 1.0) | 12/29/2025 |
OVERVIEW¶
Module Description¶
The ISP module aims to analyse and process data inputted from video source, set up associated video parameters, and perform camera tuning to realize various functions such as black level correction, lens correction, 3A and 2D/3D noise reduction, CCM, and Gamma.
Keyword Description¶
-
ISP
Acronym for Image Signal Processing. The ISP unit is responsible for image noise reduction, color rendering, and brightness adjustment, etc.
-
NR
Acronym for Noise Reduction. NR includes 2DNR and NR3D.
2DNR: 2DNR averages an image pixel to the surrounding image pixels so as to reduce noise. This, however, comes with the disadvantage of blurring the picture.
NR3D: NR3D provides time-domain processing. In contrast to 2DNR, which focuses on single frame only, NR3D takes into consideration the time-domain relationship between frames and averages image pixels on a time-domain basis.
-
Lens shading
The lens shading functions, including LSC and ALSC, perform shading compensation against dark corners.
-
SDC
Acronym for Static Defect Correction. The SDC performs compensation for static defective pixels.
-
FPN
Fixed Pattern Noise. The FPN aims to eliminate fixed vertical pattern in the picture.
-
STA
Short for statistics.
-
HDR
Acronym for High-Dynamic Range. The HDR function provides high-dynamic-range image via double-frame synthesis.
-
WDR
Acronym for Wide Dynamic Range. The WDR function creates high dynamic range impact by single-frame processing.
ISP Block Diagram¶
YUV Path IQ Description¶
By selecting YUV as the input data format, only the following APIs will be available for application, including:
Note:
-
As this application does not contain any information on motion, API function that makes adjustment based on motion will become ineffective, and the most active areas will be taken as the motion information.
For example:
Parameter Description u8GainByMot[SHARPNESS_EX_BY_MOT_NUM] SHARPNESS_EX_BY_MOT_NUM = 16
Adjust the final gain of edge strength according to motion, which is represented by the horizontal axis. Parameter range: 0 ~ 255. The closer to the right end, the closer to stillness is suggested. The vertical axis represents the gain of edge (128 = 1x). The greater the value, the stronger the edge.Take this parameter in MI_ISP_IQ_Sharpness API, for instance, the function will only takes effect on the left end of the horizontal axis, where index = 0 (u8GainByMot[0]).
-
Please take note that since AE, AWB, and AF will all become ineffective, there will be no IQ query based on ISO. We suggest setting IQ APIs to Manual Mode.
MI ISP API GUIDE¶
MI_ISP_IQ_GetVersionInfo¶
-
Objective
This function is used to get IQ version number information.
-
Syntax
MI_S32 MI_ISP_IQ_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_VersionInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the IQ version number. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetVersionInfo¶
-
Objective
This function is used to set IQ version number information.
-
Syntax
MI_S32 MI_ISP_IQ_SetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_VersionInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the IQ version number. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetParaInitStatus¶
-
Objective
This function is used to get the value of parameters when ISP is initialized and enters the ready status. Only when the status is shown as ready (1) will it be possible to load ISP API bin file or call ISP API functions.
-
Syntax
MI_S32 MI_ISP_IQ_GetParaInitStatus(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamInitInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of parameters when ISP is initialized. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
MI_SYS_INIT(); While(1){ MI_ISP_IQ_GetParaInitStatus (0, &FLAG); If(FLAG ==1) { break; } }
MI_ISP_IQ_SetColorToGray¶
-
Objective
This function is used to set the parameter value of color to grayscale image conversion.
-
Syntax
MI_S32 MI_ISP_IQ_SetColorToGray(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorToGrayType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color to grayscale image conversion. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetColorToGray¶
-
Objective
This function is used to get the parameter value of color to grayscale image conversion.
-
Syntax
MI_S32 MI_ISP_IQ_GetColorToGray(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorToGrayType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color to grayscale image conversion. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetContrast¶
-
Objective
This function is used to set the parameter value of contrast.
-
Syntax
MI_S32 MI_ISP_IQ_SetContrast(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ContrastType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of contrast. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetContrast¶
-
Objective
This function is used to get the parameter value of contrast.
-
Syntax
MI_S32 MI_ISP_IQ_GetContrast(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ContrastType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of contrast. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetBrightness¶
-
Objective
This function is used to set the parameter value of brightness.
-
Syntax
MI_S32 MI_ISP_IQ_SetBrightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_BrightnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of brightness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetBrightness¶
-
Objective
This function is used to get the parameter value of brightness.
-
Syntax
MI_S32 MI_ISP_IQ_GetBrightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_BrightnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of brightness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetLightness¶
-
Objective
This function is used to set the parameter value of lightness.
-
Syntax
MI_S32 MI_ISP_IQ_SetLightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LightnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of lightness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetLightness¶
-
Objective
This function is used to get the parameter value of lightness.
-
Syntax
MI_S32 MI_ISP_IQ_GetLightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LightnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of lightness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetRgbGamma¶
-
Objective
This function is used to set the parameter value of RGB Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_SetRgbGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetRgbGamma¶
-
Objective
This function is used to get the parameter value of RGB Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_GetRgbGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetYuvGamma¶
-
Objective
This function is used to set the parameter value of YUV Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_SetYuvGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of YUV Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetYuvGamma¶
-
Objective
This function is used to get the parameter value of YUV Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_GetYuvGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of YUV Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetSaturation¶
-
Objective
This function is used to set the parameter value of saturation.
-
Syntax
MI_S32 MI_ISP_IQ_SetSaturation(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SaturationType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of saturation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetSaturation¶
-
Objective
This function is used to get the parameter value of saturation.
-
Syntax
MI_S32 MI_ISP_IQ_GetSaturation(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SaturationType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of saturation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDefog¶
-
Objective
This function is used to set the value of Defog parameter.
-
Syntax
MI_S32 MI_ISP_IQ_SetDefog(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DefogType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of Defog parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDefog¶
-
Objective
This function is used to get the value of Defog parameter.
-
Syntax
MI_S32 MI_ISP_IQ_GetDefog(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DefogType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of Defog parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetRgbMatrix¶
-
Objective
This function is used to set the parameter value of RGB color correction matrix.
-
Syntax
MI_S32 MI_ISP_IQ_SetRgbMatrix(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbMatrixType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB color correction matrix. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetRgbMatrix¶
-
Objective
This function is used to get the parameter value of RGB color correction matrix.
-
Syntax
MI_S32 MI_ISP_IQ_GetRgbMatrix(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbMatrixType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB color correction matrix. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetFalseColor¶
-
Objective
This function is used to set the parameter value of false color suppression.
-
Syntax
MI_S32 MI_ISP_IQ_SetFalseColor(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_FalseColorType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of false color suppression. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetFalseColor¶
-
Objective
This function is used to get the parameter value of false color suppression.
-
Syntax
MI_S32 MI_ISP_IQ_GetFalseColor(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_FalseColorType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of false color suppression. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNr3d¶
-
Objective
This function is used to set the parameter value of 3D noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_SetNr3d(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of 3D noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNr3d¶
-
Objective
This function is used to get the parameter value of 3D noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_GetNr3d(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of 3D noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNrDeSpike¶
-
Objective
This function is used to set the parameter value of DeSpike noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_SetNrDeSpike(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrDespikeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of DeSpike noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNrDeSpike¶
-
Objective
This function is used to get the parameter value of DeSpike noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_GetNrDeSpike(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrDespikeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of DeSpike noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetSharpness¶
-
Objective
This function is used to set the parameter value of sharpness.
-
Syntax
MI_S32 MI_ISP_IQ_SetSharpness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of sharpness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetSharpness¶
-
Objective
This function is used to get the parameter value of sharpness.
-
Syntax
MI_S32 MI_ISP_IQ_GetSharpness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of sharpness. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetShpEx¶
-
Objective
This function is used to set the value of SHP_EX (Sharpness_EX) parameter.
-
Syntax
MI_S32 MI_ISP_IQ_SetShpEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of SHP_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetShpEx¶
-
Objective
This function is used to get the value of SHP_EX (Sharpness_EX) parameter.
-
Syntax
MI_S32 MI_ISP_IQ_GetShpEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of SHP_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetCrossTalk¶
-
Objective
This function is used to set the parameter value of crosstalk.
-
Syntax
MI_S32 MI_ISP_IQ_SetCrossTalk(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CrosstalkType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of crosstalk. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetCrossTalk¶
-
Objective
This function is used to get the parameter value of crosstalk.
-
Syntax
MI_S32 MI_ISP_IQ_GetCrossTalk(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CrosstalkType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of crosstalk. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. - Requirement - Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDobc¶
-
Objective
This function is used to set the parameter value of DOBC.
-
Syntax
MI_S32 MI_ISP_IQ_SetDobc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DobcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDobc¶
-
Objective
This function is used to get the parameter value of DOBC.
-
Syntax
MI_S32 MI_ISP_IQ_GetDobc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DobcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetObcP1¶
-
Objective
This function is used to set the parameter value of optical black compensation for pipeline 1.
-
Syntax
MI_S32 MI_ISP_IQ_SetObcP1(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation for pipeline 1. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetObcP1¶
-
Objective
This function is used to get the parameter value of optical black compensation for pipeline 1.
-
Syntax
MI_S32 MI_ISP_IQ_GetObcP1(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation for pipeline 1. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetObcP2¶
-
Objective
This function is used to set the parameter value of optical black compensation for pipeline 2.
-
Syntax
MI_S32 MI_ISP_IQ_SetObcP2(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation for pipeline 2. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetObcP2¶
-
Objective
This function is used to get the parameter value of optical black compensation for pipeline 2.
-
Syntax
MI_S32 MI_ISP_IQ_GetObcP2(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of optical black compensation for pipeline 2. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetWdr¶
-
Objective
This function is used to set the parameter value of wide dynamic range (WDR).
-
Syntax
MI_S32 MI_ISP_IQ_SetWdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDR. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetWdr¶
-
Objective
This function is used to get the parameter value of WDR.
-
Syntax
MI_S32 MI_ISP_IQ_GetWdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDR. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetWdrLtm¶
-
Objective
This function is used to set the parameter value of Local Tone Mapping (LTM) in wide dynamic range.
-
Syntax
MI_S32 MI_ISP_IQ_SetWdrLtm(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrLtmType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Local Tone Mapping (LTM) in wide dynamic range. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetWdrLtm¶
-
Objective
This function is used to get the parameter value of Local Tone Mapping (LTM) in wide dynamic range.
-
Syntax
MI_S32 MI_ISP_IQ_GetWdrLtm(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrLtmType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Local Tone Mapping (LTM) in wide dynamic range. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetWdrNr¶
-
Objective
This function is used to set the parameter value of wide dynamic range (WDR) noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_SetWdrNr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrNrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDR noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetWdrNr¶
-
Objective
This function is used to get the parameter value of WDR noise reduction.
-
Syntax
MI_S32 MI_ISP_IQ_GetWdrNr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrNrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDR noise reduction. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetWdrCurveFull¶
-
Objective
This function is used to set the parameter value of WDRCurveFull.
-
Syntax
MI_S32 MI_ISP_IQ_SetWdrCurveFull(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrCurveFullType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDRCurveFull. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetWdrCurveFull¶
-
Objective
This function is used to get the parameter value of WDRCurveFull.
-
Syntax
MI_S32 MI_ISP_IQ_GetWdrCurveFull(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrCurveFullType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDRCurveFull. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetWDRCurveAlignHDRtoLDR¶
-
Objective
This function is used to set the value of WDRCurveAlignHDRtoLDR parameter.
-
Syntax
MI_S32 MI_ISP_IQ_SetWDRCurveAlignHDRtoLDR(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WDRCurveAlignHDRtoLDR_TYPE_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDRCurveAlignHDRtoLDR. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetWDRCurveAlignHDRtoLDR¶
-
Objective
This function is used to get the value of WDRCurveAlignHDRtoLDR parameter.
-
Syntax
MI_S32 MI_ISP_IQ_GetWDRCurveAlignHDRtoLDR(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WDRCurveAlignHDRtoLDR_TYPE_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDRCurveAlignHDRtoLDR. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetWDRCurveAlignLDRtoHDR¶
-
Objective
This function is used to set the value of WDRCurveAlignLDRtoHDR parameter.
-
Syntax
MI_S32 MI_ISP_IQ_SetWDRCurveAlignLDRtoHDR(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WDRCurveAlignLDRtoHDR_TYPE_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDRCurveAlignLDRtoHDR. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetWDRCurveAlignLDRtoHDR¶
-
Objective
This function is used to get the value of WDRCurveAlignLDRtoHDR parameter.
-
Syntax
MI_S32 MI_ISP_IQ_GetWDRCurveAlignLDRtoHDR(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WDRCurveAlignLDRtoHDR_TYPE_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of WDRCurveAlignLDRtoHDR. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDynamicDp¶
-
Objective
This function is used to set the parameter value of dynamic dead-pixel compensation.
-
Syntax
MI_S32 MI_ISP_IQ_SetDynamicDp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of dynamic dead-pixel compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDynamicDp¶
-
Objective
This function is used to get the parameter value of dynamic dead-pixel compensation.
-
Syntax
MI_S32 MI_ISP_IQ_GetDynamicDp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of dynamic dead-pixel compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDynamicDpCluster¶
-
Objective
This function is used to set the parameter value of dynamic dead-pixel cluster compensation.
-
Syntax
MI_S32 MI_ISP_IQ_SetDynamicDpCluster(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpClusterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of dynamic dead-pixel cluster compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDynamicDpCluster¶
-
Objective
This function is used to get the parameter value of dynamic dead-pixel cluster compensation.
-
Syntax
MI_S32 MI_ISP_IQ_GetDynamicDpCluster(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpClusterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of dynamic dead-pixel cluster compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetHsv¶
-
Objective
This function is used to set the parameter value of HSV (Hue Saturation Value). You can use this function to perform local hue rotation and saturation adjustment.
-
Syntax
MI_S32 MI_ISP_IQ_SetHsv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HsvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of HSV. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetHsv¶
-
Objective
This function is used to get the parameter value of HSV.
-
Syntax
MI_S32 MI_ISP_IQ_GetHsv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HsvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of HSV. - Return Value Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetRgbir¶
-
Objective
This function is used to set RGB-InfraRed (RGB-IR) parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_SetRgbir(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbirType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to RGB-IR parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetRgbir¶
-
Objective
This function is used to get RGB-InfraRed (RGB-IR) parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_GetRgbir(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbirType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to RGB-IR parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetPfc¶
-
Objective
This function is used to set the parameter value of PFC (Purple Fringing Compensation).
-
Syntax
MI_S32 MI_ISP_IQ_SetPfc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of PFC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetPfc¶
-
Objective
This function is used to get the parameter value of PFC (Purple Fringing Compensation).
-
Syntax
MI_S32 MI_ISP_IQ_GetPfc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of PFC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDemosaic¶
-
Objective
This function is used to set demosaic parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_SetDemosaic(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DemosaicType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to demosaic parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDemosaic¶
-
Objective
This function is used to get demosaic parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_GetDemosaic(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DemosaicType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to demosaic parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDecompress¶
-
Objective
This function is used to set Decompress parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_SetDecompress(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DecompressType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to Decompress parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDecompress¶
-
Objective
This function is used to get Decompress parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_GetDecompress(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DecompressType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to Decompress parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetR2Y¶
-
Objective
This function is used to set the parameter value of RGB to YUV conversion.
-
Syntax
MI_S32 MI_ISP_IQ_SetR2Y(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_R2YType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB to YUV conversion. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetR2Y¶
-
Objective
This function is used to get the parameter value of RGB to YUV conversion.
-
Syntax
MI_S32 MI_ISP_IQ_GetR2Y(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_R2YType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of RGB to YUV conversion. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetColorTrans¶
-
Objective
This function is used to set the parameter value of color transformation.
-
Syntax
MI_S32 MI_ISP_IQ_SetColorTrans(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorTransType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color transformation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetColorTrans¶
-
Objective
This function is used to get the parameter value of color transformation.
-
Syntax
MI_S32 MI_ISP_IQ_GetColorTrans(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorTransType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color transformation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetColorTrans_EX¶
-
Objective
This function is used to set the parameter value of color transformation.
-
Syntax
MI_S32 MI_ISP_IQ_SetColorTrans_EX(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CTExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color transformation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
Compared with ColorTrans, which provides a flexible setting of RGB to YUV conversion matrix, ColorTrans_EX only provides 0 ~ 5 fixed conversion types to choose from. If ColorTrans_EX is enabled, ColorTrans will become ineffective.
-
Example
N/A.
MI_ISP_IQ_GetColorTrans_EX¶
-
Objective
This function is used to get the parameter value of color transformation.
-
Syntax
MI_S32 MI_ISP_IQ_GetColorTrans(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CTExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of color transformation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
Compared with ColorTrans, which provides a flexible setting of RGB to YUV conversion matrix, ColorTrans_EX only provides 0 ~ 5 fixed conversion types to choose from. If ColorTrans_EX is enabled, ColorTrans will become ineffective.
-
Example
N/A.
MI_ISP_IQ_SetHdr¶
-
Objective
This function is used to set High Dynamic Range (HDR) parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_SetHdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HdrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to HDR parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetHdr¶
-
Objective
This function is used to get HDR parameter value.
-
Syntax
MI_S32 MI_ISP_IQ_GetHdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HdrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to HDR parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetHdrEx¶
-
Objective
This function is used to set the value of HDR_EX parameter, including those parameters that are less often adjusted or those that are not adjusted by ISO.
-
Syntax
MI_S32 MI_ISP_IQ_SetHdrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HdrExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of HDR_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetHdrEx¶
-
Objective
This function is used to get the value of HDR_EX parameter, including those parameters that are less often adjusted or those that are not adjusted by ISO.
-
Syntax
MI_S32 MI_ISP_IQ_GetHdrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HdrExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of HDR_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetLsc¶
-
Objective
This function is used to set the parameter value of LSC (Lens Shading Calibration).
-
Syntax
MI_S32 MI_ISP_IQ_SetLsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of LSC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetLsc¶
-
Objective
This function is used to get the parameter value of LSC.
-
Syntax
MI_S32 MI_ISP_IQ_GetLsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of LSC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetLscCtrl¶
-
Objective
This function is used to set the parameter value of LSC CTRL.
-
Syntax
MI_S32 MI_ISP_IQ_SetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of LSC CTRL. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetLscCtrl¶
-
Objective
This function is used to get the parameter value of LSC CTRL.
-
Syntax
MI_S32 MI_ISP_IQ_GetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of LSC CTRL. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAlsc¶
-
Objective
This function is used to set the parameter value of ALSC (Automatic Lens Shading Calibration).
-
Syntax
MI_S32 MI_ISP_IQ_SetAlsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAlsc¶
-
Objective
This function is used to get the parameter value of ALSC.
-
Syntax
MI_S32 MI_ISP_IQ_GetAlsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAlscCtrl¶
-
Objective
This function is used to set the parameter value of ALSC CTRL.
-
Syntax
MI_S32 MI_ISP_IQ_SetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC CTRL. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAlscCtrl¶
-
Objective
This function is used to get the parameter value of ALSC CTRL.
-
Syntax
MI_S32 MI_ISP_IQ_GetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC CTRL. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAlscAdj¶
-
Objective
This function is used to set the parameter value of ALSC ADJ.
-
Syntax
MI_S32 MI_ISP_IQ_SetAlscAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC ADJ. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAlscAdj¶
-
Objective
This function is used to get the parameter value of ALSC ADJ.
-
Syntax
MI_S32 MI_ISP_IQ_GetAlscAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ALSC ADJ. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDarkShading¶
-
Objective
This function is used to set the parameter value of Dark Shading.
-
Syntax
MI_S32 MI_ISP_IQ_SetDarkShading(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DarkShadingType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Dark Shading. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDarkShading¶
-
Objective
This function is used to get the parameter value of Dark Shading.
-
Syntax
MI_S32 MI_ISP_IQ_GetDarkShading(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DarkShadingType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Dark Shading. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNrLumaAdv¶
-
Objective
Call this function to set the parameter value of NRLuma_Adv.
-
Syntax
MI_S32 MI_ISP_IQ_SetNrLumaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of NRLuma_Adv. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNrLumaAdv¶
-
Objective
This function is used to get the parameter value of NRLuma_Adv.
-
Syntax
MI_S32 MI_ISP_IQ_GetNrLumaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of NRLuma_Adv. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNrChromaAdv¶
-
Objective
This function is used to set the parameter value of NRChroma_Adv.
-
Syntax
MI_S32 MI_ISP_IQ_SetNrChromaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of NRChroma_Adv. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNrChromaAdv¶
-
Objective
This function is used to get the parameter value of NRChroma_Adv.
-
Syntax
MI_S32 MI_ISP_IQ_GetNrChromaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of NRChroma_Adv. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetNrChromaPre¶
-
Objective
This function is used to set the value of NRChroma_Pre parameter.
-
Syntax
MI_S32 MI_ISP_IQ_SetNrChromaPre(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaPreType_t
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of NRChroma_Pre parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetNrChromaPre¶
-
Objective
This function is used to get the value of NRChroma_Pre parameter.
-
Syntax
MI_S32 MI_ISP_IQ_GetNrChromaPre(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaPreType_t
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of NRChroma_Pre parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDummy¶
-
Objective
This function is used to set the value of DUMMY parameter. By opening an empty channel and connecting it when necessary, version incompatibility issue can be alleviated.
-
Syntax
MI_S32 MI_ISP_IQ_SetDummy(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of DUMMY parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDummy¶
-
Objective
This function is used to get the value of DUMMY parameter. By opening an empty channel and connecting it when necessary, version incompatibility issue can be alleviated.
-
Syntax
MI_S32 MI_ISP_IQ_GetDummy(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of DUMMY parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDummyEx¶
-
Objective
This function is used to set the value of DUMMY_EX parameter. By opening an empty channel and connecting it when necessary, version incompatibility issue can be alleviated.
-
Syntax
MI_S32 MI_ISP_IQ_SetDummyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of DUMMY_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDummyEx¶
-
Objective
This function is used to get the value of DUMMY_EX parameter. By opening an empty channel and connecting it when necessary, version incompatibility issue can be alleviated.
-
Syntax
MI_S32 MI_ISP_IQ_GetDummyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of DUMMY_EX parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetROI¶
-
Objective
This function is used to set the value of Sharpness/DeNoise/YUVGAMMA parameters for specific areas (ROI, region of interest) in the picture. Up to 8 ROIs are supported.
-
Syntax
MI_S32 MI_ISP_IQ_SetROI(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ROIType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of ROI parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetROI¶
-
Objective
This function is used to get the position of ROI, as well as the value of its Sharpness/DeNoise/YUVGAMMA parameters.
-
Syntax
MI_S32 MI_ISP_IQ_GetROI(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ROIType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of ROI parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetIqMode¶
-
Objective
This function is used to set the parameter value of IQ mode. Only Day Mode and Night Mode under RGB-IR night view scenario are supported for the time being.
-
Syntax
MI_S32 MI_ISP_IQ_SetIqMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamMode_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of IQ mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetIqMode¶
-
Objective
This function is used to get the parameter value of IQ mode. Only Day Mode and Night Mode under RGB-IR night view scenario are supported for the time being.
-
Syntax
MI_S32 MI_ISP_IQ_GetIqMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamMode_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of IQ mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetIqInd¶
-
Objective
This function is used to get the parameter value of ISO index.
-
Syntax
MI_S32 MI_ISP_IQ_GetIqInd(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Index_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ISO index. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetApiBypassMode¶
-
Objective
This function is used to set the parameter value of the ISP Bypass Mode corresponding to IP module.
-
Syntax
MI_S32 MI_ISP_IQ_SetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ISP bypass mode corresponding to IP module. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetApiBypassMode¶
-
Objective
This function is used to get the parameter value of the ISP bypass mode corresponding to IP module.
-
Syntax
MI_S32 MI_ISP_IQ_GetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ISP bypass mode corresponding to IP module. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_QueryCcmInfo¶
-
Objective
This function is used to get the parameter value of CCM (Color Correction Matrix) for current color temperature.
-
Syntax
MI_S32 MI_ISP_IQ_QueryCcmInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CcmInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of CCM for current color temperature. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAdaptiveGamma¶
-
Objective
This function is used to set the parameter value of Adaptive Gamma curve, which needs to be set up with StrategyEx to enable Gamma to make dynamic adjustment according to AE SceneTarget so as to achieve the effect of dynamic range enhancement.
-
Syntax
MI_S32 MI_ISP_IQ_SetAdaptiveGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AdaptiveGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Adaptive Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAdaptiveGamma¶
-
Objective
This function is used to get the parameter value of Adaptive Gamma curve.
-
Syntax
MI_S32 MI_ISP_IQ_GetAdaptiveGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AdaptiveGammaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Adaptive Gamma curve. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetTemp¶
-
Objective
This function is used to set the value of Temperature parameter.
-
Syntax
MI_S32 MI_ISP_IQ_SetTemp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of Temperature parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetTemp¶
-
Objective
This function is used to get the value of Temperature parameter.
-
Syntax
MI_S32 MI_ISP_IQ_GetTemp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of Temperature parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetTempInfo¶
-
Objective
This function is used to get the value of Temperature Info parameter.
-
Syntax
MI_S32 MI_ISP_IQ_GetTempInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of Temperature Info parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetDayNightDetection¶
-
Objective
This function is used to set the parameter value of Day/Night detection.
-
Syntax
MI_S32 MI_ISP_IQ_SetDayNightDetection(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightDetectionType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Day/Night detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetDayNightDetection¶
-
Objective
This function is used to get the parameter value of Day/Night detection.
-
Syntax
MI_S32 MI_ISP_IQ_GetDayNightDetection(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightDetectionType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Day/Night detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_QueryDayNightInfo¶
-
Objective
This function is used to query the result of Day/Night detection. Please note that this API only shows the detection result and you should still take actions accordingly, such as loading Day/Night bin file or controlling IR LED, when necessary.
-
Syntax
MI_ISP_IQ_QueryDayNightInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the result of Day/Night detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetGroupHold¶
-
Objective
Set GroupHold so that API may take effect at the same frame.
-
Syntax
MI_ISP_IQ_SetGroupHold(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Bool_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
Set GroupHold to TRUE before calling the API that needs to take effect at the same frame, and then set GroupHold to FALSE after calling the required API.
-
Example
MI_ISP_IQ_Bool_e GroupHold = E_SS_IQ_TRUE; MI_ISP_IQ_SetGroupHold(DevId, Channel, &GroupHold); while (datalen > 0) { memcpy(&sParam, pPacket, sizeof(MI_ISP_IQ_ApiParam_t)); MI_ISP_IQ_ApiDumpParam(sParam); ret = MI_ISP_IQ_ApiExecuteCmd(DevId, Channel, sParam.sCmdheader.CmdType, pPacket + sizeof(MI_U32) + sizeof(MI_ISP_IQ_CmdHeader_t)); datalen -= (sizeof(MI_U32) + sizeof(MI_ISP_IQ_CmdHeader_t) + sParam.sCmdheader.CmdLen); if (datalen != 0) { pPacket += (sizeof(MI_U32) + sizeof(MI_ISP_IQ_CmdHeader_t) + sParam.sCmdheader.CmdLen); } } GroupHold = E_SS_IQ_FALSE; MI_ISP_IQ_SetGroupHold(DevId, Channel, &GroupHold);
MI_ISP_IQ_SetHue¶
-
Objective
Convert to hue.
-
Syntax
MI_S32 MI_ISP_IQ_SetHue(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Hue_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetHue¶
-
Objective
Get the value of Hue after conversion.
-
Syntax
MI_S32 MI_ISP_IQ_GetHue(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Hue_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetSceneDecision¶
-
Objective
This function is used to set the parameter value of scene decision.
-
Syntax
MI_S32 MI_ISP_IQ_SetSceneDecision(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneDecisionType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of scene decision. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetSceneDecision¶
-
Objective
This function is used to get the parameter value of scene decision.
-
Syntax
MI_S32 MI_ISP_IQ_GetSceneDecision(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneDecisionType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of scene decision. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetSceneAdj¶
-
Objective
This function is used to set the parameter value of SceneAdj.
-
Syntax
MI_S32 MI_ISP_IQ_SetSceneAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of SceneAdj. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetSceneAdj¶
-
Objective
This function is used to get the parameter value of SceneAdj.
-
Syntax
MI_S32 MI_ISP_IQ_GetSceneAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of SceneAdj. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_AIBNRCaliInfo¶
-
Objective
This function is used to get the value of AIBNR CaliInfo.
-
Syntax
MI_S32 MI_ISP_IQ_AIBNRCaliInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAIBNRCtrl¶
-
Objective
This function is used to set the value of AIBNR Ctrl.
-
Syntax
MI_S32 MI_ISP_IQ_SetAIBNRCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAIBNRCtrl¶
-
Objective
This function is used to get the value of AIBNR Ctrl.
-
Syntax
MI_S32 MI_ISP_IQ_GetAIBNRCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrCtrlType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetAiBnrObc¶
-
Objective
This function is used to set the value of AIBNR Obc.
-
Syntax
MI_S32 MI_ISP_IQ_SetAiBnrObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_GetAiBnrObc¶
-
Objective
This function is used to get the value of AIBNR Obc.
-
Syntax
MI_S32 MI_ISP_IQ_GetAiBnrObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrObcType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_SetSceneStatis¶
-
Objective
This function is used to set the parameter value of scene statis.
-
Syntax
MI_S32 MI_ISP_IQ_SetSceneStatis(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneStatisType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of scene statis. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_QuerySceneCurLevelInfo¶
-
Objective
This function is used to get the parameter value of all current IQ levels.
-
Syntax
MI_S32 MI_ISP_IQ_QuerySceneCurLevelInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneCurLevelType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of all current IQ levels. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_IQ_QuerySceneInfo¶
-
Objective
This function is used to get the current scene modes and the parameter value of all current IQ/AE/AWB levels.
-
Syntax
MI_S32 MI_ISP_IQ_QuerySceneInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of all current IQ/AE/AWB levels. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_iq.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_QueryExposureInfo¶
-
Objective
This function is used to get the parameter value of auto exposure.
-
Syntax
MI_S32 MI_ISP_AE_QueryExposureInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of auto exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetHistoWghtY¶
-
Objective
This function is used to get the value of current image brightness and statistical data of histogram.
-
Syntax
MI_S32 MI_ISP_AE_GetHistoWghtY(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HistWeightYType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of current image brightness and statistical data of histogram. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetEvComp¶
-
Objective
This function is used to set the parameter value of exposure compensation.
-
Syntax
MI_S32 MI_ISP_AE_SetEvComp(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_EvCompType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetEvComp¶
-
Objective
This function is used to get the parameter value of exposure compensation.
-
Syntax
MI_S32 MI_ISP_AE_GetEvComp(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_EvCompType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure compensation. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetExpoMode¶
-
Objective
This function is used to set the parameter value of exposure mode.
-
Syntax
MI_S32 MI_ISP_AE_SetExpoMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ModeType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetExpoMode¶
-
Objective
Call this function to get the parameter value of exposure mode.
-
Syntax
MI_S32 MI_ISP_AE_GetExpoMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ModeType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetManualExpo¶
-
Objective
This function is used to set the parameter value of manual exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetManualExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of manual exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetManualExpo¶
-
Objective
This function is used to get the parameter value of manual exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetManualExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of manual exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetManualShortExpo¶
-
Objective
This function is used to set the parameter value of short manual exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetManualShortExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of short manual exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetManualShortExpo¶
-
Objective
This function is used to get the parameter value of short manual exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetManualShortExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of short manual exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetState¶
-
Objective
This function is used to set the parameter value of auto exposure working status.
-
Syntax
MI_S32 MI_ISP_AE_SetState(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SmStateType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of auto exposure working status. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetState¶
-
Objective
This function is used to get the parameter value of auto exposure working status.
-
Syntax
MI_S32 MI_ISP_AE_GetState(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SmStateType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of auto exposure working status. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFastMode¶
-
Objective
This function is used to set the parameter value of AE fast convergence.
-
Syntax
MI_S32 MI_ISP_AE_SetFastMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_bool_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AE fast convergence. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetFastMode¶
-
Objective
This function is used to get the parameter value of AE fast convergence.
-
Syntax
MI_S32 MI_ISP_AE_GetFastMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_bool_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AE fast convergence. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetTarget¶
-
Objective
This function is used to set the parameter value of exposure target in screen under different ambient brightness values (BV).
-
Syntax
MI_S32 MI_ISP_AE_SetTarget(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_IntpLutType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure target. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetTarget¶
-
Objective
This function is used to get the parameter value of exposure target in screen under different ambient brightness values (BV).
-
Syntax
MI_S32 MI_ISP_AE_GetTarget(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_IntpLutType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure target. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetConverge¶
-
Objective
This function is used to set the parameter value of exposure convergence.
-
Syntax
MI_S32 MI_ISP_AE_SetConverge(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvConditonType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure convergence. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetConverge¶
-
Objective
This function is used to get the parameter value of exposure convergence.
-
Syntax
MI_S32 MI_ISP_AE_GetConverge(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvConditonType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure convergence. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetExposureLimit¶
-
Objective
This function is used to set the parameter value for the range limit of auto exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetExposureLimit(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoLimitType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the range limit of auto exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetExposureLimit¶
-
Objective
This function is used to get the parameter value for the range limit of auto exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetExposureLimit(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoLimitType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of auto exposure range limit. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetPlainLongExpoTable¶
-
Objective
This function is used to set the parameter value for the exposure table of long exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetPlainLongExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the exposure table of long exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetPlainLongExpoTable¶
-
Objective
This function is used to get the parameter value for the exposure table of long exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetPlainLongExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the exposure table of long exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetPlainShortExpoTable¶
-
Objective
This function is used to set the parameter value for the exposure table of short exposure.
-
Syntax
MI_S32 MI_ISP_AE_SetPlainShortExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the exposure table of short exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetPlainShortExpoTable¶
-
Objective
This function is used to get the parameter value for the exposure table of short exposure.
-
Syntax
MI_S32 MI_ISP_AE_GetPlainShortExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the exposure table of short exposure. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetWinWgtType¶
-
Objective
This function is used to set the parameter value for the type of exposure weight table.
-
Syntax
MI_S32 MI_ISP_AE_SetWinWgtType(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightModeType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the type of exposure weight table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetWinWgtType¶
-
Objective
This function is used to get the parameter value for the type of exposure weight table.
-
Syntax
MI_S32 MI_ISP_AE_GetWinWgtType(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightModeType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the type of exposure weight table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetWinWgt¶
-
Objective
This function is used to set the parameter value of exposure weight table.
-
Syntax
MI_S32 MI_ISP_AE_SetWinWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure weight table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetWinWgt¶
-
Objective
This function is used to get the parameter value of exposure weight table.
-
Syntax
MI_S32 MI_ISP_AE_GetWinWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure weight table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFlicker¶
-
Objective
This function is used to set the value of anti-flicker parameter. Anti-flicker are supported at 50Hz and 60Hz.
-
Syntax
MI_S32 MI_ISP_AE_SetFlicker(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of anti-flicker parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
Anti-flicker are supported at 50Hz and 60Hz.
-
Example
N/A.
MI_ISP_AE_GetFlicker¶
-
Objective
This function is used to get the value of anti-flicker parameter. Anti-flicker are supported at 50Hz and 60Hz.
-
Syntax
MI_S32 MI_ISP_AE_GetFlicker(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of anti-flicker parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFlickerEx¶
-
Objective
This function is used to set the parameter value of anti-flicker frequency detection. Anti-flicker are supported at 50Hz and 60Hz.
-
Syntax
MI_S32 MI_ISP_AE_SetFlickerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of anti-flicker frequency detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
Anti-flicker are supported at 50Hz and 60Hz.
-
Example
N/A.
MI_ISP_AE_GetFlickerEx¶
-
Objective
This function is used to get the parameter value of anti-flicker frequency detection. Anti-flicker are supported at 50Hz and 60Hz.
-
Syntax
MI_S32 MI_ISP_AE_GetFlickerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of anti-flicker frequency detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_QueryFlickerInfo¶
-
Objective
This function is used to query the information about the parameter value of anti-flicker detection, including the effective state of anti-flicker, the anti-flicker mode (50Hz/60Hz), and the effective score of anti-flicker mode.
-
Syntax
MI_S32 MI_ISP_AE_QueryFlickerInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the information about the parameter value of anti-flicker frequency detection. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetStrategy¶
-
Objective
This function is used to set the parameter value of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_SetStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyType_t
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetStrategy¶
-
Objective
This function is used to get the parameter value of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_GetStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyType_t
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetStrategyEx¶
-
Objective
This function is used to set the parameter value of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_SetStrategyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetStrategyEx¶
-
Objective
This function is used to get the parameter value of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_GetStrategyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetStrategyExAdv¶
-
Objective
This function is used to set the parameter value of exposure strategy for HDR_Auto mode.
-
Syntax
MI_S32 MI_ISP_AE_SetStrategyExAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetStrategyExAdv¶
-
Objective
This function is used to get the parameter value of exposure strategy for HDR_Auto mode.
-
Syntax
MI_S32 MI_ISP_AE_GetStrategyExAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExAdvType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_QueryStrategyExInfo¶
-
Objective
This function is used to query the information of exposure strategy.
-
Syntax
MI_S32 MI_ISP_AE_QueryStrategyExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the information of exposure strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetRgbirAe¶
-
Objective
This function is used to set the parameter value of exposure strategy in RGB-IR mode.
-
Syntax
MI_S32 MI_ISP_AE_SetRgbirAe(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_RgbirAeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy in RGB-IR mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetRgbirAe¶
-
Objective
This function is used to get the parameter value of exposure strategy in RGB-IR mode.
-
Syntax
MI_S32 MI_ISP_AE_GetRgbirAe(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_RgbirAeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy in RGB-IR mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetHdr¶
-
Objective
This function is used to set the parameter value of exposure strategy in HDR mode.
-
Syntax
MI_S32 MI_ISP_AE_SetHdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HdrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy in HDR mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetHdr¶
-
Objective
This function is used to get the parameter value of exposure strategy in HDR mode.
-
Syntax
MI_S32 MI_ISP_AE_GetHdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HdrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure strategy in HDR mode. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetStabilizer¶
-
Objective
This function is used to set the parameter value of stabilizer strategy. Stabilizer can prevent AE from being easily triggerd by local change in the current frame, thereby stablizing frame brightness.
-
Syntax
MI_S32 MI_ISP_AE_SetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of stabilizer strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetStabilizer¶
-
Objective
This function is used to get the parameter value of stabilizer strategy.
-
Syntax
MI_S32 MI_ISP_AE_GetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of stabilizer strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetPowerLine¶
-
Objective
This function is used to delay Flicker from happening by setting the value of PowerLine Flicker parameter.
-
Syntax
MI_S32 MI_ISP_AE_SetPowerLine(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_PowerLineType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of PowerLine Flicker parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetPowerLine¶
-
Objective
This function is used to get the value of PowerLine Flicker parameter.
-
Syntax
MI_S32 MI_ISP_AE_GetPowerLine(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_PowerLineType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of PowerLine Flicker parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_QueryPowerLineInfo¶
-
Objective
This function is used to get the information about PowerLine Flicker.
-
Syntax
MI_S32 MI_ISP_AE_QueryPowerLineInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_PowerLineInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of PowerLine Flicker parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetLumaWgt¶
-
Objective
This function is used to set the parameter value of Weight by luminance. This function aims to adjust the weight of luminance in certain regions of the screen, and the weight will be applied to AE so as to enhance the adapatibility of target brightness of the screen.
-
Syntax
MI_S32 MI_ISP_AE_SetLumaWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_LumaWgtType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Weight by luminance. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetLumaWgt¶
-
Objective
This function is used to get the parameter value of Weight by luminance. This function aims to adjust the weight of luminance in certain regions of the screen, and the weight will be applied to AE so as to enhance the adapatibility of target brightness of the screen.
-
Syntax
MI_S32 MI_ISP_AE_GetLumaWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_LumaWgtType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of Weight by luminance. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetHDRMLDynamicRatio¶
-
Objective
This function is used to set the value of ML - HDR dynamic ratio parameter.
-
Syntax
MI_S32 MI_ISP_AE_SetHDRMLDynamicRatio(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HdrDynamicRatioType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ML - HDR dynamic ratio. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetHDRMLDynamicRatio¶
-
Objective
This function is used to get the value of ML - HDR dynamic ratio parameter.
-
Syntax
MI_S32 MI_ISP_AE_GetHDRMLDynamicRatio(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HdrDynamicRatioType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of ML - HDR dynamic ratio. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetExpoTableMode¶
-
Objective
This function is used to set the parameter value for the working mode of exposure table.
-
Syntax
MI_S32 MI_ISP_AE_SetExpoTableMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableMode_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the working mode of exposure table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetExpoTableMode¶
-
Objective
This function is used to get the parameter value for the working mode of exposure table.
-
Syntax
MI_S32 MI_ISP_AE_GetExpoTableMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableMode_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value for the working mode of exposure table. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_QueryHDRDynamicRatioInfo¶
-
Objective
This function is used to get the value of HDR dynamic ratio information parameter.
-
Syntax
MI_S32 MI_ISP_AE_QueryHDRDynamicRatioInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_QueryHdrDynamicRatioInfoType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of HDR dynamic ratio information parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFaceDetectInfo¶
-
Objective
This function is used to set the information required by Face Detection AE(FDAE).
-
Syntax
MI_S32 MI_ISP_AE_SetFaceDetectInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDInfoType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of FD information. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFaceDetectParam¶
-
Objective
This function is used to set the parameters adjusted by Face Detection AE(FDAE).
-
Syntax
MI_S32 MI_ISP_AE_SetFaceDetectParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDParamType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDAE information. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetFaceDetectParam¶
-
Objective
This function is used to get the parameters adjusted by Face Detection AE(FDAE).
-
Syntax
MI_S32 MI_ISP_AE_GetFaceDetectParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDParamType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDAE information. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFaceDetectParam_EX¶
-
Objective
This function is used to set the parameters adjusted by FDAE_EX.
-
Syntax
MI_S32 MI_ISP_AE_SetFaceDetectParam_EX(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDParamEXType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDAE_EX information. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetFaceDetectParam_EX¶
-
Objective
This function is used to get the parameters adjusted by FDAE_EX.
-
Syntax
MI_S32 MI_ISP_AE_GetFaceDetectParam_EX(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDParamEXType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDAE_EX information. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFDExInfo¶
-
Objective
This function is used to set the parameters adjusted by FDEx_Info.
-
Syntax
MI_S32 MI_ISP_AE_SetFDExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXInfoType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDEx_Info. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetFDExInfo¶
-
Objective
This function is used to get the parameters adjusted by FDEx_Info.
-
Syntax
MI_S32 MI_ISP_AE_GetFDExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXInfoType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDEx_Info. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFDExParam¶
-
Objective
This function is used to set the parameters adjusted by FDEx_Param.
-
Syntax
MI_S32 MI_ISP_AE_SetFDExParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXParamType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDEx_Param. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetFDExParam¶
-
Objective
This function is used to get the parameters adjusted by FDEx_Param.
-
Syntax
MI_S32 MI_ISP_AE_GetFDExParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXParamType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDEx_Param. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFDExIIParam¶
-
Objective
This function is used to set the parameters adjusted by FDExII_Param.
-
Syntax
MI_S32 MI_ISP_AE_SetFDExIIParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXIIParamType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDExII_Param. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetFDExIIParam¶
-
Objective
This function is used to get the parameters adjusted by FDExII_Param.
-
Syntax
MI_S32 MI_ISP_AE_GetFDExIIParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXIIParamType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDExII_Param. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetFDExAdvParam¶
-
Objective
This function is used to set the parameters adjusted by FDExAdv_Param.
-
Syntax
MI_S32 MI_ISP_AE_SetFDExAdvParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXAdvParamType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDExAdv_Param. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetFDExAdvParam¶
-
Objective
This function is used to get the parameters adjusted by FDExAdv_Param.
-
Syntax
MI_S32 MI_ISP_AE_GetFDExAdvParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXAdvParamType_t *data)
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDExAdv_Param. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetVersionInfo¶
-
Objective
This function is used to get the parameter value of AE version information.
-
Syntax
MI_S32 MI_ISP_AE_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_VerInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AE version information. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetStabilizerEx¶
-
Objective
This function is used to set the parameter value of StabilizerEx strategy. This function prevents AE from being easily triggerd by local change in the picture, thereby stabilizing the picture brightness.
-
Syntax
MI_S32 MI_ISP_AE_SetStabilizerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of StabilizerEx strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetStabilizerEx¶
-
Objective
This function is used to get the parameter value of StabilizerEx strategy.
-
Syntax
MI_S32 MI_ISP_AE_GetStabilizerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of StabilizerEx strategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetConvergeSpeedEx¶
-
Objective
This function is used to set the parameter value of exposure convergence.
-
Syntax
MI_S32 MI_ISP_AE_SetConvergeSpeedEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvSpeed_Ex_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure convergence. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetConvergeSpeedEx¶
-
Objective
This function is used to get the parameter value of exposure convergence.
-
Syntax
MI_S32 MI_ISP_AE_GetConvergeSpeedEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvSpeed_Ex_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of exposure convergence. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetSceneInd¶
-
Objective
This function is used to set the parameter value of AE Scene Flag.
-
Syntax
MI_S32 MI_ISP_AE_SetSceneInd(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneIndType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AE Scene Flag. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetSceneInd¶
-
Objective
This function is used to get the parameter value of AE Scene Flag.
-
Syntax
MI_S32 MI_ISP_AE_GetSceneInd(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneIndType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AE Scene Flag. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_SetSceneAdj¶
-
Objective
This function is used to set the parameter value of AE SceneAdj.
-
Syntax
MI_S32 MI_ISP_AE_SetSceneAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AE SceneAdj. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_GetSceneAdj¶
-
Objective
This function is used to get the parameter value of AE SceneAdj.
-
Syntax
MI_S32 MI_ISP_AE_GetSceneAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AE SceneAdj. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AE_QuerySceneCurLevelInfo¶
-
Objective
This function is used to get the parameter value of all current AE levels.
-
Syntax
MI_S32 MI_ISP_AE_QuerySceneCurLevelInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneCurLevelType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of all current AE levels. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_ae.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_QueryInfo¶
-
Objective
This function is used to get information about the value of auto white balance (AWB) parameters.
-
Syntax
MI_S32 MI_ISP_AWB_QueryInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_QueryInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the value of AWB parameters. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetCtStats¶
-
Objective
This function is used to get the statistical value of AWB calibration.
-
Syntax
MI_S32 MI_ISP_AWB_GetCtStats(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtStatisticsType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the statistical value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetAttr¶
-
Objective
This function is used to set the parameter value of AWB attribute.
-
Syntax
MI_S32 MI_ISP_AWB_SetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetAttr¶
-
Objective
This function is used to get the parameter value of AWB attribute.
-
Syntax
MI_S32 MI_ISP_AWB_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetAttrEx¶
-
Objective
This function is used to set the parameter value of AWB extended attribute.
-
Syntax
MI_S32 MI_ISP_AWB_SetAttrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB extended attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
Parameters set by this function take effect only when eAlgType = SS_AWB_ALG_ADVANCE in MI_ISP_AWB_AttrParam_t.
-
Example
N/A.
MI_ISP_AWB_GetAttrEx¶
-
Objective
This function is used to get the parameter value of AWB extended attribute.
-
Syntax
MI_S32 MI_ISP_AWB_GetAttrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrExType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB extended attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetMultiLsAttr¶
-
Objective
This function is used to set the parameter value of AWB calibration of color shift in mixed-light scenarios.
-
Syntax
MI_S32 MI_ISP_AWB_SetMultiLsAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_MultiLsType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration of color shift in mixed-light scenarios. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
Parameters set by this function take effect only when bWpWeightEnable = 1 in MI_ISP_AWB_AttrParam_t.
-
Example
N/A.
MI_ISP_AWB_GetMultiLsAttr¶
-
Objective
This function is used to get the parameter value of AWB calibration of color shift in mixed-light scenarios.
-
Syntax
MI_S32 MI_ISP_AWB_GetMultiLsAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_MultiLsType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration of color shift in mixed-light scenarios. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetCtCaliAttr¶
-
Objective
This function is used to set the parameter value of AWB calibration.
-
Syntax
MI_S32 MI_ISP_AWB_SetCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtCaliType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetCtCaliAttr¶
-
Objective
This function is used to get the parameter value of AWB calibration.
-
Syntax
MI_S32 MI_ISP_AWB_GetCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtCaliType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetCurCtCaliAttr¶
-
Objective
This function is used to get the information of color temperature range after AWB applies calibration data.
-
Syntax
MI_S32 MI_ISP_AWB_GetCurCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CurCtCaliType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetCtMwbAttr¶
-
Objective
This function is used to manually select color temperature to apply the corresponding WB gain, effective only when CT Manual is chosen for AwbMode.
-
Syntax
MI_S32 MI_ISP_AWB_SetCtMwbAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtmwbParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetCtMwbAttr¶
-
Objective
This function is used to get the color temperature settings for manual white balance.
-
Syntax
MI_S32 MI_ISP_AWB_GetCtMwbAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtmwbParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB calibration. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetStabilizer¶
-
Objective
This function is used to set AWB stabilizer. When the environment is stable but AWB is constantly being triggered, resulting in continuous screen color flickering, it is recommended that you enable this function to stabilize AWB changes.
-
Syntax
MI_S32 MI_ISP_AWB_SetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StabilizerType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB stabilizer. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetStabilizer¶
-
Objective
This function is used to get the setting of AWB stabilizer.
-
Syntax
MI_S32 MI_ISP_AWB_GetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StabilizerType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB stabilizer. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetSpecialCase¶
-
Objective
This function is used to set AWB SpecialCase, which allows users to define "case" by three conditions and to determine the corresponding AWB responses when different conditions are met. The ultimate purpose is to enhance the precision of AWB in certain scenes. A total of four cases can be defined, and their effects can be accumulated.
-
Syntax
MI_S32 MI_ISP_AWB_SetSpecialCase(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB SpecialCase. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetSpecialCase¶
-
Objective
This function is used to get the setting of AWB SpecialCase.
-
Syntax
MI_S32 MI_ISP_AWB_GetSpecialCase(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB SpecialCase. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_QuerySpecialCaseInfo¶
-
Objective
This function is used to get the information about the statistical data of AWB SpecialCase.
-
Syntax
MI_S32 MI_ISP_AWB_QuerySpecialCaseInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB QuerySpecialCase. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetStatisFilter¶
-
Objective
This function is used to set AWB StatisFilter, which aims to exclude statistics that are too dark or overly bright based on the range of effective brightness in BV setting, in order to prevent AWB from being affected by noise or over-exposed area.
-
Syntax
MI_S32 MI_ISP_AWB_SetStatisfilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StatisFilterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB StatisFilter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetStatisFilter¶
-
Objective
This function is used to get the setting of AWB StatisFilter.
-
Syntax
MI_S32 MI_ISP_AWB_GetStatisFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StatisFilterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB StatisFilter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetVersionInfo¶
-
Objective
This function is used to get the parameter value of AWB version information.
-
Syntax
MI_S32 MI_ISP_AWB_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_VerInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB version information. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetFDAWBParam¶
-
Objective
This function is used to set AWB parameters that are related to face detection. This function allows the white balance algorithm to take advantage of face detection information to increase the accuracy and stability of white balance and skin tone. Before using this function, make sure that the function of human face detection is supported. If the function of human face detection is not supported, this API will be invalid.
-
Syntax
MI_S32 MI_ISP_AWB_SetFDAWBParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FdAwbParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDAWB. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetFDAWBParam¶
-
Objective
This function is used to get the setting of FDAWB.
-
Syntax
MI_S32 MI_ISP_AWB_GetFDAWBParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FdAwbParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDAWB. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetFDAWBInfo¶
-
Objective
This function allows user to read the current FDAWB information by using this API.
-
Syntax
MI_S32 MI_ISP_AWB_GetFDAWBInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FdAwbInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDAWBInfo. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetFewStatisStrategy¶
-
Objective
This function is used to set AWB FewStatisStrategy parameters. Three choices are provided to determine what AWB should do when the statistics value is insufficient.
-
Syntax
MI_S32 MI_ISP_AWB_SetFewStatisStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FwstStrategyParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FwstStrategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetFewStatisStrategy¶
-
Objective
This function is used to get the setting of FewStatisStrategy.
-
Syntax
MI_S32 MI_ISP_AWB_GetFewStatisStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FwstStrategyParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FwstStrategy. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetRunPeriod¶
-
Objective
This function is used to set the operating frequency of AWB. The default frequency is to run AWB once every 3 frames.
-
Syntax
MI_S32 MI_ISP_AWB_SetRunPeriod(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_RunPeriodParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of RunPeriod. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetRunPeriod¶
-
Objective
This function is used to get the operating frequency of AWB.
-
Syntax
MI_S32 MI_ISP_AWB_GetRunPeriod(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_RunPeriodParam_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of RunPeriod. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetSceneInd¶
-
Objective
This function is used to set the parameter value of AWB Scene Flag.
-
Syntax
MI_S32 MI_ISP_AWB_SetSceneInd(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneIndType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB Scene Flag. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetSceneInd¶
-
Objective
This function is used to get the parameter value of AWB Scene Flag.
-
Syntax
MI_S32 MI_ISP_AWB_GetSceneInd(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneIndType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB Scene Flag. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetSceneAdj¶
-
Objective
This function is used to set the parameter value of AWB SceneAdj.
-
Syntax
MI_S32 MI_ISP_AWB_SetSceneAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB SceneAdj. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetSceneAdj¶
-
Objective
This function is used to get the parameter value of AWB SceneAdj.
-
Syntax
MI_S32 MI_ISP_AWB_GetSceneAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneAdjType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AWB SceneAdj. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_QuerySceneCurLevelInfo¶
-
Objective
This function is used to get the parameter value of all current AWB levels.
-
Syntax
MI_S32 MI_ISP_AWB_QuerySceneCurLevelInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneCurLevelType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of all current AWB levels. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetIncludeArea¶
-
Objective
This function is used to set the parameters of IncludeArea.
-
Syntax
MI_S32 MI_ISP_AWB_SetIncludeArea(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_IncludeAreaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of Include-block. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetIncludeArea¶
-
Objective
This function is used to get the parameters of IncludeArea.
-
Syntax
MI_S32 MI_ISP_AWB_GetIncludeArea(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_IncludeAreaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of Include-block. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_SetExcludeArea¶
-
Objective
This function is used to set the parameters of ExcludeArea.
-
Syntax
MI_S32 MI_ISP_AWB_SetIncludeArea(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_ExcludeAreaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of Exclude-block. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_GetExcludeArea¶
-
Objective
This function is used to get the parameters of ExcludeArea.
-
Syntax
MI_S32 MI_ISP_AWB_GetExcludeArea(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_ExcludeAreaType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of Exclude-block. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AWB_QueryProAttrInfo¶
-
Objective
This function is used to get the information of eAdvType Pro.
-
Syntax
MI_S32 MI_ISP_AWB_QueryProAttrInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_ProAttrInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AWB_QueryProAttrInfo. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_awb.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetAdjust¶
-
Objective
This function is used to set the parameter values of Auto Focus (AF) adjustment.
-
Syntax
MI_S32 MI_ISP_AF_SetAdjust(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF Adjust attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
-
Header File: mi_isp_af.h
-
Library: libmi_isp.so
-
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetAdjust¶
-
Objective
This function is used to get the parameter values of Auto Focus (AF) adjustment.
-
Syntax
MI_S32 MI_ISP_AF_GetAdjust(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF Adjust attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
-
Header File: mi_isp_af.h
-
Library: libmi_isp.so
-
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetAdjustII¶
-
Objective
This function is used to set the parameter values of Auto Focus (AF) adjustment.
-
Syntax
MI_S32 MI_ISP_AF_SetAdjustII(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF AdjustII attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetAdjustII¶
-
Objective
This function is used to get the parameter values of Auto Focus (AF) adjustment.
-
Syntax
MI_S32 MI_ISP_AF_GetAdjustII(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF AdjustII attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetAdjustIII¶
-
Objective
This function is used to set the parameter values of Auto Focus (AF) adjustment.
-
Syntax
MI_S32 MI_ISP_AF_SetAdjustIII(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF AdjustIII attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetAdjustIII¶
-
Objective
This function is used to get the parameter values of Auto Focus (AF) adjustment.
-
Syntax
MI_S32 MI_ISP_AF_GetAdjustIII(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF AdjustIII attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetBackUpPosition¶
-
Objective
This function is used to set the position parameter to which VCM moved last time, when FDAF was enabled, human face was detected, and the scene changed from no human face to human face appearance.
-
Syntax
MI_S32 MI_ISP_AF_SetBackUpPosition(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_BackUpPositionType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF BackUpPosition attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetBackUpPosition¶
-
Objective
This function is used to get the position parameter to which VCM moved last time, when FDAF was enabled, human face was detected, and the scene changed from no human face to human face appearance.
-
Syntax
MI_S32 MI_ISP_AF_GetBackUpPosition(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_BackUpPositionType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF BackUpPosition attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetOffset¶
-
Objective
This function is used to set an offset against Peak after AF has found the Peak.
-
Syntax
MI_S32 MI_ISP_AF_SetOffset(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OffsetType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF Offset attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetOffset¶
-
Objective
This function is used to get an offset against Peak after AF has found the Peak.
-
Syntax
MI_S32 MI_ISP_AF_GetOffset(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OffsetType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF Offset attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetFDAF¶
-
Objective
This function is used to set the parameters adjusted by FDAF.
-
Syntax
MI_S32 MI_ISP_AF_SetFDAF(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_FDAFype_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDAF attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetFDAF¶
-
Objective
This function is used to get the parameters adjusted by FDAF.
-
Syntax
MI_S32 MI_ISP_AF_GetFDAF(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_FDAFype_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of FDAF attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetDetectFlatZone¶
-
Objective
This function is used to set the threshold value to enable the detection of flat zone.
-
Syntax
MI_S32 MI_ISP_AF_SetDetectFlatZone(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_DetectFlatZoneype_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF DetectFlatZone attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetDetectFlatZone¶
-
Objective
This function is used to get the threshold value to enable the detection of flat zone.
-
Syntax
MI_S32 MI_ISP_AF_GetDetectFlatZone(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_DetectFlatZoneype_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF DetectFlatZone attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetStartVCMPos¶
-
Objective
This function is used to set the default position parameter of VCM when power-on.
-
Syntax
MI_S32 MI_ISP_AF_SetStartVCMPos(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_StartVCMPosType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF StartVCMPos attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetStartVCMPos¶
-
Objective
This function is used to get the default position parameter of VCM when power-on.
-
Syntax
MI_S32 MI_ISP_AF_GetStartVCMPos(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_StartVCMPosType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF StartVCMPos attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_QueryInfo¶
-
Objective
This function is used to get the parameter value of Auto Focus (AF).
-
Syntax
MI_S32 MI_ISP_AF_QueryInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_QueryInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter values of AF QueryInfo. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwWin¶
-
Objective
This function is used to set AF win.
-
Syntax
MI_S32 MI_ISP_AF_SetHwWin(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwWinType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF win attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwWin¶
-
Objective
This function is used to get AF win.
-
Syntax
MI_S32 MI_ISP_AF_GetHwWin(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwWinType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF win attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwFilterAttr¶
-
Objective
This function is used to set AF filter coefficients.
-
Syntax
MI_S32 MI_ISP_AF_SetHwFilterAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterAttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwFilterAttr¶
-
Objective
This function is used to get AF filter coefficients.
-
Syntax
MI_S32 MI_ISP_AF_GetHwFilterAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterAttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwFilterSq¶
-
Objective
This function is used to set the coefficients of AF filter square.
-
Syntax
MI_S32 MI_ISP_AF_SetHwFilterSq(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterSqType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter square attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwFilterSq¶
-
Objective
This function is used to get the coefficients of AF filter square.
-
Syntax
MI_S32 MI_ISP_AF_GetHwFilterSq(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterSqType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter square attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwBnr¶
-
Objective
This function is used to set the coefficent of AF Bayer noise reduction.
-
Syntax
MI_S32 MI_ISP_AF_SetHwBnr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwBnrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Bayer noise reduction attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
AF Bayer noise reduction takes effect only when AF source is set to E_IQ_AF_SOURCE_BF_3DNR_AF_HDR.
-
Example
N/A.
MI_ISP_AF_GetHwBnr¶
-
Objective
This function is used to get the coefficent of AF Bayer noise reduction.
-
Syntax
MI_S32 MI_ISP_AF_GetHwBnr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwBnrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Bayer noise reduction attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
AF Bayer noise reduction takes effect only when AF source is set to E_IQ_AF_SOURCE_BF_3DNR_AF_HDR.
-
Example
N/A.
MI_ISP_AF_SetHwYParam¶
-
Objective
This function is used to set the RGB ratio coefficients of Bayer to Y conversion by AF filter.
-
Syntax
MI_S32 MI_ISP_AF_SetHwYParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYParamType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter Bayer to Y conversion attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwYParam¶
-
Objective
This function is used to get the RGB ratio coefficients of Bayer to Y conversion by AF filter.
-
Syntax
MI_S32 MI_ISP_AF_GetHwYParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYParamType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter Bayer to Y conversion attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwSource¶
-
Objective
This function is used to set the location of source, where AF filter extracts statistics.
-
Syntax
MI_S32 MI_ISP_AF_SetHwSource(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwSourceType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the attribute parameter value of source location for AF filter to extracts statistics. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwSource¶
-
Objective
This function is used to get the location of source, where AF filter extracts statistics.
-
Syntax
MI_S32 MI_ISP_AF_GetHwSource(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwSourceType_e *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the attribute parameter value of source location for AF filter to extracts statistics. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwPreFilter¶
-
Objective
This function is used to set the pre-filter coefficients of AF filter.
-
Syntax
MI_S32 MI_ISP_AF_SetHwPreFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwPrefilterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter pre-filter attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwPreFilter¶
-
Objective
This function is used to get the pre-filter coefficients of AF filter.
-
Syntax
MI_S32 MI_ISP_AF_GetHwPreFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwPrefilterType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter pre-filter attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwYMap¶
-
Objective
This function is used to set the y mapping coefficients of AF filter.
-
Syntax
MI_S32 MI_ISP_AF_SetHwYMap(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYMapType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter y mapping attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwYMap¶
-
Objective
This function is used to get the y mapping coefficients of AF filter.
-
Syntax
MI_S32 MI_ISP_AF_GetHwYMap(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYMapType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter y mapping attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwLdg¶
-
Objective
This function is used to set the LDG coefficients of AF filter.
-
Syntax
MI_S32 MI_ISP_AF_SetHwLdg(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwLdgType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter LDG attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwLdg¶
-
Objective
This function is used to get the LDG coefficients of AF filter.
-
Syntax
MI_S32 MI_ISP_AF_GetHwLdg(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwLdgType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter LDG attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetHwPeakMode¶
-
Objective
This function is used to set the coefficients of AF filter peak mode.
-
Syntax
MI_S32 MI_ISP_AF_SetHwPeakMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwPeakModeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter peak mode attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetHwPeakMode¶
-
Objective
This function is used to get the coefficients of AF filter peak mode.
-
Syntax
MI_S32 MI_ISP_AF_GetHwPeakMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwPeakModeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF filter peak mode attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetAttr¶
-
Objective
This function is used to set the parameter value of AF attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetAttr¶
-
Objective
Pointer to the parameter value of AF attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AttrType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetMotor¶
-
Objective
This function is used to set the parameter value of AF Motor attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetMotor(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_MotorType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Call this function to set the parameter value of AF Motor attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetMotor¶
-
Objective
This function is used to get the parameter value of AF Motor attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetMotor(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_MotorType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Motor attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetAccWeight¶
-
Objective
This function is used to set the parameter value of AF Acc Weight attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetAccWeight(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AccWeightType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Acc Weight attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetAccWeight¶
-
Objective
This function is used to get the parameter value of AF Acc Weight attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AccWeightType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Acc Weight attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetOneShot¶
-
Objective
This function is used to set the parameter value of AF OneShot attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetOneShot(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OneShotType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF OneShot attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetOneShot¶
-
Objective
This function is used to get the parameter value of AF OneShot attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OneShotType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF OneShot attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetSceneChange¶
-
Objective
This function is used to set the parameter value of AF Scene Change attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetSceneChange(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SceneChangeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Scene Change attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetSceneChange¶
-
Objective
This function is used to get the parameter value of AF Scene Change attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetSceneChange(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SceneChangeType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Scene Change attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetSearchStart¶
-
Objective
This function is used to set the parameter value of AF SearchStart attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetSearchStart(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchStartType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF SearchStart attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetSearchStart¶
-
Objective
This function is used to get the parameter value of AF SearchStart attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchStartType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF SearchStart attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_SetSearch¶
-
Objective
This function is used to set the parameter value of AF Search attribute.
-
Syntax
MI_S32 MI_ISP_AF_SetSearch(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Search attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetSearch¶
-
Objective
This function is used to get the parameter value of AF Search attribute.
-
Syntax
MI_S32 MI_ISP_AF_GetSearch(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF Search attribute. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_AF_GetVersionInfo¶
-
Objective
This function is used to get the parameter value of AF version information.
-
Syntax
MI_S32 MI_ISP_AF_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_VerInfoType_t *data);
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. *data Pointer to the parameter value of AF version information. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_af.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI_ISP_ApiCmdLoadBinFile¶
-
Objective
This function is used to load cmd bin file and tunnel the file to the customer's application after user finishing tuning IQ parameters in IQ Tool.
-
Syntax
MI_S32 MI_ISP_ApiCmdLoadBinFile(MI_U32 DevId, MI_U32 Channel, char *filepath, MI_U32 user_key);
-
Description
Call this function to load the API cmd bin file, which was tuned by the IQ Tool. When customer loads this bin file into the application, they can also achieve the same effect as created by the IQ Tool.
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. filepath The filepath of ISP API bin file. user_key The user key must match the magic key, and the magic key can be modified via the Settings in the IQ Tool. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_cus3a_api.h
- Library: libmi_isp.so
-
Note
The ISP API bin file can only be loaded when the ISP initialization and 3A initialization status are ready (1).
-
Getting ISP initialization ready status: MI_ISP_IQ_GetParaInitStatus
-
Getting 3A initialization ready status: CUS3A_GetAlgoStatus
-
-
Example
Filepath is the path where bin file is located. The value of user_key will be compared to the value of magic key, which is stored by the IQ Tool in ISP API bin. When the ISP API bin is called via this function, the magic key in the ISP API bin will be examined to see if it matches the user_key transmitted by the function. The magic key value can be modified in the Settings in the IQ Tool, as shown in Figure 2.

MI_ISP_ApiCmdLoadCaliData¶
-
Objective
This function is used to load offline calibration data file, which will be tunneled to the customer's application after user calibrates the parameter file (*.data) in the offline version of calibration program, so that this API function can be called during offline calibration.
-
Syntax
MI_S32 MI_ISP_ApiCmdLoadCaliData(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CaliItem_e eCaliItem, char *filepath);
-
Description
Call this function to load the parameter file (*.data) from the offline version of calibration program, so that the customer can directly load this data file in their application.
-
Parameter
Parameter Name Description DevId ISP device ID. Channel Image input channel number. eCaliItem Enum structure of the calibration project. filepath Filepath for the file of calibration parameter. -
Return Value
Parameter Name Description MI_ISP_OK Successful. MI_ISP_FAILURE Failed. -
Requirement
- Header File: mi_isp_cus3a_api.h
- Library: libmi_isp.so
-
Note
N/A.
-
Example
N/A.
MI ISP API DATA TYPE¶
MI_ISP_IQ_Bool Structure¶
Enum Structure¶
-
Description
Enum structure of Boolean value.
-
Definition
typedef enum
{
E_SS_IQ_FALSE = 0,
E_SS_IQ_TRUE = !E_SS_IQ_FALSE,
E_SS_IQ_BOOL_MAX
} MI_ISP_IQ_Bool_e;
-
Name
Variable Name Description E_SS_IQ_FALSE Boolean value = 0. E_SS_IQ_TRUE Boolean value = 1. E_SS_IQ_BOOL_MAX Determine the maximum value in the enum list of Boolean value. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_IQ_OpType Structure¶
Enum Structure¶
-
Description
The enum structure of working mode.
-
Definition
typedef enum
{
E_SS_IQ_OP_TYP_AUTO = 0,
E_SS_IQ_OP_TYP_MANUAL = !E_SS_IQ_OP_TYP_AUTO,
E_SS_IQ_OP_TYP_MODE_MAX
} MI_ISP_IQ_OpType_e;
-
Name
Variable Name Description E_SS_IQ_OP_TYP_AUTO Auto working mode. E_SS_IQ_OP_TYP_MANUAL Manual working mode. E_SS_IQ_OP_TYP_MODE_MAX Determine the maximum value in the enum list of working mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_ParamMode Structure¶
Enum Structure¶
-
Description
The enum structure of IQ special mode.
-
Definition
typedef enum
{
E_SS_IQ_PARAM_MODE_NORMAL = 0,
E_SS_IQ_PARAM_MODE_NIGHT = 1,
E_SS_IQ_PARAM_MODE_MAX
} MI_ISP_IQ_ParamMode_e;
-
Name
Variable Name Description E_SS_IQ_PARAM_MODE_NORMAL IQ daytime working mode. E_SS_IQ_PARAM_MODE_NIGHT IQ nighttime working mode. E_SS_IQ_PARAM_MODE_MAX Determine the maximum value in the enum list of IQ working mode. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetIqMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamMode_e *data);
MI_S32 MI_ISP_IQ_GetIqMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamMode_e *data);
MI_ISP_IQ_BypassMode Structure¶
Enum Structure¶
-
Description
The enum structure of Bypass working mode.
-
Definition
typedef enum
{
E_SS_BYPASS_OFF = 0,
E_SS_BYPASS_ON,
E_SS_BYPASS_MAX
} MI_ISP_IQ_BypassMode_e;
-
Name
Variable Name Description E_SS_BYPASS_OFF Disable Bypass mode. E_SS_BYPASS_ON Enable Bypass mode. E_SS_ BYPASS_MAX Determine the maximum value in the enum list of Bypass working mode. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_S32 MI_ISP_IQ_GetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_ISP_IQ_Index Structure¶
Enum Structure¶
-
Description
The enum structure of IQ exposure index (ISO index).
-
Definition
typedef enum
{
E_SS_IQ_INDEX_0 = 0,
E_SS_IQ_INDEX_1,
E_SS_IQ_INDEX_2,
E_SS_IQ_INDEX_3,
E_SS_IQ_INDEX_4,
E_SS_IQ_INDEX_5,
E_SS_IQ_INDEX_6,
E_SS_IQ_INDEX_7,
E_SS_IQ_INDEX_8,
E_SS_IQ_INDEX_9,
E_SS_IQ_INDEX_10,
E_SS_IQ_INDEX_11,
E_SS_IQ_INDEX_12,
E_SS_IQ_INDEX_13,
E_SS_IQ_INDEX_14,
E_SS_IQ_INDEX_15,
E_SS_IQ_INDEX_MAX
} MI_ISP_IQ_Index_e;
-
Name
Variable Name Description E_SS_IQ_INDEX_0 E_SS_IQ_INDEX_0 ISO index = 0, gain value = 1x. E_SS_IQ_INDEX_1 E_SS_IQ_INDEX_0 ISO index = 1, gain value = 2x. E_SS_IQ_INDEX_2 E_SS_IQ_INDEX_0 ISO index = 2, gain value = 4x. E_SS_IQ_INDEX_3 E_SS_IQ_INDEX_0 ISO index = 3, gain value = 8x. E_SS_IQ_INDEX_4 E_SS_IQ_INDEX_0 ISO index = 4, gain value = 16x. E_SS_IQ_INDEX_5 E_SS_IQ_INDEX_0 ISO index = 5, gain value = 32x. E_SS_IQ_INDEX_6 E_SS_IQ_INDEX_0 ISO index = 6, gain value = 64x. E_SS_IQ_INDEX_7 E_SS_IQ_INDEX_0 ISO index = 7, gain value = 128x. E_SS_IQ_INDEX_8 E_SS_IQ_INDEX_0 ISO index = 8, gain value = 256x. E_SS_IQ_INDEX_9 E_SS_IQ_INDEX_0 ISO index = 9, gain value = 512x. E_SS_IQ_INDEX_10 E_SS_IQ_INDEX_0 ISO index = 10, gain value = 1024x. E_SS_IQ_INDEX_11 E_SS_IQ_INDEX_0 ISO index = 11, gain value = 2048x. E_SS_IQ_INDEX_12 E_SS_IQ_INDEX_0 ISO index = 12, gain value = 4096x. E_SS_IQ_INDEX_13 E_SS_IQ_INDEX_0 ISO index = 13, gain value = 8192x. E_SS_IQ_INDEX_14 E_SS_IQ_INDEX_0 ISO index = 14, gain value = 16384x. E_SS_IQ_INDEX_15 E_SS_IQ_INDEX_0 ISO index = 15, gain value = 32678x. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_GetIqInd(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Index_e *data);
MI_ISP_IQ_ApiId Structure¶
Enum Structure¶
-
Description
The enum structure of of each API ID.
-
Definition
typedef enum
{
E_API20_AUTO = 0,
E_API20_FPN = 1,
E_API20_CCM = 2,
E_API20_SAT = 3,
E_API20_OBC = 4,
E_API20_OBC_P1 = 5,
E_API20_FCOLOR = 6,
E_API20_CR = 7,
E_API20_NR_DESPIKE = 8,
E_API20_SHP = 9,
E_API20_NR_3D = 10,
E_API20_BRI = 11,
E_API20_LIG = 12,
E_API20_CST = 13,
E_API20_GMA = 14,
E_API20_CTG = 15,
E_API20_NR_NLM = 16,
E_API20_DEFOG = 17,
E_API20_DRC = 18,
E_API20_DPC = 19,
E_API20_HSV = 20,
E_API20_WDR_LOC = 21,
E_API20_RGBIR = 22,
E_API20_YUVGMA = 23,
E_API20_HDR16TO12 = 24,
E_API20_COLORTRANS = 25,
E_API20_HDR = 26,
E_API20_EFFECT = 27,
E_API20_PFC = 28,
E_API20_SIIR = 29,
E_API20_DM = 30,
E_API20_NR_3D_P1 = 31,
E_API20_WDR_CURVE_ADV = 32,
E_API20_MXNR = 33,
E_API20_R2Y = 34,
E_API20_LSC = 35,
E_API20_LSC_CTRL = 36,
E_API20_ALSC = 37,
E_API20_ALSC_CTRL = 38,
E_API20_DPC_CLUSTER = 39,
E_API20_PFC_EX = 40,
E_API20_HDR_EX = 41,
E_API20_SHP_EX = 42,
E_API20_NR_3D_EX = 43,
E_API20_GNR = 44,
E_API20_DUMMY = 45,
E_API20_DUMMY_EX = 46,
E_API20_WDR_CURVE_FUL = 47,
E_API20_ADAPTIVE_GMA = 48,
E_API20_XNR = 49,
E_API20_TEMP = 50,
E_API20_TEMP_INFO = 51,
E_API20_CSA = 52,
E_API20_WDR_LCE = 53,
E_API20_WDR_NR = 54,
E_API20_YCLPF = 55,
E_API20_DARKSHADING = 56,
E_API20_WDR_LTM = 57,
E_API20_MAX = 58,
} MI_ISP_IQ_ApiId_e;
-
Name
N/A.
-
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_S32 MI_ISP_IQ_GetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_ISP_AF_AlgoType Structure¶
Enum Structure¶
-
Description
The enum structure of advanced auto focus algorithm.
-
Definition
typedef enum
{
E_SS_AF_ALGO_ONESHOT = 0,
E_SS_AF_ALGO_CONTINUOUS = 1
} MI_ISP_AF_AlgoType_e;
-
Name
Variable Name Description E_SS_AF_ALGO_ONESHOT Scan all spots in one shot and then stay at the spot of the maximum statistical value. E_SS_AF_ALGO_CONTINUOUS Detect environmental changes dynamically and refocus if any change is found. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_AccSelType Structure¶
Enum Structure¶
-
Description
The enum structure of auto focus statistical value.
-
Definition
typedef enum attribute ((aligned (4)))
{
E_SS_AF_ACC_IIRH = 0,
E_SS_AF_ACC_IIRL = 1,
E_SS_AF_ACC_SBLV = 2,
E_SS_AF_ACC_SBLH = 3,
E_SS_AF_ACC_LUMA = 4,
E_SS_AF_ACC_MAX = 0xffffffff
} MI_ISP_AF_AccSelType_e;
-
Name
Variable Name Description E_SS_AF_ACC_IIRH Statistical value of IIRH. E_SS_AF_ACC_IIRL Statistical value of IIRL. E_SS_AF_ACC_SBLV Statistical value of SBLV. E_SS_AF_ACC_SBLH Statistical value of SBLH. E_SS_AF_ACC_LUMA Statistical value of LUMA. E_SS_AF_ACC_MAX The maximum value in the enum list of statistical values. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_IQ_CaliItem Structure¶
Enum Structure¶
-
Description
The enum structure of calibration item.
-
Definition
typedef enum
{
E_SS_CALI_ITEM_AWB = 0,
E_SS_CALI_ITEM_OBC = 1,
E_SS_CALI_ITEM_SDC = 2,
E_SS_CALI_ITEM_ALSC = 3,
E_SS_CALI_ITEM_LSC = 4,
E_SS_CALI_ITEM_AWB_EX = 5,
E_SS_CALI_ITEM_FPN = 6,
E_SS_CALI_ITEM_NE = 7,
E_SS_CALI_ITEM_MAX,
} MI_ISP_IQ_CaliItem_e;
-
Name
Variable Name Description E_SS_CALI_ITEM_AWB Calibration of AWB compensation (not supported by SOUFFLE). E_SS_CALI_ITEM_OBC Calibration of optical black compensation. E_SS_CALI_ITEM_SDC Calibration of static defective pixel compensation. E_SS_CALI_ITEM_ALSC Calibration of lens compensation. E_SS_CALI_ITEM_LSC Calibration of lens compensation. E_SS_CALI_ITEM_AWB_EX Calibration of AWB compensation (the only mode supported by SOUFFLE). E_SS_CALI_ITEM_FPN Fixed Pattern Noise compensation calibration. E_SS_CALI_ITEM_NE 3DNR noise type analysis compensation. E_SS_CALI_ITEM_MAX Determine the maximum value in the enum list of calibration item. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_ApiCmdLoadCaliData(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CaliItem_e eCaliItem, char *filepath);
MI_ISP_IQ_VersionInfo Structure¶
Type Structure¶
-
Description
The type structure to get ISP IQ version number.
-
Definition
typedef struct MI_ISP_IQ_VersionInfoType_s
{
MI_ISP_IQ_VersionInfoParam_t stParaAPI;
} MI_ISP_IQ_VersionInfoType_t;
-
Name
Variable Name Description stParaAPI The type structure to get ISP IQ version number. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_VersionInfoType_t *data);
MI_S32 MI_ISP_IQ_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_VersionInfoType_t *data);
Parameter Structure¶
-
Description
The parameter structure to get ISP IQ version number.
-
Definition
typedef struct MI_ISP_IQ_VersionInfoParam_s
{
MI_U32 u32Vendor;
MI_U32 u32Major;
MI_U32 u32Minor;
} MI_ISP_IQ_VersionInfoParam_t;
-
Name
Variable Name Description u32Vendor ISP IQ Vendor version number, get and set info. u32Major ISP IQ Major version number, get info only u32Minor ISP IQ Minor version number, get info only. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_IQ_ParamInitInfo Structure¶
Type Structure¶
-
Description
The type structure to get the ready status upon ISP initialization.
-
Definition
typedef struct MI_ISP_IQ_ParamInitInfoType_s
{
MI_ISP_IQ_ParamInitInfoParam_t stParaAPI;
} MI_ISP_IQ_ParamInitInfoType_t;
-
Name
Variable Name Description stParaAPI The type structure to get the ready status upon ISP initialization. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_GetParaInitStatus(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ParamInitInfoType_t *data);
Parameter Structure¶
-
Description
The parameter structure to get the ready status upon ISP initialization.
-
Definition
typedef struct MI_ISP_IQ_ParamInitInfoParam_s
{
MI_ISP_IQ_Bool_e bFlag;
} MI_ISP_IQ_ParamInitInfoParam_t;
-
Name
Variable Name Description bFlag The Boolean value to get ISP status upon completing initialization.
To disable, set E_SS_IQ_FALSE = 0.
To enable, set E_SS_IQ_TRUE = 1. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_IQ_IntpLut Structure¶
Type Structure¶
-
Description
Parameter data setup table with point interpolation function. This function can be used to set up target screen brightness that varies with ambient brightness (X-axis for BV and Y-axis for target screen brightness), or floating range of target screen brightness that varies with ambient brightness (X-axis for BV and Y-axis for the floating range of target screen brightness).
-
Definition
typedef struct
{
MI_U16 u16NumOfPoints;
MI_S32 s32Y[INTP_LUT_NUM];
MI_S32 s32X[INTP_LUT_NUM];
} MI_ISP_IQ_IntpLut_t;
-
Name
Variable Name Description u16NumOfPoints The actual number of effective points of data in the table. A maximum of 16 points are supported, that is, 16 entries of X-axis and Y-axis data can be input. u32Y[INTP_LUT_NUM] Y-axis parameter corresponding to each point. For points not used, set the parameter to 0. INTP_LUT_NUM = 16. u32X[INTP_LUT_NUM] X-axis parameter corresponding to each point. For points not used, set the parameter to 0. INTP_LUT_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
MI_S32 MI_ISP_IQ_GetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
MI_S32 MI_ISP_IQ_SetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
MI_S32 MI_ISP_IQ_GetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
MI_ISP_IQ_ColorToGray Structure¶
Type Structure¶
-
Description
The type structure to set color to grayscale image conversion.
-
Definition
typedef struct MI_ISP_IQ_ColorToGrayType_s
{
MI_ISP_IQ_Bool_e bEnable;
} MI_ISP_IQ_ColorToGrayType_t;
-
Name
Variable Name Description bEnable The Boolean value to set color to grayscale image conversion.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetColorToGray(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorToGrayType_t *data);
MI_S32 MI_ISP_IQ_GetColorToGray(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorToGrayType_t *data);
MI_ISP_IQ_Contrast Structure¶
Type Structure¶
-
Description
The type structure to set contrast.
-
Definition
typedef struct MI_ISP_IQ_ContrastType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_ContrastAutoAttr_t stAuto;
MI_ISP_IQ_ContrastManualAttr_t stManual;
} MI_ISP_IQ_ContrastType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of contrast.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of contrast.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set contrast. stManual The attribute structure of manual mode to set contrast. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetContrast(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ContrastType_t *data);
MI_S32 MI_ISP_IQ_GetContrast(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ContrastType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set contrast.
-
Definition
typedef struct MI_ISP_IQ_ContrastAutoAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_ContrastAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set contrast.
-
Definition
typedef struct MI_ISP_IQ_ContrastManualAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI;
} MI_ISP_IQ_ContrastManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set contrast, brightness and lightness.
-
Definition
typedef struct MI_ISP_IQ_LevelBaseParam_s
{
MI_U32 u32Lev;
} MI_ISP_IQ_LevelBaseParam_t;
-
Name
Variable Name Description u32Lev The variable value of strength for contrast, brightness, and lightness. Parameter range: 0 ~ 100. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Brightness Structure¶
Type Structure¶
-
Description
The type structure to set brightness.
-
Definition
typedef struct MI_ISP_IQ_BrightnessType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_BrightnessAutoAttr_t stAuto;
MI_ISP_IQ_BrightnessManualAttr_t stManual;
} MI_ISP_IQ_BrightnessType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of brightness.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of brightness.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set brightness. stManual The attribute structure of manual mode to set brightness. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetBrightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_BrightnessType_t *data);
MI_S32 MI_ISP_IQ_GetBrightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_BrightnessType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set brightness.
-
Definition
typedef struct MI_ISP_IQ_BrightnessAutoAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_BrightnessAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set brightness.
-
Definition
typedef struct MI_ISP_IQ_BrightnessManualAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI;
} MI_ISP_IQ_BrightnessManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Lightness Structure¶
Type Structure¶
-
Description
The type structure to set lightness.
-
Definition
typedef struct MI_ISP_IQ_LightnessType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_LightnessAutoAttr_t stAuto;
MI_ISP_IQ_LightnessManualAttr_t stManual;
} MI_ISP_IQ_LightnessType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of lightness.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of lightness.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set lightness. stManual The attribute structure of manual mode to set lightness. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetLightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LightnessType_t *data);
MI_S32 MI_ISP_IQ_GetLightness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LightnessType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set lightness.
-
Definition
typedef struct MI_ISP_IQ_LightnessAutoAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_LightnessAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set lightness.
-
Definition
typedef struct MI_ISP_IQ_LightnessManualAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI;
} MI_ISP_IQ_LightnessManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_RgbGamma Structure¶
Type Structure¶
-
Description
The type structure to set RGB Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_RgbGammaType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_RgbGammaAutoAttr_t stAuto;
MI_ISP_IQ_RgbGammaManualAttr_t stManual;
} MI_ISP_IQ_RgbGammaType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of RGB Gamma curve.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of RGB Gamma curve.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set RGB Gamma curve. stManual The attribute structure of manual mode to set RGB Gamma curve. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetRgbGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbGammaType_t *data);
MI_S32 MI_ISP_IQ_GetRgbGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbGammaType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set RGB Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_RgbGammaAutoAttr_s
{
MI_ISP_IQ_RgbGammaParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_RgbGammaAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set RGB Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_RgbGammaManualAttr_s
{
MI_ISP_IQ_RgbGammaParam_t stParaAPI;
} MI_ISP_IQ_RgbGammaManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set RGB Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_RgbGammaParam_s
{
MI_U16 u16LutR[RGBGAMMA_NUM];
MI_U16 u16LutG[RGBGAMMA_NUM];
MI_U16 u16LutB[RGBGAMMA_NUM];
} MI_ISP_IQ_RgbGammaParam_t;
-
Name
Variable Name Description u16LutR[RGBGAMMA_NUM] R channel component. Parameter range: 0 ~ 1023. RGBGAMMA_NUM = 256. u16LutG[RGBGAMMA_NUM] G channel component. Parameter range: 0 ~ 1023. RGBGAMMA_NUM = 256. u16LutB[RGBGAMMA_NUM] B channel component. Parameter range: 0 ~ 1023. RGBGAMMA_NUM = 256. -
Note
Gamma setting on three channels is supported. We suggest setting the same value to the three channels, as shown in Figure 3.

-
Related Structure Type and Function
N/A.
MI_ISP_IQ_YuvGamma Structure¶
Type Structure¶
-
Description
The type structure to set YUV Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_YuvGammaType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_YuvGammaAutoAttr_t stAuto;
MI_ISP_IQ_YuvGammaManualAttr_t stManual;
} MI_ISP_IQ_YuvGammaType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of YUV Gamma curve.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of YUV Gamma curve.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set YUV Gamma curve. stManual The attribute structure of manual mode to set YUV Gamma curve. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetYuvGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
MI_S32 MI_ISP_IQ_GetYuvGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set YUV Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_YuvGammaAutoAttr_s
{
MI_ISP_IQ_YuvGammaParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_YuvGammaAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set YUV Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_YuvGammaManualAttr_s
{
MI_ISP_IQ_YuvGammaParam_t stParaAPI;
} MI_ISP_IQ_YuvGammaManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set YUV Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_YuvGammaParam_s
{
MI_U16 u16LutY[YUVGAMMA_Y_NUM];
MI_S16 s16LutU[YUVGAMMA_U_NUM];
MI_S16 s16LutV[YUVGAMMA_V_NUM];
} MI_ISP_IQ_YuvGammaParam_t;
-
Name
Variable Name Description u16LutY[YUVGAMMA_Y_NUM] Y channel component. Parameter range: 0 ~ 1023.
YUVGAMMA_Y_NUM = 256s16LutU[YUVGAMMA_U_NUM] U channel component. Parameter range: 0 ~ 511.
YUVGAMMA_U_NUM = 128s16LutV[YUVGAMMA_V_NUM] V channel component. Parameter range: 0 ~ 511.
YUVGAMMA_V_NUM = 128 -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_AdaptiveGamma Structure¶
Type Structure¶
-
Description
The type structure to set Adaptive Gamma curve.
-
Definition
typedef struct MI_ISP_IQ_AdaptiveGammaType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U16 u16BTGamma[ADAPTIVE_GAMMA_NUM];
MI_U16 u16DTGamma[ADAPTIVE_GAMMA_NUM];
} MI_ISP_IQ_AdaptiveGammaType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Adaptive Gamma curve.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16BTGamma[ADAPTIVE_GAMMA_NUM] Bright Tone Gamma curve; if GMBlendRatio in StrategyExInfo is lower than 512, BTGamma and normal Gamma will be blended according to GMBlendRatio. ADAPTIVE_GAMMA_NUM = 256. u16DTGamma[ADAPTIVE_GAMMA_NUM] Dark Tone Gamma curve; if GMBlendRatio in StrategyExInfo is higher than 512, DTGamma and normal Gamma will be blended according to GMBlendRatio. ADAPTIVE_GAMMA_NUM = 256. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAdaptiveGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AdaptiveGammaType_t *data);
MI_S32 MI_ISP_IQ_GetAdaptiveGamma(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AdaptiveGammaType_t *data);
MI_ISP_IQ_Saturation Structure¶
Type Structure¶
-
Description
The type structure to set saturation.
-
Definition
typedef struct MI_ISP_IQ_SaturationType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_SaturationAutoAttr_t stAuto;
MI_ISP_IQ_SaturationManualAttr_t stManual;
} MI_ISP_IQ_SaturationType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of saturation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of saturation.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set saturation. stManual The attribute structure of manual mode to set saturation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetSaturation(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
MI_S32 MI_ISP_IQ_GetSaturation(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_YuvGammaType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set saturation.
-
Definition
typedef struct MI_ISP_IQ_SaturationAutoAttr_s
{
MI_ISP_IQ_SaturationParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_SaturationAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set saturation.
-
Definition
typedef struct MI_ISP_IQ_SaturationManualAttr_s
{
MI_ISP_IQ_SaturationParam_t stParaAPI;
} MI_ISP_IQ_SaturationManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set saturation.
-
Definition
typedef struct MI_ISP_IQ_SaturationParam_s
{
MI_U8 u8SatAllStr;
MI_U8 u8SatByYSFTAdv[SAT_LUT_X_NUM];
MI_U8 u8SatByYLUTAdv[SAT_LUT_Y_NUM];
MI_U8 u8SatBySSFTAdv[SAT_LUT_X_NUM];
MI_U8 u8SatBySLUTAdv[SAT_LUT_Y_NUM];
MI_U8 u8SatCoring;
} MI_ISP_IQ_SaturationParam_t;
-
Name
Variable Name Description u8SatAllStr The value of global saturation strength.
Parameter range: 0 ~ 127 (32 = 1x).u8SatByYSFTAdv[SAT_LUT_X_NUM] Adjust the strength of saturation in bright interval.
Parameter range: 0 ~ 8.
SAT_LUT_X_NUM = 5.u8SatByYLUTAdv[SAT_LUT_Y_NUM] Adjust the strength of saturation based on bright interval.
Parameter range: 0 ~ 128.
SAT_LUT_Y_NUM = 6.u8SatBySSFTAdv[SAT_LUT_X_NUM] Adjust the strength of saturation in Chroma interval.
Parameter range: 0 ~ 8.
SAT_LUT_X_NUM = 5.u8SatBySLUTAdv[SAT_LUT_Y_NUM] Adjust the strength of saturation based on Chroma interval.
Parameter range: 0 ~ 128.
SAT_LUT_Y_NUM = 6.u8SatCoring Reduce Chroma by one. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_RgbMatrix Structure¶
Type Structure¶
-
Description
The type structure to set RGB color correction matrix.
-
Definition
typedef struct MI_ISP_IQ_RgbMatrixType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_RgbMatrixAutoAttr_t stAuto;
MI_ISP_IQ_RgbMatrixManualAttr_t stManual;
} MI_ISP_IQ_RgbMatrixType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of RGB color correction matrix.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of RGB color correction matrix.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set RGB color correction matrix. stManual The attribute structure of manual mode to set RGB color correction matrix. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetRgbMatrix(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbMatrixType_t *data);
MI_S32 MI_ISP_IQ_GetRgbMatrix(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbMatrixType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set RGB color correction matrix.
-
Definition
typedef struct MI_ISP_IQ_RgbMatrixAutoAttr_s
{
MI_ISP_IQ_Bool_e bISOActEn;
MI_ISP_IQ_RgbMatrixParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_RgbMatrixAutoAttr_t;
-
Name
Variable Name Description bISOActEn Set Boolean value for the ISO function.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set RGB color correction matrix.
-
Definition
typedef struct MI_ISP_IQ_RgbMatrixManualAttr_s
{
MI_U16 u16CCM[CCM_COEFF_SUM_INFO_NUM];
MI_U8 u8CCMSat;
} MI_ISP_IQ_RgbMatrixManualAttr_t;
-
Name
Variable Name Description u16CCM[CCM_COEFF_SUM_INFO_NUM] The parameter value of color correction matrix. Parameter range: 0 ~ 8191.
CCM_COEFF_SUM_INFO_NUM = 12
u16CCM[3] = mod(u16CCM[0]+u16CCM[1]+u16CCM[2], 1024)
u16CCM[7] = mod(u16CCM[4]+u16CCM[5]+u16CCM[6], 1024)
u16CCM[11] = mod(u16CCM[8]+u16CCM[9]+u16CCM[10], 1024)u8CCMSat Adjust the strength of saturation through color correction matrix. Parameter range: 0 ~ 100. -
Note
u8CCMSat = 0 represents the value of color correction unit matrix.
u8CCMSat = 100 represents the value of color correction matrix.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set RGB color correction matrix.
-
Definition
typedef struct MI_ISP_IQ_RgbMatrixParam_s
{
MI_U16 u16CCTthr;
MI_U16 u16CCM[CCM_COEFF_SUM_INFO_NUM];
MI_U8 u8CCMSat;
} MI_ISP_IQ_RgbMatrixParam_t;
-
Name
Variable Name Description u16CCTthr The representative color temperature of certain color correction matrix (CCM). Parameter range: 0 ~ 10000. u16CCM[CCM_COEFF_SUM_INFO_NUM] The value of color correction matrix parameter. Parameter range: 0 ~ 8191.
CCM_COEFF_SUM_INFO_NUM = 12.
u16CCM[3] = mod(u16CCM[0]+u16CCM[1]+u16CCM[2], 1024).
u16CCM[7] = mod(u16CCM[4]+u16CCM[5]+u16CCM[6], 1024).
u16CCM[11] = mod(u16CCM[8]+u16CCM[9]+u16CCM[10], 1024).u8CCMSat Adjust the strength of saturation through color correction matrix. Parameter range: 0 ~ 100. -
Note
u8CCMSat = 0 represents the value of color correction unit matrix.
u8CCMSat = 100 represents the value of color correction matrix.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_CcmInfo Structure¶
Type Structure¶
-
Description
The type structure to set the color correction matrix of corrent color temperature.
-
Definition
typedef struct MI_ISP_IQ_CcmInfoType_s
{
MI_U16 u16CCM[CCM_COEFF_SUM_INFO_NUM]; //0 ~ 8191(1024 = 1x)
MI_U16 u16CCT;
} MI_ISP_IQ_CcmInfoType_t;
-
Name
Variable Name Description u16CCM[CCM_COEFF_SUM_INFO_NUM] Parameter value of color correction matrix, including the sum of CCM coefficients. Parameter range: 0 ~ 8191.
CCM_COEFF_SUM_INFO_NUM = 12
u16CCM[0 ~ 3] -> CCM00, CCM01, CCM02, CCM_Rsum
u16CCM[4 ~ 7] -> CCM10, CCM11, CCM12, CCM_Gsum
u16CCM[8 ~ 11] -> CCM20, CCM21, CCM22, CCM_Bsumu16CCT Get current color temperature value. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_QueryCcmInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CcmInfoType_t *data);
MI_ISP_IQ_FalseColor Structure¶
Type Structure¶
-
Description
The type structure to set false color suppression.
-
Definition
typedef struct MI_ISP_IQ_FalseColorType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_Bool_e bDbgEn;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_FalseColorAutoAttr_t stAuto;
MI_ISP_IQ_FalseColorManualAttr_t stManual;
} MI_ISP_IQ_FalseColorType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of false color suppression.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.bDbgEn Debug mode. Parameter range: 0 ~ 1. The brighter the image, the stronger the false color suppression. This debug mode will come into conflict with the one of Demosaic, and the choice between the two will be determined by the last API call. enOpType Set working mode of false color suppression.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set false color suppression. stManual The attribute structure of manual mode to set false color suppression. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetFalseColor(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_FalseColorType_t *data);
MI_S32 MI_ISP_IQ_GetFalseColor(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_FalseColorType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set false color suppression.
-
Definition
typedef struct MI_ISP_IQ_FalseColorAutoAttr_s
{
MI_ISP_IQ_FalseColorParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_FalseColorAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set false color suppression.
-
Definition
typedef struct MI_ISP_IQ_FalseColorManualAttr_s
{
MI_ISP_IQ_FalseColorParam_t stParaAPI;
} MI_ISP_IQ_FalseColorManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set false color suppression.
-
Definition
typedef struct MI_ISP_IQ_FalseColorParam_s
{
MI_U8 u8ColorSpaceSel;
MI_U8 u8Preserve;
MI_U8 u8Strength;
} MI_ISP_IQ_FalseColorParam_t;
-
Name
Variable Name Description u8ColorSpaceSel The mode of false color suppression. Parameter range: 0 ~ 1. 0 means to balance in RGB domain and align with the value of G channel, while 1 means to balance in YUV domain and does not affect brightness. u8Preserve The strength of edge protection. Parameter range: 0 ~ 7. The greater the value, the less likely edge region will be judged as moire region, and the weaker the false color suppression. u8Strength The global strength of false color suppression. Parameter range: 0 ~ 31. The greater the value, the more likely saturation in moire region will be reduced, and the greater the false color suppression. -
Related Structure Type and Function
N/A.
MI_ISP_IQ_Nr3d Structure¶
Type Structure¶
-
Description
The type structure to set 3D noise reduction.
-
Definition
typedef struct MI_ISP_IQ_Nr3dType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_Bool_e bDbgEn;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_Nr3dAutoAttr_t stAuto;
MI_ISP_IQ_Nr3dManualAttr_t stManual;
} MI_ISP_IQ_Nr3dType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of 3D noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.bDbgEn Debug mode. Parameter range: 0 ~ 1. The closer to black the image color, the more likely the image is judged as motion. You must disable AE before using this debug mode. enOpType Set working mode of 3D noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set 3D noise reduction. stManual The attribute structure of manual mode to set 3D noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNr3d(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dType_t *data);
MI_S32 MI_ISP_IQ_GetNr3d(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_Nr3dType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set 3D noise reduction.
-
Definition
typedef struct MI_ISP_IQ_Nr3dAutoAttr_s
{
MI_ISP_IQ_Nr3dParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_Nr3dAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set 3D noise reduction.
-
Definition
typedef struct MI_ISP_IQ_Nr3dManualAttr_s
{
MI_ISP_IQ_Nr3dParam_t stParaAPI;
} MI_ISP_IQ_Nr3dManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set 3D noise reduction.
-
Definition
typedef struct MI_ISP_IQ_Nr3dParam_s
{
MI_U8 u8TfStrY;
MI_U8 u8TfStrC;
MI_U8 u8MdThd;
MI_U16 u16MdGain;
MI_U16 u16MotEdgeRefineStr;
MI_U8 u8MdThdByY[NR3D_BY_Y_NUM];
MI_U8 u8MdGainByY[NR3D_BY_Y_NUM];
MI_U8 u8MdThdByMot[NR3D_BY_MOT];
MI_U8 u8MdGainByMot[NR3D_BY_Y_MOT];
MI_U16 u16M2SLut[NR3D_BY_MOT_NUM];
MI_U8 u8M2SHistDelayByDiff[NR3D_BY_MOT_NUM];
MI_U8 u8ShdMotSensitivity[NR3D_BY_MOT_NUM];
MI_U8 u8TfLut[15];
MI_U8 u8MotShpBlendLut[NR3D_BY_MOT_NUM];
} MI_ISP_IQ_Nr3dParam_t;
-
Name
Variable Name Description u8TfStrY Control the strength of temporal denoise against Y noise. Parameter range: 0 ~ 127. The greater the value, the stronger the strength of denoise. u8TfStrC Control the strength of temporal denoise against color noise. Parameter range: 0 ~ 127. The greater the value, the stronger the strength of denoise. u8MdThd Control the threshold value of motion detection. Values lower than this threshold will be judged as still objects. The higher the threshold, the stronger the 3D noise reduction. Parameter range: 0 ~ 255. u16MdGain Control the gain of motion detection. The greater the gain, the easier an object will be judged as still, and the stronger the 3D noise reduction. Parameter range: 0 ~ 10230. u16MotEdgeRefineStr Control the strength to refrain the front edge of moving objects from being judged as being in motion area. Parameter range: 0 ~ 1023. The larger the strength, the less likely a moving object will be judged as being in motion area. Note that ghost images may occur. u8MdThdByY[NR3D_BY_Y_NUM] Control the threshold value of motion detection according to brightness (Y). The greater the value, the stronger the 3D noise reduction. Parameter range: 0 ~ 255. NR3D_BY_Y_NUM = 16. u8MdGainByY[NR3D_BY_Y_NUM] Control the gain of motion detection according to brightness (Y). The greater the value, the stronger the 3D noise reduction. Parameter range: 0 ~ 255. NR3D_BY_Y_NUM = 16. u8MdThdByMot[NR3D_BY_MOT_NUM] Control the threshold value of motion according to motion. The horizontal axis, from left to right, represents motion to stillness. The greater the value, the stronger the strength of 3DNR. Parameter range: 0 ~ 63. u8MdGainByMot[NR3D_BY_Y_MOT_NUM] Control the extent of motion according to motion. The horizontal axis, from left to right, represents motion to stillness. The greater the value, the stronger the strength of 3DNR. Parameter range: 0 ~ 48. u16M2SLut[NR3D_BY_MOT_NUM] Control the convergence speed of 3D noise reduction from motion to stillness. The smaller the value, the slower the convergence speed. This parameter can be used to prevent ghost image. Parameter range: 0 ~ 4095. NR3D_BY_MOT_NUM = 16. u8M2SHistDelayByDiff[NR3D_BY_MOT_NUM] Delay time of motion information. Parameter range: 0 ~ 7. The horizontal axis represents the difference in motion information between the current frame and the previous frame, while the vertical axis represents the extra delay time of motion information transmitted to the backend. The greater the value, the longer the delay. By delaying the motion information of stillness, the motion information of post-motion area will be maintained longer, so that the 2D noise reduction in the backend is expected to be maintained longer with stronger strength - which is often applied to motion area - before 3D noise reduction starts to converge. u8ShdMotSensitivity[NR3D_BY_MOT_NUM] Adjust the sensitivity of judging shadow as motion. The larger the value, the more likely shadow will be judged as motion, and the weaker 3DNR will be. Parameter range: 0 ~ 15. u8TfLut[15] Control the strength of 3D noise reduction according to the extent of motion. Parameter range: 0 ~ 255. NR3D_BY_MOT_NUM = 16. u8MotShpBlendLut[NR3D_BY_MOT_NUM] Control the strength of 2D noise reduction according to the extent of motion. Parameter range: 0 ~ 64. NR3D_BY_MOT_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_NrDespike Structure¶
Type Structure¶
-
Description
The type structure to set DeSpike noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrDespikeType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_NrDespikeAutoAttr_t stAuto;
MI_ISP_IQ_NrDespikeManualAttr_t stManual;
} MI_ISP_IQ_NrDespikeType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of DeSpike noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of DeSpike noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set DeSpike noise reduction. stManual The attribute structure of manual mode to set DeSpike noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNrDeSpike(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrDespikeType_t *data);
MI_S32 MI_ISP_IQ_GetNrDeSpike(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrDespikeType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set DeSpike noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrDespikeAutoAttr_s
{
MI_ISP_IQ_NrDespikeParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_NrDespikeAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set DeSpike noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrDespikeManualAttr_s
{
MI_ISP_IQ_NrDespikeParam_t stParaAPI;
} MI_ISP_IQ_NrDespikeManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set DeSpike noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrDespikeParam_s
{
MI_U8 u8BlendRatio;
MI_U8 u8StrengthCenterNeighbor;
MI_U8 u8StrengthMeanStd;
MI_U8 u8StrengthCornerCross;
MI_U8 u8DiffGainMeanStd;
MI_U8 u8DiffGainCenterNeighbor;
MI_U8 u8DiffThdCornerCross;
MI_U16 u16BlendLut[NRDESPIKE_BLEND_LUT_NUM];
MI_U8 u8StrengthByY[NRDESPIKE_BY_Y_NUM];
} MI_ISP_IQ_NrDespikeParam_t;
-
Name
Variable Name Description u8BlendRatio Adjust the global strength of NRDeSpike. The greater the value, the stronger the denoise effect. Parameter range: 0 ~ 15. u8StrengthMeanStd Adjust the strength of the average difference between the center point and neighboring endpoints. Parameter range: 0 ~ 5. u8StrengthCenterNeighbor Adjust the strength of the average difference between the center point and the cross or diagonal cross endpoint. Parameter range: 0 ~ 5. u8StrengthCornerCross Adjust the strength of the diagonal cross and cross endpoint mean subtraction. Parameter range: 0 ~ 5. u8DiffGainMeanStd Adjust the gain to be multiplied by the average difference between the center point and neighboring endpoints. Parameter range: 0 ~ 31. u8DiffThdCenterNeighbor Adjust the threshold value of the average difference between the center point and the cross or diagonal cross endpoint. Parameter range: 0 ~ 255. u8DiffThdCornerCross Adjust the threshold value of the diagonal cross and cross endpoint mean subtraction. Parameter range: 0 ~ 255. u16BlendLut[NRDESPIKE_BLEND_LUT_NUM] Select the blending ratio of median/mean according to brightness (Y). The greater the value, the closer the blending ratio will lean toward the median setting; the smaller the value, the closer to the mean setting. Parameter range: 0 ~ 2047. NRDESPIKE_BLEND_LUT_NUM = 5. u8StrengthByY[NRDESPIKE_BY_Y_NUM] Adjust strength by brightness (Y). 64 means no adjustment. The smaller the value, the weaker the strength. Parameter range: 0 ~ 64. NRDESPIKE_BY_Y_NUM = 16. -
Note
-
The greater the difference between the center point and the neighboring endpoints, the easier the center point will be erased.
-
The smaller the setting of DiffGain and the greater the setting of Strength, the easier the center point will be erased.
-
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Sharpness Structure¶
Type Structure¶
-
Description
The type structure to set sharpness.
-
Definition
typedef struct MI_ISP_IQ_SharpnessType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_Bool_e bDbgEn;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_SharpnessAutoAttr_t stAuto;
MI_ISP_IQ_SharpnessManualAttr_t stManual;
} MI_ISP_IQ_SharpnessType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of sharpness.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.bDbgEn Debug mode. Parameter range: 0 ~ 1. Grey indicates that no edge is applied, while white/black represents white/black edges. enOpType Set working mode of sharpness.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set sharpness. stManual The attribute structure of manual mode to set sharpness. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetSharpness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessType_t *data);
MI_S32 MI_ISP_IQ_GetSharpness(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set sharpness.
-
Definition
typedef struct MI_ISP_IQ_SharpnessAutoAttr_s
{
MI_ISP_IQ_SharpnessParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_SharpnessAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set sharpness.
-
Definition
typedef struct MI_ISP_IQ_SharpnessManualAttr_s
{
MI_ISP_IQ_SharpnessParam_t stParaAPI;
} MI_ISP_IQ_SharpnessManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set sharpness.
-
Definition
typedef struct MI_ISP_IQ_SharpnessParam_s
{
MI_U8 u8SharpnessUD[SHARPNESS_FREQ_NUM];
MI_U8 u8SharpnessD[SHARPNESS_FREQ_NUM];
MI_U8 u8StateByGain[SHARPNESS_DA_STATE_NUM];
MI_U8 u8StateByOffset[SHARPNESS_DA_STATE_NUM];
MI_U8 u8StdvByY[SHARPNESS_BY_Y_NUM];
MI_U8 u8StdvByMot[SHARPNESS_BY_MOT_NUM];
MI_U16 u16UDWeiByState[SHARPNESS_FREQ_WEI_NUM];
MI_U16 u16DWeiByState[SHARPNESS_FREQ_WEI_NUM];
MI_U16 u16UDWeiByMot[SHARPNESS_BY_MOT_NUM];
MI_U16 u16DWeiByMot[SHARPNESS_BY_MOT_NUM];
MI_U8 u8UDGainByStd[SHARPNESS_LUT_Y_NUM];
MI_U8 u8DGainByStd[SHARPNESS_LUT_Y_NUM];
MI_U16 u16UDEdgeKillLutUp[SHARPNESS_LUT_Y_NUM];
MI_U16 u16UDEdgeKillLutDown[SHARPNESS_LUT_Y_NUM];
MI_U16 u16DEdgeKillLutUp[SHARPNESS_LUT_Y_NUM];
MI_U16 u16DEdgeKillLutDown[SHARPNESS_LUT_Y_NUM];
MI_U16 u16DRatioByState[SHARPNESS_BY_STATE_NUM];
MI_U16 u16EdgeGain;
MI_U8 u8GainByStd[SHARPNESS_LUT_Y_NUM];
MI_U8 u8GainByStdSft[SHARPNESS_LUT_X_NUM];
MI_U8 u8CorByY[SHARPNESS_BY_Y_NUM];
MI_U8 u8SclByY[SHARPNESS_BY_Y_NUM];
MI_U8 u8GainByMot[SHARPNESS_BY_MOT_NUM];
MI_U8 u8DerRmNRCnt[SHARPNESS_DER_Y_NUM];
MI_U8 u8DerOverShootGain[SHARPNESS_LUT_Y_NUM];
MI_U8 u8DerUnderShootGain[SHARPNESS_LUT_Y_NUM];
MI_U8 u8DerGainByMot[SHARPNESS_BY_MOT_NUM];
MI_U16 u16DerOverShootLimitByY[SHARPNESS_BY_Y_NUM];
MI_U16 u16DerUnderShootLimitByY[SHARPNESS_BY_Y_NUM];
MI_U8 u8StrengthByHue[SHARPNESS_BY_HUE_NUM];
MI_U8 u8StrengthBySat[SHARPNESS_BY_SAT_NUM];
MI_U8 u8BranchStrength;
MI_U8 u8BranchGainByStd[SHARPNESS_LUT_Y_NUM];
MI_ISP_IQ_Bool_e bROIEn;
MI_U8 u8ROIStr[SHARPNESSEX_ROI_NUM];
} MI_ISP_IQ_SharpnessParam_t;
-
Name
Variable Name Description u8SharpnessUD[SHARPNESS_FREQ_NUM] Strength of non-directional edge, which is used to enhance the sharpness of fine texture and detail such as hair and meadow. Parameter range: 0 ~ 127. The horizontal axis, from left to right, represents high, medium, medium-low frequencies, while the vertical axis represents the gain of non-directional edge strength. The greater the value, the stronger the edge. SHARPNESS_FREQ_NUM = 3. u8SharpnessD[SHARPNESS_FREQ_NUM] Strength of directional edge, which is used to enhance the sharpness of the edge of image. Excessive enhancement will, however, result in jaggedness. Parameter range : 0 ~ 127. The horizontal axis, from left to right, represents high, medium, medium-low frequencies, while the vertical axis represents the gain of directional edge strength. The larger the value, the stronger the edge. SHARPNESS_FREQ_NUM = 3. u8StateByGain[SHARPNESS_DA_STATE_NUM] Adjust filter based on gain so as to obtain edge value. The smaller the gain, the more complex/smooth areas will be preserved. Parameter range: 0 ~ 31. The horizontal axis represents the edge value obtained by the filter. The smaller the value, the more easily an area will be judged as complex/smooth; the greater the value, the more easily an area will be judged as simple edge. Index 0: directional/non-directional edge status; Index 1: frequency-based edge status. SHARPNESS_DA_STATE_NUM = 2. [Explanation] "state" refers to the score of edge status as obtained by the calculation using StateByGain and StateByOffset. This score is used to determine simple edge and complex area. The smaller the score, the more easily an area will be determined as simple edge. u8StateByOffset[SHARPNESS_DA_STATE_NUM] Adjust filter based on offset so as to obtain edge value. The greater the offset, the more complex/smooth areas will be preserved. Parameter range: 0 ~ 255. The horizontal axis represents the edge value obtained by the filter. The smaller the value, the more easily an area will be judged as complex/smooth; the greater the value, the more easily an area will be judged as simple edge. Index 0: directional/non-directional edge status; Index 1: frequency-based edge status. SHARPNESS_DA_STATE_NUM = 2. u8StdvByY[SHARPNESS_BY_Y_NUM] Adjust the gain of standard deviation based on brightness (Y). Parameter range: 0 ~ 255. The horizontal axis represents brightness, and the closer to the right end, the brighter. The vertical axis represents the gain of standard deviation (64 = 1x) to be adjusted. The larger the value, the larger the standard deviation. SHARPNESS_BY_Y_NUM = 9. u8StdvByMot[SHARPNESS_BY_MOT_NUM] Adjust the gain of standard deviation based on motion. Parameter range: 0 ~ 63. The horizontal axis represents motion, and the closer to the right end, the closer to stillness. The vertical axis represents the gain of standard deviation (16 = 1x) to be adjusted. The larger the value, the larger the standard deviation. SHARPNESS_BY_MOT_NUM = 16. u16UDWeiByState[SHARPNESS_FREQ_WEI_NUM] Adjust the blending ratio of medium-low/medium/high frequency for non-directional edges based on state. Parameter range: 0 ~ 256. The horizontal axis represents, from left to right, still edges (Index 0), still texture details (Index 1), motion edges (Index 2), motion texture details (Index 3). The vertical axis represents the weighting values of blending ratio: when the weighting value is 0, more medium-low edges will be taken into the blending ratio; when the weighting value is 256, more high frequency edges will be taken into the ratio. SHARPNESS_FREQ_WEI_NUM = 4. u16DWeiByState[SHARPNESS_FREQ_WEI_NUM] Adjust the blending ratio of medium-low/medium/high frequency for directional edges based on state. Parameter range: 0 ~ 256. The horizontal axis represents, from left to right, still edges (Index 0), still texture details (Index 1), motion edges (Index 2), motion texture details (Index 3). The vertical axis represents the weighting values of blending ratio: when the weighting value is 0, more medium-low edges will be taken into the blending ratio; when the weighting value is 256, more high frequency edges will be taken into the ratio. SHARPNESS_FREQ_WEI_NUM = 4. u16UDWeiByMot[SHARPNESS_BY_MOT_NUM] Adjust non-directional weighting based on motion. Parameter range: 0 ~ 256. The horizontal axis represents, from left to right, motion to stillness, and the closer to the right end, the closer to stillness. The vertical axis represents non-directional weighting. The greater the value, the closer to still state. SHARPNESS_BY_MOT_NUM = 16. u16DWeiByMot[SHARPNESS_BY_MOT_NUM] Adjust directional weighting based on motion. Parameter range: 0 ~ 256. The horizontal axis represents, from left to right, motion to stillness, and the closer to the right end, the closer to stillness. The vertical axis represents directional weighting. The greater the value, the closer to still state. SHARPNESS_BY_MOT_NUM = 16. u8UDGainByStd[SHARPNESS_LUT_Y_NUM] Adjust non-directional gain based on standard deviation. Parameter range: 0 ~ 255. The horizontal axis represents the standard deviation processed by StdvByY and StdvByMot, and the closer to the right end, the larger the deviation. The vertical axis represents edge gain (64 = 1x). The greater the value, the stronger the edge. SHARPNESS_LUT_Y_NUM = 7. u8DGainByStd[SHARPNESS_LUT_Y_NUM] Adjust directional gain based on standard deviation. Parameter range: 0 ~ 255. The horizontal axis represents the standard deviation processed by StdvByY and StdvByMot, and the closer to the right end, the larger the deviation. The vertical axis represents edge gain (64 = 1x). The greater the value, the stronger the edge. SHARPNESS_LUT_Y_NUM = 7. u16UDEdgeKillLutUp[SHARPNESS_LUT_Y_NUM] Adjust the strength of non-directional white edge based on edge strength. Parameter range: 0 ~ 1023. The horizontal axis represents input edge, while the vertical edge represents output edge. The greater the value, the stronger the edge. SHARPNESS_LUT_Y_NUM = 7. u16UDEdgeKillLutDown[SHARPNESS_LUT_Y_NUM] Adjust the strength of non-directional black edge based on edge strength. Parameter range: 0 ~ 1023. The horizontal axis represents input edge, while the vertical edge represents output edge. The greater the value, the stronger the edge. SHARPNESS_LUT_Y_NUM = 7. u16DEdgeKillLutUp[SHARPNESS_LUT_Y_NUM] Adjust the strength of directional white edge based on edge strength. Parameter range: 0 ~ 1023. The horizontal axis represents input edge, while the vertical edge represents output edge. The greater the value, the stronger the edge. SHARPNESS_LUT_Y_NUM = 7. u16DEdgeKillLutDown[SHARPNESS_LUT_Y_NUM] Adjust the strength of directional black edge based on edge strength. Parameter range: 0 ~ 1023. The horizontal axis represents input edge, while the vertical edge represents output edge. The greater the value, the stronger the edge. SHARPNESS_LUT_Y_NUM = 7. u16DRatioByState[SHARPNESS_BY_STATE_NUM] Adjust the blending ratio of non-directional and directional edges based on state. Parameter range: 0 ~ 256. The closer to the left end of the horizontal axis , the closer the result leans toward simple edge; the closer to the right end of the horizontal axis, the closer to the complex/smooth area. The vertical axis represents the blending ratio of non-directional and directional edge. The larger the value, the closer the result leans toward directional edge. SHARPNESS_BY_STATE_NUM = 9. u16EdgeGain Adjust the overall edge gain (128 = 1x). Parameter range: 0 ~ 1023. The greater the value, the stronger the edge. u8GainByStd[SHARPNESS_LUT_Y_NUM] Adjust the overall gain based on standard deviation. Parameter range: 0 ~ 255. The horizontal axis represents the standard deviation processed by StdvByY and StdvByMot. The closer to the right end, the greater standard deviation is suggested. The vertical axis represents the edge gain (64 = 1x). The larger the value, the stronger the edge. As the standard deviation in smooth area is usually smaller, you may lower the edge for areas with smaller standard deviation to make them even smoother. You may also use it to reduce the edge of motion by lowering the first few blocks of StdvByMot, thereby enabling GainByStd to query these blocks. There are seven nodes in total, and you may adjust GainByStdSft to change the nodes on the horizontal axis if necessary. SHARPNESS_LUT_Y_NUM = 7. u8GainByStdSft[SHARPNESS_LUT_X_NUM] The node of GainByStd on the horizontal axis. Parameter range: 0 ~ 15. There are seven breakpoints. The X-axis coordinates are, from left to right: 0, 2^GainByStdSft[0], 2^GainByStdSft[0] + 2^GainByStdSft[1], 2^GainByStdSft[0] + 2^GainByStdSft[1] + 2^GainByStdSft[2], ... The Y-axis ordinates are, from bottom to top: GainByStd[0], GainByStd[1], GainByStd[2] ... If adjustment is desired, we recommend that you draw the original curve with Excel first. After that, adjust GainByStdSft and cut the interval into smaller segments for fine tuning, and find the corresponding GainByStd. Only after making sure that the effect remains the same should you make adjustment to GainByStd. SHARPNESS_LUT_X_NUM = 6. u8CorByY[SHARPNESS_BY_Y_NUM] Adjust coring based on brightness (Y). Parameter range: 0 ~ 255. The horizontal axis represents brightness. The closer to the right end, the greater brightness is suggested. The vertical axis represents the value of coring. The larger the value, the weaker the edge. SHARPNESS_BY_Y_NUM = 9. u8SclByY[SHARPNESS_BY_Y_NUM] Adjust the gain of edge based on brightness (Y). Parameter range: 0 ~ 255. The horizontal axis represents brightness. The closer to the right end, the greater brightness is suggested. The vertical axis represents the gain of edge (64 = 1x). The larger the value, the stronger the edge. SHARPNESS_BY_Y_NUM= 9. u8GainByMot[SHARPNESS_BY_MOT_NUM] Adjust the final edge gain based on motion, which is represented by the horizontal axis. The closer to the right end, the closer to stillness is suggested. The vertical axis represents the gain of edge (128 = 1x). The larger the value, the stronger the edge. Parameter range: 0 ~ 255. SHARPNESS_BY_MOT_NUM = 16. u8DerRmNRCnt[SHARPNESS_DER_Y_NUM] The number of noise points, which is caused by ringing artifact removal, to be eliminated except the minimum (Index 0) and the maximum (Index 1). Parameter range: 0 ~ 6. SHARPNESS_DER_Y_NUM = 2 u8DerOverShootGain[SHARPNESS_LUT_Y_NUM] Adjust the gain of ringing artifact removal effects for white edges. Parameter range: 0 ~ 255. The greater the value, the stronger the white edge. SHARPNESS_LUT_Y_NUM = 7. u8DerUnderShootGain[SHARPNESS_LUT_Y_NUM] Adjust the gain of ringing artifact removal effects for black edges. Parameter range: 0 ~ 255. The greater the value, the stronger the black edge. SHARPNESS_LUT_Y_NUM = 7. u8DerGainByMot[SHARPNESS_BY_MOT_NUM] Adjust the strength of ringing artifact removal for edge based on motion, which is represented by the horizontal axis. Parameter range: 0 ~ 255. The closer to the right end, the closer to stillness is suggested. The vertical axis represents the strength of ringing artifact removal (64 = 1x). The larger the value, the stronger the ringing artifact removal effects. SHARPNESS_BY_MOT_NUM = 16. u16DerOverShootLimitByY[SHARPNESS_BY_Y_NUM] Adjust the effects of ringing artifact removal based on brightness (Y), which is represented by the horizontal axis. Parameter range: 0 ~ 1023. The closer to the right end, the brighter is suggested. The vertical axis represents the strength of edge. The larger the value, the more strength will be reserved for white edges. SHARPNESS_BY_Y_NUM = 9. u16DerUnderShootLimitByY[SHARPNESS_BY_Y_NUM] Adjust the effects of ringing artifact removal based on brightness (Y), which is represented by the horizontal axis. Parameter range: 0 ~ 1023. The closer to the right end, the brighter is suggested. The vertical axis represents the strength of edge. The smaller the value, the more strength will be reserved for black edges. SHARPNESS_BY_Y_NUM = 9. u8StrengthByHue[SHARPNESS_BY_HUE_NUM] Adjust the strength of edge based on hue. Parameter range: 0 ~ 255. The horizontal axis represents hue (the same as HSV), while the vertical axis represents the edge gain (64 = 1x). The larger the value, the stronger the strength of edge. The actual effects will be affected by StrengthBySat. SHARPNESS_BY_HUE_NUM = 24. u8StrengthBySat[SHARPNESS_BY_SAT_NUM] Adjust the edge strength based on saturation. Parameter range: 0 ~ 127. If saturation is smaller than StrengthBySat[0], StrengthByHue will become ineffective, which means adjustment to the edge strength will not be affected by the hue of low saturation. If saturation is greater than StrengthBySat[1], the strength will be adjusted solely by StrengthByHue. Transition zone shows linear change. SHARPNESS_BY_SAT_NUM = 2. u8BranchStrength The strength of output sharpness, which is used for MotShpBlendLut in NR3D. Parameter range: 0 ~ 255. The edge strength: 64 = 1x. The greater the value, the stronger the edge. u8BranchGainByStd[SHARPNESS_LUT_Y_NUM] The strength of output sharpness, which is used for MotShpBlendLut in NR3D. Parameter range: 0 ~ 255. The edge strength: 64 = 1x. The greater the value, the stronger the edge.Adjust the gain based on standard deviation. Parameter range: 0 ~ 255. The horizontal axis represents the standard deviation that has been processed by StdvByY and StdvByMot. The closer to the right end, the greater deviation is suggested. The vertical axis represents edge gain (128 = 1x). The greater the value, the stronger the edge. SHARPNESS_LUT_Y_NUM = 7. bROIEn Enable ROI (region of interest) mode. Parameter range: 0 ~ 1. u8ROIStr[SHARPNESSEX_ROI_NUM] The strength of sharpness for 8 ROI (region of interest). Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_SharpnessEx Structure¶
Type Structure¶
-
Description
The type structure to set SHP_EX.
-
Definition
typedef struct MI_ISP_IQ_SharpnessExType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_Bool_e bDbgEn;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_SharpnessExAutoAttr_t stAuto;
MI_ISP_IQ_SharpnessExManualAttr_t stManual;
} MI_ISP_IQ_SharpnessExType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of SHP_EX.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.bDbgEn Debug mode. Parameter range: 0 ~ 1. Grey indicates that no edge is applied, while white/black represents white/black edges. enOpType Set working mode of SHP_EX.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set SHP_EX. stManual The attribute structure of manual mode to set SHP_EX. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetShpEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessExType_t *data);
MI_S32 MI_ISP_IQ_GetShpEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SharpnessExType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set SHP_EX.
-
Definition
typedef struct MI_ISP_IQ_SharpnessExAutoAttr_s
{
MI_ISP_IQ_SharpnessExParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_SharpnessExAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set SHP_EX.
-
Definition
typedef struct MI_ISP_IQ_SharpnessExManualAttr_s
{
MI_ISP_IQ_SharpnessExParam_t stParaAPI;
} MI_ISP_IQ_SharpnessExManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set SHP_EX.
-
Definition
typedef struct MI_ISP_IQ_SharpnessExParam_s
{
MI_U8 u8Sharpness[SHARPNESSEX_FREQ_NUM];
MI_U8 u8StateByGain;
MI_U8 u8StateByOffset;
MI_U8 u8StdvByY[SHARPNESSEX_BY_Y_NUM];
MI_U8 u8StdvByMot[SHARPNESSEX_BY_MOT_NUM];
MI_U16 u16WeiByState[SHARPNESSEX_FREQ_WEI_NUM];
MI_U16 u16WeiByMot[SHARPNESSEX_BY_MOT_NUM];
MI_U16 u16EdgeGain;
MI_U8 u8GainByStd[SHARPNESSEX_LUT_Y_NUM];
MI_U8 u8GainByStdSft[SHARPNESSEX_LUT_X_NUM];
MI_U8 u8CorByY[SHARPNESSEX_BY_Y_NUM];
MI_U8 u8SclByY[SHARPNESSEX_BY_Y_NUM];
MI_U8 u8GainByMot[SHARPNESSEX_BY_MOT_NUM];
MI_U8 u8DerOverShootGain[SHARPNESSEX_LUT_Y_NUM];
MI_U8 u8DerUnderShootGain[SHARPNESSEX_LUT_Y_NUM];
MI_U8 u8DerGainByMot[SHARPNESSEX_BY_MOT_NUM];
MI_U16 u16DerOverShootLimitByY[SHARPNESSEX_BY_Y_NUM];
MI_U16 u16DerUnderShootLimitByY[SHARPNESSEX_BY_Y_NUM];
MI_U16 u16DerUnderShootLimitByY[SHARPNESSEX_BY_Y_NUM];
MI_U16 u16EdgeKillLutUp[SHARPNESSEX_LUT_Y_NUM];
MI_U16 u16EdgeKillLutDown[SHARPNESSEX_LUT_Y_NUM];
MI_U8 u8EdgeKillLutSft[SHARPNESSEX_LUT_X_NUM];
MI_U8 u8StrengthByHue[SHARPNESSEX_BY_HUE_NUM];
MI_U8 u8StrengthBySat[SHARPNESSEX_BY_SAT_NUM];
MI_ISP_IQ_Bool_e bROIEn;
MI_U8 u8ROIStr[SHARPNESSEX_ROI_NUM];
} MI_ISP_IQ_SharpnessExParam_t;
-
Name
Variable Name Description u8Sharpness[SHARPNESSEX_FREQ_NUM] Strength of non-directional edge, which is used to enhance the sharpness of fine texture and detail such as hair and meadow. Parameter range: 0 ~ 127. The horizontal axis represents high/medium frequency, while the vertical axis represents the gain of non-directional edge. The larger the value, the stronger the edge. SHARPNESSEX_FREQ_NUM = 2. u8StateByGain Adjust filter based on gain so as to obtain edge value. The smaller the gain, the more complex/smooth areas will be preserved. Parameter range: 0 ~ 31. The horizontal axis represents the edge value obtained by the filter. The smaller the value, the more easily an area will be judged as complex/smooth; the greater the value, the more easily an area will be judged as simple edge. u8StateByOffset Adjust filter based on offset so as to obtain edge value. The greater the offset, the more complex/smooth areas will be preserved. Parameter range: 0 ~ 255. The horizontal axis represents the edge value obtained by the filter. The smaller the value, the more easily an area will be judged as complex/smooth; the greater the value, the more easily an area will be judged as simple edge. u8StdvByY[SHARPNESSEX_BY_Y_NUM] Adjust the gain of standard deviation based on brightness (Y). Parameter range: 0 ~ 255. The horizontal axis represents brightness, and the closer to the right end, the brighter. The vertical axis represents the gain of standard deviation (64 = 1x) to be adjusted. The larger the value, the larger the standard deviation. SHARPNESSEX_BY_Y_NUM = 9. u8StdvByMot[SHARPNESSEX_BY_MOT_NUM] Adjust the gain of standard deviation based on motion. Parameter range: 0 ~ 63. The horizontal axis represents motion, and the closer to the right end, the closer to stillness. The vertical axis represents the gain of standard deviation (16 = 1x) to be adjusted. The larger the value, the larger the standard deviation. SHARPNESSEX_BY_MOT_NUM = 16. u16WeiByState[SHARPNESSEX_FREQ_WEI_NUM] Adjust the blending ratio of medium/high frequency for non-directional edges based on state. Parameter range: 0 ~ 128. The horizontal axis represents, from left to right, still edges (Index 0), still texture details (Index 1), motion edges (Index 2), motion texture details (Index 3). The vertical axis represents the weighting values of blending ratio: when the weighting value is 0, more medium edges will be taken into the ratio; when the weighting value is 128, more high frequency edges will be taken into the ratio. SHARPNESSEX_FREQ_WEI_NUM = 4. u16WeiByMot[SHARPNESSEX_BY_MOT_NUM] Adjust non-directional weighting based on motion. Parameter range: 0 ~ 256. The horizontal axis represents, from left to right, motion to stillness, and the closer to the right end, the closer to stillness. The vertical axis represents non-directional weighting. The greater the value, the closer to still state. SHARPNESSEX_BY_MOT_NUM = 16. u16EdgeGain Adjust the overall edge gain. Parameter range: 0 ~ 1023. Edge gain: (128 = 1x). The greater the value, the stronger the edge. u8GainByStd[SHARPNESSEX_LUT_Y_NUM] Adjust the overall gain based on standard deviation. Parameter range: 0 ~ 255. The horizontal axis represents the standard deviation processed by StdvByY and StdvByMot. The closer to the right end, the greater standard deviation is suggested. The vertical axis represents the edge gain (64 = 1x). The larger the value, the stronger the edge. As the standard deviation in smooth area is usually smaller, you may lower the edge for areas with smaller standard deviation to make them even smoother. You may also use it to reduce the edge of motion by lowering the first few blocks of StdvByMot, thereby enabling GainByStd to query these blocks. There are seven nodes in total, and you may adjust GainByStdSft to change the nodes on the horizontal axis if necessary. SHARPNESSEX_LUT_Y_NUM = 7. u8GainByStdSft[SHARPNESSEX_LUT_X_NUM] The node of GainByStd on the horizontal axis. Parameter range: 0 ~ 15. There are seven breakpoints. The X-axis coordinates are, from left to right: 0, 2^GainByStdSft[0], 2^GainByStdSft[0] + 2^GainByStdSft[1], 2^GainByStdSft[0] + 2^GainByStdSft[1] + 2^GainByStdSft[2], ... The Y-axis ordinates are, from bottom to top: GainByStd[0], GainByStd[1], GainByStd[2] ... If adjustment is desired, we recommend that you draw the original curve with Excel first. After that, adjust GainByStdSft and cut the interval into smaller segments for fine tuning, and find the corresponding GainByStd. Only after making sure that the effect remains the same should you make adjustment to GainByStd. SHARPNESSEX_LUT_X_NUM = 6. u8CorByY[SHARPNESSEX_BY_Y_NUM] Adjust coring based on brightness (Y). Parameter range: 0 ~ 255. The horizontal axis represents brightness. The closer to the right end, the greater brightness is suggested. The vertical axis represents the value of coring. The larger the value, the weaker the edge. SHARPNESSEX_BY_Y_NUM = 9. u8SclByY[SHARPNESSEX_BY_Y_NUM] Adjust the gain of edge based on brightness (Y). Parameter range: 0 ~ 255. The horizontal axis represents brightness. The closer to the right end, the greater brightness is suggested. The vertical axis represents the gain of edge (64 = 1x). The larger the value, the stronger the edge. SHARPNESSEX_BY_Y_NUM = 9. u8GainByMot[SHARPNESSEX_BY_MOT_NUM] Adjust the final edge gain based on motion, which is represented by the horizontal axis. The closer to the right end, the closer to stillness is suggested. The vertical axis represents the gain of edge (128 = 1x). The larger the value, the stronger the edge. Parameter range: 0 ~ 255. SHARPNESSEX_BY_MOT_NUM = 16. u8DerOverShootGain[SHARPNESSEX_LUT_Y_NUM] Adjust the gain of ringing artifact removal effects for white edges. Parameter range: 0 ~ 255. The greater the value, the stronger the white edges. SHARPNESSEX_LUT_Y_NUM = 7. u8DerUnderShootGain[SHARPNESSEX_LUT_Y_NUM] Adjust the gain of ringing artifact removal effects for black edges. Parameter range: 0 ~ 255. The greater the value, the stronger the black edges. SHARPNESSEX_LUT_Y_NUM = 7. u8DerGainByMot[SHARPNESSEX_BY_MOT_NUM] Adjust the strength of ringing artifact removal for edge based on motion, which is represented by the horizontal axis. Parameter range: 0 ~ 255. The closer to the right end, the closer to stillness is suggested. The vertical axis represents the strength of ringing artifact removal (64 = 1x). The larger the value, the stronger the ringing artifact removal effects. SHARPNESSEX_BY_MOT_NUM = 16. u16DerOverShootLimitByY[SHARPNESSEX_BY_Y_NUM] Adjust the effects of ringing artifact removal based on brightness (Y), which is represented by the horizontal axis. Parameter range: 0 ~ 1023. The closer to the right end, the brighter is suggested. The vertical axis represents the strength of edge. The larger the value, the more strength will be reserved for white edges. SHARPNESS_BY_Y_NUM = 9. u16DerUnderShootLimitByY[SHARPNESSEX_BY_Y_NUM] Adjust the effects of ringing artifact removal based on brightness (Y), which is represented by the horizontal axis. Parameter range: 0 ~ 1023. The closer to the right end, the brighter is suggested. The vertical axis represents the strength of edge. The smaller the value, the more strength will be reserved for black edges. SHARPNESS_BY_Y_NUM = 9. u16EdgeKillLutUp[SHARPNESSEX_LUT_Y_NUM] Adjust the strength of white edge based on edge strength. Parameter range: 0 ~ 1023. The horizontal axis represents input edge, while the vertical edge represents output edge. The greater the value, the stronger the edge. u16EdgeKillLutDown[SHARPNESSEX_LUT_Y_NUM] Adjust the strength of black edge based on edge strength. Parameter range: 0 ~ 1023. The horizontal axis represents input edge, while the vertical edge represents output edge. The greater the value, the stronger the edge. u8EdgeKillLutSft[SHARPNESSEX_LUT_X_NUM] The node of EdgeKillLutUp/Down on the horizontal axis. Parameter range: 0 ~ 15. u8StrengthByHue[SHARPNESSEX_BY_HUE_NUM] Adjust the strength of edge based on hue. Parameter range: 0 ~ 255. The horizontal axis represents hue (the same as HSV), while the vertical axis represents the edge gain (64 = 1x). The larger the value, the stronger the strength of edge. The actual effects will be affected by StrengthBySat. SHARPNESSEX_BY_HUE_NUM = 24. u8StrengthBySat[SHARPNESSEX_BY_SAT_NUM] Adjust the edge strength based on saturation. Parameter range: 0 ~ 127. If saturation is smaller than StrengthBySat[0], StrengthByHue will become ineffective, which means adjustment to the edge strength will not be affected by the hue of low saturation. If saturation is greater than StrengthBySat[1], the strength will be adjusted solely by StrengthByHue. Transition zone shows linear change. SHARPNESSEX_BY_SAT_NUM = 2. bROIEn Enable ROI (region of interest) mode. Parameter range: 0 ~ 1. u8ROIStr[SHARPNESSEX_ROI_NUM] The strength of Sharpness EX for 8 ROI (region of interest). Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Crosstalk Structure¶
Type Structure¶
-
Description
The type structure to set crosstalk.
-
Definition
typedef struct MI_ISP_IQ_CrosstalkType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_CrosstalkAutoAttr_t stAuto;
MI_ISP_IQ_CrosstalkManualAttr_t stManual;
} MI_ISP_IQ_CrosstalkType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of crosstalk.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of crosstalk.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set crosstalk. stManual The attribute structure of manual mode to set crosstalk. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetCrossTalk(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CrosstalkType_t *data);
MI_S32 MI_ISP_IQ_GetCrossTalk(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CrosstalkType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set crosstalk.
-
Definition
typedef struct MI_ISP_IQ_CrosstalkAutoAttr_s
{
MI_ISP_IQ_CrosstalkParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_CrosstalkAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set crosstalk.
-
Definition
typedef struct MI_ISP_IQ_CrosstalkManualAttr_s
{
MI_ISP_IQ_CrosstalkParam_t stParaAPI;
} MI_ISP_IQ_CrosstalkManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set crosstalk.
-
Definition
typedef struct MI_ISP_IQ_CrosstalkParam_s
{
MI_U8 u8Strength;
MI_U8 u8StrengthByY[CROSSTALK_BY_Y_NUM];
MI_U8 u8Threshold;
MI_U16 u16ThresholdOffset;
} MI_ISP_IQ_CrosstalkParam_t;
-
Name
Variable Name Description u8Strength Variable strength value of crosstalk. Parameter range: 0 ~ 31. u8StrengthByY[CROSSTALK_BY_Y_NUM] Adjust the strength value of crosstalk based on brightness. Parameter range: 0 ~ 127. CROSSTALK_BY_Y_NUM = 15. u8Threshold Crosstalk threshold ratio. Parameter range: 0 ~ 255. u16ThresholdOffset Crosstalk threshold offset. Parameter range: 0 ~ 4095. -
Note
- This function, if set too strong, will lead to detail loss. Hence, do not enable this function if crosstalk problem does not exist.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Dobc Structure¶
Type Structure¶
-
Description
The type structure to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_DobcType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_DobcAutoAttr_t stAuto;
MI_ISP_IQ_DobcManualAttr_t stManual;
} MI_ISP_IQ_DobcType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of optical black level correction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of optical black level correction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set optical black level correction. stManual The attribute structure of manual mode to set optical black level correction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDobc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DobcType_t *data);
MI_S32 MI_ISP_IQ_GetDobc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DobcType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_DobcAutoAttr_s
{
MI_ISP_IQ_DobcParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DobcAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_DobcManualAttr_s
{
MI_ISP_IQ_DobcParam_t stParaAPI;
} MI_ISP_IQ_DobcManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_DobcParam_s
{
MI_U16 u16ValR;
MI_U16 u16ValGr;
MI_U16 u16ValGb;
MI_U16 u16ValB;
MI_ISP_IQ_Bool_e bValByYEn;
MI_U16 u16ValByYR[8];
MI_U16 u16ValByYG[8];
MI_U16 u16ValByYB[8];
MI_U8 u16ValByYRSft[7];
MI_U8 u16ValByYGSft[7];
MI_U8 u16ValByYBSft[7];
} MI_ISP_IQ_DobcParam_t;
-
Name
Variable Name Description u16ValR Controllable value of R channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.u16ValGr Controllable value of Gr channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.u16ValGb Controllable value of Gb channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.u16ValB Controllable value of B channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.bValByYEn Enable byY function. Parameter range: 0 ~ 1. If this function is enabled, the four parameters above will become ineffective. u16ValByYR[8] Controllable value of R channel optical black level of ByY.
Parameter range: 0 ~ 65535.u16ValByYG[8] Controllable value of G channel optical black level of ByY.
Parameter range: 0 ~ 65535.u16ValByYB[8] Controllable value of B channel optical black level of ByY.
Parameter range: 0 ~ 65535.u16ValByYRSft[7] The cut-off point of ByY on the horizontal axis. Parameter range: 0 ~ 31. u16ValByYGSft[7] Parameter range: 0 ~ 31. u16ValByYBSft[7] Parameter range: 0 ~ 31. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Obc Structure¶
Type Structure¶
-
Description
The type structure to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_ObcType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_ObcAutoAttr_t stAuto;
MI_ISP_IQ_ObcManualAttr_t stManual;
} MI_ISP_IQ_ObcType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of optical black level correction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of optical black level correction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set optical black level correction. stManual The attribute structure of manual mode to set optical black level correction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
MI_S32 MI_ISP_IQ_GetObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
MI_S32 MI_ISP_IQ_SetObcP1(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
MI_S32 MI_ISP_IQ_GetObcP1(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ObcType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_ObcAutoAttr_s
{
MI_ISP_IQ_ObcParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_ObcAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_ObcManualAttr_s
{
MI_ISP_IQ_ObcParam_t stParaAPI;
} MI_ISP_IQ_ObcManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set optical black level correction.
-
Definition
typedef struct MI_ISP_IQ_ObcParam_s
{
MI_U16 u16ValR;
MI_U16 u16ValGr;
MI_U16 u16ValGb;
MI_U16 u16ValB;
} MI_ISP_IQ_ObcParam_t;
-
Name
Variable Name Description u16ValR Controllable value of R channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.u16ValGr Controllable value of Gr channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.u16ValGb Controllable value of Gb channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535.u16ValB Controllable value of B channel optical black level.
Parameter range for pipeline 0: 0 ~ 65535.
Parameter range for pipeline 1: 0 ~ 65535. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Wdr Structure¶
Type Structure¶
-
Description
The type structure to set wide dynamic range (WDR).
-
Definition
typedef struct MI_ISP_IQ_WdrType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_WdrAutoAttr_t stAuto;
MI_ISP_IQ_WdrManualAttr_t stManual;
} MI_ISP_IQ_WdrType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of WDR.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of WDR.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set WDR. stManual The attribute structure of manual mode to set WDR. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetWdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrType_t *data);
MI_S32 MI_ISP_IQ_GetWdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set WDR.
-
Definition
typedef struct MI_ISP_IQ_WdrAutoAttr_s
{
MI_ISP_IQ_WdrParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_WdrAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set WDR.
-
Definition
typedef struct MI_ISP_IQ_WdrManualAttr_s
{
MI_ISP_IQ_WdrParam_t stParaAPI;
} MI_ISP_IQ_WdrManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set WDR.
-
Definition
typedef struct MI_ISP_IQ_WdrParam_s
{
MI_U8 u8GlobalDarkToneEnhance;
MI_U16 u16WDRStrByY[WDR_BY_Y_NUM];
MI_U8 u8WDRStrByYSft[WDR_BY_Y_SFT_NUM];
MI_U16 u16WDRStrByYOft;
MI_U8 u8Strength;
MI_U8 u8DarkLimit;
MI_U8 u8BrightLimit;
MI_U8 u8DeSatSrcSel;
MI_U8 u8DesSatYMode;
MI_ISP_IQ_Bool_e bDeSatCrEn;
MI_U8 u8DeSatCbLut[WDR_BY_Y_NUM];
MI_U8 u8DeSatCrLut[WDR_BY_Y_NUM];
MI_U8 u8DeSatSft[WDR_BY_Y_SFT_NUM];
MI_U16 u16DeSatOft;
MI_U8 u8DeSatBlendV;
} MI_ISP_IQ_WdrParam_t;
-
Name
Variable Name Description u8GlobalDarkToneEnhance Control post global tone mapping. Parameter range: 0 ~ 15. 16 curves are available for selection: the greater the number, the more the dark areas will be brightened. u16WDRStrByY[WDR_BY_Y_NUM] Control the strength of WDR blending based on brightness. Parameter range: 0 ~ 4095. The horizontal axis represents brightness, and the closer to the right end, the greater brightness is suggested. The vertical axis represents the strength of WDR blending. The larger the value, the stronger the WDR, and the less blending of WDR Curve1. WDR_BY_Y_NUM = 33. u8WDRStrByYSft[WDR_BY_Y_SFT_NUM] The node of WDRStrByY on the horizontal axis. Parameter range: 0 ~ 15. u16WDRStrByYOft The offset of WDRStrByY. Parameter range: 0 ~ 4095. u8Strength The general strength of WDR blending. Parameter range: 0 ~ 255. The larger the value, the stronger the WDR, and the less blending of WDR Curve1. u8DarkLimit Limit the strength of WDR in dark area. The larger the value, the weaker the WDR will be in dark area. Parameter range: 0 ~ 255. u8BrightLimit Limit the strength of WDR in bright area. The larger the value, the weaker the WDR will be in bright area. Parameter range: 0 ~ 255. u8DeSatSrcSel Select the source of brightness for desaturation. 0 represents the brightness processed by Curve1; 1 represents the brightness processed by global tone; and 2 represents the brightness not yet processed by WDR. Parameter range: 0 ~ 2. u8DesSatYMode Select the mode of brightness for desaturation. Parameter range: 0 ~ 1. 0 represents YCbCr mode, and 1 represents RGB mode. bDeSatCrEn Enable separate switch of desaturation in Cr color space. 0 represents single switch shared by Cr and Cb, and 1 represents separate switch of Cr desaturation. Parameter range: 0 ~ 1. u8DeSatCbLut[WDR_BY_Y_NUM] Adjust the intensity of desaturation in Cb color space based on brightness. The horizontal axis represents brightness: the closer to the right end, the brighter the image. The vertical axis represents color gain (128 = 1x): the smaller the value, the stronger the desaturation, and the greyer the image. Parameter range: 0 ~ 255. WDR_BY_Y_NUM = 33. u8DeSatCrLut[WDR_BY_Y_NUM] Adjust the intensity of desaturation in Cr color space based on brightness. The horizontal axis represents brightness: the closer to the right end, the brighter the image. The vertical axis represents color gain (128 = 1x): the smaller the value, the stronger the desaturation, and the greyer the image. Parameter range: 0 ~ 255. WDR_BY_Y_NUM = 33. u8DeSatSft[WDR_BY_Y_SFT_NUM] The node of DeSatCbLut/DeSatCrLut on the horizontal axis. Parameter range: 0 ~ 15. u16DeSatOft The offset of DeSatCbLut/DeSatCrLut. Parameter range: 0 ~ 4095. u8DeSatBlendV The strength of blending Y (brightness) of desaturation with V (brightness) of HSV. This parameter is only effective when DeSatSrcSel is set to 3. Parameter range: 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_WdrLtm Structure¶
Type Structure¶
-
Description
The type structure to set local tone mapping (LTM) of wide dynamic range (WDR).
-
Definition
typedef struct MI_ISP_IQ_WdrLtmType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_Bool_e bDbgEn;
MI_ISP_IQ_OpType_e enOpType;
MI_U8 u8CoarseBoxNum;
MI_U8 u8MediumBoxNum;
MI_U8 u8FineBoxNum;
MI_ISP_IQ_WdrLtmAutoAttr_t stAuto;
MI_ISP_IQ_WdrLtmManualAttr_t stManual;
} MI_ISP_IQ_WdrLtmType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of WDR.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.bDbgEn Debug mode, showing the effective area and strength of LTM. Parameter range: 0 ~ 1. enOpType Set working mode of WDR local tone mapping.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.u8CoarseBoxNum Four box combinations are available. Adjustment to box size can be made according to the size of item of focus in the scene. The larger Box Num, the smaller the box size, which is more ideal for focusing on small objects in the picture. Note: it cannot be modified by ISO. The box size corresponding to Coarse > the box size corresponding to Medium > the box size corresponding to Fine. Parameter range: 1 ~ 4. u8MediumBoxNum Four box combinations are available. Adjustment to box size can be made according to the size of item of focus in the scene. The larger Box Num, the smaller the box size, which is more ideal for focusing on small objects in the picture. Note: it cannot be modified by ISO. The box size corresponding to Coarse > the box size corresponding to Medium > the box size corresponding to Fine. Parameter range: 1 ~ 4. u8FineBoxNum Five box combinations are available. Adjustment to box size can be made according to the size of item of focus in the scene. The larger Box Num, the smaller the box size, which is more ideal for focusing on small objects in the picture. Note: it cannot be modified by ISO. The box size corresponding to Coarse > the box size corresponding to Medium > the box size corresponding to Fine. Parameter range: 1 ~ 5. stAuto The attribute structure of automatic mode to set WDR. stManual The attribute structure of manual mode to set WDR. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetWdrLtm(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrLtmType_t *data);
MI_S32 MI_ISP_IQ_GetWdrLtm(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrLtmType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set WDR local tone mapping.
-
Definition
typedef struct MI_ISP_IQ_WdrLtmAutoAttr_s
{
MI_ISP_IQ_WdrLtmParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_WdrLtmAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set WDR local tone mapping.
-
Definition
typedef struct MI_ISP_IQ_WdrLtmManualAttr_s
{
MI_ISP_IQ_WdrLtmParam_t stParaAPI;
} MI_ISP_IQ_WdrLtmManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set WDR local tone mapping.
-
Definition
typedef struct MI_ISP_IQ_WdrLtmParam_s
{
MI_U8 u8LocalStr;
MI_U8 u8LevelStr;
MI_U8 u8LocalDetailEnhance;
MI_U8 u8CoarseFltCoef;
MI_U8 u8CoarseToneMapStr;
MI_U8 u8FineFltCoef;
MI_U8 u8FineToneMapStr;
} MI_ISP_IQ_WdrLtmParam_t;
-
Name
Variable Name Description u8LocalStr The strength of local tone mapping kernel. Parameter range: 0 ~ 255. The larger the value, the stronger the strength. u8LevelStr The level of local tone mapping. Parameter range: 0 ~ 255. The larger the value, the stronger the effects of contrast enhancement in bright/dark areas. u8LocalDetailEnhance Local detail enhancement. Parameter range: 0 ~ 4. The larger the value, the stronger the strength. u8CoarseFltCoef Five filter sizes are available. The larger the value, the more apparent the effect of local contrast enhancement, but the more likely halo is to appear on the margin of object. u8CoarseToneMapStr The strength of coarse local tone mapping. Parameter range: 0 ~ 255. The larger the value, the more apparent the effect of local contrast enhancement, but the more likely halo is to appear on the margin of object. u8FineFltCoef Five filter sizes are available. The larger the value, the more apparent the effect of local contrast enhancement, but the more likely halo is to appear on the margin of object. u8FineToneMapStr The strength of fine local tone mapping. Parameter range: 0 ~ 255. The larger the value, the more apparent the effect of local contrast enhancement, but the more likely halo is to appear on the margin of object. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_WdrNr Structure¶
Type Structure¶
-
Description
The type structure to set WDR noise reduction.
-
Definition
typedef struct MI_ISP_IQ_WdrNrType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_WdrNrAutoAttr_t stAuto;
MI_ISP_IQ_WdrNrManualAttr_t stManual;
} MI_ISP_IQ_WdrNrType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of WDR noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of WDR noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set WDR noise reduction. stManual The attribute structure of manual mode to set WDR noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetWdrNr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrNrType_t *data);
MI_S32 MI_ISP_IQ_GetWdrNr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrNrType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set WDR noise reduction.
-
Definition
typedef struct MI_ISP_IQ_WdrNrAutoAttr_s
{
MI_ISP_IQ_WdrNrParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_WdrNrAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set WDR noise reduction.
-
Definition
typedef struct MI_ISP_IQ_WdrNrManualAttr_s
{
MI_ISP_IQ_WdrNrParam_t stParaAPI;
} MI_ISP_IQ_WdrNrManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set WDR noise reduction.
-
Definition
typedef struct MI_ISP_IQ_WdrNrParam_s
{
MI_U8 u8Strength;
MI_U8 u8NrStrMot[WDR_BY_MOT_NUM];
MI_U8 u8NrSlp[WDR_BY_MOT_NUM];
MI_U8 u8NoiseLevelLut_X[WDR_NOISE_LEVEL_NUM];
MI_U16 u16NoiseLevelLut_Y[WDR_NOISE_LEVEL_NUM];
MI_U8 u8NoiseLevelMot[WDR_BY_MOT_NUM];
MI_U8 u8VNDNosMot[WDR_BY_MOT_NUM];
MI_U8 u8VNDSft[WDR_VND_LUT_X_NUM];
MI_U16 u16VNDThd[WDR_VND_LUT_Y_NUM];
MI_U16 u16VNDGain[WDR_VND_LUT_Y_NUM];
MI_ISP_IQ_Bool_e bVNDByPass;
} MI_ISP_IQ_WdrNrParam_t;
-
Name
Variable Name Description u8Strength WDR noise reduction strength control. Parameter range: 0 ~ 255. u8NrStrMot[WDR_BY_MOT_NUM] Add another offset to the final strength of noise reduction based on the extent of motion. Parameter range: 0 ~ 255. WDR_BY_MOT_NUM = 16. u8NrSlp[WDR_BY_MOT_NUM] Define the strength of noise reduction. 3 represents stronger NR intensity; while 2 represents weaker NR intensity. Parameter range: 2 ~ 3. u8NoiseLevelLut_X[WDR_NOISE_LEVEL_NUM] The node of NoiseLevelLut_Y on the horizontal axis. Parameter range: 0 ~ 255. u16NoiseLevelLut_Y[WDR_NOISE_LEVEL_NUM] Control the strength of noise reduction based on brightness. Values smaller than this threshold will be judged as noise. The larger the value, the stronger the noise reduction. Parameter range: 0 ~ 65535. The horizontal axis represents darkness to brightness from left to right. u8NoiseLevelMot[WDR_BY_MOT_NUM] Adjust the gain of NrXThd based on the extent of motion. Parameter range: 0 ~ 255. 16 = 1x. WDR_BY_MOT_NUM = 16 u8VNDNosMot[WDR_BY_MOT_NUM] Adjust the gain of VNDThd based on the extent of motion. Parameter range: 0 ~ 255. 16 = 1x. WDR_BY_MOT_NUM = 16 u8VNDSft[WDR_VND_LUT_X_NUM] The horizontal node of VNDThd and VNDGain, accumulated by the power of 2. Parameter range: 1 ~ 11. WDR_VND_LUT_X_NUM = 8 u16VNDThd[WDR_VND_LUT_Y_NUM] Control the threshold value of VND noise reduction based on brightness. Value larger than this threshold will be determined as noise. The smaller the value, the stronger the noise reduction. Parameter range: 0 ~ 4095. WDR_VND_LUT_Y_NUM = 9 u16VNDGain[WDR_VND_LUT_Y_NUM] Control the gain of VND noise reduction based on brightness. The larger the gain, the stronger the noise reduction. Parameter range: 0 ~ 4095. WDR_VND_LUT_Y_NUM = 9. bVNDByPass Enable/Bypass VND function. Set 1 to bypass VND; set 0 to enable VND. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_DynamicDp Structure¶
Type Structure¶
-
Description
The type structure to set dynamic dead-pixel compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_DynamicDpAutoAttr_t stAuto;
MI_ISP_IQ_DynamicDpManualAttr_t stManual;
} MI_ISP_IQ_DynamicDpType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of dynamic dead-pixel compensation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of dynamic dead-pixel compensation.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set dynamic dead-pixel compensation. stManual The attribute structure of manual mode to set dynamic dead-pixel compensation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDynamicDp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpType_t *data);
MI_S32 MI_ISP_IQ_GetDynamicDp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set dynamic dead-pixel compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpAutoAttr_s
{
MI_ISP_IQ_DynamicDpParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DynamicDpAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set dynamic dead-pixel compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpManualAttr_s
{
MI_ISP_IQ_DynamicDpParam_t stParaAPI;
} MI_ISP_IQ_DynamicDpManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set dynamic dead-pixel compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpParam_s
{
MI_ISP_IQ_Bool_e bHotPixEn;
MI_U16 u16HotPixCompSlpoe;
MI_ISP_IQ_Bool_e bDarkPixEn;
MI_U16 u16DarkPixCompSlpoe;
MI_U16 u16DPCTH;
MI_ISP_IQ_Bool_e bBlendEn;
MI_U16 u16DiffLut[DYNAMIC_DP_LUT_NUM];
MI_U16 u16YLut[DYNAMIC_DP_LUT_NUM];
} MI_ISP_IQ_DynamicDpParam_t;
-
Name
Variable Name Description bHotPixEn Set Boolean value for the function of dynamic hot-pixel compensation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16HotPixCompSlpoe Adjust the threshold value of dynamic hot-pixel compensation. Parameter range: 0 ~ 255. bDarkPixEn Set Boolean value for the function of dynamic dark-pixel compensation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16DarkPixCompSlpoe Adjust the threshold value of dynamic dark-pixel compensation. Parameter range: 0 ~ 255. u16DPCTH Set the threshold value of dynamic dead-pixel compensation. Parameter range: 0 ~ 255. bBlendEn Set Boolean value for the function of blending.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16DiffLut[DYNAMIC_DP_LUT_NUM] Blending based on the difference between the DPC result and the original point. Parameter range: 0 ~ 1024. DYNAMIC_DP_LUT_NUM = 6. u16YLut[DYNAMIC_DP_LUT_NUM] Blending based on the difference between the DPC result and the original point. Parameter range: 0 ~ 1024. DYNAMIC_DP_LUT_NUM = 6. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_DynamicDpCluster Structure¶
Type Structure¶
-
Description
The type structure to set dynamic dead-pixel cluster compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpClusterType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_DynamicDpClusterAutoAttr_t stAuto;
MI_ISP_IQ_DynamicDpClusterManualAttr_t stManual;
} MI_ISP_IQ_DynamicDpClusterType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of dynamic dead-pixel cluster compensation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of dynamic dead-pixel cluster compensation.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set dynamic dead-pixel cluster compensation. stManual The attribute structure of manual mode to set dynamic dead-pixel cluster compensation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDynamicDpCluster(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpClusterType_t *data);
MI_S32 MI_ISP_IQ_GetDynamicDpCluster(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DynamicDpClusterType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set dynamic dead-pixel cluster compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpClusterAutoAttr_s
{
MI_ISP_IQ_DynamicDpClusterAttr_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DynamicDpClusterAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set dynamic dead-pixel cluster compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpClusterManualAttr_s
{
MI_ISP_IQ_DynamicDpClusterAttr_t stParaAPI;
} MI_ISP_IQ_DynamicDpClusterManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set dynamic dead-pixel cluster compensation.
-
Definition
typedef struct MI_ISP_IQ_DynamicDpClusterAttr_s
{
MI_ISP_IQ_Bool_e bEdgeMode;
MI_U16 u16NeiDeltaTh;
MI_U8 u8NeiSmooth;
MI_ISP_IQ_Bool_e bSortEn;
MI_ISP_IQ_Bool_e bSortRGGBEn[DYNAMIC_DP_CLUSTER_CH_NUM];
MI_ISP_IQ_Bool_e bSort1x3ModeEn;
MI_U16 u16SortLumTblL[DYNAMIC_DP_CLUSTER_TBL_NUM];
MI_U16 u16SortLumTblD[DYNAMIC_DP_CLUSTER_TBL_NUM];
MI_U16 u16SortLumTblS[DYNAMIC_DP_CLUSTER_TBL_NUM];
} MI_ISP_IQ_DynamicDpClusterAttr_t;
-
Name
Variable Name Description bEdgeMode Set Boolean value for the function of Edge Mode.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16NeiDeltaTh The threshold value of difference between the center point and surrounding 8 points. Parameter range: 0 ~ 4095. u8NeiSmooth Accumulated threshold value. Parameter range: 0 ~ 8. bSortEn Enable sort mode. bSortRGGBEn[DYNAMIC_DP_CLUSTER_CH_NUM] Enable each channel of sort mode. DYNAMIC_DP_CLUSTER_CH_NUM = 4. bSort1x3ModeEn Enable 1x3 mode. u16SortLumTblL[DYNAMIC_DP_CLUSTER_TBL_NUM] The threshold value of the two brightest points. Parameter range: 0 ~ 4095. DYNAMIC_DP_CLUSTER_TBL_NUM = 6. u16SortLumTblD[DYNAMIC_DP_CLUSTER_TBL_NUM] The threshold value of the two darkest points. Parameter range: 0 ~ 4095. DYNAMIC_DP_CLUSTER_TBL_NUM = 6. u16SortLumTblS[DYNAMIC_DP_CLUSTER_TBL_NUM] The threshold value of the second and third brightest (darkest) points. Parameter range: 0 ~ 4095. DYNAMIC_DP_CLUSTER_TBL_NUM = 6. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Hsv Structure¶
Type Structure¶
-
Description
The type structure to set HSV.
-
Definition
typedef struct MI_ISP_IQ_HsvType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_Bool_e u8DebugMode;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_HsvAutoAttr_t stAuto;
MI_ISP_IQ_HsvManualAttr_t stManual;
} MI_ISP_IQ_HsvType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of HSV.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8DebugMode Debug mode. Parameter range: 0 ~ 4, which shows the value of 1. hue, 2. saturation, 3. brightness, and 4. the product of brightness and saturation (S*Y) of a specific place in the picture. enOpType Set working mode of HSV.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set HSV. stManual The attribute structure of manual mode to set HSV. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetHsv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HsvType_t *data);
MI_S32 MI_ISP_IQ_GetHsv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HsvType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set HSV.
-
Definition
typedef struct MI_ISP_IQ_HsvAutoAttr_s
{
MI_ISP_IQ_HsvParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_HsvAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set HSV.
-
Definition
typedef struct MI_ISP_IQ_HsvManualAttr_s
{
MI_ISP_IQ_HsvParam_t stParaAPI;
} MI_ISP_IQ_HsvManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set HSV.
-
Definition
typedef struct MI_ISP_IQ_HsvParam_s
{
MI_S16 s16HueByHueLut[HSV_HUE_NUM];
MI_U16 u16HueBySatLut[HSV_SAT_NUM];
MI_U16 u16HueByYLut[HSV_Y_NUM];
MI_U16 u16SatByHueLut[HSV_HUE_NUM];
MI_S16 s16SatBySatLut[HSV_SAT_NUM];
MI_U16 u16SatByYLut[HSV_Y_NUM];
MI_S16 s16SatBySYLut[HSV_Y_NUM];
MI_S16 s16YByHueLut[HSV_HUE_NUM];
MI_U16 u16YBySatLut[HSV_SAT_NUM];
MI_U16 u16YByYLut[HSV_Y_NUM];
MI_S16 s16HueByHueLut_ByIso[HSV_HUE_NUM];
MI_U16 u16HueBySatLut_ByIso[HSV_SAT_NUM];
MI_U16 u16HueByYLut_ByIso[HSV_Y_NUM];
MI_U16 u16SatByHueLut_ByIso[HSV_HUE_NUM];
MI_S16 s16SatBySatLut_ByIso[HSV_SAT_NUM];
MI_U16 u16SatByYLut_ByIso[HSV_Y_NUM];
MI_S16 s16SatBySYLut_ByIso[HSV_Y_NUM];
MI_S16 s16YByHueLut_ByIso[HSV_HUE_NUM];
MI_U16 u16YBySatLut_ByIso[HSV_SAT_NUM];
MI_U16 u16YByYLut_ByIso[HSV_Y_NUM];
MI_ISP_IQ_Bool_e bVibranceEn;
MI_U8 u8GrayProtectStrength;
MI_U16 u16GrayProtectTh;
} MI_ISP_IQ_HsvParam_t;
-
Name
Variable Name Description s16HueByHueLut[HSV_HUE_NUM] Divide the 360° hue circle into 36 equal sectors and control the rotation angle of each hue sector. The sector will be switched according to color temperature in automatic mode. Parameter range: -127 ~ 127. 0 means no adjustment. HSV_HUE_NUM = 36. u16HueBySatLut[HSV_SAT_NUM] Divide the saturation into 9 equal sectors and control the rotation angle of hue for each sector of saturation. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255 (128 = 1x). HSV_SAT_NUM = 9. u16HueByYLut[HSV_Y_NUM] Divide the brightness into 9 equal sectors and control the rotation angle of hue for each sector of brightness. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255 (128 = 1x). HSV_Y_NUM = 9. u16SatByHueLut[HSV_HUE_NUM] Divide the 360° hue circle into 36 equal sectors and control the saturation of each hue sector. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255. (128 = 1x). HSV_HUE_NUM = 36. s16SatBySatLut[HSV_SAT_NUM] Divide the saturation into 9 equal sectors and control the increase/decrease of saturation for each sector of saturation. The sector will be switched according to color temperature in automatic mode. Parameter range: -511 ~ 511. 0 means no adjustment. HSV_SAT_NUM = 9. u16SatByYLut[HSV_Y_NUM] Divide the brightness into 9 equal sectors and control the increase/decrease of saturation for each sector of brightness. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255. 128 = 1x. HSV_Y_NUM = 9. s16SatBySYLut[HSV_Y_NUM] Divide the product of brightness and saturation into 9 equal sectors and control the increase/decrease of saturation for each product. The sector will be switched according to color temperature in automatic mode. Parameter range: -511 ~ 511. 0 means no adjustment. HSV_Y_NUM = 9. s16YByHueLut[HSV_HUE_NUM] Divide the 360° hue circle into 36 equal sectors and control the brightness of each hue sector. The sector will be switched according to color temperature in automatic mode. Parameter range: -511 ~ 511. 0 means no adjustment. HSV_HUE_NUM = 36. u16YBySatLut[HSV_SAT_NUM] Divide the saturation into 9 equal sectors and control the increase/decrease of brightness for each sector of saturation. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255. 128 = 1x. HSV_SAT_NUM = 9. u16YByYLut[HSV_Y_NUM] Divide the brightness into 9 equal sectors and control the increase/decrease of brightness for each sector of brightness. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255. 128 = 1x. HSV_Y_NUM = 9. s16HueByHueLut_ByIso[HSV_HUE_NUM] Divide the 360° hue circle into 36 equal sectors and control the rotation angle of each hue sector. The sector will be switched according to color temperature in automatic mode. Parameter range: -127 ~ 127. 0 means no adjustment. HSV_HUE_NUM = 36. u16HueBySatLut_ByIso[HSV_SAT_NUM] Divide the saturation into 9 equal sectors and control the rotation angle of hue for each sector of saturation. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255 (128 = 1x). HSV_SAT_NUM = 9. u16HueByYLut_ByIso[HSV_Y_NUM] Divide the brightness into 9 equal sectors and control the rotation angle of hue for each sector of brightness. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255 (128 = 1x). HSV_Y_NUM = 9. u16SatByHueLut_ByIso[HSV_HUE_NUM] Divide the 360° hue circle into 36 equal sectors and control the saturation of each hue sector. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255. (128 = 1x). HSV_HUE_NUM = 36. s16SatBySatLut_ByIso[HSV_SAT_NUM] Divide the saturation into 9 equal sectors and control the increase/decrease of saturation for each sector of saturation. The sector will be switched according to color temperature in automatic mode. Parameter range: -511 ~ 511. 0 means no adjustment. HSV_SAT_NUM = 9. u16SatByYLut_ByIso[HSV_Y_NUM] Divide the brightness into 9 equal sectors and control the increase/decrease of saturation for each sector of brightness. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255. 128 = 1x. HSV_Y_NUM = 9. s16SatBySYLut_ByIso[HSV_Y_NUM] Divide the product of brightness and saturation into 9 equal sectors and control the increase/decrease of saturation for each product. The sector will be switched according to color temperature in automatic mode. Parameter range: -511 ~ 511. 0 means no adjustment. HSV_Y_NUM = 9. s16YByHueLut_ByIso[HSV_HUE_NUM] Divide the 360° hue circle into 36 equal sectors and control the brightness of each hue sector. The sector will be switched according to color temperature in automatic mode. Parameter range: -511 ~ 511. 0 means no adjustment. HSV_HUE_NUM = 36. u16YBySatLut_ByIso[HSV_SAT_NUM] Divide the saturation into 9 equal sectors and control the increase/decrease of brightness for each sector of saturation. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255. 128 = 1x. HSV_SAT_NUM = 9. u16YByYLut_ByIso[HSV_Y_NUM] Divide the brightness into 9 equal sectors and control the increase/decrease of brightness for each sector of brightness. The sector will be switched according to color temperature in automatic mode. Parameter range: 0 ~ 255. 128 = 1x. HSV_Y_NUM = 9. bVibranceEn Enable natural saturation. If this function is enabled, all the control over saturation in this module will become ineffective. Instead, the default curve of saturation adjustment in the firmware will take place. The default curve in the firmware helps maintain the saturation of skin colors with only slight changes when saturation is increased. u8GrayProtectStrength The strength of color protection for grey objects. Parameter range: 0 ~ 63. You may take advantage of this parameter for objects in grey to ensure that its hue, saturation, and brightness would remain unchanged. u16GrayProtectTh The threshold value to define grey objects. Parameter range: 0 ~ 1023. The greater the value, the more easily an object will be defined as grey. You may take advantage of this parameter to ensure that hue, saturation, and brightness would remain unchanged. -
Note
- Both of the adjustments to H and Y are based on Hue adjustment before being used to adjust ByS and ByY. In other words, if HbyH adjustment is 0, HbyS and HbyY will become ineffective; if YbyH adjustment is 0, YbyS and YbyY will become ineffective.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Rgbir Structure¶
Type Structure¶
-
Description
The type structure to set RGB-IR.
-
Definition
typedef struct MI_ISP_IQ_RgbirType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_RgbirAutoAttr_t stAuto;
MI_ISP_IQ_RgbirManualAttr_t stManual;
} MI_ISP_IQ_RgbirType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of RGB-IR.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of RGB-IR.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set RGB-IR. stManual The attribute structure of manual mode to set RGB-IR. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetRgbir(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbirType_t *data);
MI_S32 MI_ISP_IQ_GetRgbir(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_RgbirType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set RGB-IR.
-
Definition
typedef struct MI_ISP_IQ_RgbirAutoAttr_s
{
MI_ISP_IQ_RgbirParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_RgbirAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set RGB-IR.
-
Definition
typedef struct MI_ISP_IQ_RgbirManualAttr_s
{
MI_ISP_IQ_RgbirParam_t stParaAPI;
} MI_ISP_IQ_RgbirManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set RGB-IR.
-
Definition
typedef struct MI_ISP_IQ_RgbirParam_s
{
MI_U8 u8IrPosType;
MI_ISP_IQ_Bool_e bRemovelEn;
MI_U16 u16Ratio_R[RGBIR_BY_Y_NUM];
MI_U16 u16Ratio_G[RGBIR_BY_Y_NUM];
MI_U16 u16Ratio_B[RGBIR_BY_Y_NUM];
} MI_ISP_IQ_RgbirParam_t;
-
Name
Variable Name Description u8IrPosType RGB-IR distribution type. Parameter range: 0 ~ 7, default is 0. bRemovelEn Set Boolean value for the function of IR removal, default is 1.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16Ratio_R[RGBIR_BY_Y_NUM] Red IR removal ratio, from dark to bright @12 bits. RGBIR_BY_Y_NUM = 6. u16Ratio_G[RGBIR_BY_Y_NUM] Green IR removal ratio, from dark to bright @12 bits. RGBIR_BY_Y_NUM = 6. u16Ratio_B[RGBIR_BY_Y_NUM] Blue IR removal ratio, from dark to bright @12 bits. RGBIR_BY_Y_NUM = 6. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Demosaic Structure¶
Type Structure¶
-
Description
The type structure to set demosaic.
-
Definition
typedef struct MI_ISP_IQ_DemosaicType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8DbgMode;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_DemosaicAutoAttr_t stAuto;
MI_ISP_IQ_DemosaicManualAttr_t stManual;
} MI_ISP_IQ_DemosaicType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of demosaic.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8DbgMode Debug mode. Parameter range: 0 ~ 2. "1" means to judge image with directions, by which red/blue/green/white/black area respectively corresponds to vertical/horizontal/non-detail-enhancement/detail-enhancement/non-directional area. "2" represents "non-smooth" image and is only effective when SmoEn is enbled. The brighter the image, the less likely it will be smoothed, and vice versa. This debug mode will come into conflict with that of FalseColor, and the choice between the two will be determined by the last API call. enOpType Set working mode of demosaic.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set demosaic. stManual The attribute structure of manual mode to set demosaic. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDemosaic(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DemosaicType_t *data);
MI_S32 MI_ISP_IQ_GetDemosaic(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DemosaicType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set demosaic.
-
Definition
typedef struct MI_ISP_IQ_DemosaicAutoAttr_s
{
MI_ISP_IQ_DemosaicParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DemosaicAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set demosaic.
-
Definition
typedef struct MI_ISP_IQ_DemosaicManualAttr_s
{
MI_ISP_IQ_DemosaicParam_t paraAPI;
} MI_ISP_IQ_DemosaicManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set demosaic.
-
Definition
typedef struct MI_ISP_IQ_DemosaicParam_s
{
MI_U8 u8GradientTh;
MI_ISP_IQ_Bool_e bDetailIntpEn;
MI_U8 u8BRatio;
MI_ISP_IQ_Bool_e bSmoEn;
MI_U8 u8SmoRange;
MI_U8 u8SmoStrength;
MI_U8 u8VarThX[8];
MI_U8 u8VarThY[8];
} MI_ISP_IQ_DemosaicParam_t;
-
Name
Variable Name Description u8GradientTh Threshold value for directional area judgement. The greater the value, the less area will be judged as directional, which may blur details and create zipper artifacts. Too small a value will cause detail to become directional. Parameter range: 0 ~ 63. bDetailIntpEn Enable detail interpolation. Parameter range: 0 ~ 1. u8BRatio The larger the value, the more weaker edge can be continuous, but the more likely high frequency will be wrongly interpolated. Parameter range: 0 ~ 15. bSmoEn Smooth enable. Parameter range: 0 ~ 1. u8SmoRange Smooth range. The greater the value, the more area will be smoothed. Parameter range: 0 ~ 7. u8SmoStrength Smooth strength. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. u8VarThX[8] Set interval for different noise level. Parameter range: 0 ~ 7. u8VarThY[8] Set threshold value for flat area judgement according to noise level interval. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Decompress Structure¶
Type Structure¶
-
Description
The type structure to set Decompress.
-
Definition
typedef struct MI_ISP_IQ_DecompressType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_DecompressKneeParam_t stCurve[DECOMP_KNEE_NUM];
} MI_ISP_IQ_DecompressType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Decompress.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stCurve[DECOMP_KNEE_NUM] The structure of Decompress. DECOMP_KNEE_NUM = 15. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDecompress(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DecompressType_t *data);
MI_S32 MI_ISP_IQ_GetDecompress(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DecompressType_t *data);
Parameter Structure¶
-
Description
The parameter structure to set Decompress.
-
Definition
typedef struct MI_ISP_IQ_DecompressParam_s
{
MI_U16 u16F0;
MI_S16 s16F1;
MI_U16 u16F2;
MI_U16 u16Range;
} MI_ISP_IQ_DecompressParam_t;
-
Name
Variable Name Description u16F0 input offset value of each knee point. Parameter range: 0 ~ 65535. s16F1 The slope value of each knee point. Solpe = 2 ^ s16F1 .Parameter range: -15 ~ 15. u16F2 output offset value of each knee point. Parameter range: 0 ~ 65535. u16Range Input data range of each knee point. Parameter range: 0 ~ 65535. -
Note
The formula could be represent by following format.

The array index of stCurve is knee point of the decompression curve. The member u16F0 of the structure is input offset value, u16F1 is slope, and u16F2 is output offset. For example, the sensor decompress formula v.s. API format.

-
Related Structure Type and Function
N/A.
MI_ISP_IQ_R2Y Structure¶
Type Structure¶
-
Description
The type structure to set RGB to YUV color conversion.
-
Definition
typedef struct MI_ISP_IQ_R2YType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_R2YManualAttr_t stManual;
} MI_ISP_IQ_R2YType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of demosaic. To disable, set SS_FALSE = 0. To enable, set SS_TRUE = 1. stManual The attribute structure of manual mode to set RGB to YUV color conversion. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetR2Y(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_R2YType_t *data);
MI_S32 MI_ISP_IQ_GetR2Y(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_R2YType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set RGB to YUV color conversion.
-
Definition
typedef struct MI_ISP_IQ_R2YManualAttr_s
{
MI_ISP_IQ_R2YParam_t stParaAPI;
} MI_ISP_IQ_R2YManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set RGB to YUV color conversion.
-
Definition
typedef struct MI_ISP_IQ_R2YParam_s
{
MI_U16 u16Matrix[R2Y_MATRIX_NUM];
MI_U8 u8AddY16;
} MI_ISP_IQ_R2YParam_t;
-
Name
Variable Name Description u16Matrix[R2Y_MATRIX_NUM] Adjust RGB to YUV matrix. Parameter range: 0 ~ 8191. 1024 means 1x gain. Use the complement of 2 to represent negative number, equal to ±3.996. R2Y_MATRIX_NUM = 9. u8AddY16 Adjust Y Offset. This parameter determines whether 16 should be added to Y after matrix conversion. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_ColorTrans Structure¶
Type Structure¶
-
Description
The type structure to set color transformation.
-
Definition
typedef struct MI_ISP_IQ_ColorTransType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_ColorTransManualAttr_t stManual;
} MI_ISP_IQ_ColorTransType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of color transformation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stManual The attribute structure of manual mode to set color transformation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetColorTrans(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorTransType_t *data);
MI_S32 MI_ISP_IQ_GetColorTrans(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ColorTransType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set color transformation.
-
Definition
typedef struct MI_ISP_IQ_ColorTransManualAttr_s
{
MI_ISP_IQ_ColorTransParam_t stParaAPI;
} MI_ISP_IQ_ColorTransManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set color transformation.
-
Definition
typedef struct MI_ISP_IQ_ColorTransParam_s
{
MI_U16 u16Y_OFST;
MI_U16 u16U_OFST;
MI_U16 u16V_OFST;
MI_U16 u16Matrix[COLORTRANS_MATRIX_NUM];
} MI_ISP_IQ_ColorTransParam_t;
-
Name
Variable Name Description u16Y_OFST Adjust Y offset in 10-bit domain. Parameter range: 0 ~ 2047. Use the complement of 2 to represent negative number, equal to ±1023. u16U_OFST Adjust U offset in 10-bit domain. Parameter range: 0 ~ 2047. Use the complement of 2 to represent negative number, equal to ±1023. u16V_OFST Adjust V offset in 10-bit domain. Parameter range: 0 ~ 2047. Use the complement of 2 to represent negative number, equal to ±1023. u16Matrix[COLORTRANS_MATRIX_NUM] Adjust RGB to YUV matrix. Parameter range: 0 ~ 1023, value 256 means 1x gain. Use the complement of 2 to represent negative number, equal to ±1.996. COLORTRANS_MATRIX_NUM = 9. -
Note
YUV_OFST and Matrix[9] use the complement of 2 to represent negative number.
For UV_OFST, the value obtained after matrix multiplication will be addeded by 128 by default.
Below is an example to convert YUV to the 16 ~ 235 data range.
Y=(0.257*R)+(0.504*G)+(0.098*B)+16 Cb=-(0.148*R)-(0.291*G)+(0.439*B)+128 Cr=(0.439*R)-(0.368*G)-(0.071*B)+128 Matrix[9] = {66, 129, 25, 986, 950, 112, 112, 930, 1006} Y_OFST = 64 U_OFST = 0 (128*4 has been added by default, so input 0) V_OFST = 0 (128*4 has been added by default, so input 0) -
Related Structure Type and Function
N/A.
MI_ISP_IQ_CTEx Structure¶
Type Structure¶
-
Description
The type structure to set color transformation.
-
Definition
typedef struct MI_ISP_IQ_CTExType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_CTExManualAttr_t stManual;
} MI_ISP_IQ_CTExType _t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of color transformation.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stManual The attribute structure of manual mode to set color transformation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetColorTrans_EX(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CTExType_t *data);
MI_S32 MI_ISP_IQ_GetColorTrans_EX(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_CTExType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set color transformation.
-
Definition
typedef struct MI_ISP_IQ_CTExManualAttr_s
{
MI_ISP_IQ_CTEx_t stParaAPI;
} MI_ISP_IQ_CTExManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set color transformation.
-
Definition
typedef struct MI_ISP_IQ_CTEx_s
{
MI_U8 u8Type;
} MI_ISP_IQ_CTEx_t;
-
Name
Variable Name Description u8Type Six different types of transformation are available to choose from. Parameter range: 0 ~ 5.
0: BT601 limit
1: BT601 full
2: BT709 limit
3: BT709 full
4: BT2020 limit
5: BT2020 full -
Note
- Compared with ColorTrans, which provides a flexible setting of RGB to YUV conversion matrix, ColorTrans_EX only provides 0 ~ 5 fixed conversion types to choose from. If ColorTrans_EX is enabled, ColorTrans will become ineffective.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Hdr Structure¶
Type Structure¶
-
Description
The type structure to set high dynamic range (HDR).
-
Definition
typedef struct MI_ISP_IQ_HdrType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_HdrAutoAttr_t stAuto;
MI_ISP_IQ_HdrManualAttr_t stManual;
} MI_ISP_IQ_HdrType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of HDR.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of HDR.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set HDR. stManual The attribute structure of manual mode to set HDR. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetHdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HdrType_t *data);
MI_S32 MI_ISP_IQ_GetHdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HdrType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set HDR.
-
Definition
typedef struct MI_ISP_IQ_HdrAutoAttr_s
{
MI_ISP_IQ_HdrParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_HdrAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set HDR.
-
Definition
typedef struct MI_ISP_IQ_HdrManualAttr_s
{
MI_ISP_IQ_HdrParam_t stParaAPI;
} MI_ISP_IQ_HdrManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set HDR.
-
Definition
typedef struct MI_ISP_IQ_HdrParam_s
{
MI_U16 u16YwtTh1;
MI_U16 u16YwtTh2;
MI_U16 u16NoiseLevel[HDR_BY_Y_NUM];
MI_U8 u8YSrcStr[HDR_BLEND_V_NUM];
MI_U8 u8NrStr;
MI_U8 u8NrPreStr;
MI_U16 u16NrYTh1;
MI_U16 u16NrYTh2;
MI_U8 u8NrYGain[HDR_LUT_Y_NUM];
MI_U8 u8NrYSft[HDR_LUT_X_NUM];
MI_U8 u8NrKernelStr;
MI_U8 u8NrKernelStrWei[HDR_STR_BY_DIFF];
MI_U8 u8MotAdjSft1[HDR_MOT_LUT_X_NUM];
MI_U8 u8MoLuBlendSft[HDR_BLEND_LUT_X_NUM];
MI_U16 u16MotAdj1[HDR_MOT_LUT_Y_NUM];
MI_U16 u16MotAdj2[HDR_MOT_LUT_Y_NUM];
MI_U16 u16MotAdj3[HDR_MOT_LUT_Y_NUM];
MI_U16 u16MoLuBlendY[HDR_BLEND_LUT_Y_NUM];
} MI_ISP_IQ_HdrParam_t;
-
Name
Variable Name Description u16YwtTh1 Threshold value of the lowest brightness for long exposure. When brightness is lower than Th1, long exposure data will be selected. Parameter range: 0 ~ 1023. u16YwtTh2 Threshold value of the highest brightness for long exposure. When brightness is higher than Th2, short exposure data will be selected. When brightness falls between Th1 and Th2, blending will be applied. Parameter range: 0 ~ 1023. u16NoiseLevel[HDR_BY_Y_NUM] The noise level to determine motion or stillness. The horizontal axis represents brightness. The greater the value, the more likely the scene will be determined as still. Parameter range: 0 ~ 16383. HDR_BY_Y_NUM = 16. u8YSrcStr[HDR_BLEND_V_NUM] The strength of blending the value of brightness based on brightness and then blending with max(R, G, B). Parameter range: 0 ~ 255. The greater the value, the more max(R, G, B) will be blended. u8YSrcStr[0] represents the strength of long exposure, while u8YSrcStr[1] represents the strength of short exposure. HDR_BLEND_V_NUM = 2. u8NrStr The strength of noise reduction for short exposure. Parameter range: 0 ~ 63. The greater the value, the stronger the noise reduction. u8NrPreStr The strength of preparatory noise reduction for short exposure. Parameter range: 0 ~ 63. The greater the value, the stronger the noise reduction. u16NrYTh1 Threshold value of the lowest brightness for short exposure noise reduction. When brightness is lower than Th1, full noise reduction will be applied. Parameter range: 0 ~ 1023. u16NrYTh2 Threshold value of the highest brightness for short exposure noise reduction. When brightness is higher than Th2, noise reduction will not be applied. When brightness falls between Th1 and Th2, blending will be applied. Parameter range: 0 ~ 1023. u8NrYGain[HDR_LUT_Y_NUM] Control the strength of noise reduction for short exposure based on the difference in brightness. The smaller the value, the stronger the noise reduction. Parameter range: 0 ~ 255. 1x = 16. HDR_LUT_Y_NUM = 7. u8NrYSft[HDR_LUT_X_NUM] The node on the horizontal axis of NrYGain for short exposure, accumulated by power of 2. Parameter range: 0 ~ 7. HDR_LUT_X_NUM = 6. u8NrKernelStr The strength of NR filter for short exposure. Parameter range: 0 ~ 7. The greater the value, the stronger the noise reduction. u8NrKernelStrWei[HDR_STR_BY_DIFF] The weighting table of NR filter blending for short exposure. Parameter range: 0 ~ 31. The greater the value, the stronger the noise reduction. The horizontal axis represents the difference from the center point, while the vertical axis represents weighting. Under normal circumstances, the smaller the difference, the greater weighting should be set. HDR_STR_BY_DIFF = 32. u8MotAdjSft1[HDR_MOT_LUT_X_NUM] The node on the horizontal axis of MotAdj1, accumulated by power of 2. Parameter range: 0 ~ 7. HDR_MOT_LUT_X_NUM = 6. u8MoLuBlendSft[HDR_BLEND_LUT_X_NUM] The node on the horizontal axis of MoLuBlendY, accumulated by power of 2. Parameter range: 0 ~ 7. HDR_MOT_LUT_X_NUM = 6. u16MotAdj1[HDR_MOT_LUT_Y_NUM] LUT1 blended by the extent of motion. The blending ratio of long exposure is determined by brightness, which is represented by the horizontal axis: the more to the right, the brighter is suggested. Parameter range: 0 ~ 256. HDR_MOT_LUT_Y_NUM = 7. u16MotAdj2[HDR_MOT_LUT_Y_NUM] LUT2 blended by the extent of motion. The motion area adopts the ratio of long exposure. The horizontal axis represents the extent of motion: the more to the right, the more motion is suggested. Parameter range: 0 ~ 256. HDR_MOT_LUT_Y_NUM = 7. u16MotAdj3[HDR_MOT_LUT_Y_NUM] LUT3 blended by the extent of motion. The motion area adopts the ratio of median exposure. The horizontal axis represents the extent of motion: the more to the right, the more motion is suggested. Parameter range: 0 ~ 256. HDR_MOT_LUT_Y_NUM = 7. u16MoLuBlendY[HDR_BLEND_LUT_Y_NUM] The blending ratio table of long exposure and medium exposure based on brightness fusion and blending based on the extent of motion. The horizontal axis represents the extent of motion: the farther to the right, the more motion is indicated. The vertical axis represents the blending ratio. The larger the value, the higher the ratio of blending based on the extent of motion. Parameter range: 0 ~ 256. HDR_BLEND_LUT_Y_NUM = 7. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Lsc Structure¶
Type Structure¶
-
Description
The type structure to set lens shading calibration (LSC).
-
Definition
typedef struct MI_ISP_IQ_LscType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U16 u16CenterX;
MI_U16 u16CenterY;
MI_U16 u16RateX;
MI_U16 u16RateY;
MI_U8 u8Shift;
MI_U16 u16RGainTable[LSC_TBL_SIZE * LSC_CCT_NUM_MAX];
MI_U16 u16GGainTable[LSC_TBL_SIZE * LSC_CCT_NUM_MAX];
MI_U16 u16BGainTable[LSC_TBL_SIZE * LSC_CCT_NUM_MAX];
} MI_ISP_IQ_LscType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of LSC.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16CenterX Set a compensation center point on the X-axis. Parameter range: 0 ~ 4095. u16CenterY Set a compensation center point on the Y-axis. Parameter range: 0 ~ 4095. u16RateX The zooming ratio o difference in the distance on the X-axis. The base is 1024. Parameter range: 0 ~ 2047. The difference between X of the current point and the X of the LSC center point will be multiplied by this ratio to calculate, by taking the Y-axis direction into account, the distance from the LSC center point. u16RateY The zooming ratio of difference in the distance on the Y-axis. The base is 1024. Parameter range: 0 ~ 2047. The difference between Y of the current point and the Y of the LSC center point will be multiplied by this ratio to calculate, by taking the X-axis direction into account, the distance from the LSC center point. u8Shift This parameter is set according to resolution, and modification is not suggested. Parameter range: 0 ~ 31. u16RGainTable [LSC_TBL_SIZE * LSC_CCT_NUM_MAX] The LSC compensation table for R channel. Parameter range: 0 ~ 1023. LSC_TBL_SIZE = 32, LSC_CCT_NUM_MAX = 3. u16GGainTable [LSC_TBL_SIZE * LSC_CCT_NUM_MAX] The LSC compensation table for G channel. Parameter range: 0 ~ 1023. LSC_TBL_SIZE = 32, LSC_CCT_NUM_MAX = 3. u16BGainTable [LSC_TBL_SIZE * LSC_CCT_NUM_MAX] The LSC compensation table for B channel. Parameter range: 0 ~ 1023. LSC_TBL_SIZE = 32, LSC_CCT_NUM_MAX = 3. -
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetLsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscType_t *data);
MI_S32 MI_ISP_IQ_GetLsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscType_t *data);
MI_ISP_IQ_LscCtrl Structure¶
Type Structure¶
-
Description
The type structure to set LSC CTRL.
-
Definition
typedef struct MI_ISP_IQ_LscCtrlType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8RRatioByCct[LSC_CCT_NUM_MAX];
MI_U8 u8GRatioByCct[LSC_CCT_NUM_MAX];
MI_U8 u8BRatioByCct[LSC_CCT_NUM_MAX];
MI_ISP_IQ_IntpLut_t RatioByBv;
} MI_ISP_IQ_LscCtrlType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of LSC CTRL.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8RRatioByCct [LSC_CCT_NUM_MAX] The extra ratio of LSC for R channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. u8GRatioByCct [LSC_CCT_NUM_MAX] The extra ratio of LSC for G channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. u8BRatioByCct [LSC_CCT_NUM_MAX] The extra ratio of LSC for B channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. RatioByBv.u16NumOfPoints The number of RatioByBv node. Parameter range: 0 ~ 16. RatioByBv.s32Y[INTP_LUT_NUM] The ratio of each node. Parameter range: 0 ~ 128 (128 = 1x). INTP_LUT_NUM = 16. RatioByBv.s32X[INTP_LUT_NUM] BV of each node. INTP_LUT_NUM = 16. -
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
MI_S32 MI_ISP_IQ_GetLscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_LscCtrlType_t *data);
MI_ISP_IQ_Alsc Structure¶
Type Structure¶
-
Description
The type structure to set auto lens shading calibration (ALSC).
-
Definition
typedef struct MI_ISP_IQ_AlscType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8GridX;
MI_U8 u8GridY;
MI_U16 u16CCTthr[ALSC_CCT_NUM_MAX];
MI_U8 u8DeltaMode;
MI_ISP_IQ_Bool_e bDeltaModeAdvEn;
MI_U8 u8DeltaLutX[ALSC_DELTA_LUT_NUM];
MI_U8 u8DeltaLutY[ALSC_DELTA_LUT_NUM];
MI_U16 u16TableR[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX];
MI_U16 u16TableG[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX];
MI_U16 u16TableB[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX];
} MI_ISP_IQ_AlscType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of ALSC.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8GridX The total number of grids on the X-axis of shading table. Parameter range: 0 ~ 27. u8GridY The total number of grids on the Y-axis of shading table. Parameter range: 0 ~ 17. u16CCTthr[ALSC_CCT_NUM_MAX] Color temperature node. Parameter range: 0 ~ 20000. ALSC_CCT_NUM_MAX = 3. u8DeltaMode 16 default modes of shading table spacing. 0 means isometric. The greater the value, the larger spacing in the center and the smaller the spacing in the surrounding area. Parameter range: 0 ~ 15. bDeltaModeAdvEn Manual control of spacing for each grid. When enabled, u8DeltaMode will become ineffective. Parameter range: 0 ~ 1. u8DeltaLutX[ALSC_DELTA_LUT_NUM] The spacing of each grid on the X-axis. Only 1, 2, 4, 8 and 16 are valid. Parameter range: 0 ~ 16. ALSC_DELTA_LUT_NUM = 26. u8DeltaLutY[ALSC_DELTA_LUT_NUM] The spacing of each grid on the Y-axis. Only 1, 2, 4, 8 and 16 are valid. Parameter range: 0 ~ 16. ALSC_DELTA_LUT_NUM = 26. u16TableR[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX] The ALSC compensation table for R channel. Parameter range: 0 ~ 8191 (1024 = 1x). ALSC_CCT_NUM_MAX = 3, ALSC_TBL_MAX = 459. u16TableG[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX] The ALSC compensation table for G channel. Parameter range: 0 ~ 8191 (1024 = 1x). ALSC_CCT_NUM_MAX = 3, ALSC_TBL_MAX = 459. u16TableB[ALSC_CCT_NUM_MAX][ALSC_TBL_MAX] The ALSC compensation table for B channel. Parameter range: 0 ~ 8191 (1024 = 1x). ALSC_CCT_NUM_MAX = 3, ALSC_TBL_MAX = 459. -
Note
- Do not set R/G/B Table to a value lower than 1024; otherwise, color shift might occur in high brightness part due to unsaturatedness.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAlsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscType_t *data);
MI_S32 MI_ISP_IQ_GetAlsc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscType_t *data);
MI_ISP_IQ_AlscCtrl Structure¶
Type Structure¶
-
Description
The type structure to set ALSC CTRL.
-
Definition
typedef struct MI_ISP_IQ_AlscCtrlType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8RRatioByCct[ALSC_CCT_NUM_MAX];
MI_U8 u8GRatioByCct[ALSC_CCT_NUM_MAX];
MI_U8 u8BRatioByCct[ALSC_CCT_NUM_MAX];
MI_ISP_IQ_IntpLut_t RatioByBv;
} MI_ISP_IQ_AlscCtrlType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of ALSC CTRL.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8RRatioByCct[ALSC_CCT_NUM_MAX] The extra ratio of ALSC for R channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. u8GRatioByCct[ALSC_CCT_NUM_MAX] The extra ratio of ALSC for G channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. u8BRatioByCct[ALSC_CCT_NUM_MAX] The extra ratio of ALSC for B channel. Parameter range: 0 ~ 128 (128 = 1x). LSC_CCT_NUM_MAX = 3. RatioByBv.u16NumOfPoints The number of RatioByBv node. Parameter range: 0 ~ 16. RatioByBv.s32Y[INTP_LUT_NUM] The ratio of each node. Parameter range: 0 ~ 128 (128 = 1x). INTP_LUT_NUM = 16. RatioByBv.s32X[INTP_LUT_NUM] BV of each node. INTP_LUT_NUM = 16. -
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
MI_S32 MI_ISP_IQ_GetAlscCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscCtrlType_t *data);
MI_ISP_IQ_AlscAdj Structure¶
Type Structure ¶
-
Description
The type structure to set ALSC ADJ.
-
Definition
typedef struct MI_ISP_IQ_AlscAdjType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U16 u16ComplexTH;
MI_U16 u16MaxAdjustR;
MI_U16 u16MinAdjustR;
MI_U16 u16MaxAdjustB;
MI_U16 u16MinAdjustB;
MI_U8 u8CheckRange;
MI_U8 u8UniformLineTH;
MI_U8 u8DebugLevel;
MI_ISP_IQ_IntpLut_t RatioByBv;
} MI_ISP_IQ_AlscAdjType_t;
-
Name
Variable Name Description bEnable Set Boolean value for ALSC ADJ function.
To disable, set E_SS_IQ_FALSE = 0.
To enable, set E_SS_IQ_TRUE = 1.u16ComplexTH Parameter range: 0 ~ 65536. If the complexity of the area within the searched range is smaller than Complex Thr, the area will be listed as the candidate for the evaluation of color shading judgement. u16MaxAdjustR Parameter range: 256 ~ 512. The maximum range allowed for the algorithm to increase R in ALSC table. 256 = 1x. We suggest that you carefully tune the parameter to an appropriate value inside the light box. Setting the value too large or too small is not recommended, otherwise color deviation may occur to the picture when algorithm misjudges. u16MinAdjustR Parameter range: 128 ~ 256. The maximum range allowed for the algorithm to decrease R in ALSC table. 256 = 1x. We suggest that you carefully tune the parameter to an appropriate value inside the light box. Setting the value too large or too small is not recommended, otherwise color deviation may occur to the picture when algorithm misjudges. u16MaxAdjustB Parameter range: 256 ~ 512. The maximum range allowed for the algorithm to increase B in ALSC table. 256 = 1x. We suggest that you carefully tune the parameter to an appropriate value inside the light box. Setting the value too large or too small is not recommended, otherwise color deviation may occur to the picture when algorithm misjudges. u16MinAdjustB Parameter range: 128 ~ 256. The maximum range allowed for the algorithm to decrease B in ALSC table. 256 = 1x. We suggest that you carefully tune the parameter to an appropriate value inside the light box. Setting the value too large or too small is not recommended, otherwise color deviation may occur to the picture when algorithm misjudges. u8CheckRange Parameter range: 8 ~ 16. The picture is divided into 32 regions both horizontally and vertically. The value represents the check range starting from the center of the picture. We suggest that you set the range within the region of apparent color shading in the camera module. The self-adaptive algorithm determines compensation by the sum of shading within the check range. If the range is set too large, the algorithm may have to deal with too many areas with no apparent color shading, thus affecting the overall evaluation result. u8UniformLineTH Parameter range: 8 ~ 128. Perform the evaluation of shading in the picture only when the area listed as candidate (of which the complexity < Complex Thr) is larger than Uniform line count TH. If algorithm misjudgement often occurs to common scenes, you may increase this parameter so that evaluation will be carried out only when there are enough of candidate areas. u8DebugLevel Print out debug log. RatioByBv The value of brightness of each node. Compensation can be reduced in scenes with a relatively low light source according to the value of brightness. This parameter directly changes Increase/Decrease R/B Gain in the algorithm. -
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAlscAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscAdjType_t *data);
MI_S32 MI_ISP_IQ_GetAlscAdj(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AlscAdjType_t *data);
MI_ISP_IQ_DarkShading Structure¶
Type Structure¶
-
Description
The type structure to set Dark Shading.
-
Definition
typedef struct MI_ISP_IQ_DarkShadingType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_DarkShadingManualAttr_t stManual;
} MI_ISP_IQ_DarkShadingType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Dark Shading.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stManual The attribute structure of manual mode to set Dark Shading. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDarkShading(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DarkShadingType_t *data);
MI_S32 MI_ISP_IQ_GetDarkShading(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DarkShadingType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Dark Shading.
-
Definition
typedef struct MI_ISP_IQ_DarkShadingManualAttr_s
{
MI_ISP_IQ_DarkShadingParam_t stParaAPI;
} MI_ISP_IQ_DarkShadingManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Dark Shading.
-
Definition
typedef struct MI_ISP_IQ_DarkShadingParam_s
{
MI_U16 u16Radius;
MI_U8 u8SmoothBoundary;
} MI_ISP_IQ_DarkShadingParam_t;
-
Name
Variable Name Description u16Radius Adjust the radius range according to the center of the image. Parameter range: 0 ~ 65535. The greater the value, the broader the visible range of shading. u8SmoothBoundary Adjust the smooth range of the edge based on the image. Parameter range: 0 ~ 16. The greater the value, the larger the transition zone of the edge of image. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_DaynightDetection Structure¶
Type Structure¶
-
Description
The type structure to set Day/Night detection.
-
Definition
typedef struct MI_ISP_IQ_DaynightDetectionType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_S32 s32D2N_BvThd;
MI_U32 u32N2D_VsbLtScoreThd;
} MI_ISP_IQ_DaynightDetectionType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Day / Night detection.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.s32D2N_BvThd The threshold value of brightness for determining whether Day mode should switch to Night mode. If the current brightness value (accessible as "BV" in AEInfo) falls below this threshold, the D2N field in DayNightInfo Interface will show "1" (TRUE). Value range: -1048576 ~ 1048576. u32N2D_VsbLtScoreThd Score threshold for determining whether Night mode should switch to Day mode. The score is calculated by the ratio of visible light to IR light, and higher ratio means visible light is more dominant. Once the current score (as "N2D_VsbLtScore" in DayNightInfo interface) grows larger than this threshold, the N2D field in DayNightInfo Interface will show "1" (TRUE). Value range: 0 ~ 2000. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDayNightDetection(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightDetectionType_t *data);
MI_S32 MI_ISP_IQ_GetDayNightDetection(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightDetectionType_t *data);
MI_ISP_IQ_DaynightInfo Structure¶
Type Structure¶
-
Description
The type structure to get Day/Night detection result.
-
Definition
typedef struct MI_ISP_IQ_DaynightInfoType_s
{
MI_ISP_IQ_Bool_e bD2N;
MI_ISP_IQ_Bool_e bN2D;
MI_U32 u32N2D_VsbLtScore;
} MI_ISP_IQ_DaynightInfoType_t;
-
Name
Variable Name Description bD2N Flag that determines whether Day mode should switch to Night mode. Value "1" means that the current environmental brightness has met the condition of switching to Night mode. Note: The flag is only meaningful when the current mode is Day mode. bN2D Flag that determines whether Night mode should switch to Day mode. Value "1" means that the current environmental brightness has met the condition of switching to Day mode. Note: The flag is only meaningful when the current mode is Night mode. u32N2D_VsbLtScore The score as calculated by the ratio of current visible light to IR light. Higher score means that visible light is more dominant in the environment. In cases where switching to Day mode is considered desirable, users can read this score to determine the setting of "N2D_VsbLtScoreThd" in DayNightDetection Interface. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_QueryDayNightInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DaynightInfoType_t *data);
MI_ISP_IQ_Hue Structure¶
Type Structure ¶
-
Description
The type structure to set Hue conversion.
-
Definition
typedef struct MI_ISP_IQ_HueType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_HueAutoAttr_t stAuto;
MI_ISP_IQ_HueManualAttr_t stManual;
} MI_ISP_IQ_HueType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Hue conversion.
To disable, set E_SS_IQ_FALSE = 0.
To enable, set E_SS_IQ_TRUE = 1.enOpType Set working mode of Hue conversion.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Hue conversion. stManual The attribute structure of manual mode to set Hue conversion. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetHue(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HueType_t *data);
MI_S32 MI_ISP_IQ_GetHue(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HueType_t *data);
Automatic Mode Attribute Structure ¶
-
Description
The attribute structure of automatic mode to set Hue conversion.
-
Definition
typedef struct MI_ISP_IQ_HueAutoAttr_s
{
MI_ISP_IQ_LevelBaseParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_HueAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure ¶
-
Description
The attribute structure of manual mode to set Hue conversion.
-
Definition
typedef struct MI_ISP_IQ_HueManualAttr_s
{
MI_ISP_IQ_LevelBaseParam_t paraAPI;
} MI_ISP_IQ_HueManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure ¶
-
Description
The parameter structure to set Hue conversion.
-
Definition
typedef struct MI_ISP_IQ_LevelBaseParam_s
{
MI_U32 u32Lev;
} MI_ISP_IQ_LevelBaseParam_t;
-
Name
Variable Name Description u32Lev Set the level of Hue conversion. Parameter range: 0 ~ 63. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_NrLumaAdv Structure¶
Type Structure¶
-
Description
The type structure to set Luma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaAdvType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8DbgMode;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_NrLumaAdvAutoAttr_t stAuto;
MI_ISP_IQ_NrLumaAdvManualAttr_t stManual;
} MI_ISP_IQ_NrLumaAdvType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Luma_Adv noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8DbgMode Debug mode. Parameter range: 0 ~ 2. "1" represents the mode of edge judgement: the brighter the image, the more it is identified as edge area; the darker the image, the more it is identified as non-edge area. This parameter only performs Luma processing, which has nothing to do with colors of the image. "2" represents the mode defect detection, which helps you observe where white pixel defect appears. enOpType Set working mode of Luma_Adv noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Luma_Adv noise reduction. stManual The attribute structure of manual mode to set Luma_Adv noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNrLumaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaAdvType_t *data);
MI_S32 MI_ISP_IQ_GetNrLumaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrLumaAdvType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Luma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaAdvAutoAttr_s
{
MI_ISP_IQ_NrLumaAdvParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_NrLumaAdvAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Luma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaAdvManualAttr_s
{
MI_ISP_IQ_NrLumaAdvParam_t stParaAPI;
} MI_ISP_IQ_NrLumaAdvManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Luma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrLumaAdvParam_s
{
MI_U8 u8HotPixCnt;
MI_U8 u8DarkPixCnt;
MI_U8 u8HotPix[NRLUMA_ADV_PIX_NUM];
MI_U8 u8DarkPix[NRLUMA_ADV_PIX_NUM];
MI_U16 u16EdgeThByLuma[NRLUMA_ADV_BY_LUMA_NUM];
MI_U8 u8LumaSft[NRLUMA_ADV_LUMASFT_NUM];
MI_U8 u8EdgeThByMot[NRLUMA_ADV_BY_MOT_NUM];
MI_U8 u8EdgeThByMot1[NRLUMA_ADV_BY_MOT_NUM];
MI_U8 EdgeThByRadius_Sft[NRLUMA_ADV_RADIUSSFT_NUM];
MI_U8 EdgeThByRadius[NRLUMA_ADV_RADIUS_NUM];
MI_U8 u8SF1_str;
MI_U8 u8SF2_str;
MI_U8 u8SF3_KerStr;
MI_U8 u8SF3_KerWei[NRLUMA_ADV_KERWEI_NUM];
MI_U8 u8SF3_StrByLuma[NRLUMA_ADV_BY_LUMA_NUM];
MI_U8 u8SF3_StrByMot[NRLUMA_ADV_BY_MOT_NUM];
MI_U8 u8SF3_StrByHue[NRLUMA_ADV_BY_HUE_NUM];
MI_U8 u8SF3_StrByHue_SatTh[NRLUMA_ADV_LEVEL_NUM];
MI_U8 u8SF3_StrByDir_Sft[NRLUMA_ADV_BY_DIR_SFT_NUM];
MI_U8 u8SF3_StrByDir[NRLUMA_ADV_BY_DIR_LUT_NUM];
MI_U8 u8SF4_KerStr;
MI_U8 u8SF4_KerWei[NRLUMA_ADV_KERWEI_NUM];
MI_U8 u8SF4_StrByLuma[NRLUMA_ADV_BY_LUMA_NUM];
MI_U8 u8SF4_StrByMot[NRLUMA_ADV_BY_MOT_NUM];
MI_U16 u16Strength[NRLUMA_ADV_LEVEL_NUM];
MI_U8 u8StrengthByMot[NRLUMA_ADV_BY_MOT_NUM];
MI_U8 u8StrengthByLuma[NRLUMA_ADV_BY_LUMA_NUM];
MI_U8 u8CombinationRatio;
} MI_ISP_IQ_NrLumaAdvParam_t;
-
Name
Variable Name Description u8HotPixCnt The number of hot pixels to be compensated. Parameter range: 0 ~ 7. This parameter determines the number of defective pixels (hot pixels) that needs to be compensated. The recommended value is 1. u8DarkPixCnt The number of dark pixels to be compensated. Parameter range: 0 ~ 7. This parameter determines the number of defective pixels (dark pixels) that needs to be compensated. The recommended value is 1. u8HotPix[NRLUMA_ADV_PIX_NUM] The threshold value of hot pixel compensation. Parameter range: 0 ~ 255. Four values determine the curve of threshold value. When the difference between the center point and the surrounding points is larger than the threshold value of the curve, the center point will be identified as the defective pixel (hot pixel). NRLUMA_ADV_PIX_NUM = 4. u8DarkPix[NRLUMA_ADV_PIX_NUM] The threshold value of dark pixel compensation. Parameter range: 0 ~ 255. Four values determine the curve of threshold value. When the difference between the center point and the surrounding points is larger than the threshold value of the curve, the center point will be identified as the defective pixel (dark pixel). NRLUMA_ADV_PIX_NUM = 4. u16EdgeThByLuma[NRLUMA_ADV_BY_LUMA_NUM] Adjust the threshold value of edge according to brightness. Parameter range: 0 ~ 8191. The horizontal axis represents brightness; the closer to the right end, the brighter. You may make adjustments along with DbgMode and observe whether edge distribution is reasonable. NRLUMA_ADV_BY_LUMA_NUM = 8. u8LumaSft[NRLUMA_ADV_LUMASFT_NUM] Adjust the shifting range of brightness. Parameter range: 0 ~ 8. You may change the shifting range of brightness according to different brightness interval. NRLUMA_ADV_LUMASFT_NUM = 7 u8EdgeThByMot[NRLUMA_ADV_BY_MOT_NUM] Adjust the threshold value of L1 Edge. Parameter range: 0 ~ 255. The horizontal axis represents the extent of motion; the closer to the right end, the closer to stillness. You may make adjustments along with DbgMode and observe whether edge distribution is reasonable. NRLUMA_ADV_BY_MOT_NUM = 16. u8EdgeThByMot1[NRLUMA_ADV_BY_MOT_NUM] Adjust the threshold value of L2 Edge. Parameter range: 0 ~ 255. The horizontal axis represents the extent of motion; the closer to the right end, the closer to stillness. You may make adjustments along with DbgMode and observe whether edge distribution is reasonable. NRLUMA_ADV_BY_MOT_NUM = 16. u8EdgeThByRadius_Sft[NRLUMA_ADV_RADIUSSFT_NUM] Adjust the size of scale of distance from the center point. Parameter range: 0 ~ 7. You may adjust the size of scale according to different scales of distance. NRLUMA_ADV_RADIUSSFT_NUM = 5 u8EdgeThByRadius[NRLUMA_ADV_RADIUS_NUM] Adjust the strength based on the distance from the center point. Parameter range: 0 ~ 127. The horizontal axis represents the distance from the center point. The more to the right, the farther from the center point. NRLUMA_ADV_RADIUS_NUM = 6 u8SF1_str The strength of noise reduction in edge areas. Parameter range: 0 ~ 127. You may adjust the strength pf NR according to the edge areas shown in Debug mode. u8SF2_str The strength of noise reduction in smooth or areas in motion. Parameter range: 0 ~ 127. You may adjust the strength of NR based on where smooth areas or areas in motion are, as shown in Debug mode. u8SF3_KerStr The shifting value of directional noise reduction parameter according to the difference from the center point. Parameter range: 0 ~ 9. The greater the value, the stronger the NR effects. u8SF3_KerWei[NRLUMA_ADV_KERWEI_NUM] The mixed weighting table of directional noise reduction parameter. Parameter range: 0 ~ 63. The horizontal axis represents the difference from the center point, while the vertical axis represents the weight. Under normal circumstances, the smaller the difference, the greater weight should be set. NRLUMA_ADV_KERWEI_NUM = 16. u8SF3_StrByLuma[NRLUMA_ADV_BY_LUMA_NUM] Adjust the strength of directional noise reduction parameter based on brightness. Parameter range: 0 ~ 127. The horizontal axis represents brightness; the closer to the right end, the brighter. NRLUMA_ADV_BY_LUMA_NUM = 8. u8SF3_StrByMot[NRLUMA_ADV_BY_MOT_NUM] Adjust the strength of directional noise reduction parameter blended with the result of mean filter according to motion. Parameter range: 0 ~ 127. The horizontal axis represents motion; the closer to the right end, the closer to stillness is suggested. The vertical axis represents the ratio of blending with the result of mean filter. Setting the value too big is not recommended because mean filter is very strong. NRLUMA_ADV_BY_MOT_NUM = 16. u8SF3_StrByHue[NRLUMA_ADV_BY_HUE_NUM] Adjust the strength of directional noise reduction parameter based on hue. The horizontal axis represents hue (the same as HSV). NRLUMA_ADV_BY_HUE_NUM = 24. u8SF3_StrByHue_SatTh[NRLUMA_ADV_LEVEL_NUM] Adjust the strength of directional noise reduction parameter based on saturation. Parameter range: 0 ~ 127. If saturation is smaller than SF3_StrByHue_SatTh1, SF3_StrByHue will become ineffective, which means the adjustment to strength is not subject to the hue with low saturation. If saturation is larger than SF3_StrByHue_SatTh2, the strength will be adjusted in complete accordance with SF3_StrByHue. The transitional zone shows linear change. NRLUMA_ADV_LEVEL_NUM = 2. u8SF3_StrByDir_Sft[NRLUMA_ADV_BY_DIR_SFT_NUM] Adjust the strength of directional noise reduction parameter based on the size of scale of directionalness. Parameter range: 0 ~ 7. You may adjust the size of scale according to different scales of distance. NRLUMA_ADV_BY_DIR_SFT_NUM = 7. u8SF3_StrByDir[NRLUMA_ADV_BY_DIR_LUT_NUM] Adjust the strength of directional noise reduction parameter based on the extent of directionalness. Parameter range: 0 ~ 127. NRLUMA_ADV_BY_DIR_LUT_NUM = 8 u8SF4_KerStr Adjust the strength of non-directional noise reduction parameter based on the difference from the center point. Parameter range: 0 ~ 9. The greater the value, the stronger the NR effects. u8SF4_KerWei[NRLUMA_ADV_KERWEI_NUM] The mixed weighting table of non-directional NR parameter. Parameter range: 0 ~ 63. The horizontal axis represents the difference from the center point, while the vertical axis represents the weight. Under normal circumstances, the smaller the difference, the greater weight should be set. NRLUMA_ADV_KERWEI_NUM = 16. u8SF4_StrByLuma[NRLUMA_ADV_BY_LUMA_NUM] Adjust the strength of non-directional noise reduction parameter based on brightness. Parameter range: 0 ~ 127. The horizontal axis represents brightness; the closer to the right end, the brighter. NRLUMA_ADV_BY_LUMA_NUM = 8. u8SF4_StrByMot[NRLUMA_ADV_BY_MOT_NUM] Adjust the strength of non-directional noise reduction parameter blended with the result of mean filter according to motion. Parameter range: 0 ~ 127. The horizontal axis represents motion; the closer to the right end, the closer to stillness is suggested. The vertical axis represents the ratio of blending with the result of mean filter. Setting the value too big is not recommended because mean filter is very strong. NRLUMA_ADV_BY_MOT_NUM = 16. u16Strength[NRLUMA_ADV_LEVEL_NUM] The general strength. Parameter range: 0 ~ 256. Strength1 represents the strength in edge areas, while Strength2 represents the strength in smooth areas and areas in motion. The greater the value, the stronger the strength. The final strength is based on Strength, with the control by StrengthByMot and StrengthByLuma, so we suggest that Strength should not be set to the maximum, otherwise StrengthByMot and StrengthByLuma will become ineffective. NRLUMA_ADV_LEVEL_NUM = 2. u8StrengthByMot[NRLUMA_ADV_BY_MOT_NUM] Adjust the strength based on motion. Parameter range: 0 ~ 64. The horizontal axis represents motion; the closer to the right end, the closer to stillness is suggested. NRLUMA_ADV_BY_MOT_NUM = 16. u8StrengthByLuma[NRLUMA_ADV_BY_LUMA_NUM] Adjust the strength based on brightness. Parameter range: 0 ~ 64. The horizontal axis represents brightness; the closer to the right end, the brighter is suggested. NRLUMA_ADV_BY_LUMA_NUM = 8. u8CombinationRatio Determine the blending ratio of directionalness and non-directionalness. The larger the value, the more directionalness will be lended in. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_NrChromaAdv Structure¶
Type Structure¶
-
Description
The type structure to set Chroma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaAdvType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_NrChromaAdvAutoAttr_t stAuto;
MI_ISP_IQ_NrChromaAdvManualAttr_t stManual;
} MI_ISP_IQ_NrChromaAdvType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Chroma_Adv noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of Chroma_Adv noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Chroma_Adv noise reduction. stManual The attribute structure of manual mode to set Chroma_Adv noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNrChromaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaAdvType_t *data);
MI_S32 MI_ISP_IQ_GetNrChromaAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaAdvType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Chroma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaAdvAutoAttr_s
{
MI_ISP_IQ_NrChromaAdvParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_NrChromaAdvAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Chroma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaAdvManualAttr_s
{
MI_ISP_IQ_NrChromaAdvParam_t stParaAPI;
} MI_ISP_IQ_NrChromaAdvManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Chroma_Adv noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaAdvParam_s
{
MI_U8 u8StrengthByY[NRCHROMA_ADV_BY_Y_NUM];
MI_U8 u8StrengthByYEdge[NRCHROMA_ADV_BY_YEDGE_NUM];
MI_U8 u8StrengthByCEdge[NRCHROMA_ADV_BY_CEDGE_NUM];
MI_U8 u8MaxStrength;
MI_U8 u8StrengthByMot[NRCHROMA_ADV_BY_MOT_NUM];
MI_U8 u8MotionClip;
MI_U8 u8MotionColorReduce;
MI_U8 u8MotionColorRecover;
MI_U8 u8PreStrength;
} MI_ISP_IQ_NrChromaAdvParam_t;
-
Name
Variable Name Description u8StrengthByY[NRCHROMA_ADV_BY_Y_NUM] Assign different levels of NR strength by Y. The closer to the right end of the horizontal axis, the stronger the brightness. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. NRCHROMA_ADV_BY_Y_NUM = 8. u8StrengthByYEdge [NRCHROMA_ADV_BY_YEDGE_NUM] Use Luma to detect the extent of edge and adjust the level of NR strength according to different edges. The closer to the right end of the horizontal axis, the bigger the edge. The greater the value, the stronger the strength. Parameter range: 0 ~ 63. NRCHROMA_ADV_BY_YEDGE_NUM = 8. u8StrengthByCEdge [NRCHROMA_ADV_BY_CEDGE_NUM] Use Chroma to detect the extent of edge and adjust the level of NR strength according to different edges. The closer to the right end of the horizontal axis, the bigger the edge. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. NRCHROMA_ADV_BY_CEDGE_NUM = 8. u8MaxStrength Control the level of NR strength in areas of small Y/C difference. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. u8StrengthByMot [NRCHROMA_ADV_BY_MOT_NUM] Control the level of NR strength by motion. The horizontal axis represents the extent of motion. The closer to the right end of the axis, the closer to stillness. The greater the value, the stronger the strength. Parameter range: 0 ~ 63. NRCHROMA_ADV_BY_MOT_NUM = 16. u8MotionClip Assign greater level of NR strength to motion areas. The greater the value, the stronger the strength. Parameter range: 0 ~ 255. u8MotionColorReduce Reduce the saturation of motion areas. The greater the value, the greater level of saturation is reduced. Parameter range: 0 ~ 255. u8MotionColorRecover Recover the gain of saturation reduced by MotionColorReduce against motion areas. The greater the value, the greater level of saturation is recovered. Parameter range: 0 ~ 255. u8PreStrength Perform simple Chroma noise reduction. The greater the value, the stronger the strength. Parameter range: 0 ~ 128. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Pfc Structure¶
Type Structure¶
-
Description
The type structure to set PFC.
-
Definition
typedef struct MI_ISP_IQ_PfcType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8DbgEn;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_PfcAutoAttr_t stAuto;
MI_ISP_IQ_PfcManualAttr_t stManual;
} MI_ISP_IQ_PfcType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of PFC.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8DbgEn Parameter range: 0 ~ 8. 0: Debug off; 1: PFC ByHue strength; 2: PFC ByY strength; 3: PFC ByContrast strength; 4: BLCC ByHue strength; 5: BLCC ByY strength; 6: BLCC ByContrast strength; 7: PFC final strength; 8: PFC/BLCC final strength enOpType Set working mode of PFC.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set PFC. stManual The attribute structure of manual mode to set PFC. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetPfc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcType_t *data);
MI_S32 MI_ISP_IQ_GetPfc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_PfcType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set PFC.
-
Definition
typedef struct MI_ISP_IQ_PfcAutoAttr_s
{
MI_ISP_IQ_PfcParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_PfcAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set PFC.
-
Definition
typedef struct MI_ISP_IQ_PfcManualAttr_s
{
MI_ISP_IQ_PfcParam_t stParaAPI;
} MI_ISP_IQ_PfcManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set PFC.
-
Definition
typedef struct MI_ISP_IQ_PfcParam_s
{
MI_U8 u8MaskSel;
MI_U8 u8UStrength;
MI_U8 u8VStrength;
MI_U8 u8UStrengthLimit;
MI_U8 u8VStrengthLimit;
MI_U16 u16PFCByY[PFC_BY_Y_NUM];
MI_U8 u8PFCByHue[PFC_BY_HUE_NUM];
MI_U16 u16PFCByContrast[PFC_BY_CONTRAST_NUM];
MI_U8 u8BLCCByY[PFC_BY_Y_NUM];
MI_U8 u8BLCCByHue[PFC_BY_HUE_NUM];
MI_U16 u16BLCCByContrast[PFC_BY_CONTRAST_NUM];
MI_U8 u8ByYSft[PFC_BY_Y_SFT_NUM];
MI_U8 u8ByContrastSft[PFC_BY_CONTRAST_SFT_NUM];
} MI_ISP_IQ_PfcParam_t;
-
Name
Variable Name Description u8MaskSel Select the size of the mask for contrast-area judgement. Parameter range: 0 ~ 2. Mask 0 features smaller range, while Mask 2 features bigger range. u8UStrength The strength of PFC/BLCC acting on U channel. Parameter range: 0 ~ 255. The larger the value, the stronger the strength. u8VStrength The strength of PFC/BLCC acting on V channel. Parameter range: 0 ~ 255. The larger the value, the stronger the strength. u8UStrengthLimit The strength limit of PFC/BLCC acting on U channel. Parameter range: 0 ~ 63. u8VStrengthLimit The strength limit of PFC/BLCC acting on V channel. Parameter range: 0 ~ 63. u16PFCByY[PFC_BY_Y_NUM] Purple fringing usually appears in darker places where the surrounding is high-brightness area. You may assign different PFC strengths according to different brightnesses. The horizontal axis represents brightness; the closer to the right end, the greater brightness is suggested. Parameter range: 0 ~ 4095. The larger the value, the stronger the strength. PFC_BY_Y_NUM = 14. u8PFCByHue[PFC_BY_HUE_NUM] Assign different levels of PFC strength according to different hues. Parameter range: 0 ~ 255. The larger the value, the stronger the PFC. PFC_BY_HUE_NUM = 32. u16PFCByContrast[PFC_BY_CONTRAST_NUM] Assign different levels of PFC strengths according to the extent of contrast. The horizontal axis represents contrast; the closer to the right end, the stronger contrast is suggested. Parameter range: 0 ~ 511. The larger the value, the stronger the PFC. PFC_BY_CONTRAST_NUM = 10. u8BLCCByY[PFC_BY_Y_NUM] Backlit Color usually appears in darker places where the surrounding is high-brightness area. You may assign different BLCC strengths according to different brightnesses. The horizontal axis represents brightness; the closer to the right end, the greater brightness is suggested. Parameter range: 0 ~ 4095. The larger the value, the stronger the strength. PFC_BY_Y_NUM = 14. u8BLCCByHue[PFC_BY_HUE_NUM] Assign different levels of BLCC strength according to different hues. Parameter range: 0 ~ 255. The larger the value, the stronger the BLCC. PFC_BY_HUE_NUM = 32. u16BLCCByContrast[PFC_BY_CONTRAST_NUM] Assign different levels of BLCC strengths according to the extent of contrast. The horizontal axis represents contrast; the closer to the right end, the stronger contrast is suggested. Parameter range: 0 ~ 511. The larger the value, the stronger the BLCC. PFC_BY_CONTRAST_NUM = 10. u8ByYSft[PFC_BY_Y_SFT_NUM] The horizontal nodes of PFCByY/BLCCByY, accumulated by power of 2. Parameter range: 1 ~ 15. PFC_BY_Y_SFT_NUM = 13. u8ByContrastSft[PFC_BY_CONTRAST_SFT_NUM] The horizontal nodes of PFCByContrast/BLCCByContrast, accumulated by power of 2. Parameter range: 1 ~ 11. PFC_BY_CONTRAST_SFT_NUM = 9. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_HdrEx Structure¶
Type Structure¶
-
Description
The type structure to set HDR_EX.
-
Definition
typedef struct MI_ISP_IQ_HdrExType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_HdrExManualAttr_t stManual;
} MI_ISP_IQ_HdrExType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of HDR_EX.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stManual The attribute structure of manual mode to set HDR_EX. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetHdrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HdrExType_t *data);
MI_S32 MI_ISP_IQ_GetHdrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_HdrExType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set HDR_EX.
-
Definition
typedef struct MI_ISP_IQ_HdrExManualAttr_s
{
MI_ISP_IQ_HdrExParam_t stParaAPI;
} MI_ISP_IQ_HdrExManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set HDR_EX.
-
Definition
typedef struct MI_ISP_IQ_HdrExParam_s
{
MI_ISP_IQ_Bool_e bDbgEn;
MI_ISP_IQ_Bool_e bDynRatioEn;
MI_ISP_IQ_Bool_e bNrEn;
MI_U16 u16SensorExpRatio;
MI_U8 u8DynRatioSrcSel;
MI_U8 u8YSrcSel;
MI_U8 u8NoiseLevelSrcSel;
MI_U8 u8MotionMaxVal;
MI_U8 u8MotAdjSft2[HDR_EX_MOT_LUT_X_NUM];
} MI_ISP_IQ_HdrExParam_t;
-
Name
Variable Name Description DbgEn Debug mode. Parameter range: 0 ~ 1. bDynRatioEn Enable dynamic exposure compensation. Parameter range: 0 ~ 1. bNrEn Enable noise reduction for short exposure. Parameter range: 0 ~ 1. u16SensorExpRatio The ratio of long exposure and short exposure for HDR. We suggest setting the ratio in consistency with that of the AE. Parameter range: 1024 ~ 65535. u8DynRatioSrcSel Select the source of brightness for dynamic exposure compensation. Select "0" for long exposure, and "1" for short exposure. Parameter range: 0 ~ 1. u8YSrcSel Select the source of brightness for fusion by Luma. Select "0" for long exposure, and "1" for short exposure. Parameter range: 0 ~ 1. u8NoiseLevelSrcSel Select the source of brightness for noise level. Select "0" for long exposure, "1" for short exposure, "2" for the minimum of the two, and "3" for the maximum of the two. Parameter range: 0 ~ 3. u8MotionMaxVal Set maximum value for the limit of motion. The greater the value, the less likely noise will be misjudged as motion. Modification is not suggested. Parameter range: 0 ~ 7. u8MotAdjSft2[HDR_EX_MOT_LUT_X_NUM] The node on the horizontal axis of MotAdj2 and MotAdj3, accumulated by power of 2. Modification is not suggested. Parameter range: 0 ~ 7. HDR_EX_MOT_LUT_X_NUM = 6. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Dummy Structure¶
Type Structure¶
-
Description
The type structure to set DUMMY.
-
Definition
typedef struct MI_ISP_IQ_DUMMY_TYPE_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_Bool_e bLogEn;
MI_ISP_IQ_DummyAutoAttr_t stAuto;
MI_ISP_IQ_DummyManualAttr_t stManual;
} MI_ISP_IQ_DummyType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of DUMMY.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of DUMMY.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.bLogEn Print DUMMY message. When enabled, the content of DUMMY parameter structure will be printed. stAuto The attribute structure of automatic mode to set DUMMY. stManual The attribute structure of manual mode to set DUMMY. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDummy(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyType_t *data);
MI_S32 MI_ISP_IQ_GetDummy(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set DUMMY.
-
Definition
typedef struct MI_ISP_IQ_DummyAutoAttr_s
{
MI_ISP_IQ_DummyParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DummyAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set DUMMY.
-
Definition
typedef struct MI_ISP_IQ_DummyManualAttr_s
{
MI_ISP_IQ_DummyParam_t stParaAPI;
} MI_ISP_IQ_DummyManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set DUMMY.
-
Definition
typedef struct MI_ISP_IQ_DummyParam_s
{
MI_S16 s16Dummy0[DUMMY_NUM];
MI_S16 s16Dummy1[DUMMY_NUM];
MI_S16 s16Dummy2[DUMMY_NUM];
MI_S16 s16Dummy3;
MI_S16 s16Dummy4;
} MI_ISP_IQ_DummyParam_t;
-
Name
Variable Name Description s16Dummy0[DUMMY_NUM] Currently not functional. Default value is -1. Parameter range: -1 ~ 1023. DUMMY_NUM = 256. s16Dummy1[DUMMY_NUM] Currently not functional. Default value is -1. Parameter range: -1 ~ 3071. DUMMY_NUM = 256. s16Dummy2[DUMMY_NUM] The default value of Dummy2[0] is -1, which disables 3DNR enhancement in still areas. Setting this parameter to 64 and above will enable the function. The greater the value, the better improvement will be applied to interference in still areas, but objects in pure color may become transparent. We suggest that you enable this function when gain is high, gradually increase the value from 64 along with using 3DNR debug mode, and stop adjustment when interference is reduced. Dummy2[1 / 2 / 3] are used to fine-tune the control of low/medium/high level coefficients. 16 = 1x. The larger the value, the greater the strength. Note that the larger Dummy2[1] is, the more likely dark area will become lifelessly black, and the larger Dummy2[3] is, the more likely bright area will become lifelessly white. The default value is -1. Parameter range: -1 ~ 255. DUMMY_NUM = 256. s16Dummy3 Currently not functional. Default value is -1. Parameter range: -1 ~ 255. s16Dummy4 Currently not functional. Default value is -1. Parameter range: -1 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_DummyEx Structure¶
Type Structure¶
-
Description
The type structure to set DUMMY_EX.
-
Definition
typedef struct MI_ISP_IQ_DummyExType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_Bool_e bLogEn;
MI_ISP_IQ_DummyExManualAttr_t stManual;
} MI_ISP_IQ_DummyExType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of DUMMY_EX.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.bLogEn Print DUMMY message. When enabled, the content of DUMMY_EX parameter structure will be printed. stManual The attribute structure of manual mode to set DUMMY_EX. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDummyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyExType_t *data);
MI_S32 MI_ISP_IQ_GetDummyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DummyExType_t *data);
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set DUMMY_EX.
-
Definition
typedef struct MI_ISP_IQ_DummyExManualAttr_s
{
MI_ISP_IQ_DummyExParam_t stParaAPI;
} MI_ISP_IQ_DummyExManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set DUMMY_EX.
-
Definition
typedef struct MI_ISP_IQ_DummyExParam_s
{
MI_S16 s16DummyEx0[DUMMY_EX_NUM];
MI_S16 s16DummyEx1[DUMMY_EX_NUM];
MI_S16 s16DummyEx2[DUMMY_EX_NUM];
MI_S16 s16DummyEx3;
MI_S16 s16DummyEx4;
} MI_ISP_IQ_DummyExParam_t;
-
Name
Variable Name Description s16DummyEx0[DUMMY_EX_NUM] Dummy0[2] is used to set arbitrary mixing ratio for HDR mode. Set to 0 for full short exposure output, 256 for full long exposure output, and 128 for long and short exposure 1:1 output. It should be noted that this function will ignore the settings of HDR blending (Yth, MotAdj1 / 2 / 3, MoLuBlend) and force the output to be mixed with a fixed ratio of long and short exposures. Dummy0[3] is used to force 3DNR re-convergence. Setting it to a value other than -1 once will cause 3DNR to re-converge. Dummy0[4 / 5 / 6] is used to redistribute the low, medium, and high frequency filters of Sharpness. Dummy0[4 / 5 / 6] set the high/mid/mid-low frequency filters, respectively, for the bottom layer. When Dummy0[4 / 5 / 6] is set to -1, filters will not be redistributed; when Dummy0[4 / 5 / 6] is set to 0 / 1 / 2, high/mid/mid-low frequency filters will be given, respectively. Default value is -1. Parameter range: -1 ~ 255. DUMMY_EX_NUM = 256. s16DummyEx1[DUMMY_EX_NUM] Dummy1[0] is used to disable WDR brightness compensation. Please note that this function is for special purposes only and should not be enabled unless necessary. Dummy1[1] is used to select Sharpness Debug Map functions: -1 / 1 / 2 / 3 are the original DebugMap/StdMap/EdgeStateMap and D/UD Map, respectively. Dummy1[2] is used to select SharpnessEX Debug Map function: -1 / 1 / 2 are the original DebugMap/StdMap/EdgeStateMap, respectively. Default value is -1. Parameter range: -1 ~ 255. DUMMY_EX_NUM = 256. s16DummyEx2[DUMMY_EX_NUM] Currently not functional. Default value is -1. Parameter range: -1 ~ 255. DUMMY_EX_NUM = 256. s16DummyEx3 Adjust the position of OBC subtraction. If this parameter is set to 2, the OBC position will be moved backward, which is beneficial to the motion judgement of Bayer NR and 3DNR. Note: this function cannot be switched on/off according to gain, and you will have to re-adjust the values of 3DNR MdTh and GainbyY after the function is enabled. Default value is -1. Parameter range: -1 ~ 255. s16DummyEx4 Currently not functional. Default value is -1. Parameter range: -1 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_ROI Structure¶
Type Structure¶
-
Description
The type structure to set ROI (Region of Interest). You may define the region of interest in the picture according to your need, and then adjust the sharpness, denoise, as well as YUVGamma of the region separately.
-
Definition
typedef struct MI_ISP_IQ_ROIType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_ROIWinType_t stROI[ROI_WIN_NUM];
MI_U8 u8SharpStr[ROI_WIN_NUM];
MI_U8 u8SharpEXStr[ROI_WIN_NUM];
MI_U8 u8NRStr[ROI_WIN_NUM];
MI_ISP_IQ_YuvGammaParam_t stYUVGamma;
} MI_ISP_IQ_ROIType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of ROI.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.stROI Set the information about ROI location. ROI_WIN_NUM = 8. u8SharpStr Adjust the strength of sharpness for each ROI based on the setting of Sharpness API. Parameter range: 0 ~ 255. 64 = 1x. ROI_WIN_NUM = 8. u8SharpEXStr Adjust the strength of sharpness for each ROI based on the setting of Sharpness_EX APU. Parameter range: 0 ~ 255. 64 = 1x. ROI_WIN_NUM = 8. u8NRStr Adjust the strength of denoise for each ROI based on the setting of NRLuma_Adv module. Parameter range: 0 ~ 127. 64 = 1x. ROI_WIN_NUM = 8. stYUVGamma Set YUV Gamma curve for ROI. Note: This YUV Gamma setting will apply to eight ROIs. -
Note
- As SharpStr works on stdv (i.e. increases/decreases stdv value of each pixel in a specific ROI), this parameter will become ineffective if GainbyStd in Sharpness is set to the same value. SharpEXStr works in the same logic.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetROI(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ROIType_t *data);
MI_S32 MI_ISP_IQ_GetROI(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ROIType_t *data);
ROI Window Type Structure¶
-
Description
Set ROI location.
-
Definition
typedef struct MI_ISP_IQ_ROIWinType_s
{
MI_U32 u16StartX;
MI_U32 u16StartY;
MI_U32 u16Width;
MI_U32 u16Height;
} MI_ISP_IQ_ROIWinType_t;
-
Name
Variable Name Description u16StartX The actual X coordinate of the starting point of ROI on the X-axis. Value range: 0 ~ the width of input image. u16StartY The actual Y coordinate of the starting point of ROI on the Y-axis. Value range: 0 ~ the height of input image. u16Width The width of ROI frame. Value range: 0 ~ the width of input image. u16Height The height of ROI frame. Value range: 0 ~ the height of input image. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_IQ_WDRCurveFull Structure¶
Type Structure¶
-
Description
The type structure to set WDRCurveFull.
-
Definition
typedef struct MI_ISP_IQ_WdrCurveFullType_s
{
MI_ISP_IQ_Bool_e bEnable[E_WDR_CURVE_FULL_MAX];
MI_ISP_IQ_OpType_e enOpType[E_WDR_CURVE_FULL_MAX];
MI_ISP_IQ_WdrCurveFullAutoAttr_t stAuto;
MI_ISP_IQ_WdrCurveFullManualAttr_t stManual;
} MI_ISP_IQ_WdrCurveFullType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of WDRCurveFull.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of WDRCurveFull.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set WDRCurveFull. stManual The attribute structure of manual mode to set WDRCurveFull. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetWdrCurveFull(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrCurveFullType_t *data);
MI_S32 MI_ISP_IQ_GetWdrCurveFull(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WdrCurveFullType_t *data);
Curve Enum Structure¶
-
Description
The curve enum structure of WDRCurveFull.
-
Definition
typedef enum __attribute__ ((aligned (4)))
{
E_WDR_CURVE_FULL_GLOBAL_TONE,
E_WDR_CURVE_FULL_CURVE1,
E_WDR_CURVE_FULL_CURVE2,
E_WDR_CURVE_FULL_MAX
} MI_ISP_IQ_WDRCurveFull_e;
-
Name
Variable Name Description E_WDR_CURVE_FULL_GLOBAL_TONE Setting of Global tone. E_WDR_CURVE_FULL_CURVE1 Setting of Curve1. E_WDR_CURVE_FULL_CURVE2 Setting of Curve2. E_WDR_CURVE_FULL_MAX The maximum value in the curve enum structure. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set WDRCurveFull.
-
Definition
typedef struct MI_ISP_IQ_WdrCurveFullAutoAttr_s
{
MI_ISP_IQ_WdrCurveFullParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_WdrCurveFullAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set WDRCurveFull.
-
Definition
typedef struct MI_ISP_IQ_WdrCurveFullManualAttr_s
{
MI_ISP_IQ_WdrCurveFullParam_t stParaAPI;
} MI_ISP_IQ_WdrCurveFullManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set WDRCurveFull.
-
Definition
typedef struct MI_ISP_IQ_WdrCurveFullParam_s
{
MI_U8 u8GlobalToneSft[WDR_CURVE_FULL_LUT_X_NUM];
MI_U16 u16GlobalToneLut[WDR_CURVE_FULL_LUT_Y_NUM];
MI_U16 u16Curve1[WDR_CURVE_FULL_CURVE_NUM];
MI_U16 u16Curve2[WDR_CURVE_FULL_CURVE_NUM];
} MI_ISP_IQ_WdrCurveFullParam_t;
-
Name
Variable Name Description u8GlobalToneSft [WDR_CURVE_FULL_LUT_X_NUM] The node of Global tone on the horizontal axis. Parameter range: 3 ~ 15. There are 31 nodes. The X-axis coordinates are, from left to right: 0, 2^GlobalToneSft[0], 2GlobalToneSft[0]+2GlobalToneSft[1], 2GlobalToneSft[0]+2GlobalToneSft[1]+2^GlobalToneSft[2], [...]; and the Y-axis ordinates are, from bottom to top: GlobalToneLut[0], GlobalToneLut[1], GlobalToneLut[2], [...]. In addtion, the last node on the Y-axis has a special feature: if the last node on X-axis is smaller than 65535, the last node on Y-axis will be GlobalToneLut[31]; however, if the last node on X-axis is larger than 65535, the last node on Y-axis will be GlobalToneLut[30]+GlobalToneLut[31]. This design aims to allow global tone to be completely applied to all motion intervals, that is, to solve the issue when the last node does not necessarily fall on (x, y) = (65535, 4095). If the last node on the X-axis exceeds 65535, the ordinate on the Y-axis should also exceeds 4095 so that the line from the previous node to this node can pass (x, y) = (65535, 4095). When adjustment is needed, we suggest that you draw the original curve with Excel and adjust GlobalToneSft for finer tuning of smaller segments. Only after finding out the corresponding GlobalToneLut and making sure that the effect remains the same should you make adjustment to GlobalToneLut. WDR_CURVE_FULL_LUT_X_NUM = 31. u16GlobalToneLut [WDR_CURVE_FULL_LUT_Y_NUM] The node of Global tone on the vertical axis. This parameter shares the same function with DarkToneEnhance. Parameter range: 0 ~ 4095. WDR_CURVE_FULL_LUT_Y_NUM = 32. u16Curve1 [WDR_CURVE_FULL_CURVE_NUM] The curve of front-end circuit brightness adjustment. Parameter range: 0 ~ 4095. The horizontal axis represents the input brightness, while the vertical axis represents the output brightness. The greater the value, the image that has not yet been processed through histogram equalization will become brighter. The output result will be blended with the result from histogram equalization based on the ratio of Strength to WDRStrByY, and the remaining ratio will be blended with the result processed through Curve1. WDR_CURVE_FULL_CURVE_NUM = 33. u16Curve2 [WDR_CURVE_FULL_CURVE_NUM] The curve of back-end circuit brightness adjustment. The horizontal axis represents the input brightness, while the vertical axis represen ts the output brightness. The greater the value, the brighter the final image. Parameter range: 0 ~ 4095. WDR_CURVE_FULL_CURVE_NUM = 33. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_WDRCurveAlignHDRtoLDR Structure¶
Type Structure¶
-
Description
The type structure to set WDRCurveAlignHDRtoLDR.
-
Definition
typedef struct MI_ISP_IQ_WDRCurveAlignHDRtoLDR_TYPE_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U32 u16HDRRatio;
MI_U8 u8CompleteFlag;
MI_U16 u16WDRCurve2[WDR_CONVERT_WDR_CURVE_2_NUM];
MI_U8 u8WDRCurveSft[WDR_CONVERT_WDR_CURVE_F_SFT_NUM];
MI_ISP_IQ_IntpLut_t strWDRCompStrLut;
MI_ISP_IQ_IntpLut_t strWDRImproveDRStrLut;
MI_U16 u16WDRCurve[WDR_CONVERT_WDR_CURVE_F_NUM];
} MI_ISP_IQ_WDRCurveAlignHDRtoLDR_TYPE_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of WDRCurveAlignHDRtoLDR.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16HDRRatio HDR Ratio value. Parameter range: 1024 ~ 65535 (1x = 1024). u8ImproveStr Use this parameter to fine tune the strength of improvement against bright area. Parameter range: 0 ~ 4. (If fine tuning is not needed, you may set it to the default value, which is index = 0.) Our suggestion is for your reference only; adjustment should still be made if necessary. u8CompleteFlag Show the flag of WDRAlignHDRtoLDR conversion status (read only). Parameter range: 0 ~ 1. u16WDRCurve2[WDR_CONVERT_WDR_CURVE_2_NUM] Adjust the brightness adjustment curve of WDR back end. Parameter range: 0 ~ 4095. WDR_CONVERT_WDR_CURVE_2_NUM = 33. u8WDRCurveSft[WDR_CONVERT_WDR_CURVE_F_SFT_NUM] The nodes of WDR Curve on the horizontal axis. Parameter range: 3 ~ 15. WDR_CONVERT_WDR_CURVE_F_SFT_NUM = 31. strWDRCompStrLut.u16NumOfPoints Set the number of nodes for WDR Compensate Strength. Parameter range: 0 ~ 16. strWDRCompStrLut.s32Y[INTP_LUT_NUM] Set the intensity of WDR Compensate Strength. The greater the value, the brighter the overall picture will be; the smaller the value, the darker the overall picture. Parameter range: 1 ~ 255 (Default value is 1x = 128). INTP_LUT_NUM = 16. strWDRCompStrLut.s32X[INTP_LUT_NUM] Set the exposure ratio of HDR long and short exposure. (1024 = 1x) INTP_LUT_NUM = 16. strWDRImproveDRStrLut.u16NumOfPoints Set the number of nodes for WDR Improve DR Strength. Parameter range: 0 ~ 16. strWDRImproveDRStrLut.s32Y[INTP_LUT_NUM] Set the intensity of WDR Improve DR Strength. The greater the value, the better the dynamic range of bright area; the smaller the value, the weaker the dynamic range of bright area. Parameter range: 0 ~ 100. INTP_LUT_NUM = 16. strWDRImproveDRStrLut.s32X[INTP_LUT_NUM] Set the exposure ratio of HDR long and short exposure. (1024 = 1x) INTP_LUT_NUM = 16. u16WDRCurve[WDR_CONVERT_WDR_CURVE_F_NUM] Generate WDR Curve for output. Parameter range: 0 ~ 4095. WDR_CONVERT_WDR_CURVE_F_NUM = 32. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetWDRCurveAlignHDRtoLDR(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WDRCurveAlignHDRtoLDR_TYPE_t *data);
MI_S32 MI_ISP_IQ_GetWDRCurveAlignHDRtoLDR(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WDRCurveAlignHDRtoLDR_TYPE_t *data);
MI_ISP_IQ_WDRCurveAlignLDRtoHDR Structure¶
Type Structure¶
-
Description
The type structure to set WDRCurveAlignLDRtoHDR.
-
Definition
typedef struct MI_ISP_IQ_WDRCurveAlignLDRtoHDR_TYPE_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U16 u16HDRRatio;
MI_U8 u8ImproveStr;
MI_U8 u8CompleteFlag;
MI_U16 u16WDRCurve2[WDR_CONVERT_WDR_CURVE_2_NUM];
MI_U16 u16HDRAvgYx10;
MI_U16 u16LDRAvgYx10;
MI_U8 u8WDRCurveSft[WDR_CONVERT_WDR_CURVE_F_SFT_NUM];
MI_U16 u16HDRWDRCurve[WDR_CONVERT_WDR_CURVE_F_NUM];
MI_U16 u16LDRWDRCurve[WDR_CONVERT_WDR_CURVE_F_NUM];
} MI_ISP_IQ_WDRCurveAlignLDRtoHDR_TYPE_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of WDRCurveAlignLDRtoHDR.
To disable, set E_SS_IQ_FALSE = 0;
To enable, set E_SS_IQ_TRUE to 1.u16HDRRatio HDR Ratio value. Parameter range: 1024 ~ 65535 (1x = 1024). u8ImproveStr Use this parameter to fine tune the strength of improvement. Parameter range: 0 ~ 5. (We suggest that you fill in str = 3.) u8CompleteFlag Show the flag of WDRAlignLDRtoHDR conversion status (read only). Parameter range: 0 ~ 1. u16WDRCurve2[WDR_CONVERT_WDR_CURVE_2_NUM] Adjust the brightness adjustment curve of WDR back end. Parameter range: 0 ~ 4095. WDR_CONVERT_WDR_CURVE_2_NUM = 33. u16HDRAvgYx10 Fill in the target brightness for HDR. Parameter range: 1 ~ 2550. u16LDRAvgYx10 Fill in the target brightness for LDR. Parameter range: 1 ~ 2550. u8WDRCurveSft[WDR_CONVERT_WDR_CURVE_F_SFT_NUM] The nodes of WDR Curve on the horizontal axis. Parameter range: 3 ~ 15. WDR_CONVERT_WDR_CURVE_F_SFT_NUM = 31. u16HDRWDRCurve[WDR_CONVERT_WDR_CURVE_F_NUM] Fill in WDR Curve for HDR usage. Parameter range: 0 ~ 4095. WDR_CONVERT_WDR_CURVE_F_NUM = 32. u16LDRWDRCurve[WDR_CONVERT_WDR_CURVE_F_NUM] Generate WDR Curve for output. Parameter range: 0 ~ 4095. WDR_CONVERT_WDR_CURVE_F_NUM = 32. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetWDRCurveAlignLDRtoHDR(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WDRCurveAlignLDRtoHDR_TYPE_t *data);
MI_S32 MI_ISP_IQ_GetWDRCurveAlignLDRtoHDR(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_WDRCurveAlignLDRtoHDR_TYPE_t *data);
MI_ISP_IQ_Defog Structure¶
Type Structure¶
-
Description
The type structure to set Defog.
-
Definition
typedef struct MI_ISP_IQ_DefogType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_DefogAutoAttr_t stAuto;
MI_ISP_IQ_DefogManualAttr_t stManual;
} MI_ISP_IQ_DefogType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Defog.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of Defog.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Defog. stManual The attribute structure of manual mode to set Defog. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetDefog(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DefogType_t *data);
MI_S32 MI_ISP_IQ_GetDefog(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_DefogType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Defog.
-
Definition
typedef struct MI_ISP_IQ_DefogAutoAttr_s
{
MI_ISP_IQ_DefogParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_DefogAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Defog.
-
Definition
typedef struct MI_ISP_IQ_DefogManualAttr_s
{
MI_ISP_IQ_DefogParam_t stParaAPI;
} MI_ISP_IQ_DefogManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Defog.
-
Definition
typedef struct MI_ISP_IQ_DefogParam_s
{
MI_U16 u16StrengthByY[7];
MI_U8 u8StrengthByYSft[6] ;
MI_U16 u16ATMColor[3];
} MI_ISP_IQ_DefogParam_t;
-
Name
Variable Name Description u16StrengthByY[7] Adjust the strength of DEFOG based on brightness. Parameter range: 0 ~ 4095. u8StrengthByYSft[6] The node of StrengthByY on the horizontal axis, accumulated by the power of 2. Parameter range: 1 ~ 11. u16ATMColor[3] The color of fog for defog. The value is in RGB, 12-bit. Parameter range: 0 ~ 4095. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_Temp Structure¶
Type Structure¶
-
Description
The type structure to set Temperature.
-
Definition
typedef struct MI_ISP_IQ_TempType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_U8 u8TemperatureLut[TEMP_LUT_NUM];
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_TempAutoAttr_t stAuto;
MI_ISP_IQ_TempManualAttr_t stManual;
} MI_ISP_IQ_TempType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Temperature.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u8TemperatureLut[TEMP_LUT_NUM] Set Temperature nodes, up to 16 nodes are supported. Parameter range: 0 ~ 100. TEMP_LUT_NUM = 16. enOpType Set working mode of Temperature.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Temperature. stManual The attribute structure of manual mode to set Temperature. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetTemp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempType_t *data);
MI_S32 MI_ISP_IQ_GetTemp(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Temperature.
-
Definition
typedef struct MI_ISP_IQ_TempAutoAttr_s
{
MI_ISP_IQ_TempParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_TempAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Temperature.
-
Definition
typedef struct MI_ISP_IQ_TempManualAttr_s
{
MI_ISP_IQ_TempParam_t stParaAPI;
} MI_ISP_IQ_TempManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Temperature.
-
Definition
typedef struct MI_ISP_IQ_TempParam_s
{
MI_S16 s16ObcOffset;
MI_U8 u8DynamicDPRatio;
MI_U8 u8CrosstalkRatio;
MI_U8 u8NRDeSpikeRatio;
MI_U8 u8NR3DRatio[TEMP_NR3D_NUM];
MI_U8 u8NRLumaRatio;
MI_U8 u8SharpnessRatio[TEMP_SHARPNESS_NUM];
MI_U8 u8SaturationRatio;
MI_U8 u8ColorToneRatio[TEMP_COLOR_TONE_NUM];
} MI_ISP_IQ_TempParam_t;
-
Name
Variable Name Description s16ObcOffset Offset value of OBC. The greater the value, the greater subtraction. Default value is 0. Parameter range: -32768 ~ 32767. u8DynamicDPRatio Ratio of DynamicDP strength change. The greater the value, the greater strength. Default value is 50. Parameter range: 0 ~ 100. u8CrosstalkRatio Ratio of Crosstalk strength change. The greater the value, the greater strength. Default value is 50. Parameter range: 0 ~ 100. u8NRDeSpikeRatio Ratio of NRDeSpike strength change. The greater the value, the greater strength. Default value is 50. Parameter range: 0 ~ 100. u8NR3DRatio[TEMP_NR3D_NUM] Ratio of NR3D strength change. The greater the value, the greater strength. u8NR3DRatio[0] represents MD.Thd, while u8NR3DRatio[1] represents MD.Gain. Default value is 50. Parameter range: 0 ~ 100. TEMP_NR3D_NUM = 2. u8NRLumaRatio Ratio of NRLuma strength change. The greater the value, the greater strength. Default value is 50. Parameter range: 0 ~ 100. u8SharpnessRatio[TEMP_SHARPNESS_NUM] Ratio of Sharpness strength change. The greater the value, the sharper. u8SharpnessRatio[0] represents OverShootGain, while u8SharpnessRatio[1] represents UnderShootGain. Default value is 50. Parameter range: 0 ~ 100. TEMP_SHARPNESS_NUM = 2. u8SaturationRatio Ratio of Saturation strength change. The greater the value, the greater the saturation. Default value is 50. Parameter range: 0 ~ 100. u8ColorToneRatio[TEMP_COLOR_TONE_NUM] Ratio of ColorTone strength change. The greater the value, the greater the saturation. Default value is 50. u8ColorToneRatio[0 ~ 2] respectively corresponds to R/G/B in order. Parameter range: 0 ~ 100. TEMP_COLOR_TONE_NUM = 3. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_TempInfo Structure¶
Type Structure¶
-
Description
The type structure to set temperature info.
-
Definition
typedef struct MI_ISP_IQ_TempInfoType_s
{
MI_U8 u8Temperature;
} MI_ISP_IQ_TempInfoType_t;
-
Name
Variable Name Description u8Temperature Obtain the current chip temperature. Read only. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_GetTempInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_TempInfoType_t *data);
MI_ISP_IQ_NrChromaPre Structure¶
Type Structure¶
-
Description
The type structure to set Chroma_Pre noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaPreType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_Bool_e bDbgEn;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_NrChromaPreAutoAttr_t stAuto;
MI_ISP_IQ_NrChromaPreManualAttr_t stManual;
} MI_ISP_IQ_NrChromaPreType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of Chroma_Pre noise reduction.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.bDbgEn Debug mode. Parameter range: 0 ~ 1. Before using this mode, you must set Strength to the maximum value, which is 256. The smaller an image's U/V channel value is, the more it means to use the result of mean filter. The larger an image's U/V channel value is, the more it means to use the result of median filter. enOpType Set working mode of Chroma_Pre noise reduction.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set Chroma_Pre noise reduction. stManual The attribute structure of manual mode to set Chroma_Pre noise reduction. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetNrChromaPre(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaPreType_t *data);
MI_S32 MI_ISP_IQ_GetNrChromaPre(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_NrChromaPreType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set Chroma_Pre noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaPreAutoAttr_s
{
MI_ISP_IQ_NrChromaPreParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_NrChromaPreAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set Chroma_Pre noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaPreManualAttr_s
{
MI_ISP_IQ_NrChromaPreParam_t stParaAPI;
} MI_ISP_IQ_NrChromaPreManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set Chroma_Pre noise reduction.
-
Definition
typedef struct MI_ISP_IQ_NrChromaPreParam_s
{
MI_U16 u16Strength;
MI_U8 u8MotionEnhance[NRCHROMA_PRE_YC_NUM];
MI_U16 u16MaskGenTh;
MI_U16 u16MeanFilterTh[NRCHROMA_PRE_YC_NUM];
MI_U16 u16MedianFilterTh[NRCHROMA_PRE_YC_NUM];
MI_U16 u16BlendTh;
MI_U8 u8BlendGap;
} MI_ISP_IQ_NrChromaPreParam_t;
-
Name
Variable Name Description u16Strength Global strength. Parameter range: 0 ~ 256. The greater the value, the stronger the NR effect. u8MotionEnhance[NRCHROMA_PRE_YC_NUM] Extent of motion area enhancement. Parameter range: 0 ~ 127. The first grid represents the intensity of Y channel enhancement, and the second grid represents the intensity of U/V channel enhancement. The greater the value, the stronger the NR effect in motion area. NRCHROMA_PRE_YC_NUM = 2. u16MaskGenTh Threshold value of U/V channel. This parameter is used to generate mask and perform noise reduction within it. Parameter range: 0 ~ 1023. The greater the value, the larger the mask, and the stronger the NR effect. u16MeanFilterTh[NRCHROMA_PRE_YC_NUM] Threshold value of Y/U/V channel. This parameter is used to control the strength of mean filter. Parameter value: 0 ~ 1023. The first grid represents the threshold value of Y channel, and the second grid represents the threshold value of U/V channel. Only when difference in the mask is smaller than the threshold value will it be incorporated in the process of mean filter. The greater the value, the stronger NR effect. NRCHROMA_PRE_YC_NUM = 2. u16MedianFilterTh[NRCHROMA_PRE_YC_NUM] Threshold value of Y/U/V channel. This parameter is used to control the strength of median filter. Parameter value: 0 ~ 1023. The first grid represents the threshold value of Y channel, and the second grid represents the threshold value of U/V channel. Only when difference in the mask is smaller than the threshold value will it be incorporated in the process of median filter. The greater the value, the stronger the NR effect. NRCHROMA_PRE_YC_NUM = 2. u16BlendTh Blending threshold. Parameter range: 0 ~ 1023. If the maximum U/V channel difference in the mask is smaller than BlendTh, the result of mean filter will be used. The greater the value, the more it would lean toward the mean filter result. u8BlendGap Blending gap. Parameter range: 0 ~ 15. If the maximum U/V channel difference in the mask is greater than BlendTh+2^BlendGap, the result of median filter will be used. The greater the value, the more it would lean toward mean filter result. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_ApiBypass Structure¶
Type Structure¶
-
Description
The type structure to set the IP module bypass mode corresponding to ISP.
-
Definition
typedef struct MI_ISP_IQ_ApiBypassType_s
{
MI_ISP_IQ_BypassMode_e bEnable;
MI_ISP_IQ_ApiId_e eAPIIndex;
} MI_ISP_IQ_ApiBypassType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of IP module bypass mode corresponding to ISP.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.eAPIIndex Set index value in the enum structure of ISP API ID. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_S32 MI_ISP_IQ_GetApiBypassMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_ApiBypassType_t *data);
MI_ISP_IQ_SceneDecision Structure¶
Type Structure¶
-
Description
The type structure to set scene decision.
-
Definition
typedef struct MI_ISP_IQ_SceneDecisionType_s {
MI_ISP_IQ_Bool_e bEnable;
MI_U16 u16EffectiveThd[SCENE_NUM];
MI_U16 u16ReliableThd;
MI_U16 u16DebounceThd;
} MI_ISP_IQ_SceneDecisionType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of SceneDecision.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16EffectiveThd[SCENE_NUM] If the maximum score of the scene mode is greater than this threshold, the scene mode will become effective. Parameter range: 0 ~ 100. SCENE_NUM = 16. u16ReliableThd The first scene mode will be selected if the difference between the first and second scores is greater than this threshold and the first score is greater than EffectiveThd. Parameter range: 0 ~ 100. u16DebounceThd If scene mode is selected, it will be shut down until its score is below (EffectiveThd - DebounceThd). Parameter range: 0 ~ 100. Note: DebounceThd should be less than effectiveThd. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetSceneDecision (MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneDecisionType_t *data);
MI_S32 MI_ISP_IQ_GetSceneDecision (MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneDecisionType_t *data)
MI_ISP_IQ_SceneAdj Structure¶
Type Structure¶
-
Description
The type structure to set SceneAdj.
-
Definition
typedef struct MI_ISP_IQ_SceneAdjType_s {
MI_ISP_IQ_Bool_e bEnable;
MI_U16 u16ConvSpeed;
MI_U16 u16AdjItem[SCENE_NUM][SCENE_ADJ_NUM];
MI_U16 u16Level[SCENE_NUM][SCENE_ADJ_NUM];
} MI_ISP_IQ_SceneAdjType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of IQ SceneAdj.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16ConvSpeed Adjust the convergence speed of the IQ adjustment item from the current level to the target level. Parameter range: 0 ~ 100. u16AdjItem[SCENE_NUM][SCENE_ADJ_NUM] The IQ adjustment supports the selection of 9 parameters. The following table shows the parameters corresponding to each index value. Horizontal axis parameters indicates the IQ adjustment options for each item, supporting up to 8 IQ items. Parameter range: 0 ~ 8. Vertical axis parameter indicates scene detection mode. Currently, three scene modes are supported: Back light, Front light, and Mixer light. Up to 16 scene modes are supported. SCENE_NUM = 16. u16Level[SCENE_NUM][SCENE_ADJ_NUM] Set the adjustment level of the corresponding parameter. The level of parameters not selected by AdjItem will be 100 (Level value 100 means no adjustment). Parameter range: 0 ~ 200. SCENE_ADJ_NUM = 8. SCENE_NUM = 16. Index Parameter Description 0 ByPass Bypass IQ parameters adjustment. 1 Denoise_Bayer Adjust the strength of Bayer denoise. 2 Denoise_Y Adjust the strength of Luma denoise. 3 Denoise_C Adjust the strength of Chroma denoise. 4 Sharpness Adjust the strength of Edge enhancement. 5 Saturation Adjust the strength of Saturation. 6 Brightness Adjust the strength of Brightness. 7 Contrast Adjust the strength of Contrast. 8 Lightness Adjust the strength of Lightness. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetSceneAdj (MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneAdjType_t *data);
MI_S32 MI_ISP_IQ_GetSceneAdj (MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneAdjType_t *data);
MI_ISP_IQ_AiBnrObc Structure¶
Type Structure¶
-
Description
The type structure to set AiBnr Obc.
-
Definition
typedef struct MI_ISP_IQ_AiBnrObcType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_ObcAutoAttr_t stAuto;
MI_ISP_IQ_ObcManualAttr_t stManual;
} MI_ISP_IQ_AiBnrObcType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of AiBnr Obc.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of AiBnr Obc.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set AiBnr Obc. stManual The attribute structure of manual mode to set AiBnr Obc. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAiBnrObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrObcType_t *data);
MI_S32 MI_ISP_IQ_GetAiBnrObc(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrObcType_t *data);
MI_ISP_IQ_AiBnrCtrl Structure¶
Type Structure¶
-
Description
The type structure to set AiBnr Ctrl.
-
Definition
typedef struct MI_ISP_IQ_AiBnrCtrlType_s
{
MI_ISP_IQ_Bool_e bEnable;
MI_ISP_IQ_OpType_e enOpType;
MI_ISP_IQ_AiBnrCtrlAutoAttr_t stAuto;
MI_ISP_IQ_AiBnrCtrlManualAttr_t stManual;
} MI_ISP_IQ_AiBnrCtrlType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of AiBnr Ctrl.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.enOpType Set working mode of AiBnr Ctrl.
Auto mode: E_SS_IQ_OP_TYP_AUTO = 0.
Manual mode: E_SS_IQ_OP_TYP_MANUAL = 1.stAuto The attribute structure of automatic mode to set AiBnr Ctrl. stManual The attribute structure of manual mode to set AiBnr Ctrl. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetAiBnrCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrCtrlType_t *data);
MI_S32 MI_ISP_IQ_GetAiBnrCtrl(MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrCtrlType_t *data);
Automatic Mode Attribute Structure¶
-
Description
The attribute structure of automatic mode to set AiBnr Ctrl.
-
Definition
typedef struct MI_ISP_IQ_AiBnrCtrlAutoAttr_s
{
MI_ISP_IQ_AiBnrCtrlParam_t stParaAPI[MI_ISP_AUTO_NUM];
} MI_ISP_IQ_AiBnrCtrlAutoAttr_t;
-
Name
Variable Name Description stParaAPI[MI_ISP_AUTO_NUM] Attribute Structure of Automatic Mode, MI_ISP_AUTO_NUM = 16. The 16 values in the number sequence correspond respectively to the values set under different gains. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Manual Mode Attribute Structure¶
-
Description
The attribute structure of manual mode to set AiBnr Ctrl.
-
Definition
typedef struct MI_ISP_IQ_AiBnrCtrlManualAttr_s
{
MI_ISP_IQ_AiBnrCtrlParam_t stParaAPI;
} MI_ISP_IQ_AiBnrCtrlManualAttr_t;
-
Name
Variable Name Description stParaAPI Attribute Structure of Manual Mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
Parameter Structure¶
-
Description
The parameter structure to set AiBnr Ctrl.
-
Definition
typedef struct MI_ISP_IQ_AiBnrCtrlParam_s
{
MI_U8 u8MinNoiseRatio;
MI_U8 u8MaxNoiseRatio;
} MI_ISP_IQ_AiBnrCtrlParam_t;
-
Name
Variable Name Description u8MinNoiseRatio Controls the blending ratio of the source by AI. Parameter range is [0, 100]. This value is the base value of the blending, and the most dynamic area will be blended according to this ratio. The quieter the area, the more the ratio will be blended, until the value equals MaxNoiseRatio. If this parameter is set to 0, it means that the source is not blended at all. u8MaxNoiseRatio Controls the upper limit of the blending ratio of the source by AI. Parameter range is [0, 100]. Usually, the value will be set larger than MinNoiseRatio. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_IQ_AiBnrInfo Structure¶
Type Structure¶
-
Description
The type structure to get AiBnr Info.
-
Definition
typedef struct MI_ISP_IQ_AiBnrInfoType_s
{
MI_S32 s32Uint8AkFixed;
MI_S32 s32Uint8AkShift;
MI_S32 s32Uint8BkFixed;
MI_S32 s32Uint8BkShift;
MI_S32 s32Uint8AsFixed;
MI_S32 s32Uint8AsShift;
MI_S32 s32Uint8BsFixed;
MI_S32 s32Uint8BsShift;
MI_S32 s32Int16AkFixed;
MI_S32 s32Int16AkShift;
MI_S32 s32Int16BkFixed;
MI_S32 s32Int16BkShift;
MI_S32 s32Int16AsFixed;
MI_S32 s32Int16AsShift;
MI_S32 s32Int16BsFixed;
MI_S32 s32Int16BsShift;
MI_U8 u8MinNoiseRatio;
MI_U8 u8MaxNoiseRatio;
MI_U8 u8K;
MI_U8 u8S;
MI_S16 s16K;
MI_S16 s16S;
MI_U32 u32PreGain;
MI_U32 u32PostGain;
} MI_ISP_IQ_AiBnrInfoType_t;
-
Name
Variable Name Description s32Uint8AkFixed AIBNRCaliInfo debug value s32Uint8AkShift AIBNRCaliInfo debug value s32Uint8BkFixed AIBNRCaliInfo debug value s32Uint8BkShift AIBNRCaliInfo debug value s32Uint8AsFixed AIBNRCaliInfo debug value s32Uint8AsShift AIBNRCaliInfo debug value s32Uint8BsFixed AIBNRCaliInfo debug value s32Uint8BsShift AIBNRCaliInfo debug value s32Int16AkFixed AIBNRCaliInfo debug value s32Int16AkShift AIBNRCaliInfo debug value s32Int16BkFixed AIBNRCaliInfo debug value s32Int16BkShift AIBNRCaliInfo debug value s32Int16AsFixed AIBNRCaliInfo debug value s32Int16AsShift AIBNRCaliInfo debug value s32Int16BsFixed AIBNRCaliInfo debug value s32Int16BsShift AIBNRCaliInfo debug value u8MinNoiseRatio The blending ratio of the source by AI. u8MaxNoiseRatio The upper limit of the blending ratio of the source by AI. u8K AIBNRCaliInfo debug value u8S AIBNRCaliInfo debug value s16K AIBNRCaliInfo debug value s16S AIBNRCaliInfo debug value u32PreGain AIBNRCaliInfo debug value u32PostGain AIBNRCaliInfo debug value -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_AIBNRCaliInfo (MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_AiBnrInfoType_t *data);
MI_ISP_IQ_SceneStatis Structure¶
Type Structure¶
-
Description
The type structure to set SceneStatis.
-
Definition
typedef struct MI_ISP_IQ_SceneStatisType_s {
MI_U16 u16ModeScore[SCENE_NUM];
} MI_ISP_IQ_SceneStatisType_t;
-
Name
Variable Name Description u16ModeScore[SCENE_NUM] Score based on scene mode. Parameter range: 0 ~ 100. SCENE_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_SetSceneStatis (MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneStatisType_t *data);
MI_ISP_IQ_SceneCurLevel Structure¶
Type Structure¶
-
Description
The type structure to set IQ SceneCurLevel.
-
Definition
typedef struct MI_ISP_IQ_SceneCurLevelType_s {
MI_U16 u16Level[SCENE_PARAM_NUM];
} MI_ISP_IQ_SceneCurLevelType_t;
-
Name
Variable Name Description u16Level[SCENE_PARAM_NUM] Shows the current level of all IQ parameters, 100 means no adjustment. Parameter range: 0 ~ 200. SCENE_PARAM_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_QuerySceneCurLevelInfo (MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneCurLevelType_t *data);
MI_ISP_IQ_SceneInfo Structure¶
Type Structure¶
-
Description
The type structure to set SceneInfo.
-
Definition
typedef struct MI_ISP_IQ_SceneInfoType_s {
MI_U16 u16Flag[SCENE_NUM];
MI_U16 u16IQCurLevel[SCENE_PARAM_NUM];
MI_U16 u16AECurLevel[SCENE_PARAM_NUM];
MI_U16 u16AWBCurLevel[SCENE_PARAM_NUM];
} MI_ISP_IQ_SceneInfoType_t;
-
Name
Variable Name Description u16Flag[SCENE_NUM] Shows the scene mode currently selected. The flag of the selected scene mode will change to 1. SCENE_NUM = 16. u16IQCurLevel[SCENE_PARAM_NUM] Shows the current level of all IQ parameters, 100 means no adjustment. Parameter range: 0 ~ 200. SCENE_PARAM_NUM = 16. u16AECurLevel[SCENE_PARAM_NUM] Shows the current level of all AE parameters, 100 means no adjustment. Parameter range: 0 ~ 200. SCENE_PARAM_NUM = 16. u16AWBCurLevel[SCENE_PARAM_NUM] Shows the current level of all AWB parameters, 100 means no adjustment. Parameter range: 0 ~ 200. SCENE_PARAM_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_IQ_QuerySceneInfo (MI_U32 DevId, MI_U32 Channel, MI_ISP_IQ_SceneInfoType_t *data);
MI_ISP_AE_bool Structure¶
Enum Structure¶
-
Description
The enum structure of Boolean value.
-
Definition
typedef enum
{
E_SS_AE_FALSE = 0,
E_SS_AE_TRUE = !E_SS_AE_FALSE,
E_SS_AE_BOOL_MAX
} MI_ISP_AE_bool_e;
-
Name
Variable Name Description E_SS_AE_FALSE Boolean value = 0. E_SS_AE_TRUE Boolean value = 1. E_SS_AE_BOOL_MAX Determine the maximum value in the enum list of Boolean value. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFastMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_bool_e *data);
MI_S32 MI_ISP_AE_GetFastMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_bool_e *data);
MI_S32 MI_ISP_AE_SetFDExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXInfoType_t *data);
MI_S32 MI_ISP_AE_GetFDExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXInfoType_t *data);
MI_S32 MI_ISP_AE_SetFDExParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXParamType_t *data);
MI_S32 MI_ISP_AE_GetFDExParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXParamType_t *data);
MI_ISP_AE_OpType Structure¶
Enum Structure¶
-
Description
The enum structure of working mode.
-
Definition
typedef enum
{
E_SS_AE_OP_TYP_AUTO = 0,
E_SS_AE_OP_TYP_MANUAL = ! E_SS_AE_OP_TYP_AUTO,
E_SS_AE_OP_TYP_MODE_MAX
} MI_ISP_AE_OpType_e;
-
Name
Variable Name Description E_SS_AE_OP_TYP_AUTO Auto working mode. E_SS_AE_OP_TYP_MANUAL Manual working mode. E_SS_AE_OP_TYP_MODE_MAX Determine the maximum value in the enum list of working mode. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_SmStateType Structure¶
Enum Structure¶
-
Description
The enum structure of State Machine.
-
Definition
typedef enum
{
E_SS_AE_STATE_NORMAL = 0,
E_SS_AE_STATE_PAUSE = 1,
E_SS_AE_STATE_MAX
} MI_ISP_AE_SmStateType_e;
-
Name
Variable Name Description E_SS_AE_STATE_NORMAL Normal mode. E_SS_AE_STATE_PAUSE Pause mode. E_SS_AE_STATE_MAX Determine the maximum value in the enum list of State Machine. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetState(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SmStateType_e *data);
MI_S32 MI_ISP_AE_GetState(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SmStateType_e *data);
MI_ISP_AE_FDEXSwitchMode Structure¶
Enum Structure¶
-
Description
The enum structure of AE_FDEX switch mode.
-
Definition
typedef enum
{
E_SS_AE_FDEX_SWITCH_MODE_DISABLE = 0,
E_SS_AE_FDEX_SWITCH_MODE_KEEP = 1,
E_SS_AE_FDEX_SWITCH_MODE_SMOOTH = 2,
E_SS_AE_FDEX_SWITCH_MODE_MAX,
} MI_ISP_AE_FDEXSwitchMode_e;
-
Name
Variable Name Description E_SS_AE_FDEX_SWITCH_MODE_DISABLE FDAE_EX switch mode - Disable. E_SS_AE_FDEX_SWITCH_MODE_KEEP FDAE_EX switch mode - Enable - keep mode. E_SS_AE_FDEX_SWITCH_MODE_SMOOTH FDAE_EX switch mode - Enable - smooth mode. E_SS_AE_FDEX_SWITCH_MODE_MAX FDAE_EX switch mode - Determine the maximum value in the enum list of AE_FDEX switch mode. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFDExAdvParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXAdvParamType_t *data);
MI_S32 MI_ISP_AE_GetFDExAdvParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXAdvParamType_t *data);
MI_ISP_AE_ExpoValue Structure¶
Type Structure¶
-
Description
The type structure to record exposure parameter.
-
Definition
typedef struct MI_ISP_AE_ExpoValueType_s
{
MI_U32 u32FNx10;
MI_U32 u32SensorGain;
MI_U32 u32ISPGain;
MI_U32 u32US;
} MI_ISP_AE_ExpoValueType_t;
-
Name
Variable Name Description u32FNx10 Aperture value * 10 (e.g., if aperture is F1.8, the value will be 18). u32SensorGain Sensor gain (including sensor analog gain and sensor digital gain, 1024 = 1x). u32ISPGain ISP digital gain (1024 = 1x). u32US Exposure time (μsec). -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetManualExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
MI_S32 MI_ISP_AE_GetManualExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
MI_S32 MI_ISP_AE_SetManualShortExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
MI_S32 MI_ISP_AE_GetManualShortExpo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoValueType_t *data);
MI_S32 MI_ISP_AE_SetFDExAdvParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXAdvParamType_t *data);
MI_S32 MI_ISP_AE_GetFDExAdvParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXAdvParamType_t *data);
MI_ISP_AE_HistWeightY Structure¶
Type Structure¶
-
Description
The type structure to record the current screen brightness and histogram statistical data.
-
Definition
typedef struct MI_ISP_AE_HistWeightYType_s
{
MI_U32 u32LumY;
MI_U32 u32AvgY;
MI_U32 u32Hits[MI_ISP_AE_HIST_BIN];
} MI_ISP_AE_HistWeightYType_t;
-
Name
Variable Name Description u32LumY The current screen brightness after being weighted in patch weight table. u32AvgY Average brightness of the current screen (unweighted). u32Hits[MI_ISP_AE_HIST_BIN] The statistical data of screen histogram (128 columns, corresponding to 0 ~ 255). MI_ISP_AE_HIST_BIN = 128. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_GetHistoWghtY(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HistWeightYType_t *data);
MI_ISP_AE_ExpoInfo Structure¶
Type Structure¶
-
Description
The type structure to get the current general exposure information.
-
Definition
typedef struct MI_ISP_AE_ExpoInfoType_s
{
MI_ISP_AE_bool_e bIsStable;
MI_ISP_AE_bool_e bIsReachBoundary;
MI_ISP_AE_ExpoValueType_t stExpoValueLong;
MI_ISP_AE_ExpoValueType_t stExpoValueShort;
MI_ISP_AE_HistWeightYType_t stHistWeightY;
MI_U32 u32LVx10;
MI_S32 s32BV;
MI_U32 u32SceneTarget;
} MI_ISP_AE_ExpoInfoType_t;
-
Name
Variable Name Description bIsStable Whether AE is stable. (0: AE has not converged; 1: converged) bIsReachBoundary Whether the current exposure parameter has reached the upper or lower boundary of changing. (0: boundary has not yet been reached; 1: boundary reached) stExpoValueLong Current exposure parameter (or long exposure parameter in HDR mode). stExpoValueShort Short exposure parameter in HDR mode. stHistWeightY The current screen brightness and histogram statistical data. u32LVx10 The current LV value * 10. s32BV The current BV value * 16384. u32SceneTarget The current AE target brightness. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QueryExposureInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoInfoType_t *data);
MI_ISP_AE_EvComp Structure¶
Type Structure¶
-
Description
The type structure to set additional strength of exposure compensation.
-
Definition
typedef struct MI_ISP_AE_EvCompType_s
{
MI_S32 s32EV;
MI_U32 u32Grad;
} MI_ISP_AE_EvCompType_t;
-
Name
Variable Name Description s32EV Additional exposure energy numerator. Parameter range: -10 ~ 10. u32Grad Additional exposure energy denominator. Parameter range: -10 ~ 10. -
Note
Example: If s32EV = 1 and u32Grad = 2, the exposure energy will be increased additionally by ½ EV as compared to value allowed by the original automatic mode.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetEvComp(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_EvCompType_t *data);
MI_S32 MI_ISP_AE_GetEvComp(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_EvCompType_t *data);
MI_ISP_AE_Mode Structure¶
Type Structure¶
-
Description
Set exposure mode: fully automatic, semi-automatic, or manual.
-
Definition
typedef enum
{
E_SS_AE_MODE_A,
E_SS_AE_MODE_AV,
E_SS_AE_MODE_SV,
E_SS_AE_MODE_TV,
E_SS_AE_MODE_M,
E_SS_AE_MODE_MAX
} MI_ISP_AE_ModeType_e;
-
Name
Variable Name Description E_SS_AE_MODE_A Fully automatic exposure mode. E_SS_AE_MODE_AV Aperture first mode. E_SS_AE_MODE_SV Gain first mode. E_SS_AE_MODE_TV Shutter first mode. E_SS_AE_MODE_M Manual mode. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetExpoMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ModeType_e *data);
MI_S32 MI_ISP_AE_GetExpoMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ModeType_e *data);
MI_ISP_AE_IntpLut Structure¶
Type Structure¶
-
Description
Parameter data setup table with point interpolation function. This function can be used to set up target screen brightness that varies with ambient brightness (X-axis for BV and Y-axis for target screen brightness), or set up floating range of target screen brightness that varies with ambient brightness (X-axis for BV and Y-axis for the floating range of target screen brightness).
-
Definition
typedef struct MI_ISP_AE_IntpLutType_s
{
MI_U16 u16NumOfPoints;
MI_S32 s32Y[MI_ISP_AE_LUT_16];
MI_S32 s32X[MI_ISP_AE_LUT_16];
} MI_ISP_AE_IntpLutType_t;
-
Name
Variable Name Description u16NumOfPoints The actual number of effective points of data in the table. A maximum of 16 points are supported, that is, 16 entries of X-axis and Y-axis data can be input. s32Y[MI_ISP_AE_LUT_16] Y-axis parameter corresponding to each point. For points not used, set the parameter to 0. MI_ISP_AE_LUT_16 = 16. s32X[MI_ISP_AE_LUT_16] X-axis parameter corresponding to each point. For points not used, set the parameter to 0. MI_ISP_AE_LUT_16 = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetTarget(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_IntpLutType_t *data);
MI_S32 MI_ISP_AE_GetTarget(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_IntpLutType_t *data);
MI_ISP_AE_FDCorParam Structure¶
Type Structure¶
-
Description
The information FDAE required.
-
Definition
typedef struct MI_ISP_AE_FDCorParam_s
{
MI_U16 u16MinX;
MI_U16 u16MinY;
MI_U16 u16MaxX;
MI_U16 u16MaxY;
MI_U8 u8Brightness;
MI_U32 u32Area;
} MI_ISP_AE_FDCorParam_t;
-
Name
Variable Name Description u16MinX The position of X which is on the left of the FD frame. u16MinY The position of Y which is on the top of the FD frame. u16MaxX The position of X which is on the right of the FD frame. u16MaxY The position of Y which is on the bottom of the FD frame. u8Brightness The face brightness of the FD frame. u32Area The area of the FD frame. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFaceDetectInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDInfoType_t *data);
MI_S32 MI_ISP_AE_SetFDExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXInfoType_t *data);
MI_S32 MI_ISP_AE_GetFDExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXInfoType_t *data);
MI_ISP_AE_ConvConditon Structure¶
Type Structure¶
-
Description
Set convergence condition for auto exposure.
-
Definition
typedef struct MI_ISP_AE_ConvConditonType_s
{
MI_ISP_AE_ConvThdParam_t stConvThrd;
MI_ISP_AE_ConvSpeedParam_t stConvSpeed;
} MI_ISP_AE_ConvConditonType_t;
-
Name
Variable Name Description stConvThrd Set threshold for auto exposure to launch convergence or the range for determining that convergence has finished. stConvSpeed Set the convergence speed of auto exposure. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetConverge(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvConditonType_t *data);
MI_S32 MI_ISP_AE_GetConverge(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvConditonType_t *data);
Convergence Range Structure¶
-
Description
Set threshold for auto exposure to launch convergence or the range for auto exposure to determine that convergence has finished.
-
Definition
typedef struct MI_ISP_AE_ConvThdParam_s
{
MI_U32 u32InThd;
MI_U32 u32OutThd;
} MI_ISP_AE_ConvThdParam_t;
-
Name
Variable Name Description u32InThd If the difference between weighted screen brightness and target screen brightness is smaller than this threshold, the auto exposure is considered already converged. Parameter range: 1 ~ 100. u32OutThd If the difference between weighted screen brightness and target screen brightness is larger than this threshold, the auto exposure will be considered not yet converged and a convergence procedure will be launched automatically. Parameter range: 2 ~ 100. -
Note
N/A.
-
Related Structure Type and Function
Convergence Speed Structure¶
-
Description
Set the auto exposure convergence speed. There are four points available, in which the X-axis corresponds to screen brightness, while the Y-axis corresponds to the convergence speed of corresponding screen brightness.
-
Definition
typedef struct MI_ISP_AE_ConvSpeedParam_s
{
MI_U32 u32SpeedX[MI_ISP_AE_LUT_4];
MI_U32 u32SpeedY[MI_ISP_AE_LUT_4];
} MI_ISP_AE_ConvSpeedParam_t;
-
Name
Variable Name Description u32SpeedX[MI_ISP_AE_LUT_4] Select the current screen weighted brightness to be applied with the convergence speed. Parameter range: 1 ~ 2550. MI_ISP_AE_LUT_4 = 4. u32SpeedY[MI_ISP_AE_LUT_4] Convergence speed, and the base is 1024. (For example, if Y is set to 500, when the current screen brightness falls on the X point that corresponds to Y, auto exposure will advance toward exposure target by 500/1024 in each move). Parameter range: 1 ~ 1024. MI_ISP_AE_LUT_4 = 4. -
Note
- The central two points of u32SpeedX[1] and u32SpeedX[2] are set by default to represent the current screen target brightness, so as to automatically correspond to the corresponding value when the target brightness is not fixed. Therefore, modifying the two points manually will have no effect.
-
Related Structure Type and Function
MI_ISP_AE_ExpoLimit Structure¶
Type Structure¶
-
Description
Set the maxima and minima of auto exposure.
-
Definition
typedef struct MI_ISP_AE_ExpoLimitType_s
{
MI_U32 u32MinShutterUS;
MI_U32 u32MaxShutterUS;
MI_U32 u32MinFNx10;
MI_U32 u32MaxFNx10;
MI_U32 u32MinSensorGain;
MI_U32 u32MinISPGain;
MI_U32 u32MaxSensorGain;
MI_U32 u32MaxISPGain;
} MI_ISP_AE_ExpoLimitType_t;
-
Name
Variable Name Description u32MinShutterUS The minimum shutter time (μsec). Parameter range: 1 ~ 1000000. u32MaxShutterUS The maximum shutter time (μsec). Parameter range: 1 ~ 1000000. u32MinFNx10 The minimum value of aperture (ex: F1.8 = 18). Parameter range: 10 ~ 220. u32MaxFNx10 The maximum value of aperture (ex: F1.8 = 18). Parameter range: 10 ~ 220. u32MinSensorGain The minimum sensor gain (1024 = 1x). Parameter range: 1024 ~ 5242880. u32MinISPGain The minimum ISP gain (1024 = 1x). Parameter range: 1024 ~ 262144. u32MaxSensorGain The maximum sensor gain (1024 = 1x). Parameter range: 1024 ~ 5242880. u32MaxISPGain The maximum ISP gain (1024 = 1x). Parameter range: 1024 ~ 262144. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetExposureLimit(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoLimitType_t *data);
MI_S32 MI_ISP_AE_GetExposureLimit(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoLimitType_t *data);
MI_ISP_AE_ExpoTable Structure¶
Type Structure¶
-
Description
Exposure table.
-
Definition
typedef struct MI_ISP_AE_ExpoTableType_s
{
MI_U32 u32NumPoints;
MI_ISP_AE_ExpoPointParam_t stExpoTbl[MI_ISP_AE_LUT_16];
} MI_ISP_AE_ExpoTableType_t;
-
Name
Variable Name Description u32NumPoints Number of points on exposure table. Parameter range: 1 ~ 16. stExpoTbl[MI_ISP_AE_LUT_16] Parameter data of the point on the exposure table. MI_ISP_AE_LUT_16 = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetPlainLongExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
MI_S32 MI_ISP_AE_GetPlainLongExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
MI_S32 MI_ISP_AE_SetPlainShortExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
MI_S32 MI_ISP_AE_GetPlainShortExpoTable(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableType_t *data);
Exposure Point Parameter Structure¶
-
Description
Set exposure time, aperture and gain of each point on the exposure table.
-
Definition
typedef struct MI_ISP_AE_ExpoPointParam_s
{
MI_U32 u32FNumx10;
MI_U32 u32Shutter;
MI_U32 u32TotalGain;
MI_U32 u32SensorGain;
} MI_ISP_AE_ExpoPointParam_t;
-
Name
Variable Name Description u32FNumx10 Aperture (ex: F1.8 = 18). Parameter range: 10 ~ 220. u32Shutter Shutter time (μsec). Parameter range: 1 ~ 1000000. u32TotalGain Total gain = sensor gain * ISP digital gain (1024 = 1x). Parameter range: 1024 ~ 5242880. u32SensorGain Sensor gain (1024 = 1x). Parameter range: 1024 ~ 5242880. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_WinWeightMode Structure¶
Type Structure¶
-
Description
Set or switch the type of weight table for the calculation of screen brightness.
-
Definition
typedef enum
{
E_SS_AE_WEIGHT_AVERAGE = 0,
E_SS_AE_WEIGHT_CENTER,
E_SS_AE_WEIGHT_SPOT,
E_SS_AE_WEIGHT_MAX
} MI_ISP_AE_WinWeightModeType_e;
-
Name
Variable Name Description E_SS_AE_WEIGHT_AVERAGE Switch to the weight table of average light metering. E_SS_AE_WEIGHT_CENTER Switch to the weight table of center light metering. E_SS_AE_WEIGHT_SPOT Switch to the weight table of spot light metering. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetWinWgtType(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightModeType_e *data);
MI_S32 MI_ISP_AE_GetWinWgtType(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightModeType_e *data);
MI_ISP_AE_WinWeight Structure¶
Type Structure¶
-
Description
Set or switch the type of weight table for the calculation of screen brightness and set the weight table.
-
Definition
typedef struct MI_ISP_AE_WinWeightType_s
{
MI_ISP_AE_WinWeightModeType_e eTypeID;
MI_ISP_AE_WinWeightParam_t stParaAPI;
} MI_ISP_AE_WinWeightType_t;
-
Name
Variable Name Description eTypeID Select the type of light-metering weight table to switch to.
Average light metering: E_SS_AE_WEIGHT_AVERAGE
Center light metering: E_SS_AE_WEIGHT_CENTER
Spot light metering: E_SS_AE_WEIGHT_SPOTPARAM_t Set exposure weight table. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetWinWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightType_t *data);
MI_S32 MI_ISP_AE_GetWinWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_WinWeightType_t *data);
Light Metering Weight Table Parameter Structure¶
-
Description
Set a weight table in size of 32 * 32 for light metering.
-
Definition
typedef struct MI_ISP_AE_WinWeightParam_s
{
MI_U8 u8AverageTbl[MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32];
MI_U8 u8CenterTbl[MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32];
MI_U8 u8SpotTbl[MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32];
} MI_ISP_AE_WinWeightParam_t;
-
Name
Variable Name Description u8AverageTbl [MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32] Weight table of average light metering.
Parameter range: 0 ~ 255.
MI_ISP_AE_LUT_32 = 32.u8CenterTbl [MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32] Weight table of center light metering.
Parameter range: 0 ~ 255.
MI_ISP_AE_LUT_32 = 32.u8SpotTbl [MI_ISP_AE_LUT_32 * MI_ISP_AE_LUT_32] Weight table of spot light metering.
Parameter range: 0 ~ 255.
MI_ISP_AE_LUT_32 = 32. -
Note
- The maximum supported size is 32 * 32, and the current default size is 16 * 16.
-
Related Structure Type and Function
MI_ISP_AE_Flicker Structure¶
Type Structure¶
-
Description
Set anti-flicker frequency.
-
Definition
typedef enum
{
E_SS_AE_FLICKER_TYPE_DISABLE = 0,
E_SS_AE_FLICKER_TYPE_60HZ = 1,
E_SS_AE_FLICKER_TYPE_50HZ = 2,
E_SS_AE_FLICKER_TYPE_AUTO = 3,
E_SS_AE_FLICKER_TYPE_MAX
} MI_ISP_AE_FlickerType_e;
-
Name
Variable Name Description E_SS_AE_FLICKER_TYPE_DISABLE Disable anti-flicker function. E_SS_AE_FLICKER_TYPE_60HZ Set anti-flicker environment at 60Hz. E_SS_AE_FLICKER_TYPE_50HZ Set anti-flicker environment at 50Hz. E_SS_AE_FLICKER_TYPE_AUTO Auto set anti-flicker environment. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFlicker(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerType_e *data);
MI_S32 MI_ISP_AE_GetFlicker(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerType_e *data);
MI_ISP_AE_FlickerEx Structure¶
Type Structure¶
-
Description
Set anti-flicker frequency detection.
-
Definition
typedef struct MI_ISP_AE_FlickerExType_s
{
MI_ISP_AE_bool_e bEnable;
MI_ISP_AE_OpType_e enOpType;
MI_U8 u8AmpSensitivity;
MI_U8 u8ScoreThd;
MI_U8 u8RefreshCycles;
MI_U8 u8ValidTimesThd;
MI_ISP_AE_FlickerDetectType_e eFlickerType;
} MI_ISP_AE_FlickerExType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of anti-flicker frequency detection. If bEnable = 1, the older version of Flicker API will become ineffective.
To disable, set E_SS_AE_FALSE = 0.
To enable, set E_SS_AE_TRUE = 1.enOpType Set working mode of anti-flicker frequency detection. When enOpType is set to Auto, eFlickerType will be automatically switched if flicker is detected.
Auto mode: E_SS_AE_OP_TYP_AUTO = 0.
Manual mode: E_SS_AE_OP_TYP_MANUAL = 1.u8AmpSensitivity Adjust the sensitivity of anti-flicker detection (The greater the value, the higher the sensitivity). Parameter range: 0 ~ 100. Suggested default setting: 70. u8ScoreThd The threshold value to trigger automatic switch of FlickerType in Auto mode. If Score is smaller than this threshold value, ValidTimes will be added by one. If Score is larger than this threshold value, ValidTimes will be reset to 0. Parameter range: 0 ~ 100. Suggested default setting: 50. u8RefreshCycles Adjust the refresh rate of anti-flicker detection score calculation. This parameter indicates how many cycles are required for the score to be refreshed, and each cycle usually takes 4 to 7 frames. Parameter range: 1 ~ 10. The greater the value, the more reliable the score will be, but the time spent is longer. Suggested default setting: 3. u8ValidTimesThd When ValidTimes reaches ValidTimesThd in auto mode, the algorithm will automatically switch to another Flicker mode. Parameter range: 1 ~ 10. The greater the value, the less likely it will be misjudged, but the time spent is longer. Suggested default setting: 2. eFlickerType Set anti-flicker frequency detection mode: "0 = 60Hz" and "1 = 50Hz". -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFlickerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExType_t *data);
MI_S32 MI_ISP_AE_GetFlickerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExType_t *data);
Anti-flicker Frequency Detection Type Structure¶
-
Description
Select the type of anti-flicker frequency detection.
-
Definition
typedef enum
{
E_SS_AE_FLICKER_TYPE_DETECT_60HZ = 0,
E_SS_AE_FLICKER_TYPE_DETECT_50HZ = 1,
E_SS_AE_FLICKER_TYPE_DETECT_MAX
} MI_ISP_AE_FlickerDetectType_e;
-
Name
Variable Name Description E_SS_AE_FLICKER_TYPE_DETECT_60HZ Set anti-flicker frequency detection environment at 60Hz. E_SS_AE_FLICKER_TYPE_DETECT_50HZ Set anti-flicker frequency detection environment at 50Hz. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_QueryFlickerExInfo Structure¶
Type Structure¶
-
Description
The type structure to obtain information about current anti-flicker frequency detection.
-
Definition
typedef struct MI_ISP_AE_FlickerExInfoType_s
{
MI_ISP_AE_bool_e bIsEffective;
MI_ISP_AE_FlickerDetectType_e eFlickerType;
MI_U16 u16Score;
} MI_ISP_AE_FlickerExInfoType_t;
-
Name
Variable Name Description bIsEffective Get information about the effectiveness of current anti-flicker frequency detection (1: effective; 0: ineffective). eFlickerType Get information about the current mode of anti-flicker frequency detection (0 = 60Hz; 1 = 50Hz). u16Score Get the score of the current effective mode of anti-flicker frequency detection. If the score is high, the current anti-flicker frequency mode is determined as the effective mode. If the score is low, another anti-flicker frequency mode is determined as the effective mode. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QueryFlickerInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FlickerExInfoType_t *data);
MI_ISP_AE_Strategy Structure¶
Type Structure¶
-
Description
The type structure to set exposure strategy of auto-exposure.
-
Definition
typedef struct MI_ISP_AE_StrategyType_s
{
MI_ISP_AE_StrategyType_e eAEStrategyMode;
MI_U32 u32Weighting;
MI_ISP_AE_IntpLutType_t stUpperOffset;
MI_ISP_AE_IntpLutType_t stLowerOffset;
MI_U32 u32BrightToneStrength;
MI_U32 u32BrightToneSensitivity;
MI_U32 u32DarkToneStrength;
MI_U32 u32DarkToneSensitivity;
MI_U32 u32AutoStrength;
MI_U32 u32AutoSensitivity;
} MI_ISP_AE_StrategyType_t;
-
Name
Variable Name Description eAEStrategyMode Select the mode of auto exposure strategy. u32Weighting The weighting as calculated by auto exposure strategy between the target screen brightness and the target screen brightness set in MI_ISP_AE_SetTarget. FinalAETarget = defaultAETarget * (1 - weighting) + StragetyTarget * weighting stUpperOffset Upward floating offset for the adjustment of screen brightness by auto exposure strategy. The X-axis represents the ambient brightness BV, while the Y-axis represents the upward floating range (0 ~ 470). stLowerOffset Downward floating offset for the adjustment of screen brightness by auto exposure strategy. The X-axis represents the ambient brightness BV, while the Y-axis represents the downward floating range (0 ~ 470). u32BrightToneStrength Adjust the target brightness of bright tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_BRIGHTTONE (the greater the value, the darker the image). Parameter range: 0 ~ 1024. BrightToneSensitivity Adjust the sensitivity towards bright tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_BRIGHTTONE (the greater the value, the higher the sensitivity). Even if there is only a small portion of overexposure in the image, the parameter will still darken the image as a whole. Parameter range: 0 ~ 1024. DarkToneStrength Adjust the target brightness of dark tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_DARKTONE (The greater the value, the brighter the image). Parameter range: 0 ~ 1024. DarkToneSensitivity Adjust the sensitivity towards dark tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_DARKTONE (The greater the value, the higher the sensitivity). Even if there is only a small portion of darkness in the image, the parameter will still brighten up the image as a whole. Parameter range: 0 ~ 1024. AutoStrength Adjust the target brightness in bright tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_AUTO (The greater the value, the darker the image). Parameter range: 0 ~ 1024. AutoSensitivity Adjust the sensitivity towards bright tone area when eAEStrategyMode is set to E_SS_AE_STRATEGY_AUTO (The greater the value, the higher the sensitivity). Even if there is only a small portion of overexposure in the image, the parameter will still darken the image as a whole. Parameter range: 0 ~ 1024. -
Note
-
If the floating range of stUpperOffset/stLowerOffset is set to 0, AE exposure strategy will become ineffective because no valid floating range is available, and the target brightness will assume the value set by MI_ISP_AE_SetTarget (default target).
-
The range of the exposure strategy floating target is equal to: default target - lower limit ~ default target + upperlimit.
-
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyType_t
MI_S32 MI_ISP_AE_GetStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyType_t
Exposure Strategy Mode Structure¶
-
Description
Select the mode of exposure strategy.
-
Definition
typedef enum
{
E_SS_AE_STRATEGY_BRIGHTTONE,
E_SS_AE_STRATEGY_DARKTONE,
E_SS_AE_STRATEGY_AUTO,
E_SS_AE_STRATEGY_MAX
} MI_ISP_AE_StrategyType_e;
-
Name
Variable Name Description E_SS_AE_STRATEGY_BRIGHTTONE Bright light suppression mode (bright tone priority). E_SS_AE_STRATEGY_DARKTONE Backlight compensation mode (dark tone priority). E_SS_AE_STRATEGY_AUTO Auto compensation mode. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_StrategyEx Structure¶
Type Structure¶
-
Description
Set auto exposure strategy.
-
Definition
typedef struct MI_ISP_AE_StrategyExType_s
{
MI_ISP_AE_bool_e bEnable;
MI_ISP_AE_StrategyExMode_e eMode;
MI_ISP_AE_StrategyExPriority_e ePriority;
MI_U16 u16BT_NodeNum;
MI_S32 u32BT_NodeBV[MI_ISP_AE_LUT_16];
MI_U32 u32BT_ThdY[MI_ISP_AE_LUT_16];
MI_U32 u32BT_Percentx10[MI_ISP_AE_LUT_16];
MI_U32 u32BT_TargetYx10[MI_ISP_AE_LUT_16];
MI_U32 u32BT_MaxOffsetDown[MI_ISP_AE_LUT_16];
MI_U16 u16DT_NodeNum;
MI_S32 u32DT_NodeBV[MI_ISP_AE_LUT_16];
MI_U32 u32DT_ThdY[MI_ISP_AE_LUT_16];
MI_U32 u32DT_Percentx10[MI_ISP_AE_LUT_16];
MI_U32 u32DT_TargetYx10[MI_ISP_AE_LUT_16];
MI_U32 u32DT_MaxOffsetUp[MI_ISP_AE_LUT_16];
} MI_ISP_AE_StrategyExType_t;
-
Name
Variable Name Description bEnable Enables auto exposure strategy. eMode The mode of exposure strategy. Count Mode and Target Mode are available for selection. Count Mode mainly relies on BT(DT)_ThdY and BT(DT)_Percentx10, by which user may designate the permillage of the statistical value above (or below) a certain level of brightness to the total statistical value. Target Mode mainly relies on BT(DT)_Percentx10 and BT(DT)_Targetx10, by which user may designate the approximate target brightness for the average brightness of statistical value up to (or down to) a certain permillage. ePriority Priority setting of exposure strategy, including Dark Tone Priority (under-exposure prevention) / Bright Tone Priority (over-exposure prevention). u16BT_NodeNum The number of nodes related to Bright Tone parameters. u32BT_NodeBV[MI_ISP_AE_LUT_16] The setting of BV corresponding to each node of Bright Tone. MI_ISP_AE_LUT_16 = 16. u32BT_ThdY[MI_ISP_AE_LUT_16] The setting of brightness threshold for Bright Tone. Data range: 0 ~ 255; effective only in Count Mode. MI_ISP_AE_LUT_16 = 16. u32BT_Percentx10[MI_ISP_AE_LUT_16] The setting of Bright Tone permillage. Data range: 0 ~ 1000; effective both in Count Mode and Target Mode. MI_ISP_AE_LUT_16 = 16. u32BT_TargetYx10[MI_ISP_AE_LUT_16] The setting of average target brightness of Bright Tone. Data range: 0 ~ 2550; effective only in Target Mode. MI_ISP_AE_LUT_16 = 16. u32BT_MaxOffsetDown[MI_ISP_AE_LUT_16] The downward offset range of AE target. Data range: 0 ~ 2550. Setting it to 0 means disabling offset target and solely relies on Target Offset setting. MI_ISP_AE_LUT_16 = 16. u16DT_NodeNum The number of nodes related to Dark Tone parameters. u32DT_NodeBV[MI_ISP_AE_LUT_16] The setting of BV corresponding to each node of Dark Tone. MI_ISP_AE_LUT_16 = 16. u32DT_ThdY[MI_ISP_AE_LUT_16] The setting of brightness threshold for Dark Tone. Data range: 0 ~ 255; effective only in Count Mode. MI_ISP_AE_LUT_16 = 16. u32DT_Percentx10[MI_ISP_AE_LUT_16] The setting of Dark Tone permillage. Data range: 0 ~ 1000; effective both in Count Mode and Target Mode. MI_ISP_AE_LUT_16 = 16. u32DT_TargetYx10[MI_ISP_AE_LUT_16] The setting of average target brightness of Dark Tone. Data range: 0 ~ 2550; effective only in Target Mode. MI_ISP_AE_LUT_16 = 16. u32DT_MaxOffsetUp[MI_ISP_AE_LUT_16] The upward offset range of AE target. Data range: 0 ~ 2550. Setting it to 0 means disabling offset target and soly relies on Target Offset setting. MI_ISP_AE_LUT_16 = 16. -
Note



-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStrategyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExType_t *data);
MI_S32 MI_ISP_AE_GetStrategyEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExType_t *data);
Exposure Strategy Mode Structure¶
-
Description
Select the mode of exposure strategy.
-
Definition
typedef enum
{
E_SS_AE_STRATEGY_EX_COUNT,
E_SS_AE_STRATEGY_EX_TARGET,
} MI_ISP_AE_STRATEGY_EX_TYPE_e;
-
Name
Variable Name Description E_SS_AE_STRATEGY_EX_COUNT Select Count Mode, which mainly relies on BT(DT)_ThdY and BT(DT)_Percentx10. User may designate the permillage of the statistical value above (or below) a certain brightness to the total statistical value. E_SS_AE_STRATEGY_EX_TARGET Select Target Mode, which mainly relies on BT(DT)_Percentx10 and BT(DT)_Targetx10. User may designate the approximate target brightness for the average brightness of statistical value up to (or down to) a certain permillage. -
Note
N/A.
-
Related Structure Type and Function
Priority Exposure Strategy Mode Structure¶
-
Description
Select the mode of exposure strategy priority.
-
Definition
typedef enum
{
E_SS_AE_STRATEGY_EX_BRIGHTTONE,
E_SS_AE_STRATEGY_EX_DARKTONE,
} MI_ISP_AE_StrategyExPriority_e;
-
Name
Variable Name Description E_SS_AE_STRATEGY_EX_BRIGHTTONE Bright Tone priority (over-exposure prevention). E_SS_AE_STRATEGY_EX_DARKTONE Dark Tone priority (under-exposure prevention). -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_StrategyExAdvType Structure¶
Type Structure¶
-
Description
Set the exposure strategy of automatic exposure in HDR mode.
-
Definition
typedef struct MI_ISP_AE_StrategyExAdvType_s
{
MI_S16 u16WeightRatio1;
MI_S16 u16WeightRatio2;
} MI_ISP_AE_StrategyExAdvType_t;
-
Name
Variable Name Description u16WeightRatio1 Adjust the weighting value to determine Dark Tone Priority or Bright Tone Priority. Parameter value: 0 ~ 1024. The smaller the value than 512, the greater priority will be given to Bright Tone; The larger the value than 512, the greater priority will be given to Darker Tone. u16WeightRatio2 Adjust the weighting value of AE Target. Parameter value: 0 ~ 1024. If the value equals 0, the weighting of AE Target will become ineffective, and the screen brightness will be based on the result of Weight 1; If the value is larger than 0, the weighting of AE Target will become greater, and the screen brightness will come closer to AE Target. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStrategyExAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExAdvType_t *data);
MI_S32 MI_ISP_AE_GetStrategyExAdv(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExAdvType_t *data);
MI_ISP_AE_StrategyExInfo Structure¶
Type Structure¶
-
Description
The type structure to obtain the information about the current exposure strategy.
-
Definition
typedef struct MI_ISP_AE_StrategyExInfoType_s
{
MI_U16 u16GMBlendRatio;
MI_U16 u16UpperLimitTargetx10;
MI_U16 u16LowerLimitTargetx10;
MI_U16 u16BTCntPcntx10;
MI_U16 u16DTCntPcntx10;
MI_U16 u16BTYx10;
MI_U16 u16DTYx10;
} MI_ISP_AE_StrategyExInfoType_t;
-
Name
Variable Name Description u16GMBlendRatio The blending ratio of Adaptive Gamma and common Gamma. Data range: 0 ~ 1024. The ratio is calculated from the final values of SceneTarget and TargetOffset as well as the maximum values of BT_MaxOffsetDown and DT_MaxOffsetUp. If the ratio is lower than 512, BTGamma will be blended with common Gamma; If the ratio is larger than 512, DT Gamma will be blended with common Gamma. Common Gamma will be taken as the ratio when the ratio is equal to 512. u16UpperLimitTargetx10 The upward floating limit for the current AE target. u16LowerLimitTargetx10 The downward floating limit for the current AE target. u16BTCntPcntx10 The permillage of the current number of statistical values above BT_ThdY to the total number of statistical values. u16DTCntPcntx10 The permillage of the current number of statistical values below DT_ThdY to the total number of statistical values. u16BTYx10 The average brightness of current top BT_Percentx10 per-mille bright statistics. u16DTYx10 The average brightness of current bottom DT_Percentx10 per-mille bright statistics. -
Note

-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QueryStrategyExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StrategyExInfoType_t *data);
MI_ISP_AE_RgbirAe Structure¶
Type Structure¶
-
Description
The type structure to set relevant AE control parameters for RGB-IR mode.
-
Definition
typedef struct MI_ISP_AE_RgbirAeType_s
{
MI_ISP_AE_bool_e bEnable;
MI_U16 u16MaxYWithIR;
MI_U16 u16MinISPGainCompRatio;
} MI_ISP_AE_RgbirAeType_t;
-
Name
Variable Name Description bEnable Enable / Disable RGB-IR AE. u16MaxYWithIR Set the maximum value of brightness (Y) allowed by the R, G, B components before IR substraction. Range: 0 ~ 2550. u16MinISPGainCompRatio Set the minimum conversion ratio for using ISP gain to compensate for image brightness. The maximum ISP gain available for use = 10000/ u16MinISPGainCompRatio. (ex: 10000 = 1x, 1000 = 10x) -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetRgbirAe(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_RgbirAeType_t *data);
MI_S32 MI_ISP_AE_GetRgbirAe(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_RgbirAeType_t *data);
MI_ISP_AE_Hdr Structure¶
Type Structure¶
-
Description
Parameter data setup table with point interpolation function. This function can be used to set HDR long/short exposure ratio that varies with the total gain (e. g., the X-axis represents total gain, while the Y-axis represents HDR long/short exposure ratio).
-
Definition
typedef struct MI_ISP_AE_HdrType_s
{
MI_ISP_AE_IntpLutType_t stAeHdrRatio;
} MI_ISP_AE_HdrType_t;
-
Name
Variable Name Description stAeHdrRatio Set HDR long/short exposure ratio that varies with different total gain. The method of use is the same as that for MI_ISP_AE_IntpLutType_t -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetHdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HdrType_t *data);
MI_S32 MI_ISP_AE_GetHdr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HdrType_t *data);
MI_ISP_AE_Stabilizer Structure¶
Type Structure¶
-
Description
The type structure of Stabilizer.
-
Definition
typedef struct MI_ISP_AE_StabilizerType_s
{
MI_ISP_AE_bool_e bEnable;
MI_U16 u16DiffThd;
MI_U16 u16Percent;
} MI_ISP_AE_StabilizerType_t;
-
Name
Variable Name Description bEnable Enable Stabilizer. u16DiffThd The threshold value for determining whether there is change between the current frame and the reference frame. If the difference of Y exceeds this threshold, the statistic block will be judged as changed; if the difference falls below this threshold, the statistic block will be judged as unchanged. It is not recommended to set the value too large, as it may lead to the lack of discontinuity when the brightness of the light source is changing. Data range: 0 ~ 20 (in 8-bit precision). Suggested value: 2. u16Percent The threshold value of frame proportion in percentage. In convergence state, AE will remain unchanged if proportion of the area judged as changed to the whole frame is smaller than this value. Data range: 0 ~ 100. Default value: 50. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerType_t *data);
MI_S32 MI_ISP_AE_GetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerType_t *data);
MI_ISP_AE_PowerLine Structure¶
Type Structure¶
-
Description
The type structure of PowerLine.
-
Definition
typedef struct MI_ISP_AE_PowerLineType_s
{
MI_ISP_AE_bool_e bEnable;
MI_U16 u16Ratio;
} MI_ISP_AE_PowerLineType_t;
-
Name
Variable Name Description bEnable Enable the function of PowerLine Flicker. u16Ratio Adjust the ratio of PowerLine compensation. Parameter range: 0 ~ 1024 (128 = 1x). -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetPowerLine(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_PowerLineType_t *data);
MI_S32 MI_ISP_AE_GetPowerLine(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_PowerLineType_t *data);
MI_ISP_AE_PowerLineInfo Structure¶
Type Structure¶
-
Description
The type structure of PowerLineInfo.
-
Definition
typedef struct MI_ISP_AE_PowerLineInfoType_s
{
MI_S16 s2Direction;
MI_U16 u2IsEffective;
MI_U32 u4PreShutter;
} MI_ISP_AE_PowerLineInfoType_t;
-
Name
Variable Name Description s2Direction Determine the current shutter status as turning from dark to bright or from bright to dark. Parameter range: -1 ~ 1. Direction = 1 means that this function is enabled, Direction = -1 or 0 means that this function is not enabled. u2IsEffective Show whether this function has come into effect. Parameter range: 0 ~ 1. 0 means that PowerLine function is not effective, while 1 means that PowerLine function is effective. u4PreShutter Record the time of last exposure. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QueryPowerLineInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_PowerLineInfoType_t *data);
MI_ISP_AE_LumaWgt Structure¶
Type Structure¶
-
Description
The type structure of Weight by luminance.
-
Definition
typedef struct MI_ISP_AE_LumaWgtType_s
{
MI_ISP_AE_bool_e bEnable;
MI_ISP_AE_IntpLutType_t WeightLuma;
MI_ISP_AE_IntpLutType_t WeightSatCnt;
MI_U16 u2SatCntThd;
} MI_ISP_AE_LumaWgtType_t;
-
Name
Variable Name Description bEnable Enable the function of Weight by luminance. WeightLuma Set corresponding weight to the brightness after AE statistical value is deducted by M x N, which are 16 x 16. The X-axis represents brightness (x10). Range: 0 ~ 2550. The Y-axis represents the weight. Range: 0 ~ 256. 1x = 256. WeightSatCnt Set corresponding weight based on the number of brightness, for which the AE statistical value, having been deducted by M x N, is greater than the number of SatCntThd. M x N = 16 x 16.The X-axis represents the number of Saturate Count. Range: 0 ~ 256. The Y-axis represents the weight. Range: 0 ~ 256. 1x = 256. u2SatCntThd Set the threshold value of Saturate count. The greater the number, the less weight the bright area represents. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetLumaWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_LumaWgtType_t *data);
MI_S32 MI_ISP_AE_GetLumaWgt(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_LumaWgtType_t *data);
MI_ISP_AE_HdrDynamicRatio Structure¶
Type Structure ¶
-
Description
The type structure of HDR dynamic ratio.
-
Definition
typedef struct MI_ISP_AE_HdrDynamicRatioType_s
{
MI_ISP_AE_OpType_e enOpType;
MI_ISP_AE_IntpLutType_t ExpoRatio;
MI_ISP_AE_IntpLutType_t ExpoRatioOffset;
MI_U16 u2ExpoRatioSensitivity;
MI_U16 u2ExpoRatioTolerance;
MI_U16 u2ExpoRatio_NodeNum;
MI_U32 u4ExpoRatio_Min[MI_ISP_AE_LUT_16];
MI_U32 u4ExpoRatio_Max[MI_ISP_AE_LUT_16];
MI_S32 u4ExpoRatio_NodeBV[MI_ISP_AE_LUT_16];
MI_ISP_AE_OpType_e enOpTypeShortExpTab;
MI_U32 u4ShortShutterMax;
} MI_ISP_AE_HdrDynamicRatioType_t;
-
Name
Variable Name Description enOpType The working mode of HDR Dynamic Ratio. There are Auto and Manual modes available. When Auto mode is set, HDR ratio will be automatically calculated based on the dynamic range of current scene. When Manual mode is set, HDR ratio will be queried based on ExpoRatio LUT. ExpoRatio The X-axis represents the total gain of HDR exposure ratio, while the Y axis represents the exposure ratio of HDR long and short exposure (1024 = 1x). ExpoRatioOffset The X-axis represents the exposure ratio of HDR long and short exposure (1024 = 1x), while the Y axis represents the upper/lower limit for HDR exposure ratio change based on HDR Ratio, in a bid to avoid flickering caused by drastic change. This parameter should be fine tuned for each sensor. The greater the value, the faster HDR ratio will change; the smaller the value, the slower HDR ratio will change. u2ExpoRatioSensitivity Set the sensitivity of HDR ratio. The smaller the value, the smaller the value of dynamic range. Parameter range: 1 ~ 99. u2ExpoRatioTolerance Adjust the convergence condition of HDR ratio. The smaller the value, the easier HDR ratio will converge. Parameter range: 1 ~ 100. u2ExpoRatio_NodeNum Set the number of nodes for HDR ratio change. u4ExpoRatio_Min[MI_ISP_AE_LUT_16] Set the minimum value of HDR ratio (1024 = 1x).
MI_ISP_AE_LUT_16 = 16.u4ExpoRatio_Max[MI_ISP_AE_LUT_16] Set the maximum value of HDR ratio (1024 = 1x).
MI_ISP_AE_LUT_16 = 16.u4ExpoRatio_NodeBV[MI_ISP_AE_LUT_16] Set the minimum/maximum value of HDR ratio based on BV value.
MI_ISP_AE_LUT_16 = 16.enOpTypeShortExpTab The working mode for the maximum value of short exposure. Auto and Manual modes are available. When Auto mode is set, the maximum value of sensor driver's short exposure will be obtained. When Manual mode is set, the maximum value of short exposure can be set manually. u4ShortShutterMax Set the maximum value of short exposure. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetHDRMLDynamicRatio(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HdrDynamicRatioType_t *data);
MI_S32 MI_ISP_AE_GetHDRMLDynamicRatio(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_HdrDynamicRatioType_t *data);
MI_ISP_AE_ExpoTableMode Structure¶
Type Structure ¶
-
Description
The type structure of the working mode of AE exposure table.
-
Definition
typedef struct MI_ISP_AE_ExpoTableMode_s
{
MI_ISP_AE_OpType_e enOpType;
} MI_ISP_AE_ExpoTableMode_t;
-
Name
Variable Name Description enOpType Mode selection for AE exposure schedule. Auto and Manual modes are available for selection. When Auto is selected, AE exposure schedule will be automatically generated based on HDR ratio; when Manual is selected, exposure schedule will have to be set by the user. This parameter is applicable to AEPlainTbl and AEPlainShortTbl. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetExpoTableMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableMode_t *data);
MI_S32 MI_ISP_AE_GetExpoTableMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ExpoTableMode_t *data);
MI_ISP_AE_QueryHDRDynamicRatioInfo Structure¶
Type Structure¶
-
Description
The type structure of HDR dynamic ratio information.
-
Definition
typedef struct MI_ISP_AE_QueryHdrDynamicRatioInfoType_s
{
MI_U32 u4ExpoRatio[E_SS_AE_HDR_COMB_MODE_MAX];
MI_ISP_AE_bool_e IsHDRRatioChange[E_SS_AE_HDR_COMB_MODE_MAX];
} MI_ISP_AE_QueryHdrDynamicRatioInfoType_t;
-
Name
Variable Name Description u4ExpoRatio[E_SS_AE_HDR_COMB_MODE_MAX] Read the current value of Exposure Ratio.
E_SS_AE_HDR_COMB_MODE_MAX = 1.IsHDRRatioChange[E_SS_AE_HDR_COMB_MODE_MAX] Whether the current Exposure Ratio is stable. 0 means that the value is stable, while 1 means that the value is changing.
E_SS_AE_HDR_COMB_MODE_MAX = 1. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QueryHDRDynamicRatioInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_QueryHdrDynamicRatioInfoType_t *data);
MI_ISP_AE_HdrComb_Mode Structure¶
Type Structure¶
-
Description
The type structure of HDR Comb mode.
-
Definition
typedef enum
{
E_SS_AE_HDR_COMB_MODE_ML = 0,
E_SS_AE_HDR_COMB_MODE_MAX
} MI_ISP_AE_HdrComb_ModeType_e;
-
Name
Variable Name Description E_SS_AE_HDR_COMB_MODE_ML Index value = 0. E_SS_AE_HDR_COMB_MODE_MAX The maximum value of HDR Comb mode enum list. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_FDInfo Structure¶
Type Structure¶
-
Description
The type structure of FDAE information.
-
Definition
typedef struct MI_ISP_AE_FDInfoType_s
{
MI_U16 u16FDNum;
MI_U32 u32FDInitTarget;
MI_ISP_AE_FDCorParam_t stFDCor[4];
} MI_ISP_AE_FDInfoType_t;
-
Name
Variable Name Description u16FDNum Determine whether there is a face, 0 stands for no face, 1 stands for a face. u32FDInitTarget Be Set to 0. stFDCor[4] The face information. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFaceDetectInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDInfoType_t *data);
MI_ISP_AE_FDParam Structure¶
Type Structure¶
-
Description
The type structure of FDAE parameters adjustment.
-
Definition
typedef struct MI_ISP_AE_FDParamType_s
{
MI_ISP_AE_bool_e bEnable;
MI_U8 u8FacetargetY;
MI_U8 u8Tolerance;
MI_U8 u8Speed;
MI_U8 u8FaceChangePcnt;
MI_U8 u8EnvChangePcnt;
MI_U16 u16Upper;
MI_U16 u16Lower;
} MI_ISP_AE_FDParamType_t;
-
Name
Variable Name Description bEnable Enable or disable FDAE. u8FacetargetY The brightness of the face target. u8Tolerance The convergence range of the face brightness. u8Speed The convergence speed of the face. (Invalid currently) u8FaceChangePcnt The face brightness variation out of the convergence range of FDAE. u8EnvChangePcnt The environment variation out of the convergence range of FDAE. u16Upper Adjust the upper limit of the face brightness variation. u16Lower Adjust the lower limit of the face brightness variation. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFaceDetectParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDParamType_t *data);
MI_S32 MI_ISP_AE_GetFaceDetectParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDParamType_t *data);
MI_ISP_AE_FDParamEX Structure¶
Type Structure¶
-
Description
The type structure of FDAE_EX parameters adjustment.
-
Definition
typedef struct MI_ISP_AE_FDParamEXType_s
{
MI_U16 u16DetectEnvChangeRatio;
MI_U16 u16DetectOverExposureDiff;
MI_U16 u16DetectBlackDiff;
MI_U16 u16ConvSpeedX[4];
MI_U16 u16ConvSpeedY[4];
MI_U16 u16UnStableArea[4];
MI_U8 u8StableXTh_UnStableArea;
MI_U8 u8StableYTh_UnStableArea;
MI_U8 u8StableXTh;
MI_U8 u8StableYTh;
MI_U8 u8StableAreaTh;
MI_U8 u8StableCnt;
MI_U8 u8FaceToNoFaceSpeed;
MI_U8 u8CompensationArea;
MI_U8 u8CompensationRatio;
MI_U8 u8ExcludeFaceRatio;
} MI_ISP_AE_FDParamEXType_t;
-
Name
Variable Name Description u16DetectEnvChangeRatio The environment variation out of the convergence range of FDAE. u16DetectOverExposureDiff Define the overexposure value of the face brightness. u16DetectBlackDiff Define the dim value of the face brightness. u16ConvSpeedX[4] The X-axis of the face brightness convergence speed. u16ConvSpeedY[4] The Y-axis of the face brightness convergence speed. u16UnStableArea[4] Set the unstable area of the face frame. u8StableXTh_UnStableArea The stable threshold (Th) in the X direction for judging stability when the face frame is in the unstable area, the larger the value, the easier it is to judge as stable. u8StableYTh_UnStableArea The stable threshold (Th) in the Y direction for judging stability when the face frame is in the unstable area, the larger the value, the easier it is to judge as stable. u8StableXTh The stable threshold (Th) in the X direction for judging stability when the face frame is in the stable area, the larger the value, the easier it is to judge as stable. u8StableYTh The stable threshold (Th) in the Y direction for judging stability when the face frame is in the stable area, the larger the value, the easier it is to judge as stable. u8StableAreaTh The value for determining whether the face frame is stable, the larger the value, the easier it is to judge as stable. u8StableCnt Set the number of consecutive times judged as stable, and only when this threshold (Th) is met, will the face brightness adjustment be performed. u8FaceToNoFaceSpeed The velocity of switching from the AETarget with a face to the AETarget without a face, the larger the value, the faster the switching velocity. u8CompensationArea Set the compensation area for the face target brightness. If it is greater than this threshold (Th), compensation is required. u8CompensationRatio Set the compensation ratio for the face target brightness. The larger the value, the more compensation is required. u8ExcludeFaceRatio The threshold (Th) for identifying a face. The larger the value, the easier it is to identify a face. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFaceDetectParam_EX(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE__FDParamEXType_t *data);
MI_S32 MI_ISP_AE_GetFaceDetectParam_EX(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDParamEXType_t *data);
MI_ISP_AE_FDEXInfo Structure¶
Type Structure¶
-
Description
The type structure of FDEx_Info.
-
Definition
typedef struct MI_ISP_AE_FDEXInfoType_s
{
MI_U8 uIsFaceEffective;
MI_U8 uIsReachFDMinMaxBoundary;
MI_U8 uIsAFStable;
MI_U16 u16FDNum;
MI_ISP_AE_FDCorParam_t stFDCor[4];
} MI_ISP_AE_FDEXInfoType_t;
-
Name
Variable Name Description uIsFaceEffective Status of whether FDAE is effective. uIsReachFDMinMaxBoundary Whether the FDAE brightness reaches the minimum/maximum boundary. uIsAFStable Status of AF Stable. u16FDNum Face number. stFDCor[4] Face coordinate. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFDExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXInfoType_t *data);
MI_S32 MI_ISP_AE_GetFDExInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXInfoType_t *data);
MI_ISP_AE_FDEXParam Structure¶
Type Structure¶
-
Description
The type structure of FDEx_Param.
-
Definition
typedef struct MI_ISP_AE_FDEXParamType_s
{
MI_ISP_AE_Bool_e bEnable;
MI_ISP_AE_Bool_e bEnDbgMsg;
MI_ISP_AE_Bool_e bIgnoreAFStable;
MI_U8 u8FDCalCycleNum;
MI_U16 u16FDStableCountThr;
MI_U16 u16FDUnstableCountThr;
MI_U16 u16FDFastTriggerCountThr
MI_U16 u16FDLumaNodeNum;
MI_S32 u32FDLumaTarget[MI_ISP_AE_LUT_16];
MI_S32 u32FDLumaTolerance[MI_ISP_AE_LUT_16];
MI_S32 u32FDSceneTargetMin[MI_ISP_AE_LUT_16];
MI_S32 u32FDSceneTargetMax[MI_ISP_AE_LUT_16];
MI_S32 u32FDLumaNodeBV[MI_ISP_AE_LUT_16];
MI_U16 u16FDConvRatioNum;
MI_S32 u32FDConvRatioX[MI_ISP_AE_LUT_16];
MI_S32 u32FDConvRatioY[MI_ISP_AE_LUT_16];
} MI_ISP_AE_FDEXParamType_t;
-
Name
Variable Name Description bEnable Enable / Disable FDAE_Ex. bEnDbgMsg Enable / Disable FDAE_Ex debug message. bIgnoreAFStable Enable / Disable to ignore the state of AF stable. u8FDCalCycleNum Set the number of face detection frames to execute FDAE_Ex cyclically. u16FDStableCountThr Set the number of consecutive face detections to execute FDAE_Ex. u16FDUnstableCountThr Set the number of consecutive detections of no faces to execute Non-FDAE_Ex. u16FDFastTriggerCountThr Set the fast trigger FDAE_Ex mechanism. u8FDLumaTarget Set the target value of face luminance. u8FDLumaTolerance Set the convergence range of face luminance. u16FDLumaNodeNum Set the node number of face luminance. u32FDLumaTarget[MI_ISP_AE_LUT_16] Set the target value of face luminance. MI_ISP_AE_LUT_16 = 16. u32FDLumaTolerance[MI_ISP_AE_LUT_16] Set the convergence range of face luminance. MI_ISP_AE_LUT_16 = 16. u32FDSceneTargetMin[MI_ISP_AE_LUT_16] Set the minimum value of face target luminance. MI_ISP_AE_LUT_16 = 16. u32FDSceneTargetMax[MI_ISP_AE_LUT_16] Set the maximum value of face target luminance. MI_ISP_AE_LUT_16 = 16. u32FDLumaNodeBV[MI_ISP_AE_LUT_16] Set the face luminance based on BV value. MI_ISP_AE_LUT_16 = 16. u16FDConvRatioNum Set the node number of face convergence speed. u32FDConvRatioX[MI_ISP_AE_LUT_16] Set the weighted luminance of face convergence speed. Parameter range: 1 ~ 2550. MI_ISP_AE_LUT_16 = 16. u32FDConvRatioY[MI_ISP_AE_LUT_16] Set the value of face convergence speed. Parameter range: 1 ~ 1024 (1x = 1024). MI_ISP_AE_LUT_16 = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFDExParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXParamType_t *data);
MI_S32 MI_ISP_AE_GetFDExParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXParamType_t *data);
MI_ISP_AE_FDEXIIParam Structure¶
Type Structure¶
-
Description
The type structure of FDExII_Param.
-
Definition
typedef struct MI_ISP_AE_FDEXIIParamType_s
{
MI_S32 u32FDLumaToleranceOut[MI_ISP_AE_LUT_16];
} MI_ISP_AE_FDEXIIParamType_t;
typedef struct MI_ISP_AE_FDEXParamType_s
-
Name
Variable Name Description u32FDLumaToleranceOut[MI_ISP_AE_LUT_16] Set the non-convergence range of face luminance. MI_ISP_AE_LUT_16 = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFDExIIParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXIIParamType_t *data);
MI_S32 MI_ISP_AE_GetFDExIIParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXIIParamType_t *data);
MI_ISP_AE_FDEXAdvParam Structure¶
Type Structure¶
-
Description
The type structure of FDExAdv_Param.
-
Definition
typedef struct MI_ISP_AE_FDEXAdvParamType_s
{
MI_ISP_AE_FDEXSwitchMode_e(#FDEXSwitchMode) enSwitchMode;
MI_ISP_AE_ExpoValueType_t(#ExpoValueType) strLongParam;
MI_ISP_AE_ExpoValueType_t(#ExpoValueType) strShortParam;
} MI_ISP_AE_FDEXAdvParamType_t;
-
Name
Variable Name Description enSwitchMode Set the mode for switching the face luminance exposure parameter. strLongParam Set the face luminance long exposure mode parameter. strShortParam Set the face luminance short exposure mode parameter. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetFDExAdvParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXAdvParamType_t *data);
MI_S32 MI_ISP_AE_GetFDExAdvParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_FDEXAdvParamType_t *data);
MI_ISP_AE_VerInfo Structure¶
Type Structure¶
-
Description
The type structure of AE Version Information.
-
Definition
typedef struct MI_ISP_AE_VerInfoType_s
{
MI_U32 u32ReleaseDate;
MI_U32 u32ReportID;
MI_U8 u8Major;
MI_U8 u8Minor;
MI_U8 u8TestVer;
} MI_ISP_AE_VerInfoType_t;
-
Name
Variable Name Description u32ReleaseDate Print out the release date of AE FW update. u32ReportID Print out the report ID of AE FW. Default: 0. u8Major Print out the major version number of AE FW. u8Minor Print out the minor version number of AE FW. u8TestVer Print out the test version number of AE FW. Defaut: 0. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_VerInfoType_t *data);
MI_ISP_AE_StabilizerEx Structure¶
Type Structure ¶
-
Description
StabilizerEx structure.
-
Definition
typedef struct MI_ISP_AE_StabilizerExType_s
{
MI_U8 u8StableCnt;
MI_U8 u8StableTh;
MI_U8 u8DetectMotionSensitivity;
} MI_ISP_AE_StabilizerExType_t;
-
Name
Variable Name Description u8StableCnt Set the number of consecutive determinations of environment being stable before AE starts. u8StableTh Set the condition for the environment to be judged as stable. u8DetectMotionSensitivity Set the frequency used to detect whether the environment is stable. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetStabilizerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerExType_t *data);
MI_S32 MI_ISP_AE_GetStabilizerEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_StabilizerExType_t *data);
MI_ISP_AE_ConvSpeed_Ex Structure¶
Type Structure ¶
-
Description
Set the convergence condition of auto-exposure.
-
Definition
typedef struct MI_ISP_AE_ConvSpeed_Ex_s
{
MI_ISP_AE_bool_e bEnable;
MI_ISP_AE_ConvSpeedParam_Ex_t stConvSpeedEx;
} MI_ISP_AE_ConvSpeed_Ex_t;
-
Name
Variable Name Description bEnable Enable ConvSpeed_Ex. stConvSpeedEx Set the convergence speed of auto-exposure. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetConvergeSpeed_Ex(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvSpeed_Ex_t *data);
MI_S32 MI_ISP_AE_GetConvergeSpeed_EX(MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_ConvSpeed_Ex_t *data);
Convergence Interval Structure ¶
-
Description
Set intervals for auto-exposure to start converging or to determine that convergence is completed.
-
Definition
typedef struct MI_ISP_AE_ConvSpeedParam_Ex_s
{
MI_U32 u32SpeedX[MI_ISP_AE_LUT_16];
MI_U32 u32SpeedY[MI_ISP_AE_LUT_16];
} MI_ISP_AE_ConvSpeedParam_Ex_t;
-
Name
Variable Name Description u32SpeedX Set different brightness intervals. Parameter range: 1 ~ 2550. u32SpeedY Set different brightness intervals and allocate convergence speed. Parameter range: 1 ~ 1024. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AE_SceneInd Structure¶
Type Structure¶
-
Description
The type structure to set AE SceneInd.
-
Definition
typedef struct MI_ISP_AE_SceneIndType_s {
MI_U16 u16Flag[MI_ISP_AE_SCENE_NUM];
} MI_ISP_AE_SceneIndType_t;
-
Name
Variable Name Description u16Flag[MI_ISP_AE_SCENE_NUM] Flag of AE scene mode. MI_ISP_AE_SCENE_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetSceneInd (MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneIndType_t *data);
MI_S32 MI_ISP_AE_GetSceneInd (MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneIndType_t *data);
MI_ISP_AE_SceneAdj Structure¶
Type Structure¶
-
Description
The type structure to set AE SceneAdj.
-
Definition
typedef struct MI_ISP_AE_SceneAdjType_s {
MI_ISP_AE_bool_e bEnable;
MI_U16 u16ConvSpeed;
MI_U16 u16AdjItem[MI_ISP_AE_SCENE_NUM][MI_ISP_AE_SCENE_ADJ_NUM];
MI_U16 u16Level[MI_ISP_AE_SCENE_NUM][MI_ISP_AE_SCENE_ADJ_NUM];
} MI_ISP_AE_SceneAdjType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of AE SceneAdj.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16ConvSpeed Adjust the convergence speed of the AE adjustment item from the current level to the target level. Parameter range: 0 ~ 100. u16AdjItem[MI_ISP_AE_SCENE_NUM][MI_ISP_AE_SCENE_ADJ_NUM] The AE adjustment supports the selection of 2 parameters. The following table shows the parameters corresponding to each index value. Horizontal axis parameters indicates the AE adjustment options for each item, supporting up to 8 AE items. Parameter range: 0 ~ 1. Vertical axis parameter indicates scene detection mode. Currently, three scene modes are supported: Back light, Front light, and Mixer light. Up to 16 scene modes are supported. MI_ISP_AE_SCENE_NUM = 16. u16Level[MI_ISP_AE_SCENE_NUM][MI_ISP_AE_SCENE_ADJ_NUM] Set the adjustment level of the corresponding parameter. The level of parameters not selected by AdjItem will be 100 (Level value 100 means no adjustment). Parameter range: 0 ~ 200. MI_ISP_AE_SCENE_ADJ_NUM = 8. MI_ISP_AE_SCENE_NUM = 16. Index Parameter Description 0 ByPass Bypass AE parameters adjustment. 1 Exposure Adjust the target brightness of auto exposure. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_SetSceneAdj (MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneAdjType_t *data);
MI_S32 MI_ISP_AE_GetSceneAdj (MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneAdjType_t *data);
MI_ISP_AE_SceneCurLevel Structure¶
Type Structure¶
-
Description
The type structure to set AE SceneCurLevel.
-
Definition
typedef struct MI_ISP_AE_SceneCurLevelType_s {
MI_U16 u16Level[MI_ISP_AE_SCENE_PARAM_NUM];
} MI_ISP_AE_SceneCurLevelType_t;
-
Name
Variable Name Description u16Level[MI_ISP_AE_SCENE_PARAM_NUM] Shows the current level of all AE parameters, 100 means no adjustment. Parameter range: 0 ~ 200. MI_ISP_AE_SCENE_PARAM_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AE_QuerySceneCurLevelInfo (MI_U32 DevId, MI_U32 Channel, MI_ISP_AE_SceneCurLevelType_t *data);
MI_ISP_AWB_bool Structure¶
Enum Structure¶
-
Description
The enum structure of Boolean value.
-
Definition
typedef enum
{
E_SS_AWB_FALSE = 0,
E_SS_AWB_TRUE = !E_SS_AWB_FALSE,
E_SS_AWB_BOOL_MAX
} MI_ISP_AWB_bool_e;
-
Name
Variable Name Description E_SS_AWB_FALSE Boolean value = 0. E_SS_AWB_TRUE Boolean value = 1. E_SS_AWB_BOOL_MAX Determine the maximum value in the enum list of Boolean value. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_OpType Structure¶
Enum Structure¶
-
Description
The enum structure of working mode.
-
Definition
typedef enum
{
E_SS_AWB_OP_TYP_AUTO = 0,
E_SS_AWB_OP_TYP_MANUAL = ! E_SS_AWB_OP_TYP_AUTO,
E_SS_AWB_OP_TYP_MODE_MAX
} MI_ISP_AWB_OpType_e;
-
Name
Variable Name Description E_SS_AWB_OP_TYP_AUTO Auto working mode. E_SS_AWB_OP_TYP_MANUAL Manual working mode. E_SS_AWB_OP_TYP_MODE_MAX Determine the maximum value in the enum list of working mode. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_AWB_AlgoType Structure¶
Enum Structure¶
-
Description
The enum structure of AWB algorithm.
-
Definition
typedef enum
{
E_SS_AWB_ALG_GRAYWORLD = 0,
E_SS_AWB_ALG_NORMAL = 1,
E_SS_AWB_ALG_BALANCE = 2,
E_SS_AWB_ALG_FOCUS = 3,
E_SS_AWB_ALG_MAX
} MI_ISP_AWB_AlgoType_e;
-
Name
Variable Name Description E_SS_AWB_ALG_ GRAYWORLD Use all AWB statistics to calculate the WB gain. E_SS_AWB_ALG_NORMAL Use the AWB statistics located in the first two to three CT blocks that have the highest count to calculate the WB gain. E_SS_AWB_ALG_BALANCE Use all the AWB statistics located in effective CT blocks to calculate the WB gain. E_SS_AWB_ALG_FOCUS WB gain calculation will focus on single color temperature. E_SS_AWB_ALG_MAX Determine the maximum value in the enum list of AWB algorithm. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_AdvType Structure¶
Enum Structure¶
-
Description
The enum structure of advanced AWB algorithm.
-
Definition
typedef enum
{
E_SS_AWB_ADV_DEFAULT = 0,
E_SS_AWB_ADV_ADVANCE = 1,
E_SS_AWB_ADV_PRO = 2,
E_SS_AWB_ADV_MAX
} MI_ISP_AWB_AdvType_e;
-
Name
Variable Name Description E_SS_AWB_ADV_DEFAULT Default AWB algorithm. E_SS_AWB_ADV_ADVANCE Advanced AWB algorithm, which enables the setting function of MI_ISP_AWB_SetAttrEx. E_SS_AWB_ADV_PRO New veraion of advanced AWB algorithm, which enables the function of IncludeArea and ExcludeArea. E_SS_AWB_ADV_MAX Determine the maximum value in the enum list of advanced AWB algorithm. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_SmStateType Structure¶
Enum Structure¶
-
Description
The enum structure of State Machine.
-
Definition
typedef enum
{
E_SS_AWB_STATE_NORMAL = 0,
E_SS_AWB_STATE_PAUSE = 1,
E_SS_AWB_STATE_MAX
} MI_ISP_AWB_SmStateType_e;
-
Name
Variable Name Description E_SS_AWB_STATE_NORMAL Normal mode. E_SS_AWB_STATE_PAUSE Pause mode. E_SS_AWB_STATE_MAX Determine the maximum value in the enum list of State Machine. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_FdAwb_Mode Structure¶
Enum Structure ¶
-
Description
The enum structure of Face detection AWB algorithm.
-
Definition
typedef enum
{
E_SS_FDAWB_REFER_TO_SKIN,
E_SS_FDAWB_ASSIGN_SKIN_COLOR
} MI_ISP_AWB_FdAwb_Mode_e;
-
Name
Variable Name Description E_SS_FDAWB_REFER_TO_SKIN This mode will focus on the most likely range of white points to perform white balance based on the analysis results of human face information. E_SS_FDAWB_ASSIGN_SKIN_COLOR This mode will move the falling points of statistical value of human face (before white balance) to the position of falling point of skin color set by the user (after white balance). -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_Fwst_AlgoType Structure¶
Enum Structure ¶
-
Description
The enum structure of FewStatisStrategy algorithm.
-
Definition
typedef enum
{
E_SS_AWB_FWST_KEEP = 0,
E_SS_AWB_FWST_MIX_PREFERGAIN = 1,
E_SS_AWB_FWST_MIX_GRAYWORLD = 2,
} MI_ISP_AWB_Fwst_AlgoType_e;
-
Name
Variable Name Description E_SS_AWB_FWST_KEEP Keep the WB Gain as the last time when there were sufficient statistics. E_SS_AWB_FWST_MIX_PREFERGAIN Use the WB Gain calculated by color temperature setting based on PreferCT. E_SS_AWB_FWST_MIX_GRAYWORLD Use the WB Gain calculated by using GrayWorld algorithm. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_QueryInfo Structure¶
Type Structure¶
-
Description
The type structure to set the current general information about auto white balance.
-
Definition
typedef struct MI_ISP_AWB_QueryInfoType_s
{
MI_ISP_AWB_bool_e bIsStable;
MI_U16 u16Rgain;
MI_U16 u16Grgain;
MI_U16 u16Gbgain;
MI_U16 u16Bgain;
MI_U16 u16ColorTemp;
MI_U8 u8WPInd;
MI_ISP_AWB_bool_e bMultiLSDetected;
MI_U8 u8FirstLSInd;
MI_U8 u8SecondLSInd;
} MI_ISP_AWB_QueryInfoType_t;
-
Name
Variable Name Description bIsStable Get information about whether the current AWB is in the state of convergence (0: AWB has not converged; 1: converged). u16Rgain Get the current R channel gain for auto white balance. u16Grgain Get the current Gr channel gain for auto white balance. u16Gbgain Get the current Gb channel gain for auto white balance. u16Bgain Get the current B channel gain for auto white balance. u16ColorTemp Get the current color temperature value. u8WPInd Get the current index of color temperature range of reference white pixel when WpWeight function is enabled. bMultiLSDetected Check if mixed light is detected when mixed-light color shift calibration function is enabled. To disable, set E_SS_AWB_FALSE = 0. To enable, set E_SS_AWB_TRUE = 1. u8FirstLSInd Get the largest light source index*2 in mixed-light scenarios when AWB mixed-light color shift calibration is enabled. u8SecondLSInd Get the second largest light source index*2 in mixed-light scenarios when AWB mixed-light color shift calibration is enabled. -
Note
- The index values shown by u8FirstLSInd and u8SecondLSInd represent the actual color temperature range index being multiplied by 2. That is, if u8FirstLSInd is 8, the actual color temperature range index is 8/2 = 4 (5000K), and if u8FirstLSInd is 9, the actual color temperature range index is 9/2 = 4.5, where the decimal point .5 means the light source color temperature range falls between indexes 4 (5000K) and 5 (4000K).
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_QueryInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_QueryInfoType_t *data);
MI_ISP_AWB_CtStatistics Structure¶
Type Structure¶
-
Description
The type structure to set the statistical value of AWB calibration.
-
Definition
typedef struct MI_ISP_AWB_CtStatisticsType_s
{
MI_U16 u16Width;
MI_U16 u16Height;
MI_U16 u16StatisX[MI_ISP_AWB_STAT_BLOCK / 2];
MI_U16 u16StatisY[MI_ISP_AWB_STAT_BLOCK / 2];
} MI_ISP_AWB_CtStatisticsType_t;
-
Name
Variable Name Description u16Width The width of effective area. u16Height The height of effective area. u16StatisX[MI_ISP_AWB_STAT_BLOCK / 2] Statistical X of the color temperature range. MI_ISP_AWB_STAT_BLOCK / 2 = 128 * 90 / 2 = 5760. u16StatisY[MI_ISP_AWB_STAT_BLOCK / 2] Statistical Y of the color temperature range. MI_ISP_AWB_STAT_BLOCK / 2 = 128 * 90 / 2 = 5760. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_GetCtStats(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtStatisticsType_t *data);
Individual AWB Hardware Statistic Structure¶
-
Description
Individual AWB Hardware Statistic Structure.
-
Definition
typedef enum
{
MI_U8 uAvgR;
MI_U8 uAvgG;
MI_U8 uAvgB;
} MI_ISP_AWB_AVGS;
-
Name
Variable Name Description uAvgR The average R value of individual statistical value. Parameter range: 0 ~ 255. uAvgG The average G value of individual statistical value. Parameter range: 0 ~ 255. uAvgB The average B value of individual statistical value. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
N/A.
MI_ISP_AWB_Attr Structure¶
Type Structure¶
-
Description
The type structure to set AWB attribute.
-
Definition
typedef struct MI_ISP_AWB_AttrType_s
{
MI_ISP_AWB_SmStateType_e eState;
MI_ISP_AWB_ModeType_e eOpType;
MI_ISP_AWB_MwbAttrParam_t stManualParaAPI;
MI_ISP_AWB_AttrParam_t stAutoParaAPI;
} MI_ISP_AWB_AttrType_t;
-
Name
Variable Name Description eState Set Boolean value for the state of AWB attribute.
Normal: E_SS_AWB_STATE_NORMAL = 0.
Pause: E_SS_AWB_STATE_PAUSE = 1.enOpType Set working mode of AWB attribute.
Auto mode: E_SS_AWB_MODE_AUTO = 0.
Manual mode: E_SS_AWB_MODE_MANUAL = 1.
Manual mode by color temperature: E_SS_AWB_MODE_CTMANUAL = 2.stAutoParaAPI The attribute structure of automatic mode to set AWB attribute. stManualParaAPI The attribute structure of manual mode to set AWB attribute. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrType_t *data);
MI_S32 MI_ISP_AWB_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrType_t *data);
Enum Structure of AWB Working Mode¶
-
Description
The enum structure of AWB working mode.
-
Definition
typedef enum
{
E_SS_AWB_MODE_AUTO,
E_SS_AWB_MODE_MANUAL,
E_SS_AWB_MODE_CTMANUAL,
E_SS_AWB_MODE_MAX
} MI_ISP_AWB_ModeType_e;
-
Name
Variable Name Description E_SS_AWB_MODE_AUTO Auto mode. E_SS_AWB_MODE_MANUAL Manual mode. E_SS_AWB_MODE_CTMANUAL Manual mode by color temperature. By selecting this mode, WB gain will be applied according to the CTMWB setting of color temperature. -
Note
N/A.
-
Related Structure Type and Function
Manual Mode Parameter Structure¶
-
Description
The parameter structure to set manual mode.
-
Definition
typedef struct MI_ISP_AWB_MwbAttrParam_s
{
MI_U16 u16Rgain;
MI_U16 u16Grgain;
MI_U16 u16Gbgain;
MI_U16 u16Bgain;
} MI_ISP_AWB_MwbAttrParam_t;
-
Name
Variable Name Description u16Rgain White balance R channel gain. Parameter range: 0 ~ 8191. u16Grgain White balance Gr channel gain. Parameter range: 0 ~ 8191. u16Gbgain White balance Gb channel gain. Parameter range: 0 ~ 8191. u16Bgain White balance B channel gain. Parameter range: 0 ~ 8191. -
Note
N/A.
-
Related Structure Type and Function
Automatic Mode Parameter Structure¶
-
Description
The parameter structure to set Auto mode.
-
Definition
typedef struct MI_ISP_AWB_AttrParam_s
{
MI_U8 u8Speed;
MI_U8 u8ConvInThd;
MI_U8 u8ConvOutThd;
MI_ISP_AWB_AlgoType_e eAlgType;
MI_ISP_AWB_AdvType_e eAdvType;
MI_U8 u8RGStrength;
MI_U8 u8BGStrength;
MI_ISP_AWB_CtLimitParam_t stCTLimit;
MI_ISP_AWB_CtWeightParam_t stLvWeight[MI_ISP_AWB_LV_CT_TBL_NUM];
MI_ISP_AWB_CtRatioParam_t stPreferRRatio[MI_ISP_AWB_LV_CT_TBL_NUM];
MI_ISP_AWB_CtRatioParam_t stPreferBRatio[MI_ISP_AWB_LV_CT_TBL_NUM];
MI_U16 u16WpWeight[MI_ISP_AWB_CT_TBL_NUM];
MS_U32 u32WeightWin[MI_ISP_AWB_WEIGHT_WIN_NUM];
} MI_ISP_AWB_AttrParam_t;
-
Name
Variable Name Description u8Speed The convergence speed of auto white balance algorithm. The greater the value, the higher the convergence speed. Parameter range: 0 ~ 100. u8ConvInThd Set the threshold value for AWB to converge. The smaller the value, the closer AWB converges to the target WB gain. Parameter range: 0 ~ 255. Setting the value too small is not recommended as it might cause AWB to be constantly unstable. Recommended setting is 32. u8ConvOutThd Set the threshold value for AWB to leave convergence state and re-calculate white balance. The greater the value, the more difficult for AWB to re-calculate after the convergence becomes stable. Parameter range: 0 ~ 255. Value too large is not suggested. Recommended setting is 64. eAlgType Select AWB algorithm type. Four types are available:
1. GrayWorld;
2. Normal;
3. Balance;
4. Focus.
Please refer to MI_ISP_AWB_AlgoType_e for more detail.eAdvType Advance mode selection, there are three modes:
1. Normal
2. Advance
3. Prou8RGStrength The strength of R Gain in auto white balance.
= 0x80: R Gain remains the same.
> 0x80: R Gain becomes larger and reddish.
< 0x80: R Gain becomes smaller.u8BGStrength The strength of B Gain in auto white balance.
= 0x80: B Gain remains the same.
> 0x80: B Gain becomes larger and reddish.
< 0x80: B Gain becomes smaller.stCTLimit Ambient color temperature of white balance algorithm to set the mode of calculation for gain limit and the manual gain value when temperature is out of the color temperature curve range. Adjustment to this parameter is not suggested, as this parameter imposes limitation upon the range of coordinates for the entire color temperature curve. Statistical data out of this range will not be counted in the white balance calculation algorithm. stLvWeight[MI_ISP_AWB_LV_CT_TBL_NUM] Assign weight to each color temperature under the specified ambient brightness. The higher the weight, the closer the target R and B gains lean toward their counterparts of the color temperature. There are 18 sets of setting. Parameter range: 1 ~ 255. stPreferRRatio[MI_ISP_AWB_LV_CT_TBL_NUM] Assign R ratio to each color temperature under the specified ambient brightness to fine-tune the target R gain. There are 18 sets of setting. Parameter range: 1 ~ 255. stPreferBRatio[MI_ISP_AWB_LV_CT_TBL_NUM] Assign B ratio to each color temperature under the specified ambient brightness to fine-tune the target B gain. There are 18 sets of setting. Parameter range: 1 ~ 255. u16WpWeight[MI_ISP_AWB_CT_TBL_NUM] The weight of reference white pixel. The higher the weight of the color temperature, the easier a pixel will be selected as the reference white pixel. There are 10 sets of setting. Parameter range: 1 ~ 400, and the default value is 100. u32WeightWin[MI_ISP_AWB_WEIGHT_WIN_NUM] Divide the screen into 9x9 segments. Each segment can be assigned with different weights, which allow AWB calculation to balance a segment. Parameter range: 0 ~ 16. -
Note
- Suggested adjustment to u8RGStrength and u8BGStrength: You can adjust these two parameters according to the customer's need. For example, if greenish tone is preferred in certain scenes, you can fine-tune u8RGStrength and u8BGStrength at the same time and lower both values to less than 128.
-
Related Structure Type and Function
Parameter Structure¶
-
Description
The parameter structure that defines the range limit of white balance gain.
-
Definition
typedef struct MI_ISP_AWB_CtLimitParam_s
{
MI_U16 u16MaxRgain;
MI_U16 u16MinRgain;
MI_U16 u16MaxBgain;
MI_U16 u16MinBgain;
} MI_ISP_AWB_CtLimitParam_t;
-
Name
Variable Name Description u16MaxRgain Set the maximum R Gain in high color temperature. Parameter range: 256 ~ 4095. u16MinRgain Set the minimum R Gain in low color temperature. Parameter range: 256 ~ 4095. u16MaxBgain Set the maximum B Gain in high color temperature. Parameter range: 256 ~ 4095. u16MinBgain Set the minimum B Gain in low color temperature. Parameter range: 256 ~ 4095. -
Note
N/A.
-
Related Structure Type and Function
Parameter Structure¶
-
Description
The parameter structure to set the weight of each color temperature when target R and B gains are calculated.
-
Definition
typedef struct MI_ISP_AWB_CtWeightParam_s
{
MI_U16 u16Weight[MI_ISP_AWB_CT_TBL_NUM];
} MI_ISP_AWB_CtWeightParam_t;
-
Name
Variable Name Description u16Weight[MI_ISP_AWB_CT_TBL_NUM] The weight of each color temperature when target R and B gains are calculated. The higher the weight, the closer the target R and B gains lean toward their counterparts of the color temperature. MI_ISP_AWB_CT_TBL_NUM = 10. Parameter range: 1 ~ 255, and the default value is 100. -
Note
N/A.
-
Related Structure Type and Function
Parameter Structure¶
-
Description
The parameter structure to set the ratio to multiply the target R and B gains for fine-tuning.
-
Definition
typedef struct MI_ISP_AWB_CtRatioParam_s
{
MI_U16 u16Ratio[MI_ISP_AWB_CT_TBL_NUM];
} MI_ISP_AWB_CtRatioParam_t;
-
Name
Variable Name Description u16Ratio [MI_ISP_AWB_CT_TBL_NUM] Ratio used to multiply the target R and B gains of each ambient color temperature for fine-tuning. MI_ISP_AWB_CT_TBL_NUM = 10. Parameter range: 1 ~ 255, and the default value is 100. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_AttrEx Structure¶
Type Structure¶
-
Description
The type structure to set AWB extended attribute.
-
Definition
typedef struct MI_ISP_AWB_AttrExType_s
{
MI_ISP_AWB_bool_e bExtraLightEn;
MI_ISP_AWB_AttrExtraLightsourceParam_t stLightInfo[MI_ISP_AWB_EX_LIGHT_CNT];
} MI_ISP_AWB_AttrExType_t;
-
Name
Variable Name Description bExtraLightEn Set Boolean value for the function of referring to the extra range of color temperature as defined by user during AWB calculation.
To disable, set E_SS_AWB_FALSE = 0.
To enable, set E_SS_AWB_TRUE = 1.stLightInfo[MI_ISP_AWB_EX_LIGHT_CNT] Information about the extra light source as set by user. MI_ISP_AWB_EX_LIGHT_CNT = 4. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetAttrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrExType_t *data);
MI_S32 MI_ISP_AWB_GetAttrEx(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_AttrExType_t *data);
AWB Extra LightSource Parameter Structure¶
-
Description
The parameter structure to set AWB extra light source.
-
Definition
typedef struct MI_ISP_AWB_AttrExtraLightsourceParam_s
{
MI_U16 u16WhiteRgain;
MI_U16 u16WhiteBgain;
MI_U8 u8AreaSize;
MI_ISP_AWB_bool_e bExclude;
} MI_ISP_AWB_AttrExtraLightsourceParam_t;
-
Name
Variable Name Description u16WhiteRgain The R gain (G * 1024 / R) of the extra light source set by user. This setting will mirror to an independent point of color temperature coordinate without referring to the color temperature. Parameter range: 256 ~ 4095. u16WhiteBgain The B gain (G * 1024 / B) of the extra light source set by user. This setting will mirror to an independent point of color temperature coordinate without referring to the color temperature. Parameter range: 256 ~ 4095. u8AreaSize The range of color temperature coordinate of user-defined extra light source. The greater the value, the broader the range. Parameter range: 1 ~ 32. bExclude Set the Boolean value for the function of excluding / including the extra light source set by user. During white balance algorithm calculation, this function determines whether white pixels will be included in the range of extra light source set by user. To include, set E_SS_AWB_FALSE = 0. To exclude, set E_SS_AWB_TRUE = 1. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_MultiLs Structure¶
Type Structure¶
-
Description
The type structure to set AWB color shift calibration in mixed-light scenarios.
-
Definition
typedef struct MI_ISP_AWB_MultiLsType_s
{
MI_ISP_AWB_bool_e bEnable;
MI_U8 u8Sensitive;
MI_U8 u8CaliStrength;
MI_U16 u16CcmForLow[MI_ISP_AWB_MULTILS_CNT];
MI_U16 u16CcmForHigh[MI_ISP_AWB_MULTILS_CNT];
} MI_ISP_AWB_MultiLsType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of AWB mixed-light color shift calibration.
To disable, set E_SS_AWB_FALSE to 0.
To enable, set E_SS_AWB_TRUE to 1.u8Sensitive The sensitivity of mixed-light judgement. The greater the value, the easier a scene will be judged as a mixed-light scenario. Parameter range: 1 ~ 10, and the default value is 5. u8CaliStrength The strength of color shift calibration for the maximum mixed-light difference in color temperature. The maximum mixed-light difference implies that two light sources happen to fall on StartIdx and EndIdx respectively. The strength actually applied will be adjusted based on the ratio of the color temperature difference between the two light sources to the max. color temperature difference. Parameter range: 0 ~ 100, and the default value is 100. u16CcmForLow[MI_ISP_AWB_MULTILS_CNT] When the scene is judged as mixed-light scenario, and the light source of high color temperature is balanced, this parameter can be used to compensate the CCM of color shift for the light source of low color temperature. Note: u16CcmForLow[3]~[5] (G row) are of no use. Please modify u16CcmForLow[0]~[2] (R row) and u16CcmForLow[6]~[8] (B row) instead. Parameter range: 0 ~ 8191. MI_ISP_AWB_MULTILS_CNT = 9. u16CcmForHigh[MI_ISP_AWB_MULTILS_CNT] When the scene is judged as mixed-light scenario, and the light source of low color temperature is balanced, this parameter can be used to compensate the CCM of color shift for the light source of high color temperature. Note: u16CcmForLow[3]~[5] (G row) are of no use. Please modify u16CcmForLow[0]~[2] (R row) and u16CcmForLow[6]~[8] (B row) instead. Parameter range: 0 ~ 8191. MI_ISP_AWB_MULTILS_CNT = 9. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetMultiLsAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_MultiLsType_t *data);
MI_S32 MI_ISP_AWB_GetMultiLsAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_MultiLsType_t *data);
MI_ISP_AWB_CtCali Structure¶
Type Structure¶
-
Description
The type structure to set AWB calibration.
-
Definition
typedef struct MI_ISP_AWB_CtCaliType_s
{
MI_U16 u16StartIdx;
MI_U16 u16EndIdx;
MI_U16 u16CtParams[MI_ISP_AWB_CT_CALI_CNT];
} MI_ISP_AWB_CtCaliType_t;
-
Name
Variable Name Description u16StartIdx The starting index of bright area. u16EndIdx The ending index of bright area. u16CtParams[MI_ISP_AWB_CT_CALI_CNT] Color temperature calibration parameter. MI_ISP_AWB_CT_CALI_CNT = 40. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtCaliType_t *data);
MI_S32 MI_ISP_AWB_GetCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtCaliType_t *data);
MI_ISP_AWB_CurCtCali Structure¶
Type Structure¶
-
Description
The type structure of AWB color temperature curve range.
-
Definition
typedef struct MI_ISP_AWB_CurCtCaliType_s
{
MI_U16 u16CtParams[MI_ISP_AWB_CT_CALI_CNT];
} MI_ISP_AWB_CurCtCaliType_t;
-
Name
Variable Name Description u16CtParams[MI_ISP_AWB_CT_CALI_CNT] Color temperature curve range. MI_ISP_AWB_CT_CALI_CNT = 40. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_GetCurCtCaliAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CurCtCaliType_t *data);
MI_ISP_AWB_Ctmwb Structure¶
Type Structure¶
-
Description
The type structure of manual white balance color temperature.
-
Definition
typedef struct MI_ISP_AWB_CtmwbParam_s
{
MI_U32 u32CT;
} MI_ISP_AWB_CtmwbParam_t;
-
Name
Variable Name Description u32CT Color temperature setting. Parameter range: 1000 ~ 20000. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetCtMwbAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtmwbParam_t *data);
MI_S32 MI_ISP_AWB_GetCtMwbAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_CtmwbParam_t *data);
MI_ISP_AWB_Stabilizer Structure¶
Type Structure¶
-
Description
The type structure of AWB stabilizer.
-
Definition
typedef struct MI_ISP_AWB_StabilizerType_s
{
MI_ISP_AWB_bool_e bEnable;
MI_U16 u16GlbGainThd;
MI_U16 u16CountThd;
MI_U16 u16ForceTriGainThd;
} MI_ISP_AWB_StabilizerType_t;
-
Name
Variable Name Description bEnable Enable AWB stabilizer. u16GlbGainThd The threshold value of global change in WB gain. When AWB is converged, it will be re-triggered only when two conditions are met: the original requirement, which is set out in the description of ConvOutThd parameter; and that the global change in WB gain exceeds this threshold value. Parameter Range: 0 ~ 512. We recommend that you set this threshold to the same value of, or slightly smaller than, ConvOutThd. Default value is 64. u16CountThd The threshold value of continuous count that determines AWB to be re-triggered. If the value is 2, AWB will be re-triggered only if the two conditions are met three times in a row, otherwise AWB will stay stable. Parameter range: 0 ~ 100. Setting the value too large is not recommended because higher value would delay the response time for AWB to be re-triggered. Default value is 2. u16ForceTriGainThd The threshold value of gain to trigger AWB mandatorily. This parameter aims to prevent the response time of AWB from being delayed by CountThd in the situation where environmental color temperature or light source drastically changes. If the change of gain meets the re-triggering condition, and the amount of change is greater than this threshold, CountThd will be ignored and AWB will be directly triggered. Parameter range: 0 ~ 8191. Default value is 150. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StabilizerType_t *data);
MI_S32 MI_ISP_AWB_GetStabilizer(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StabilizerType_t *data);
MI_ISP_AWB_SpecialCase Structure¶
Type Structure¶
-
Description
The type structure of AWB SpecialCase.
-
Definition
typedef struct MI_ISP_AWB_SpecialCaseType_s
{
MI_U32 u32CaseNum;
MI_ISP_AWB_SpecialCaseParam_t stCase[MI_ISP_AWB_SPECIAL_CASE_NUM];
} MI_ISP_AWB_SpecialCaseType_t;
-
Name
Variable Name Description u32CaseNum The number of case to be used. Parameter range: 0 ~ 4. Setting this parameter to 0 means that this function is disabled. stCase[MI_ISP_AWB_SPECIAL_CASE_NUM] SpecialCase parameters, which are used to define each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetSpecialCase(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseType_t *data);
MI_S32 MI_ISP_AWB_GetSpecialCase(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseType_t *data);
Parameter Structure¶
-
Description
The parameter structure of individual case, which is used to set the SpecialCase parameters for each case.
-
Definition
typedef struct MI_ISP_AWB_SpecialCaseParam_s
{
MI_U8 u8Group1_ZoneNum;
MI_U16 u16Group1_CenterX[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U16 u16Group1_CenterY[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U8 u8Group1_Radius[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U8 u8Group1_CntLutNodeNum;
MI_S32 s32Group1_CntLutX[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_S32 s32Group1_CntLutY[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_U8 u8Group2_ZoneNum;
MI_U16 u16Group2_CenterX[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U16 u16Group2_CenterY[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U8 u8Group2_Radius[MI_ISP_AWB_SPECIAL_ZONE_NUM];
MI_U8 u8Group2_CntLutNodeNum;
MI_S32 s32Group2_CntLutX[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_S32 s32Group2_CntLutY[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_U8 u8BvLutNodeNum;
MI_S32 s32BvLutX[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_S32 s32BvLutY[MI_ISP_AWB_SPECIAL_NODE_NUM];
MI_ISP_AWB_SpecialMode_e eMode;
MI_U16 u16Weight[MI_ISP_AWB_CT_TBL_NUM];
MI_U32 u32PreferCT;
MI_U16 u16PreferRgain;
MI_U16 u16PreferBgain;
} MI_ISP_AWB_SpecialCaseParam_t;
-
Name
Variable Name Description u8Group1_ZoneNum The number of zones to be defined. The algorithm will analyze the percentage of AWB statistics that fall into all the zones to the total number of statistics. Parameter range: 0 ~ 8. By setting it to 0, the condition will be fulfilled unconditionally. u16Group1_CenterX[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the X coordinate of the center of each zone on R/G-B/G planes. Parameter range: 0 ~ 1023. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u16Group1_CenterY[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the Y coordinate of the center of each zone on R/G-B/G planes. Parameter range: 0 ~ 1023. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u8Group1_Radius[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the radius of each zone. Parameter range: 0 ~ 20. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u8Group1_CntLutNodeNum To determine the number of nodes to be used by CntLut. Parameter range: 0 ~ 4. s32Group1_CntLutX[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the value of x for CntLut node. This value represents the percentage of AWB statistics that fall into the zones to the total number of statistics. The algorithm will analyze the percentage of statistics in Group1, query this table, and get Group1.CntRatio, which represents the fulfillment rate of Group1 condition. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. s32Group1_CntLutY[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the value of y for CntLut node. This value represents the ratio. The algorithm will analyze the percentage of statistics in Group1, query this table, and get Group1.CntRatio, which represents the fulfillment rate of Group1 condition. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. u8Group2_ZoneNum The number of zones to be defined. The algorithm will analyze the percentage of AWB statistics that fall into all the zones to the total number of statistics. Parameter range: 0 ~ 8. By setting it to 0, the condition will be fulfilled unconditionally. u16Group2_CenterX[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the X coordinate of the center of each zone on R/G-B/G planes. Parameter range: 0 ~ 1023. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u16Group2_CenterY[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the Y coordinate of the center of each zone on R/G-B/G planes. Parameter range: 0 ~ 1023. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u8Group2_Radius[MI_ISP_AWB_SPECIAL_ZONE_NUM] To determine the radius of each zone. Parameter range: 0 ~ 20. MI_ISP_AWB_SPECIAL_ZONE_NUM = 8. u8Group2_CntLutNodeNum To determine the number of nodes to be used by CntLut. Parameter range: 0 ~ 4. s32Group2_CntLutX[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the value of x for CntLut node. This value represents the percentage of AWB statistics that fall into the zones to the total number of statistics. The algorithm will analyze the percentage of statistics in Group2, query this table, and get Group2.CntRatio, which represents the fulfillment rate of Group2 condition. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. s32Group2_CntLutY[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the value of y for CntLut node. This value represents the ratio. The algorithm will analyze the percentage of statistics in Group2, query this table, and get Group2.CntRatio, which represents the fulfillment rate of Group2 condition. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. u8BvLutNodeNum The number of BvLut node. Parameter range: 0 ~ 4. By setting it to 0, the condition will be fulfilled unconditionally. s32BvLutX[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the X coordinate of BvLut node, which represents BV. Parameter range: -81920 ~ 245760. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. s32BvLutY[MI_ISP_AWB_SPECIAL_NODE_NUM] To determine the Y coordinate of BvLut node, which represents the fulfillment rate. Parameter range: 0 ~ 1024. MI_ISP_AWB_SPECIAL_NODE_NUM = 4. eMode Select the mode of behavior when the condition of a case is met. Parameter range: 0 ~ 2.
0: Weight Ctrl mode;
1: PreferCT mode;
2: PreferGain mode.u16Weight[MI_ISP_AWB_CT_TBL_NUM] Effective when Mode is set to 0. The color temperature range will apply this setting of weight based on CaseRatio. Parameter range: 0 ~ 1024. MI_ISP_AWB_CT_TBL_NUM = 10. u32PreferCT Effective when Mode is set to 1. The original Target WB gain will be blended with the WB gain corresponding to PreferCT based on CaseRatio, becoming the new Target WB gain. Parameter range: 0 ~ 20000. u16PreferRgain Effective when Mode is set to 2. The original Target WB gain will be blended with PreferRgain based on CaseRatio, becoming the new Target WB gain. Parameter range: 0 ~ 8191. u16PreferBgain Effective when Mode is set to 2. The original Target WB gain will be blended with PreferBgain based on CaseRatio, becoming the new Target WB gain. Parameter range: 0 ~ 8191. -
Note
N/A.
-
Related Structure Type and Function
Enum Structure¶
-
Description
The enum structure of SpecialCase behavior modes.
-
Definition
typedef enum
{
E_SS_AWB_SPECIAL_WEIGHTCTRL = 0,
E_SS_AWB_SPECIAL_PREFER_CT = 1,
E_SS_AWB_SPECIAL_PREFER_GAIN = 2
} MI_ISP_AWB_SpecialMode_e;
-
Name
Variable Name Description E_SS_AWB_SPECIAL_WEIGHTCTRL Weight control mode, which can be used to adjust the weight of each color temperature range when a case is fulfilled. E_SS_AWB_SPECIAL_PREFER_CT PreferCT mode, which can be used to adjust the WB gain of a specified color temperature. This WB gain will be blended with the target WB gain when a case is fulfilled. E_SS_AWB_SPECIAL_PREFER_GAIN PreferGain mode, which can be used to adjust a specified WB gain to be blended with the target WB gain when a case is fulfilled. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_SpecialCaseInfo Structure¶
SpecialCase Info Type Structure¶
-
Description
The type structure of AWB SpecialCase Info.
-
Definition
typedef struct MI_ISP_AWB_SpecialCaseInfoType_s
{
MI_U32 u32Group1Cnt[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32Group1CntRatio[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32Group2Cnt[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32Group2CntRatio[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32BvRatio[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U32 u32CaseRatio[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U16 u16CaseWeight[MI_ISP_AWB_SPECIAL_CASE_NUM][MI_ISP_AWB_CT_TBL_NUM];
MI_U16 u16SpecialWeight[MI_ISP_AWB_CT_TBL_NUM];
MI_U16 u16SpecialRgain[MI_ISP_AWB_SPECIAL_CASE_NUM];
MI_U16 u16SpecialBgain[MI_ISP_AWB_SPECIAL_CASE_NUM];
} MI_ISP_AWB_SpecialCaseInfoType_t;
-
Name
Variable Name Description u32Group1Cnt[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the total number of drop points of Group1 statistics in each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32Group1CntRatio[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the ratio of the total number of drop points of Group1 statistics in each case after querying Group1.CntLut. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32Group2Cnt[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the total number of drop points of Group2 statistics in each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32Group2CntRatio[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the ratio of the total number of drop points of Group2 statistics in each case after querying Group2.CntLut. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32BvRatio[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the ratio of each case after querying BvLut according to BV. Parameter range: 0 ~ 1024. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u32CaseRatio[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the ratio of each case after Group1.CntRatio, Group2.CntRatio and BvRatio are integrated into one. Parameter range: 0 ~ 100. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u16CaseWeight[MI_ISP_AWB_SPECIAL_CASE_NUM] [MI_ISP_AWB_CT_TBL_NUM] Show CaseWeight as obtained through CaseRatio in each case. In cases where Mode 0 is not selected, CaseWeight will be 100, which means ineffective. MI_ISP_AWB_SPECIAL_CASE_NUM = 4; MI_ISP_AWB_CT_TBL_NUM = 10. u16SpecialWeight[MI_ISP_AWB_CT_TBL_NUM] Incorporate four sets of CaseWeight into one SpecialWeight. MI_ISP_AWB_CT_TBL_NUM = 10. u16SpecialRgain[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the R gain to be blended with Target WB gain in each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. u16SpecialBgain[MI_ISP_AWB_SPECIAL_CASE_NUM] Show the B gain to be blended with Target WB gain in each case. MI_ISP_AWB_SPECIAL_CASE_NUM = 4. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_QuerySpecialCaseInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SpecialCaseInfoType_t *data);
MI_ISP_AWB_StatisFilter Structure¶
Type Structure¶
-
Description
The type structure of AWB StatisFilter.
-
Definition
typedef struct MI_ISP_AWB_StatisFilterType_s
{
MI_U32 u32NodeNum;
MI_S32 s32LutX_BV[MI_ISP_AWB_STATISFILTER_NODE_NUM];
MI_S32 s32LutY_HighThd[MI_ISP_AWB_STATISFILTER_NODE_NUM];
MI_S32 s32LutY_LowThd[MI_ISP_AWB_STATISFILTER_NODE_NUM];
} MI_ISP_AWB_StatisFilterType_t;
-
Name
Variable Name Description u32NodeNum Set the number of nodes for lookup table. Parameter range: 0 ~ 4. When the value is set to 0, the default range of effective brightness (4 ~ 224) will be applied. s32LutX_BV[MI_ISP_AWB_STATISFILTER_NODE_NUM] Set the X coordinate of nodes in lookup table. This is the value of brightness (BV). Parameter range: -81920 ~ 245760. MI_ISP_AWB_STATISFILTER_NODE_NUM = 4 s32LutY_HighThd[MI_ISP_AWB_STATISFILTER_NODE_NUM] Set the Y coordinate of nodes in lookup table. This is the upper limit of brightness. When any value in the RGB of statistics exceeds this cap, the statistics will be ignored. Parameter range: 0 ~ 255. MI_ISP_AWB_STATISFILTER_NODE_NUM = 4 s32LutY_LowThd[MI_ISP_AWB_STATISFILTER_NODE_NUM] Set another Y coordinate of node in lookup table. This is the lower limit of brightness. When any value in the RGB of statistics falls below this lower limit, the statistics will be ignored. Parameter range: 0 ~ 255. Note: LowThd should be smaller than HighThd. MI_ISP_AWB_STATISFILTER_NODE_NUM = 4 -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetStatisFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StatisFilterType_t *data);
MI_S32 MI_ISP_AWB_GetStatisFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_StatisFilterType_t *data);
MI_ISP_AWB_VerInfo Structure¶
Type Structure¶
-
Description
The type structure of AWB Version Information.
-
Definition
typedef struct MI_ISP_AWB_VerInfoType_s
{
MI_U32 u32ReleaseDate;
MI_U32 u32ReportID;
MI_U8 u8Major;
MI_U8 u8Minor;
MI_U8 u8TestVer;
} MI_ISP_AWB_VerInfoType_t;
-
Name
Variable Name Description u32ReleaseDate Print out the release date of AWB FW update. u32ReportID Print out the report ID of AWB FW. Default: 0. u8Major Print out the major version number of AWB FW. u8Minor Print out the minor version number of AWB FW. u8TestVer Print out the test version number of AWB FW. Default: 0. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_VerInfoType_t *data);
MI_ISP_AWB_FdAwbParam Structure¶
Type Structure ¶
-
Description
The type structure of AWB FdAwbParam.
-
Definition
typedef struct MI_ISP_AWB_FdAwbParam_s
{
MI_ISP_AWB_bool_e bEnable;
MI_ISP_AWB_FdAwb_Mode_e eMode;
MI_U8 u8SkinAreaNum;
MI_U8 u8SkinAreaCntInThd;
MI_U16 u16SkinAreaCntOutThd;
MI_U16 u16SkinAreaCT[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8SkinAreaCenterX[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8SkinAreaCenterY[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8SkinAreaRadius[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8SkinAreaSkipRadius[MI_ISP_FDAWB_SKIN_NUM];
MI_U16 u16SkinUnStbCntThd;
MI_U8 u8RefGrayNum[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8RefGrayCenterX[MI_ISP_FDAWB_SKIN_NUM][MI_ISP_FDAWB_Gray_NUM];
MI_U8 u8RefGrayCenterY[MI_ISP_FDAWB_SKIN_NUM][MI_ISP_FDAWB_Gray_NUM];
MI_U8 u8RefGrayRadius[MI_ISP_FDAWB_SKIN_NUM][MI_ISP_FDAWB_Gray_NUM];
MI_U8 u8AsnSkinX[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8AsnSkinY[MI_ISP_FDAWB_SKIN_NUM];
MI_U8 u8AsnSkinStbLvl;
MI_ISP_AWB_bool_e bFwstWbFromSkin;
MI_U8 u8Period;
MI_U16 u16FdRoiMin;
MI_U8 u8NodeNum;
MI_S32 s32Bv[MI_ISP_FDAWB_NODE_NUM];
MI_S32 s32ConvSpeed[MI_ISP_FDAWB_NODE_NUM];
MI_S32 s32ConvInThd[MI_ISP_FDAWB_NODE_NUM];
MI_S32 s32ConvOutThd[MI_ISP_FDAWB_NODE_NUM];
MI_S32 s32FdLumaDiffThd[MI_ISP_FDAWB_NODE_NUM];
MI_S32 s32FdLumaStbCntThd[MI_ISP_FDAWB_NODE_NUM];
MI_S32 s32FdRoiDiffThd[MI_ISP_FDAWB_NODE_NUM];
MI_S32 s32FdRoiStbCntThd[MI_ISP_FDAWB_NODE_NUM];
} MI_ISP_AWB_FdAwbParam_t;
-
Name
Variable Name Description bEnable Enable FDAWB algorithm. When FDAWB is enabled, we recommended that you use it alongside AWB Blance AlgType to increase stability. eMode Select FDAWB algorithm mode. Currently, two algorithms are provided: 1. Refer To Skin: This mode will focus on the most likely range of white points to perform white balance based on the analysis results of human face information. 2. Assign Skin Color: This mode will forcibly move the falling points of statistical value of human face (before white balance) to the position of falling point of skin color set by the user (after white balance). u8SkinAreaNum The number of skin tone areas of different color temperatures set by the user. Value range: 0 ~ 8. Please note that no matter which mode is selected, this SkinArea setting must be filled in, otherwise FDAWB will not be able to analyze facial information. u8SkinAreaCntInThd The stable threshold value of human face information. This threshold represents the required consecutive number of times for human face information to be valid when a human face appears, so that FDAWB determines the information to be valid and then start taking action. Value range: 0 ~ 255. The larger the value, the more stable FDAWB will be, but larger threshold will delay the start of FDAWB action. The appropriate size should be set according to user needs. u16SkinAreaCntOutThd The stable threshold value of human face information. This threshold represents the required consecutive number of times for human face information to be invalid when a human face disappears, so that FDAWB determines the information to be invalid and then stop taking action. Value range: 0 ~ 65535. The larger the value, the more stable FDAWB will be, but larger threshold will cause FDAWB to stop action later. The appropriate size should be set according to user needs. u16SkinAreaCT[MI_ISP_FDAWB_SKIN_NUM] This value corresponds to the color temperature of each customized skin tone area. The color temperature is only for the user to indicate which color temperature environment the skin color index corresponds to, and has no actual effect. There are no rules in setting. It doesn't have to be from small to large or from large to small. Value range: 0 ~ 20000. MI_ISP_FDAWB_SKIN_NUM = 8. u8SkinAreaCenterX/Y[MI_ISP_FDAWB_SKIN_NUM] This value corresponds to the center coordinates of each customized skin color areas (R/G-B/G plane). Value range: 0 ~ 255. MI_ISP_FDAWB_SKIN_NUM = 8. u8SkinAreaRadius[MI_ISP_FDAWB_SKIN_NUM] This value corresponds to the radius of each customized skin color areas. Value range: 0 ~ 255. MI_ISP_FDAWB_SKIN_NUM = 8. u16SkinUnStbCntThd The threshold value that prevents Skin index from changing back and forth between different values. When switching from the current Skin index to another index, the switch will only be made if the Skin index detected several times in a row is not equal to the current index. Otherwise, the current index will be maintained. Value range: 0 ~ 255. The larger the value, the greater the stability. However, when the ambient color temperature changes, it will take a longer delay to respond. u8RefGrayNum[MI_ISP_FDAWB_SKIN_NUM] How many corresponding grayscale areas need to be used by each skin color index. Value range: 0 ~ 10. Note that this grayscale area is only effective when "Refer To Skin" mode is selected. MI_ISP_FDAWB_SKIN_NUM = 8. u8RefGrayCenterX/Y[MI_ISP_FDAWB_SKIN_NUM][MI_ISP_FDAWB_Gray_NUM] Set the center coordinates of each grayscale area. Fill in the coordinates of the corresponding group number according to GrayNum. Value range: 0 ~ 255. MI_ISP_FDAWB_SKIN_NUM = 8, MI_ISP_FDAWB_Gray_NUM = 10. u8RefGrayRadius[MI_ISP_FDAWB_SKIN_NUM][MI_ISP_FDAWB_Gray_NUM] Set the radius of each grayscale area. Grayscale areas can overlap, so you may create a non-circular area by setting multiple areas. Value range: 0 ~ 255. MI_ISP_FDAWB_SKIN_NUM = 8, MI_ISP_FDAWB_Gray_NUM = 10. u8AsnSkinX/Y[MI_ISP_FDAWB_SKIN_NUM] Set the target coordinates of human face information. Value range: 0 ~ 255. When "Assign Skin Color" mode is selected, the falling points of human face will be forced to move to this target coordinate. It is recommended to confirm the skin color point of color checker patch 2 at different color temperatures to help calibrate this coordinate, and then make fine adjustments according to the actual situation. When selecting "Refer To Skin" mode, if FwstWbFromSkin is checked, "Assign Skin Color" will be used when the statistical value is insufficient, resulting in white balance unable to be calculated. MI_ISP_FDAWB_SKIN_NUM = 8. u8AsnSkinStbLvl Stability control of Assign Skin Color mode. Value range: 0 ~ 15. The smaller the value, the closer the average coordinates of human face will get to AsnSkinX/Y, but FDAWB may become more unstable, and it will be more difficult for white point to be whitened; the larger the value, the farther the average coordinates of human face will get to AsnSkinX/Y, but FDAWB will become more stable, and it will be more certain that white spots can be whitened. We recommend you set the value around 8 ~ 10. bFwstWbFromSkin The switch for using "Assign Skin Color" mode to calculate white balance when the statistical value is insufficient. This mechanism needs to be applied alongside the setting of MI_ISP_AWB_SetFewStatisStrategy. Please refer to the description of this API. u8Period The period for analyzing face information. Value range: 1 ~ 20. If AWB is done every 3 pictures, setting Period to 1 means that face information will be analyzed every 3 pictures, and setting Period to 2 means that face information will be analyzed every 6 pictures. u16FdRoiMin The minimum effective area of face. The resolution is 128x90 based on statistical values. A face area smaller than this value will be determined as no face. Value range: 0 ~ 11520. u8NodeNum The number of nodes to be set for different parameters according to BV. Value range: 1 ~ 4. s32Bv[MI_ISP_FDAWB_NODE_NUM] The BV value corresponding to each node. Value range: -1048576 ~ 1048576. MI_ISP_FDAWB_NODE_NUM = 4. s32ConvSpeed[MI_ISP_FDAWB_NODE_NUM] The setting of convergence speed when FDAWB is operating. Different BVs can have different settings. Value range: 0 ~ 100, default is 5. s32ConvInThd[MI_ISP_FDAWB_NODE_NUM] The setting of convergence interval when FDAWB is operating. Different BVs can have different settings. Value range: 0 ~ 255. s32ConvOutThd[MI_ISP_FDAWB_NODE_NUM] The threshold control for recalculating white balance from the convergence state when FDAWB is operating. Different BVs can have different settings. Value range: 0 ~ 255. s32FdLumaDiffThd[MI_ISP_FDAWB_NODE_NUM] The threshold value of the difference between the current and previous face brightness. This parameter is used to determine whether face brightness is stable. Different BVs can have different settings. Value range: 0 ~ 255. Difference smaller than this value indicates that the face brightness is stable, and the number of consecutive Luma stable times will be accumulated. s32FdLumaStbCntThd[MI_ISP_FDAWB_NODE_NUM] The threshold value of the number of consecutive stable times of face Luma. When the number of consecutive stable times exceeds this value, the FDAWB information will be updated. Different BVs can have different settings. Value range: 0 ~ 255. s32FdRoiDiffThd[MI_ISP_FDAWB_NODE_NUM] The threshold value of the change in ROI coordinates between the current and previous face brightness. This parameter is used to determine whether the face is moving. Different BVs can have different settings. Value range: 0 ~ 255. If the difference is less than this value, it means that face position is stable, and the number of consecutive ROI stable times will be accumulated. s32FdRoiStbCntThd[MI_ISP_FDAWB_NODE_NUM] The threshold value for the number of consecutive stable times of the face ROI. When the number of consecutive stabilization times exceeds this value, the FDAWB information will be updated. Different BVs can have different settings. Value range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetFDAWBParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FdAwbParam_t *data);
MI_S32 MI_ISP_AWB_GetFDAWBParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FdAwbParam_t *data);
MI_ISP_AWB_FdAwbInfoType Structure¶
Type Structure ¶
-
Description
The type structure of AWB FdAwbInfoType.
-
Definition
typedef struct MI_ISP_AWB_FdAwbInfoType_s
{
MI_U8 u8FaceNum;
MI_U8 u8FaceCor[4];
MI_ISP_AWB_bool_e bEffective;
MI_U32 u32EffectiveCnt;
MI_U32 u32FaceAvgX;
MI_U32 u32FaceAvgY;
MI_U16 u16FaceSkinInd;
MI_U32 u32FaceTarRgain;
MI_U32 u32FaceTarBgain;
} MI_ISP_AWB_FdAwbInfoType_t;
-
Name
Variable Name Description u8FaceNum The number of faces obtained through human face detection. This function currently supports only one face. If this value is 0, it means that the face detection function is not supported or the face detection function is supported but no face is detected. u8FaceCor[4] The coordinates of human face on the 128x90 statistical values of AWB. The four values are - in order - the X coordinate of the starting point of the face frame, the Y coordinate of the starting point, the X coordinate of the end point, and the Y coordinate of the end point. bEffective Indicates whether FDAWB is currently effective. u32EffectiveCnt Shows how many times in a row that human face information is effective. The maximum number is SkinAreaCntThd+1. u32FaceAvgX/Y Coordinates of the falling points of human face (R/G-B/G plane) as analyzed based on human face information. u16FaceSkinInd User-defined skin color index as analyzed based on human face information. u32FaceTarR/Bgain The target WB gain obtained based on human face information and AssignSkinX/Y. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_GetFDAWBInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FdAwbInfoType_t *data);
MI_ISP_AWB_FwstStrategyParam Structure¶
Type Structure ¶
-
Description
The type structure of AWB FwstStrategyParam.
-
Definition
typedef struct MI_ISP_AWB_FwstStrategyParam_s
{
MI_ISP_AWB_Fwst_AlgoType_e eAlgType;
MI_U32 u32CntThd;
MI_U32 u32SmoothWidth;
MI_U32 u32PreferCT;
} MI_ISP_AWB_FwstStrategyParam_t;
-
Name
Variable Name Description eAlgType Select algorithm type to be used when statistic value is not sufficient. There are Keep, MixPreferGain, and MixGrayWorld to be chosen from. u32CntThd The threshold value for the minimum number of statistic value to be effective. If the number of statistic value is smaller than this value, AWB will be unable to calculate. At this point, the WB gain to be used will be different based on the choice of AlgType. Parameter value: 0 ~ 5000. "Keep": Maintain the WB gain as acquired when there was enough statistic value last time. "MixPreferGain": Use the WB gain as calculated based on color temperature set by PreferCT. "MixGrayWorld": Use the WB gain as calculated based on GrayWorld algorithm. u32SmoothWidth If MixPreferGain or MixGrayWorld algorithm is selected, or if FwstWbFromSkin in FDAWB is enabled and effective, and if the statistic values fall between CntThd and CntThd + SmoothWidth, different WB gain will be taken based on the selected AlgoType to be blended with the target WB gain calculated by AWB. Note: if FwstWbFromSkin is enabled and effective, it will be of top priority. Value range: 0 ~ 5000. u32PreferCT It will be used when MixPreferGain is selected for eAlgType. User can determine the WB gain of which color temperature should be used when the statistical value is insufficient. Value range: 0 ~ 20000. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetFewStatisStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FwstStrategyParam_t *data);
MI_S32 MI_ISP_AWB_GetFewStatisStrategy(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_FwstStrategyParam_t *data);
MI_ISP_AWB_RunPeriodParam Structure¶
Type Structure ¶
-
Description
The type structure of AWB RunPeriodParam.
-
Definition
typedef struct MI_ISP_AWB_RunPeriodParam_s
{
MI_U8 u8Period;
} MI_ISP_AWB_RunPeriodParam_t;
-
Name
Variable Name Description u8Period Set how many frames AWB will be run once. Parameter range: 1 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetRunPeriod(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_RunPeriodParam_t *data);
MI_S32 MI_ISP_AWB_GetRunPeriod(MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_RunPeriodParam_t *data);
MI_ISP_AWB_SceneInd Structure¶
Type Structure¶
-
Description
The type structure to set AWB SceneInd.
-
Definition
typedef struct MI_ISP_AWB_SceneIndType_s {
MI_U16 u16Flag[MI_ISP_AWB_SCENE_NUM];
} MI_ISP_AWB_SceneIndType_t;
-
Name
Variable Name Description u16Flag[MI_ISP_AWB_SCENE_NUM] Flag of AWB scene mode. MI_ISP_AWB_SCENE_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetSceneInd (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneIndType_t *data);
MI_S32 MI_ISP_AWB_GetSceneInd (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneIndType_t *data);
MI_ISP_AWB_SceneAdj Structure¶
Type Structure¶
-
Description
The type structure to set AWB SceneAdj.
-
Definition
typedef struct MI_ISP_AWB_SceneAdjType_s {
MI_ISP_AWB_bool_e bEnable;
MI_U16 u16ConvSpeed;
MI_U16 u16AdjItem[MI_ISP_AWB_SCENE_NUM][MI_ISP_AWB_SCENE_ADJ_NUM];
MI_U16 u16Level[MI_ISP_AWB_SCENE_NUM][MI_ISP_AWB_SCENE_ADJ_NUM];
} MI_ISP_AWB_SceneAdjType_t;
-
Name
Variable Name Description bEnable Set Boolean value for the function of AWB SceneAdj.
To disable, set E_SS_IQ_FALSE to 0.
To enable, set E_SS_IQ_TRUE to 1.u16ConvSpeed Adjust the convergence speed of the AWB adjustment item from the current level to the target level. Parameter range: 0 ~ 100. u16AdjItem[MI_ISP_AWB_SCENE_NUM][MI_ISP_AWB_SCENE_ADJ_NUM] The AWB adjustment supports the selection of 11 parameters. The following table shows the parameters corresponding to each index value. Horizontal axis parameters indicates the AWB adjustment options for each item, supporting up to 8 AWB items. Parameter range: 0 ~ 10. Vertical axis parameter indicates scene detection mode. Currently, three scene modes are supported: Back light, Front light, and Mixer light. Up to 16 scene modes are supported. MI_ISP_AWB_SCENE_NUM = 16. u16Level[MI_ISP_AWB_SCENE_NUM][MI_ISP_AWB_SCENE_ADJ_NUM] Set the adjustment level of the corresponding parameter. The level of parameters not selected by AdjItem will be 100 (Level value 100 means no adjustment). Parameter range: 0 ~ 200. MI_ISP_AWB_SCENE_ADJ_NUM = 8. MI_ISP_AWB_SCENE_NUM = 16. Index Parameter Description 0 ByPass Bypass AWB parameters adjustment. 1 20000K Weight Adjust the weight for the area in the color temperature of 20000K. 2 15000K Weight Adjust the weight for the area in the color temperature of 15000K. 3 10000K Weight Adjust the weight for the area in the color temperature of 10000K. 4 6500K Weight Adjust the weight for the area in the color temperature of 6500K. 5 5000K Weight Adjust the weight for the area in the color temperature of 5000K. 6 4000K Weight Adjust the weight for the area in the color temperature of 4000K. 7 3000K Weight Adjust the weight for the area in the color temperature of 3000K. 8 2300K Weight Adjust the weight for the area in the color temperature of 2300K. 9 1500K Weight Adjust the weight for the area in the color temperature of 1500K. 10 1000K Weight Adjust the weight for the area in the color temperature of 1000K. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetSceneAdj (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneAdjType_t *data);
MI_S32 MI_ISP_AWB_GetSceneAdj (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneAdjType_t *data);
MI_ISP_AWB_SceneCurLevel Structure¶
Type Structure¶
-
Description
The type structure to set AWB SceneCurLevel.
-
Definition
typedef struct MI_ISP_AWB_SceneCurLevelType_s {
MI_U16 u16Level[MI_ISP_AWB_SCENE_PARAM_NUM];
} MI_ISP_AWB_SceneCurLevelType_t;
-
Name
Variable Name Description u16Level[MI_ISP_AWB_SCENE_PARAM_NUM] Shows the current level of all AWB parameters, 100 means no adjustment. Parameter range: 0 ~ 200. MI_ISP_AWB_SCENE_PARAM_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_QuerySceneCurLevelInfo (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_SceneCurLevelType_t *data);
MI_ISP_AWB_IncludeAreaType Structure¶
Type Structure¶
-
Description
The type structure of AWB IncludeAreaType.
-
Definition
typedef struct MI_ISP_AWB_IncludeAreaType_s
{
MI_ISP_AWB_bool_e bEnable;
MI_ISP_AWB_IncludeAreaParam_t stArea[MI_ISP_AWB_USERDEFAREA_NUM];
} MI_ISP_AWB_IncludeAreaType_t;
-
Name
Variable Name Description bEnable The switch of IncludeArea. stArea[MI_ISP_AWB_USERDEFAREA_NUM] The parameters of each Include-block. MI_ISP_AWB_USERDEFAREA_NUM = 8. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetIncludeArea (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_IncludeAreaType_t *data);
MI_S32 MI_ISP_AWB_GetIncludeArea (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_IncludeAreaType_t *data);
Parameter Structure¶
-
Description
The parameter structure of individual Include-block, which is used to set the parameters for each Include-block.
-
Definition
typedef struct MI_ISP_AWB_IncludeAreaParam_s
{
MI_ISP_AWB_bool_e bAreaEn;
MI_U8 u8CenterX;
MI_U8 u8CenterY;
MI_U8 u8HalfWidth;
MI_U8 u8HalfHeight;
MI_U32 u32NodeNum;
MI_S32 s32LutX_BV[MI_ISP_AWB_USERDEFAREA_TBL_NUM];
MI_S32 s32LutY_Weight[MI_ISP_AWB_USERDEFAREA_TBL_NUM];
} MI_ISP_AWB_IncludeAreaParam_t;
-
Name
Variable Name Description bAreaEn The switch of the Include-block. u8CenterX The center point x coordinates of the Include-block. Parameter range: 1 ~ 254. u8CenterY The center point y coordinates of the Include-block. Parameter range: 1 ~ 254. u8HalfWidth The half-width of the Include-block. Parameter range: 1 ~ 50. Setting half-width parameter to 10 indicates the width of this Include-block will be extended by 10 from the center point in both directions. u8HalfHeight The half-height of the Include-block. Parameter range: 1 ~ 50. Setting half-height parameter to 10 indicates the height of this Include-block will be extended by 10 from the center point in both directions. u32NodeNum The number of nodes used by WeightByBv table of corresponding Include-block. Parameter range: 1 ~ 16. s32LutX_BV[MI_ISP_AWB_USERDEFAREA_TBL_NUM] The BV value of each node of corresponding Include-block. Parameter range: -81920 ~ 245760. MI_ISP_AWB_USERDEFAREA_TBL_NUM = 16. s32LutY_Weight[MI_ISP_AWB_USERDEFAREA_TBL_NUM] The Weight of each node of corresponding Include-block. Parameter range: 0 ~ 255. MI_ISP_AWB_USERDEFAREA_TBL_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_ExcludeAreaType Structure¶
Type Structure¶
-
Description
The type structure of AWB ExcludeAreaType.
-
Definition
typedef struct MI_ISP_AWB_ExcludeAreaType_s
{
MI_ISP_AWB_bool_e bEnable;
MI_ISP_AWB_ExcludeAreaParam_t stArea[MI_ISP_AWB_USERDEFAREA_NUM];
MI_U32 u32NodeNum;
MI_S32 s32LutX_BV[MI_ISP_AWB_USERDEFAREA_TBL_NUM];
MI_S32 s32LutY_Weight[MI_ISP_AWB_USERDEFAREA_TBL_NUM];
} MI_ISP_AWB_ExcludeAreaType_t;
-
Name
Variable Name Description bEnable The switch of ExcludeArea. stArea[MI_ISP_AWB_USERDEFAREA_NUM] The parameters of each Exclude-block. MI_ISP_AWB_USERDEFAREA_NUM = 8. u32NodeNum The number of nodes used by WeightByBv table, all Exclude-blocks share the same setting. Parameter range: 1 ~ 16. s32LutX_BV[MI_ISP_AWB_USERDEFAREA_TBL_NUM] The BV value of each node, all Exclude-blocks share the same setting. Parameter range: -81920 ~ 245760. MI_ISP_AWB_USERDEFAREA_TBL_NUM = 16. s32LutY_Weight[MI_ISP_AWB_USERDEFAREA_TBL_NUM] The Weight of each node, all Exclude-blocks share the same setting. Parameter range: 0 ~ 255. MI_ISP_AWB_USERDEFAREA_TBL_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_SetExcludeArea (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_ExcludeAreaType_t *data);
MI_S32 MI_ISP_AWB_GetExcludeArea (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_ExcludeAreaType_t *data);
Parameter Structure¶
-
Description
The parameter structure of individual Exclude-block, which is used to set the parameters for each Exclude-block.
-
Definition
typedef struct MI_ISP_AWB_ExcludeAreaParam_s
{
MI_ISP_AWB_bool_e bAreaEn;
MI_U8 u8CenterX;
MI_U8 u8CenterY;
MI_U8 u8HalfWidth;
MI_U8 u8HalfHeight;
MI_S32 s32BvThdLow;
MI_S32 s32BvThdHigh;
MI_U16 u16CountThd;
} MI_ISP_AWB_ExcludeAreaParam_t;
-
Name
Variable Name Description bAreaEn The switch of the Exclude-block. u8CenterX The center point x coordinates of the Exclude-block. Parameter range: 1 ~ 254. u8CenterY The center point y coordinates of the Exclude-block. Parameter range: 1 ~ 254. u8HalfWidth The half-width of the Exclude-block. Parameter range: 1 ~ 50. Setting half-width parameter to 10 indicates the width of this Exclude-block will be extended by 10 from the center point in both directions. u8HalfHeight The half-height of the Exclude-block. Parameter range: 1 ~ 50. Setting half-height parameter to 10 indicates the height of this Exclude-block will be extended by 10 from the center point in both directions. s32BvThdLow The effective BV range of each Exclude-block is defined by ThdLow and BvThdHigh. Parameter range: -81920 ~ 245760. s32BvThdHigh The effective BV range of each Exclude-block is defined by ThdLow and BvThdHigh. Parameter range: -81920 ~ 245760. u16CountThd When the Exclude-block is non-effective, if current BV is in the effecive BV range continuously N times, and N >= CountThd, this Exclude-block will become effective; When the Exclude-block is effective, if current BV is out of the effecive BV range continuously N times, and N >= CountThd, this Exclude-block will become non-effective. Parameter range: 0 ~ 100. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AWB_ProAttrInfoType Structure¶
Type Structure¶
-
Description
The structure of the information of IncludeArea and ExcludeArea.
-
Definition
typedef struct MI_ISP_AWB_ProAttrInfoType_s
{
MI_U32 u32IncludeCnt[MI_ISP_AWB_CT_USER_PRO_NUM];
MI_U32 u32ExcludeCnt[MI_ISP_AWB_CT_TBL_NUM];
MI_U32 u32ExcludeAllCnt[MI_ISP_AWB_CT_TBL_NUM];
MI_U32 u32IncludeRgain;
MI_U32 u32IncludeBgain;
MI_U32 u32ExcludeRgain;
MI_U32 u32ExcludeBgain;
MI_U32 u32ExcludeAllRgain;
MI_U32 u32ExcludeAllBgain;
MI_U8 u8IncludeFirstLSInd;
MI_U8 u8IncludeBvRatio;
MI_U8 u8ExcludeBvRatio;
} MI_ISP_AWB_ProAttrInfoType_t;
-
Name
Variable Name Description u32IncludeCnt[MI_ISP_AWB_CT_USER_PRO_NUM] The number of statistics located in each Include-block. MI_ISP_AWB_CT_USER_PRO_NUM = 8. u32ExcludeCnt[MI_ISP_AWB_CT_TBL_NUM] The number of statistics located in each CT-block, not including the excluded statistics. MI_ISP_AWB_CT_TBL_NUM = 16. u32ExcludeAllCnt[MI_ISP_AWB_CT_TBL_NUM] The number of statistics located in each CT-block, including the excluded statistics. MI_ISP_AWB_CT_TBL_NUM = 16. u32IncludeRgain The Rgain calculated from the Include-block which has the most counts. u32IncludeBgain The Bgain calculated from the Include-block which has the most counts. u32ExcludeRgain The Rgain calculated from the statistics which are not excluded. u32ExcludeBgain The Bgain calculated from the statistics which are not excluded. u32ExcludeAllRgain The Rgain calculated from all statistics. u32ExcludeAllBgain The Bgain calculated from all statistics. u8IncludeFirstLSInd The index of Include-block with most counts. u8IncludeBvRatio The weight gotten from WBAttrProInclude under current BV. u8ExcludeBvRatio The weight gotten from WBAttrProExclude under current BV. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AWB_QueryProAttrInfo (MI_U32 DevId, MI_U32 Channel, MI_ISP_AWB_ProAttrInfoType *data);
MI_ISP_AF_bool Structure¶
Enum Structure¶
-
Description
The enum structure of Boolean value.
-
Definition
typedef enum
{
E_SS_AF_FALSE = 0,
E_SS_AF_TRUE = !E_SS_AF_FALSE,
E_SS_AF_BOOL_MAX
} MI_ISP_AF_bool_e;
-
Name
Variable Name Description E_SS_AF_FALSE Boolean value = 0. E_SS_AF_TRUE Boolean value = 1. E_SS_AF_BOOL_MAX Determine the maximum value in the enum list of Boolean value. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_OpType Structure¶
Enum Structure¶
-
Description
The enum structure of working mode.
-
Definition
typedef enum
{
E_SS_AF_OP_TYP_AUTO = 0,
E_SS_AF_OP_TYP_MANUAL = ! E_SS_AF_OP_TYP_AUTO,
E_SS_AF_OP_TYP_MODE_MAX
} MI_ISP_AF_OpType_e;
-
Name
Variable Name Description E_SS_AF_OP_TYP_AUTO Auto working mode. E_SS_AF_OP_TYP_MANUAL Manual working mode. E_SS_AF_OP_TYP_MODE_MAX Determine the maximum value in the enum list of working mode. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_SmStateType Structure¶
Enum Structure¶
-
Description
The enum structure of State Machine.
-
Definition
typedef enum
{
E_SS_AF_STATE_NORMAL = 0,
E_SS_AF_STATE_PAUSE = 1,
E_SS_AF_STATE_MAX
} MI_ISP_AF_SmStateType_e;
-
Name
Variable Name Description E_SS_AF_STATE_NORMAL Normal mode. E_SS_AF_STATE_PAUSE Pause mode. E_SS_AF_STATE_MAX Determine the maximum value in the enum list of State Machine. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_StartVCMPosModeType Structure¶
Enum Structure¶
-
Description
The enum structure of the AF power-on position.
-
Definition
typedef enum
{
E_SS_AF_POS_MIN = 0,
E_SS_AF_POS_MAX = 1,
E_SS_AF_POS_CUSTOMIZE = 2
} MI_ISP_AF_StartVCMPosModeType_e;
-
Name
Variable Name Description E_SS_AF_POS_MIN Zoom to telephoto. E_SS_AF_POS_MAX Zoom to wide-angle. E_SS_AF_POS_CUSTOMIZE Move to the designated position. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_QueryInfo Structure¶
Type Structure¶
-
Description
The type structure to query current AF information.
-
Definition
typedef struct MI_ISP_AF_QueryInfoType_s
{
MI_ISP_AF_bool_e bIsStable;
MI_U16 u16CurMotorPos;
} MI_ISP_AF_QueryInfoType_t;
-
Name
Variable Name Description bIsStable Get information about whether the current AF is converged. u16CurMotorPos Get the current position of motor. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_QueryInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_QueryInfoType_t *data);
MI_ISP_AF_Adjust Structure¶
Type Structure¶
-
Description
Adjust AF parameters.
-
Definition
typedef struct MI_ISP_AF_AdjustType_s
{
MI_U16 u16AFTable[5];
MI_U16 u16SearchMotorStep_ADJ[5];
MI_U16 u16FocusAfAccCntTh_ADJ[5];
MI_U16 u16FocusAfAccDiffTh_ADJ[5];
MI_U8 u8CheckMotionCnt;
MI_U8 u8MotionAeAccDiffTh;
MI_U8 u8MotionAeAccCntTh;
MI_U8 u8MotionAfAccDiffTh;
MI_U8 u8MotionAfAccCntTh;
MI_U8 u8TriggerWinWgt[256];
MI_U8 u8UnStableCntTh;
MI_U8 u8AEStableCntTh;
MI_U8 u8AfAccDelay;
} MI_ISP_AF_AdjustType_t;
-
Name
Variable Name Description u16AFTable[5] Record the position of VCM focus. u16SearchMotorStep_ADJ[5] Adjust the speed of AFContinuous_SearchStart:MotorStep according to AFTable (Suggestion: adjustment should be made based on distance from far to close, speed from slow to fast). u16FocusAfAccCntTh_ADJ[5] Adjust AFContinuous_SceneChange:FocusAfAccCntTh according to AFTable (Suggestion: adjustment should be made based on distance from far to close, and the conditions should be gradually loosened). u16FocusAfAccDiffTh_ADJ[5] Adjust AFContinuous_SceneChange based on the AFTable: FocusAfAccDiffTh (Recommendation: from far to near, conditions gradually relaxed). u8CheckMotionCnt The number of frames between each checking of the conditions that trigger AF. u8MotionAeAccDiffTh The threshold value of the proportion of difference in AE statistics (Luma). u8MotionAeAccCntTh The threshold value of the proportion of the total number of windows in accordance with AE statistics (Luma). u8MotionAfAccDiffTh The threshold value of the proportion of difference in AF statistics (PreAccSel). u8MotionAfAccCntTh The threshold value of the proportion of the total number of windows in accordance with AF statistics (PreAccSel). u8TriggerWinWgt[256] The weighting table of the conditions that trigger AF. u8UnStableCntTh The number of unstable frames that will pass unchecked. u8AEStableCntTh The number of frame with stable AE to be checked consecutively before AF is triggered. u8AfAccDelay Delay the statistics to become effective. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetAdjust(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustType_t *data);
MI_S32 MI_ISP_AF_GetAdjust(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustType_t *data);
MI_ISP_AF_AdjustII Structure¶
Type Structure¶
-
Description
Adjust AF parameters.
-
Definition
typedef struct MI_ISP_AF_AdjustIIType_s
{
MI_U16 u16VariationTh;
MI_U16 u16FocusAfAccCntTh_ByGain[16];
MI_U16 u16FocusAfAccDiffTh_ByGain[16];
MI_U8 u8DetectFlatTh;
MI_U8 u8FlatStep;
MI_U8 u8AddStep;
MI_U8 u8DecStep;
MI_U8 u8LocalMotionAfTh;
MI_U8 u8LocalMotionAeTh;
MI_U8 u8LocalBlurDetectAfTh;
MI_U8 u8LocalBlurDetectAeTh;
MI_U8 u8AvoidAccJumpTh;
MI_U8 u8AvoidFlatTh;
} MI_ISP_AF_AdjustIIType_t;
-
Name
Variable Name Description u16VariationTh The threshold value for flat area determination. The greater the value, the more likely an area will be determined as flat. u16FocusAfAccCntTh_ByGain[16] Adjust FocusAfAccCntTh based on Total Gain. The larger the value, the more conditions to be included. u16FocusAfAccDiffTh_ByGain[16] Adjust FocusAfAccDiffTh based on Total Gain. The larger the value, the more conditions to be included. u8DetectFlatTh The threshold value for flat area detection. The greater the value, the more likely flat area will be detected. u8FlatStep The moving step in flat area. u8AddStep To increase the distance once by the dynamical change of step. u8DecStep To decrease the distance once by the dynamical change of step. u8LocalMotionAfTh The threshold value for AF statistics to detect motion when FDAF is not enabled. The smaller the value, the more likely motion will be detected. u8LocalMotionAeTh The threshold value for AE statistics to detect motion when FDAF is not enabled. The smaller the value, the more likely motion will be detected. u8LocalBlurDetectAfTh The threshold value for AF statistics to determine whether AF should be triggered. The smaller the value, the more likely AF will be triggered. (This parameter will not be effective when FDAF is enabled and human face is detected.) u8LocalBlurDetectAeTh The threshold value for AE statistics to determine whether AF should be triggered. The smaller the value, the more likely AF will be triggered. (This parameter will not be effective when FDAF is enabled and human face is detected.) u8AvoidAccJumpTh The threshold value to prevent statistics from fluctuating and interfering with the search of focal point. The larger the value, the greater the effect. u8AvoidFlatTh The threshold value to prevent the miscalculation of flat area. The smaller the value, the greater the effect. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetAdjustII(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustIIType_t *data);
MI_S32 MI_ISP_AF_GetAdjustII(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustIIType_t *data);
MI_ISP_AF_AdjustIII Structure¶
Type Structure¶
-
Description
Adjust AF parameters.
-
Definition
typedef struct MI_ISP_AF_AdjustIIIType_s
{
MI_ISP_AF_AccSelType_e eFDAccSel;
MI_ISP_AF_AccSelType_e eNoFDAccSel;
MI_ISP_AF_AccSelType_e eSearchLowLuxAccSel;
MI_U16 u16BlendLowLuxFilterTh;
MI_U16 u16ProtectTh_Low;
MI_U16 u16ProtectTh_High;
MI_U16 u16StableAWBTh;
MI_U8 u8CompensationRatio;
MI_U8 u8SearchParamScaleUp;
MI_U8 u8LocalBlurDetectAfThUp;
MI_U8 u8LocalStableAfTh;
MI_U8 u8LocalStableAeTh;
} MI_ISP_AF_AdjustIIIType_t;
-
Name
Variable Name Description eFDAccSel When FDAF is enabled and human face is detected, select the type of statistics for the search of focus. eNoFDAccSel When FDAF is not enabled, or enabled but human face is not recognized, select the type of statistics for the search of focus. eSearchLowLuxAccSel Select the type of statistics for the search of focus in low luminance. u16BlendLowLuxFilterTh Select the statistical value that determines from how much SensorGain to start blending with low luminance. u16ProtectTh_Low Set a protective range to prevent AF from being triggered by LocalBlurDetectAfTh. u16ProtectTh_High Set a protective range to prevent AF from being triggered by LocalBlurDetectAfThUp. u16StableAWBTh The threshold value to determine whether environment is stable based on AWB statistical value. The larger the value, the easier environment will be judged as stable. u8CompensationRatio When FDAF is enabled, this parameter can be used to compensate the difference in statistical values of human faces located in center of the screen and sides of the screen. u8SearchParamScaleUp Scale up the condition to determine focus in low luminance. u8LocalBlurDetectAfThUp The AF statistical value to determine whether Af should be triggered. The smaller the value is, the easier AF will be triggered (When FDAF is enabled and human faces are detected, this item will not be taken as reference). u8LocalStableAfTh The threshold value to determine whether environment is stable based on AF statistical value. The larger the value, the easier environment will be judged as stable. u8LocalStableAeTh The threshold value to determine whether environment is stable based on AE statistical value. The larger the value, the easier environment will be judged as stable. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetAdjustIII(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustIIIType_t *data);
MI_S32 MI_ISP_AF_GetAdjustIII(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AdjustIIIType_t *data);
MI_ISP_AF_BackUpPosition Structure¶
Type Structure¶
-
Description
When FDAF is enabled and a human face is detected, and the scene changes from no human face to human face appearance, VCM will first move to the position where human face was in focus last time.
-
Definition
typedef struct MI_ISP_AF_BackUpPositionType_s
{
MI_ISP_AF_bool_e bEnable;
MI_U8 u8Step;
} MI_ISP_AF_BackUpPositionType_t;
-
Name
Variable Name Description bEnable When FDAF is enabled and a human face is detected, and the scene changes from no human face to human face appearance, VCM will first move to the position where human face was in focus last time. u8Step Set step size for VCM to move back to the position where human face was in focus last time. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetBackUpPosition(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_BackUpPositionType_t *data);
MI_S32 MI_ISP_AF_GetBackUpPosition(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_BackUpPositionType_t *data);
MI_ISP_AF_Offset Structure¶
Type Structure¶
-
Description
Enable an offset of focus after AF was switched on and found the focus.
-
Definition
typedef struct MI_ISP_AF_OffsetType_s
{
MI_ISP_AF_bool_e bEnable;
MI_S16 s16Offset;
} MI_ISP_AF_OffsetType_t;
-
Name
Variable Name Description bEnable Enable an offset of focus after AF was switched on and found the focus. s16Offset The amount of offset set against the focus -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetOffset(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OffsetType_t *data);
MI_S32 MI_ISP_AF_GetOffset(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OffsetType_t *data);
MI_ISP_AF_FDAF Structure¶
Type Structure¶
-
Description
Adjust FDAF parameters.
-
Definition
typedef struct MI_ISP_AF_FDAFType_s
{
MI_ISP_AF_bool_e bEnable;
MI_U16 u16LegacyAF[4];
MI_U16 u16FDStableArea[4];
MI_U8 u8FDSensitivity;
MI_U8 u8FDYSensitivity;
MI_U8 u8FDReTriggerSensitivity;
MI_U8 u8FDStableCntTh;
MI_U8 u8FDAreaStableTh;
MI_U8 u8FDAccStableTh;
MI_U8 u8FDYStableTh;
MI_U8 u8FDCoorXInStableTh;
MI_U8 u8FDCoorYInStableTh;
MI_U8 u8FDCoorXOutStableTh;
MI_U8 u8FDCoorYOutStableTh;
MI_U8 u8PreFDAccStableTh;
MI_U8 u8PreFDMotionStableTh;
MI_U8 u8PreFDYStableTh;
MI_U8 u8PreFDAreaDetectMotion;
MI_U8 u8PreFDCoorDetectMotion;
} MI_ISP_AF_FDAFType_t;
-
Name
Variable Name Description bEnable The switch to enable FDAF. u16LegacyAF[4] Central focus position when no face is detected. u16FDStableArea[4] Set the stable range of the FD frame. u8FDSensitivity Set the FDAF sensitivity based on the face size. The larger the value, the greater sensitivity. u8FDYSensitivity Set the FDAF sensitivity based on the face brightness. The smaller the value, the greater sensitivity.is. u8FDReTriggerSensitivity Set the sensitivity of re-focusing. The smaller the value, the more likely re-focusing will be triggered. u8FDStableCntTh The time waiting for FD frame to become stable. The larger the value, the longer time. u8FDAreaStableTh The threshold value to determine whether the area of human face frame is stable. The larger the value, the easier the area will be determined as stable. u8FDAccStableTh The threshold value to determine whether the statistics of human face frame has become stable. The larger the value, the easier the statistics will be determined as stable. u8FDYStableTh The threshold value to determine whether the brightness of human face frame has become stable. The larger the value, the easier the brightness will be determined as stable. u8FDCoorXInStableTh The threshold value to determine whether FD frame has become stable in stable range. The larger the value, the easier FD frame will be determined as stable. u8FDCoorYInStableTh The threshold value to determine whether FD frame has become stable in stable range. The larger the value, the easier FD frame will be determined as stable. u8FDCoorXOutStableTh The threshold value to determine whether FD frame has become stable in unstable range. The larger the value, the easier FD frame will be determined as stable. u8FDCoorYOutStableTh The threshold value to determine whether FD frame has become stable in instable range. The larger the value, the easier FD frame will be determined as stable. u8PreFDAccStableTh The threshold value to determine whether re-focusing is needed when AF is working. The larger the value, the more likely re-focusing will be triggered. u8PreFDMotionStableTh The threshold value to determine whether re-focusing is needed when AF is working. The larger the value, the more likely re-focusing will be triggered. u8PreFDYStableTh The threshold value to determine whether re-focusing is needed when AF is working. The smaller the value, the more likely re-focusing will be triggered. u8PreFDAreaDetectMotion The threshold value to determine whether re-focusing is needed when AF is working. The smaller the value, the more likely re-focusing will be triggered. u8PreFDCoorDetectMotion The threshold value to determine whether re-focusing is needed when AF is working. The smaller the value, the more likely re-focusing will be triggered. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetFDAF(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_FDAFType_t *data);
MI_S32 MI_ISP_AF_GetFDAF(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_FDAFType_t *data);
MI_ISP_AF_DetectFlatZone Structure¶
Type Structure¶
-
Description
Detect flat zones.
-
Definition
typedef struct MI_ISP_AF_DetectFlatZoneType_s
{
MI_ISP_AF_bool_e bEnable;
MI_U16 u16Th;
MI_U16 u16MotorPos;
} MI_ISP_AF_DetectFlatZoneType_t;
-
Name
Variable Name Description bEnable Enable the detection of flat zone. u16Th The threshold value to determine flat zone during the process of SearchPeak. Areas with statistics smaller than this threshold will be judged as flat zone. u16MotorPos The position to which VCM will move when an area is judged as flat zone. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetDetectFlatZone(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_DetectFlatZoneType_t *data);
MI_S32 MI_ISP_AF_GetDetectFlatZone(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_DetectFlatZoneType_t *data);
MI_ISP_AF_StartVCMPos Structure¶
Type Structure¶
-
Description
Determine the default position of VCM when power is on.
-
Definition
typedef struct MI_ISP_AF_StartVCMPosType_s
{
MI_ISP_AF_StartVCMPosModeType_e eMode;
MI_U16 u16Pos;
} MI_ISP_AF_StartVCMPosType_t;
-
Name
Variable Name Description eMode Determine the default position of VCM when power is on. 0: MinPos, 1: MaxPos, 2: customization. u16Pos Determine the customized position of VCM when Mode = Customized. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetStartVCMPos(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_StartVCMPosType_t *data);
MI_S32 MI_ISP_AF_GetStartVCMPos(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_StartVCMPosType_t *data);
MI_ISP_AF_HwWin Structure¶
Type Structure¶
-
Description
The type structure to set AF window.
-
Definition
typedef struct MI_ISP_AF_HwWinType_s
{
MI_ISP_AF_HwRoiModeType_e eMode;
MI_U32 u32VerticalBlockNumber;
MI_ISP_AF_WinType_t stParaAPI[AF_HW_WIN_NUM];
} MI_ISP_AF_HwWinType_t;
-
Name
Variable Name Description eMode Control option of ROI (Region of Interest) mode. If set to 0, the screen will be divided into 16 sets of ROI blocks, which allow window size and position to be set freely according to user's preference; If set to 1, the screen can be divided into 16*N sets of ROI windows. The window size and position will be relatively limited. Parameter range: 0 ~ 1. u32VerticalBlockNumber Effective only when Mode is set to Matrix, which divides the window into 16*N sets of ROI blocks (N = VerticalBlockNumber). Parameter range: 1 ~ 16. stParaAPI[AF_HW_WIN_NUM] Coordinates of 16 sets of ROI, in the sequence of x_start, y_start, x_end, y_end. Parameter range: 0 ~ 1023. AF_HW_WIN_NUM = 16. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwWin(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwWinType_t *data);
MI_S32 MI_ISP_AF_GetHwWin(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwWinType_t *data);
Mode Enum Structure¶
-
Description
The ROI mode of AF statistical value.
-
Definition
typedef enum __attribute__ ((aligned (1)))
{
E_IQ_AF_ROI_MODE_NORMAL,
E_IQ_AF_ROI_MODE_MATRIX
} MI_ISP_AF_HwRoiModeType_e;
-
Name
Variable Name Description E_IQ_AF_ROI_MODE_NORMAL Normal mode, which enables the screen to be divided into 16 sets of ROI blocks, and both the window size and position can be set freely according to user's preference. E_IQ_AF_ROI_MODE_MATRIX Matrix mode, which enables the screen to be divided 16*N sets of ROI windows. The window size and position will be relatively limited. -
Note
N/A.
-
Related Structure Type and Function
Window Type Structure¶
-
Description
The type structure to set the position of AF window.
-
Definition
typedef struct MI_ISP_AF_WinType_s
{
MI_U32 u16StartX;
MI_U32 u16StartY;
MI_U32 u16EndX;
MI_U32 u16EndY;
} MI_ISP_AF_WinType_t;
-
Name
Variable Name Description u16StartX The X coordinate of the starting position. Parameter range: 0 ~ 1023. u16StartY The Y coordinate of the starting position. Parameter range: 0 ~ 1023. u16EndX The X coordinate of the final position. Parameter range: 0 ~ 1023. u16EndY The Y coordinate of the final position. Parameter range: 0 ~ 1023. -
Note
N/A.
-
Related Structure Type and Function
MI_ISP_AF_HwFilterAttr Structure¶
Type Structure¶
-
Description.
The type structure to set AF filter coefficients.
-
Definition
typedef struct MI_ISP_AF_HwFilterAttrType_s
{
MI_U16 u16IIR1_a0;
MI_U16 u16IIR1_a1;
MI_U16 u16IIR1_a2;
MI_U16 u16IIR1_b1;
MI_U16 u16IIR1_b2;
MI_U16 u16IIR1_1st_low_clip;
MI_U16 u16IIR1_1st_high_clip;
MI_U16 u16IIR1_2nd_low_clip;
MI_U16 u16IIR1_2nd_high_clip;
MI_U16 u16IIR2_a0;
MI_U16 u16IIR2_a1;
MI_U16 u16IIR2_a2;
MI_U16 u16IIR2_b1;
MI_U16 u16IIR2_b2;
MI_U16 u16IIR2_1st_low_clip;
MI_U16 u16IIR2_1st_high_clip;
MI_U16 u16IIR2_2nd_low_clip;
MI_U16 u16IIR2_2nd_high_clip;
MI_U16 u16IIR1_e1_en;
MI_U16 u16IIR1_e1_a0;
MI_U16 u16IIR1_e1_a1;
MI_U16 u16IIR1_e1_a2;
MI_U16 u16IIR1_e1_b1;
MI_U16 u16IIR1_e1_b2;
MI_U16 u16IIR1_e2_en;
MI_U16 u16IIR1_e2_a0;
MI_U16 u16IIR1_e2_a1;
MI_U16 u16IIR1_e2_a2;
MI_U16 u16IIR1_e2_b1;
MI_U16 u16IIR1_e2_b2;
MI_U16 u16IIR2_e1_en;
MI_U16 u16IIR2_e1_a0;
MI_U16 u16IIR2_e1_a1;
MI_U16 u16IIR2_e1_a2;
MI_U16 u16IIR2_e1_b1;
MI_U16 u16IIR2_e1_b2;
MI_U16 u16IIR2_e2_en;
MI_U16 u16IIR2_e2_a0;
MI_U16 u16IIR2_e2_a1;
MI_U16 u16IIR2_e2_a2;
MI_U16 u16IIR2_e2_b1;
MI_U16 u16IIR2_e2_b2;
} MI_ISP_AF_HwFilterAttrType_t;
-
Name
Name Bit Expression Description IIR1 Default IIR2 Default a0 S+9 a0 multiplier 37 19 a1 S+10 a1 multiplier 0 0 a2 S+9 a2 multiplier -37 -19 b1 S+13 b1 multiplier -6848 -7808 b2 S+13 b2 multiplier 3136 3776 1st_low_clip 10 X(n) input low clip 0 0 1st_high_clip 10 X(n) input high clip 1023 1023 2nd_low_clip 10 Y(n) output low clip 0 0 2nd_high_clip 10 Y(n) output high clip 1023 1023 e1_en 1 Extra1 enable 1 1 e1_a0 S+9 a0 multiplier 37 19 e1_a1 S+10 a1 multiplier 0 0 e1_a2 S+9 a2 multiplier -37 -19 e1_b1 S+13 b1 multiplier 1600 -4672 e1_b2 S+13 b2 multiplier 1792 2304 e2_en 1 Extra2 enable 1 1 e2_a0 S+9 a0 multiplier 32 17 e2_a1 S+10 a1 multiplier 0 0 e2_a2 S+9 a2 multiplier -32 -17 e2_b1 S+13 b1 multiplier -2624 -5824 e2_b2 S+13 b2 multiplier 0 1920 IIR1 is IIR High by default, while IIR2 is IIR Low by default.
-
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwFilterAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterAttrType_t *data);
MI_S32 MI_ISP_AF_GetHwFilterAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterAttrType_t *data);
MI_ISP_AF_HwFilterSq Structure¶
Type Structure¶
-
Description
The type structure to set AF filter square coefficient.
-
Definition
typedef struct MI_ISP_AF_HwFilterSqType_s
{
MI_U8 bSobelYSatEn;
MI_U16 u16SobelYThd;
MI_U8 bIIRSquareAccEn;
MI_U8 bSobelSquareAccEn;
MI_U16 u16IIR1Thd;
MI_U16 u16IIR2Thd;
MI_U16 u16SobelHThd;
MI_U16 u16SobelVThd;
MI_U8 u8AFTbl1X[AF_FILTER_SQ_TBL_X_NUM];
MI_U16 u16AFTbl1Y[AF_FILTER_SQ_TBL_Y_NUM];
MI_U8 u8AFTbl2X[AF_FILTER_SQ_TBL_X_NUM];
MI_U16 u16AFTbl2Y[AF_FILTER_SQ_TBL_Y_NUM];
} MI_ISP_AF_HwFilterSqType_t;
-
Name
Variable Name Description bSobelYSatEn The switch involves two actions:
1. Control the threshold value of Y for Sobel filter;
2. Control the setting of Y_sat statistics.u16SobelYThd When bSobelYSatEn = 1,
1. Control the threshold value of Y for Sobel filter: Pixels of which the brightness is lower than u16SobelYThd will be included in the Sobel filter calculation.
2. Control the setting of Y_sat statistics: Pixels larger than u16SobelYThd will be sent back and shown in Y_sat statistics.
Parameter range: 0 ~ 1023.bIIRSquareAccEn Enable IIR Filter Square enhancement. bSobelSquareAccEn Enable Sobel Filter Square enhancement. u16IIR1Thd IIR1 Filter Output = IIR1 Filter Output - IIR1Thd. Parameter range: 0 ~ 1023. u16IIR2Thd IIR2 Filter Output = IIR2 Filter Output - IIR2Thd. Parameter range: 0 ~ 1023. u16SobelHThd SobelH Filter Output = SobelH Filter Output - SobelH Thd. Parameter range: 0 ~ 1023. u16SobelVThd SobelV Filter Output = SobelV Filter Output - SobelV Thd. Parameter range: 0 ~ 1023. u8AFTbl1X [AF_FILTER_SQ_TBL_X_NUM] Perform non-linear mapping for IIR1 and SobelH Filter. u8AFTbl1X represents the horizontal axis of Tbl1, for which the nodes are accumulated by power of 2. The accumulation should be greater than 1024. Parameter range: 0 ~ 15. AF_FILTER_SQ_TBL_X_NUM = 12. u16AFTbl1Y [AF_FILTER_SQ_TBL_Y_NUM] Perform non-linear mapping for IIR1 and SobelH Filter. u16AFTbl1Y represents the vertical axis of Tbl1. Parameter range: 0 ~ 8191. AF_FILTER_SQ_TBL_Y_NUM = 13. u8AFTbl2X [AF_FILTER_SQ_TBL_X_NUM] Perform non-linear mapping for IIR2 and SobelV Filter. u8AFTbl2X represents the horizontal axis of Tbl2, for which the nodes are accumulated by power of 2. The accumulation should be greater than 1024. Parameter range: 0 ~ 15. AF_FILTER_SQ_TBL_X_NUM = 12. u16AFTbl2Y [AF_FILTER_SQ_TBL_Y_NUM] Perform non-linear mapping for IIR2 and SobelV Filter. u16AFTbl2Y represents the vertical axis of Tbl2. Parameter range: 0 ~ 8191. AF_FILTER_SQ_TBL_Y_NUM = 13. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwFilterSq(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterSqType_t *data);
MI_S32 MI_ISP_AF_GetHwFilterSq(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwFilterSqType_t *data);
MI_ISP_AF_HwBnr Structure¶
Type Structure¶
-
Description
The type structure to set AF Bayer noise reduction coefficient.
-
Definition
typedef struct MI_ISP_AF_HwBnrType_s
{
MI_U8 u8BnrEn;
MI_U8 u8FilterStr;
} MI_ISP_AF_HwBnrType_t;
-
Name
Variable Name Description u8BnrEn Enable Bayer noise reduction. Parameter range: 0 ~ 1. u8FilterStr The strength of Bayer noise reduction. Parameter range: 0 ~ 63. The larger the value, the weaker the noise reduction. -
Note
- AF Bayer noise reduction takes effect only when AF source is set to E_IQ_AF_SOURCE_BF_3DNR_AF_HDR.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwBnr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwBnrType_t *data);
MI_S32 MI_ISP_AF_GetHwBnr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwBnrType_t *data);
MI_ISP_AF_HwYParam Structure¶
Type Structure¶
-
Description
The type structure to set the coefficients of RGB ratio for the Bayer-to-Y conversion in AF filter.
-
Definition
typedef struct MI_ISP_AF_HwYParamType_s
{
MI_U8 u8R;
MI_U8 u8G;
MI_U8 u8B;
} MI_ISP_AF_HwYParamType_t;
-
Name
Variable Name Description u8R The ratio of R channel in Bayer-to-Y conversion. Parameter range: 0 ~ 255. u8G The ratio of G channel in Bayer-to-Y conversion. Parameter range: 0 ~ 255. u8B The ratio of B channel in Bayer-to-Y conversion. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwYParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYParamType_t *data);
MI_S32 MI_ISP_AF_GetHwYParam(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYParamType_t *data);
MI_ISP_AF_HwSource Structure¶
Type Structure¶
-
Description
The type structure to set the position of source, where AF filter extracts statistics.
-
Definition
typedef enum
{
E_IQ_AF_SOURCE_BF_3DNR_AF_HDR = 0,
E_IQ_AF_SOURCE_FROM_SE_OBC_BF_HDR = 2,
E_IQ_AF_SOURCE_FROM_SE_WBG_BF_HDR = 3,
E_IQ_AF_SOURCE_FROM_ALSC_AF_HDR = 4,
E_IQ_AF_SOURCE_FROM_WBG_AF_HDR = 5,
E_IQ_AF_SOURCE_FROM_LE_OBC_BF_HDR = 6,
E_IQ_AF_SOURCE_FROM_LE_WBG_BF_HDR = 7,
} MI_ISP_AF_HwSourceType_e;
-
Name
Variable Name Description E_IQ_AF_SOURCE_BF_3DNR_AF_HDR Linear mode: Select pre-3DNR result.
HDR mode: Select post-HDR result (before 3DNR).E_IQ_AF_SOURCE_FROM_SE_OBC_BF_HDR Linear mode: Select post-OB result.
HDR mode: Select pre-HDR short-exposure result (after OB).E_IQ_AF_SOURCE_FROM_SE_WBG_BF_HDR Linear mode: Select post-WBGain result.
HDR mode: Select pre-HDR short-exposure result (after WBGain).E_IQ_AF_SOURCE_FROM_ALSC_AF_HDR Linear mode: Select pre-CI result (after Shading).
HDR mode: Select post-HDR result (after Shading).E_IQ_AF_SOURCE_FROM_WBG_AF_HDR Linear mode: Select pre-CI result (after WBGain).
HDR mode: Select post-HDR result (after WBGain).E_IQ_AF_SOURCE_FROM_LE_OBC_BF_HDR Linear mode: Not supported.
HDR mode: Select pre-HDR long-exposure result (after OB).E_IQ_AF_SOURCE_FROM_LE_WBG_BF_HDR Linear mode: Not supported.
HDR mode: Select pre-HDR long-exposure result (after WBGain). -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwSource(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwSourceType_e *data);
MI_S32 MI_ISP_AF_GetHwSource(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwSourceType_e *data);
MI_ISP_AF_HwPrefilter Structure¶
Type Structure¶
-
Description
The type structure to set the pre-filter coefficient of AF filter.
-
Definition
typedef struct MI_ISP_AF_HwPrefilterType_s
{
MI_U8 u8IIR1En;
MI_U8 u8IIR1Cor;
MI_U8 u8IIR1Hor;
MI_U8 u8IIR1Vert;
MI_U8 u8IIR1Cent;
MI_U8 u8IIR1Div;
MI_U8 u8IIR2En;
MI_U8 u8IIR2Cor;
MI_U8 u8IIR2Hor;
MI_U8 u8IIR2Vert;
MI_U8 u8IIR2Cent;
MI_U8 u8IIR2Div;
} MI_ISP_AF_HwPrefilterType_t;
-
Name
Variable Name Description u8IIR1En Enable IIR1 to use PreFilter. u8IIR1Cor The proportion set by IIR1 for the four neighboring pixels in four diagonal directions.
0:*0
1:*1
2:*2
3:*4u8IIR1Hor The proportion set by IIR1 for the two neighboring pixels in the horizontal direction.
0:*0
1:*1
2:*2
3:*4u8IIR1Vert The proportion set by IIR1 for the two neighboring pixels in the vertical direction.
0:*0
1:*1
2:*2
3:*4u8IIR1Cent The proportion set by IIR1 for the current pixel.
0:*1
1:*2
2:*4
3:*8u8IIR1Div IIR1 accumulates the above pixel results and performs division calculation.
0:/8
1:/16
2:/32
3:/64u8IIR2En Enable IIR2 to use PreFilter. u8IIR2Cor The proportion set by IIR2 for the four neighboring pixels in four diagonal directions.
0:*0
1:*1
2:*2
3:*4u8IIR2Hor The proportion set by IIR2 for the two neighboring pixels in the horizontal direction.
0:*0
1:*1
2:*2
3:*4u8IIR2Vert The proportion set by IIR2 for the two neighboring pixels in the vertical direction.
0:*0
1:*1
2:*2
3:*4u8IIR2Cent The proportion set by IIR2 for the current pixel.
0:*1
1:*2
2:*4
3:*8u8IIR2Div IIR2 accumulates the above pixel results and performs division calculation.
0:/8
1:/16
2:/32
3:/64 -
Note
The pixel positions are shown below:
Cor Vert Cor Hor Center Hor Cor Vert Cor Perform the following equation:
Out = (u8Cor * (Cor+Cor+Cor+Cor) + u8Hor * (Hor+Hor) + u8Vert * (Vert+Ver) + u8Cent * (Cent)) / u8Div
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwPreFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwPrefilterType_t *data);
MI_S32 MI_ISP_AF_GetHwPreFilter(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwPrefilterType_t *data);
MI_ISP_AF_HwYMap Structure¶
Type Structure¶
-
Description
The type structure to set y mapping coefficient of AF filter.
-
Definition
typedef struct MI_ISP_AF_HwYMapType_s
{
MI_U8 u8YMapEn;
MI_U8 u8YMapLumaSource;
MI_U8 u8YMapX[AF_YMAP_X_NUM];
MI_U16 u16YMapY[AF_YMAP_Y_NUM];
MI_U8 u8LumaSrc;
} MI_ISP_AF_HwYMapType_t;
-
Name
Variable Name Description u8YMapEn Enable YMap. u8YMapLumaSource Select the source of FIR/IIR statistics.
0: before YMap process.
1: after YMap process.u8YMapX[AF_YMAP_X_NUM] The horizontal axis of YMap, of which the nodes are accumulated by power of 2. The last node should be greater than or equal to 1023 after accumulation. AF_YMAP_X_NUM = 8. u16YMapY[AF_YMAP_Y_NUM] The vertical axis of YMap. Range: 0 ~ 1023. AF_YMAP_Y_NUM = 9. u8LumaSrc Select the source of Luma statistics.
0: Calculate Luma before YMap;
1: Calculate Luma after YMap. -
Note

.ymap_x = {4, 4, 4, 4, 6, 7, 8, 9},
The actual horizontal coordinates are: 0, 16, 32, 48, 64, 128, 256, 512, 1024.
.ymap_y = {0, 72, 135, 183, 222, 340, 501, 722, 1023},
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwYMap(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYMapType_t *data);
MI_S32 MI_ISP_AF_GetHwYMap(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwYMapType_t *data);
MI_ISP_AF_HwLdg Structure¶
Type Structure¶
-
Description
The type structure to set the LDG coefficient of AF filter.
-
Definition
typedef struct MI_ISP_AF_HwLdgType_s
{
MI_U8 u8IIR1En;
MI_U8 u8IIR2En;
MI_U8 u8FIRHEn;
MI_U8 u8FIRVEn;
MI_U16 u16IIRCurveX[AF_LDG_LUT_NUM];
MI_U8 u8IIRCurveY[AF_LDG_LUT_NUM];
MI_U16 u16FIRCurveX[AF_LDG_LUT_NUM];
MI_U8 u8FIRCurveY[AF_LDG_LUT_NUM];
} MI_ISP_AF_HwLdgType_t;
-
Name
Variable Name Description u8IIR1En Enable IIR1 to use LDG function. u8IIR2En Enable IIR2 to use LDG function. u8FIRHEn Enable FIRH to use LDG function. u8FIRVEn Enable FIRV to use LDG function. u16IIRCurveX[AF_LDG_LUT_NUM] The horizontal axis of IIR LDG. The input is brightness value. Parameter range: 0 ~ 1023. AF_LDG_LUT_NUM = 6. u8IIRCurveY[AF_LDG_LUT_NUM] The vertical axis of IIR LDG. The output is the ratio of statistics. Parameter range: 0 ~ 255, and 255 represents no attenuation. AF_LDG_LUT_NUM = 6. u16FIRCurveX[AF_LDG_LUT_NUM] The horizontal axis of FIR LDG. The input is brightness value. Parameter range: 0 ~ 1023. AF_LDG_LUT_NUM = 6. u8FIRCurveY[AF_LDG_LUT_NUM] The vertical axis of FIR LDG. The output is the ratio of statistics. Parameter range: 0 ~ 255, and 255 represents no attenuation. AF_LDG_LUT_NUM = 6. -
Note

.curve_x = {0, 300, 1023, 1023, 1023, 1023},
.curve_y = {255, 255, 40, 40, 40, 40},
Statistics of which the brightness is over 300 will gradually decrease in this setting. When brightness reaches 1023, the value will decrease to 40/255=0.156 approximately.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwLdg(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwLdgType_t *data);
MI_S32 MI_ISP_AF_GetHwLdg(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwLdgType_t *data);
MI_ISP_AF_HwPeakMode Structure¶
Type Structure¶
-
Description
The type structure to set the coefficients of AF filter peak mode.
-
Definition
typedef struct MI_ISP_AF_HwPeakModeType_s
{
MI_U8 u8IIR1En;
MI_U8 u8IIR2En;
MI_U8 u8SubSample;
MI_U8 u8Overlap;
} MI_ISP_AF_HwPeakModeType_t;
-
Name
Variable Name Description u8IIR1En Enable IIR1 peak mode. u8IIR2En Enable IIR2 peak mode. u8SubSample The number of pixel for intervals when substracting value for samples. Value range: 0 ~ 31. u8Overlap The current pixel is enlarged to (2n+1) when being sampled. Value: 0 ~ 7. -
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetHwPeakMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwPeakModeType_t *data);
MI_S32 MI_ISP_AF_GetHwPeakMode(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_HwPeakModeType_t *data);
MI_ISP_AF_Attr Structure¶
Type Structure¶
-
Description
The type structure to set AF attribute.
-
Definition
typedef struct MI_ISP_AF_AttrType_s
{
MI_ISP_AF_SmStateType_e eState;
MI_ISP_AF_OpType_e eType;
MI_U16 u16ManualMotorPos;
MI_ISP_AF_AlgoType_e eAlgo;
} MI_ISP_AF_AttrType_t;
-
Name
Variable Name Description eState Set the status of AF attribute function.
Normal: E_SS_AF_STATE_NORMAL = 0.
Pause: E_SS_AF_STATE_PAUSE = 1.eType Set the working mode of AF attribute.
Auto mode: E_SS_AF_OP_TYP_AUTO = 0.
Manual mode: E_SS_AF_OP_TYP_MANUAL = 1.u16ManualMotorPos The attribute structure of manual mode to set AF attribute. Parameter range: 0 ~ 1023. eAlgo Set the type of Auto Focus algorithm. Two options are available: 1. OneShot; 2. Continuous. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AttrType_t *data);
MI_S32 MI_ISP_AF_GetAttr(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AttrType_t *data);
MI_ISP_AF_Motor Structure¶
Type Structure¶
-
Description
The type structure to set AF motor.
-
Definition
typedef struct MI_ISP_AF_MotorType_s
{
MI_U16 u16MinMotorPos;
MI_U16 u16MaxMotorPos;
MI_U16 u16MinMotorStep;
MI_U16 u16MaxMotorStep;
} MI_ISP_AF_MotorType_t;
-
Name
Variable Name Description u16MinMotorPos The minimum position to which motor can move. Parameter range: 0 ~ 1023. u16MaxMotorPos The maximum position to which motor can move. Parameter range: 0 ~ 1023. u16MinMotorStep The minimum step that motor can move within one frame. Parameter range: 0 ~ 1023. u16MaxMotorStep The maximum step that motor can move within one frame. Parameter range: 0 ~ 1023. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetMotor(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_MotorType_t *data);
MI_S32 MI_ISP_AF_GetMotor(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_MotorType_t *data);
MI_ISP_AF_AccWeight Structure¶
Type Structure¶
-
Description
The type structure to set AF acc weight.
-
Definition
typedef struct MI_ISP_AF_AccWeightType_s
{
MI_U8 u8WinNumX;
MI_U8 u8WinNumY;
MI_ISP_AF_bool_e bEqualWinWgt;
MI_U8 u8WinWgt[MI_ISP_AF_WIN_CNT];
MI_ISP_AF_bool_e bIIRHBlendEn;
MI_U8 u8IIRHWgt_FirstBlendIIRL;
MI_U8 u8IIRHWgt_SecondBlendSBLV;
MI_U8 u8IIRHWgt_ThirdBlendSBLH;
} MI_ISP_AF_AccWeightType_t;
-
Name
Variable Name Description u8WinNumX The total number of window in the direction of X. Parameter range: 1 ~ 16. u8WinNumY The total number of window in the direction of Y. Parameter range: 1 ~ 16. bEqualWinWgt Enable equal weight to be assigned to statistical values. Parameter range: 0 ~ 1. u8WinWgt[MI_ISP_AF_WIN_CNT] The weight table of statistical value, which only takes effect when EqualWinWgtEn is false. Parameter range: 0 ~ 255. MI_ISP_AF_WIN_CNT = 256. bIIRHBlendEn Enable IIRH blending with the three following values in this order. Parameter range: 0 ~ 1. u8IIRHWgt_FirstBlendIIRL IIRH will be first blended with IIRL; this value represents the proportion of IIRH. Parameter range: 0 ~ 255. u8IIRHWgt_SecondBlendSBLV IIRH will then be blended with SobelV, this value represents the proportion of IIRH. Parameter range: 0 ~ 255. u8IIRHWgt_ThirdBlendSBLH IIRH will finally be blended with SobelH, this value represents the proportion of IIRH. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetAccWeight(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AccWeightType_t *data);
MI_S32 MI_ISP_AF_GetAccWeight(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_AccWeightType_t *data);
MI_ISP_AF_OneShot Structure¶
Type Structure¶
-
Description
The type structure to set AF OneShot, effective only when Algo (Auto Focus algorithm) is set to OneShot.
-
Definition
typedef struct MI_ISP_AF_OneShotType_s
{
MI_ISP_AF_AccSelType_e eAccSel;
MI_U16 u16MotorStep;
} MI_ISP_AF_OneShotType_t;
-
Name
Variable Name Description eAccSel Type of statistical value. Parameter range: 0 ~ 3. u16MotorStep Motor step within each frame. Parameter range: 0 ~ 1023. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetOneShot(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OneShotType_t *data);
MI_S32 MI_ISP_AF_GetOneShot(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_OneShotType_t *data);
MI_ISP_AF_SceneChange Structure¶
Type Structure¶
-
Description
The type structure to set AF Scene Change, effective only when Algo is set to Continuous.
-
Definition
typedef struct MI_ISP_AF_SceneChangeType_s
{
MI_ISP_AF_AccSelType_e ePreAfAccSel;
MI_U8 u8PreAeAccDiffThOft;
MI_U8 u8PreAeAccDiffThSlp;
MI_U8 u8PreAeAccCntThOft;
MI_U8 u8PreAeAccCntThSlp;
MI_U8 u8PreAfAccDiffThOft;
MI_U8 u8PreAfAccDiffThSlp;
MI_U8 u8PreAfAccCntThOft;
MI_U8 u8PreAfAccCntThSlp;
MI_ISP_AF_AccSelType_e eFocusAfAccSel;
MI_U8 u8FocusAeAccDiffTh;
MI_U8 u8FocusAeAccCntTh;
MI_U8 u8FocusAfAccDiffTh;
MI_U8 u8FocusAfAccCntTh;
MI_U8 u8StableCntTh;
} MI_ISP_AF_SceneChangeType_t;
-
Name
Variable Name Description ePreAfAccSel Type of statistical value, used to determine whether the environment has changed based on the difference in statistical value from the previous frame. Parameter range: 0 ~ 3. u8PreAeAccDiffThOft Threshold value of the ratio of statistical value to Luma difference. The total number exceeding this threshold will be counted. Parameter range: 0 ~ 100. u8PreAeAccDiffThSlp Slope of the threshold value of the ratio of statistical value to Luma difference. The threshold can be increased by motor step. Parameter range: 0 ~ 100. u8PreAeAccCntThOft Threshold value of the ratio of statistical value to total Luma value. The environment will be judged as unstable if the value is greater than this threshold. Parameter range: 0 ~ 100. u8PreAeAccCntThSlp Slope of the threshold value of the ratio of statistical value to total Luma value. The threshold can be increased by motor step. Parameter range: 0 ~ 100. u8PreAfAccDiffThOft Threshold value of the ratio of statistical value to PreAccSel difference. The total number exceeding this threshold will be counted. Parameter range: 0 ~ 100. u8PreAfAccDiffThSlp Slope of the threshold value of the ratio of statistical value to PreAccSel difference. The threshold can be increased by motor step. Parameter range: 0 ~ 100. u8PreAfAccCntThOft Threshold value of the ratio of statistical value to total PreAccSel value. The environment will be judged as unstable if the value is greater than this threshold. Parameter range: 0 ~ 100. u8PreAfAccCntThSlp Slope of the threshold value of the ratio of statistical value to total PreAccSel value. The threshold can be increased by motor step. Parameter range: 0 ~ 100. eFocusAfAccSel Type of statistical value, used to determine whether the environment has changed based on the difference in statistical value from the previous end-of-convergence. Parameter range: 0 ~ 3. u8FocusAeAccDiffTh Threshold value of the ratio of statistical value to Luma difference. The total number exceeding this threshold will be counted. Parameter range: 0 ~ 100. u8FocusAeAccCntTh Threshold value of the ratio of statistical value to total Luma value. The environment will be judged as unstable if the value is greater than this threshold. Parameter range: 0 ~ 100. u8FocusAfAccDiffTh Threshold value of the ratio of statistical value to FocusAccSel difference. The total number exceeding this threshold will be counted. Parameter range: 0 ~ 100. u8FocusAfAccCntTh Threshold value of the ratio of statistical value to total FocusAccSel value. The environment will be judged as unstable if the value is greater than this threshold. Parameter range: 0 ~ 100. u8StableCntTh Threshold value of continuous stable frame count. If the value is greater than this threshold, the environment will be judged as stable, and the motor will start moving to perform auto focus. Parameter range: 0 ~ 255. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetSceneChange(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SceneChangeType_t *data);
MI_S32 MI_ISP_AF_GetSceneChange(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SceneChangeType_t *data);
MI_ISP_AF_SearchStart Structure¶
Type Structure¶
-
Description
The type structure to set AF Search Start, effective only when Algo is set to Continuous.
-
Definition
typedef struct MI_ISP_AF_SearchStartType_s
{
MI_U16 u16SearchMotorStep
MI_U16 u16SearchMotorDirByPosTh;
MI_ISP_AF_AccSelType_e eSearchAccSel;
} MI_ISP_AF_SearchStartType_t;
-
Name
Variable Name Description u16SearchMotorStep Motor step within each frame. Parameter range: 0 ~ 1023. u16SearchMotorDirByPosTh Threshold value to determine the moving direction according to the motor's current position. If the value is greater than this threshold, the motor will move toward smaller position, and vice versa. Parameter range: 0 ~ 1023. eSearchAccSel Type of statistical value. Parameter range: 0 ~ 3. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetSearchStart(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchStartType_t *data);
MI_S32 MI_ISP_AF_GetSearchStart(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchStartType_t *data);
MI_ISP_AF_Search Structure¶
Type Structure¶
-
Description
The type structure to set AF Search, effective only when Algo is set to Continuous.
-
Definition
typedef struct MI_ISP_AF_SearchType_s
{
MI_U8 u8MinMaxAccRatioPeakThOft;
MI_U8 u8MinMaxAccRatioPeakThSlp;
MI_U8 u8AccDecCntPeakTh;
MI_U8 u8NowFakeMaxAccRatioPeakTh;
MI_U8 u8AccDecCntWrongDirTh;
MI_U8 u8NowFakeMaxAccRatioWrongDirTh;
} MI_ISP_AF_SearchType_t;
-
Name
Variable Name Description u8MinMaxAccRatioPeakThOft Threshold value of the ratio of difference between the minimum and maximum statistical values, used to determine the peak. Parameter range: 0 ~ 100. u8MinMaxAccRatioPeakThSlp Slope of the threshold value of the ratio of difference between the minimum and maximum statistical values. The threshold value can be lowered based on the total path traveled. Parameter range: 0 ~ 100. u8AccDecCntPeakTh Threshold value of the number of consecutive declines in statistical values, used to determine the peak. Parameter range: 0 ~ 255. u8NowFakeMaxAccRatioPeakTh Threshold value of the proportion of decline in statistical values, used to determine the peak. Parameter range: 0 ~ 100. u8AccDecCntWrongDirTh Threshold value of the number of consecutive declines in statistical values, used to determine if the direction is wrong. Parameter range: 0 ~ 255. u8NowFakeMaxAccRatioWrongDirTh Threshold value of the number of consecutive declines in statistical values, used to determine if the direction is wrong. Parameter range: 0 ~ 100. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_SetSearch(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchType_t *data);
MI_S32 MI_ISP_AF_GetSearch(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_SearchType_t *data);
MI_ISP_AF_VerInfo Structure¶
Type Structure¶
-
Description
The type structure of AF Version Information.
-
Definition
typedef struct MI_ISP_AF_VerInfoType_s
{
MI_U32 u32ReleaseDate;
MI_U32 u32ReportID;
MI_U8 u8Major;
MI_U8 u8Minor;
MI_U8 u8TestVer;
} MI_ISP_AF_VerInfoType_t;
-
Name
Variable Name Description u32ReleaseDate Print out the release date of AF FW update. u32ReportID Print out the report ID of AF FW. Default: 0. u8Major Print out the major version number of AF FW. u8Minor Print out the minor version number of AF FW. u8TestVer Print out the test version number of AF FW. Default: 0. -
Note
N/A.
-
Related Structure Type and Function
MI_S32 MI_ISP_AF_GetVersionInfo(MI_U32 DevId, MI_U32 Channel, MI_ISP_AF_VerInfoType_t *data);
Error Code¶
| Parameter Name | Value | Description |
|---|---|---|
| MI_ISP_IQ_OK | 0 | Successful. |
| MI_ISP_IQ_ERR_NOT_SUPPORT | 0xA0212201 | Not supported by this chip. |
| MI_ISP_IQ_ERR_NULL_POINTER | 0xA0212202 | Null Pointer. |
| MI_ISP_IQ_ERR_3A_FAIL | 0xA0212203 | 3A failed. |
| MI_ISP_IQ_ERR_OUT_OF_ARRAY | 0xA0212204 | Exceeds the matrix size. |
| MI_ISP_IQ_ERR_BUFFER_TOO_SMALL | 0xA0212205 | Buffer is too small. |
| MI_ISP_IQ_ERR_EMPTY_VARIABLE | 0xA0212206 | Empty variable. |
| MI_ISP_IQ_ERR_CALIB_VERSION_FAIL | 0xA0212207 | Wrong Calib. Version. |
| MI_ISP_IQ_ERR_API_STRUCTURE_SIZE_NOT_MATCH | 0xA0212208 | Structure size not match. |
| MI_ISP_IQ_ERR_API_NOT_FOUND | 0xA0212209 | No API is found. |