/* * bayernr_head_v1.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_BAYERNR_HEADER_V2_H__ #define __CALIBDBV2_BAYERNR_HEADER_V2_H__ #include "rk_aiq_comm.h" RKAIQ_BEGIN_DECLARE ////////////////////////bayernr V2////////////////////////////////////// typedef struct CalibDbV2_BayerNrV2_CalibPara_Setting_ISO_s { // M4_NUMBER_MARK_DESC("iso", "f32", M4_RANGE(50, 204800), "50", M4_DIGIT(1), "index2") float iso; // M4_ARRAY_DESC("lumapoint", "s32", M4_SIZE(1,16), M4_RANGE(0,65535), "0.0", M4_DIGIT(0), M4_DYNAMIC(0)) int lumapoint[16]; // M4_ARRAY_DESC("sigma", "s32", M4_SIZE(1,16), M4_RANGE(0,65535), "0.0", M4_DIGIT(0), M4_DYNAMIC(0)) int sigma[16]; } CalibDbV2_BayerNrV2_CalibPara_Setting_ISO_t; typedef struct CalibDbV2_BayerNrV2_CalibPara_Setting_s { // M4_STRING_MARK_DESC("SNR_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "LSNR",M4_DYNAMIC(0), "index1") char *SNR_Mode; // M4_STRING_DESC("Sensor_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "lcg", M4_DYNAMIC(0)) char *Sensor_Mode; // M4_STRUCT_LIST_DESC("Calib_ISO", M4_SIZE_DYNAMIC, "double_index_list") CalibDbV2_BayerNrV2_CalibPara_Setting_ISO_t *Calib_ISO; int Calib_ISO_len; } CalibDbV2_BayerNrV2_CalibPara_Setting_t; typedef struct CalibDbV2_BayerNrV2_CalibPara_s { // M4_STRUCT_LIST_DESC("Setting", M4_SIZE_DYNAMIC, "double_index_list") CalibDbV2_BayerNrV2_CalibPara_Setting_t *Setting; int Setting_len; } CalibDbV2_BayerNrV2_CalibPara_t; typedef struct CalibDbV2_BayerNrV2_Bayernr2d_Setting_ISO_s { // M4_NUMBER_MARK_DESC("iso", "f32", M4_RANGE(50, 204800), "50", M4_DIGIT(1), "index2") float iso; // M4_BOOL_DESC("gauss_guide", "1") bool gauss_guide; // M4_NUMBER_DESC("filter_strength", "f32", M4_RANGE(0, 16), "0.5", M4_DIGIT(2)) float filter_strength; // M4_NUMBER_DESC("edgesofts", "f32", M4_RANGE(0, 1.0), "1.0", M4_DIGIT(2)) float edgesofts; // M4_NUMBER_DESC("ratio", "f32", M4_RANGE(0, 1.0), "0.2", M4_DIGIT(2)) float ratio; // M4_NUMBER_DESC("weight", "f32", M4_RANGE(0, 1.0), "1.0", M4_DIGIT(2)) float weight; } CalibDbV2_BayerNrV2_Bayernr2d_Setting_ISO_t; typedef struct CalibDbV2_BayerNrV2_Bayernr2d_Setting_s { // M4_STRING_MARK_DESC("SNR_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "LSNR",M4_DYNAMIC(0), "index1") char *SNR_Mode; // M4_STRING_DESC("Sensor_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "lcg", M4_DYNAMIC(0)) char *Sensor_Mode; // M4_STRUCT_LIST_DESC("Tuning_ISO", M4_SIZE_DYNAMIC, "double_index_list") CalibDbV2_BayerNrV2_Bayernr2d_Setting_ISO_t *Tuning_ISO; int Tuning_ISO_len; } CalibDbV2_BayerNrV2_Bayernr2d_Setting_t; typedef struct CalibDbV2_BayerNrV2_Bayernr2d_s { // M4_BOOL_DESC("enable", "1") bool enable; // M4_STRUCT_LIST_DESC("Setting", M4_SIZE_DYNAMIC, "double_index_list") CalibDbV2_BayerNrV2_Bayernr2d_Setting_t *Setting; int Setting_len; } CalibDbV2_BayerNrV2_Bayernr2d_t; typedef struct CalibDbV2_BayerNrV2_Bayernr3d_Setting_ISO_s { // M4_NUMBER_MARK_DESC("iso", "f32", M4_RANGE(50, 204800), "50", M4_DIGIT(1), "index2") float iso; // M4_NUMBER_DESC("filter_strength", "f32", M4_RANGE(0, 1), "0.5", M4_DIGIT(2)) float filter_strength; // M4_NUMBER_DESC("sp_filter_strength", "f32", M4_RANGE(0, 1), "0.5", M4_DIGIT(2), M4_HIDE(1)) float sp_filter_strength; // M4_NUMBER_DESC("lo_clipwgt", "f32", M4_RANGE(0, 1.0), "0.01", M4_DIGIT(3)) float lo_clipwgt; // M4_NUMBER_DESC("hi_clipwgt", "f32", M4_RANGE(0, 1.0), "0.01", M4_DIGIT(3)) float hi_clipwgt; // M4_NUMBER_DESC("softwgt", "f32", M4_RANGE(0, 1), "0.0", M4_DIGIT(2)) float softwgt; } CalibDbV2_BayerNrV2_Bayernr3d_Setting_ISO_t; typedef struct CalibDbV2_BayerNrV2_Bayernr3d_Setting_s { // M4_STRING_MARK_DESC("SNR_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "LSNR",M4_DYNAMIC(0), "index1") char *SNR_Mode; // M4_STRING_DESC("Sensor_Mode", M4_SIZE(1,1), M4_RANGE(0, 64), "lcg", M4_DYNAMIC(0)) char *Sensor_Mode; // M4_STRUCT_LIST_DESC("Tuning_ISO", M4_SIZE_DYNAMIC, "double_index_list") CalibDbV2_BayerNrV2_Bayernr3d_Setting_ISO_t *Tuning_ISO; int Tuning_ISO_len; } CalibDbV2_BayerNrV2_Bayernr3d_Setting_t; typedef struct CalibDbV2_BayerNrV2_Bayernr3d_s { // M4_BOOL_DESC("enable", "1") bool enable; // M4_STRUCT_LIST_DESC("Setting", M4_SIZE_DYNAMIC, "double_index_list") CalibDbV2_BayerNrV2_Bayernr3d_Setting_t *Setting; int Setting_len; } CalibDbV2_BayerNrV2_Bayernr3d_t; typedef struct CalibDbV2_BayerNrV2_s { // M4_STRING_DESC("Version", M4_SIZE(1,1), M4_RANGE(0, 64), "V2", M4_DYNAMIC(0)) char *Version; // M4_STRUCT_DESC("CalibPara", "normal_ui_style") CalibDbV2_BayerNrV2_CalibPara_t CalibPara; // M4_STRUCT_DESC("Bayernr2D", "normal_ui_style") CalibDbV2_BayerNrV2_Bayernr2d_t Bayernr2D; // M4_STRUCT_DESC("Bayernr3D", "normal_ui_style") CalibDbV2_BayerNrV2_Bayernr3d_t Bayernr3D; } CalibDbV2_BayerNrV2_t; RKAIQ_END_DECLARE #endif