/*
|
* atmo_head.h
|
*
|
* Copyright (c) 2021 Rockchip Corporation
|
*
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
* you may not use this file except in compliance with the License.
|
* You may obtain a copy of the License at
|
*
|
* http://www.apache.org/licenses/LICENSE-2.0
|
*
|
* Unless required by applicable law or agreed to in writing, software
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
* See the License for the specific language governing permissions and
|
* limitations under the License.
|
*
|
*/
|
|
#ifndef __CALIBDBV2_ATMO_HEADER_H__
|
#define __CALIBDBV2_ATMO_HEADER_H__
|
|
#include "rk_aiq_comm.h"
|
|
RKAIQ_BEGIN_DECLARE
|
|
typedef enum GlobalLumaMode_e {
|
GLOBALLUMAMODE_ENVLV = 0,
|
GLOBALLUMAMODE_ISO = 1,
|
} GlobalLumaMode_t;
|
|
typedef struct GlobalLumaData_s
|
{
|
// M4_ARRAY_DESC("EnvLv", "f32", M4_SIZE(1,100), M4_RANGE(0,1), "0",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* EnvLv;
|
int EnvLv_len;
|
// M4_ARRAY_DESC("ISO", "f32", M4_SIZE(1,100), M4_RANGE(0,10000000), "50",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* ISO;
|
int ISO_len;
|
// M4_ARRAY_DESC("Strength", "f32", M4_SIZE(1,100), M4_RANGE(0,1), "0.25",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* Strength;
|
int Strength_len;
|
} GlobalLumaData_t;
|
|
typedef struct CalibDbGlobalLuma_s
|
{
|
// M4_ENUM_DESC("Mode", "GlobalLumaMode_t", "GLOBALLUMAMODE_ENVLV")
|
GlobalLumaMode_t Mode;
|
// M4_ARRAY_TABLE_DESC("GlobalLumaData", "array_table_ui", "none")
|
GlobalLumaData_t GlobalLumaData;
|
// M4_NUMBER_DESC("Tolerance", "f32", M4_RANGE(0,0.2), "0", M4_DIGIT(4))
|
float Tolerance;
|
} CalibDbGlobalLuma_t;
|
|
typedef enum DetailsHighLightMode_e {
|
DETAILSHIGHLIGHTMODE_OEPDF = 0,
|
DETAILSHIGHLIGHTMODE_ENVLV = 1,
|
} DetailsHighLightMode_t;
|
|
typedef struct HighLightData_s
|
{
|
// M4_ARRAY_DESC("OEPdf", "f32", M4_SIZE(1,100), M4_RANGE(0,1), "0",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* OEPdf;
|
int OEPdf_len;
|
// M4_ARRAY_DESC("EnvLv", "f32", M4_SIZE(1,100), M4_RANGE(0,1), "0",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* EnvLv;
|
int EnvLv_len;
|
// M4_ARRAY_DESC("Strength", "f32", M4_SIZE(1,100), M4_RANGE(0,1), "0.5",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* Strength;
|
int Strength_len;
|
} HighLightData_t;
|
|
typedef struct CalibDbDetailsHighLight_s
|
{
|
// M4_ENUM_DESC("Mode", "DetailsHighLightMode_t", "DETAILSHIGHLIGHTMODE_ENVLV")
|
DetailsHighLightMode_t Mode;
|
// M4_ARRAY_TABLE_DESC("HighLightData", "array_table_ui", "none")
|
HighLightData_t HighLightData;
|
// M4_NUMBER_DESC("Tolerance", "f32", M4_RANGE(0,0.2), "0", M4_DIGIT(4))
|
float Tolerance;
|
} CalibDbDetailsHighLight_t;
|
|
typedef enum DetailsLowLightMode_e {
|
DETAILSLOWLIGHTMODE_FOCUSLUMA = 0,
|
DETAILSLOWLIGHTMODE_DARKPDF = 1,
|
DETAILSLOWLIGHTMODE_ISO = 2,
|
} DetailsLowLightMode_t;
|
|
typedef struct LowLightData_s
|
{
|
// M4_ARRAY_DESC("FocusLuma", "f32", M4_SIZE(1,100), M4_RANGE(0,100), "1",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* FocusLuma;
|
int FocusLuma_len;
|
// M4_ARRAY_DESC("DarkPdf", "f32", M4_SIZE(1,100), M4_RANGE(0,1), "0",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* DarkPdf;
|
int DarkPdf_len;
|
// M4_ARRAY_DESC("ISO", "f32", M4_SIZE(1,100), M4_RANGE(0,10000000), "50",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* ISO;
|
int ISO_len;
|
// M4_ARRAY_DESC("Strength", "f32", M4_SIZE(1,100), M4_RANGE(1,4), "1",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* Strength;
|
int Strength_len;
|
} LowLightData_t;
|
|
typedef struct CalibDbDetailsLowLight_s
|
{
|
// M4_ENUM_DESC("Mode", "DetailsLowLightMode_t", "DETAILSLOWLIGHTMODE_ISO")
|
DetailsLowLightMode_t Mode;
|
// M4_ARRAY_TABLE_DESC("LowLightData", "array_table_ui", "none")
|
LowLightData_t LowLightData;
|
// M4_NUMBER_DESC("Tolerance", "f32", M4_RANGE(0,0.2), "0", M4_DIGIT(4))
|
float Tolerance;
|
} CalibDbDetailsLowLight_t;
|
|
typedef enum TmoTypeMode_e {
|
TMOTYPEMODE_DYNAMICRANGE = 0,
|
TMOTYPEMODE_ENVLV = 1,
|
} TmoTypeMode_t;
|
|
typedef struct TmoData_s
|
{
|
// M4_ARRAY_DESC("DynamicRange", "f32", M4_SIZE(1,100), M4_RANGE(1,84), "1",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* DynamicRange;
|
int DynamicRange_len;
|
// M4_ARRAY_DESC("EnvLv", "f32", M4_SIZE(1,100), M4_RANGE(0,1), "0",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* EnvLv;
|
int EnvLv_len;
|
// M4_ARRAY_DESC("Strength", "f32", M4_SIZE(1,100), M4_RANGE(0,1), "0.5",M4_DIGIT(4), M4_DYNAMIC(1))
|
float* Strength;
|
int Strength_len;
|
} TmoData_t;
|
|
typedef struct CalibDbLocalTMO_s
|
{
|
// M4_ENUM_DESC("Mode", "TmoTypeMode_t", "TMOTYPEMODE_DYNAMICRANGE")
|
TmoTypeMode_t Mode;
|
// M4_ARRAY_TABLE_DESC("LocalTmoData", "array_table_ui", "none")
|
TmoData_t LocalTmoData;
|
// M4_NUMBER_DESC("Tolerance", "f32", M4_RANGE(0,0.2), "0", M4_DIGIT(4))
|
float Tolerance;
|
} CalibDbLocalTMO_t;
|
|
typedef struct CalibDbGlobaTMO_s
|
{
|
// M4_BOOL_DESC("Enable", "1")
|
bool Enable;
|
// M4_NUMBER_DESC("IIR", "f32", M4_RANGE(1,1000), "64", M4_DIGIT(0))
|
float IIR;
|
// M4_ENUM_DESC("Mode", "TmoTypeMode_t", "TMOTYPEMODE_DYNAMICRANGE")
|
TmoTypeMode_t Mode;
|
// M4_ARRAY_TABLE_DESC("GlobalTmoData", "array_table_ui", "none")
|
TmoData_t GlobalTmoData;
|
// M4_NUMBER_DESC("Tolerance", "f32", M4_RANGE(0,0.2), "0", M4_DIGIT(4))
|
float Tolerance;
|
} CalibDbGlobaTMO_t;
|
|
typedef struct CalibDbTmoV20_s
|
{
|
// M4_BOOL_DESC("Enable", "1")
|
bool Enable;
|
// M4_STRUCT_DESC("GlobalLuma", "normal_ui_style")
|
CalibDbGlobalLuma_t GlobalLuma;
|
// M4_STRUCT_DESC("DetailsHighLight", "normal_ui_style")
|
CalibDbDetailsHighLight_t DetailsHighLight;
|
// M4_STRUCT_DESC("DetailsLowLight", "normal_ui_style")
|
CalibDbDetailsLowLight_t DetailsLowLight;
|
// M4_STRUCT_DESC("LocalTMO", "normal_ui_style")
|
CalibDbLocalTMO_t LocalTMO;
|
// M4_STRUCT_DESC("GlobaTMO", "normal_ui_style")
|
CalibDbGlobaTMO_t GlobaTMO;
|
// M4_NUMBER_DESC("damp", "f32", M4_RANGE(0,1), "0.9", M4_DIGIT(4))
|
float damp;
|
} CalibDbTmoV20_t;
|
|
typedef struct CalibDbV2_tmo_s
|
{
|
// M4_STRUCT_DESC("TmoTuningPara", "normal_ui_style")
|
CalibDbTmoV20_t TmoTuningPara;
|
} CalibDbV2_tmo_t;
|
|
|
RKAIQ_END_DECLARE
|
|
#endif
|