1 /* 2 * bayernr_head_v1.h 3 * 4 * Copyright (c) 2021 Rockchip Corporation 5 * 6 * Licensed under the Apache License, Version 2.0 (the "License"); 7 * you may not use this file except in compliance with the License. 8 * You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, software 13 * distributed under the License is distributed on an "AS IS" BASIS, 14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 * See the License for the specific language governing permissions and 16 * limitations under the License. 17 * 18 */ 19 20 #ifndef __CALIBDBV2_BAYERNR_HEADER_V1_H__ 21 #define __CALIBDBV2_BAYERNR_HEADER_V1_H__ 22 23 #include "rk_aiq_comm.h" 24 25 RKAIQ_BEGIN_DECLARE 26 27 ////////////////////////bayernr V1////////////////////////////////////// 28 typedef struct CalibDbV2_BayerNrV1_C_ISO_s { 29 // M4_NUMBER_MARK_DESC("iso", "f32", M4_RANGE(50, 204800), "50", M4_DIGIT(1), "index2") 30 float iso; 31 // M4_ARRAY_DESC("luLevelVal", "f32", M4_SIZE(1,8), M4_RANGE(0,255), "0.0", M4_DIGIT(0), M4_DYNAMIC(0)) 32 float luLevelVal[8]; 33 // M4_ARRAY_DESC("luRatio", "f32", M4_SIZE(1,8), M4_RANGE(0,15.9), "0.0", M4_DIGIT(1), M4_DYNAMIC(0)) 34 float luRatio[8]; 35 } CalibDbV2_BayerNrV1_C_ISO_t; 36 37 typedef struct CalibDbV2_BayerNrV1_C_Set_s { 38 // M4_STRING_MARK_DESC("SNR_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "LSNR",M4_DYNAMIC(0), "index1") 39 char *SNR_Mode; 40 // M4_STRING_DESC("Sensor_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "lcg", M4_DYNAMIC(0)) 41 char *Sensor_Mode; 42 // M4_STRUCT_LIST_DESC("Calib_ISO", M4_SIZE_DYNAMIC, "double_index_list") 43 CalibDbV2_BayerNrV1_C_ISO_t *Calib_ISO; 44 int Calib_ISO_len; 45 46 } CalibDbV2_BayerNrV1_C_Set_t; 47 48 typedef struct CalibDbV2_BayerNrV1_Calib_s { 49 // M4_STRUCT_LIST_DESC("Setting", M4_SIZE_DYNAMIC, "double_index_list") 50 CalibDbV2_BayerNrV1_C_Set_t *Setting; 51 int Setting_len; 52 } CalibDbV2_BayerNrV1_Calib_t; 53 54 typedef struct CalibDbV2_BayerNrV1_T_ISO_s { 55 // M4_NUMBER_MARK_DESC("iso", "f32", M4_RANGE(50, 204800), "50", M4_DIGIT(1), "index2") 56 float iso; 57 // M4_BOOL_DESC("gauss_en", "1") 58 bool gauss_en; 59 // M4_NUMBER_DESC("filtPara", "f32", M4_RANGE(0, 15.9), "0.0", M4_DIGIT(1)) 60 float filtPara; 61 // M4_NUMBER_DESC("lamda", "f32", M4_RANGE(0, 16383), "0.0", M4_DIGIT(0)) 62 float lamda; 63 // M4_NUMBER_DESC("fixW0", "f32", M4_RANGE(0, 1.0), "0.0", M4_DIGIT(1)) 64 float fixW0; 65 // M4_NUMBER_DESC("fixW1", "f32", M4_RANGE(0, 1.0), "0.0", M4_DIGIT(1)) 66 float fixW1; 67 // M4_NUMBER_DESC("fixW2", "f32", M4_RANGE(0, 1.0), "0.0", M4_DIGIT(1)) 68 float fixW2; 69 // M4_NUMBER_DESC("fixW3", "f32", M4_RANGE(0, 1.0), "0.0", M4_DIGIT(1)) 70 float fixW3; 71 // M4_NUMBER_DESC("RGainOff", "f32", M4_RANGE(0, 1.0), "0.0", M4_DIGIT(1), M4_HIDE(1)) 72 float RGainOff; 73 // M4_NUMBER_DESC("RGainFilp", "f32", M4_RANGE(0, 1.0), "0.0", M4_DIGIT(1), M4_HIDE(1)) 74 float RGainFilp; 75 // M4_NUMBER_DESC("BGainOff", "f32", M4_RANGE(0, 1.0), "0.0", M4_DIGIT(1), M4_HIDE(1)) 76 float BGainOff; 77 // M4_NUMBER_DESC("BGainFilp", "f32", M4_RANGE(0, 1.0), "0.0", M4_DIGIT(1), M4_HIDE(1)) 78 float BGainFilp; 79 } CalibDbV2_BayerNrV1_T_ISO_t; 80 81 typedef struct CalibDbV2_BayerNrV1_T_Set_s { 82 // M4_STRING_MARK_DESC("SNR_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "LSNR",M4_DYNAMIC(0), "index1") 83 char *SNR_Mode; 84 // M4_STRING_DESC("Sensor_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "lcg", M4_DYNAMIC(0)) 85 char *Sensor_Mode; 86 // M4_STRUCT_LIST_DESC("Tuning_ISO", M4_SIZE_DYNAMIC, "double_index_list") 87 CalibDbV2_BayerNrV1_T_ISO_t *Tuning_ISO; 88 int Tuning_ISO_len; 89 } CalibDbV2_BayerNrV1_T_Set_t; 90 91 typedef struct CalibDbV2_BayerNrV1_Tuning_s { 92 // M4_BOOL_DESC("enable", "1") 93 bool enable; 94 // M4_STRUCT_LIST_DESC("Setting", M4_SIZE_DYNAMIC, "double_index_list") 95 CalibDbV2_BayerNrV1_T_Set_t *Setting; 96 int Setting_len; 97 } CalibDbV2_BayerNrV1_Tuning_t; 98 99 typedef struct CalibDbV2_BayerNrV1_s { 100 // M4_STRING_DESC("Version", M4_SIZE(1,1), M4_RANGE(0, 64), "V1", M4_DYNAMIC(0)) 101 char *Version; 102 // M4_STRUCT_DESC("CalibPara", "normal_ui_style") 103 CalibDbV2_BayerNrV1_Calib_t CalibPara; 104 // M4_STRUCT_DESC("TuningPara", "normal_ui_style") 105 CalibDbV2_BayerNrV1_Tuning_t TuningPara; 106 } CalibDbV2_BayerNrV1_t; 107 108 RKAIQ_END_DECLARE 109 110 #endif 111