1 /*
2 * Copyright (c) 2019 Rockchip Corporation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 */
17
18 #include "adehaze_xml2json.h"
19
convertDehazeCalib2CalibV2(CamCalibDbContext_t * calibv1,CamCalibDbV2Context_t * calibv2)20 void convertDehazeCalib2CalibV2(CamCalibDbContext_t *calibv1, CamCalibDbV2Context_t *calibv2) {
21
22 //len
23 CalibDbV2_dehaze_v10_t* calibv2_adehaze_calib_V20 =
24 (CalibDbV2_dehaze_v10_t*)(CALIBDBV2_GET_MODULE_PTR(calibv2, adehaze_calib));
25 if (calibv2_adehaze_calib_V20) {
26 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len = 9;
27 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_min_th_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
28 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_max_th_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
29 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.yhist_th_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
30 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.yblk_th_len = 9;
31 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dark_th_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
32 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.bright_max_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
33 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.bright_min_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
34 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.wt_max_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
35 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_max_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
36 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_min_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
37 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.tmax_max_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
38 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.tmax_base_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
39 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.tmax_off_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
40 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.cfg_wt_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
41 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.cfg_air_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
42 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.cfg_tmax_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
43 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_thed_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
44 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_weitcur_len = 9;
45 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_weitcur_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
46 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_thed_len = calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO_len;
47
48 calibv2_adehaze_calib_V20->DehazeTuningPara.enhance_setting.EnhanceData.ISO_len = 9;
49 calibv2_adehaze_calib_V20->DehazeTuningPara.enhance_setting.EnhanceData.enhance_value_len = calibv2_adehaze_calib_V20->DehazeTuningPara.enhance_setting.EnhanceData.ISO_len;
50
51 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.ISO_len = 9;
52 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_gratio_len = calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.ISO_len;
53 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_th_off_len = calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.ISO_len;
54 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_k_len = calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.ISO_len;
55 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_min_len = calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.ISO_len;
56 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_scale_len = calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.ISO_len;
57 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.cfg_gratio_len = calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.ISO_len;
58 }
59
60 CalibDbV2_dehaze_v11_t* calibv2_adehaze_calib_V21 =
61 (CalibDbV2_dehaze_v11_t*)(CALIBDBV2_GET_MODULE_PTR(calibv2, adehaze_calib));
62 if (calibv2_adehaze_calib_V21) {
63 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len = 9;
64 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dc_min_th_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
65 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dc_max_th_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
66 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.yhist_th_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
67 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.yblk_th_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
68 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dark_th_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
69 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.bright_max_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
70 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.bright_min_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
71 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.wt_max_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
72 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.air_max_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
73 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.air_min_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
74 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.tmax_max_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
75 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.tmax_base_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
76 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.tmax_off_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
77 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.cfg_wt_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
78 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.cfg_air_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
79 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.cfg_tmax_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
80 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dc_weitcur_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
81 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.bf_weight_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
82 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.range_sigma_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
83 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.space_sigma_pre_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
84 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.space_sigma_cur_len = calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv_len;
85
86 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.EnvLv_len = 9;
87 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.enhance_value_len = calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.EnvLv_len;
88 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.enhance_chroma_len = calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.EnvLv_len;
89
90 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.EnvLv_len = 9;
91 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_gratio_len = calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.EnvLv_len;
92 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_th_off_len = calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.EnvLv_len;
93 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_k_len = calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.EnvLv_len;
94 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_min_len = calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.EnvLv_len;
95 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_scale_len = calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.EnvLv_len;
96 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.cfg_gratio_len = calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.EnvLv_len;
97 }
98
99 //malloc
100 if (calibv2_adehaze_calib_V20) {
101 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO = (float *) malloc(sizeof(float) * 9);
102 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_min_th = (float *) malloc(sizeof(float) * 9);
103 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_max_th = (float *) malloc(sizeof(float) * 9);
104 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.yhist_th = (float *) malloc(sizeof(float) * 9);
105 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.yblk_th = (float *) malloc(sizeof(float) * 9);
106 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dark_th = (float *) malloc(sizeof(float) * 9);
107 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.bright_max = (float *) malloc(sizeof(float) * 9);
108 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.bright_min = (float *) malloc(sizeof(float) * 9);
109 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.wt_max = (float *) malloc(sizeof(float) * 9);
110 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_max = (float *) malloc(sizeof(float) * 9);
111 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_min = (float *) malloc(sizeof(float) * 9);
112 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.tmax_max = (float *) malloc(sizeof(float) * 9);
113 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.tmax_base = (float *) malloc(sizeof(float) * 9);
114 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.tmax_off = (float *) malloc(sizeof(float) * 9);
115 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.cfg_wt = (float *) malloc(sizeof(float) * 9);
116 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.cfg_air = (float *) malloc(sizeof(float) * 9);
117 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.cfg_tmax = (float *) malloc(sizeof(float) * 9);
118 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_thed = (float *) malloc(sizeof(float) * 9);
119 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_weitcur = (float *) malloc(sizeof(float) * 9);
120 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_weitcur = (float *) malloc(sizeof(float) * 9);
121 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_thed = (float *) malloc(sizeof(float) * 9);
122
123 calibv2_adehaze_calib_V20->DehazeTuningPara.enhance_setting.EnhanceData.ISO = (float *) malloc(sizeof(float) * 9);
124 calibv2_adehaze_calib_V20->DehazeTuningPara.enhance_setting.EnhanceData.enhance_value = (float *) malloc(sizeof(float) * 9);
125
126 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.ISO = (float *) malloc(sizeof(float) * 9);
127 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_gratio = (float *) malloc(sizeof(float) * 9);
128 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_th_off = (float *) malloc(sizeof(float) * 9);
129 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_k = (float *) malloc(sizeof(float) * 9);
130 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_min = (float *) malloc(sizeof(float) * 9);
131 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_scale = (float *) malloc(sizeof(float) * 9);
132 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.cfg_gratio = (float *) malloc(sizeof(float) * 9);
133 }
134
135 if (calibv2_adehaze_calib_V21) {
136 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv = (float *) malloc(sizeof(float) * 9);
137 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dc_min_th = (float *) malloc(sizeof(float) * 9);
138 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dc_max_th = (float *) malloc(sizeof(float) * 9);
139 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.yhist_th = (float *) malloc(sizeof(float) * 9);
140 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.yblk_th = (float *) malloc(sizeof(float) * 9);
141 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dark_th = (float *) malloc(sizeof(float) * 9);
142 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.bright_max = (float *) malloc(sizeof(float) * 9);
143 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.bright_min = (float *) malloc(sizeof(float) * 9);
144 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.wt_max = (float *) malloc(sizeof(float) * 9);
145 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.air_max = (float *) malloc(sizeof(float) * 9);
146 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.air_min = (float *) malloc(sizeof(float) * 9);
147 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.tmax_max = (float *) malloc(sizeof(float) * 9);
148 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.tmax_base = (float *) malloc(sizeof(float) * 9);
149 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.tmax_off = (float *) malloc(sizeof(float) * 9);
150 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.cfg_wt = (float *) malloc(sizeof(float) * 9);
151 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.cfg_air = (float *) malloc(sizeof(float) * 9);
152 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.cfg_tmax = (float *) malloc(sizeof(float) * 9);
153 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dc_weitcur = (float *) malloc(sizeof(float) * 9);
154 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.bf_weight = (float *) malloc(sizeof(float) * 9);
155 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.range_sigma = (float *) malloc(sizeof(float) * 9);
156 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.space_sigma_pre = (float *) malloc(sizeof(float) * 9);
157 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.space_sigma_cur = (float *) malloc(sizeof(float) * 9);
158
159 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.EnvLv = (float *) malloc(sizeof(float) * 9);
160 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.enhance_value = (float *) malloc(sizeof(float) * 9);
161 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.enhance_chroma = (float *) malloc(sizeof(float) * 9);
162
163 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.EnvLv = (float *) malloc(sizeof(float) * 9);
164 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_gratio = (float *) malloc(sizeof(float) * 9);
165 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_th_off = (float *) malloc(sizeof(float) * 9);
166 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_k = (float *) malloc(sizeof(float) * 9);
167 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_min = (float *) malloc(sizeof(float) * 9);
168 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_scale = (float *) malloc(sizeof(float) * 9);
169 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.cfg_gratio = (float *) malloc(sizeof(float) * 9);
170 }
171
172 //dehaze v20
173 if (CHECK_ISP_HW_V20()) {
174 CalibDb_Dehaze_t* calibv1_dehaze_isp20 =
175 (CalibDb_Dehaze_t*)CALIBDB_GET_MODULE_PTR((void*)calibv1, dehaze);
176 calibv2_adehaze_calib_V20->DehazeTuningPara.Enable = calibv1_dehaze_isp20->calib_v20[0].en ? true : false;
177 calibv2_adehaze_calib_V20->DehazeTuningPara.cfg_alpha = calibv1_dehaze_isp20->calib_v20[0].cfg_alpha;
178 calibv2_adehaze_calib_V20->DehazeTuningPara.ByPassThr = 0;
179 //dehaze
180 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.en = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.en ? true : false;
181 for(int i = 0; i < 9; i++) {
182 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.ISO[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.iso[i];
183 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_min_th[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.dc_min_th[i];
184 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_max_th[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.dc_max_th[i];
185 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.yhist_th[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.yhist_th[i];
186 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.yblk_th[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.yblk_th[i];
187 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dark_th[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.dark_th[i];
188 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.bright_max[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.bright_max[i];
189 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.bright_min[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.bright_min[i];
190 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.wt_max[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.wt_max[i];
191 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_max[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.air_max[i];
192 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_min[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.air_min[i];
193 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.tmax_base[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.tmax_base[i];
194 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.tmax_off[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.tmax_off[i];
195 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.tmax_max[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.tmax_max[i];
196 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.cfg_wt[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.cfg_wt[i];
197 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.cfg_air[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.cfg_air[i];
198 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.cfg_tmax[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.cfg_tmax[i];
199 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_thed[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.dc_thed[i];
200 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.dc_weitcur[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.dc_weitcur[i];
201 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_thed[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.air_thed[i];
202 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.DehazeData.air_weitcur[i] = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.air_weitcur[i];
203 }
204 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.stab_fnum = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.IIR_setting.stab_fnum;
205 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.sigma = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.IIR_setting.sigma;
206 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.wt_sigma = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.IIR_setting.wt_sigma;
207 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.air_sigma = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.IIR_setting.air_sigma;
208 calibv2_adehaze_calib_V20->DehazeTuningPara.dehaze_setting.tmax_sigma = calibv1_dehaze_isp20->calib_v20[0].dehaze_setting.IIR_setting.tmax_sigma;
209 //enhance
210 calibv2_adehaze_calib_V20->DehazeTuningPara.enhance_setting.en = calibv1_dehaze_isp20->calib_v20[0].enhance_setting.en ? true : false;
211 for(int i = 0; i < 9; i++) {
212 calibv2_adehaze_calib_V20->DehazeTuningPara.enhance_setting.EnhanceData.ISO[i] = calibv1_dehaze_isp20->calib_v20[0].enhance_setting.iso[i];
213 calibv2_adehaze_calib_V20->DehazeTuningPara.enhance_setting.EnhanceData.enhance_value[i] = calibv1_dehaze_isp20->calib_v20[0].enhance_setting.enhance_value[i];
214 }
215 //hist
216 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.en = calibv1_dehaze_isp20->calib_v20[0].hist_setting.en ? true : false;
217 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.hist_para_en = calibv1_dehaze_isp20->calib_v20[0].hist_setting.hist_para_en[0] ? true : false;
218 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.hist_channel = calibv1_dehaze_isp20->calib_v20[0].hist_setting.hist_channel[0] ? true : false;
219 for(int i = 0; i < 9; i++) {
220 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.ISO[i] = calibv1_dehaze_isp20->calib_v20[0].hist_setting.iso[i];
221 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_gratio[i] = calibv1_dehaze_isp20->calib_v20[0].hist_setting.hist_gratio[i];
222 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_th_off[i] = calibv1_dehaze_isp20->calib_v20[0].hist_setting.hist_th_off[i];
223 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_k[i] = calibv1_dehaze_isp20->calib_v20[0].hist_setting.hist_k[i];
224 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_min[i] = calibv1_dehaze_isp20->calib_v20[0].hist_setting.hist_min[i];
225 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.hist_scale[i] = calibv1_dehaze_isp20->calib_v20[0].hist_setting.hist_scale[i];
226 calibv2_adehaze_calib_V20->DehazeTuningPara.hist_setting.HistData.cfg_gratio[i] = calibv1_dehaze_isp20->calib_v20[0].hist_setting.cfg_gratio[i];
227 }
228 }
229
230 //dehaze v21
231 if (CHECK_ISP_HW_V21()) {
232 CalibDb_Dehaze_Isp21_t* calibv1_dehaze_isp21 =
233 (CalibDb_Dehaze_Isp21_t*)CALIBDB_GET_MODULE_PTR((void*)calibv1, dehaze);
234 float EnvLv[9] = {0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 0.9, 1};
235 calibv2_adehaze_calib_V21->DehazeTuningPara.Enable = calibv1_dehaze_isp21->calib_v21[0].en ? true : false;
236 calibv2_adehaze_calib_V21->DehazeTuningPara.cfg_alpha = calibv1_dehaze_isp21->calib_v21[0].cfg_alpha;
237 calibv2_adehaze_calib_V21->DehazeTuningPara.ByPassThr = 0;
238 //dehaze
239 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.en = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.en ? true : false;
240 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.air_lc_en = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.air_lc_en[0] ? true : false;
241 for(int i = 0; i < 9; i++) {
242 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.EnvLv[i] = EnvLv[i];
243 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dc_min_th[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.dc_min_th[i];
244 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dc_max_th[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.dc_max_th[i];
245 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.yhist_th[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.yhist_th[i];
246 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.yblk_th[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.yblk_th[i];
247 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dark_th[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.dark_th[i];
248 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.bright_max[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.bright_max[i];
249 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.bright_min[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.bright_min[i];
250 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.wt_max[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.wt_max[i];
251 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.air_max[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.air_max[i];
252 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.air_min[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.air_min[i];
253 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.tmax_base[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.tmax_base[i];
254 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.tmax_off[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.tmax_off[i];
255 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.tmax_max[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.tmax_max[i];
256 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.cfg_wt[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.cfg_wt[i];
257 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.cfg_air[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.cfg_air[i];
258 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.cfg_tmax[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.cfg_tmax[i];
259 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.dc_weitcur[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.dc_weitcur[i];
260 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.bf_weight[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.bf_weight[i];
261 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.range_sigma[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.range_sigma[i];
262 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.space_sigma_pre[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.space_sigma_pre[i];
263 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.DehazeData.space_sigma_cur[i] = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.space_sigma_cur[i];
264 }
265 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.stab_fnum = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.IIR_setting.stab_fnum;
266 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.sigma = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.IIR_setting.sigma;
267 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.wt_sigma = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.IIR_setting.wt_sigma;
268 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.air_sigma = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.IIR_setting.air_sigma;
269 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.tmax_sigma = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.IIR_setting.tmax_sigma;
270 calibv2_adehaze_calib_V21->DehazeTuningPara.dehaze_setting.pre_wet = calibv1_dehaze_isp21->calib_v21[0].dehaze_setting.IIR_setting.pre_wet;
271 //enhance
272 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.en = calibv1_dehaze_isp21->calib_v21[0].enhance_setting.en ? true : false;
273 for(int i = 0; i < 9; i++) {
274 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.EnvLv[i] = EnvLv[i];
275 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.enhance_value[i] = calibv1_dehaze_isp21->calib_v21[0].enhance_setting.enhance_value[i];
276 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.EnhanceData.enhance_chroma[i] = calibv1_dehaze_isp21->calib_v21[0].enhance_setting.enhance_chroma[i];
277 }
278 for(int i = 0; i < 17; i++)
279 calibv2_adehaze_calib_V21->DehazeTuningPara.enhance_setting.enhance_curve[i] = calibv1_dehaze_isp21->calib_v21[0].enhance_setting.enhance_curve[i];
280 //hist
281 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.en = calibv1_dehaze_isp21->calib_v21[0].hist_setting.en ? true : false;
282 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.hist_para_en = calibv1_dehaze_isp21->calib_v21[0].hist_setting.hist_para_en[0] ? true : false;
283 for(int i = 0; i < 9; i++) {
284 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.EnvLv[i] = EnvLv[i];
285 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_gratio[i] = calibv1_dehaze_isp21->calib_v21[0].hist_setting.hist_gratio[i];
286 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_th_off[i] = calibv1_dehaze_isp21->calib_v21[0].hist_setting.hist_th_off[i];
287 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_k[i] = calibv1_dehaze_isp21->calib_v21[0].hist_setting.hist_k[i];
288 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_min[i] = calibv1_dehaze_isp21->calib_v21[0].hist_setting.hist_min[i];
289 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.hist_scale[i] = calibv1_dehaze_isp21->calib_v21[0].hist_setting.hist_scale[i];
290 calibv2_adehaze_calib_V21->DehazeTuningPara.hist_setting.HistData.cfg_gratio[i] = calibv1_dehaze_isp21->calib_v21[0].hist_setting.cfg_gratio[i];
291 }
292 }
293
294 }
295
296