xref: /OK3568_Linux_fs/external/camera_engine_rkaiq/rkaiq/include/iq_parser_v2/agic_head.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2  * agic_head.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_AGIC_HEAD_H__
21 #define __CALIBDBV2_AGIC_HEAD_H__
22 
23 #include "rk_aiq_comm.h"
24 
25 RKAIQ_BEGIN_DECLARE
26 
27 typedef struct Gic_setting_v20_s {
28     // M4_ARRAY_DESC("ISO", "f32", M4_SIZE(1,100), M4_RANGE(0,10000000), "50",M4_DIGIT(4), M4_DYNAMIC(1))
29     float* ISO;
30     int ISO_len;
31     // M4_ARRAY_DESC("min_busy_thre", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "160",M4_DIGIT(4), M4_DYNAMIC(1))
32     float* min_busy_thre;
33     int min_busy_thre_len;
34     // M4_ARRAY_DESC("min_grad_thr1", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "32",M4_DIGIT(4), M4_DYNAMIC(1))
35     float* min_grad_thr1;
36     int min_grad_thr1_len;
37     // M4_ARRAY_DESC("min_grad_thr2", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "32",M4_DIGIT(4), M4_DYNAMIC(1))
38     float* min_grad_thr2;
39     int min_grad_thr2_len;
40     // M4_ARRAY_DESC("k_grad1", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "5",M4_DIGIT(4), M4_DYNAMIC(1))
41     float* k_grad1;
42     int k_grad1_len;
43     // M4_ARRAY_DESC("k_grad2", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "1",M4_DIGIT(4), M4_DYNAMIC(1))
44     float* k_grad2;
45     int k_grad2_len;
46     // M4_ARRAY_DESC("gb_thre", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "7",M4_DIGIT(4), M4_DYNAMIC(1))
47     float* gb_thre;
48     int gb_thre_len;
49     // M4_ARRAY_DESC("maxCorV", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "40",M4_DIGIT(4), M4_DYNAMIC(1))
50     float* maxCorV;
51     int maxCorV_len;
52     // M4_ARRAY_DESC("maxCorVboth", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "8",M4_DIGIT(4), M4_DYNAMIC(1))
53     float* maxCorVboth;
54     int maxCorVboth_len;
55     // M4_ARRAY_DESC("dark_thre", "f32", M4_SIZE(1,100), M4_RANGE(0,2047), "120",M4_DIGIT(4), M4_DYNAMIC(1))
56     float* dark_thre;
57     int dark_thre_len;
58     // M4_ARRAY_DESC("dark_threHi", "f32", M4_SIZE(1,100), M4_RANGE(0,2047), "240",M4_DIGIT(4), M4_DYNAMIC(1))
59     float* dark_threHi;
60     int dark_threHi_len;
61     // M4_ARRAY_DESC("k_grad1_dark", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "6",M4_DIGIT(4), M4_DYNAMIC(1))
62     float* k_grad1_dark;
63     int k_grad1_dark_len;
64     // M4_ARRAY_DESC("k_grad2_dark", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "1",M4_DIGIT(4), M4_DYNAMIC(1))
65     float* k_grad2_dark;
66     int k_grad2_dark_len;
67     // M4_ARRAY_DESC("min_grad_thr_dark1", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "64",M4_DIGIT(4), M4_DYNAMIC(1))
68     float* min_grad_thr_dark1;
69     int min_grad_thr_dark1_len;
70     // M4_ARRAY_DESC("min_grad_thr_dark2", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "32",M4_DIGIT(4), M4_DYNAMIC(1))
71     float* min_grad_thr_dark2;
72     int min_grad_thr_dark2_len;
73     // M4_ARRAY_DESC("noiseCurve_0", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
74     float* noiseCurve_0;
75     int noiseCurve_0_len;
76     // M4_ARRAY_DESC("noiseCurve_1", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
77     float* noiseCurve_1;
78     int noiseCurve_1_len;
79     // M4_ARRAY_DESC("GValueLimitLo", "f32", M4_SIZE(1,100), M4_RANGE(0,4095), "1280",M4_DIGIT(4), M4_DYNAMIC(1))
80     float* GValueLimitLo;
81     int GValueLimitLo_len;
82     // M4_ARRAY_DESC("GValueLimitHi", "f32", M4_SIZE(1,100), M4_RANGE(0,4095), "1760",M4_DIGIT(4), M4_DYNAMIC(1))
83     float* GValueLimitHi;
84     int GValueLimitHi_len;
85     // M4_ARRAY_DESC("textureStrength", "f32", M4_SIZE(1,100), M4_RANGE(0,2), "1",M4_DIGIT(4), M4_DYNAMIC(1))
86     float* textureStrength;
87     int textureStrength_len;
88     // M4_ARRAY_DESC("ScaleLo", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
89     float* ScaleLo;
90     int ScaleLo_len;
91     // M4_ARRAY_DESC("ScaleHi", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
92     float* ScaleHi;
93     int ScaleHi_len;
94     // M4_ARRAY_DESC("globalStrength", "f32", M4_SIZE(1,100), M4_RANGE(0,2), "1",M4_DIGIT(4), M4_DYNAMIC(1))
95     float* globalStrength;
96     int globalStrength_len;
97     // M4_ARRAY_DESC("noise_coea", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
98     float* noise_coea;
99     int noise_coea_len;
100     // M4_ARRAY_DESC("noise_coeb", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
101     float* noise_coeb;
102     int noise_coeb_len;
103     // M4_ARRAY_DESC("diff_clip", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
104     float* diff_clip;
105     int diff_clip_len;
106 } Gic_setting_v20_t;
107 
108 typedef struct Gic_setting_v21_s {
109     // M4_ARRAY_DESC("ISO", "f32", M4_SIZE(1,100), M4_RANGE(0,10000000), "50",M4_DIGIT(4), M4_DYNAMIC(1))
110     float* ISO;
111     int ISO_len;
112     // M4_ARRAY_DESC("min_busy_thre", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "160",M4_DIGIT(4), M4_DYNAMIC(1))
113     float* min_busy_thre;
114     int min_busy_thre_len;
115     // M4_ARRAY_DESC("min_grad_thr1", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "32",M4_DIGIT(4), M4_DYNAMIC(1))
116     float* min_grad_thr1;
117     int min_grad_thr1_len;
118     // M4_ARRAY_DESC("min_grad_thr2", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "32",M4_DIGIT(4), M4_DYNAMIC(1))
119     float* min_grad_thr2;
120     int min_grad_thr2_len;
121     // M4_ARRAY_DESC("k_grad1", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "5",M4_DIGIT(4), M4_DYNAMIC(1))
122     float* k_grad1;
123     int k_grad1_len;
124     // M4_ARRAY_DESC("k_grad2", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "1",M4_DIGIT(4), M4_DYNAMIC(1))
125     float* k_grad2;
126     int k_grad2_len;
127     // M4_ARRAY_DESC("gb_thre", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "7",M4_DIGIT(4), M4_DYNAMIC(1))
128     float* gb_thre;
129     int gb_thre_len;
130     // M4_ARRAY_DESC("maxCorV", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "40",M4_DIGIT(4), M4_DYNAMIC(1))
131     float* maxCorV;
132     int maxCorV_len;
133     // M4_ARRAY_DESC("maxCorVboth", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "8",M4_DIGIT(4), M4_DYNAMIC(1))
134     float* maxCorVboth;
135     int maxCorVboth_len;
136     // M4_ARRAY_DESC("dark_thre", "f32", M4_SIZE(1,100), M4_RANGE(0,2047), "120",M4_DIGIT(4), M4_DYNAMIC(1))
137     float* dark_thre;
138     int dark_thre_len;
139     // M4_ARRAY_DESC("dark_threHi", "f32", M4_SIZE(1,100), M4_RANGE(0,2047), "240",M4_DIGIT(4), M4_DYNAMIC(1))
140     float* dark_threHi;
141     int dark_threHi_len;
142     // M4_ARRAY_DESC("k_grad1_dark", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "6",M4_DIGIT(4), M4_DYNAMIC(1))
143     float* k_grad1_dark;
144     int k_grad1_dark_len;
145     // M4_ARRAY_DESC("k_grad2_dark", "f32", M4_SIZE(1,100), M4_RANGE(0,15), "1",M4_DIGIT(4), M4_DYNAMIC(1))
146     float* k_grad2_dark;
147     int k_grad2_dark_len;
148     // M4_ARRAY_DESC("min_grad_thr_dark1", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "64",M4_DIGIT(4), M4_DYNAMIC(1))
149     float* min_grad_thr_dark1;
150     int min_grad_thr_dark1_len;
151     // M4_ARRAY_DESC("min_grad_thr_dark2", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "32",M4_DIGIT(4), M4_DYNAMIC(1))
152     float* min_grad_thr_dark2;
153     int min_grad_thr_dark2_len;
154     // M4_ARRAY_DESC("noiseCurve_0", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
155     float* noiseCurve_0;
156     int noiseCurve_0_len;
157     // M4_ARRAY_DESC("noiseCurve_1", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
158     float* noiseCurve_1;
159     int noiseCurve_1_len;
160     // M4_ARRAY_DESC("NoiseScale", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
161     float* NoiseScale;
162     int NoiseScale_len;
163     // M4_ARRAY_DESC("NoiseBase", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
164     float* NoiseBase;
165     int NoiseBase_len;
166     // M4_ARRAY_DESC("globalStrength", "f32", M4_SIZE(1,100), M4_RANGE(0,2), "1",M4_DIGIT(4), M4_DYNAMIC(1))
167     float* globalStrength;
168     int globalStrength_len;
169     // M4_ARRAY_DESC("diff_clip", "f32", M4_SIZE(1,100), M4_RANGE(0,1023), "0",M4_DIGIT(4), M4_DYNAMIC(1))
170     float* diff_clip;
171     int diff_clip_len;
172 } Gic_setting_v21_t;
173 
174 typedef struct CalibDbGicV20_s {
175     // M4_BOOL_DESC("enable", "0")
176     bool                enable;
177     // M4_BOOL_DESC("edge_en", "0")
178     bool                edge_en;
179     // M4_BOOL_DESC("noise_cut_en", "0")
180     bool                noise_cut_en;
181     // M4_NUMBER_DESC("gr_ration", "u8", M4_RANGE(0,3), "0", M4_DIGIT(0))
182     unsigned char              gr_ration;
183     // M4_ARRAY_TABLE_DESC("GicData", "array_table_ui","none")
184     Gic_setting_v20_t GicData;
185 } CalibDbGicV20_t;
186 
187 typedef struct CalibDbV2_Gic_V20_s {
188     // M4_STRUCT_DESC("GicTuningPara", "normal_ui_style")
189     CalibDbGicV20_t GicTuningPara;
190 } CalibDbV2_Gic_V20_t;
191 
192 typedef struct CalibDbGicV21_s {
193     // M4_BOOL_DESC("enable", "0")
194     bool                enable;
195     // M4_NUMBER_DESC("gr_ration", "u8", M4_RANGE(0,3), "0", M4_DIGIT(0))
196     unsigned char              gr_ration;
197     // M4_ARRAY_TABLE_DESC("GicData", "array_table_ui", "none")
198     Gic_setting_v21_t GicData;
199 } CalibDbGicV21_t;
200 
201 typedef struct CalibDbV2_Gic_V21_s {
202     // M4_STRUCT_DESC("GicTuningPara", "normal_ui_style")
203     CalibDbGicV21_t GicTuningPara;
204 } CalibDbV2_Gic_V21_t;
205 
206 
207 RKAIQ_END_DECLARE
208 
209 #endif
210