Merge ~r41k0u/ubuntu/+source/libcamera:pisp into ubuntu/+source/libcamera:ubuntu/devel
- Git
- lp:~r41k0u/ubuntu/+source/libcamera
- pisp
- Merge into ubuntu/devel
Status: | Needs review |
---|---|
Proposed branch: | ~r41k0u/ubuntu/+source/libcamera:pisp |
Merge into: | ubuntu/+source/libcamera:ubuntu/devel |
Diff against target: |
19095 lines (+19026/-2) 7 files modified
debian/changelog (+16/-0) debian/control (+4/-2) debian/libcamera-dev.install (+2/-0) debian/patches/add_pisp_rpi5.patch (+19000/-0) debian/patches/series (+1/-0) debian/rules (+2/-0) debian/source/include-binaries (+1/-0) |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Simon Quigley (community) | Approve | ||
git-ubuntu import | Pending | ||
Review via email:
|
Commit message
* Add pisp driver for cameras on Raspberry Pi 5
- d/p/add_
by camera modules on the Raspberry Pi 5 (they used unicam till Rpi4)
and other changes required by it. IT only supports IMX219 sensor for
now, but support for all sensors on RPi4 can be added trivially.
- d/p/series: add new patch to series
Description of the change
This patch adds the new pisp driver from the Raspberry Pi Foundation's
fork of libcamera (https:/
The camera module uses the pisp driver instead of unicam on RPi5, so this
patch is essential to make them work.
Unmerged commits
- bb98d86... by Pragyansh Chaturvedi
-
Update maintainer
- 504d3b5... by Pragyansh Chaturvedi
-
changelog
- 890fe15... by Pragyansh Chaturvedi
-
* Add pisp driver for cameras on Raspberry Pi 5
- d/p/add_pisp_rpi5. patch: This patch adds the new pisp driver used
by camera modules on the Raspberry Pi 5 (they used unicam till Rpi4)
and other changes required by it. IT only supports IMX219 sensor for
now, but support for all sensors on RPi4 can be added trivially.
- d/p/series: add new patch to series
- d/vendor: add libpisp source archive
- d/rules: Add custom rules to uncompress libpisp as a subproject
- d/control: add nlohmann-json-dev as dependency for libpisp
- d/s/include-binaries: include libpisp source tarball
- d/libcamera-dev.install: include libpisp installation
Preview Diff
1 | diff --git a/debian/changelog b/debian/changelog | |||
2 | index 83df129..811bf25 100644 | |||
3 | --- a/debian/changelog | |||
4 | +++ b/debian/changelog | |||
5 | @@ -1,3 +1,19 @@ | |||
6 | 1 | libcamera (0.3.2-2ubuntu1) plucky; urgency=medium | ||
7 | 2 | |||
8 | 3 | * Add pisp driver for cameras on Raspberry Pi 5 | ||
9 | 4 | - d/p/add_pisp_rpi5.patch: This patch adds the new pisp driver used | ||
10 | 5 | by camera modules on the Raspberry Pi 5 (they used unicam till Rpi4) | ||
11 | 6 | and other changes required by it. IT only supports IMX219 sensor for | ||
12 | 7 | now, but support for all sensors on RPi4 can be added trivially. | ||
13 | 8 | - d/p/series: add new patch to series | ||
14 | 9 | - d/vendor: add libpisp source archive | ||
15 | 10 | - d/rules: Add custom rules to uncompress libpisp as a subproject | ||
16 | 11 | - d/control: add nlohmann-json-dev as dependency for libpisp | ||
17 | 12 | - d/s/include-binaries: include libpisp source tarball | ||
18 | 13 | - d/libcamera-dev.install: include libpisp installation | ||
19 | 14 | |||
20 | 15 | -- Pragyansh Chaturvedi <pragyansh.chaturvedi@canonical.com> Fri, 22 Nov 2024 17:58:41 +0530 | ||
21 | 16 | |||
22 | 1 | libcamera (0.3.2-2) unstable; urgency=medium | 17 | libcamera (0.3.2-2) unstable; urgency=medium |
23 | 2 | 18 | ||
24 | 3 | [ Helmut Grohne ] | 19 | [ Helmut Grohne ] |
25 | diff --git a/debian/control b/debian/control | |||
26 | index 87985c1..259261d 100644 | |||
27 | --- a/debian/control | |||
28 | +++ b/debian/control | |||
29 | @@ -1,5 +1,6 @@ | |||
30 | 1 | Source: libcamera | 1 | Source: libcamera |
32 | 2 | Maintainer: Debian Multimedia Maintainers <debian-multimedia@lists.debian.org> | 2 | Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> |
33 | 3 | XSBC-Original-Maintainer: Debian Multimedia Maintainers <debian-multimedia@lists.debian.org> | ||
34 | 3 | Uploaders: Emmanuel Arias <emmanuelarias30@gmail.com>, | 4 | Uploaders: Emmanuel Arias <emmanuelarias30@gmail.com>, |
35 | 4 | IOhannes m zmölnig (Debian/GNU) <umlaeute@debian.org>, | 5 | IOhannes m zmölnig (Debian/GNU) <umlaeute@debian.org>, |
36 | 5 | Andrej Shadura <andrewsh@debian.org>, | 6 | Andrej Shadura <andrewsh@debian.org>, |
37 | @@ -29,7 +30,8 @@ Build-Depends: debhelper-compat (= 13), | |||
38 | 29 | python3-ply, | 30 | python3-ply, |
39 | 30 | python3-pybind11 <!pkg.libcamera.nopython>, | 31 | python3-pybind11 <!pkg.libcamera.nopython>, |
40 | 31 | python3-yaml, | 32 | python3-yaml, |
42 | 32 | qt6-base-dev [!i386] <!pkg.libcamera.noqt> | 33 | qt6-base-dev [!i386] <!pkg.libcamera.noqt>, |
43 | 34 | nlohmann-json3-dev [!i386] | ||
44 | 33 | Build-Depends-Indep: doxygen <!nodoc>, | 35 | Build-Depends-Indep: doxygen <!nodoc>, |
45 | 34 | doxygen-latex [!sh4] <!nodoc> | texlive-latex-extra <!nodoc>, | 36 | doxygen-latex [!sh4] <!nodoc> | texlive-latex-extra <!nodoc>, |
46 | 35 | graphviz <!nodoc>, | 37 | graphviz <!nodoc>, |
47 | diff --git a/debian/libcamera-dev.install b/debian/libcamera-dev.install | |||
48 | index 25e9244..442685a 100644 | |||
49 | --- a/debian/libcamera-dev.install | |||
50 | +++ b/debian/libcamera-dev.install | |||
51 | @@ -1,3 +1,5 @@ | |||
52 | 1 | usr/include | 1 | usr/include |
53 | 2 | usr/lib/*/l*.so | 2 | usr/lib/*/l*.so |
54 | 3 | usr/lib/*/pkgconfig/*.pc | 3 | usr/lib/*/pkgconfig/*.pc |
55 | 4 | usr/lib/*/libpisp.so.* | ||
56 | 5 | usr/share/libpisp/* | ||
57 | diff --git a/debian/patches/add_pisp_rpi5.patch b/debian/patches/add_pisp_rpi5.patch | |||
58 | 4 | new file mode 100644 | 6 | new file mode 100644 |
59 | index 0000000..16ff121 | |||
60 | --- /dev/null | |||
61 | +++ b/debian/patches/add_pisp_rpi5.patch | |||
62 | @@ -0,0 +1,19000 @@ | |||
63 | 1 | Description: Add pisp driver to make cameras work on Raspbery Pi 5 | ||
64 | 2 | This patch adds the new pisp driver used on the Raspberry Pi 5 from | ||
65 | 3 | the Raspberry Pi Foundation's fork of libcamera | ||
66 | 4 | (https://github.com/raspberrypi/libcamera) | ||
67 | 5 | The camera module uses the pisp driver instead of unicam on RPi5, | ||
68 | 6 | so this patch is essential to make them work. This only supports | ||
69 | 7 | the IMX219 sensor for now, but it is trivial to add support for | ||
70 | 8 | sensors which already worked on the RPi4. | ||
71 | 9 | Author: Pragyansh Chaturvedi <pragyansh.chaturvedi@canonical.com> | ||
72 | 10 | Last-Update: 2024-11-22 | ||
73 | 11 | --- | ||
74 | 12 | --- a/include/libcamera/ipa/meson.build 2024-11-25 21:08:37.649494681 +0530 | ||
75 | 13 | +++ b/include/libcamera/ipa/meson.build 2024-11-25 21:08:37.634494077 +0530 | ||
76 | 14 | @@ -65,6 +65,7 @@ | ||
77 | 15 | pipeline_ipa_mojom_mapping = { | ||
78 | 16 | 'ipu3': 'ipu3.mojom', | ||
79 | 17 | 'rkisp1': 'rkisp1.mojom', | ||
80 | 18 | + 'rpi/pisp': 'raspberrypi.mojom', | ||
81 | 19 | 'rpi/vc4': 'raspberrypi.mojom', | ||
82 | 20 | 'simple': 'soft.mojom', | ||
83 | 21 | 'vimc': 'vimc.mojom', | ||
84 | 22 | --- a/include/libcamera/meson.build 2024-11-25 21:08:37.649494681 +0530 | ||
85 | 23 | +++ b/include/libcamera/meson.build 2024-11-25 21:08:37.634494077 +0530 | ||
86 | 24 | @@ -36,6 +36,7 @@ | ||
87 | 25 | 'controls': { | ||
88 | 26 | 'draft': 'control_ids_draft.yaml', | ||
89 | 27 | 'core': 'control_ids_core.yaml', | ||
90 | 28 | + 'rpi/pisp': 'control_ids_rpi.yaml', | ||
91 | 29 | 'rpi/vc4': 'control_ids_rpi.yaml', | ||
92 | 30 | }, | ||
93 | 31 | |||
94 | 32 | --- a/meson.build 2024-11-25 21:08:37.649494681 +0530 | ||
95 | 33 | +++ b/meson.build 2024-11-25 21:08:37.634494077 +0530 | ||
96 | 34 | @@ -210,6 +210,7 @@ | ||
97 | 35 | 'ipu3': arch_x86, | ||
98 | 36 | 'mali-c55': arch_arm, | ||
99 | 37 | 'rkisp1': arch_arm, | ||
100 | 38 | + 'rpi/pisp': ['any'], | ||
101 | 39 | 'rpi/vc4': arch_arm, | ||
102 | 40 | 'simple': ['any'], | ||
103 | 41 | 'uvcvideo': ['any'], | ||
104 | 42 | --- a/meson_options.txt 2024-11-25 21:08:37.649494681 +0530 | ||
105 | 43 | +++ b/meson_options.txt 2024-11-25 21:08:37.635494117 +0530 | ||
106 | 44 | @@ -32,7 +32,7 @@ | ||
107 | 45 | |||
108 | 46 | option('ipas', | ||
109 | 47 | type : 'array', | ||
110 | 48 | - choices : ['ipu3', 'rkisp1', 'rpi/vc4', 'simple', 'vimc'], | ||
111 | 49 | + choices : ['ipu3', 'rkisp1', 'rpi/pisp', 'rpi/vc4', 'simple', 'vimc'], | ||
112 | 50 | description : 'Select which IPA modules to build') | ||
113 | 51 | |||
114 | 52 | option('lc-compliance', | ||
115 | 53 | @@ -50,6 +50,7 @@ | ||
116 | 54 | 'ipu3', | ||
117 | 55 | 'mali-c55', | ||
118 | 56 | 'rkisp1', | ||
119 | 57 | + 'rpi/pisp', | ||
120 | 58 | 'rpi/vc4', | ||
121 | 59 | 'simple', | ||
122 | 60 | 'uvcvideo', | ||
123 | 61 | --- a/src/ipa/rpi/cam_helper/cam_helper.cpp 2024-11-25 21:08:37.649494681 +0530 | ||
124 | 62 | +++ b/src/ipa/rpi/cam_helper/cam_helper.cpp 2024-11-25 21:08:37.635494117 +0530 | ||
125 | 63 | @@ -156,6 +156,11 @@ | ||
126 | 64 | } | ||
127 | 65 | } | ||
128 | 66 | |||
129 | 67 | +void CamHelper::setHwConfig(const Controller::HardwareConfig &hwConfig) | ||
130 | 68 | +{ | ||
131 | 69 | + hwConfig_ = hwConfig; | ||
132 | 70 | +} | ||
133 | 71 | + | ||
134 | 72 | void CamHelper::getDelays(int &exposureDelay, int &gainDelay, | ||
135 | 73 | int &vblankDelay, int &hblankDelay) const | ||
136 | 74 | { | ||
137 | 75 | --- a/src/ipa/rpi/cam_helper/cam_helper.h 2024-11-25 21:08:37.649494681 +0530 | ||
138 | 76 | +++ b/src/ipa/rpi/cam_helper/cam_helper.h 2024-11-25 21:08:37.635494117 +0530 | ||
139 | 77 | @@ -76,6 +76,7 @@ | ||
140 | 78 | CamHelper(std::unique_ptr<MdParser> parser, unsigned int frameIntegrationDiff); | ||
141 | 79 | virtual ~CamHelper(); | ||
142 | 80 | void setCameraMode(const CameraMode &mode); | ||
143 | 81 | + void setHwConfig(const Controller::HardwareConfig &hwConfig); | ||
144 | 82 | virtual void prepare(libcamera::Span<const uint8_t> buffer, | ||
145 | 83 | Metadata &metadata); | ||
146 | 84 | virtual void process(StatisticsPtr &stats, Metadata &metadata); | ||
147 | 85 | @@ -108,6 +109,7 @@ | ||
148 | 86 | |||
149 | 87 | std::unique_ptr<MdParser> parser_; | ||
150 | 88 | CameraMode mode_; | ||
151 | 89 | + Controller::HardwareConfig hwConfig_; | ||
152 | 90 | |||
153 | 91 | private: | ||
154 | 92 | /* | ||
155 | 93 | --- a/src/ipa/rpi/common/ipa_base.cpp 2024-11-25 21:08:37.649494681 +0530 | ||
156 | 94 | +++ b/src/ipa/rpi/common/ipa_base.cpp 2024-11-25 21:08:37.636494158 +0530 | ||
157 | 95 | @@ -96,6 +96,13 @@ | ||
158 | 96 | { &controls::LensPosition, ControlInfo(0.0f, 32.0f, 1.0f) } | ||
159 | 97 | }; | ||
160 | 98 | |||
161 | 99 | +/* Platform specific controls */ | ||
162 | 100 | +const std::map<const std::string, ControlInfoMap::Map> platformControls { | ||
163 | 101 | + { "pisp", { | ||
164 | 102 | + { &controls::rpi::ScalerCrops, ControlInfo(Rectangle{}, Rectangle(65535, 65535, 65535, 65535), Rectangle{}) } | ||
165 | 103 | + } }, | ||
166 | 104 | +}; | ||
167 | 105 | + | ||
168 | 106 | } /* namespace */ | ||
169 | 107 | |||
170 | 108 | LOG_DEFINE_CATEGORY(IPARPI) | ||
171 | 109 | @@ -153,12 +160,17 @@ | ||
172 | 110 | lensPresent_ = params.lensPresent; | ||
173 | 111 | |||
174 | 112 | controller_.initialise(); | ||
175 | 113 | + helper_->setHwConfig(controller_.getHardwareConfig()); | ||
176 | 114 | |||
177 | 115 | /* Return the controls handled by the IPA */ | ||
178 | 116 | ControlInfoMap::Map ctrlMap = ipaControls; | ||
179 | 117 | if (lensPresent_) | ||
180 | 118 | ctrlMap.merge(ControlInfoMap::Map(ipaAfControls)); | ||
181 | 119 | |||
182 | 120 | + auto platformCtrlsIt = platformControls.find(controller_.getTarget()); | ||
183 | 121 | + if (platformCtrlsIt != platformControls.end()) | ||
184 | 122 | + ctrlMap.merge(ControlInfoMap::Map(platformCtrlsIt->second)); | ||
185 | 123 | + | ||
186 | 124 | monoSensor_ = params.sensorInfo.cfaPattern == properties::draft::ColorFilterArrangementEnum::MONO; | ||
187 | 125 | if (!monoSensor_) | ||
188 | 126 | ctrlMap.merge(ControlInfoMap::Map(ipaColourControls)); | ||
189 | 127 | @@ -1070,7 +1082,7 @@ | ||
190 | 128 | break; | ||
191 | 129 | } | ||
192 | 130 | |||
193 | 131 | - case controls::SCALER_CROP: { | ||
194 | 132 | + case controls::rpi::SCALER_CROPS: { | ||
195 | 133 | /* We do nothing with this, but should avoid the warning below. */ | ||
196 | 134 | break; | ||
197 | 135 | } | ||
198 | 136 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
199 | 137 | +++ b/src/ipa/rpi/pisp/data/imx219.json 2024-11-25 21:08:37.637494198 +0530 | ||
200 | 138 | @@ -0,0 +1,1187 @@ | ||
201 | 139 | +{ | ||
202 | 140 | + "version": 2.0, | ||
203 | 141 | + "target": "pisp", | ||
204 | 142 | + "algorithms": [ | ||
205 | 143 | + { | ||
206 | 144 | + "rpi.black_level": | ||
207 | 145 | + { | ||
208 | 146 | + "black_level": 4096 | ||
209 | 147 | + } | ||
210 | 148 | + }, | ||
211 | 149 | + { | ||
212 | 150 | + "rpi.lux": | ||
213 | 151 | + { | ||
214 | 152 | + "reference_shutter_speed": 21965, | ||
215 | 153 | + "reference_gain": 1.0, | ||
216 | 154 | + "reference_aperture": 1.0, | ||
217 | 155 | + "reference_lux": 800, | ||
218 | 156 | + "reference_Y": 11460 | ||
219 | 157 | + } | ||
220 | 158 | + }, | ||
221 | 159 | + { | ||
222 | 160 | + "rpi.dpc": | ||
223 | 161 | + { | ||
224 | 162 | + "strength": 1 | ||
225 | 163 | + } | ||
226 | 164 | + }, | ||
227 | 165 | + { | ||
228 | 166 | + "rpi.noise": | ||
229 | 167 | + { | ||
230 | 168 | + "reference_constant": 0, | ||
231 | 169 | + "reference_slope": 3.661 | ||
232 | 170 | + } | ||
233 | 171 | + }, | ||
234 | 172 | + { | ||
235 | 173 | + "rpi.geq": | ||
236 | 174 | + { | ||
237 | 175 | + "offset": 239, | ||
238 | 176 | + "slope": 0.00766 | ||
239 | 177 | + } | ||
240 | 178 | + }, | ||
241 | 179 | + { | ||
242 | 180 | + "rpi.denoise": | ||
243 | 181 | + { | ||
244 | 182 | + "normal": | ||
245 | 183 | + { | ||
246 | 184 | + "sdn": | ||
247 | 185 | + { | ||
248 | 186 | + "deviation": 1.6, | ||
249 | 187 | + "strength": 0.5, | ||
250 | 188 | + "deviation2": 3.2, | ||
251 | 189 | + "deviation_no_tdn": 3.2, | ||
252 | 190 | + "strength_no_tdn": 0.75 | ||
253 | 191 | + }, | ||
254 | 192 | + "cdn": | ||
255 | 193 | + { | ||
256 | 194 | + "deviation": 200, | ||
257 | 195 | + "strength": 0.3 | ||
258 | 196 | + }, | ||
259 | 197 | + "tdn": | ||
260 | 198 | + { | ||
261 | 199 | + "deviation": 0.8, | ||
262 | 200 | + "threshold": 0.05 | ||
263 | 201 | + } | ||
264 | 202 | + }, | ||
265 | 203 | + "hdr": | ||
266 | 204 | + { | ||
267 | 205 | + "sdn": | ||
268 | 206 | + { | ||
269 | 207 | + "deviation": 1.6, | ||
270 | 208 | + "strength": 0.5, | ||
271 | 209 | + "deviation2": 3.2, | ||
272 | 210 | + "deviation_no_tdn": 3.2, | ||
273 | 211 | + "strength_no_tdn": 0.75 | ||
274 | 212 | + }, | ||
275 | 213 | + "cdn": | ||
276 | 214 | + { | ||
277 | 215 | + "deviation": 200, | ||
278 | 216 | + "strength": 0.3 | ||
279 | 217 | + }, | ||
280 | 218 | + "tdn": | ||
281 | 219 | + { | ||
282 | 220 | + "deviation": 1.3, | ||
283 | 221 | + "threshold": 0.1 | ||
284 | 222 | + } | ||
285 | 223 | + }, | ||
286 | 224 | + "night": | ||
287 | 225 | + { | ||
288 | 226 | + "sdn": | ||
289 | 227 | + { | ||
290 | 228 | + "deviation": 1.6, | ||
291 | 229 | + "strength": 0.5, | ||
292 | 230 | + "deviation2": 3.2, | ||
293 | 231 | + "deviation_no_tdn": 3.2, | ||
294 | 232 | + "strength_no_tdn": 0.75 | ||
295 | 233 | + }, | ||
296 | 234 | + "cdn": | ||
297 | 235 | + { | ||
298 | 236 | + "deviation": 200, | ||
299 | 237 | + "strength": 0.3 | ||
300 | 238 | + }, | ||
301 | 239 | + "tdn": | ||
302 | 240 | + { | ||
303 | 241 | + "deviation": 1.3, | ||
304 | 242 | + "threshold": 0.1 | ||
305 | 243 | + } | ||
306 | 244 | + } | ||
307 | 245 | + } | ||
308 | 246 | + }, | ||
309 | 247 | + { | ||
310 | 248 | + "rpi.awb": | ||
311 | 249 | + { | ||
312 | 250 | + "priors": [ | ||
313 | 251 | + { | ||
314 | 252 | + "lux": 0, | ||
315 | 253 | + "prior": | ||
316 | 254 | + [ | ||
317 | 255 | + 2000, 1.0, | ||
318 | 256 | + 3000, 0.0, | ||
319 | 257 | + 13000, 0.0 | ||
320 | 258 | + ] | ||
321 | 259 | + }, | ||
322 | 260 | + { | ||
323 | 261 | + "lux": 800, | ||
324 | 262 | + "prior": | ||
325 | 263 | + [ | ||
326 | 264 | + 2000, 0.0, | ||
327 | 265 | + 6000, 2.0, | ||
328 | 266 | + 13000, 2.0 | ||
329 | 267 | + ] | ||
330 | 268 | + }, | ||
331 | 269 | + { | ||
332 | 270 | + "lux": 1500, | ||
333 | 271 | + "prior": | ||
334 | 272 | + [ | ||
335 | 273 | + 2000, 0.0, | ||
336 | 274 | + 4000, 1.0, | ||
337 | 275 | + 6000, 6.0, | ||
338 | 276 | + 6500, 7.0, | ||
339 | 277 | + 7000, 1.0, | ||
340 | 278 | + 13000, 1.0 | ||
341 | 279 | + ] | ||
342 | 280 | + } | ||
343 | 281 | + ], | ||
344 | 282 | + "modes": | ||
345 | 283 | + { | ||
346 | 284 | + "auto": | ||
347 | 285 | + { | ||
348 | 286 | + "lo": 2500, | ||
349 | 287 | + "hi": 7700 | ||
350 | 288 | + }, | ||
351 | 289 | + "incandescent": | ||
352 | 290 | + { | ||
353 | 291 | + "lo": 2500, | ||
354 | 292 | + "hi": 3000 | ||
355 | 293 | + }, | ||
356 | 294 | + "tungsten": | ||
357 | 295 | + { | ||
358 | 296 | + "lo": 3000, | ||
359 | 297 | + "hi": 3500 | ||
360 | 298 | + }, | ||
361 | 299 | + "fluorescent": | ||
362 | 300 | + { | ||
363 | 301 | + "lo": 4000, | ||
364 | 302 | + "hi": 4700 | ||
365 | 303 | + }, | ||
366 | 304 | + "indoor": | ||
367 | 305 | + { | ||
368 | 306 | + "lo": 3000, | ||
369 | 307 | + "hi": 5000 | ||
370 | 308 | + }, | ||
371 | 309 | + "daylight": | ||
372 | 310 | + { | ||
373 | 311 | + "lo": 5500, | ||
374 | 312 | + "hi": 6500 | ||
375 | 313 | + }, | ||
376 | 314 | + "cloudy": | ||
377 | 315 | + { | ||
378 | 316 | + "lo": 7000, | ||
379 | 317 | + "hi": 8000 | ||
380 | 318 | + } | ||
381 | 319 | + }, | ||
382 | 320 | + "bayes": 1, | ||
383 | 321 | + "ct_curve": | ||
384 | 322 | + [ | ||
385 | 323 | + 2860.0, 0.9514, 0.4156, | ||
386 | 324 | + 2960.0, 0.9289, 0.4372, | ||
387 | 325 | + 3603.0, 0.8305, 0.5251, | ||
388 | 326 | + 4650.0, 0.6756, 0.6433, | ||
389 | 327 | + 5858.0, 0.6193, 0.6807, | ||
390 | 328 | + 7580.0, 0.5019, 0.7495 | ||
391 | 329 | + ], | ||
392 | 330 | + "sensitivity_r": 1.0, | ||
393 | 331 | + "sensitivity_b": 1.0, | ||
394 | 332 | + "transverse_pos": 0.03392, | ||
395 | 333 | + "transverse_neg": 0.034 | ||
396 | 334 | + } | ||
397 | 335 | + }, | ||
398 | 336 | + { | ||
399 | 337 | + "rpi.agc": | ||
400 | 338 | + { | ||
401 | 339 | + "channels": [ | ||
402 | 340 | + { | ||
403 | 341 | + "comment": "Channel 0 is normal AGC", | ||
404 | 342 | + "metering_modes": | ||
405 | 343 | + { | ||
406 | 344 | + "centre-weighted": | ||
407 | 345 | + { | ||
408 | 346 | + "weights": | ||
409 | 347 | + [ | ||
410 | 348 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, | ||
411 | 349 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
412 | 350 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
413 | 351 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
414 | 352 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
415 | 353 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
416 | 354 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
417 | 355 | + 1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1, | ||
418 | 356 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
419 | 357 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
420 | 358 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
421 | 359 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
422 | 360 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
423 | 361 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
424 | 362 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 | ||
425 | 363 | + ] | ||
426 | 364 | + }, | ||
427 | 365 | + "spot": | ||
428 | 366 | + { | ||
429 | 367 | + "weights": | ||
430 | 368 | + [ | ||
431 | 369 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
432 | 370 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
433 | 371 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
434 | 372 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
435 | 373 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
436 | 374 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
437 | 375 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
438 | 376 | + 0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0, | ||
439 | 377 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
440 | 378 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
441 | 379 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
442 | 380 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
443 | 381 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
444 | 382 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
445 | 383 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | ||
446 | 384 | + ] | ||
447 | 385 | + }, | ||
448 | 386 | + "matrix": | ||
449 | 387 | + { | ||
450 | 388 | + "weights": | ||
451 | 389 | + [ | ||
452 | 390 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
453 | 391 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
454 | 392 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
455 | 393 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
456 | 394 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
457 | 395 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
458 | 396 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
459 | 397 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
460 | 398 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
461 | 399 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
462 | 400 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
463 | 401 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
464 | 402 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
465 | 403 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
466 | 404 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 | ||
467 | 405 | + ] | ||
468 | 406 | + } | ||
469 | 407 | + }, | ||
470 | 408 | + "exposure_modes": | ||
471 | 409 | + { | ||
472 | 410 | + "normal": | ||
473 | 411 | + { | ||
474 | 412 | + "shutter": [ 100, 10000, 30000, 60000, 66666 ], | ||
475 | 413 | + "gain": [ 1.0, 1.5, 2.0, 4.0, 10.0 ] | ||
476 | 414 | + }, | ||
477 | 415 | + "short": | ||
478 | 416 | + { | ||
479 | 417 | + "shutter": [ 100, 5000, 10000, 20000, 60000 ], | ||
480 | 418 | + "gain": [ 1.0, 1.5, 2.0, 4.0, 10.0 ] | ||
481 | 419 | + }, | ||
482 | 420 | + "long": | ||
483 | 421 | + { | ||
484 | 422 | + "shutter": [ 100, 10000, 30000, 60000, 90000, 120000 ], | ||
485 | 423 | + "gain": [ 1.0, 1.5, 2.0, 4.0, 8.0, 12.0 ] | ||
486 | 424 | + } | ||
487 | 425 | + }, | ||
488 | 426 | + "constraint_modes": | ||
489 | 427 | + { | ||
490 | 428 | + "normal": [ | ||
491 | 429 | + { | ||
492 | 430 | + "bound": "LOWER", | ||
493 | 431 | + "q_lo": 0.98, | ||
494 | 432 | + "q_hi": 1.0, | ||
495 | 433 | + "y_target": | ||
496 | 434 | + [ | ||
497 | 435 | + 0, 0.5, | ||
498 | 436 | + 1000, 0.5 | ||
499 | 437 | + ] | ||
500 | 438 | + } | ||
501 | 439 | + ], | ||
502 | 440 | + "highlight": [ | ||
503 | 441 | + { | ||
504 | 442 | + "bound": "LOWER", | ||
505 | 443 | + "q_lo": 0.98, | ||
506 | 444 | + "q_hi": 1.0, | ||
507 | 445 | + "y_target": | ||
508 | 446 | + [ | ||
509 | 447 | + 0, 0.5, | ||
510 | 448 | + 1000, 0.5 | ||
511 | 449 | + ] | ||
512 | 450 | + }, | ||
513 | 451 | + { | ||
514 | 452 | + "bound": "UPPER", | ||
515 | 453 | + "q_lo": 0.98, | ||
516 | 454 | + "q_hi": 1.0, | ||
517 | 455 | + "y_target": | ||
518 | 456 | + [ | ||
519 | 457 | + 0, 0.8, | ||
520 | 458 | + 1000, 0.8 | ||
521 | 459 | + ] | ||
522 | 460 | + } | ||
523 | 461 | + ], | ||
524 | 462 | + "shadows": [ | ||
525 | 463 | + { | ||
526 | 464 | + "bound": "LOWER", | ||
527 | 465 | + "q_lo": 0.0, | ||
528 | 466 | + "q_hi": 0.5, | ||
529 | 467 | + "y_target": | ||
530 | 468 | + [ | ||
531 | 469 | + 0, 0.17, | ||
532 | 470 | + 1000, 0.17 | ||
533 | 471 | + ] | ||
534 | 472 | + } | ||
535 | 473 | + ] | ||
536 | 474 | + }, | ||
537 | 475 | + "y_target": | ||
538 | 476 | + [ | ||
539 | 477 | + 0, 0.16, | ||
540 | 478 | + 1000, 0.165, | ||
541 | 479 | + 10000, 0.17 | ||
542 | 480 | + ] | ||
543 | 481 | + }, | ||
544 | 482 | + { | ||
545 | 483 | + "comment": "Channel 1 is the HDR short channel", | ||
546 | 484 | + "desaturate": 0, | ||
547 | 485 | + "metering_modes": | ||
548 | 486 | + { | ||
549 | 487 | + "centre-weighted": | ||
550 | 488 | + { | ||
551 | 489 | + "weights": | ||
552 | 490 | + [ | ||
553 | 491 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, | ||
554 | 492 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
555 | 493 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
556 | 494 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
557 | 495 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
558 | 496 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
559 | 497 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
560 | 498 | + 1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1, | ||
561 | 499 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
562 | 500 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
563 | 501 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
564 | 502 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
565 | 503 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
566 | 504 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
567 | 505 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 | ||
568 | 506 | + ] | ||
569 | 507 | + }, | ||
570 | 508 | + "spot": | ||
571 | 509 | + { | ||
572 | 510 | + "weights": | ||
573 | 511 | + [ | ||
574 | 512 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
575 | 513 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
576 | 514 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
577 | 515 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
578 | 516 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
579 | 517 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
580 | 518 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
581 | 519 | + 0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0, | ||
582 | 520 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
583 | 521 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
584 | 522 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
585 | 523 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
586 | 524 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
587 | 525 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
588 | 526 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | ||
589 | 527 | + ] | ||
590 | 528 | + }, | ||
591 | 529 | + "matrix": | ||
592 | 530 | + { | ||
593 | 531 | + "weights": | ||
594 | 532 | + [ | ||
595 | 533 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
596 | 534 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
597 | 535 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
598 | 536 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
599 | 537 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
600 | 538 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
601 | 539 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
602 | 540 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
603 | 541 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
604 | 542 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
605 | 543 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
606 | 544 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
607 | 545 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
608 | 546 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
609 | 547 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 | ||
610 | 548 | + ] | ||
611 | 549 | + } | ||
612 | 550 | + }, | ||
613 | 551 | + "exposure_modes": | ||
614 | 552 | + { | ||
615 | 553 | + "normal": | ||
616 | 554 | + { | ||
617 | 555 | + "shutter": [ 100, 15000, 30000 ], | ||
618 | 556 | + "gain": [ 1.0, 1.0, 2.0 ] | ||
619 | 557 | + }, | ||
620 | 558 | + "short": | ||
621 | 559 | + { | ||
622 | 560 | + "shutter": [ 100, 15000, 30000 ], | ||
623 | 561 | + "gain": [ 1.0, 2.0, 2.0 ] | ||
624 | 562 | + }, | ||
625 | 563 | + "long": | ||
626 | 564 | + { | ||
627 | 565 | + "shutter": [ 100, 15000, 60000 ], | ||
628 | 566 | + "gain": [ 1.0, 1.0, 1.0 ] | ||
629 | 567 | + } | ||
630 | 568 | + }, | ||
631 | 569 | + "constraint_modes": | ||
632 | 570 | + { | ||
633 | 571 | + "normal": [ | ||
634 | 572 | + { | ||
635 | 573 | + "bound": "LOWER", | ||
636 | 574 | + "q_lo": 0.0, | ||
637 | 575 | + "q_hi": 0.2, | ||
638 | 576 | + "y_target": | ||
639 | 577 | + [ | ||
640 | 578 | + 0, 0.02, | ||
641 | 579 | + 1000, 0.02 | ||
642 | 580 | + ] | ||
643 | 581 | + }, | ||
644 | 582 | + { | ||
645 | 583 | + "bound": "UPPER", | ||
646 | 584 | + "q_lo": 0.98, | ||
647 | 585 | + "q_hi": 1.0, | ||
648 | 586 | + "y_target": | ||
649 | 587 | + [ | ||
650 | 588 | + 0, 0.7, | ||
651 | 589 | + 1000, 0.7 | ||
652 | 590 | + ] | ||
653 | 591 | + }, | ||
654 | 592 | + { | ||
655 | 593 | + "bound": "LOWER", | ||
656 | 594 | + "q_lo": 0.0, | ||
657 | 595 | + "q_hi": 0.2, | ||
658 | 596 | + "y_target": | ||
659 | 597 | + [ | ||
660 | 598 | + 0, 0.01, | ||
661 | 599 | + 1000, 0.01 | ||
662 | 600 | + ] | ||
663 | 601 | + }, | ||
664 | 602 | + { | ||
665 | 603 | + "bound": "UPPER", | ||
666 | 604 | + "q_lo": 0.9, | ||
667 | 605 | + "q_hi": 1.0, | ||
668 | 606 | + "y_target": | ||
669 | 607 | + [ | ||
670 | 608 | + 0, 0.7, | ||
671 | 609 | + 1000, 0.7 | ||
672 | 610 | + ] | ||
673 | 611 | + }, | ||
674 | 612 | + { | ||
675 | 613 | + "bound": "LOWER", | ||
676 | 614 | + "q_lo": 0.0, | ||
677 | 615 | + "q_hi": 0.2, | ||
678 | 616 | + "y_target": | ||
679 | 617 | + [ | ||
680 | 618 | + 0, 0.005, | ||
681 | 619 | + 1000, 0.005 | ||
682 | 620 | + ] | ||
683 | 621 | + } | ||
684 | 622 | + ], | ||
685 | 623 | + "highlight": [ | ||
686 | 624 | + { | ||
687 | 625 | + "bound": "LOWER", | ||
688 | 626 | + "q_lo": 0.95, | ||
689 | 627 | + "q_hi": 1.0, | ||
690 | 628 | + "y_target": | ||
691 | 629 | + [ | ||
692 | 630 | + 0, 0.5, | ||
693 | 631 | + 1000, 0.5 | ||
694 | 632 | + ] | ||
695 | 633 | + }, | ||
696 | 634 | + { | ||
697 | 635 | + "bound": "UPPER", | ||
698 | 636 | + "q_lo": 0.95, | ||
699 | 637 | + "q_hi": 1.0, | ||
700 | 638 | + "y_target": | ||
701 | 639 | + [ | ||
702 | 640 | + 0, 0.7, | ||
703 | 641 | + 1000, 0.7 | ||
704 | 642 | + ] | ||
705 | 643 | + }, | ||
706 | 644 | + { | ||
707 | 645 | + "bound": "LOWER", | ||
708 | 646 | + "q_lo": 0.0, | ||
709 | 647 | + "q_hi": 0.2, | ||
710 | 648 | + "y_target": | ||
711 | 649 | + [ | ||
712 | 650 | + 0, 0.002, | ||
713 | 651 | + 1000, 0.002 | ||
714 | 652 | + ] | ||
715 | 653 | + } | ||
716 | 654 | + ], | ||
717 | 655 | + "shadows": [ | ||
718 | 656 | + { | ||
719 | 657 | + "bound": "LOWER", | ||
720 | 658 | + "q_lo": 0.95, | ||
721 | 659 | + "q_hi": 1.0, | ||
722 | 660 | + "y_target": | ||
723 | 661 | + [ | ||
724 | 662 | + 0, 0.5, | ||
725 | 663 | + 1000, 0.5 | ||
726 | 664 | + ] | ||
727 | 665 | + }, | ||
728 | 666 | + { | ||
729 | 667 | + "bound": "UPPER", | ||
730 | 668 | + "q_lo": 0.95, | ||
731 | 669 | + "q_hi": 1.0, | ||
732 | 670 | + "y_target": | ||
733 | 671 | + [ | ||
734 | 672 | + 0, 0.7, | ||
735 | 673 | + 1000, 0.7 | ||
736 | 674 | + ] | ||
737 | 675 | + }, | ||
738 | 676 | + { | ||
739 | 677 | + "bound": "LOWER", | ||
740 | 678 | + "q_lo": 0.0, | ||
741 | 679 | + "q_hi": 0.2, | ||
742 | 680 | + "y_target": | ||
743 | 681 | + [ | ||
744 | 682 | + 0, 0.002, | ||
745 | 683 | + 1000, 0.002 | ||
746 | 684 | + ] | ||
747 | 685 | + } | ||
748 | 686 | + ] | ||
749 | 687 | + }, | ||
750 | 688 | + "y_target": | ||
751 | 689 | + [ | ||
752 | 690 | + 0, 0.19, | ||
753 | 691 | + 1000, 0.19, | ||
754 | 692 | + 10000, 0.19 | ||
755 | 693 | + ] | ||
756 | 694 | + }, | ||
757 | 695 | + { | ||
758 | 696 | + "comment": "Channel 2 is the HDR long channel", | ||
759 | 697 | + "desaturate": 0, | ||
760 | 698 | + "metering_modes": | ||
761 | 699 | + { | ||
762 | 700 | + "centre-weighted": | ||
763 | 701 | + { | ||
764 | 702 | + "weights": | ||
765 | 703 | + [ | ||
766 | 704 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, | ||
767 | 705 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
768 | 706 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
769 | 707 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
770 | 708 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
771 | 709 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
772 | 710 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
773 | 711 | + 1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1, | ||
774 | 712 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
775 | 713 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
776 | 714 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
777 | 715 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
778 | 716 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
779 | 717 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
780 | 718 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 | ||
781 | 719 | + ] | ||
782 | 720 | + }, | ||
783 | 721 | + "spot": | ||
784 | 722 | + { | ||
785 | 723 | + "weights": | ||
786 | 724 | + [ | ||
787 | 725 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
788 | 726 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
789 | 727 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
790 | 728 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
791 | 729 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
792 | 730 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
793 | 731 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
794 | 732 | + 0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0, | ||
795 | 733 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
796 | 734 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
797 | 735 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
798 | 736 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
799 | 737 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
800 | 738 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
801 | 739 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | ||
802 | 740 | + ] | ||
803 | 741 | + }, | ||
804 | 742 | + "matrix": | ||
805 | 743 | + { | ||
806 | 744 | + "weights": | ||
807 | 745 | + [ | ||
808 | 746 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
809 | 747 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
810 | 748 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
811 | 749 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
812 | 750 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
813 | 751 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
814 | 752 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
815 | 753 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
816 | 754 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
817 | 755 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
818 | 756 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
819 | 757 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
820 | 758 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
821 | 759 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
822 | 760 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 | ||
823 | 761 | + ] | ||
824 | 762 | + } | ||
825 | 763 | + }, | ||
826 | 764 | + "exposure_modes": | ||
827 | 765 | + { | ||
828 | 766 | + "normal": | ||
829 | 767 | + { | ||
830 | 768 | + "shutter": [ 100, 20000, 30000, 60000 ], | ||
831 | 769 | + "gain": [ 1.0, 2.0, 4.0, 8.0 ] | ||
832 | 770 | + }, | ||
833 | 771 | + "short": | ||
834 | 772 | + { | ||
835 | 773 | + "shutter": [ 100, 20000, 30000, 60000 ], | ||
836 | 774 | + "gain": [ 1.0, 2.0, 4.0, 8.0 ] | ||
837 | 775 | + }, | ||
838 | 776 | + "long": | ||
839 | 777 | + { | ||
840 | 778 | + "shutter": [ 100, 20000, 30000, 60000 ], | ||
841 | 779 | + "gain": [ 1.0, 2.0, 4.0, 8.0 ] | ||
842 | 780 | + } | ||
843 | 781 | + }, | ||
844 | 782 | + "constraint_modes": | ||
845 | 783 | + { | ||
846 | 784 | + "normal": [ ], | ||
847 | 785 | + "highlight": [ ], | ||
848 | 786 | + "shadows": [ ] | ||
849 | 787 | + }, | ||
850 | 788 | + "channel_constraints": [ | ||
851 | 789 | + { | ||
852 | 790 | + "bound": "UPPER", | ||
853 | 791 | + "channel": 4, | ||
854 | 792 | + "factor": 8 | ||
855 | 793 | + }, | ||
856 | 794 | + { | ||
857 | 795 | + "bound": "LOWER", | ||
858 | 796 | + "channel": 4, | ||
859 | 797 | + "factor": 2 | ||
860 | 798 | + } | ||
861 | 799 | + ], | ||
862 | 800 | + "y_target": | ||
863 | 801 | + [ | ||
864 | 802 | + 0, 0.16, | ||
865 | 803 | + 1000, 0.165, | ||
866 | 804 | + 10000, 0.17 | ||
867 | 805 | + ] | ||
868 | 806 | + }, | ||
869 | 807 | + { | ||
870 | 808 | + "comment": "Channel 3 is the night mode channel", | ||
871 | 809 | + "base_ev": 0.33, | ||
872 | 810 | + "metering_modes": | ||
873 | 811 | + { | ||
874 | 812 | + "centre-weighted": | ||
875 | 813 | + { | ||
876 | 814 | + "weights": | ||
877 | 815 | + [ | ||
878 | 816 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, | ||
879 | 817 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
880 | 818 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
881 | 819 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
882 | 820 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
883 | 821 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
884 | 822 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
885 | 823 | + 1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1, | ||
886 | 824 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
887 | 825 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
888 | 826 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
889 | 827 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
890 | 828 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
891 | 829 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
892 | 830 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 | ||
893 | 831 | + ] | ||
894 | 832 | + }, | ||
895 | 833 | + "spot": | ||
896 | 834 | + { | ||
897 | 835 | + "weights": | ||
898 | 836 | + [ | ||
899 | 837 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
900 | 838 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
901 | 839 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
902 | 840 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
903 | 841 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
904 | 842 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
905 | 843 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
906 | 844 | + 0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0, | ||
907 | 845 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
908 | 846 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
909 | 847 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
910 | 848 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
911 | 849 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
912 | 850 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
913 | 851 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | ||
914 | 852 | + ] | ||
915 | 853 | + }, | ||
916 | 854 | + "matrix": | ||
917 | 855 | + { | ||
918 | 856 | + "weights": | ||
919 | 857 | + [ | ||
920 | 858 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
921 | 859 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
922 | 860 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
923 | 861 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
924 | 862 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
925 | 863 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
926 | 864 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
927 | 865 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
928 | 866 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
929 | 867 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
930 | 868 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
931 | 869 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
932 | 870 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
933 | 871 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
934 | 872 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 | ||
935 | 873 | + ] | ||
936 | 874 | + } | ||
937 | 875 | + }, | ||
938 | 876 | + "exposure_modes": | ||
939 | 877 | + { | ||
940 | 878 | + "normal": | ||
941 | 879 | + { | ||
942 | 880 | + "shutter": [ 100, 20000, 66666 ], | ||
943 | 881 | + "gain": [ 1.0, 2.0, 4.0 ] | ||
944 | 882 | + }, | ||
945 | 883 | + "short": | ||
946 | 884 | + { | ||
947 | 885 | + "shutter": [ 100, 20000, 33333 ], | ||
948 | 886 | + "gain": [ 1.0, 2.0, 4.0 ] | ||
949 | 887 | + }, | ||
950 | 888 | + "long": | ||
951 | 889 | + { | ||
952 | 890 | + "shutter": [ 100, 20000, 66666, 120000 ], | ||
953 | 891 | + "gain": [ 1.0, 2.0, 4.0, 4.0 ] | ||
954 | 892 | + } | ||
955 | 893 | + }, | ||
956 | 894 | + "constraint_modes": | ||
957 | 895 | + { | ||
958 | 896 | + "normal": [ | ||
959 | 897 | + { | ||
960 | 898 | + "bound": "LOWER", | ||
961 | 899 | + "q_lo": 0.98, | ||
962 | 900 | + "q_hi": 1.0, | ||
963 | 901 | + "y_target": | ||
964 | 902 | + [ | ||
965 | 903 | + 0, 0.5, | ||
966 | 904 | + 1000, 0.5 | ||
967 | 905 | + ] | ||
968 | 906 | + } | ||
969 | 907 | + ], | ||
970 | 908 | + "highlight": [ | ||
971 | 909 | + { | ||
972 | 910 | + "bound": "LOWER", | ||
973 | 911 | + "q_lo": 0.98, | ||
974 | 912 | + "q_hi": 1.0, | ||
975 | 913 | + "y_target": | ||
976 | 914 | + [ | ||
977 | 915 | + 0, 0.5, | ||
978 | 916 | + 1000, 0.5 | ||
979 | 917 | + ] | ||
980 | 918 | + }, | ||
981 | 919 | + { | ||
982 | 920 | + "bound": "UPPER", | ||
983 | 921 | + "q_lo": 0.98, | ||
984 | 922 | + "q_hi": 1.0, | ||
985 | 923 | + "y_target": | ||
986 | 924 | + [ | ||
987 | 925 | + 0, 0.8, | ||
988 | 926 | + 1000, 0.8 | ||
989 | 927 | + ] | ||
990 | 928 | + } | ||
991 | 929 | + ], | ||
992 | 930 | + "shadows": [ | ||
993 | 931 | + { | ||
994 | 932 | + "bound": "LOWER", | ||
995 | 933 | + "q_lo": 0.98, | ||
996 | 934 | + "q_hi": 1.0, | ||
997 | 935 | + "y_target": | ||
998 | 936 | + [ | ||
999 | 937 | + 0, 0.5, | ||
1000 | 938 | + 1000, 0.5 | ||
1001 | 939 | + ] | ||
1002 | 940 | + } | ||
1003 | 941 | + ] | ||
1004 | 942 | + }, | ||
1005 | 943 | + "y_target": | ||
1006 | 944 | + [ | ||
1007 | 945 | + 0, 0.16, | ||
1008 | 946 | + 1000, 0.165, | ||
1009 | 947 | + 10000, 0.17 | ||
1010 | 948 | + ] | ||
1011 | 949 | + } | ||
1012 | 950 | + ] | ||
1013 | 951 | + } | ||
1014 | 952 | + }, | ||
1015 | 953 | + { | ||
1016 | 954 | + "rpi.alsc": | ||
1017 | 955 | + { | ||
1018 | 956 | + "omega": 1.3, | ||
1019 | 957 | + "n_iter": 100, | ||
1020 | 958 | + "luminance_strength": 0.8, | ||
1021 | 959 | + "calibrations_Cr": [ | ||
1022 | 960 | + { | ||
1023 | 961 | + "ct": 3000, | ||
1024 | 962 | + "table": | ||
1025 | 963 | + [ | ||
1026 | 964 | + 1.418, 1.428, 1.446, 1.454, 1.454, 1.451, 1.441, 1.428, 1.411, 1.391, 1.371, 1.349, 1.334, 1.327, 1.325, 1.325, 1.325, 1.325, 1.331, 1.344, 1.363, 1.383, 1.402, 1.418, 1.433, 1.446, 1.452, 1.453, 1.446, 1.435, 1.415, 1.404, | ||
1027 | 965 | + 1.428, 1.442, 1.453, 1.455, 1.454, 1.447, 1.431, 1.413, 1.392, 1.371, 1.349, 1.331, 1.318, 1.307, 1.299, 1.299, 1.299, 1.303, 1.313, 1.328, 1.344, 1.363, 1.383, 1.404, 1.424, 1.439, 1.451, 1.453, 1.453, 1.445, 1.431, 1.415, | ||
1028 | 966 | + 1.436, 1.448, 1.453, 1.455, 1.449, 1.435, 1.415, 1.393, 1.369, 1.345, 1.322, 1.303, 1.287, 1.276, 1.269, 1.268, 1.268, 1.272, 1.283, 1.298, 1.316, 1.337, 1.362, 1.384, 1.406, 1.427, 1.444, 1.454, 1.454, 1.452, 1.438, 1.426, | ||
1029 | 967 | + 1.441, 1.451, 1.454, 1.451, 1.439, 1.422, 1.396, 1.372, 1.345, 1.319, 1.295, 1.274, 1.257, 1.245, 1.239, 1.238, 1.238, 1.245, 1.255, 1.269, 1.289, 1.311, 1.336, 1.362, 1.388, 1.412, 1.433, 1.448, 1.454, 1.453, 1.445, 1.433, | ||
1030 | 968 | + 1.445, 1.452, 1.452, 1.445, 1.428, 1.405, 1.379, 1.349, 1.319, 1.295, 1.269, 1.247, 1.229, 1.219, 1.212, 1.211, 1.211, 1.217, 1.228, 1.242, 1.261, 1.286, 1.311, 1.339, 1.367, 1.395, 1.419, 1.439, 1.452, 1.452, 1.451, 1.436, | ||
1031 | 969 | + 1.448, 1.451, 1.451, 1.435, 1.414, 1.387, 1.358, 1.327, 1.296, 1.269, 1.245, 1.222, 1.205, 1.193, 1.187, 1.185, 1.186, 1.191, 1.202, 1.217, 1.237, 1.261, 1.286, 1.316, 1.346, 1.378, 1.404, 1.429, 1.445, 1.451, 1.451, 1.442, | ||
1032 | 970 | + 1.448, 1.448, 1.445, 1.427, 1.401, 1.371, 1.338, 1.306, 1.274, 1.245, 1.222, 1.199, 1.183, 1.171, 1.164, 1.162, 1.162, 1.168, 1.181, 1.194, 1.215, 1.237, 1.264, 1.294, 1.325, 1.359, 1.389, 1.418, 1.441, 1.449, 1.449, 1.443, | ||
1033 | 971 | + 1.449, 1.448, 1.438, 1.415, 1.387, 1.352, 1.318, 1.284, 1.252, 1.223, 1.199, 1.179, 1.161, 1.149, 1.142, 1.142, 1.142, 1.149, 1.159, 1.174, 1.194, 1.215, 1.242, 1.272, 1.307, 1.341, 1.376, 1.405, 1.431, 1.447, 1.447, 1.444, | ||
1034 | 972 | + 1.448, 1.447, 1.431, 1.405, 1.373, 1.336, 1.301, 1.264, 1.234, 1.204, 1.179, 1.161, 1.143, 1.131, 1.124, 1.123, 1.123, 1.131, 1.141, 1.156, 1.174, 1.197, 1.224, 1.254, 1.288, 1.324, 1.361, 1.394, 1.423, 1.442, 1.444, 1.444, | ||
1035 | 973 | + 1.447, 1.442, 1.424, 1.393, 1.359, 1.322, 1.284, 1.248, 1.216, 1.187, 1.162, 1.143, 1.128, 1.115, 1.109, 1.108, 1.108, 1.113, 1.124, 1.139, 1.156, 1.179, 1.206, 1.236, 1.272, 1.309, 1.347, 1.382, 1.411, 1.435, 1.443, 1.444, | ||
1036 | 974 | + 1.444, 1.439, 1.417, 1.383, 1.347, 1.308, 1.271, 1.233, 1.201, 1.173, 1.147, 1.128, 1.115, 1.101, 1.095, 1.093, 1.093, 1.099, 1.111, 1.124, 1.142, 1.165, 1.191, 1.222, 1.258, 1.296, 1.333, 1.372, 1.404, 1.429, 1.441, 1.442, | ||
1037 | 975 | + 1.443, 1.434, 1.409, 1.375, 1.336, 1.297, 1.257, 1.221, 1.189, 1.159, 1.136, 1.116, 1.101, 1.092, 1.083, 1.082, 1.082, 1.089, 1.099, 1.111, 1.131, 1.153, 1.181, 1.211, 1.246, 1.284, 1.324, 1.361, 1.398, 1.425, 1.441, 1.441, | ||
1038 | 976 | + 1.443, 1.431, 1.405, 1.369, 1.328, 1.287, 1.247, 1.211, 1.178, 1.149, 1.126, 1.107, 1.092, 1.083, 1.075, 1.073, 1.073, 1.082, 1.089, 1.101, 1.121, 1.143, 1.171, 1.201, 1.237, 1.274, 1.314, 1.353, 1.389, 1.421, 1.439, 1.441, | ||
1039 | 977 | + 1.442, 1.429, 1.401, 1.364, 1.323, 1.279, 1.241, 1.205, 1.172, 1.144, 1.119, 1.101, 1.085, 1.075, 1.071, 1.067, 1.067, 1.073, 1.082, 1.096, 1.114, 1.136, 1.163, 1.194, 1.229, 1.268, 1.308, 1.348, 1.387, 1.417, 1.439, 1.439, | ||
1040 | 978 | + 1.443, 1.429, 1.399, 1.362, 1.319, 1.276, 1.237, 1.199, 1.169, 1.141, 1.115, 1.096, 1.081, 1.071, 1.066, 1.063, 1.066, 1.068, 1.078, 1.092, 1.109, 1.132, 1.159, 1.191, 1.226, 1.263, 1.304, 1.346, 1.384, 1.416, 1.438, 1.439, | ||
1041 | 979 | + 1.443, 1.428, 1.399, 1.361, 1.319, 1.276, 1.236, 1.199, 1.167, 1.139, 1.115, 1.096, 1.081, 1.071, 1.064, 1.062, 1.062, 1.067, 1.077, 1.091, 1.109, 1.131, 1.158, 1.189, 1.224, 1.262, 1.303, 1.345, 1.383, 1.416, 1.438, 1.439, | ||
1042 | 980 | + 1.444, 1.429, 1.399, 1.361, 1.319, 1.276, 1.236, 1.199, 1.167, 1.139, 1.116, 1.096, 1.081, 1.071, 1.064, 1.063, 1.063, 1.067, 1.077, 1.091, 1.109, 1.131, 1.159, 1.189, 1.224, 1.262, 1.303, 1.345, 1.384, 1.416, 1.438, 1.441, | ||
1043 | 981 | + 1.444, 1.431, 1.402, 1.364, 1.322, 1.281, 1.239, 1.202, 1.171, 1.142, 1.118, 1.099, 1.084, 1.073, 1.069, 1.065, 1.067, 1.071, 1.079, 1.094, 1.112, 1.135, 1.163, 1.191, 1.227, 1.265, 1.307, 1.348, 1.386, 1.418, 1.438, 1.441, | ||
1044 | 982 | + 1.447, 1.433, 1.406, 1.369, 1.328, 1.286, 1.244, 1.209, 1.177, 1.148, 1.124, 1.105, 1.089, 1.081, 1.073, 1.071, 1.071, 1.079, 1.085, 1.099, 1.118, 1.141, 1.168, 1.198, 1.233, 1.271, 1.312, 1.352, 1.391, 1.422, 1.441, 1.444, | ||
1045 | 983 | + 1.448, 1.438, 1.412, 1.376, 1.335, 1.295, 1.255, 1.218, 1.186, 1.157, 1.134, 1.113, 1.098, 1.089, 1.081, 1.079, 1.079, 1.085, 1.094, 1.107, 1.125, 1.149, 1.175, 1.207, 1.242, 1.281, 1.319, 1.359, 1.396, 1.425, 1.445, 1.447, | ||
1046 | 984 | + 1.449, 1.443, 1.417, 1.384, 1.345, 1.305, 1.266, 1.229, 1.197, 1.169, 1.145, 1.124, 1.111, 1.098, 1.091, 1.089, 1.089, 1.094, 1.107, 1.118, 1.137, 1.159, 1.187, 1.218, 1.253, 1.291, 1.329, 1.369, 1.405, 1.433, 1.447, 1.449, | ||
1047 | 985 | + 1.453, 1.449, 1.425, 1.395, 1.358, 1.318, 1.281, 1.244, 1.211, 1.183, 1.158, 1.138, 1.124, 1.111, 1.104, 1.103, 1.103, 1.107, 1.118, 1.133, 1.151, 1.174, 1.201, 1.232, 1.267, 1.304, 1.344, 1.379, 1.413, 1.437, 1.449, 1.449, | ||
1048 | 986 | + 1.457, 1.453, 1.434, 1.405, 1.371, 1.335, 1.297, 1.261, 1.229, 1.199, 1.174, 1.155, 1.138, 1.126, 1.119, 1.117, 1.117, 1.124, 1.133, 1.149, 1.167, 1.189, 1.217, 1.248, 1.284, 1.319, 1.357, 1.393, 1.423, 1.444, 1.452, 1.452, | ||
1049 | 987 | + 1.459, 1.457, 1.443, 1.418, 1.385, 1.352, 1.314, 1.279, 1.246, 1.218, 1.193, 1.174, 1.155, 1.144, 1.137, 1.136, 1.136, 1.141, 1.151, 1.167, 1.187, 1.208, 1.236, 1.267, 1.301, 1.337, 1.373, 1.405, 1.434, 1.453, 1.455, 1.455, | ||
1050 | 988 | + 1.461, 1.461, 1.454, 1.429, 1.401, 1.369, 1.333, 1.301, 1.269, 1.239, 1.216, 1.193, 1.177, 1.165, 1.158, 1.156, 1.156, 1.161, 1.171, 1.187, 1.208, 1.229, 1.258, 1.288, 1.321, 1.356, 1.389, 1.419, 1.445, 1.459, 1.459, 1.455, | ||
1051 | 989 | + 1.462, 1.462, 1.459, 1.442, 1.418, 1.386, 1.354, 1.322, 1.292, 1.262, 1.239, 1.216, 1.199, 1.187, 1.179, 1.178, 1.178, 1.184, 1.194, 1.208, 1.229, 1.253, 1.279, 1.309, 1.342, 1.375, 1.406, 1.433, 1.452, 1.464, 1.464, 1.454, | ||
1052 | 990 | + 1.461, 1.465, 1.465, 1.454, 1.431, 1.405, 1.376, 1.346, 1.316, 1.288, 1.262, 1.242, 1.223, 1.212, 1.205, 1.203, 1.203, 1.208, 1.218, 1.234, 1.253, 1.279, 1.305, 1.334, 1.363, 1.393, 1.421, 1.445, 1.461, 1.465, 1.464, 1.452, | ||
1053 | 991 | + 1.459, 1.465, 1.466, 1.461, 1.443, 1.421, 1.395, 1.368, 1.341, 1.316, 1.288, 1.268, 1.251, 1.238, 1.232, 1.229, 1.229, 1.235, 1.246, 1.261, 1.279, 1.305, 1.331, 1.356, 1.385, 1.411, 1.435, 1.454, 1.466, 1.466, 1.464, 1.451, | ||
1054 | 992 | + 1.454, 1.465, 1.467, 1.466, 1.456, 1.436, 1.414, 1.389, 1.367, 1.341, 1.318, 1.297, 1.279, 1.269, 1.261, 1.259, 1.259, 1.265, 1.274, 1.288, 1.308, 1.331, 1.355, 1.381, 1.404, 1.428, 1.447, 1.462, 1.468, 1.467, 1.457, 1.445, | ||
1055 | 993 | + 1.447, 1.459, 1.466, 1.467, 1.463, 1.451, 1.434, 1.411, 1.389, 1.367, 1.344, 1.325, 1.311, 1.297, 1.292, 1.289, 1.289, 1.295, 1.303, 1.317, 1.336, 1.356, 1.381, 1.402, 1.423, 1.441, 1.457, 1.467, 1.468, 1.463, 1.451, 1.439, | ||
1056 | 994 | + 1.438, 1.449, 1.462, 1.464, 1.464, 1.459, 1.446, 1.429, 1.408, 1.388, 1.369, 1.353, 1.339, 1.329, 1.321, 1.321, 1.321, 1.325, 1.333, 1.348, 1.362, 1.379, 1.401, 1.421, 1.439, 1.454, 1.463, 1.465, 1.465, 1.456, 1.442, 1.427, | ||
1057 | 995 | + 1.429, 1.439, 1.454, 1.464, 1.464, 1.459, 1.449, 1.435, 1.421, 1.402, 1.385, 1.369, 1.353, 1.341, 1.338, 1.337, 1.337, 1.338, 1.348, 1.362, 1.378, 1.395, 1.411, 1.429, 1.445, 1.455, 1.463, 1.464, 1.457, 1.447, 1.427, 1.419 | ||
1058 | 996 | + ] | ||
1059 | 997 | + }, | ||
1060 | 998 | + { | ||
1061 | 999 | + "ct": 5000, | ||
1062 | 1000 | + "table": | ||
1063 | 1001 | + [ | ||
1064 | 1002 | + 2.163, 2.177, 2.194, 2.196, 2.197, 2.192, 2.181, 2.161, 2.139, 2.113, 2.088, 2.063, 2.047, 2.041, 2.036, 2.036, 2.036, 2.037, 2.046, 2.059, 2.083, 2.113, 2.135, 2.158, 2.181, 2.193, 2.205, 2.205, 2.202, 2.189, 2.171, 2.158, | ||
1065 | 1003 | + 2.169, 2.184, 2.195, 2.196, 2.194, 2.182, 2.163, 2.141, 2.116, 2.088, 2.063, 2.042, 2.025, 2.013, 2.004, 2.004, 2.006, 2.011, 2.022, 2.038, 2.059, 2.083, 2.113, 2.137, 2.162, 2.182, 2.197, 2.204, 2.203, 2.199, 2.183, 2.171, | ||
1066 | 1004 | + 2.177, 2.187, 2.193, 2.193, 2.184, 2.166, 2.142, 2.116, 2.087, 2.057, 2.033, 2.008, 1.991, 1.977, 1.969, 1.969, 1.969, 1.975, 1.988, 2.006, 2.028, 2.055, 2.083, 2.114, 2.139, 2.166, 2.187, 2.199, 2.202, 2.201, 2.189, 2.179, | ||
1067 | 1005 | + 2.183, 2.189, 2.192, 2.186, 2.172, 2.146, 2.119, 2.089, 2.058, 2.026, 2.001, 1.975, 1.956, 1.942, 1.934, 1.932, 1.933, 1.941, 1.955, 1.971, 1.995, 2.023, 2.055, 2.084, 2.119, 2.146, 2.171, 2.191, 2.201, 2.201, 2.194, 2.183, | ||
1068 | 1006 | + 2.186, 2.189, 2.189, 2.177, 2.158, 2.127, 2.096, 2.059, 2.026, 1.998, 1.969, 1.944, 1.925, 1.911, 1.901, 1.901, 1.903, 1.912, 1.924, 1.941, 1.964, 1.995, 2.023, 2.058, 2.091, 2.126, 2.155, 2.181, 2.195, 2.199, 2.198, 2.188, | ||
1069 | 1007 | + 2.189, 2.189, 2.184, 2.166, 2.138, 2.108, 2.071, 2.036, 1.999, 1.969, 1.941, 1.914, 1.894, 1.879, 1.871, 1.871, 1.872, 1.879, 1.893, 1.913, 1.937, 1.964, 1.997, 2.029, 2.065, 2.104, 2.137, 2.169, 2.187, 2.199, 2.199, 2.189, | ||
1070 | 1008 | + 2.187, 2.186, 2.176, 2.154, 2.123, 2.087, 2.044, 2.011, 1.974, 1.941, 1.913, 1.887, 1.868, 1.852, 1.844, 1.843, 1.844, 1.852, 1.866, 1.885, 1.912, 1.937, 1.972, 2.004, 2.042, 2.081, 2.119, 2.154, 2.179, 2.195, 2.196, 2.193, | ||
1071 | 1009 | + 2.187, 2.181, 2.167, 2.141, 2.103, 2.062, 2.023, 1.984, 1.947, 1.916, 1.887, 1.864, 1.841, 1.828, 1.821, 1.819, 1.819, 1.828, 1.842, 1.862, 1.885, 1.913, 1.945, 1.982, 2.021, 2.058, 2.102, 2.137, 2.168, 2.192, 2.193, 2.193, | ||
1072 | 1010 | + 2.182, 2.181, 2.161, 2.127, 2.083, 2.044, 2.002, 1.961, 1.924, 1.891, 1.864, 1.841, 1.819, 1.806, 1.797, 1.797, 1.797, 1.805, 1.819, 1.841, 1.862, 1.892, 1.924, 1.959, 1.999, 2.041, 2.082, 2.123, 2.161, 2.185, 2.191, 2.192, | ||
1073 | 1011 | + 2.182, 2.172, 2.149, 2.112, 2.069, 2.026, 1.982, 1.941, 1.904, 1.871, 1.841, 1.819, 1.799, 1.785, 1.776, 1.776, 1.778, 1.784, 1.798, 1.819, 1.841, 1.869, 1.903, 1.939, 1.977, 2.021, 2.067, 2.108, 2.145, 2.174, 2.189, 2.191, | ||
1074 | 1012 | + 2.181, 2.167, 2.139, 2.098, 2.056, 2.006, 1.965, 1.921, 1.883, 1.851, 1.823, 1.799, 1.783, 1.767, 1.759, 1.758, 1.758, 1.767, 1.783, 1.798, 1.825, 1.851, 1.883, 1.919, 1.959, 2.004, 2.049, 2.094, 2.136, 2.167, 2.187, 2.189, | ||
1075 | 1013 | + 2.179, 2.163, 2.131, 2.087, 2.041, 1.994, 1.948, 1.907, 1.871, 1.835, 1.806, 1.784, 1.767, 1.754, 1.744, 1.742, 1.742, 1.752, 1.767, 1.783, 1.808, 1.838, 1.869, 1.905, 1.945, 1.989, 2.036, 2.083, 2.128, 2.159, 2.183, 2.187, | ||
1076 | 1014 | + 2.178, 2.161, 2.126, 2.082, 2.032, 1.982, 1.936, 1.896, 1.857, 1.823, 1.795, 1.772, 1.754, 1.744, 1.732, 1.731, 1.732, 1.742, 1.752, 1.771, 1.796, 1.824, 1.857, 1.895, 1.934, 1.977, 2.024, 2.071, 2.116, 2.154, 2.181, 2.185, | ||
1077 | 1015 | + 2.177, 2.157, 2.121, 2.074, 2.025, 1.973, 1.927, 1.886, 1.849, 1.815, 1.787, 1.765, 1.746, 1.732, 1.725, 1.722, 1.724, 1.732, 1.743, 1.762, 1.786, 1.813, 1.848, 1.886, 1.924, 1.969, 2.017, 2.066, 2.111, 2.153, 2.179, 2.183, | ||
1078 | 1016 | + 2.177, 2.155, 2.119, 2.072, 2.022, 1.969, 1.925, 1.881, 1.844, 1.811, 1.782, 1.758, 1.739, 1.725, 1.721, 1.717, 1.721, 1.724, 1.739, 1.757, 1.781, 1.809, 1.842, 1.879, 1.921, 1.965, 2.012, 2.062, 2.108, 2.151, 2.179, 2.182, | ||
1079 | 1017 | + 2.177, 2.156, 2.121, 2.071, 2.021, 1.968, 1.922, 1.879, 1.842, 1.811, 1.781, 1.757, 1.739, 1.725, 1.717, 1.715, 1.715, 1.723, 1.737, 1.757, 1.779, 1.808, 1.841, 1.877, 1.918, 1.963, 2.011, 2.061, 2.107, 2.148, 2.179, 2.183, | ||
1080 | 1018 | + 2.178, 2.157, 2.121, 2.072, 2.021, 1.969, 1.922, 1.881, 1.842, 1.811, 1.781, 1.758, 1.739, 1.726, 1.718, 1.717, 1.718, 1.723, 1.737, 1.757, 1.781, 1.809, 1.841, 1.877, 1.918, 1.964, 2.012, 2.061, 2.108, 2.149, 2.179, 2.183, | ||
1081 | 1019 | + 2.178, 2.159, 2.124, 2.074, 2.024, 1.974, 1.926, 1.885, 1.847, 1.813, 1.784, 1.762, 1.743, 1.731, 1.725, 1.719, 1.723, 1.728, 1.742, 1.762, 1.785, 1.814, 1.847, 1.881, 1.922, 1.966, 2.017, 2.065, 2.109, 2.151, 2.181, 2.184, | ||
1082 | 1020 | + 2.181, 2.163, 2.129, 2.082, 2.032, 1.982, 1.934, 1.891, 1.854, 1.822, 1.794, 1.769, 1.751, 1.739, 1.731, 1.727, 1.728, 1.739, 1.747, 1.768, 1.791, 1.821, 1.852, 1.889, 1.929, 1.972, 2.022, 2.071, 2.117, 2.155, 2.182, 2.189, | ||
1083 | 1021 | + 2.184, 2.169, 2.135, 2.091, 2.041, 1.994, 1.947, 1.902, 1.865, 1.833, 1.805, 1.779, 1.762, 1.751, 1.739, 1.739, 1.739, 1.747, 1.761, 1.779, 1.803, 1.831, 1.864, 1.898, 1.941, 1.984, 2.033, 2.079, 2.123, 2.163, 2.188, 2.193, | ||
1084 | 1022 | + 2.185, 2.174, 2.142, 2.099, 2.054, 2.004, 1.959, 1.917, 1.879, 1.846, 1.819, 1.794, 1.779, 1.762, 1.754, 1.753, 1.753, 1.761, 1.777, 1.793, 1.816, 1.843, 1.877, 1.913, 1.953, 1.995, 2.043, 2.091, 2.135, 2.169, 2.191, 2.196, | ||
1085 | 1023 | + 2.191, 2.179, 2.154, 2.118, 2.069, 2.023, 1.977, 1.935, 1.898, 1.865, 1.834, 1.813, 1.794, 1.779, 1.769, 1.769, 1.769, 1.777, 1.793, 1.809, 1.834, 1.863, 1.895, 1.929, 1.972, 2.015, 2.061, 2.105, 2.145, 2.178, 2.195, 2.199, | ||
1086 | 1024 | + 2.197, 2.188, 2.166, 2.129, 2.087, 2.041, 1.997, 1.956, 1.918, 1.884, 1.855, 1.834, 1.813, 1.798, 1.788, 1.788, 1.788, 1.796, 1.809, 1.832, 1.853, 1.881, 1.912, 1.949, 1.991, 2.033, 2.076, 2.119, 2.159, 2.187, 2.202, 2.205, | ||
1087 | 1025 | + 2.202, 2.197, 2.176, 2.148, 2.106, 2.065, 2.021, 1.979, 1.943, 1.909, 1.879, 1.855, 1.835, 1.819, 1.811, 1.811, 1.811, 1.818, 1.832, 1.853, 1.875, 1.904, 1.937, 1.972, 2.013, 2.055, 2.097, 2.138, 2.175, 2.197, 2.206, 2.207, | ||
1088 | 1026 | + 2.205, 2.202, 2.189, 2.162, 2.126, 2.084, 2.044, 2.004, 1.967, 1.935, 1.907, 1.879, 1.861, 1.845, 1.838, 1.835, 1.835, 1.844, 1.855, 1.875, 1.902, 1.928, 1.961, 1.998, 2.033, 2.076, 2.118, 2.155, 2.186, 2.205, 2.208, 2.208, | ||
1089 | 1027 | + 2.207, 2.205, 2.195, 2.175, 2.145, 2.108, 2.069, 2.029, 1.996, 1.963, 1.934, 1.908, 1.885, 1.872, 1.864, 1.863, 1.863, 1.869, 1.884, 1.902, 1.928, 1.956, 1.989, 2.023, 2.059, 2.099, 2.137, 2.172, 2.199, 2.212, 2.213, 2.209, | ||
1090 | 1028 | + 2.207, 2.207, 2.203, 2.188, 2.162, 2.128, 2.094, 2.058, 2.023, 1.993, 1.963, 1.936, 1.916, 1.899, 1.893, 1.892, 1.893, 1.899, 1.912, 1.929, 1.956, 1.986, 2.016, 2.049, 2.084, 2.121, 2.156, 2.187, 2.208, 2.215, 2.215, 2.208, | ||
1091 | 1029 | + 2.205, 2.208, 2.209, 2.199, 2.178, 2.149, 2.117, 2.083, 2.052, 2.023, 1.993, 1.967, 1.947, 1.933, 1.925, 1.922, 1.922, 1.929, 1.943, 1.961, 1.986, 2.015, 2.045, 2.076, 2.109, 2.143, 2.173, 2.198, 2.214, 2.218, 2.216, 2.205, | ||
1092 | 1030 | + 2.201, 2.207, 2.211, 2.211, 2.193, 2.168, 2.141, 2.112, 2.082, 2.052, 2.025, 2.001, 1.981, 1.967, 1.959, 1.958, 1.958, 1.967, 1.975, 1.992, 2.018, 2.046, 2.076, 2.105, 2.136, 2.163, 2.189, 2.208, 2.217, 2.217, 2.212, 2.203, | ||
1093 | 1031 | + 2.194, 2.204, 2.212, 2.213, 2.203, 2.187, 2.165, 2.139, 2.112, 2.083, 2.055, 2.034, 2.016, 2.001, 1.993, 1.993, 1.994, 1.999, 2.011, 2.027, 2.051, 2.077, 2.105, 2.133, 2.158, 2.181, 2.202, 2.217, 2.218, 2.218, 2.206, 2.193, | ||
1094 | 1032 | + 2.185, 2.198, 2.213, 2.214, 2.212, 2.201, 2.184, 2.163, 2.135, 2.111, 2.089, 2.071, 2.052, 2.039, 2.032, 2.031, 2.031, 2.036, 2.048, 2.065, 2.085, 2.106, 2.131, 2.155, 2.178, 2.198, 2.212, 2.219, 2.219, 2.215, 2.201, 2.185, | ||
1095 | 1033 | + 2.176, 2.191, 2.208, 2.217, 2.216, 2.205, 2.195, 2.177, 2.156, 2.133, 2.109, 2.089, 2.071, 2.055, 2.053, 2.053, 2.053, 2.057, 2.065, 2.085, 2.105, 2.123, 2.149, 2.171, 2.192, 2.205, 2.217, 2.219, 2.219, 2.202, 2.185, 2.181 | ||
1096 | 1034 | + ] | ||
1097 | 1035 | + } | ||
1098 | 1036 | + ], | ||
1099 | 1037 | + "calibrations_Cb": [ | ||
1100 | 1038 | + { | ||
1101 | 1039 | + "ct": 3000, | ||
1102 | 1040 | + "table": | ||
1103 | 1041 | + [ | ||
1104 | 1042 | + 2.518, 2.513, 2.503, 2.496, 2.488, 2.484, 2.485, 2.485, 2.486, 2.487, 2.487, 2.489, 2.494, 2.496, 2.496, 2.497, 2.499, 2.499, 2.496, 2.495, 2.492, 2.491, 2.491, 2.491, 2.492, 2.493, 2.495, 2.501, 2.508, 2.516, 2.528, 2.533, | ||
1105 | 1043 | + 2.515, 2.508, 2.495, 2.487, 2.483, 2.481, 2.482, 2.483, 2.485, 2.487, 2.489, 2.491, 2.495, 2.497, 2.498, 2.501, 2.502, 2.502, 2.499, 2.496, 2.494, 2.491, 2.491, 2.489, 2.489, 2.491, 2.493, 2.496, 2.502, 2.511, 2.521, 2.531, | ||
1106 | 1044 | + 2.507, 2.495, 2.486, 2.482, 2.478, 2.477, 2.481, 2.482, 2.484, 2.488, 2.491, 2.495, 2.499, 2.502, 2.506, 2.508, 2.509, 2.508, 2.505, 2.501, 2.497, 2.493, 2.491, 2.489, 2.488, 2.489, 2.489, 2.492, 2.496, 2.501, 2.511, 2.524, | ||
1107 | 1045 | + 2.501, 2.487, 2.482, 2.481, 2.478, 2.477, 2.481, 2.483, 2.487, 2.491, 2.501, 2.503, 2.509, 2.511, 2.518, 2.519, 2.519, 2.519, 2.516, 2.509, 2.504, 2.498, 2.495, 2.493, 2.489, 2.489, 2.488, 2.489, 2.492, 2.498, 2.505, 2.523, | ||
1108 | 1046 | + 2.499, 2.484, 2.481, 2.476, 2.476, 2.476, 2.481, 2.485, 2.492, 2.501, 2.509, 2.514, 2.519, 2.524, 2.528, 2.531, 2.533, 2.533, 2.525, 2.519, 2.514, 2.507, 2.501, 2.497, 2.493, 2.489, 2.489, 2.488, 2.491, 2.494, 2.501, 2.514, | ||
1109 | 1047 | + 2.497, 2.483, 2.478, 2.476, 2.476, 2.478, 2.482, 2.491, 2.499, 2.509, 2.515, 2.522, 2.528, 2.535, 2.539, 2.541, 2.543, 2.542, 2.539, 2.529, 2.522, 2.516, 2.507, 2.502, 2.497, 2.491, 2.489, 2.488, 2.489, 2.492, 2.498, 2.514, | ||
1110 | 1048 | + 2.492, 2.479, 2.476, 2.475, 2.476, 2.481, 2.488, 2.496, 2.505, 2.516, 2.524, 2.532, 2.541, 2.545, 2.552, 2.554, 2.554, 2.554, 2.548, 2.541, 2.532, 2.522, 2.516, 2.507, 2.502, 2.494, 2.491, 2.489, 2.489, 2.492, 2.494, 2.511, | ||
1111 | 1049 | + 2.491, 2.479, 2.476, 2.477, 2.478, 2.482, 2.491, 2.502, 2.514, 2.524, 2.533, 2.543, 2.548, 2.555, 2.562, 2.566, 2.567, 2.562, 2.557, 2.551, 2.541, 2.531, 2.523, 2.512, 2.506, 2.498, 2.493, 2.491, 2.491, 2.491, 2.493, 2.507, | ||
1112 | 1050 | + 2.489, 2.478, 2.476, 2.477, 2.481, 2.485, 2.494, 2.507, 2.517, 2.529, 2.542, 2.548, 2.557, 2.563, 2.567, 2.571, 2.572, 2.571, 2.565, 2.558, 2.549, 2.538, 2.528, 2.521, 2.509, 2.501, 2.494, 2.492, 2.491, 2.491, 2.491, 2.505, | ||
1113 | 1051 | + 2.488, 2.478, 2.477, 2.478, 2.482, 2.489, 2.499, 2.509, 2.523, 2.538, 2.548, 2.556, 2.563, 2.568, 2.573, 2.577, 2.578, 2.577, 2.573, 2.564, 2.555, 2.543, 2.535, 2.524, 2.515, 2.504, 2.495, 2.492, 2.489, 2.488, 2.489, 2.501, | ||
1114 | 1052 | + 2.486, 2.476, 2.475, 2.477, 2.483, 2.491, 2.503, 2.515, 2.529, 2.542, 2.553, 2.562, 2.568, 2.574, 2.581, 2.583, 2.584, 2.581, 2.578, 2.571, 2.562, 2.551, 2.539, 2.531, 2.517, 2.508, 2.497, 2.492, 2.488, 2.487, 2.489, 2.498, | ||
1115 | 1053 | + 2.486, 2.476, 2.475, 2.479, 2.484, 2.492, 2.504, 2.519, 2.533, 2.544, 2.557, 2.566, 2.573, 2.581, 2.584, 2.588, 2.588, 2.586, 2.581, 2.575, 2.567, 2.555, 2.546, 2.534, 2.517, 2.509, 2.499, 2.492, 2.489, 2.485, 2.488, 2.497, | ||
1116 | 1054 | + 2.487, 2.476, 2.476, 2.479, 2.486, 2.494, 2.506, 2.521, 2.535, 2.549, 2.559, 2.571, 2.578, 2.583, 2.589, 2.591, 2.591, 2.591, 2.587, 2.579, 2.571, 2.559, 2.551, 2.538, 2.523, 2.513, 2.503, 2.493, 2.489, 2.486, 2.487, 2.499, | ||
1117 | 1055 | + 2.486, 2.475, 2.475, 2.479, 2.486, 2.495, 2.509, 2.525, 2.541, 2.555, 2.563, 2.573, 2.582, 2.588, 2.591, 2.594, 2.595, 2.592, 2.591, 2.585, 2.574, 2.564, 2.552, 2.541, 2.525, 2.514, 2.503, 2.493, 2.489, 2.486, 2.486, 2.501, | ||
1118 | 1056 | + 2.486, 2.475, 2.475, 2.479, 2.488, 2.497, 2.509, 2.526, 2.542, 2.556, 2.564, 2.575, 2.584, 2.591, 2.595, 2.596, 2.597, 2.595, 2.592, 2.587, 2.577, 2.568, 2.554, 2.542, 2.527, 2.515, 2.504, 2.494, 2.491, 2.487, 2.487, 2.505, | ||
1119 | 1057 | + 2.484, 2.476, 2.475, 2.478, 2.488, 2.498, 2.509, 2.526, 2.542, 2.555, 2.565, 2.576, 2.584, 2.589, 2.595, 2.598, 2.598, 2.597, 2.593, 2.587, 2.578, 2.569, 2.556, 2.543, 2.528, 2.515, 2.504, 2.494, 2.489, 2.485, 2.485, 2.501, | ||
1120 | 1058 | + 2.484, 2.475, 2.475, 2.478, 2.489, 2.498, 2.509, 2.524, 2.539, 2.553, 2.565, 2.576, 2.584, 2.589, 2.594, 2.597, 2.597, 2.596, 2.593, 2.587, 2.577, 2.569, 2.555, 2.543, 2.529, 2.515, 2.503, 2.496, 2.491, 2.485, 2.486, 2.497, | ||
1121 | 1059 | + 2.484, 2.474, 2.474, 2.479, 2.487, 2.497, 2.509, 2.523, 2.539, 2.551, 2.563, 2.574, 2.581, 2.587, 2.592, 2.595, 2.596, 2.595, 2.591, 2.584, 2.574, 2.567, 2.554, 2.541, 2.526, 2.514, 2.503, 2.495, 2.489, 2.485, 2.486, 2.497, | ||
1122 | 1060 | + 2.484, 2.475, 2.475, 2.478, 2.485, 2.494, 2.507, 2.522, 2.535, 2.546, 2.559, 2.568, 2.579, 2.584, 2.589, 2.592, 2.593, 2.592, 2.588, 2.579, 2.571, 2.562, 2.551, 2.537, 2.524, 2.514, 2.501, 2.493, 2.489, 2.486, 2.487, 2.498, | ||
1123 | 1061 | + 2.485, 2.476, 2.475, 2.477, 2.485, 2.491, 2.506, 2.519, 2.531, 2.544, 2.555, 2.563, 2.571, 2.581, 2.584, 2.589, 2.589, 2.588, 2.583, 2.576, 2.566, 2.555, 2.546, 2.534, 2.522, 2.511, 2.499, 2.491, 2.488, 2.486, 2.487, 2.502, | ||
1124 | 1062 | + 2.487, 2.477, 2.475, 2.477, 2.483, 2.489, 2.503, 2.515, 2.525, 2.541, 2.551, 2.559, 2.567, 2.573, 2.579, 2.582, 2.583, 2.582, 2.576, 2.569, 2.562, 2.549, 2.542, 2.527, 2.518, 2.505, 2.497, 2.491, 2.489, 2.487, 2.487, 2.502, | ||
1125 | 1063 | + 2.487, 2.478, 2.475, 2.477, 2.482, 2.489, 2.497, 2.512, 2.522, 2.536, 2.544, 2.551, 2.562, 2.566, 2.573, 2.578, 2.578, 2.575, 2.571, 2.564, 2.556, 2.548, 2.536, 2.523, 2.513, 2.503, 2.493, 2.489, 2.487, 2.486, 2.487, 2.502, | ||
1126 | 1064 | + 2.488, 2.479, 2.477, 2.478, 2.482, 2.488, 2.496, 2.505, 2.516, 2.528, 2.538, 2.547, 2.553, 2.561, 2.565, 2.569, 2.569, 2.568, 2.564, 2.558, 2.549, 2.541, 2.531, 2.517, 2.509, 2.499, 2.492, 2.488, 2.486, 2.484, 2.486, 2.503, | ||
1127 | 1065 | + 2.492, 2.482, 2.479, 2.479, 2.482, 2.487, 2.491, 2.501, 2.512, 2.523, 2.531, 2.541, 2.549, 2.552, 2.558, 2.561, 2.562, 2.559, 2.558, 2.552, 2.542, 2.535, 2.525, 2.514, 2.505, 2.497, 2.491, 2.486, 2.485, 2.484, 2.487, 2.503, | ||
1128 | 1066 | + 2.495, 2.483, 2.479, 2.479, 2.482, 2.487, 2.491, 2.498, 2.508, 2.515, 2.526, 2.533, 2.541, 2.547, 2.551, 2.554, 2.555, 2.554, 2.552, 2.541, 2.537, 2.527, 2.519, 2.507, 2.502, 2.495, 2.488, 2.485, 2.484, 2.485, 2.488, 2.503, | ||
1129 | 1067 | + 2.499, 2.485, 2.483, 2.481, 2.482, 2.486, 2.489, 2.494, 2.504, 2.511, 2.519, 2.527, 2.531, 2.539, 2.542, 2.546, 2.546, 2.545, 2.539, 2.535, 2.527, 2.522, 2.509, 2.505, 2.497, 2.491, 2.486, 2.485, 2.485, 2.487, 2.491, 2.506, | ||
1130 | 1068 | + 2.499, 2.489, 2.483, 2.481, 2.481, 2.483, 2.488, 2.491, 2.499, 2.506, 2.512, 2.519, 2.524, 2.529, 2.535, 2.537, 2.536, 2.534, 2.532, 2.525, 2.522, 2.514, 2.506, 2.499, 2.492, 2.489, 2.485, 2.484, 2.485, 2.488, 2.492, 2.506, | ||
1131 | 1069 | + 2.507, 2.494, 2.486, 2.483, 2.482, 2.482, 2.486, 2.488, 2.495, 2.501, 2.507, 2.511, 2.517, 2.519, 2.523, 2.525, 2.525, 2.523, 2.523, 2.521, 2.514, 2.506, 2.502, 2.496, 2.491, 2.488, 2.485, 2.485, 2.487, 2.489, 2.496, 2.516, | ||
1132 | 1070 | + 2.511, 2.503, 2.489, 2.486, 2.485, 2.485, 2.485, 2.487, 2.489, 2.495, 2.501, 2.505, 2.509, 2.514, 2.517, 2.519, 2.518, 2.517, 2.515, 2.511, 2.505, 2.501, 2.495, 2.492, 2.488, 2.486, 2.485, 2.486, 2.488, 2.492, 2.499, 2.519, | ||
1133 | 1071 | + 2.517, 2.505, 2.494, 2.489, 2.487, 2.486, 2.486, 2.486, 2.489, 2.491, 2.496, 2.499, 2.503, 2.506, 2.508, 2.509, 2.511, 2.509, 2.507, 2.503, 2.501, 2.496, 2.493, 2.489, 2.485, 2.485, 2.486, 2.487, 2.491, 2.495, 2.505, 2.526, | ||
1134 | 1072 | + 2.526, 2.516, 2.504, 2.494, 2.493, 2.489, 2.489, 2.489, 2.489, 2.491, 2.496, 2.498, 2.501, 2.504, 2.506, 2.506, 2.506, 2.505, 2.503, 2.501, 2.499, 2.496, 2.494, 2.491, 2.487, 2.486, 2.489, 2.492, 2.497, 2.505, 2.517, 2.528, | ||
1135 | 1073 | + 2.529, 2.526, 2.508, 2.502, 2.501, 2.498, 2.495, 2.495, 2.495, 2.495, 2.497, 2.499, 2.501, 2.503, 2.504, 2.506, 2.505, 2.505, 2.503, 2.501, 2.499, 2.496, 2.495, 2.494, 2.492, 2.494, 2.494, 2.498, 2.504, 2.513, 2.525, 2.536 | ||
1136 | 1074 | + ] | ||
1137 | 1075 | + }, | ||
1138 | 1076 | + { | ||
1139 | 1077 | + "ct": 5000, | ||
1140 | 1078 | + "table": | ||
1141 | 1079 | + [ | ||
1142 | 1080 | + 1.427, 1.425, 1.423, 1.422, 1.421, 1.421, 1.421, 1.421, 1.421, 1.421, 1.422, 1.423, 1.424, 1.425, 1.426, 1.426, 1.426, 1.425, 1.425, 1.424, 1.422, 1.421, 1.421, 1.421, 1.421, 1.422, 1.422, 1.422, 1.424, 1.424, 1.426, 1.428, | ||
1143 | 1081 | + 1.426, 1.424, 1.422, 1.421, 1.419, 1.419, 1.419, 1.421, 1.421, 1.422, 1.423, 1.424, 1.425, 1.426, 1.427, 1.427, 1.427, 1.426, 1.425, 1.424, 1.422, 1.421, 1.421, 1.421, 1.421, 1.421, 1.421, 1.421, 1.421, 1.422, 1.424, 1.427, | ||
1144 | 1082 | + 1.423, 1.421, 1.421, 1.419, 1.419, 1.418, 1.419, 1.419, 1.421, 1.423, 1.425, 1.426, 1.428, 1.429, 1.431, 1.431, 1.431, 1.431, 1.429, 1.426, 1.424, 1.422, 1.421, 1.421, 1.421, 1.419, 1.419, 1.419, 1.421, 1.421, 1.422, 1.425, | ||
1145 | 1083 | + 1.422, 1.419, 1.419, 1.419, 1.418, 1.418, 1.419, 1.421, 1.422, 1.426, 1.428, 1.429, 1.433, 1.434, 1.436, 1.436, 1.436, 1.434, 1.432, 1.429, 1.426, 1.424, 1.423, 1.422, 1.421, 1.419, 1.419, 1.419, 1.419, 1.419, 1.421, 1.425, | ||
1146 | 1084 | + 1.422, 1.419, 1.419, 1.418, 1.418, 1.419, 1.419, 1.422, 1.425, 1.429, 1.432, 1.435, 1.436, 1.438, 1.439, 1.439, 1.441, 1.439, 1.435, 1.433, 1.429, 1.427, 1.425, 1.423, 1.422, 1.419, 1.419, 1.418, 1.418, 1.418, 1.419, 1.425, | ||
1147 | 1085 | + 1.422, 1.419, 1.418, 1.418, 1.418, 1.419, 1.421, 1.424, 1.428, 1.432, 1.436, 1.437, 1.439, 1.442, 1.443, 1.445, 1.444, 1.443, 1.441, 1.436, 1.434, 1.431, 1.427, 1.425, 1.422, 1.421, 1.419, 1.418, 1.418, 1.418, 1.419, 1.424, | ||
1148 | 1086 | + 1.422, 1.418, 1.417, 1.418, 1.419, 1.421, 1.423, 1.427, 1.431, 1.436, 1.438, 1.442, 1.444, 1.446, 1.448, 1.449, 1.448, 1.446, 1.445, 1.441, 1.436, 1.434, 1.429, 1.427, 1.423, 1.421, 1.419, 1.418, 1.418, 1.418, 1.418, 1.423, | ||
1149 | 1087 | + 1.421, 1.418, 1.418, 1.418, 1.419, 1.421, 1.424, 1.429, 1.434, 1.438, 1.442, 1.445, 1.447, 1.449, 1.451, 1.452, 1.452, 1.449, 1.447, 1.445, 1.441, 1.436, 1.433, 1.429, 1.425, 1.422, 1.419, 1.419, 1.418, 1.417, 1.418, 1.423, | ||
1150 | 1088 | + 1.421, 1.418, 1.418, 1.419, 1.419, 1.423, 1.426, 1.432, 1.436, 1.441, 1.445, 1.448, 1.449, 1.452, 1.453, 1.454, 1.454, 1.453, 1.451, 1.447, 1.444, 1.439, 1.433, 1.431, 1.427, 1.422, 1.421, 1.419, 1.418, 1.417, 1.418, 1.423, | ||
1151 | 1089 | + 1.421, 1.418, 1.418, 1.419, 1.421, 1.423, 1.428, 1.433, 1.439, 1.443, 1.448, 1.449, 1.453, 1.454, 1.455, 1.456, 1.456, 1.454, 1.453, 1.449, 1.446, 1.441, 1.437, 1.433, 1.429, 1.423, 1.421, 1.419, 1.418, 1.416, 1.417, 1.423, | ||
1152 | 1090 | + 1.421, 1.417, 1.417, 1.419, 1.422, 1.424, 1.429, 1.435, 1.441, 1.444, 1.449, 1.453, 1.454, 1.456, 1.458, 1.459, 1.458, 1.456, 1.454, 1.451, 1.448, 1.442, 1.439, 1.435, 1.429, 1.426, 1.421, 1.419, 1.418, 1.416, 1.417, 1.422, | ||
1153 | 1091 | + 1.419, 1.418, 1.417, 1.419, 1.422, 1.425, 1.429, 1.436, 1.442, 1.446, 1.451, 1.454, 1.456, 1.458, 1.461, 1.461, 1.461, 1.459, 1.456, 1.453, 1.451, 1.446, 1.441, 1.436, 1.431, 1.427, 1.422, 1.419, 1.418, 1.416, 1.417, 1.422, | ||
1154 | 1092 | + 1.419, 1.418, 1.418, 1.421, 1.423, 1.426, 1.431, 1.437, 1.444, 1.449, 1.452, 1.456, 1.458, 1.461, 1.462, 1.463, 1.463, 1.461, 1.458, 1.454, 1.452, 1.447, 1.443, 1.438, 1.432, 1.428, 1.423, 1.421, 1.419, 1.417, 1.417, 1.421, | ||
1155 | 1093 | + 1.419, 1.418, 1.417, 1.421, 1.423, 1.428, 1.432, 1.439, 1.445, 1.451, 1.453, 1.457, 1.459, 1.462, 1.464, 1.465, 1.465, 1.463, 1.461, 1.457, 1.453, 1.449, 1.444, 1.441, 1.432, 1.429, 1.425, 1.421, 1.419, 1.417, 1.418, 1.422, | ||
1156 | 1094 | + 1.418, 1.417, 1.417, 1.419, 1.423, 1.428, 1.433, 1.439, 1.446, 1.451, 1.453, 1.457, 1.461, 1.464, 1.465, 1.466, 1.466, 1.464, 1.462, 1.459, 1.454, 1.451, 1.445, 1.441, 1.436, 1.429, 1.425, 1.422, 1.421, 1.417, 1.417, 1.423, | ||
1157 | 1095 | + 1.417, 1.416, 1.416, 1.419, 1.423, 1.428, 1.433, 1.441, 1.446, 1.451, 1.454, 1.458, 1.461, 1.463, 1.465, 1.466, 1.466, 1.465, 1.463, 1.459, 1.454, 1.451, 1.446, 1.441, 1.437, 1.431, 1.426, 1.422, 1.421, 1.418, 1.418, 1.423, | ||
1158 | 1096 | + 1.417, 1.416, 1.417, 1.418, 1.423, 1.428, 1.433, 1.439, 1.445, 1.451, 1.453, 1.457, 1.461, 1.463, 1.465, 1.466, 1.466, 1.464, 1.462, 1.459, 1.454, 1.451, 1.446, 1.441, 1.437, 1.431, 1.426, 1.422, 1.419, 1.417, 1.417, 1.422, | ||
1159 | 1097 | + 1.417, 1.416, 1.416, 1.418, 1.422, 1.428, 1.433, 1.438, 1.444, 1.449, 1.453, 1.456, 1.459, 1.462, 1.464, 1.465, 1.465, 1.463, 1.461, 1.458, 1.453, 1.449, 1.445, 1.441, 1.435, 1.429, 1.426, 1.421, 1.419, 1.417, 1.417, 1.422, | ||
1160 | 1098 | + 1.418, 1.416, 1.416, 1.418, 1.421, 1.426, 1.432, 1.438, 1.443, 1.447, 1.451, 1.454, 1.458, 1.459, 1.462, 1.463, 1.463, 1.462, 1.459, 1.455, 1.451, 1.447, 1.443, 1.439, 1.434, 1.429, 1.425, 1.421, 1.419, 1.417, 1.417, 1.422, | ||
1161 | 1099 | + 1.418, 1.416, 1.416, 1.418, 1.421, 1.425, 1.431, 1.435, 1.442, 1.445, 1.449, 1.452, 1.455, 1.458, 1.458, 1.461, 1.461, 1.459, 1.456, 1.453, 1.449, 1.445, 1.442, 1.436, 1.433, 1.427, 1.425, 1.421, 1.419, 1.418, 1.418, 1.422, | ||
1162 | 1100 | + 1.419, 1.416, 1.415, 1.417, 1.419, 1.424, 1.429, 1.434, 1.439, 1.443, 1.446, 1.449, 1.452, 1.454, 1.456, 1.457, 1.457, 1.456, 1.453, 1.451, 1.447, 1.443, 1.441, 1.435, 1.431, 1.426, 1.424, 1.421, 1.419, 1.418, 1.418, 1.422, | ||
1163 | 1101 | + 1.419, 1.416, 1.415, 1.416, 1.419, 1.422, 1.426, 1.433, 1.437, 1.441, 1.444, 1.447, 1.449, 1.452, 1.453, 1.455, 1.455, 1.453, 1.451, 1.447, 1.444, 1.441, 1.438, 1.432, 1.428, 1.424, 1.421, 1.419, 1.418, 1.417, 1.417, 1.421, | ||
1164 | 1102 | + 1.419, 1.416, 1.415, 1.416, 1.418, 1.421, 1.425, 1.431, 1.435, 1.438, 1.442, 1.445, 1.446, 1.449, 1.451, 1.451, 1.451, 1.451, 1.447, 1.445, 1.443, 1.439, 1.434, 1.431, 1.427, 1.422, 1.421, 1.418, 1.417, 1.417, 1.417, 1.421, | ||
1165 | 1103 | + 1.418, 1.416, 1.415, 1.416, 1.417, 1.421, 1.423, 1.428, 1.433, 1.437, 1.439, 1.442, 1.444, 1.446, 1.448, 1.449, 1.449, 1.447, 1.445, 1.443, 1.439, 1.437, 1.432, 1.429, 1.425, 1.422, 1.419, 1.417, 1.417, 1.416, 1.416, 1.419, | ||
1166 | 1104 | + 1.418, 1.416, 1.416, 1.416, 1.417, 1.421, 1.422, 1.426, 1.429, 1.433, 1.436, 1.438, 1.441, 1.443, 1.445, 1.446, 1.445, 1.445, 1.443, 1.439, 1.437, 1.434, 1.431, 1.427, 1.424, 1.421, 1.419, 1.417, 1.417, 1.416, 1.416, 1.421, | ||
1167 | 1105 | + 1.419, 1.417, 1.416, 1.416, 1.417, 1.421, 1.422, 1.424, 1.427, 1.429, 1.432, 1.436, 1.437, 1.439, 1.442, 1.443, 1.443, 1.441, 1.439, 1.437, 1.434, 1.431, 1.429, 1.425, 1.422, 1.421, 1.419, 1.417, 1.416, 1.416, 1.417, 1.419, | ||
1168 | 1106 | + 1.421, 1.418, 1.416, 1.417, 1.418, 1.421, 1.421, 1.423, 1.424, 1.427, 1.429, 1.432, 1.434, 1.436, 1.438, 1.439, 1.439, 1.438, 1.436, 1.434, 1.431, 1.429, 1.426, 1.423, 1.422, 1.421, 1.418, 1.417, 1.417, 1.417, 1.417, 1.421, | ||
1169 | 1107 | + 1.423, 1.419, 1.418, 1.418, 1.419, 1.419, 1.421, 1.422, 1.423, 1.424, 1.427, 1.429, 1.432, 1.432, 1.434, 1.435, 1.435, 1.434, 1.433, 1.431, 1.429, 1.426, 1.424, 1.422, 1.421, 1.419, 1.418, 1.417, 1.417, 1.417, 1.418, 1.421, | ||
1170 | 1108 | + 1.425, 1.421, 1.419, 1.419, 1.419, 1.421, 1.421, 1.421, 1.421, 1.423, 1.424, 1.426, 1.428, 1.431, 1.431, 1.432, 1.432, 1.431, 1.431, 1.428, 1.425, 1.425, 1.422, 1.421, 1.419, 1.419, 1.418, 1.418, 1.418, 1.418, 1.419, 1.425, | ||
1171 | 1109 | + 1.426, 1.422, 1.419, 1.419, 1.419, 1.419, 1.419, 1.419, 1.419, 1.421, 1.422, 1.424, 1.426, 1.427, 1.428, 1.429, 1.429, 1.429, 1.427, 1.424, 1.423, 1.422, 1.421, 1.419, 1.418, 1.418, 1.418, 1.418, 1.418, 1.418, 1.419, 1.426, | ||
1172 | 1110 | + 1.428, 1.425, 1.421, 1.421, 1.421, 1.421, 1.421, 1.419, 1.419, 1.421, 1.422, 1.423, 1.424, 1.426, 1.426, 1.426, 1.426, 1.425, 1.424, 1.424, 1.422, 1.422, 1.421, 1.419, 1.419, 1.419, 1.419, 1.419, 1.419, 1.419, 1.423, 1.426, | ||
1173 | 1111 | + 1.429, 1.427, 1.424, 1.422, 1.422, 1.422, 1.421, 1.421, 1.421, 1.422, 1.422, 1.422, 1.424, 1.425, 1.426, 1.426, 1.425, 1.425, 1.424, 1.423, 1.422, 1.422, 1.421, 1.421, 1.421, 1.421, 1.419, 1.419, 1.421, 1.422, 1.424, 1.426 | ||
1174 | 1112 | + ] | ||
1175 | 1113 | + } | ||
1176 | 1114 | + ], | ||
1177 | 1115 | + "luminance_lut": | ||
1178 | 1116 | + [ | ||
1179 | 1117 | + 2.964, 2.872, 2.691, 2.544, 2.416, 2.302, 2.196, 2.093, 2.006, 1.928, 1.852, 1.801, 1.769, 1.752, 1.743, 1.743, 1.743, 1.746, 1.759, 1.784, 1.824, 1.888, 1.968, 2.052, 2.149, 2.253, 2.359, 2.483, 2.626, 2.785, 2.988, 3.051, | ||
1180 | 1118 | + 2.872, 2.748, 2.583, 2.442, 2.313, 2.201, 2.104, 2.012, 1.928, 1.852, 1.791, 1.742, 1.701, 1.671, 1.651, 1.643, 1.643, 1.659, 1.685, 1.721, 1.768, 1.824, 1.888, 1.971, 2.068, 2.152, 2.259, 2.381, 2.514, 2.669, 2.853, 2.988, | ||
1181 | 1119 | + 2.761, 2.655, 2.497, 2.356, 2.226, 2.114, 2.012, 1.928, 1.845, 1.769, 1.707, 1.653, 1.612, 1.583, 1.562, 1.556, 1.556, 1.572, 1.599, 1.635, 1.681, 1.742, 1.806, 1.888, 1.971, 2.068, 2.175, 2.292, 2.431, 2.576, 2.747, 2.853, | ||
1182 | 1120 | + 2.679, 2.571, 2.415, 2.275, 2.151, 2.035, 1.936, 1.845, 1.769, 1.689, 1.623, 1.572, 1.532, 1.501, 1.481, 1.473, 1.473, 1.492, 1.517, 1.556, 1.599, 1.659, 1.731, 1.806, 1.895, 1.992, 2.101, 2.218, 2.349, 2.493, 2.664, 2.753, | ||
1183 | 1121 | + 2.609, 2.492, 2.339, 2.204, 2.079, 1.971, 1.865, 1.772, 1.689, 1.619, 1.551, 1.499, 1.457, 1.423, 1.405, 1.397, 1.397, 1.411, 1.438, 1.477, 1.525, 1.585, 1.659, 1.731, 1.823, 1.922, 2.027, 2.148, 2.275, 2.422, 2.586, 2.683, | ||
1184 | 1122 | + 2.545, 2.426, 2.279, 2.139, 2.014, 1.903, 1.799, 1.702, 1.619, 1.551, 1.482, 1.427, 1.385, 1.353, 1.331, 1.325, 1.325, 1.338, 1.364, 1.403, 1.455, 1.522, 1.585, 1.665, 1.757, 1.858, 1.963, 2.081, 2.207, 2.356, 2.518, 2.615, | ||
1185 | 1123 | + 2.489, 2.367, 2.218, 2.079, 1.956, 1.844, 1.739, 1.642, 1.559, 1.482, 1.426, 1.363, 1.321, 1.287, 1.266, 1.259, 1.259, 1.274, 1.301, 1.339, 1.395, 1.455, 1.523, 1.606, 1.697, 1.797, 1.905, 2.024, 2.154, 2.296, 2.455, 2.563, | ||
1186 | 1124 | + 2.439, 2.316, 2.164, 2.028, 1.906, 1.793, 1.686, 1.589, 1.505, 1.427, 1.363, 1.308, 1.261, 1.229, 1.207, 1.202, 1.202, 1.215, 1.242, 1.283, 1.339, 1.395, 1.467, 1.551, 1.639, 1.742, 1.851, 1.972, 2.104, 2.243, 2.402, 2.515, | ||
1187 | 1125 | + 2.398, 2.262, 2.116, 1.982, 1.861, 1.745, 1.639, 1.541, 1.456, 1.377, 1.308, 1.261, 1.208, 1.177, 1.157, 1.153, 1.153, 1.167, 1.191, 1.233, 1.283, 1.343, 1.418, 1.499, 1.591, 1.696, 1.804, 1.928, 2.057, 2.194, 2.352, 2.471, | ||
1188 | 1126 | + 2.363, 2.222, 2.078, 1.942, 1.818, 1.706, 1.597, 1.501, 1.412, 1.334, 1.266, 1.208, 1.171, 1.134, 1.113, 1.109, 1.109, 1.123, 1.149, 1.191, 1.233, 1.296, 1.371, 1.457, 1.546, 1.654, 1.768, 1.886, 2.014, 2.155, 2.312, 2.436, | ||
1189 | 1127 | + 2.334, 2.188, 2.042, 1.909, 1.783, 1.668, 1.561, 1.464, 1.374, 1.295, 1.228, 1.171, 1.134, 1.098, 1.076, 1.072, 1.072, 1.087, 1.119, 1.149, 1.196, 1.259, 1.332, 1.419, 1.514, 1.616, 1.728, 1.849, 1.981, 2.123, 2.276, 2.406, | ||
1190 | 1128 | + 2.306, 2.159, 2.015, 1.881, 1.753, 1.639, 1.533, 1.434, 1.341, 1.263, 1.195, 1.139, 1.098, 1.074, 1.046, 1.044, 1.045, 1.059, 1.087, 1.119, 1.165, 1.227, 1.302, 1.387, 1.482, 1.586, 1.698, 1.819, 1.953, 2.093, 2.248, 2.383, | ||
1191 | 1129 | + 2.291, 2.141, 1.991, 1.856, 1.732, 1.615, 1.508, 1.409, 1.318, 1.238, 1.171, 1.114, 1.074, 1.046, 1.027, 1.023, 1.025, 1.043, 1.059, 1.095, 1.142, 1.203, 1.278, 1.362, 1.456, 1.559, 1.673, 1.796, 1.928, 2.071, 2.225, 2.359, | ||
1192 | 1130 | + 2.279, 2.118, 1.972, 1.839, 1.715, 1.599, 1.488, 1.389, 1.298, 1.219, 1.153, 1.097, 1.057, 1.027, 1.018, 1.009, 1.013, 1.025, 1.044, 1.078, 1.125, 1.186, 1.258, 1.342, 1.438, 1.541, 1.655, 1.779, 1.909, 2.053, 2.211, 2.351, | ||
1193 | 1131 | + 2.274, 2.108, 1.963, 1.831, 1.706, 1.588, 1.477, 1.376, 1.288, 1.207, 1.139, 1.086, 1.049, 1.021, 1.005, 1.002, 1.004, 1.013, 1.035, 1.069, 1.116, 1.176, 1.246, 1.331, 1.427, 1.531, 1.645, 1.767, 1.899, 2.045, 2.197, 2.351, | ||
1194 | 1132 | + 2.274, 2.106, 1.961, 1.827, 1.701, 1.585, 1.474, 1.374, 1.285, 1.206, 1.139, 1.085, 1.047, 1.019, 1.003, 1.001, 1.001, 1.012, 1.033, 1.067, 1.113, 1.173, 1.245, 1.329, 1.423, 1.529, 1.642, 1.765, 1.897, 2.042, 2.196, 2.349, | ||
1195 | 1133 | + 2.274, 2.108, 1.961, 1.827, 1.701, 1.585, 1.474, 1.374, 1.285, 1.206, 1.139, 1.085, 1.047, 1.021, 1.005, 1.001, 1.004, 1.012, 1.033, 1.068, 1.113, 1.173, 1.246, 1.329, 1.423, 1.529, 1.642, 1.766, 1.897, 2.042, 2.198, 2.349, | ||
1196 | 1134 | + 2.278, 2.116, 1.968, 1.833, 1.707, 1.591, 1.482, 1.382, 1.291, 1.214, 1.147, 1.091, 1.055, 1.028, 1.016, 1.006, 1.012, 1.018, 1.039, 1.074, 1.121, 1.182, 1.255, 1.339, 1.433, 1.538, 1.651, 1.777, 1.911, 2.051, 2.207, 2.351, | ||
1197 | 1135 | + 2.283, 2.127, 1.979, 1.846, 1.723, 1.605, 1.496, 1.397, 1.309, 1.229, 1.162, 1.108, 1.067, 1.041, 1.027, 1.018, 1.018, 1.036, 1.051, 1.087, 1.136, 1.197, 1.269, 1.354, 1.448, 1.554, 1.664, 1.789, 1.922, 2.065, 2.222, 2.365, | ||
1198 | 1136 | + 2.298, 2.145, 1.999, 1.865, 1.744, 1.627, 1.518, 1.421, 1.331, 1.251, 1.183, 1.129, 1.087, 1.065, 1.041, 1.036, 1.036, 1.051, 1.074, 1.107, 1.158, 1.219, 1.292, 1.378, 1.471, 1.575, 1.687, 1.809, 1.942, 2.085, 2.239, 2.378, | ||
1199 | 1137 | + 2.315, 2.174, 2.024, 1.893, 1.768, 1.652, 1.543, 1.445, 1.355, 1.278, 1.211, 1.155, 1.116, 1.087, 1.066, 1.061, 1.061, 1.074, 1.105, 1.137, 1.186, 1.248, 1.322, 1.405, 1.498, 1.602, 1.713, 1.835, 1.965, 2.109, 2.267, 2.399, | ||
1200 | 1138 | + 2.341, 2.206, 2.057, 1.923, 1.799, 1.685, 1.576, 1.479, 1.392, 1.312, 1.244, 1.187, 1.154, 1.116, 1.096, 1.092, 1.092, 1.106, 1.137, 1.173, 1.221, 1.282, 1.356, 1.439, 1.532, 1.635, 1.747, 1.869, 1.997, 2.141, 2.298, 2.425, | ||
1201 | 1139 | + 2.375, 2.244, 2.098, 1.965, 1.839, 1.722, 1.614, 1.519, 1.434, 1.355, 1.288, 1.234, 1.187, 1.155, 1.136, 1.132, 1.132, 1.147, 1.173, 1.219, 1.263, 1.324, 1.398, 1.479, 1.571, 1.674, 1.784, 1.904, 2.035, 2.177, 2.336, 2.455, | ||
1202 | 1140 | + 2.414, 2.286, 2.144, 2.011, 1.883, 1.767, 1.661, 1.566, 1.479, 1.401, 1.335, 1.286, 1.234, 1.202, 1.183, 1.178, 1.178, 1.195, 1.222, 1.263, 1.313, 1.372, 1.444, 1.526, 1.618, 1.718, 1.827, 1.951, 2.081, 2.221, 2.379, 2.498, | ||
1203 | 1141 | + 2.463, 2.339, 2.191, 2.056, 1.931, 1.819, 1.712, 1.616, 1.529, 1.452, 1.392, 1.335, 1.286, 1.254, 1.235, 1.232, 1.232, 1.248, 1.275, 1.313, 1.371, 1.425, 1.495, 1.576, 1.671, 1.768, 1.877, 1.999, 2.128, 2.269, 2.428, 2.541, | ||
1204 | 1142 | + 2.514, 2.396, 2.247, 2.112, 1.988, 1.873, 1.766, 1.671, 1.588, 1.513, 1.452, 1.392, 1.348, 1.316, 1.298, 1.292, 1.292, 1.307, 1.336, 1.373, 1.425, 1.486, 1.552, 1.636, 1.728, 1.826, 1.933, 2.051, 2.183, 2.327, 2.488, 2.587, | ||
1205 | 1143 | + 2.573, 2.459, 2.307, 2.171, 2.049, 1.931, 1.828, 1.731, 1.649, 1.582, 1.513, 1.459, 1.415, 1.381, 1.363, 1.358, 1.358, 1.373, 1.399, 1.439, 1.486, 1.552, 1.617, 1.696, 1.787, 1.888, 1.995, 2.112, 2.244, 2.391, 2.552, 2.652, | ||
1206 | 1144 | + 2.635, 2.525, 2.377, 2.239, 2.111, 1.996, 1.895, 1.799, 1.719, 1.649, 1.582, 1.531, 1.486, 1.454, 1.434, 1.429, 1.429, 1.444, 1.469, 1.507, 1.555, 1.617, 1.692, 1.766, 1.854, 1.954, 2.065, 2.181, 2.313, 2.459, 2.623, 2.722, | ||
1207 | 1145 | + 2.714, 2.604, 2.452, 2.313, 2.188, 2.071, 1.966, 1.876, 1.799, 1.719, 1.656, 1.604, 1.562, 1.529, 1.511, 1.504, 1.504, 1.519, 1.544, 1.583, 1.632, 1.692, 1.766, 1.839, 1.929, 2.029, 2.138, 2.259, 2.391, 2.539, 2.712, 2.811, | ||
1208 | 1146 | + 2.809, 2.698, 2.537, 2.396, 2.277, 2.163, 2.053, 1.965, 1.876, 1.799, 1.741, 1.688, 1.643, 1.613, 1.592, 1.586, 1.586, 1.601, 1.628, 1.666, 1.715, 1.773, 1.839, 1.927, 2.012, 2.111, 2.222, 2.342, 2.477, 2.625, 2.811, 2.926, | ||
1209 | 1147 | + 2.921, 2.809, 2.637, 2.493, 2.376, 2.256, 2.149, 2.053, 1.966, 1.893, 1.832, 1.778, 1.736, 1.708, 1.687, 1.681, 1.681, 1.696, 1.721, 1.757, 1.806, 1.864, 1.929, 2.012, 2.106, 2.199, 2.313, 2.437, 2.577, 2.731, 2.926, 3.051, | ||
1210 | 1148 | + 3.029, 2.921, 2.745, 2.591, 2.474, 2.355, 2.246, 2.146, 2.049, 1.966, 1.893, 1.832, 1.799, 1.776, 1.768, 1.768, 1.768, 1.771, 1.783, 1.809, 1.864, 1.929, 2.012, 2.097, 2.195, 2.297, 2.412, 2.539, 2.682, 2.846, 3.051, 3.123 | ||
1211 | 1149 | + ], | ||
1212 | 1150 | + "sigma": 0.00463, | ||
1213 | 1151 | + "sigma_Cb": 0.00149 | ||
1214 | 1152 | + } | ||
1215 | 1153 | + }, | ||
1216 | 1154 | + { | ||
1217 | 1155 | + "rpi.contrast": | ||
1218 | 1156 | + { | ||
1219 | 1157 | + "ce_enable": 1, | ||
1220 | 1158 | + "lo_max": 1000, | ||
1221 | 1159 | + "gamma_curve": | ||
1222 | 1160 | + [ | ||
1223 | 1161 | + 0, 0, | ||
1224 | 1162 | + 1024, 5040, | ||
1225 | 1163 | + 2048, 9338, | ||
1226 | 1164 | + 3072, 12356, | ||
1227 | 1165 | + 4096, 15312, | ||
1228 | 1166 | + 5120, 18051, | ||
1229 | 1167 | + 6144, 20790, | ||
1230 | 1168 | + 7168, 23193, | ||
1231 | 1169 | + 8192, 25744, | ||
1232 | 1170 | + 9216, 27942, | ||
1233 | 1171 | + 10240, 30035, | ||
1234 | 1172 | + 11264, 32005, | ||
1235 | 1173 | + 12288, 33975, | ||
1236 | 1174 | + 13312, 35815, | ||
1237 | 1175 | + 14336, 37600, | ||
1238 | 1176 | + 15360, 39168, | ||
1239 | 1177 | + 16384, 40642, | ||
1240 | 1178 | + 18432, 43379, | ||
1241 | 1179 | + 20480, 45749, | ||
1242 | 1180 | + 22528, 47753, | ||
1243 | 1181 | + 24576, 49621, | ||
1244 | 1182 | + 26624, 51253, | ||
1245 | 1183 | + 28672, 52698, | ||
1246 | 1184 | + 30720, 53796, | ||
1247 | 1185 | + 32768, 54876, | ||
1248 | 1186 | + 36864, 57012, | ||
1249 | 1187 | + 40960, 58656, | ||
1250 | 1188 | + 45056, 59954, | ||
1251 | 1189 | + 49152, 61183, | ||
1252 | 1190 | + 53248, 62355, | ||
1253 | 1191 | + 57344, 63419, | ||
1254 | 1192 | + 61440, 64476, | ||
1255 | 1193 | + 65535, 65535 | ||
1256 | 1194 | + ] | ||
1257 | 1195 | + } | ||
1258 | 1196 | + }, | ||
1259 | 1197 | + { | ||
1260 | 1198 | + "rpi.ccm": | ||
1261 | 1199 | + { | ||
1262 | 1200 | + "ccms": [ | ||
1263 | 1201 | + { | ||
1264 | 1202 | + "ct": 2860, | ||
1265 | 1203 | + "ccm": | ||
1266 | 1204 | + [ | ||
1267 | 1205 | + 2.12089, -0.52461, -0.59629, | ||
1268 | 1206 | + -0.85342, 2.80445, -0.95103, | ||
1269 | 1207 | + -0.26897, -1.14788, 2.41685 | ||
1270 | 1208 | + ] | ||
1271 | 1209 | + }, | ||
1272 | 1210 | + { | ||
1273 | 1211 | + "ct": 2960, | ||
1274 | 1212 | + "ccm": | ||
1275 | 1213 | + [ | ||
1276 | 1214 | + 2.26962, -0.54174, -0.72789, | ||
1277 | 1215 | + -0.77008, 2.60271, -0.83262, | ||
1278 | 1216 | + -0.26036, -1.51254, 2.77289 | ||
1279 | 1217 | + ] | ||
1280 | 1218 | + }, | ||
1281 | 1219 | + { | ||
1282 | 1220 | + "ct": 3603, | ||
1283 | 1221 | + "ccm": | ||
1284 | 1222 | + [ | ||
1285 | 1223 | + 2.18644, -0.66148, -0.52496, | ||
1286 | 1224 | + -0.77828, 2.69474, -0.91645, | ||
1287 | 1225 | + -0.25239, -0.83059, 2.08298 | ||
1288 | 1226 | + ] | ||
1289 | 1227 | + }, | ||
1290 | 1228 | + { | ||
1291 | 1229 | + "ct": 4650, | ||
1292 | 1230 | + "ccm": | ||
1293 | 1231 | + [ | ||
1294 | 1232 | + 2.18174, -0.70887, -0.47287, | ||
1295 | 1233 | + -0.70196, 2.76426, -1.06231, | ||
1296 | 1234 | + -0.25157, -0.71978, 1.97135 | ||
1297 | 1235 | + ] | ||
1298 | 1236 | + }, | ||
1299 | 1237 | + { | ||
1300 | 1238 | + "ct": 5858, | ||
1301 | 1239 | + "ccm": | ||
1302 | 1240 | + [ | ||
1303 | 1241 | + 2.32392, -0.88421, -0.43971, | ||
1304 | 1242 | + -0.63821, 2.58348, -0.94527, | ||
1305 | 1243 | + -0.28541, -0.54112, 1.82653 | ||
1306 | 1244 | + ] | ||
1307 | 1245 | + }, | ||
1308 | 1246 | + { | ||
1309 | 1247 | + "ct": 7580, | ||
1310 | 1248 | + "ccm": | ||
1311 | 1249 | + [ | ||
1312 | 1250 | + 2.21175, -0.53242, -0.67933, | ||
1313 | 1251 | + -0.57875, 3.07922, -1.50047, | ||
1314 | 1252 | + -0.27709, -0.73338, 2.01048 | ||
1315 | 1253 | + ] | ||
1316 | 1254 | + } | ||
1317 | 1255 | + ] | ||
1318 | 1256 | + } | ||
1319 | 1257 | + }, | ||
1320 | 1258 | + { | ||
1321 | 1259 | + "rpi.sharpen": | ||
1322 | 1260 | + { | ||
1323 | 1261 | + "threshold": 0.25, | ||
1324 | 1262 | + "limit": 1.0, | ||
1325 | 1263 | + "strength": 1.0 | ||
1326 | 1264 | + } | ||
1327 | 1265 | + }, | ||
1328 | 1266 | + { | ||
1329 | 1267 | + "rpi.hdr": | ||
1330 | 1268 | + { | ||
1331 | 1269 | + "Off": | ||
1332 | 1270 | + { | ||
1333 | 1271 | + "cadence": [ 0 ] | ||
1334 | 1272 | + }, | ||
1335 | 1273 | + "MultiExposureUnmerged": | ||
1336 | 1274 | + { | ||
1337 | 1275 | + "cadence": [ 1, 2 ], | ||
1338 | 1276 | + "channel_map": | ||
1339 | 1277 | + { | ||
1340 | 1278 | + "short": 1, | ||
1341 | 1279 | + "long": 2 | ||
1342 | 1280 | + } | ||
1343 | 1281 | + }, | ||
1344 | 1282 | + "SingleExposure": | ||
1345 | 1283 | + { | ||
1346 | 1284 | + "cadence": [ 1 ], | ||
1347 | 1285 | + "channel_map": | ||
1348 | 1286 | + { | ||
1349 | 1287 | + "short": 1 | ||
1350 | 1288 | + }, | ||
1351 | 1289 | + "spatial_gain": 2.0, | ||
1352 | 1290 | + "tonemap_enable": 1 | ||
1353 | 1291 | + }, | ||
1354 | 1292 | + "MultiExposure": | ||
1355 | 1293 | + { | ||
1356 | 1294 | + "cadence": [ 1, 2 ], | ||
1357 | 1295 | + "channel_map": | ||
1358 | 1296 | + { | ||
1359 | 1297 | + "short": 1, | ||
1360 | 1298 | + "long": 2 | ||
1361 | 1299 | + }, | ||
1362 | 1300 | + "stitch_enable": 1, | ||
1363 | 1301 | + "spatial_gain": 2.0, | ||
1364 | 1302 | + "tonemap_enable": 1 | ||
1365 | 1303 | + }, | ||
1366 | 1304 | + "Night": | ||
1367 | 1305 | + { | ||
1368 | 1306 | + "cadence": [ 3 ], | ||
1369 | 1307 | + "channel_map": | ||
1370 | 1308 | + { | ||
1371 | 1309 | + "short": 3 | ||
1372 | 1310 | + }, | ||
1373 | 1311 | + "tonemap_enable": 1, | ||
1374 | 1312 | + "tonemap": | ||
1375 | 1313 | + [ | ||
1376 | 1314 | + 0, 0, | ||
1377 | 1315 | + 5000, 20000, | ||
1378 | 1316 | + 10000, 30000, | ||
1379 | 1317 | + 20000, 47000, | ||
1380 | 1318 | + 30000, 55000, | ||
1381 | 1319 | + 65535, 65535 | ||
1382 | 1320 | + ] | ||
1383 | 1321 | + } | ||
1384 | 1322 | + } | ||
1385 | 1323 | + } | ||
1386 | 1324 | + ] | ||
1387 | 1325 | +} | ||
1388 | 1326 | \ No newline at end of file | ||
1389 | 1327 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
1390 | 1328 | +++ b/src/ipa/rpi/pisp/data/imx219_noir.json 2024-11-25 21:08:37.638494238 +0530 | ||
1391 | 1329 | @@ -0,0 +1,1112 @@ | ||
1392 | 1330 | +{ | ||
1393 | 1331 | + "version": 2.0, | ||
1394 | 1332 | + "target": "pisp", | ||
1395 | 1333 | + "algorithms": [ | ||
1396 | 1334 | + { | ||
1397 | 1335 | + "rpi.black_level": | ||
1398 | 1336 | + { | ||
1399 | 1337 | + "black_level": 4096 | ||
1400 | 1338 | + } | ||
1401 | 1339 | + }, | ||
1402 | 1340 | + { | ||
1403 | 1341 | + "rpi.lux": | ||
1404 | 1342 | + { | ||
1405 | 1343 | + "reference_shutter_speed": 21965, | ||
1406 | 1344 | + "reference_gain": 1.0, | ||
1407 | 1345 | + "reference_aperture": 1.0, | ||
1408 | 1346 | + "reference_lux": 800, | ||
1409 | 1347 | + "reference_Y": 11460 | ||
1410 | 1348 | + } | ||
1411 | 1349 | + }, | ||
1412 | 1350 | + { | ||
1413 | 1351 | + "rpi.dpc": | ||
1414 | 1352 | + { | ||
1415 | 1353 | + "strength": 1 | ||
1416 | 1354 | + } | ||
1417 | 1355 | + }, | ||
1418 | 1356 | + { | ||
1419 | 1357 | + "rpi.noise": | ||
1420 | 1358 | + { | ||
1421 | 1359 | + "reference_constant": 0, | ||
1422 | 1360 | + "reference_slope": 3.661 | ||
1423 | 1361 | + } | ||
1424 | 1362 | + }, | ||
1425 | 1363 | + { | ||
1426 | 1364 | + "rpi.geq": | ||
1427 | 1365 | + { | ||
1428 | 1366 | + "offset": 239, | ||
1429 | 1367 | + "slope": 0.00766 | ||
1430 | 1368 | + } | ||
1431 | 1369 | + }, | ||
1432 | 1370 | + { | ||
1433 | 1371 | + "rpi.denoise": | ||
1434 | 1372 | + { | ||
1435 | 1373 | + "normal": | ||
1436 | 1374 | + { | ||
1437 | 1375 | + "sdn": | ||
1438 | 1376 | + { | ||
1439 | 1377 | + "deviation": 1.6, | ||
1440 | 1378 | + "strength": 0.5, | ||
1441 | 1379 | + "deviation2": 3.2, | ||
1442 | 1380 | + "deviation_no_tdn": 3.2, | ||
1443 | 1381 | + "strength_no_tdn": 0.75 | ||
1444 | 1382 | + }, | ||
1445 | 1383 | + "cdn": | ||
1446 | 1384 | + { | ||
1447 | 1385 | + "deviation": 200, | ||
1448 | 1386 | + "strength": 0.3 | ||
1449 | 1387 | + }, | ||
1450 | 1388 | + "tdn": | ||
1451 | 1389 | + { | ||
1452 | 1390 | + "deviation": 0.8, | ||
1453 | 1391 | + "threshold": 0.05 | ||
1454 | 1392 | + } | ||
1455 | 1393 | + }, | ||
1456 | 1394 | + "hdr": | ||
1457 | 1395 | + { | ||
1458 | 1396 | + "sdn": | ||
1459 | 1397 | + { | ||
1460 | 1398 | + "deviation": 1.6, | ||
1461 | 1399 | + "strength": 0.5, | ||
1462 | 1400 | + "deviation2": 3.2, | ||
1463 | 1401 | + "deviation_no_tdn": 3.2, | ||
1464 | 1402 | + "strength_no_tdn": 0.75 | ||
1465 | 1403 | + }, | ||
1466 | 1404 | + "cdn": | ||
1467 | 1405 | + { | ||
1468 | 1406 | + "deviation": 200, | ||
1469 | 1407 | + "strength": 0.3 | ||
1470 | 1408 | + }, | ||
1471 | 1409 | + "tdn": | ||
1472 | 1410 | + { | ||
1473 | 1411 | + "deviation": 1.3, | ||
1474 | 1412 | + "threshold": 0.1 | ||
1475 | 1413 | + } | ||
1476 | 1414 | + }, | ||
1477 | 1415 | + "night": | ||
1478 | 1416 | + { | ||
1479 | 1417 | + "sdn": | ||
1480 | 1418 | + { | ||
1481 | 1419 | + "deviation": 1.6, | ||
1482 | 1420 | + "strength": 0.5, | ||
1483 | 1421 | + "deviation2": 3.2, | ||
1484 | 1422 | + "deviation_no_tdn": 3.2, | ||
1485 | 1423 | + "strength_no_tdn": 0.75 | ||
1486 | 1424 | + }, | ||
1487 | 1425 | + "cdn": | ||
1488 | 1426 | + { | ||
1489 | 1427 | + "deviation": 200, | ||
1490 | 1428 | + "strength": 0.3 | ||
1491 | 1429 | + }, | ||
1492 | 1430 | + "tdn": | ||
1493 | 1431 | + { | ||
1494 | 1432 | + "deviation": 1.3, | ||
1495 | 1433 | + "threshold": 0.1 | ||
1496 | 1434 | + } | ||
1497 | 1435 | + } | ||
1498 | 1436 | + } | ||
1499 | 1437 | + }, | ||
1500 | 1438 | + { | ||
1501 | 1439 | + "rpi.awb": | ||
1502 | 1440 | + { | ||
1503 | 1441 | + "bayes": 0 | ||
1504 | 1442 | + } | ||
1505 | 1443 | + }, | ||
1506 | 1444 | + { | ||
1507 | 1445 | + "rpi.agc": | ||
1508 | 1446 | + { | ||
1509 | 1447 | + "channels": [ | ||
1510 | 1448 | + { | ||
1511 | 1449 | + "comment": "Channel 0 is normal AGC", | ||
1512 | 1450 | + "metering_modes": | ||
1513 | 1451 | + { | ||
1514 | 1452 | + "centre-weighted": | ||
1515 | 1453 | + { | ||
1516 | 1454 | + "weights": | ||
1517 | 1455 | + [ | ||
1518 | 1456 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, | ||
1519 | 1457 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
1520 | 1458 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
1521 | 1459 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
1522 | 1460 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
1523 | 1461 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
1524 | 1462 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
1525 | 1463 | + 1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1, | ||
1526 | 1464 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
1527 | 1465 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
1528 | 1466 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
1529 | 1467 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
1530 | 1468 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
1531 | 1469 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
1532 | 1470 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 | ||
1533 | 1471 | + ] | ||
1534 | 1472 | + }, | ||
1535 | 1473 | + "spot": | ||
1536 | 1474 | + { | ||
1537 | 1475 | + "weights": | ||
1538 | 1476 | + [ | ||
1539 | 1477 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1540 | 1478 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1541 | 1479 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1542 | 1480 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1543 | 1481 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1544 | 1482 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
1545 | 1483 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
1546 | 1484 | + 0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0, | ||
1547 | 1485 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
1548 | 1486 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
1549 | 1487 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1550 | 1488 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1551 | 1489 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1552 | 1490 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1553 | 1491 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | ||
1554 | 1492 | + ] | ||
1555 | 1493 | + }, | ||
1556 | 1494 | + "matrix": | ||
1557 | 1495 | + { | ||
1558 | 1496 | + "weights": | ||
1559 | 1497 | + [ | ||
1560 | 1498 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1561 | 1499 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1562 | 1500 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1563 | 1501 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1564 | 1502 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1565 | 1503 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1566 | 1504 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1567 | 1505 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1568 | 1506 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1569 | 1507 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1570 | 1508 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1571 | 1509 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1572 | 1510 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1573 | 1511 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1574 | 1512 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 | ||
1575 | 1513 | + ] | ||
1576 | 1514 | + } | ||
1577 | 1515 | + }, | ||
1578 | 1516 | + "exposure_modes": | ||
1579 | 1517 | + { | ||
1580 | 1518 | + "normal": | ||
1581 | 1519 | + { | ||
1582 | 1520 | + "shutter": [ 100, 10000, 30000, 60000, 66666 ], | ||
1583 | 1521 | + "gain": [ 1.0, 1.5, 2.0, 4.0, 10.0 ] | ||
1584 | 1522 | + }, | ||
1585 | 1523 | + "short": | ||
1586 | 1524 | + { | ||
1587 | 1525 | + "shutter": [ 100, 5000, 10000, 20000, 60000 ], | ||
1588 | 1526 | + "gain": [ 1.0, 1.5, 2.0, 4.0, 10.0 ] | ||
1589 | 1527 | + }, | ||
1590 | 1528 | + "long": | ||
1591 | 1529 | + { | ||
1592 | 1530 | + "shutter": [ 100, 10000, 30000, 60000, 90000, 120000 ], | ||
1593 | 1531 | + "gain": [ 1.0, 1.5, 2.0, 4.0, 8.0, 12.0 ] | ||
1594 | 1532 | + } | ||
1595 | 1533 | + }, | ||
1596 | 1534 | + "constraint_modes": | ||
1597 | 1535 | + { | ||
1598 | 1536 | + "normal": [ | ||
1599 | 1537 | + { | ||
1600 | 1538 | + "bound": "LOWER", | ||
1601 | 1539 | + "q_lo": 0.98, | ||
1602 | 1540 | + "q_hi": 1.0, | ||
1603 | 1541 | + "y_target": | ||
1604 | 1542 | + [ | ||
1605 | 1543 | + 0, 0.5, | ||
1606 | 1544 | + 1000, 0.5 | ||
1607 | 1545 | + ] | ||
1608 | 1546 | + } | ||
1609 | 1547 | + ], | ||
1610 | 1548 | + "highlight": [ | ||
1611 | 1549 | + { | ||
1612 | 1550 | + "bound": "LOWER", | ||
1613 | 1551 | + "q_lo": 0.98, | ||
1614 | 1552 | + "q_hi": 1.0, | ||
1615 | 1553 | + "y_target": | ||
1616 | 1554 | + [ | ||
1617 | 1555 | + 0, 0.5, | ||
1618 | 1556 | + 1000, 0.5 | ||
1619 | 1557 | + ] | ||
1620 | 1558 | + }, | ||
1621 | 1559 | + { | ||
1622 | 1560 | + "bound": "UPPER", | ||
1623 | 1561 | + "q_lo": 0.98, | ||
1624 | 1562 | + "q_hi": 1.0, | ||
1625 | 1563 | + "y_target": | ||
1626 | 1564 | + [ | ||
1627 | 1565 | + 0, 0.8, | ||
1628 | 1566 | + 1000, 0.8 | ||
1629 | 1567 | + ] | ||
1630 | 1568 | + } | ||
1631 | 1569 | + ], | ||
1632 | 1570 | + "shadows": [ | ||
1633 | 1571 | + { | ||
1634 | 1572 | + "bound": "LOWER", | ||
1635 | 1573 | + "q_lo": 0.0, | ||
1636 | 1574 | + "q_hi": 0.5, | ||
1637 | 1575 | + "y_target": | ||
1638 | 1576 | + [ | ||
1639 | 1577 | + 0, 0.17, | ||
1640 | 1578 | + 1000, 0.17 | ||
1641 | 1579 | + ] | ||
1642 | 1580 | + } | ||
1643 | 1581 | + ] | ||
1644 | 1582 | + }, | ||
1645 | 1583 | + "y_target": | ||
1646 | 1584 | + [ | ||
1647 | 1585 | + 0, 0.16, | ||
1648 | 1586 | + 1000, 0.165, | ||
1649 | 1587 | + 10000, 0.17 | ||
1650 | 1588 | + ] | ||
1651 | 1589 | + }, | ||
1652 | 1590 | + { | ||
1653 | 1591 | + "comment": "Channel 1 is the HDR short channel", | ||
1654 | 1592 | + "desaturate": 0, | ||
1655 | 1593 | + "metering_modes": | ||
1656 | 1594 | + { | ||
1657 | 1595 | + "centre-weighted": | ||
1658 | 1596 | + { | ||
1659 | 1597 | + "weights": | ||
1660 | 1598 | + [ | ||
1661 | 1599 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, | ||
1662 | 1600 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
1663 | 1601 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
1664 | 1602 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
1665 | 1603 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
1666 | 1604 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
1667 | 1605 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
1668 | 1606 | + 1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1, | ||
1669 | 1607 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
1670 | 1608 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
1671 | 1609 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
1672 | 1610 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
1673 | 1611 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
1674 | 1612 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
1675 | 1613 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 | ||
1676 | 1614 | + ] | ||
1677 | 1615 | + }, | ||
1678 | 1616 | + "spot": | ||
1679 | 1617 | + { | ||
1680 | 1618 | + "weights": | ||
1681 | 1619 | + [ | ||
1682 | 1620 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1683 | 1621 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1684 | 1622 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1685 | 1623 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1686 | 1624 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1687 | 1625 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
1688 | 1626 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
1689 | 1627 | + 0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0, | ||
1690 | 1628 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
1691 | 1629 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
1692 | 1630 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1693 | 1631 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1694 | 1632 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1695 | 1633 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1696 | 1634 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | ||
1697 | 1635 | + ] | ||
1698 | 1636 | + }, | ||
1699 | 1637 | + "matrix": | ||
1700 | 1638 | + { | ||
1701 | 1639 | + "weights": | ||
1702 | 1640 | + [ | ||
1703 | 1641 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1704 | 1642 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1705 | 1643 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1706 | 1644 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1707 | 1645 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1708 | 1646 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1709 | 1647 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1710 | 1648 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1711 | 1649 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1712 | 1650 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1713 | 1651 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1714 | 1652 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1715 | 1653 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1716 | 1654 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1717 | 1655 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 | ||
1718 | 1656 | + ] | ||
1719 | 1657 | + } | ||
1720 | 1658 | + }, | ||
1721 | 1659 | + "exposure_modes": | ||
1722 | 1660 | + { | ||
1723 | 1661 | + "normal": | ||
1724 | 1662 | + { | ||
1725 | 1663 | + "shutter": [ 100, 15000, 30000 ], | ||
1726 | 1664 | + "gain": [ 1.0, 1.0, 2.0 ] | ||
1727 | 1665 | + }, | ||
1728 | 1666 | + "short": | ||
1729 | 1667 | + { | ||
1730 | 1668 | + "shutter": [ 100, 15000, 30000 ], | ||
1731 | 1669 | + "gain": [ 1.0, 2.0, 2.0 ] | ||
1732 | 1670 | + }, | ||
1733 | 1671 | + "long": | ||
1734 | 1672 | + { | ||
1735 | 1673 | + "shutter": [ 100, 15000, 60000 ], | ||
1736 | 1674 | + "gain": [ 1.0, 1.0, 1.0 ] | ||
1737 | 1675 | + } | ||
1738 | 1676 | + }, | ||
1739 | 1677 | + "constraint_modes": | ||
1740 | 1678 | + { | ||
1741 | 1679 | + "normal": [ | ||
1742 | 1680 | + { | ||
1743 | 1681 | + "bound": "LOWER", | ||
1744 | 1682 | + "q_lo": 0.0, | ||
1745 | 1683 | + "q_hi": 0.2, | ||
1746 | 1684 | + "y_target": | ||
1747 | 1685 | + [ | ||
1748 | 1686 | + 0, 0.02, | ||
1749 | 1687 | + 1000, 0.02 | ||
1750 | 1688 | + ] | ||
1751 | 1689 | + }, | ||
1752 | 1690 | + { | ||
1753 | 1691 | + "bound": "UPPER", | ||
1754 | 1692 | + "q_lo": 0.98, | ||
1755 | 1693 | + "q_hi": 1.0, | ||
1756 | 1694 | + "y_target": | ||
1757 | 1695 | + [ | ||
1758 | 1696 | + 0, 0.7, | ||
1759 | 1697 | + 1000, 0.7 | ||
1760 | 1698 | + ] | ||
1761 | 1699 | + }, | ||
1762 | 1700 | + { | ||
1763 | 1701 | + "bound": "LOWER", | ||
1764 | 1702 | + "q_lo": 0.0, | ||
1765 | 1703 | + "q_hi": 0.2, | ||
1766 | 1704 | + "y_target": | ||
1767 | 1705 | + [ | ||
1768 | 1706 | + 0, 0.01, | ||
1769 | 1707 | + 1000, 0.01 | ||
1770 | 1708 | + ] | ||
1771 | 1709 | + }, | ||
1772 | 1710 | + { | ||
1773 | 1711 | + "bound": "UPPER", | ||
1774 | 1712 | + "q_lo": 0.9, | ||
1775 | 1713 | + "q_hi": 1.0, | ||
1776 | 1714 | + "y_target": | ||
1777 | 1715 | + [ | ||
1778 | 1716 | + 0, 0.7, | ||
1779 | 1717 | + 1000, 0.7 | ||
1780 | 1718 | + ] | ||
1781 | 1719 | + }, | ||
1782 | 1720 | + { | ||
1783 | 1721 | + "bound": "LOWER", | ||
1784 | 1722 | + "q_lo": 0.0, | ||
1785 | 1723 | + "q_hi": 0.2, | ||
1786 | 1724 | + "y_target": | ||
1787 | 1725 | + [ | ||
1788 | 1726 | + 0, 0.005, | ||
1789 | 1727 | + 1000, 0.005 | ||
1790 | 1728 | + ] | ||
1791 | 1729 | + } | ||
1792 | 1730 | + ], | ||
1793 | 1731 | + "highlight": [ | ||
1794 | 1732 | + { | ||
1795 | 1733 | + "bound": "LOWER", | ||
1796 | 1734 | + "q_lo": 0.95, | ||
1797 | 1735 | + "q_hi": 1.0, | ||
1798 | 1736 | + "y_target": | ||
1799 | 1737 | + [ | ||
1800 | 1738 | + 0, 0.5, | ||
1801 | 1739 | + 1000, 0.5 | ||
1802 | 1740 | + ] | ||
1803 | 1741 | + }, | ||
1804 | 1742 | + { | ||
1805 | 1743 | + "bound": "UPPER", | ||
1806 | 1744 | + "q_lo": 0.95, | ||
1807 | 1745 | + "q_hi": 1.0, | ||
1808 | 1746 | + "y_target": | ||
1809 | 1747 | + [ | ||
1810 | 1748 | + 0, 0.7, | ||
1811 | 1749 | + 1000, 0.7 | ||
1812 | 1750 | + ] | ||
1813 | 1751 | + }, | ||
1814 | 1752 | + { | ||
1815 | 1753 | + "bound": "LOWER", | ||
1816 | 1754 | + "q_lo": 0.0, | ||
1817 | 1755 | + "q_hi": 0.2, | ||
1818 | 1756 | + "y_target": | ||
1819 | 1757 | + [ | ||
1820 | 1758 | + 0, 0.002, | ||
1821 | 1759 | + 1000, 0.002 | ||
1822 | 1760 | + ] | ||
1823 | 1761 | + } | ||
1824 | 1762 | + ], | ||
1825 | 1763 | + "shadows": [ | ||
1826 | 1764 | + { | ||
1827 | 1765 | + "bound": "LOWER", | ||
1828 | 1766 | + "q_lo": 0.95, | ||
1829 | 1767 | + "q_hi": 1.0, | ||
1830 | 1768 | + "y_target": | ||
1831 | 1769 | + [ | ||
1832 | 1770 | + 0, 0.5, | ||
1833 | 1771 | + 1000, 0.5 | ||
1834 | 1772 | + ] | ||
1835 | 1773 | + }, | ||
1836 | 1774 | + { | ||
1837 | 1775 | + "bound": "UPPER", | ||
1838 | 1776 | + "q_lo": 0.95, | ||
1839 | 1777 | + "q_hi": 1.0, | ||
1840 | 1778 | + "y_target": | ||
1841 | 1779 | + [ | ||
1842 | 1780 | + 0, 0.7, | ||
1843 | 1781 | + 1000, 0.7 | ||
1844 | 1782 | + ] | ||
1845 | 1783 | + }, | ||
1846 | 1784 | + { | ||
1847 | 1785 | + "bound": "LOWER", | ||
1848 | 1786 | + "q_lo": 0.0, | ||
1849 | 1787 | + "q_hi": 0.2, | ||
1850 | 1788 | + "y_target": | ||
1851 | 1789 | + [ | ||
1852 | 1790 | + 0, 0.002, | ||
1853 | 1791 | + 1000, 0.002 | ||
1854 | 1792 | + ] | ||
1855 | 1793 | + } | ||
1856 | 1794 | + ] | ||
1857 | 1795 | + }, | ||
1858 | 1796 | + "y_target": | ||
1859 | 1797 | + [ | ||
1860 | 1798 | + 0, 0.19, | ||
1861 | 1799 | + 1000, 0.19, | ||
1862 | 1800 | + 10000, 0.19 | ||
1863 | 1801 | + ] | ||
1864 | 1802 | + }, | ||
1865 | 1803 | + { | ||
1866 | 1804 | + "comment": "Channel 2 is the HDR long channel", | ||
1867 | 1805 | + "desaturate": 0, | ||
1868 | 1806 | + "metering_modes": | ||
1869 | 1807 | + { | ||
1870 | 1808 | + "centre-weighted": | ||
1871 | 1809 | + { | ||
1872 | 1810 | + "weights": | ||
1873 | 1811 | + [ | ||
1874 | 1812 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, | ||
1875 | 1813 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
1876 | 1814 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
1877 | 1815 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
1878 | 1816 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
1879 | 1817 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
1880 | 1818 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
1881 | 1819 | + 1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1, | ||
1882 | 1820 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
1883 | 1821 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
1884 | 1822 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
1885 | 1823 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
1886 | 1824 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
1887 | 1825 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
1888 | 1826 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 | ||
1889 | 1827 | + ] | ||
1890 | 1828 | + }, | ||
1891 | 1829 | + "spot": | ||
1892 | 1830 | + { | ||
1893 | 1831 | + "weights": | ||
1894 | 1832 | + [ | ||
1895 | 1833 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1896 | 1834 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1897 | 1835 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1898 | 1836 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1899 | 1837 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1900 | 1838 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
1901 | 1839 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
1902 | 1840 | + 0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0, | ||
1903 | 1841 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
1904 | 1842 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
1905 | 1843 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1906 | 1844 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1907 | 1845 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1908 | 1846 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1909 | 1847 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | ||
1910 | 1848 | + ] | ||
1911 | 1849 | + }, | ||
1912 | 1850 | + "matrix": | ||
1913 | 1851 | + { | ||
1914 | 1852 | + "weights": | ||
1915 | 1853 | + [ | ||
1916 | 1854 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1917 | 1855 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1918 | 1856 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1919 | 1857 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1920 | 1858 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1921 | 1859 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1922 | 1860 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1923 | 1861 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1924 | 1862 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1925 | 1863 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1926 | 1864 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1927 | 1865 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1928 | 1866 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1929 | 1867 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
1930 | 1868 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 | ||
1931 | 1869 | + ] | ||
1932 | 1870 | + } | ||
1933 | 1871 | + }, | ||
1934 | 1872 | + "exposure_modes": | ||
1935 | 1873 | + { | ||
1936 | 1874 | + "normal": | ||
1937 | 1875 | + { | ||
1938 | 1876 | + "shutter": [ 100, 20000, 30000, 60000 ], | ||
1939 | 1877 | + "gain": [ 1.0, 2.0, 4.0, 8.0 ] | ||
1940 | 1878 | + } | ||
1941 | 1879 | + }, | ||
1942 | 1880 | + "constraint_modes": | ||
1943 | 1881 | + { | ||
1944 | 1882 | + "normal": [ ], | ||
1945 | 1883 | + "highlight": [ ], | ||
1946 | 1884 | + "shadows": [ ] | ||
1947 | 1885 | + }, | ||
1948 | 1886 | + "channel_constraints": [ | ||
1949 | 1887 | + { | ||
1950 | 1888 | + "bound": "UPPER", | ||
1951 | 1889 | + "channel": 4, | ||
1952 | 1890 | + "factor": 8 | ||
1953 | 1891 | + }, | ||
1954 | 1892 | + { | ||
1955 | 1893 | + "bound": "LOWER", | ||
1956 | 1894 | + "channel": 4, | ||
1957 | 1895 | + "factor": 2 | ||
1958 | 1896 | + } | ||
1959 | 1897 | + ], | ||
1960 | 1898 | + "y_target": | ||
1961 | 1899 | + [ | ||
1962 | 1900 | + 0, 0.16, | ||
1963 | 1901 | + 1000, 0.165, | ||
1964 | 1902 | + 10000, 0.17 | ||
1965 | 1903 | + ] | ||
1966 | 1904 | + }, | ||
1967 | 1905 | + { | ||
1968 | 1906 | + "comment": "Channel 3 is the night mode channel", | ||
1969 | 1907 | + "base_ev": 0.33, | ||
1970 | 1908 | + "metering_modes": | ||
1971 | 1909 | + { | ||
1972 | 1910 | + "centre-weighted": | ||
1973 | 1911 | + { | ||
1974 | 1912 | + "weights": | ||
1975 | 1913 | + [ | ||
1976 | 1914 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, | ||
1977 | 1915 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
1978 | 1916 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
1979 | 1917 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
1980 | 1918 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
1981 | 1919 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
1982 | 1920 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
1983 | 1921 | + 1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1, | ||
1984 | 1922 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
1985 | 1923 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
1986 | 1924 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
1987 | 1925 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
1988 | 1926 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
1989 | 1927 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
1990 | 1928 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 | ||
1991 | 1929 | + ] | ||
1992 | 1930 | + }, | ||
1993 | 1931 | + "spot": | ||
1994 | 1932 | + { | ||
1995 | 1933 | + "weights": | ||
1996 | 1934 | + [ | ||
1997 | 1935 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1998 | 1936 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
1999 | 1937 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
2000 | 1938 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
2001 | 1939 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
2002 | 1940 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
2003 | 1941 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
2004 | 1942 | + 0, 0, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 0, 0, | ||
2005 | 1943 | + 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0, 0, 0, | ||
2006 | 1944 | + 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, | ||
2007 | 1945 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
2008 | 1946 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
2009 | 1947 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
2010 | 1948 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | ||
2011 | 1949 | + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | ||
2012 | 1950 | + ] | ||
2013 | 1951 | + }, | ||
2014 | 1952 | + "matrix": | ||
2015 | 1953 | + { | ||
2016 | 1954 | + "weights": | ||
2017 | 1955 | + [ | ||
2018 | 1956 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2019 | 1957 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2020 | 1958 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2021 | 1959 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2022 | 1960 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2023 | 1961 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2024 | 1962 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2025 | 1963 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2026 | 1964 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2027 | 1965 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2028 | 1966 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2029 | 1967 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2030 | 1968 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2031 | 1969 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | ||
2032 | 1970 | + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 | ||
2033 | 1971 | + ] | ||
2034 | 1972 | + } | ||
2035 | 1973 | + }, | ||
2036 | 1974 | + "exposure_modes": | ||
2037 | 1975 | + { | ||
2038 | 1976 | + "normal": | ||
2039 | 1977 | + { | ||
2040 | 1978 | + "shutter": [ 100, 20000, 66666 ], | ||
2041 | 1979 | + "gain": [ 1.0, 2.0, 4.0 ] | ||
2042 | 1980 | + }, | ||
2043 | 1981 | + "short": | ||
2044 | 1982 | + { | ||
2045 | 1983 | + "shutter": [ 100, 20000, 33333 ], | ||
2046 | 1984 | + "gain": [ 1.0, 2.0, 4.0 ] | ||
2047 | 1985 | + }, | ||
2048 | 1986 | + "long": | ||
2049 | 1987 | + { | ||
2050 | 1988 | + "shutter": [ 100, 20000, 66666, 120000 ], | ||
2051 | 1989 | + "gain": [ 1.0, 2.0, 4.0, 4.0 ] | ||
2052 | 1990 | + } | ||
2053 | 1991 | + }, | ||
2054 | 1992 | + "constraint_modes": | ||
2055 | 1993 | + { | ||
2056 | 1994 | + "normal": [ | ||
2057 | 1995 | + { | ||
2058 | 1996 | + "bound": "LOWER", | ||
2059 | 1997 | + "q_lo": 0.98, | ||
2060 | 1998 | + "q_hi": 1.0, | ||
2061 | 1999 | + "y_target": | ||
2062 | 2000 | + [ | ||
2063 | 2001 | + 0, 0.5, | ||
2064 | 2002 | + 1000, 0.5 | ||
2065 | 2003 | + ] | ||
2066 | 2004 | + } | ||
2067 | 2005 | + ], | ||
2068 | 2006 | + "highlight": [ | ||
2069 | 2007 | + { | ||
2070 | 2008 | + "bound": "LOWER", | ||
2071 | 2009 | + "q_lo": 0.98, | ||
2072 | 2010 | + "q_hi": 1.0, | ||
2073 | 2011 | + "y_target": | ||
2074 | 2012 | + [ | ||
2075 | 2013 | + 0, 0.5, | ||
2076 | 2014 | + 1000, 0.5 | ||
2077 | 2015 | + ] | ||
2078 | 2016 | + }, | ||
2079 | 2017 | + { | ||
2080 | 2018 | + "bound": "UPPER", | ||
2081 | 2019 | + "q_lo": 0.98, | ||
2082 | 2020 | + "q_hi": 1.0, | ||
2083 | 2021 | + "y_target": | ||
2084 | 2022 | + [ | ||
2085 | 2023 | + 0, 0.8, | ||
2086 | 2024 | + 1000, 0.8 | ||
2087 | 2025 | + ] | ||
2088 | 2026 | + } | ||
2089 | 2027 | + ], | ||
2090 | 2028 | + "shadows": [ | ||
2091 | 2029 | + { | ||
2092 | 2030 | + "bound": "LOWER", | ||
2093 | 2031 | + "q_lo": 0.98, | ||
2094 | 2032 | + "q_hi": 1.0, | ||
2095 | 2033 | + "y_target": | ||
2096 | 2034 | + [ | ||
2097 | 2035 | + 0, 0.5, | ||
2098 | 2036 | + 1000, 0.5 | ||
2099 | 2037 | + ] | ||
2100 | 2038 | + } | ||
2101 | 2039 | + ] | ||
2102 | 2040 | + }, | ||
2103 | 2041 | + "y_target": | ||
2104 | 2042 | + [ | ||
2105 | 2043 | + 0, 0.16, | ||
2106 | 2044 | + 1000, 0.165, | ||
2107 | 2045 | + 10000, 0.17 | ||
2108 | 2046 | + ] | ||
2109 | 2047 | + } | ||
2110 | 2048 | + ] | ||
2111 | 2049 | + } | ||
2112 | 2050 | + }, | ||
2113 | 2051 | + { | ||
2114 | 2052 | + "rpi.alsc": | ||
2115 | 2053 | + { | ||
2116 | 2054 | + "omega": 1.3, | ||
2117 | 2055 | + "n_iter": 100, | ||
2118 | 2056 | + "luminance_strength": 0.8, | ||
2119 | 2057 | + "calibrations_Cr": [ | ||
2120 | 2058 | + { | ||
2121 | 2059 | + "ct": 3000, | ||
2122 | 2060 | + "table": | ||
2123 | 2061 | + [ | ||
2124 | 2062 | + 1.418, 1.428, 1.446, 1.454, 1.454, 1.451, 1.441, 1.428, 1.411, 1.391, 1.371, 1.349, 1.334, 1.327, 1.325, 1.325, 1.325, 1.325, 1.331, 1.344, 1.363, 1.383, 1.402, 1.418, 1.433, 1.446, 1.452, 1.453, 1.446, 1.435, 1.415, 1.404, | ||
2125 | 2063 | + 1.428, 1.442, 1.453, 1.455, 1.454, 1.447, 1.431, 1.413, 1.392, 1.371, 1.349, 1.331, 1.318, 1.307, 1.299, 1.299, 1.299, 1.303, 1.313, 1.328, 1.344, 1.363, 1.383, 1.404, 1.424, 1.439, 1.451, 1.453, 1.453, 1.445, 1.431, 1.415, | ||
2126 | 2064 | + 1.436, 1.448, 1.453, 1.455, 1.449, 1.435, 1.415, 1.393, 1.369, 1.345, 1.322, 1.303, 1.287, 1.276, 1.269, 1.268, 1.268, 1.272, 1.283, 1.298, 1.316, 1.337, 1.362, 1.384, 1.406, 1.427, 1.444, 1.454, 1.454, 1.452, 1.438, 1.426, | ||
2127 | 2065 | + 1.441, 1.451, 1.454, 1.451, 1.439, 1.422, 1.396, 1.372, 1.345, 1.319, 1.295, 1.274, 1.257, 1.245, 1.239, 1.238, 1.238, 1.245, 1.255, 1.269, 1.289, 1.311, 1.336, 1.362, 1.388, 1.412, 1.433, 1.448, 1.454, 1.453, 1.445, 1.433, | ||
2128 | 2066 | + 1.445, 1.452, 1.452, 1.445, 1.428, 1.405, 1.379, 1.349, 1.319, 1.295, 1.269, 1.247, 1.229, 1.219, 1.212, 1.211, 1.211, 1.217, 1.228, 1.242, 1.261, 1.286, 1.311, 1.339, 1.367, 1.395, 1.419, 1.439, 1.452, 1.452, 1.451, 1.436, | ||
2129 | 2067 | + 1.448, 1.451, 1.451, 1.435, 1.414, 1.387, 1.358, 1.327, 1.296, 1.269, 1.245, 1.222, 1.205, 1.193, 1.187, 1.185, 1.186, 1.191, 1.202, 1.217, 1.237, 1.261, 1.286, 1.316, 1.346, 1.378, 1.404, 1.429, 1.445, 1.451, 1.451, 1.442, | ||
2130 | 2068 | + 1.448, 1.448, 1.445, 1.427, 1.401, 1.371, 1.338, 1.306, 1.274, 1.245, 1.222, 1.199, 1.183, 1.171, 1.164, 1.162, 1.162, 1.168, 1.181, 1.194, 1.215, 1.237, 1.264, 1.294, 1.325, 1.359, 1.389, 1.418, 1.441, 1.449, 1.449, 1.443, | ||
2131 | 2069 | + 1.449, 1.448, 1.438, 1.415, 1.387, 1.352, 1.318, 1.284, 1.252, 1.223, 1.199, 1.179, 1.161, 1.149, 1.142, 1.142, 1.142, 1.149, 1.159, 1.174, 1.194, 1.215, 1.242, 1.272, 1.307, 1.341, 1.376, 1.405, 1.431, 1.447, 1.447, 1.444, | ||
2132 | 2070 | + 1.448, 1.447, 1.431, 1.405, 1.373, 1.336, 1.301, 1.264, 1.234, 1.204, 1.179, 1.161, 1.143, 1.131, 1.124, 1.123, 1.123, 1.131, 1.141, 1.156, 1.174, 1.197, 1.224, 1.254, 1.288, 1.324, 1.361, 1.394, 1.423, 1.442, 1.444, 1.444, | ||
2133 | 2071 | + 1.447, 1.442, 1.424, 1.393, 1.359, 1.322, 1.284, 1.248, 1.216, 1.187, 1.162, 1.143, 1.128, 1.115, 1.109, 1.108, 1.108, 1.113, 1.124, 1.139, 1.156, 1.179, 1.206, 1.236, 1.272, 1.309, 1.347, 1.382, 1.411, 1.435, 1.443, 1.444, | ||
2134 | 2072 | + 1.444, 1.439, 1.417, 1.383, 1.347, 1.308, 1.271, 1.233, 1.201, 1.173, 1.147, 1.128, 1.115, 1.101, 1.095, 1.093, 1.093, 1.099, 1.111, 1.124, 1.142, 1.165, 1.191, 1.222, 1.258, 1.296, 1.333, 1.372, 1.404, 1.429, 1.441, 1.442, | ||
2135 | 2073 | + 1.443, 1.434, 1.409, 1.375, 1.336, 1.297, 1.257, 1.221, 1.189, 1.159, 1.136, 1.116, 1.101, 1.092, 1.083, 1.082, 1.082, 1.089, 1.099, 1.111, 1.131, 1.153, 1.181, 1.211, 1.246, 1.284, 1.324, 1.361, 1.398, 1.425, 1.441, 1.441, | ||
2136 | 2074 | + 1.443, 1.431, 1.405, 1.369, 1.328, 1.287, 1.247, 1.211, 1.178, 1.149, 1.126, 1.107, 1.092, 1.083, 1.075, 1.073, 1.073, 1.082, 1.089, 1.101, 1.121, 1.143, 1.171, 1.201, 1.237, 1.274, 1.314, 1.353, 1.389, 1.421, 1.439, 1.441, | ||
2137 | 2075 | + 1.442, 1.429, 1.401, 1.364, 1.323, 1.279, 1.241, 1.205, 1.172, 1.144, 1.119, 1.101, 1.085, 1.075, 1.071, 1.067, 1.067, 1.073, 1.082, 1.096, 1.114, 1.136, 1.163, 1.194, 1.229, 1.268, 1.308, 1.348, 1.387, 1.417, 1.439, 1.439, | ||
2138 | 2076 | + 1.443, 1.429, 1.399, 1.362, 1.319, 1.276, 1.237, 1.199, 1.169, 1.141, 1.115, 1.096, 1.081, 1.071, 1.066, 1.063, 1.066, 1.068, 1.078, 1.092, 1.109, 1.132, 1.159, 1.191, 1.226, 1.263, 1.304, 1.346, 1.384, 1.416, 1.438, 1.439, | ||
2139 | 2077 | + 1.443, 1.428, 1.399, 1.361, 1.319, 1.276, 1.236, 1.199, 1.167, 1.139, 1.115, 1.096, 1.081, 1.071, 1.064, 1.062, 1.062, 1.067, 1.077, 1.091, 1.109, 1.131, 1.158, 1.189, 1.224, 1.262, 1.303, 1.345, 1.383, 1.416, 1.438, 1.439, | ||
2140 | 2078 | + 1.444, 1.429, 1.399, 1.361, 1.319, 1.276, 1.236, 1.199, 1.167, 1.139, 1.116, 1.096, 1.081, 1.071, 1.064, 1.063, 1.063, 1.067, 1.077, 1.091, 1.109, 1.131, 1.159, 1.189, 1.224, 1.262, 1.303, 1.345, 1.384, 1.416, 1.438, 1.441, | ||
2141 | 2079 | + 1.444, 1.431, 1.402, 1.364, 1.322, 1.281, 1.239, 1.202, 1.171, 1.142, 1.118, 1.099, 1.084, 1.073, 1.069, 1.065, 1.067, 1.071, 1.079, 1.094, 1.112, 1.135, 1.163, 1.191, 1.227, 1.265, 1.307, 1.348, 1.386, 1.418, 1.438, 1.441, | ||
2142 | 2080 | + 1.447, 1.433, 1.406, 1.369, 1.328, 1.286, 1.244, 1.209, 1.177, 1.148, 1.124, 1.105, 1.089, 1.081, 1.073, 1.071, 1.071, 1.079, 1.085, 1.099, 1.118, 1.141, 1.168, 1.198, 1.233, 1.271, 1.312, 1.352, 1.391, 1.422, 1.441, 1.444, | ||
2143 | 2081 | + 1.448, 1.438, 1.412, 1.376, 1.335, 1.295, 1.255, 1.218, 1.186, 1.157, 1.134, 1.113, 1.098, 1.089, 1.081, 1.079, 1.079, 1.085, 1.094, 1.107, 1.125, 1.149, 1.175, 1.207, 1.242, 1.281, 1.319, 1.359, 1.396, 1.425, 1.445, 1.447, | ||
2144 | 2082 | + 1.449, 1.443, 1.417, 1.384, 1.345, 1.305, 1.266, 1.229, 1.197, 1.169, 1.145, 1.124, 1.111, 1.098, 1.091, 1.089, 1.089, 1.094, 1.107, 1.118, 1.137, 1.159, 1.187, 1.218, 1.253, 1.291, 1.329, 1.369, 1.405, 1.433, 1.447, 1.449, | ||
2145 | 2083 | + 1.453, 1.449, 1.425, 1.395, 1.358, 1.318, 1.281, 1.244, 1.211, 1.183, 1.158, 1.138, 1.124, 1.111, 1.104, 1.103, 1.103, 1.107, 1.118, 1.133, 1.151, 1.174, 1.201, 1.232, 1.267, 1.304, 1.344, 1.379, 1.413, 1.437, 1.449, 1.449, | ||
2146 | 2084 | + 1.457, 1.453, 1.434, 1.405, 1.371, 1.335, 1.297, 1.261, 1.229, 1.199, 1.174, 1.155, 1.138, 1.126, 1.119, 1.117, 1.117, 1.124, 1.133, 1.149, 1.167, 1.189, 1.217, 1.248, 1.284, 1.319, 1.357, 1.393, 1.423, 1.444, 1.452, 1.452, | ||
2147 | 2085 | + 1.459, 1.457, 1.443, 1.418, 1.385, 1.352, 1.314, 1.279, 1.246, 1.218, 1.193, 1.174, 1.155, 1.144, 1.137, 1.136, 1.136, 1.141, 1.151, 1.167, 1.187, 1.208, 1.236, 1.267, 1.301, 1.337, 1.373, 1.405, 1.434, 1.453, 1.455, 1.455, | ||
2148 | 2086 | + 1.461, 1.461, 1.454, 1.429, 1.401, 1.369, 1.333, 1.301, 1.269, 1.239, 1.216, 1.193, 1.177, 1.165, 1.158, 1.156, 1.156, 1.161, 1.171, 1.187, 1.208, 1.229, 1.258, 1.288, 1.321, 1.356, 1.389, 1.419, 1.445, 1.459, 1.459, 1.455, | ||
2149 | 2087 | + 1.462, 1.462, 1.459, 1.442, 1.418, 1.386, 1.354, 1.322, 1.292, 1.262, 1.239, 1.216, 1.199, 1.187, 1.179, 1.178, 1.178, 1.184, 1.194, 1.208, 1.229, 1.253, 1.279, 1.309, 1.342, 1.375, 1.406, 1.433, 1.452, 1.464, 1.464, 1.454, | ||
2150 | 2088 | + 1.461, 1.465, 1.465, 1.454, 1.431, 1.405, 1.376, 1.346, 1.316, 1.288, 1.262, 1.242, 1.223, 1.212, 1.205, 1.203, 1.203, 1.208, 1.218, 1.234, 1.253, 1.279, 1.305, 1.334, 1.363, 1.393, 1.421, 1.445, 1.461, 1.465, 1.464, 1.452, | ||
2151 | 2089 | + 1.459, 1.465, 1.466, 1.461, 1.443, 1.421, 1.395, 1.368, 1.341, 1.316, 1.288, 1.268, 1.251, 1.238, 1.232, 1.229, 1.229, 1.235, 1.246, 1.261, 1.279, 1.305, 1.331, 1.356, 1.385, 1.411, 1.435, 1.454, 1.466, 1.466, 1.464, 1.451, | ||
2152 | 2090 | + 1.454, 1.465, 1.467, 1.466, 1.456, 1.436, 1.414, 1.389, 1.367, 1.341, 1.318, 1.297, 1.279, 1.269, 1.261, 1.259, 1.259, 1.265, 1.274, 1.288, 1.308, 1.331, 1.355, 1.381, 1.404, 1.428, 1.447, 1.462, 1.468, 1.467, 1.457, 1.445, | ||
2153 | 2091 | + 1.447, 1.459, 1.466, 1.467, 1.463, 1.451, 1.434, 1.411, 1.389, 1.367, 1.344, 1.325, 1.311, 1.297, 1.292, 1.289, 1.289, 1.295, 1.303, 1.317, 1.336, 1.356, 1.381, 1.402, 1.423, 1.441, 1.457, 1.467, 1.468, 1.463, 1.451, 1.439, | ||
2154 | 2092 | + 1.438, 1.449, 1.462, 1.464, 1.464, 1.459, 1.446, 1.429, 1.408, 1.388, 1.369, 1.353, 1.339, 1.329, 1.321, 1.321, 1.321, 1.325, 1.333, 1.348, 1.362, 1.379, 1.401, 1.421, 1.439, 1.454, 1.463, 1.465, 1.465, 1.456, 1.442, 1.427, | ||
2155 | 2093 | + 1.429, 1.439, 1.454, 1.464, 1.464, 1.459, 1.449, 1.435, 1.421, 1.402, 1.385, 1.369, 1.353, 1.341, 1.338, 1.337, 1.337, 1.338, 1.348, 1.362, 1.378, 1.395, 1.411, 1.429, 1.445, 1.455, 1.463, 1.464, 1.457, 1.447, 1.427, 1.419 | ||
2156 | 2094 | + ] | ||
2157 | 2095 | + }, | ||
2158 | 2096 | + { | ||
2159 | 2097 | + "ct": 5000, | ||
2160 | 2098 | + "table": | ||
2161 | 2099 | + [ | ||
2162 | 2100 | + 2.163, 2.177, 2.194, 2.196, 2.197, 2.192, 2.181, 2.161, 2.139, 2.113, 2.088, 2.063, 2.047, 2.041, 2.036, 2.036, 2.036, 2.037, 2.046, 2.059, 2.083, 2.113, 2.135, 2.158, 2.181, 2.193, 2.205, 2.205, 2.202, 2.189, 2.171, 2.158, | ||
2163 | 2101 | + 2.169, 2.184, 2.195, 2.196, 2.194, 2.182, 2.163, 2.141, 2.116, 2.088, 2.063, 2.042, 2.025, 2.013, 2.004, 2.004, 2.006, 2.011, 2.022, 2.038, 2.059, 2.083, 2.113, 2.137, 2.162, 2.182, 2.197, 2.204, 2.203, 2.199, 2.183, 2.171, | ||
2164 | 2102 | + 2.177, 2.187, 2.193, 2.193, 2.184, 2.166, 2.142, 2.116, 2.087, 2.057, 2.033, 2.008, 1.991, 1.977, 1.969, 1.969, 1.969, 1.975, 1.988, 2.006, 2.028, 2.055, 2.083, 2.114, 2.139, 2.166, 2.187, 2.199, 2.202, 2.201, 2.189, 2.179, | ||
2165 | 2103 | + 2.183, 2.189, 2.192, 2.186, 2.172, 2.146, 2.119, 2.089, 2.058, 2.026, 2.001, 1.975, 1.956, 1.942, 1.934, 1.932, 1.933, 1.941, 1.955, 1.971, 1.995, 2.023, 2.055, 2.084, 2.119, 2.146, 2.171, 2.191, 2.201, 2.201, 2.194, 2.183, | ||
2166 | 2104 | + 2.186, 2.189, 2.189, 2.177, 2.158, 2.127, 2.096, 2.059, 2.026, 1.998, 1.969, 1.944, 1.925, 1.911, 1.901, 1.901, 1.903, 1.912, 1.924, 1.941, 1.964, 1.995, 2.023, 2.058, 2.091, 2.126, 2.155, 2.181, 2.195, 2.199, 2.198, 2.188, | ||
2167 | 2105 | + 2.189, 2.189, 2.184, 2.166, 2.138, 2.108, 2.071, 2.036, 1.999, 1.969, 1.941, 1.914, 1.894, 1.879, 1.871, 1.871, 1.872, 1.879, 1.893, 1.913, 1.937, 1.964, 1.997, 2.029, 2.065, 2.104, 2.137, 2.169, 2.187, 2.199, 2.199, 2.189, | ||
2168 | 2106 | + 2.187, 2.186, 2.176, 2.154, 2.123, 2.087, 2.044, 2.011, 1.974, 1.941, 1.913, 1.887, 1.868, 1.852, 1.844, 1.843, 1.844, 1.852, 1.866, 1.885, 1.912, 1.937, 1.972, 2.004, 2.042, 2.081, 2.119, 2.154, 2.179, 2.195, 2.196, 2.193, | ||
2169 | 2107 | + 2.187, 2.181, 2.167, 2.141, 2.103, 2.062, 2.023, 1.984, 1.947, 1.916, 1.887, 1.864, 1.841, 1.828, 1.821, 1.819, 1.819, 1.828, 1.842, 1.862, 1.885, 1.913, 1.945, 1.982, 2.021, 2.058, 2.102, 2.137, 2.168, 2.192, 2.193, 2.193, | ||
2170 | 2108 | + 2.182, 2.181, 2.161, 2.127, 2.083, 2.044, 2.002, 1.961, 1.924, 1.891, 1.864, 1.841, 1.819, 1.806, 1.797, 1.797, 1.797, 1.805, 1.819, 1.841, 1.862, 1.892, 1.924, 1.959, 1.999, 2.041, 2.082, 2.123, 2.161, 2.185, 2.191, 2.192, | ||
2171 | 2109 | + 2.182, 2.172, 2.149, 2.112, 2.069, 2.026, 1.982, 1.941, 1.904, 1.871, 1.841, 1.819, 1.799, 1.785, 1.776, 1.776, 1.778, 1.784, 1.798, 1.819, 1.841, 1.869, 1.903, 1.939, 1.977, 2.021, 2.067, 2.108, 2.145, 2.174, 2.189, 2.191, | ||
2172 | 2110 | + 2.181, 2.167, 2.139, 2.098, 2.056, 2.006, 1.965, 1.921, 1.883, 1.851, 1.823, 1.799, 1.783, 1.767, 1.759, 1.758, 1.758, 1.767, 1.783, 1.798, 1.825, 1.851, 1.883, 1.919, 1.959, 2.004, 2.049, 2.094, 2.136, 2.167, 2.187, 2.189, | ||
2173 | 2111 | + 2.179, 2.163, 2.131, 2.087, 2.041, 1.994, 1.948, 1.907, 1.871, 1.835, 1.806, 1.784, 1.767, 1.754, 1.744, 1.742, 1.742, 1.752, 1.767, 1.783, 1.808, 1.838, 1.869, 1.905, 1.945, 1.989, 2.036, 2.083, 2.128, 2.159, 2.183, 2.187, | ||
2174 | 2112 | + 2.178, 2.161, 2.126, 2.082, 2.032, 1.982, 1.936, 1.896, 1.857, 1.823, 1.795, 1.772, 1.754, 1.744, 1.732, 1.731, 1.732, 1.742, 1.752, 1.771, 1.796, 1.824, 1.857, 1.895, 1.934, 1.977, 2.024, 2.071, 2.116, 2.154, 2.181, 2.185, | ||
2175 | 2113 | + 2.177, 2.157, 2.121, 2.074, 2.025, 1.973, 1.927, 1.886, 1.849, 1.815, 1.787, 1.765, 1.746, 1.732, 1.725, 1.722, 1.724, 1.732, 1.743, 1.762, 1.786, 1.813, 1.848, 1.886, 1.924, 1.969, 2.017, 2.066, 2.111, 2.153, 2.179, 2.183, | ||
2176 | 2114 | + 2.177, 2.155, 2.119, 2.072, 2.022, 1.969, 1.925, 1.881, 1.844, 1.811, 1.782, 1.758, 1.739, 1.725, 1.721, 1.717, 1.721, 1.724, 1.739, 1.757, 1.781, 1.809, 1.842, 1.879, 1.921, 1.965, 2.012, 2.062, 2.108, 2.151, 2.179, 2.182, | ||
2177 | 2115 | + 2.177, 2.156, 2.121, 2.071, 2.021, 1.968, 1.922, 1.879, 1.842, 1.811, 1.781, 1.757, 1.739, 1.725, 1.717, 1.715, 1.715, 1.723, 1.737, 1.757, 1.779, 1.808, 1.841, 1.877, 1.918, 1.963, 2.011, 2.061, 2.107, 2.148, 2.179, 2.183, | ||
2178 | 2116 | + 2.178, 2.157, 2.121, 2.072, 2.021, 1.969, 1.922, 1.881, 1.842, 1.811, 1.781, 1.758, 1.739, 1.726, 1.718, 1.717, 1.718, 1.723, 1.737, 1.757, 1.781, 1.809, 1.841, 1.877, 1.918, 1.964, 2.012, 2.061, 2.108, 2.149, 2.179, 2.183, | ||
2179 | 2117 | + 2.178, 2.159, 2.124, 2.074, 2.024, 1.974, 1.926, 1.885, 1.847, 1.813, 1.784, 1.762, 1.743, 1.731, 1.725, 1.719, 1.723, 1.728, 1.742, 1.762, 1.785, 1.814, 1.847, 1.881, 1.922, 1.966, 2.017, 2.065, 2.109, 2.151, 2.181, 2.184, | ||
2180 | 2118 | + 2.181, 2.163, 2.129, 2.082, 2.032, 1.982, 1.934, 1.891, 1.854, 1.822, 1.794, 1.769, 1.751, 1.739, 1.731, 1.727, 1.728, 1.739, 1.747, 1.768, 1.791, 1.821, 1.852, 1.889, 1.929, 1.972, 2.022, 2.071, 2.117, 2.155, 2.182, 2.189, | ||
2181 | 2119 | + 2.184, 2.169, 2.135, 2.091, 2.041, 1.994, 1.947, 1.902, 1.865, 1.833, 1.805, 1.779, 1.762, 1.751, 1.739, 1.739, 1.739, 1.747, 1.761, 1.779, 1.803, 1.831, 1.864, 1.898, 1.941, 1.984, 2.033, 2.079, 2.123, 2.163, 2.188, 2.193, | ||
2182 | 2120 | + 2.185, 2.174, 2.142, 2.099, 2.054, 2.004, 1.959, 1.917, 1.879, 1.846, 1.819, 1.794, 1.779, 1.762, 1.754, 1.753, 1.753, 1.761, 1.777, 1.793, 1.816, 1.843, 1.877, 1.913, 1.953, 1.995, 2.043, 2.091, 2.135, 2.169, 2.191, 2.196, | ||
2183 | 2121 | + 2.191, 2.179, 2.154, 2.118, 2.069, 2.023, 1.977, 1.935, 1.898, 1.865, 1.834, 1.813, 1.794, 1.779, 1.769, 1.769, 1.769, 1.777, 1.793, 1.809, 1.834, 1.863, 1.895, 1.929, 1.972, 2.015, 2.061, 2.105, 2.145, 2.178, 2.195, 2.199, | ||
2184 | 2122 | + 2.197, 2.188, 2.166, 2.129, 2.087, 2.041, 1.997, 1.956, 1.918, 1.884, 1.855, 1.834, 1.813, 1.798, 1.788, 1.788, 1.788, 1.796, 1.809, 1.832, 1.853, 1.881, 1.912, 1.949, 1.991, 2.033, 2.076, 2.119, 2.159, 2.187, 2.202, 2.205, | ||
2185 | 2123 | + 2.202, 2.197, 2.176, 2.148, 2.106, 2.065, 2.021, 1.979, 1.943, 1.909, 1.879, 1.855, 1.835, 1.819, 1.811, 1.811, 1.811, 1.818, 1.832, 1.853, 1.875, 1.904, 1.937, 1.972, 2.013, 2.055, 2.097, 2.138, 2.175, 2.197, 2.206, 2.207, | ||
2186 | 2124 | + 2.205, 2.202, 2.189, 2.162, 2.126, 2.084, 2.044, 2.004, 1.967, 1.935, 1.907, 1.879, 1.861, 1.845, 1.838, 1.835, 1.835, 1.844, 1.855, 1.875, 1.902, 1.928, 1.961, 1.998, 2.033, 2.076, 2.118, 2.155, 2.186, 2.205, 2.208, 2.208, | ||
2187 | 2125 | + 2.207, 2.205, 2.195, 2.175, 2.145, 2.108, 2.069, 2.029, 1.996, 1.963, 1.934, 1.908, 1.885, 1.872, 1.864, 1.863, 1.863, 1.869, 1.884, 1.902, 1.928, 1.956, 1.989, 2.023, 2.059, 2.099, 2.137, 2.172, 2.199, 2.212, 2.213, 2.209, | ||
2188 | 2126 | + 2.207, 2.207, 2.203, 2.188, 2.162, 2.128, 2.094, 2.058, 2.023, 1.993, 1.963, 1.936, 1.916, 1.899, 1.893, 1.892, 1.893, 1.899, 1.912, 1.929, 1.956, 1.986, 2.016, 2.049, 2.084, 2.121, 2.156, 2.187, 2.208, 2.215, 2.215, 2.208, | ||
2189 | 2127 | + 2.205, 2.208, 2.209, 2.199, 2.178, 2.149, 2.117, 2.083, 2.052, 2.023, 1.993, 1.967, 1.947, 1.933, 1.925, 1.922, 1.922, 1.929, 1.943, 1.961, 1.986, 2.015, 2.045, 2.076, 2.109, 2.143, 2.173, 2.198, 2.214, 2.218, 2.216, 2.205, | ||
2190 | 2128 | + 2.201, 2.207, 2.211, 2.211, 2.193, 2.168, 2.141, 2.112, 2.082, 2.052, 2.025, 2.001, 1.981, 1.967, 1.959, 1.958, 1.958, 1.967, 1.975, 1.992, 2.018, 2.046, 2.076, 2.105, 2.136, 2.163, 2.189, 2.208, 2.217, 2.217, 2.212, 2.203, | ||
2191 | 2129 | + 2.194, 2.204, 2.212, 2.213, 2.203, 2.187, 2.165, 2.139, 2.112, 2.083, 2.055, 2.034, 2.016, 2.001, 1.993, 1.993, 1.994, 1.999, 2.011, 2.027, 2.051, 2.077, 2.105, 2.133, 2.158, 2.181, 2.202, 2.217, 2.218, 2.218, 2.206, 2.193, | ||
2192 | 2130 | + 2.185, 2.198, 2.213, 2.214, 2.212, 2.201, 2.184, 2.163, 2.135, 2.111, 2.089, 2.071, 2.052, 2.039, 2.032, 2.031, 2.031, 2.036, 2.048, 2.065, 2.085, 2.106, 2.131, 2.155, 2.178, 2.198, 2.212, 2.219, 2.219, 2.215, 2.201, 2.185, | ||
2193 | 2131 | + 2.176, 2.191, 2.208, 2.217, 2.216, 2.205, 2.195, 2.177, 2.156, 2.133, 2.109, 2.089, 2.071, 2.055, 2.053, 2.053, 2.053, 2.057, 2.065, 2.085, 2.105, 2.123, 2.149, 2.171, 2.192, 2.205, 2.217, 2.219, 2.219, 2.202, 2.185, 2.181 | ||
2194 | 2132 | + ] | ||
2195 | 2133 | + } | ||
2196 | 2134 | + ], | ||
2197 | 2135 | + "calibrations_Cb": [ | ||
2198 | 2136 | + { | ||
2199 | 2137 | + "ct": 3000, | ||
2200 | 2138 | + "table": | ||
2201 | 2139 | + [ | ||
2202 | 2140 | + 2.518, 2.513, 2.503, 2.496, 2.488, 2.484, 2.485, 2.485, 2.486, 2.487, 2.487, 2.489, 2.494, 2.496, 2.496, 2.497, 2.499, 2.499, 2.496, 2.495, 2.492, 2.491, 2.491, 2.491, 2.492, 2.493, 2.495, 2.501, 2.508, 2.516, 2.528, 2.533, | ||
2203 | 2141 | + 2.515, 2.508, 2.495, 2.487, 2.483, 2.481, 2.482, 2.483, 2.485, 2.487, 2.489, 2.491, 2.495, 2.497, 2.498, 2.501, 2.502, 2.502, 2.499, 2.496, 2.494, 2.491, 2.491, 2.489, 2.489, 2.491, 2.493, 2.496, 2.502, 2.511, 2.521, 2.531, | ||
2204 | 2142 | + 2.507, 2.495, 2.486, 2.482, 2.478, 2.477, 2.481, 2.482, 2.484, 2.488, 2.491, 2.495, 2.499, 2.502, 2.506, 2.508, 2.509, 2.508, 2.505, 2.501, 2.497, 2.493, 2.491, 2.489, 2.488, 2.489, 2.489, 2.492, 2.496, 2.501, 2.511, 2.524, | ||
2205 | 2143 | + 2.501, 2.487, 2.482, 2.481, 2.478, 2.477, 2.481, 2.483, 2.487, 2.491, 2.501, 2.503, 2.509, 2.511, 2.518, 2.519, 2.519, 2.519, 2.516, 2.509, 2.504, 2.498, 2.495, 2.493, 2.489, 2.489, 2.488, 2.489, 2.492, 2.498, 2.505, 2.523, | ||
2206 | 2144 | + 2.499, 2.484, 2.481, 2.476, 2.476, 2.476, 2.481, 2.485, 2.492, 2.501, 2.509, 2.514, 2.519, 2.524, 2.528, 2.531, 2.533, 2.533, 2.525, 2.519, 2.514, 2.507, 2.501, 2.497, 2.493, 2.489, 2.489, 2.488, 2.491, 2.494, 2.501, 2.514, | ||
2207 | 2145 | + 2.497, 2.483, 2.478, 2.476, 2.476, 2.478, 2.482, 2.491, 2.499, 2.509, 2.515, 2.522, 2.528, 2.535, 2.539, 2.541, 2.543, 2.542, 2.539, 2.529, 2.522, 2.516, 2.507, 2.502, 2.497, 2.491, 2.489, 2.488, 2.489, 2.492, 2.498, 2.514, | ||
2208 | 2146 | + 2.492, 2.479, 2.476, 2.475, 2.476, 2.481, 2.488, 2.496, 2.505, 2.516, 2.524, 2.532, 2.541, 2.545, 2.552, 2.554, 2.554, 2.554, 2.548, 2.541, 2.532, 2.522, 2.516, 2.507, 2.502, 2.494, 2.491, 2.489, 2.489, 2.492, 2.494, 2.511, | ||
2209 | 2147 | + 2.491, 2.479, 2.476, 2.477, 2.478, 2.482, 2.491, 2.502, 2.514, 2.524, 2.533, 2.543, 2.548, 2.555, 2.562, 2.566, 2.567, 2.562, 2.557, 2.551, 2.541, 2.531, 2.523, 2.512, 2.506, 2.498, 2.493, 2.491, 2.491, 2.491, 2.493, 2.507, | ||
2210 | 2148 | + 2.489, 2.478, 2.476, 2.477, 2.481, 2.485, 2.494, 2.507, 2.517, 2.529, 2.542, 2.548, 2.557, 2.563, 2.567, 2.571, 2.572, 2.571, 2.565, 2.558, 2.549, 2.538, 2.528, 2.521, 2.509, 2.501, 2.494, 2.492, 2.491, 2.491, 2.491, 2.505, | ||
2211 | 2149 | + 2.488, 2.478, 2.477, 2.478, 2.482, 2.489, 2.499, 2.509, 2.523, 2.538, 2.548, 2.556, 2.563, 2.568, 2.573, 2.577, 2.578, 2.577, 2.573, 2.564, 2.555, 2.543, 2.535, 2.524, 2.515, 2.504, 2.495, 2.492, 2.489, 2.488, 2.489, 2.501, | ||
2212 | 2150 | + 2.486, 2.476, 2.475, 2.477, 2.483, 2.491, 2.503, 2.515, 2.529, 2.542, 2.553, 2.562, 2.568, 2.574, 2.581, 2.583, 2.584, 2.581, 2.578, 2.571, 2.562, 2.551, 2.539, 2.531, 2.517, 2.508, 2.497, 2.492, 2.488, 2.487, 2.489, 2.498, | ||
2213 | 2151 | + 2.486, 2.476, 2.475, 2.479, 2.484, 2.492, 2.504, 2.519, 2.533, 2.544, 2.557, 2.566, 2.573, 2.581, 2.584, 2.588, 2.588, 2.586, 2.581, 2.575, 2.567, 2.555, 2.546, 2.534, 2.517, 2.509, 2.499, 2.492, 2.489, 2.485, 2.488, 2.497, | ||
2214 | 2152 | + 2.487, 2.476, 2.476, 2.479, 2.486, 2.494, 2.506, 2.521, 2.535, 2.549, 2.559, 2.571, 2.578, 2.583, 2.589, 2.591, 2.591, 2.591, 2.587, 2.579, 2.571, 2.559, 2.551, 2.538, 2.523, 2.513, 2.503, 2.493, 2.489, 2.486, 2.487, 2.499, | ||
2215 | 2153 | + 2.486, 2.475, 2.475, 2.479, 2.486, 2.495, 2.509, 2.525, 2.541, 2.555, 2.563, 2.573, 2.582, 2.588, 2.591, 2.594, 2.595, 2.592, 2.591, 2.585, 2.574, 2.564, 2.552, 2.541, 2.525, 2.514, 2.503, 2.493, 2.489, 2.486, 2.486, 2.501, | ||
2216 | 2154 | + 2.486, 2.475, 2.475, 2.479, 2.488, 2.497, 2.509, 2.526, 2.542, 2.556, 2.564, 2.575, 2.584, 2.591, 2.595, 2.596, 2.597, 2.595, 2.592, 2.587, 2.577, 2.568, 2.554, 2.542, 2.527, 2.515, 2.504, 2.494, 2.491, 2.487, 2.487, 2.505, | ||
2217 | 2155 | + 2.484, 2.476, 2.475, 2.478, 2.488, 2.498, 2.509, 2.526, 2.542, 2.555, 2.565, 2.576, 2.584, 2.589, 2.595, 2.598, 2.598, 2.597, 2.593, 2.587, 2.578, 2.569, 2.556, 2.543, 2.528, 2.515, 2.504, 2.494, 2.489, 2.485, 2.485, 2.501, | ||
2218 | 2156 | + 2.484, 2.475, 2.475, 2.478, 2.489, 2.498, 2.509, 2.524, 2.539, 2.553, 2.565, 2.576, 2.584, 2.589, 2.594, 2.597, 2.597, 2.596, 2.593, 2.587, 2.577, 2.569, 2.555, 2.543, 2.529, 2.515, 2.503, 2.496, 2.491, 2.485, 2.486, 2.497, | ||
2219 | 2157 | + 2.484, 2.474, 2.474, 2.479, 2.487, 2.497, 2.509, 2.523, 2.539, 2.551, 2.563, 2.574, 2.581, 2.587, 2.592, 2.595, 2.596, 2.595, 2.591, 2.584, 2.574, 2.567, 2.554, 2.541, 2.526, 2.514, 2.503, 2.495, 2.489, 2.485, 2.486, 2.497, | ||
2220 | 2158 | + 2.484, 2.475, 2.475, 2.478, 2.485, 2.494, 2.507, 2.522, 2.535, 2.546, 2.559, 2.568, 2.579, 2.584, 2.589, 2.592, 2.593, 2.592, 2.588, 2.579, 2.571, 2.562, 2.551, 2.537, 2.524, 2.514, 2.501, 2.493, 2.489, 2.486, 2.487, 2.498, | ||
2221 | 2159 | + 2.485, 2.476, 2.475, 2.477, 2.485, 2.491, 2.506, 2.519, 2.531, 2.544, 2.555, 2.563, 2.571, 2.581, 2.584, 2.589, 2.589, 2.588, 2.583, 2.576, 2.566, 2.555, 2.546, 2.534, 2.522, 2.511, 2.499, 2.491, 2.488, 2.486, 2.487, 2.502, | ||
2222 | 2160 | + 2.487, 2.477, 2.475, 2.477, 2.483, 2.489, 2.503, 2.515, 2.525, 2.541, 2.551, 2.559, 2.567, 2.573, 2.579, 2.582, 2.583, 2.582, 2.576, 2.569, 2.562, 2.549, 2.542, 2.527, 2.518, 2.505, 2.497, 2.491, 2.489, 2.487, 2.487, 2.502, | ||
2223 | 2161 | + 2.487, 2.478, 2.475, 2.477, 2.482, 2.489, 2.497, 2.512, 2.522, 2.536, 2.544, 2.551, 2.562, 2.566, 2.573, 2.578, 2.578, 2.575, 2.571, 2.564, 2.556, 2.548, 2.536, 2.523, 2.513, 2.503, 2.493, 2.489, 2.487, 2.486, 2.487, 2.502, | ||
2224 | 2162 | + 2.488, 2.479, 2.477, 2.478, 2.482, 2.488, 2.496, 2.505, 2.516, 2.528, 2.538, 2.547, 2.553, 2.561, 2.565, 2.569, 2.569, 2.568, 2.564, 2.558, 2.549, 2.541, 2.531, 2.517, 2.509, 2.499, 2.492, 2.488, 2.486, 2.484, 2.486, 2.503, | ||
2225 | 2163 | + 2.492, 2.482, 2.479, 2.479, 2.482, 2.487, 2.491, 2.501, 2.512, 2.523, 2.531, 2.541, 2.549, 2.552, 2.558, 2.561, 2.562, 2.559, 2.558, 2.552, 2.542, 2.535, 2.525, 2.514, 2.505, 2.497, 2.491, 2.486, 2.485, 2.484, 2.487, 2.503, | ||
2226 | 2164 | + 2.495, 2.483, 2.479, 2.479, 2.482, 2.487, 2.491, 2.498, 2.508, 2.515, 2.526, 2.533, 2.541, 2.547, 2.551, 2.554, 2.555, 2.554, 2.552, 2.541, 2.537, 2.527, 2.519, 2.507, 2.502, 2.495, 2.488, 2.485, 2.484, 2.485, 2.488, 2.503, | ||
2227 | 2165 | + 2.499, 2.485, 2.483, 2.481, 2.482, 2.486, 2.489, 2.494, 2.504, 2.511, 2.519, 2.527, 2.531, 2.539, 2.542, 2.546, 2.546, 2.545, 2.539, 2.535, 2.527, 2.522, 2.509, 2.505, 2.497, 2.491, 2.486, 2.485, 2.485, 2.487, 2.491, 2.506, | ||
2228 | 2166 | + 2.499, 2.489, 2.483, 2.481, 2.481, 2.483, 2.488, 2.491, 2.499, 2.506, 2.512, 2.519, 2.524, 2.529, 2.535, 2.537, 2.536, 2.534, 2.532, 2.525, 2.522, 2.514, 2.506, 2.499, 2.492, 2.489, 2.485, 2.484, 2.485, 2.488, 2.492, 2.506, | ||
2229 | 2167 | + 2.507, 2.494, 2.486, 2.483, 2.482, 2.482, 2.486, 2.488, 2.495, 2.501, 2.507, 2.511, 2.517, 2.519, 2.523, 2.525, 2.525, 2.523, 2.523, 2.521, 2.514, 2.506, 2.502, 2.496, 2.491, 2.488, 2.485, 2.485, 2.487, 2.489, 2.496, 2.516, | ||
2230 | 2168 | + 2.511, 2.503, 2.489, 2.486, 2.485, 2.485, 2.485, 2.487, 2.489, 2.495, 2.501, 2.505, 2.509, 2.514, 2.517, 2.519, 2.518, 2.517, 2.515, 2.511, 2.505, 2.501, 2.495, 2.492, 2.488, 2.486, 2.485, 2.486, 2.488, 2.492, 2.499, 2.519, | ||
2231 | 2169 | + 2.517, 2.505, 2.494, 2.489, 2.487, 2.486, 2.486, 2.486, 2.489, 2.491, 2.496, 2.499, 2.503, 2.506, 2.508, 2.509, 2.511, 2.509, 2.507, 2.503, 2.501, 2.496, 2.493, 2.489, 2.485, 2.485, 2.486, 2.487, 2.491, 2.495, 2.505, 2.526, | ||
2232 | 2170 | + 2.526, 2.516, 2.504, 2.494, 2.493, 2.489, 2.489, 2.489, 2.489, 2.491, 2.496, 2.498, 2.501, 2.504, 2.506, 2.506, 2.506, 2.505, 2.503, 2.501, 2.499, 2.496, 2.494, 2.491, 2.487, 2.486, 2.489, 2.492, 2.497, 2.505, 2.517, 2.528, | ||
2233 | 2171 | + 2.529, 2.526, 2.508, 2.502, 2.501, 2.498, 2.495, 2.495, 2.495, 2.495, 2.497, 2.499, 2.501, 2.503, 2.504, 2.506, 2.505, 2.505, 2.503, 2.501, 2.499, 2.496, 2.495, 2.494, 2.492, 2.494, 2.494, 2.498, 2.504, 2.513, 2.525, 2.536 | ||
2234 | 2172 | + ] | ||
2235 | 2173 | + }, | ||
2236 | 2174 | + { | ||
2237 | 2175 | + "ct": 5000, | ||
2238 | 2176 | + "table": | ||
2239 | 2177 | + [ | ||
2240 | 2178 | + 1.427, 1.425, 1.423, 1.422, 1.421, 1.421, 1.421, 1.421, 1.421, 1.421, 1.422, 1.423, 1.424, 1.425, 1.426, 1.426, 1.426, 1.425, 1.425, 1.424, 1.422, 1.421, 1.421, 1.421, 1.421, 1.422, 1.422, 1.422, 1.424, 1.424, 1.426, 1.428, | ||
2241 | 2179 | + 1.426, 1.424, 1.422, 1.421, 1.419, 1.419, 1.419, 1.421, 1.421, 1.422, 1.423, 1.424, 1.425, 1.426, 1.427, 1.427, 1.427, 1.426, 1.425, 1.424, 1.422, 1.421, 1.421, 1.421, 1.421, 1.421, 1.421, 1.421, 1.421, 1.422, 1.424, 1.427, | ||
2242 | 2180 | + 1.423, 1.421, 1.421, 1.419, 1.419, 1.418, 1.419, 1.419, 1.421, 1.423, 1.425, 1.426, 1.428, 1.429, 1.431, 1.431, 1.431, 1.431, 1.429, 1.426, 1.424, 1.422, 1.421, 1.421, 1.421, 1.419, 1.419, 1.419, 1.421, 1.421, 1.422, 1.425, | ||
2243 | 2181 | + 1.422, 1.419, 1.419, 1.419, 1.418, 1.418, 1.419, 1.421, 1.422, 1.426, 1.428, 1.429, 1.433, 1.434, 1.436, 1.436, 1.436, 1.434, 1.432, 1.429, 1.426, 1.424, 1.423, 1.422, 1.421, 1.419, 1.419, 1.419, 1.419, 1.419, 1.421, 1.425, | ||
2244 | 2182 | + 1.422, 1.419, 1.419, 1.418, 1.418, 1.419, 1.419, 1.422, 1.425, 1.429, 1.432, 1.435, 1.436, 1.438, 1.439, 1.439, 1.441, 1.439, 1.435, 1.433, 1.429, 1.427, 1.425, 1.423, 1.422, 1.419, 1.419, 1.418, 1.418, 1.418, 1.419, 1.425, | ||
2245 | 2183 | + 1.422, 1.419, 1.418, 1.418, 1.418, 1.419, 1.421, 1.424, 1.428, 1.432, 1.436, 1.437, 1.439, 1.442, 1.443, 1.445, 1.444, 1.443, 1.441, 1.436, 1.434, 1.431, 1.427, 1.425, 1.422, 1.421, 1.419, 1.418, 1.418, 1.418, 1.419, 1.424, | ||
2246 | 2184 | + 1.422, 1.418, 1.417, 1.418, 1.419, 1.421, 1.423, 1.427, 1.431, 1.436, 1.438, 1.442, 1.444, 1.446, 1.448, 1.449, 1.448, 1.446, 1.445, 1.441, 1.436, 1.434, 1.429, 1.427, 1.423, 1.421, 1.419, 1.418, 1.418, 1.418, 1.418, 1.423, | ||
2247 | 2185 | + 1.421, 1.418, 1.418, 1.418, 1.419, 1.421, 1.424, 1.429, 1.434, 1.438, 1.442, 1.445, 1.447, 1.449, 1.451, 1.452, 1.452, 1.449, 1.447, 1.445, 1.441, 1.436, 1.433, 1.429, 1.425, 1.422, 1.419, 1.419, 1.418, 1.417, 1.418, 1.423, | ||
2248 | 2186 | + 1.421, 1.418, 1.418, 1.419, 1.419, 1.423, 1.426, 1.432, 1.436, 1.441, 1.445, 1.448, 1.449, 1.452, 1.453, 1.454, 1.454, 1.453, 1.451, 1.447, 1.444, 1.439, 1.433, 1.431, 1.427, 1.422, 1.421, 1.419, 1.418, 1.417, 1.418, 1.423, | ||
2249 | 2187 | + 1.421, 1.418, 1.418, 1.419, 1.421, 1.423, 1.428, 1.433, 1.439, 1.443, 1.448, 1.449, 1.453, 1.454, 1.455, 1.456, 1.456, 1.454, 1.453, 1.449, 1.446, 1.441, 1.437, 1.433, 1.429, 1.423, 1.421, 1.419, 1.418, 1.416, 1.417, 1.423, | ||
2250 | 2188 | + 1.421, 1.417, 1.417, 1.419, 1.422, 1.424, 1.429, 1.435, 1.441, 1.444, 1.449, 1.453, 1.454, 1.456, 1.458, 1.459, 1.458, 1.456, 1.454, 1.451, 1.448, 1.442, 1.439, 1.435, 1.429, 1.426, 1.421, 1.419, 1.418, 1.416, 1.417, 1.422, | ||
2251 | 2189 | + 1.419, 1.418, 1.417, 1.419, 1.422, 1.425, 1.429, 1.436, 1.442, 1.446, 1.451, 1.454, 1.456, 1.458, 1.461, 1.461, 1.461, 1.459, 1.456, 1.453, 1.451, 1.446, 1.441, 1.436, 1.431, 1.427, 1.422, 1.419, 1.418, 1.416, 1.417, 1.422, | ||
2252 | 2190 | + 1.419, 1.418, 1.418, 1.421, 1.423, 1.426, 1.431, 1.437, 1.444, 1.449, 1.452, 1.456, 1.458, 1.461, 1.462, 1.463, 1.463, 1.461, 1.458, 1.454, 1.452, 1.447, 1.443, 1.438, 1.432, 1.428, 1.423, 1.421, 1.419, 1.417, 1.417, 1.421, | ||
2253 | 2191 | + 1.419, 1.418, 1.417, 1.421, 1.423, 1.428, 1.432, 1.439, 1.445, 1.451, 1.453, 1.457, 1.459, 1.462, 1.464, 1.465, 1.465, 1.463, 1.461, 1.457, 1.453, 1.449, 1.444, 1.441, 1.432, 1.429, 1.425, 1.421, 1.419, 1.417, 1.418, 1.422, | ||
2254 | 2192 | + 1.418, 1.417, 1.417, 1.419, 1.423, 1.428, 1.433, 1.439, 1.446, 1.451, 1.453, 1.457, 1.461, 1.464, 1.465, 1.466, 1.466, 1.464, 1.462, 1.459, 1.454, 1.451, 1.445, 1.441, 1.436, 1.429, 1.425, 1.422, 1.421, 1.417, 1.417, 1.423, | ||
2255 | 2193 | + 1.417, 1.416, 1.416, 1.419, 1.423, 1.428, 1.433, 1.441, 1.446, 1.451, 1.454, 1.458, 1.461, 1.463, 1.465, 1.466, 1.466, 1.465, 1.463, 1.459, 1.454, 1.451, 1.446, 1.441, 1.437, 1.431, 1.426, 1.422, 1.421, 1.418, 1.418, 1.423, | ||
2256 | 2194 | + 1.417, 1.416, 1.417, 1.418, 1.423, 1.428, 1.433, 1.439, 1.445, 1.451, 1.453, 1.457, 1.461, 1.463, 1.465, 1.466, 1.466, 1.464, 1.462, 1.459, 1.454, 1.451, 1.446, 1.441, 1.437, 1.431, 1.426, 1.422, 1.419, 1.417, 1.417, 1.422, | ||
2257 | 2195 | + 1.417, 1.416, 1.416, 1.418, 1.422, 1.428, 1.433, 1.438, 1.444, 1.449, 1.453, 1.456, 1.459, 1.462, 1.464, 1.465, 1.465, 1.463, 1.461, 1.458, 1.453, 1.449, 1.445, 1.441, 1.435, 1.429, 1.426, 1.421, 1.419, 1.417, 1.417, 1.422, | ||
2258 | 2196 | + 1.418, 1.416, 1.416, 1.418, 1.421, 1.426, 1.432, 1.438, 1.443, 1.447, 1.451, 1.454, 1.458, 1.459, 1.462, 1.463, 1.463, 1.462, 1.459, 1.455, 1.451, 1.447, 1.443, 1.439, 1.434, 1.429, 1.425, 1.421, 1.419, 1.417, 1.417, 1.422, | ||
2259 | 2197 | + 1.418, 1.416, 1.416, 1.418, 1.421, 1.425, 1.431, 1.435, 1.442, 1.445, 1.449, 1.452, 1.455, 1.458, 1.458, 1.461, 1.461, 1.459, 1.456, 1.453, 1.449, 1.445, 1.442, 1.436, 1.433, 1.427, 1.425, 1.421, 1.419, 1.418, 1.418, 1.422, | ||
2260 | 2198 | + 1.419, 1.416, 1.415, 1.417, 1.419, 1.424, 1.429, 1.434, 1.439, 1.443, 1.446, 1.449, 1.452, 1.454, 1.456, 1.457, 1.457, 1.456, 1.453, 1.451, 1.447, 1.443, 1.441, 1.435, 1.431, 1.426, 1.424, 1.421, 1.419, 1.418, 1.418, 1.422, | ||
2261 | 2199 | + 1.419, 1.416, 1.415, 1.416, 1.419, 1.422, 1.426, 1.433, 1.437, 1.441, 1.444, 1.447, 1.449, 1.452, 1.453, 1.455, 1.455, 1.453, 1.451, 1.447, 1.444, 1.441, 1.438, 1.432, 1.428, 1.424, 1.421, 1.419, 1.418, 1.417, 1.417, 1.421, | ||
2262 | 2200 | + 1.419, 1.416, 1.415, 1.416, 1.418, 1.421, 1.425, 1.431, 1.435, 1.438, 1.442, 1.445, 1.446, 1.449, 1.451, 1.451, 1.451, 1.451, 1.447, 1.445, 1.443, 1.439, 1.434, 1.431, 1.427, 1.422, 1.421, 1.418, 1.417, 1.417, 1.417, 1.421, | ||
2263 | 2201 | + 1.418, 1.416, 1.415, 1.416, 1.417, 1.421, 1.423, 1.428, 1.433, 1.437, 1.439, 1.442, 1.444, 1.446, 1.448, 1.449, 1.449, 1.447, 1.445, 1.443, 1.439, 1.437, 1.432, 1.429, 1.425, 1.422, 1.419, 1.417, 1.417, 1.416, 1.416, 1.419, | ||
2264 | 2202 | + 1.418, 1.416, 1.416, 1.416, 1.417, 1.421, 1.422, 1.426, 1.429, 1.433, 1.436, 1.438, 1.441, 1.443, 1.445, 1.446, 1.445, 1.445, 1.443, 1.439, 1.437, 1.434, 1.431, 1.427, 1.424, 1.421, 1.419, 1.417, 1.417, 1.416, 1.416, 1.421, | ||
2265 | 2203 | + 1.419, 1.417, 1.416, 1.416, 1.417, 1.421, 1.422, 1.424, 1.427, 1.429, 1.432, 1.436, 1.437, 1.439, 1.442, 1.443, 1.443, 1.441, 1.439, 1.437, 1.434, 1.431, 1.429, 1.425, 1.422, 1.421, 1.419, 1.417, 1.416, 1.416, 1.417, 1.419, | ||
2266 | 2204 | + 1.421, 1.418, 1.416, 1.417, 1.418, 1.421, 1.421, 1.423, 1.424, 1.427, 1.429, 1.432, 1.434, 1.436, 1.438, 1.439, 1.439, 1.438, 1.436, 1.434, 1.431, 1.429, 1.426, 1.423, 1.422, 1.421, 1.418, 1.417, 1.417, 1.417, 1.417, 1.421, | ||
2267 | 2205 | + 1.423, 1.419, 1.418, 1.418, 1.419, 1.419, 1.421, 1.422, 1.423, 1.424, 1.427, 1.429, 1.432, 1.432, 1.434, 1.435, 1.435, 1.434, 1.433, 1.431, 1.429, 1.426, 1.424, 1.422, 1.421, 1.419, 1.418, 1.417, 1.417, 1.417, 1.418, 1.421, | ||
2268 | 2206 | + 1.425, 1.421, 1.419, 1.419, 1.419, 1.421, 1.421, 1.421, 1.421, 1.423, 1.424, 1.426, 1.428, 1.431, 1.431, 1.432, 1.432, 1.431, 1.431, 1.428, 1.425, 1.425, 1.422, 1.421, 1.419, 1.419, 1.418, 1.418, 1.418, 1.418, 1.419, 1.425, | ||
2269 | 2207 | + 1.426, 1.422, 1.419, 1.419, 1.419, 1.419, 1.419, 1.419, 1.419, 1.421, 1.422, 1.424, 1.426, 1.427, 1.428, 1.429, 1.429, 1.429, 1.427, 1.424, 1.423, 1.422, 1.421, 1.419, 1.418, 1.418, 1.418, 1.418, 1.418, 1.418, 1.419, 1.426, | ||
2270 | 2208 | + 1.428, 1.425, 1.421, 1.421, 1.421, 1.421, 1.421, 1.419, 1.419, 1.421, 1.422, 1.423, 1.424, 1.426, 1.426, 1.426, 1.426, 1.425, 1.424, 1.424, 1.422, 1.422, 1.421, 1.419, 1.419, 1.419, 1.419, 1.419, 1.419, 1.419, 1.423, 1.426, | ||
2271 | 2209 | + 1.429, 1.427, 1.424, 1.422, 1.422, 1.422, 1.421, 1.421, 1.421, 1.422, 1.422, 1.422, 1.424, 1.425, 1.426, 1.426, 1.425, 1.425, 1.424, 1.423, 1.422, 1.422, 1.421, 1.421, 1.421, 1.421, 1.419, 1.419, 1.421, 1.422, 1.424, 1.426 | ||
2272 | 2210 | + ] | ||
2273 | 2211 | + } | ||
2274 | 2212 | + ], | ||
2275 | 2213 | + "luminance_lut": | ||
2276 | 2214 | + [ | ||
2277 | 2215 | + 2.964, 2.872, 2.691, 2.544, 2.416, 2.302, 2.196, 2.093, 2.006, 1.928, 1.852, 1.801, 1.769, 1.752, 1.743, 1.743, 1.743, 1.746, 1.759, 1.784, 1.824, 1.888, 1.968, 2.052, 2.149, 2.253, 2.359, 2.483, 2.626, 2.785, 2.988, 3.051, | ||
2278 | 2216 | + 2.872, 2.748, 2.583, 2.442, 2.313, 2.201, 2.104, 2.012, 1.928, 1.852, 1.791, 1.742, 1.701, 1.671, 1.651, 1.643, 1.643, 1.659, 1.685, 1.721, 1.768, 1.824, 1.888, 1.971, 2.068, 2.152, 2.259, 2.381, 2.514, 2.669, 2.853, 2.988, | ||
2279 | 2217 | + 2.761, 2.655, 2.497, 2.356, 2.226, 2.114, 2.012, 1.928, 1.845, 1.769, 1.707, 1.653, 1.612, 1.583, 1.562, 1.556, 1.556, 1.572, 1.599, 1.635, 1.681, 1.742, 1.806, 1.888, 1.971, 2.068, 2.175, 2.292, 2.431, 2.576, 2.747, 2.853, | ||
2280 | 2218 | + 2.679, 2.571, 2.415, 2.275, 2.151, 2.035, 1.936, 1.845, 1.769, 1.689, 1.623, 1.572, 1.532, 1.501, 1.481, 1.473, 1.473, 1.492, 1.517, 1.556, 1.599, 1.659, 1.731, 1.806, 1.895, 1.992, 2.101, 2.218, 2.349, 2.493, 2.664, 2.753, | ||
2281 | 2219 | + 2.609, 2.492, 2.339, 2.204, 2.079, 1.971, 1.865, 1.772, 1.689, 1.619, 1.551, 1.499, 1.457, 1.423, 1.405, 1.397, 1.397, 1.411, 1.438, 1.477, 1.525, 1.585, 1.659, 1.731, 1.823, 1.922, 2.027, 2.148, 2.275, 2.422, 2.586, 2.683, | ||
2282 | 2220 | + 2.545, 2.426, 2.279, 2.139, 2.014, 1.903, 1.799, 1.702, 1.619, 1.551, 1.482, 1.427, 1.385, 1.353, 1.331, 1.325, 1.325, 1.338, 1.364, 1.403, 1.455, 1.522, 1.585, 1.665, 1.757, 1.858, 1.963, 2.081, 2.207, 2.356, 2.518, 2.615, | ||
2283 | 2221 | + 2.489, 2.367, 2.218, 2.079, 1.956, 1.844, 1.739, 1.642, 1.559, 1.482, 1.426, 1.363, 1.321, 1.287, 1.266, 1.259, 1.259, 1.274, 1.301, 1.339, 1.395, 1.455, 1.523, 1.606, 1.697, 1.797, 1.905, 2.024, 2.154, 2.296, 2.455, 2.563, | ||
2284 | 2222 | + 2.439, 2.316, 2.164, 2.028, 1.906, 1.793, 1.686, 1.589, 1.505, 1.427, 1.363, 1.308, 1.261, 1.229, 1.207, 1.202, 1.202, 1.215, 1.242, 1.283, 1.339, 1.395, 1.467, 1.551, 1.639, 1.742, 1.851, 1.972, 2.104, 2.243, 2.402, 2.515, | ||
2285 | 2223 | + 2.398, 2.262, 2.116, 1.982, 1.861, 1.745, 1.639, 1.541, 1.456, 1.377, 1.308, 1.261, 1.208, 1.177, 1.157, 1.153, 1.153, 1.167, 1.191, 1.233, 1.283, 1.343, 1.418, 1.499, 1.591, 1.696, 1.804, 1.928, 2.057, 2.194, 2.352, 2.471, | ||
2286 | 2224 | + 2.363, 2.222, 2.078, 1.942, 1.818, 1.706, 1.597, 1.501, 1.412, 1.334, 1.266, 1.208, 1.171, 1.134, 1.113, 1.109, 1.109, 1.123, 1.149, 1.191, 1.233, 1.296, 1.371, 1.457, 1.546, 1.654, 1.768, 1.886, 2.014, 2.155, 2.312, 2.436, | ||
2287 | 2225 | + 2.334, 2.188, 2.042, 1.909, 1.783, 1.668, 1.561, 1.464, 1.374, 1.295, 1.228, 1.171, 1.134, 1.098, 1.076, 1.072, 1.072, 1.087, 1.119, 1.149, 1.196, 1.259, 1.332, 1.419, 1.514, 1.616, 1.728, 1.849, 1.981, 2.123, 2.276, 2.406, | ||
2288 | 2226 | + 2.306, 2.159, 2.015, 1.881, 1.753, 1.639, 1.533, 1.434, 1.341, 1.263, 1.195, 1.139, 1.098, 1.074, 1.046, 1.044, 1.045, 1.059, 1.087, 1.119, 1.165, 1.227, 1.302, 1.387, 1.482, 1.586, 1.698, 1.819, 1.953, 2.093, 2.248, 2.383, | ||
2289 | 2227 | + 2.291, 2.141, 1.991, 1.856, 1.732, 1.615, 1.508, 1.409, 1.318, 1.238, 1.171, 1.114, 1.074, 1.046, 1.027, 1.023, 1.025, 1.043, 1.059, 1.095, 1.142, 1.203, 1.278, 1.362, 1.456, 1.559, 1.673, 1.796, 1.928, 2.071, 2.225, 2.359, | ||
2290 | 2228 | + 2.279, 2.118, 1.972, 1.839, 1.715, 1.599, 1.488, 1.389, 1.298, 1.219, 1.153, 1.097, 1.057, 1.027, 1.018, 1.009, 1.013, 1.025, 1.044, 1.078, 1.125, 1.186, 1.258, 1.342, 1.438, 1.541, 1.655, 1.779, 1.909, 2.053, 2.211, 2.351, | ||
2291 | 2229 | + 2.274, 2.108, 1.963, 1.831, 1.706, 1.588, 1.477, 1.376, 1.288, 1.207, 1.139, 1.086, 1.049, 1.021, 1.005, 1.002, 1.004, 1.013, 1.035, 1.069, 1.116, 1.176, 1.246, 1.331, 1.427, 1.531, 1.645, 1.767, 1.899, 2.045, 2.197, 2.351, | ||
2292 | 2230 | + 2.274, 2.106, 1.961, 1.827, 1.701, 1.585, 1.474, 1.374, 1.285, 1.206, 1.139, 1.085, 1.047, 1.019, 1.003, 1.001, 1.001, 1.012, 1.033, 1.067, 1.113, 1.173, 1.245, 1.329, 1.423, 1.529, 1.642, 1.765, 1.897, 2.042, 2.196, 2.349, | ||
2293 | 2231 | + 2.274, 2.108, 1.961, 1.827, 1.701, 1.585, 1.474, 1.374, 1.285, 1.206, 1.139, 1.085, 1.047, 1.021, 1.005, 1.001, 1.004, 1.012, 1.033, 1.068, 1.113, 1.173, 1.246, 1.329, 1.423, 1.529, 1.642, 1.766, 1.897, 2.042, 2.198, 2.349, | ||
2294 | 2232 | + 2.278, 2.116, 1.968, 1.833, 1.707, 1.591, 1.482, 1.382, 1.291, 1.214, 1.147, 1.091, 1.055, 1.028, 1.016, 1.006, 1.012, 1.018, 1.039, 1.074, 1.121, 1.182, 1.255, 1.339, 1.433, 1.538, 1.651, 1.777, 1.911, 2.051, 2.207, 2.351, | ||
2295 | 2233 | + 2.283, 2.127, 1.979, 1.846, 1.723, 1.605, 1.496, 1.397, 1.309, 1.229, 1.162, 1.108, 1.067, 1.041, 1.027, 1.018, 1.018, 1.036, 1.051, 1.087, 1.136, 1.197, 1.269, 1.354, 1.448, 1.554, 1.664, 1.789, 1.922, 2.065, 2.222, 2.365, | ||
2296 | 2234 | + 2.298, 2.145, 1.999, 1.865, 1.744, 1.627, 1.518, 1.421, 1.331, 1.251, 1.183, 1.129, 1.087, 1.065, 1.041, 1.036, 1.036, 1.051, 1.074, 1.107, 1.158, 1.219, 1.292, 1.378, 1.471, 1.575, 1.687, 1.809, 1.942, 2.085, 2.239, 2.378, | ||
2297 | 2235 | + 2.315, 2.174, 2.024, 1.893, 1.768, 1.652, 1.543, 1.445, 1.355, 1.278, 1.211, 1.155, 1.116, 1.087, 1.066, 1.061, 1.061, 1.074, 1.105, 1.137, 1.186, 1.248, 1.322, 1.405, 1.498, 1.602, 1.713, 1.835, 1.965, 2.109, 2.267, 2.399, | ||
2298 | 2236 | + 2.341, 2.206, 2.057, 1.923, 1.799, 1.685, 1.576, 1.479, 1.392, 1.312, 1.244, 1.187, 1.154, 1.116, 1.096, 1.092, 1.092, 1.106, 1.137, 1.173, 1.221, 1.282, 1.356, 1.439, 1.532, 1.635, 1.747, 1.869, 1.997, 2.141, 2.298, 2.425, | ||
2299 | 2237 | + 2.375, 2.244, 2.098, 1.965, 1.839, 1.722, 1.614, 1.519, 1.434, 1.355, 1.288, 1.234, 1.187, 1.155, 1.136, 1.132, 1.132, 1.147, 1.173, 1.219, 1.263, 1.324, 1.398, 1.479, 1.571, 1.674, 1.784, 1.904, 2.035, 2.177, 2.336, 2.455, | ||
2300 | 2238 | + 2.414, 2.286, 2.144, 2.011, 1.883, 1.767, 1.661, 1.566, 1.479, 1.401, 1.335, 1.286, 1.234, 1.202, 1.183, 1.178, 1.178, 1.195, 1.222, 1.263, 1.313, 1.372, 1.444, 1.526, 1.618, 1.718, 1.827, 1.951, 2.081, 2.221, 2.379, 2.498, | ||
2301 | 2239 | + 2.463, 2.339, 2.191, 2.056, 1.931, 1.819, 1.712, 1.616, 1.529, 1.452, 1.392, 1.335, 1.286, 1.254, 1.235, 1.232, 1.232, 1.248, 1.275, 1.313, 1.371, 1.425, 1.495, 1.576, 1.671, 1.768, 1.877, 1.999, 2.128, 2.269, 2.428, 2.541, | ||
2302 | 2240 | + 2.514, 2.396, 2.247, 2.112, 1.988, 1.873, 1.766, 1.671, 1.588, 1.513, 1.452, 1.392, 1.348, 1.316, 1.298, 1.292, 1.292, 1.307, 1.336, 1.373, 1.425, 1.486, 1.552, 1.636, 1.728, 1.826, 1.933, 2.051, 2.183, 2.327, 2.488, 2.587, | ||
2303 | 2241 | + 2.573, 2.459, 2.307, 2.171, 2.049, 1.931, 1.828, 1.731, 1.649, 1.582, 1.513, 1.459, 1.415, 1.381, 1.363, 1.358, 1.358, 1.373, 1.399, 1.439, 1.486, 1.552, 1.617, 1.696, 1.787, 1.888, 1.995, 2.112, 2.244, 2.391, 2.552, 2.652, | ||
2304 | 2242 | + 2.635, 2.525, 2.377, 2.239, 2.111, 1.996, 1.895, 1.799, 1.719, 1.649, 1.582, 1.531, 1.486, 1.454, 1.434, 1.429, 1.429, 1.444, 1.469, 1.507, 1.555, 1.617, 1.692, 1.766, 1.854, 1.954, 2.065, 2.181, 2.313, 2.459, 2.623, 2.722, | ||
2305 | 2243 | + 2.714, 2.604, 2.452, 2.313, 2.188, 2.071, 1.966, 1.876, 1.799, 1.719, 1.656, 1.604, 1.562, 1.529, 1.511, 1.504, 1.504, 1.519, 1.544, 1.583, 1.632, 1.692, 1.766, 1.839, 1.929, 2.029, 2.138, 2.259, 2.391, 2.539, 2.712, 2.811, | ||
2306 | 2244 | + 2.809, 2.698, 2.537, 2.396, 2.277, 2.163, 2.053, 1.965, 1.876, 1.799, 1.741, 1.688, 1.643, 1.613, 1.592, 1.586, 1.586, 1.601, 1.628, 1.666, 1.715, 1.773, 1.839, 1.927, 2.012, 2.111, 2.222, 2.342, 2.477, 2.625, 2.811, 2.926, | ||
2307 | 2245 | + 2.921, 2.809, 2.637, 2.493, 2.376, 2.256, 2.149, 2.053, 1.966, 1.893, 1.832, 1.778, 1.736, 1.708, 1.687, 1.681, 1.681, 1.696, 1.721, 1.757, 1.806, 1.864, 1.929, 2.012, 2.106, 2.199, 2.313, 2.437, 2.577, 2.731, 2.926, 3.051, | ||
2308 | 2246 | + 3.029, 2.921, 2.745, 2.591, 2.474, 2.355, 2.246, 2.146, 2.049, 1.966, 1.893, 1.832, 1.799, 1.776, 1.768, 1.768, 1.768, 1.771, 1.783, 1.809, 1.864, 1.929, 2.012, 2.097, 2.195, 2.297, 2.412, 2.539, 2.682, 2.846, 3.051, 3.123 | ||
2309 | 2247 | + ], | ||
2310 | 2248 | + "sigma": 0.00463, | ||
2311 | 2249 | + "sigma_Cb": 0.00149 | ||
2312 | 2250 | + } | ||
2313 | 2251 | + }, | ||
2314 | 2252 | + { | ||
2315 | 2253 | + "rpi.contrast": | ||
2316 | 2254 | + { | ||
2317 | 2255 | + "ce_enable": 1, | ||
2318 | 2256 | + "lo_max": 1000, | ||
2319 | 2257 | + "gamma_curve": | ||
2320 | 2258 | + [ | ||
2321 | 2259 | + 0, 0, | ||
2322 | 2260 | + 1024, 5040, | ||
2323 | 2261 | + 2048, 9338, | ||
2324 | 2262 | + 3072, 12356, | ||
2325 | 2263 | + 4096, 15312, | ||
2326 | 2264 | + 5120, 18051, | ||
2327 | 2265 | + 6144, 20790, | ||
2328 | 2266 | + 7168, 23193, | ||
2329 | 2267 | + 8192, 25744, | ||
2330 | 2268 | + 9216, 27942, | ||
2331 | 2269 | + 10240, 30035, | ||
2332 | 2270 | + 11264, 32005, | ||
2333 | 2271 | + 12288, 33975, | ||
2334 | 2272 | + 13312, 35815, | ||
2335 | 2273 | + 14336, 37600, | ||
2336 | 2274 | + 15360, 39168, | ||
2337 | 2275 | + 16384, 40642, | ||
2338 | 2276 | + 18432, 43379, | ||
2339 | 2277 | + 20480, 45749, | ||
2340 | 2278 | + 22528, 47753, | ||
2341 | 2279 | + 24576, 49621, | ||
2342 | 2280 | + 26624, 51253, | ||
2343 | 2281 | + 28672, 52698, | ||
2344 | 2282 | + 30720, 53796, | ||
2345 | 2283 | + 32768, 54876, | ||
2346 | 2284 | + 36864, 57012, | ||
2347 | 2285 | + 40960, 58656, | ||
2348 | 2286 | + 45056, 59954, | ||
2349 | 2287 | + 49152, 61183, | ||
2350 | 2288 | + 53248, 62355, | ||
2351 | 2289 | + 57344, 63419, | ||
2352 | 2290 | + 61440, 64476, | ||
2353 | 2291 | + 65535, 65535 | ||
2354 | 2292 | + ] | ||
2355 | 2293 | + } | ||
2356 | 2294 | + }, | ||
2357 | 2295 | + { | ||
2358 | 2296 | + "rpi.ccm": | ||
2359 | 2297 | + { | ||
2360 | 2298 | + "ccms": [ | ||
2361 | 2299 | + { | ||
2362 | 2300 | + "ct": 2498, | ||
2363 | 2301 | + "ccm": | ||
2364 | 2302 | + [ | ||
2365 | 2303 | + 1.58731, -0.18011, -0.40721, | ||
2366 | 2304 | + -0.60639, 2.03422, -0.42782, | ||
2367 | 2305 | + -0.19612, -1.69203, 2.88815 | ||
2368 | 2306 | + ] | ||
2369 | 2307 | + }, | ||
2370 | 2308 | + { | ||
2371 | 2309 | + "ct": 2811, | ||
2372 | 2310 | + "ccm": | ||
2373 | 2311 | + [ | ||
2374 | 2312 | + 1.61593, -0.33164, -0.28429, | ||
2375 | 2313 | + -0.55048, 1.97779, -0.42731, | ||
2376 | 2314 | + -0.12042, -1.42847, 2.54889 | ||
2377 | 2315 | + ] | ||
2378 | 2316 | + }, | ||
2379 | 2317 | + { | ||
2380 | 2318 | + "ct": 2911, | ||
2381 | 2319 | + "ccm": | ||
2382 | 2320 | + [ | ||
2383 | 2321 | + 1.62771, -0.41282, -0.21489, | ||
2384 | 2322 | + -0.57991, 2.04176, -0.46186, | ||
2385 | 2323 | + -0.07613, -1.13359, 2.20972 | ||
2386 | 2324 | + ] | ||
2387 | 2325 | + }, | ||
2388 | 2326 | + { | ||
2389 | 2327 | + "ct": 2919, | ||
2390 | 2328 | + "ccm": | ||
2391 | 2329 | + [ | ||
2392 | 2330 | + 1.62661, -0.37736, -0.24925, | ||
2393 | 2331 | + -0.52519, 1.95233, -0.42714, | ||
2394 | 2332 | + -0.10842, -1.34929, 2.45771 | ||
2395 | 2333 | + ] | ||
2396 | 2334 | + }, | ||
2397 | 2335 | + { | ||
2398 | 2336 | + "ct": 3627, | ||
2399 | 2337 | + "ccm": | ||
2400 | 2338 | + [ | ||
2401 | 2339 | + 1.70385, -0.57231, -0.13154, | ||
2402 | 2340 | + -0.47763, 1.85998, -0.38235, | ||
2403 | 2341 | + -0.07467, -0.82678, 1.90145 | ||
2404 | 2342 | + ] | ||
2405 | 2343 | + }, | ||
2406 | 2344 | + { | ||
2407 | 2345 | + "ct": 4600, | ||
2408 | 2346 | + "ccm": | ||
2409 | 2347 | + [ | ||
2410 | 2348 | + 1.68486, -0.61085, -0.07402, | ||
2411 | 2349 | + -0.41927, 2.04016, -0.62089, | ||
2412 | 2350 | + -0.08633, -0.67672, 1.76305 | ||
2413 | 2351 | + ] | ||
2414 | 2352 | + }, | ||
2415 | 2353 | + { | ||
2416 | 2354 | + "ct": 5716, | ||
2417 | 2355 | + "ccm": | ||
2418 | 2356 | + [ | ||
2419 | 2357 | + 1.80439, -0.73699, -0.06739, | ||
2420 | 2358 | + -0.36073, 1.83327, -0.47255, | ||
2421 | 2359 | + -0.08378, -0.56403, 1.64781 | ||
2422 | 2360 | + ] | ||
2423 | 2361 | + }, | ||
2424 | 2362 | + { | ||
2425 | 2363 | + "ct": 8575, | ||
2426 | 2364 | + "ccm": | ||
2427 | 2365 | + [ | ||
2428 | 2366 | + 1.89357, -0.76427, -0.12931, | ||
2429 | 2367 | + -0.27399, 2.15605, -0.88206, | ||
2430 | 2368 | + -0.12035, -0.68256, 1.80292 | ||
2431 | 2369 | + ] | ||
2432 | 2370 | + } | ||
2433 | 2371 | + ] | ||
2434 | 2372 | + } | ||
2435 | 2373 | + }, | ||
2436 | 2374 | + { | ||
2437 | 2375 | + "rpi.sharpen": | ||
2438 | 2376 | + { | ||
2439 | 2377 | + "threshold": 0.25, | ||
2440 | 2378 | + "limit": 1.0, | ||
2441 | 2379 | + "strength": 1.0 | ||
2442 | 2380 | + } | ||
2443 | 2381 | + }, | ||
2444 | 2382 | + { | ||
2445 | 2383 | + "rpi.hdr": | ||
2446 | 2384 | + { | ||
2447 | 2385 | + "Off": | ||
2448 | 2386 | + { | ||
2449 | 2387 | + "cadence": [ 0 ] | ||
2450 | 2388 | + }, | ||
2451 | 2389 | + "MultiExposureUnmerged": | ||
2452 | 2390 | + { | ||
2453 | 2391 | + "cadence": [ 1, 2 ], | ||
2454 | 2392 | + "channel_map": | ||
2455 | 2393 | + { | ||
2456 | 2394 | + "short": 1, | ||
2457 | 2395 | + "long": 2 | ||
2458 | 2396 | + } | ||
2459 | 2397 | + }, | ||
2460 | 2398 | + "SingleExposure": | ||
2461 | 2399 | + { | ||
2462 | 2400 | + "cadence": [ 1 ], | ||
2463 | 2401 | + "channel_map": | ||
2464 | 2402 | + { | ||
2465 | 2403 | + "short": 1 | ||
2466 | 2404 | + }, | ||
2467 | 2405 | + "spatial_gain": 2.0, | ||
2468 | 2406 | + "tonemap_enable": 1 | ||
2469 | 2407 | + }, | ||
2470 | 2408 | + "MultiExposure": | ||
2471 | 2409 | + { | ||
2472 | 2410 | + "cadence": [ 1, 2 ], | ||
2473 | 2411 | + "channel_map": | ||
2474 | 2412 | + { | ||
2475 | 2413 | + "short": 1, | ||
2476 | 2414 | + "long": 2 | ||
2477 | 2415 | + }, | ||
2478 | 2416 | + "stitch_enable": 1, | ||
2479 | 2417 | + "spatial_gain": 2.0, | ||
2480 | 2418 | + "tonemap_enable": 1 | ||
2481 | 2419 | + }, | ||
2482 | 2420 | + "Night": | ||
2483 | 2421 | + { | ||
2484 | 2422 | + "cadence": [ 3 ], | ||
2485 | 2423 | + "channel_map": | ||
2486 | 2424 | + { | ||
2487 | 2425 | + "short": 3 | ||
2488 | 2426 | + }, | ||
2489 | 2427 | + "tonemap_enable": 1, | ||
2490 | 2428 | + "tonemap": | ||
2491 | 2429 | + [ | ||
2492 | 2430 | + 0, 0, | ||
2493 | 2431 | + 5000, 20000, | ||
2494 | 2432 | + 10000, 30000, | ||
2495 | 2433 | + 20000, 47000, | ||
2496 | 2434 | + 30000, 55000, | ||
2497 | 2435 | + 65535, 65535 | ||
2498 | 2436 | + ] | ||
2499 | 2437 | + } | ||
2500 | 2438 | + } | ||
2501 | 2439 | + } | ||
2502 | 2440 | + ] | ||
2503 | 2441 | +} | ||
2504 | 2442 | \ No newline at end of file | ||
2505 | 2443 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
2506 | 2444 | +++ b/src/ipa/rpi/pisp/data/meson.build 2024-11-25 22:51:33.869906612 +0530 | ||
2507 | 2445 | @@ -0,0 +1,21 @@ | ||
2508 | 2446 | +# SPDX-License-Identifier: CC0-1.0 | ||
2509 | 2447 | + | ||
2510 | 2448 | +conf_files = files([ | ||
2511 | 2449 | + 'imx219.json', | ||
2512 | 2450 | + 'imx219_noir.json', | ||
2513 | 2451 | + 'imx296.json', | ||
2514 | 2452 | + 'imx296_mono.json', | ||
2515 | 2453 | + 'imx477.json', | ||
2516 | 2454 | + 'imx477_noir.json', | ||
2517 | 2455 | + 'imx477_scientific.json', | ||
2518 | 2456 | + 'imx708.json', | ||
2519 | 2457 | + 'imx708_noir.json', | ||
2520 | 2458 | + 'imx708_wide.json', | ||
2521 | 2459 | + 'imx708_wide_noir.json', | ||
2522 | 2460 | + 'ov5647.json', | ||
2523 | 2461 | + 'ov5647_noir.json', | ||
2524 | 2462 | + 'uncalibrated.json', | ||
2525 | 2463 | +]) | ||
2526 | 2464 | + | ||
2527 | 2465 | +install_data(conf_files, | ||
2528 | 2466 | + install_dir : ipa_data_dir / 'rpi' / 'pisp') | ||
2529 | 2467 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
2530 | 2468 | +++ b/src/ipa/rpi/pisp/data/uncalibrated.json 2024-11-25 21:08:37.638494238 +0530 | ||
2531 | 2469 | @@ -0,0 +1,135 @@ | ||
2532 | 2470 | +{ | ||
2533 | 2471 | + "version": 2.0, | ||
2534 | 2472 | + "target": "pisp", | ||
2535 | 2473 | + "algorithms": [ | ||
2536 | 2474 | + { | ||
2537 | 2475 | + "rpi.black_level": | ||
2538 | 2476 | + { | ||
2539 | 2477 | + "black_level": 4096 | ||
2540 | 2478 | + } | ||
2541 | 2479 | + }, | ||
2542 | 2480 | + { | ||
2543 | 2481 | + "rpi.awb": | ||
2544 | 2482 | + { | ||
2545 | 2483 | + "use_derivatives": 0, | ||
2546 | 2484 | + "bayes": 0 | ||
2547 | 2485 | + } | ||
2548 | 2486 | + }, | ||
2549 | 2487 | + { | ||
2550 | 2488 | + "rpi.agc": | ||
2551 | 2489 | + { | ||
2552 | 2490 | + "metering_modes": | ||
2553 | 2491 | + { | ||
2554 | 2492 | + "centre-weighted": | ||
2555 | 2493 | + { | ||
2556 | 2494 | + "weights": | ||
2557 | 2495 | + [ | ||
2558 | 2496 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, | ||
2559 | 2497 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
2560 | 2498 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
2561 | 2499 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
2562 | 2500 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
2563 | 2501 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
2564 | 2502 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
2565 | 2503 | + 1, 1, 2, 2, 3, 3, 4, 4, 4, 3, 3, 2, 2, 1, 1, | ||
2566 | 2504 | + 1, 1, 2, 2, 3, 3, 3, 4, 3, 3, 3, 2, 2, 1, 1, | ||
2567 | 2505 | + 1, 1, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 1, 1, | ||
2568 | 2506 | + 1, 1, 2, 2, 2, 2, 3, 3, 3, 2, 2, 2, 2, 1, 1, | ||
2569 | 2507 | + 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, | ||
2570 | 2508 | + 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, | ||
2571 | 2509 | + 0, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 0, | ||
2572 | 2510 | + 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 | ||
2573 | 2511 | + ] | ||
2574 | 2512 | + } | ||
2575 | 2513 | + }, | ||
2576 | 2514 | + "exposure_modes": | ||
2577 | 2515 | + { | ||
2578 | 2516 | + "normal": | ||
2579 | 2517 | + { | ||
2580 | 2518 | + "shutter": [ 100, 15000, 30000, 60000, 120000 ], | ||
2581 | 2519 | + "gain": [ 1.0, 2.0, 3.0, 4.0, 6.0 ] | ||
2582 | 2520 | + } | ||
2583 | 2521 | + }, | ||
2584 | 2522 | + "constraint_modes": | ||
2585 | 2523 | + { | ||
2586 | 2524 | + "normal": [ | ||
2587 | 2525 | + { | ||
2588 | 2526 | + "bound": "LOWER", | ||
2589 | 2527 | + "q_lo": 0.98, | ||
2590 | 2528 | + "q_hi": 1.0, | ||
2591 | 2529 | + "y_target": | ||
2592 | 2530 | + [ | ||
2593 | 2531 | + 0, 0.4, | ||
2594 | 2532 | + 1000, 0.4 | ||
2595 | 2533 | + ] | ||
2596 | 2534 | + } | ||
2597 | 2535 | + ] | ||
2598 | 2536 | + }, | ||
2599 | 2537 | + "y_target": | ||
2600 | 2538 | + [ | ||
2601 | 2539 | + 0, 0.16, | ||
2602 | 2540 | + 1000, 0.165, | ||
2603 | 2541 | + 10000, 0.17 | ||
2604 | 2542 | + ] | ||
2605 | 2543 | + } | ||
2606 | 2544 | + }, | ||
2607 | 2545 | + { | ||
2608 | 2546 | + "rpi.ccm": | ||
2609 | 2547 | + { | ||
2610 | 2548 | + "ccms": [ | ||
2611 | 2549 | + { | ||
2612 | 2550 | + "ct": 4000, | ||
2613 | 2551 | + "ccm": | ||
2614 | 2552 | + [ | ||
2615 | 2553 | + 2.0, -1.0, 0.0, | ||
2616 | 2554 | + -0.5, 2.0, -0.5, | ||
2617 | 2555 | + 0, -1.0, 2.0 | ||
2618 | 2556 | + ] | ||
2619 | 2557 | + } | ||
2620 | 2558 | + ] | ||
2621 | 2559 | + } | ||
2622 | 2560 | + }, | ||
2623 | 2561 | + { | ||
2624 | 2562 | + "rpi.contrast": | ||
2625 | 2563 | + { | ||
2626 | 2564 | + "ce_enable": 0, | ||
2627 | 2565 | + "gamma_curve": | ||
2628 | 2566 | + [ | ||
2629 | 2567 | + 0, 0, | ||
2630 | 2568 | + 1024, 5040, | ||
2631 | 2569 | + 2048, 9338, | ||
2632 | 2570 | + 3072, 12356, | ||
2633 | 2571 | + 4096, 15312, | ||
2634 | 2572 | + 5120, 18051, | ||
2635 | 2573 | + 6144, 20790, | ||
2636 | 2574 | + 7168, 23193, | ||
2637 | 2575 | + 8192, 25744, | ||
2638 | 2576 | + 9216, 27942, | ||
2639 | 2577 | + 10240, 30035, | ||
2640 | 2578 | + 11264, 32005, | ||
2641 | 2579 | + 12288, 33975, | ||
2642 | 2580 | + 13312, 35815, | ||
2643 | 2581 | + 14336, 37600, | ||
2644 | 2582 | + 15360, 39168, | ||
2645 | 2583 | + 16384, 40642, | ||
2646 | 2584 | + 18432, 43379, | ||
2647 | 2585 | + 20480, 45749, | ||
2648 | 2586 | + 22528, 47753, | ||
2649 | 2587 | + 24576, 49621, | ||
2650 | 2588 | + 26624, 51253, | ||
2651 | 2589 | + 28672, 52698, | ||
2652 | 2590 | + 30720, 53796, | ||
2653 | 2591 | + 32768, 54876, | ||
2654 | 2592 | + 36864, 57012, | ||
2655 | 2593 | + 40960, 58656, | ||
2656 | 2594 | + 45056, 59954, | ||
2657 | 2595 | + 49152, 61183, | ||
2658 | 2596 | + 53248, 62355, | ||
2659 | 2597 | + 57344, 63419, | ||
2660 | 2598 | + 61440, 64476, | ||
2661 | 2599 | + 65535, 65535 | ||
2662 | 2600 | + ] | ||
2663 | 2601 | + } | ||
2664 | 2602 | + } | ||
2665 | 2603 | + ] | ||
2666 | 2604 | +} | ||
2667 | 2605 | \ No newline at end of file | ||
2668 | 2606 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
2669 | 2607 | +++ b/src/ipa/rpi/pisp/meson.build 2024-11-25 21:08:37.638494238 +0530 | ||
2670 | 2608 | @@ -0,0 +1,49 @@ | ||
2671 | 2609 | +# SPDX-License-Identifier: CC0-1.0 | ||
2672 | 2610 | + | ||
2673 | 2611 | +ipa_name = 'ipa_rpi_pisp' | ||
2674 | 2612 | + | ||
2675 | 2613 | +pisp_ipa_deps = [ | ||
2676 | 2614 | + libcamera_private, | ||
2677 | 2615 | + libatomic, | ||
2678 | 2616 | + libpisp_dep, | ||
2679 | 2617 | +] | ||
2680 | 2618 | + | ||
2681 | 2619 | +pisp_ipa_libs = [ | ||
2682 | 2620 | + rpi_ipa_cam_helper_lib, | ||
2683 | 2621 | + rpi_ipa_common_lib, | ||
2684 | 2622 | + rpi_ipa_controller_lib | ||
2685 | 2623 | +] | ||
2686 | 2624 | + | ||
2687 | 2625 | +pisp_ipa_includes = [ | ||
2688 | 2626 | + ipa_includes, | ||
2689 | 2627 | + libipa_includes, | ||
2690 | 2628 | +] | ||
2691 | 2629 | + | ||
2692 | 2630 | +pisp_ipa_sources = files([ | ||
2693 | 2631 | + 'pisp.cpp', | ||
2694 | 2632 | +]) | ||
2695 | 2633 | + | ||
2696 | 2634 | +pisp_ipa_includes += include_directories('..') | ||
2697 | 2635 | + | ||
2698 | 2636 | +mod = shared_module(ipa_name, pisp_ipa_sources, | ||
2699 | 2637 | + name_prefix : '', | ||
2700 | 2638 | + include_directories : pisp_ipa_includes, | ||
2701 | 2639 | + dependencies : pisp_ipa_deps, | ||
2702 | 2640 | + link_with : libipa, | ||
2703 | 2641 | + link_whole : pisp_ipa_libs, | ||
2704 | 2642 | + install : true, | ||
2705 | 2643 | + cpp_args : '-Wno-address-of-packed-member', | ||
2706 | 2644 | + install_dir : ipa_install_dir) | ||
2707 | 2645 | + | ||
2708 | 2646 | +if ipa_sign_module | ||
2709 | 2647 | + custom_target(ipa_name + '.so.sign', | ||
2710 | 2648 | + input : mod, | ||
2711 | 2649 | + output : ipa_name + '.so.sign', | ||
2712 | 2650 | + command : [ipa_sign, ipa_priv_key, '@INPUT@', '@OUTPUT@'], | ||
2713 | 2651 | + install : false, | ||
2714 | 2652 | + build_by_default : true) | ||
2715 | 2653 | +endif | ||
2716 | 2654 | + | ||
2717 | 2655 | +subdir('data') | ||
2718 | 2656 | + | ||
2719 | 2657 | +ipa_names += ipa_name | ||
2720 | 2658 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | ||
2721 | 2659 | +++ b/src/ipa/rpi/pisp/pisp.cpp 2024-11-25 21:08:37.638494238 +0530 | ||
2722 | 2660 | @@ -0,0 +1,1068 @@ | ||
2723 | 2661 | +/* SPDX-License-Identifier: BSD-2-Clause */ | ||
2724 | 2662 | +/* | ||
2725 | 2663 | + * Copyright (C) 2023, Raspberry Pi Ltd | ||
2726 | 2664 | + * | ||
2727 | 2665 | + * pisp.cpp - Raspberry Pi PiSP IPA | ||
2728 | 2666 | + */ | ||
2729 | 2667 | +#include <algorithm> | ||
2730 | 2668 | +#include <cmath> | ||
2731 | 2669 | +#include <mutex> | ||
2732 | 2670 | +#include <string> | ||
2733 | 2671 | +#include <sys/mman.h> | ||
2734 | 2672 | +#include <utility> | ||
2735 | 2673 | +#include <vector> | ||
2736 | 2674 | + | ||
2737 | 2675 | +#include <libcamera/base/log.h> | ||
2738 | 2676 | +#include <libcamera/control_ids.h> | ||
2739 | 2677 | +#include <libcamera/ipa/ipa_module_info.h> | ||
2740 | 2678 | +#include <libipa/pwl.h> | ||
2741 | 2679 | + | ||
2742 | 2680 | +#include "libpisp/backend/backend.hpp" | ||
2743 | 2681 | +#include "libpisp/frontend/frontend.hpp" | ||
2744 | 2682 | + | ||
2745 | 2683 | +#include "common/ipa_base.h" | ||
2746 | 2684 | +#include "controller/af_status.h" | ||
2747 | 2685 | +#include "controller/agc_algorithm.h" | ||
2748 | 2686 | +#include "controller/alsc_status.h" | ||
2749 | 2687 | +#include "controller/awb_algorithm.h" | ||
2750 | 2688 | +#include "controller/awb_status.h" | ||
2751 | 2689 | +#include "controller/black_level_algorithm.h" | ||
2752 | 2690 | +#include "controller/black_level_status.h" | ||
2753 | 2691 | +#include "controller/cac_status.h" | ||
2754 | 2692 | +#include "controller/ccm_status.h" | ||
2755 | 2693 | +#include "controller/contrast_status.h" | ||
2756 | 2694 | +#include "controller/denoise_algorithm.h" | ||
2757 | 2695 | +#include "controller/denoise_status.h" | ||
2758 | 2696 | +#include "controller/dpc_status.h" | ||
2759 | 2697 | +#include "controller/geq_status.h" | ||
2760 | 2698 | +#include "controller/hdr_status.h" | ||
2761 | 2699 | +#include "controller/lux_status.h" | ||
2762 | 2700 | +#include "controller/noise_status.h" | ||
2763 | 2701 | +#include "controller/saturation_status.h" | ||
2764 | 2702 | +#include "controller/sharpen_status.h" | ||
2765 | 2703 | +#include "controller/stitch_status.h" | ||
2766 | 2704 | +#include "controller/tonemap_status.h" | ||
2767 | 2705 | + | ||
2768 | 2706 | +using namespace std::literals::chrono_literals; | ||
2769 | 2707 | + | ||
2770 | 2708 | +namespace libcamera { | ||
2771 | 2709 | + | ||
2772 | 2710 | +LOG_DECLARE_CATEGORY(IPARPI) | ||
2773 | 2711 | + | ||
2774 | 2712 | +namespace { | ||
2775 | 2713 | + | ||
2776 | 2714 | +constexpr unsigned int NumLscCells = PISP_BE_LSC_GRID_SIZE; | ||
2777 | 2715 | +constexpr unsigned int NumLscVertexes = NumLscCells + 1; | ||
2778 | 2716 | + | ||
2779 | 2717 | +inline int32_t clampField(double value, std::size_t fieldBits, std::size_t fracBits = 0, | ||
2780 | 2718 | + bool isSigned = false, const char *desc = nullptr) | ||
2781 | 2719 | +{ | ||
2782 | 2720 | + ASSERT(fracBits <= fieldBits && fieldBits <= 32); | ||
2783 | 2721 | + | ||
2784 | 2722 | + int min = -(isSigned << (fieldBits - 1)); | ||
2785 | 2723 | + int max = (1 << (fieldBits - isSigned)) - 1; | ||
2786 | 2724 | + int32_t val = | ||
2787 | 2725 | + std::clamp<int32_t>(std::round(value * (1 << fracBits)), min, max); | ||
2788 | 2726 | + | ||
2789 | 2727 | + if (desc && val / (1 << fracBits) != value) | ||
2790 | 2728 | + LOG(IPARPI, Warning) | ||
2791 | 2729 | + << desc << " rounded/clamped to " << val / (1 << fracBits); | ||
2792 | 2730 | + | ||
2793 | 2731 | + return val; | ||
2794 | 2732 | +} | ||
2795 | 2733 | + | ||
2796 | 2734 | +int generateLut(const ipa::Pwl &pwl, uint32_t *lut, std::size_t lutSize, | ||
2797 | 2735 | + unsigned int SlopeBits = 14, unsigned int PosBits = 16) | ||
2798 | 2736 | +{ | ||
2799 | 2737 | + if (pwl.empty()) | ||
2800 | 2738 | + return -EINVAL; | ||
2801 | 2739 | + | ||
2802 | 2740 | + int lastY = 0; | ||
2803 | 2741 | + for (unsigned int i = 0; i < lutSize; i++) { | ||
2804 | 2742 | + int x, y; | ||
2805 | 2743 | + if (i < 32) | ||
2806 | 2744 | + x = i * 512; | ||
2807 | 2745 | + else if (i < 48) | ||
2808 | 2746 | + x = (i - 32) * 1024 + 16384; | ||
2809 | 2747 | + else | ||
2810 | 2748 | + x = std::min(65535u, (i - 48) * 2048 + 32768); | ||
2811 | 2749 | + | ||
2812 | 2750 | + y = pwl.eval(x); | ||
2813 | 2751 | + if (y < 0 || (i && y < lastY)) { | ||
2814 | 2752 | + LOG(IPARPI, Error) | ||
2815 | 2753 | + << "Malformed PWL for Gamma, disabling!"; | ||
2816 | 2754 | + return -1; | ||
2817 | 2755 | + } | ||
2818 | 2756 | + | ||
2819 | 2757 | + if (i) { | ||
2820 | 2758 | + unsigned int slope = y - lastY; | ||
2821 | 2759 | + if (slope >= (1u << SlopeBits)) { | ||
2822 | 2760 | + slope = (1u << SlopeBits) - 1; | ||
2823 | 2761 | + LOG(IPARPI, Info) | ||
2824 | 2762 | + << ("Maximum Gamma slope exceeded, adjusting!"); | ||
2825 | 2763 | + y = lastY + slope; | ||
2826 | 2764 | + } | ||
2827 | 2765 | + lut[i - 1] |= slope << PosBits; | ||
2828 | 2766 | + } | ||
2829 | 2767 | + | ||
2830 | 2768 | + lut[i] = y; | ||
2831 | 2769 | + lastY = y; | ||
2832 | 2770 | + } | ||
2833 | 2771 | + | ||
2834 | 2772 | + return 0; | ||
2835 | 2773 | +} | ||
2836 | 2774 | + | ||
2837 | 2775 | +void packLscLut(uint32_t packed[NumLscVertexes][NumLscVertexes], | ||
2838 | 2776 | + double const rgb[3][NumLscVertexes][NumLscVertexes]) | ||
2839 | 2777 | +{ | ||
2840 | 2778 | + for (unsigned int y = 0; y < NumLscVertexes; ++y) { | ||
2841 | 2779 | + for (unsigned int x = 0; x < NumLscVertexes; ++x) { | ||
2842 | 2780 | + /* Jointly encode RGB gains in one of 4 ranges: [0.5:1.5), [0:2), [0:4), [0:8) */ | ||
2843 | 2781 | + double lo = std::min({ rgb[0][y][x], rgb[1][y][x], rgb[2][y][x] }); | ||
2844 | 2782 | + double hi = std::max({ rgb[0][y][x], rgb[1][y][x], rgb[2][y][x] }); | ||
2845 | 2783 | + uint32_t range; | ||
2846 | 2784 | + double scale, offset; | ||
2847 | 2785 | + if (lo >= 0.5 && hi < 1.5) { | ||
2848 | 2786 | + range = 0; | ||
2849 | 2787 | + scale = 1024.0; | ||
2850 | 2788 | + offset = -511.5; | ||
2851 | 2789 | + } else if (hi < 2.0) { | ||
2852 | 2790 | + range = 1; | ||
2853 | 2791 | + scale = 512.0; | ||
2854 | 2792 | + offset = 0.5; | ||
2855 | 2793 | + } else if (hi < 4.0) { | ||
2856 | 2794 | + range = 2; | ||
2857 | 2795 | + scale = 256.0; | ||
2858 | 2796 | + offset = 0.5; | ||
2859 | 2797 | + } else { | ||
2860 | 2798 | + range = 3; | ||
2861 | 2799 | + scale = 128.0; | ||
2862 | 2800 | + offset = 0.5; | ||
2863 | 2801 | + } | ||
2864 | 2802 | + int r = clampField(offset + scale * rgb[0][y][x], 10); | ||
2865 | 2803 | + int g = clampField(offset + scale * rgb[1][y][x], 10); | ||
2866 | 2804 | + int b = clampField(offset + scale * rgb[2][y][x], 10); | ||
2867 | 2805 | + packed[y][x] = (range << 30) | (b << 20) | (g << 10) | r; | ||
2868 | 2806 | + } | ||
2869 | 2807 | + } | ||
2870 | 2808 | +} | ||
2871 | 2809 | + | ||
2872 | 2810 | +/* | ||
2873 | 2811 | + * Resamples a srcW x srcH table with central sampling to destW x destH with | ||
2874 | 2812 | + * corner sampling. | ||
2875 | 2813 | + */ | ||
2876 | 2814 | +void resampleTable(double *dest, int destW, int destH, double const *src, | ||
2877 | 2815 | + int srcW, int srcH) | ||
2878 | 2816 | +{ | ||
2879 | 2817 | + /* | ||
2880 | 2818 | + * Precalculate and cache the x sampling locations and phases to | ||
2881 | 2819 | + * save recomputing them on every row. | ||
2882 | 2820 | + */ | ||
2883 | 2821 | + ASSERT(destW > 1 && destH > 1 && destW <= 64); | ||
2884 | 2822 | + int xLo[64], xHi[64]; | ||
2885 | 2823 | + double xf[64]; | ||
2886 | 2824 | + double x = -0.5, xInc = srcW / (destW - 1); | ||
2887 | 2825 | + for (int i = 0; i < destW; i++, x += xInc) { | ||
2888 | 2826 | + xLo[i] = floor(x); | ||
2889 | 2827 | + xf[i] = x - xLo[i]; | ||
2890 | 2828 | + xHi[i] = xLo[i] < (srcW - 1) ? (xLo[i] + 1) : (srcW - 1); | ||
2891 | 2829 | + xLo[i] = xLo[i] > 0 ? xLo[i] : 0; | ||
2892 | 2830 | + } | ||
2893 | 2831 | + | ||
2894 | 2832 | + /* Now march over the output table generating the new values. */ | ||
2895 | 2833 | + double y = -0.5, yInc = srcH / (destH - 1); | ||
2896 | 2834 | + for (int j = 0; j < destH; j++, y += yInc) { | ||
2897 | 2835 | + int yLo = floor(y); | ||
2898 | 2836 | + double yf = y - yLo; | ||
2899 | 2837 | + int yHi = yLo < (srcH - 1) ? (yLo + 1) : (srcH - 1); | ||
2900 | 2838 | + yLo = yLo > 0 ? yLo : 0; | ||
2901 | 2839 | + double const *rowAbove = src + yLo * srcW; | ||
2902 | 2840 | + double const *rowBelow = src + yHi * srcW; | ||
2903 | 2841 | + for (int i = 0; i < destW; i++) { | ||
2904 | 2842 | + double above = rowAbove[xLo[i]] * (1 - xf[i]) + | ||
2905 | 2843 | + rowAbove[xHi[i]] * xf[i]; | ||
2906 | 2844 | + double below = rowBelow[xLo[i]] * (1 - xf[i]) + | ||
2907 | 2845 | + rowBelow[xHi[i]] * xf[i]; | ||
2908 | 2846 | + *(dest++) = above * (1 - yf) + below * yf; | ||
2909 | 2847 | + } | ||
2910 | 2848 | + } | ||
2911 | 2849 | +} | ||
2912 | 2850 | + | ||
2913 | 2851 | +} /* namespace */ | ||
2914 | 2852 | + | ||
2915 | 2853 | +using ::libpisp::BackEnd; | ||
2916 | 2854 | +using ::libpisp::FrontEnd; | ||
2917 | 2855 | + | ||
2918 | 2856 | +namespace ipa::RPi { | ||
2919 | 2857 | + | ||
2920 | 2858 | +class IpaPiSP final : public IpaBase | ||
2921 | 2859 | +{ | ||
2922 | 2860 | +public: | ||
2923 | 2861 | + IpaPiSP() | ||
2924 | 2862 | + : IpaBase(), fe_(nullptr), be_(nullptr) | ||
2925 | 2863 | + { | ||
2926 | 2864 | + } | ||
2927 | 2865 | + | ||
2928 | 2866 | + ~IpaPiSP() | ||
2929 | 2867 | + { | ||
2930 | 2868 | + if (fe_) | ||
2931 | 2869 | + munmap(fe_, sizeof(FrontEnd)); | ||
2932 | 2870 | + if (be_) | ||
2933 | 2871 | + munmap(be_, sizeof(BackEnd)); | ||
2934 | 2872 | + } | ||
2935 | 2873 | + | ||
2936 | 2874 | +private: | ||
2937 | 2875 | + int32_t platformInit(const InitParams ¶ms, InitResult *result) override; | ||
2938 | 2876 | + int32_t platformStart(const ControlList &controls, StartResult *result) override; | ||
2939 | 2877 | + int32_t platformConfigure(const ConfigParams ¶ms, ConfigResult *result) override; | ||
2940 | 2878 | + | ||
2941 | 2879 | + void platformPrepareIsp(const PrepareParams ¶ms, | ||
2942 | 2880 | + RPiController::Metadata &rpiMetadata) override; | ||
2943 | 2881 | + RPiController::StatisticsPtr platformProcessStats(Span<uint8_t> mem) override; | ||
2944 | 2882 | + | ||
2945 | 2883 | + void handleControls(const ControlList &controls) override; | ||
2946 | 2884 | + | ||
2947 | 2885 | + void applyWBG(const AwbStatus *awbStatus, const AgcPrepareStatus *agcStatus, | ||
2948 | 2886 | + pisp_be_global_config &global); | ||
2949 | 2887 | + void applyDgOnly(const AgcPrepareStatus *agcPrepareStatus, pisp_be_global_config &global); | ||
2950 | 2888 | + void applyCAC(const CacStatus *cacStatus, pisp_be_global_config &global); | ||
2951 | 2889 | + void applyContrast(const ContrastStatus *contrastStatus, | ||
2952 | 2890 | + pisp_be_global_config &global); | ||
2953 | 2891 | + void applyCCM(const CcmStatus *ccmStatus, pisp_be_global_config &global); | ||
2954 | 2892 | + void applyBlackLevel(const BlackLevelStatus *blackLevelStatus, | ||
2955 | 2893 | + pisp_be_global_config &global); | ||
2956 | 2894 | + void applyLensShading(const AlscStatus *alscStatus, | ||
2957 | 2895 | + pisp_be_global_config &global); | ||
2958 | 2896 | + void applyDPC(const DpcStatus *dpcStatus, pisp_be_global_config &global); | ||
2959 | 2897 | + void applySdn(const SdnStatus *sdnStatus, pisp_be_global_config &global); | ||
2960 | 2898 | + void applyTdn(const TdnStatus *tdnStatus, const DeviceStatus *deviceStatus, | ||
2961 | 2899 | + pisp_be_global_config &global); | ||
2962 | 2900 | + void applyCdn(const CdnStatus *cdnStatus, pisp_be_global_config &global); | ||
2963 | 2901 | + void applyGeq(const GeqStatus *geqStatus, pisp_be_global_config &global); | ||
2964 | 2902 | + void applySaturation(const SaturationStatus *geqStatus, | ||
2965 | 2903 | + pisp_be_global_config &global); | ||
2966 | 2904 | + void applySharpen(const SharpenStatus *sharpenStatus, | ||
2967 | 2905 | + pisp_be_global_config &global); | ||
2968 | 2906 | + bool applyStitch(const StitchStatus *stitchStatus, const DeviceStatus *deviceStatus, | ||
2969 | 2907 | + const AgcStatus *agcStatus, pisp_be_global_config &global); | ||
2970 | 2908 | + void applyTonemap(const TonemapStatus *tonemapStatus, | ||
2971 | 2909 | + pisp_be_global_config &global); | ||
2972 | 2910 | + void applyFocusStats(const NoiseStatus *noiseStatus); | ||
2973 | 2911 | + void applyAF(const struct AfStatus *afStatus, ControlList &lensCtrls); | ||
2974 | 2912 | + | ||
2975 | 2913 | + void setDefaultConfig(); | ||
2976 | 2914 | + void setStatsAndDebin(); | ||
2977 | 2915 | + void setHistogramWeights(); | ||
2978 | 2916 | + | ||
2979 | 2917 | + /* Frontend/Backend objects passed in from the pipeline handler. */ | ||
2980 | 2918 | + SharedFD feFD_; | ||
2981 | 2919 | + SharedFD beFD_; | ||
2982 | 2920 | + FrontEnd *fe_; | ||
2983 | 2921 | + BackEnd *be_; | ||
2984 | 2922 | + | ||
2985 | 2923 | + /* TDN/HDR runtime need the following state. */ | ||
2986 | 2924 | + bool tdnReset_; | ||
2987 | 2925 | + utils::Duration lastExposure_; | ||
2988 | 2926 | + std::map<std::string, utils::Duration> lastStitchExposures_; | ||
2989 | 2927 | + HdrStatus lastStitchHdrStatus_; | ||
2990 | 2928 | +}; | ||
2991 | 2929 | + | ||
2992 | 2930 | +int32_t IpaPiSP::platformInit(const InitParams ¶ms, | ||
2993 | 2931 | + [[maybe_unused]] InitResult *result) | ||
2994 | 2932 | +{ | ||
2995 | 2933 | + const std::string &target = controller_.getTarget(); | ||
2996 | 2934 | + if (target != "pisp") { | ||
2997 | 2935 | + LOG(IPARPI, Error) | ||
2998 | 2936 | + << "Tuning data file target returned \"" << target << "\"" | ||
2999 | 2937 | + << ", expected \"pisp\""; | ||
3000 | 2938 | + return -EINVAL; | ||
3001 | 2939 | + } | ||
3002 | 2940 | + | ||
3003 | 2941 | + /* Acquire the Frontend and Backend objects. */ | ||
3004 | 2942 | + feFD_ = std::move(params.fe); | ||
3005 | 2943 | + beFD_ = std::move(params.be); | ||
3006 | 2944 | + | ||
3007 | 2945 | + if (!feFD_.isValid() || !beFD_.isValid()) { | ||
3008 | 2946 | + LOG(IPARPI, Error) << "Invalid FE/BE handles!"; | ||
3009 | 2947 | + return -ENODEV; | ||
3010 | 2948 | + } | ||
3011 | 2949 | + | ||
3012 | 2950 | + fe_ = static_cast<FrontEnd *>(mmap(nullptr, sizeof(FrontEnd), | ||
3013 | 2951 | + PROT_READ | PROT_WRITE, MAP_SHARED, | ||
3014 | 2952 | + feFD_.get(), 0)); | ||
3015 | 2953 | + be_ = static_cast<BackEnd *>(mmap(nullptr, sizeof(BackEnd), | ||
3016 | 2954 | + PROT_READ | PROT_WRITE, MAP_SHARED, | ||
3017 | 2955 | + beFD_.get(), 0)); | ||
3018 | 2956 | + | ||
3019 | 2957 | + if (!fe_ || !be_) { | ||
3020 | 2958 | + LOG(IPARPI, Error) << "Unable to map FE/BE handles!"; | ||
3021 | 2959 | + return -ENODEV; | ||
3022 | 2960 | + } | ||
3023 | 2961 | + | ||
3024 | 2962 | + setDefaultConfig(); | ||
3025 | 2963 | + | ||
3026 | 2964 | + return 0; | ||
3027 | 2965 | +} | ||
3028 | 2966 | + | ||
3029 | 2967 | +int32_t IpaPiSP::platformStart([[maybe_unused]] const ControlList &controls, | ||
3030 | 2968 | + [[maybe_unused]] StartResult *result) | ||
3031 | 2969 | +{ | ||
3032 | 2970 | + tdnReset_ = true; | ||
3033 | 2971 | + | ||
3034 | 2972 | + /* Cause the stitch block to be reset correctly. */ | ||
3035 | 2973 | + lastStitchHdrStatus_ = HdrStatus(); | ||
3036 | 2974 | + | ||
3037 | 2975 | + return 0; | ||
3038 | 2976 | +} | ||
3039 | 2977 | + | ||
3040 | 2978 | +int32_t IpaPiSP::platformConfigure([[maybe_unused]] const ConfigParams ¶ms, | ||
3041 | 2979 | + [[maybe_unused]] ConfigResult *result) | ||
3042 | 2980 | +{ | ||
3043 | 2981 | + setStatsAndDebin(); | ||
3044 | 2982 | + return 0; | ||
3045 | 2983 | +} | ||
3046 | 2984 | + | ||
3047 | 2985 | +void IpaPiSP::platformPrepareIsp([[maybe_unused]] const PrepareParams ¶ms, | ||
3048 | 2986 | + RPiController::Metadata &rpiMetadata) | ||
3049 | 2987 | +{ | ||
3050 | 2988 | + std::scoped_lock<RPiController::Metadata> l(rpiMetadata); | ||
3051 | 2989 | + | ||
3052 | 2990 | + pisp_be_global_config global; | ||
3053 | 2991 | + be_->GetGlobal(global); | ||
3054 | 2992 | + | ||
3055 | 2993 | + global.bayer_enables &= ~(PISP_BE_BAYER_ENABLE_BLC + PISP_BE_BAYER_ENABLE_WBG + | ||
3056 | 2994 | + PISP_BE_BAYER_ENABLE_GEQ + PISP_BE_BAYER_ENABLE_LSC + | ||
3057 | 2995 | + PISP_BE_BAYER_ENABLE_SDN + PISP_BE_BAYER_ENABLE_CDN + | ||
3058 | 2996 | + PISP_BE_BAYER_ENABLE_TDN_OUTPUT + PISP_BE_BAYER_ENABLE_TDN_INPUT + | ||
3059 | 2997 | + PISP_BE_BAYER_ENABLE_STITCH_INPUT + PISP_BE_BAYER_ENABLE_STITCH_OUTPUT + | ||
3060 | 2998 | + PISP_BE_BAYER_ENABLE_STITCH + PISP_BE_BAYER_ENABLE_TONEMAP); | ||
3061 | 2999 | + /* We leave the YCbCr and inverse conversion enabled in case of false colour or sharpening. */ | ||
3062 | 3000 | + global.rgb_enables &= ~(PISP_BE_RGB_ENABLE_GAMMA + PISP_BE_RGB_ENABLE_CCM + | ||
3063 | 3001 | + PISP_BE_RGB_ENABLE_SHARPEN + PISP_BE_RGB_ENABLE_SAT_CONTROL); | ||
3064 | 3002 | + | ||
3065 | 3003 | + NoiseStatus *noiseStatus = rpiMetadata.getLocked<NoiseStatus>("noise.status"); | ||
3066 | 3004 | + AgcPrepareStatus *agcPrepareStatus = rpiMetadata.getLocked<AgcPrepareStatus>("agc.prepare_status"); | ||
3067 | 3005 | + | ||
3068 | 3006 | + { | ||
3069 | 3007 | + /* All Frontend config goes first, we do not want to hold the FE lock for long! */ | ||
3070 | 3008 | + std::scoped_lock<FrontEnd> lf(*fe_); | ||
3071 | 3009 | + | ||
3072 | 3010 | + if (noiseStatus) | ||
3073 | 3011 | + applyFocusStats(noiseStatus); | ||
3074 | 3012 | + | ||
3075 | 3013 | + BlackLevelStatus *blackLevelStatus = | ||
3076 | 3014 | + rpiMetadata.getLocked<BlackLevelStatus>("black_level.status"); | ||
3077 | 3015 | + if (blackLevelStatus) | ||
3078 | 3016 | + applyBlackLevel(blackLevelStatus, global); | ||
3079 | 3017 | + | ||
3080 | 3018 | + AwbStatus *awbStatus = rpiMetadata.getLocked<AwbStatus>("awb.status"); | ||
3081 | 3019 | + if (awbStatus && agcPrepareStatus) { | ||
3082 | 3020 | + /* Applies digital gain as well. */ | ||
3083 | 3021 | + applyWBG(awbStatus, agcPrepareStatus, global); | ||
3084 | 3022 | + } else if (agcPrepareStatus) { | ||
3085 | 3023 | + /* Mono sensor fallback for digital gain. */ | ||
3086 | 3024 | + applyDgOnly(agcPrepareStatus, global); | ||
3087 | 3025 | + } | ||
3088 | 3026 | + } | ||
3089 | 3027 | + | ||
3090 | 3028 | + CacStatus *cacStatus = rpiMetadata.getLocked<CacStatus>("cac.status"); | ||
3091 | 3029 | + if (cacStatus) | ||
3092 | 3030 | + applyCAC(cacStatus, global); | ||
3093 | 3031 | + | ||
3094 | 3032 | + ContrastStatus *contrastStatus = | ||
3095 | 3033 | + rpiMetadata.getLocked<ContrastStatus>("contrast.status"); | ||
3096 | 3034 | + if (contrastStatus) | ||
3097 | 3035 | + applyContrast(contrastStatus, global); | ||
3098 | 3036 | + | ||
3099 | 3037 | + CcmStatus *ccmStatus = rpiMetadata.getLocked<CcmStatus>("ccm.status"); | ||
3100 | 3038 | + if (ccmStatus) | ||
3101 | 3039 | + applyCCM(ccmStatus, global); | ||
3102 | 3040 | + | ||
3103 | 3041 | + AlscStatus *alscStatus = rpiMetadata.getLocked<AlscStatus>("alsc.status"); | ||
3104 | 3042 | + if (alscStatus) | ||
3105 | 3043 | + applyLensShading(alscStatus, global); | ||
3106 | 3044 | + | ||
3107 | 3045 | + DpcStatus *dpcStatus = rpiMetadata.getLocked<DpcStatus>("dpc.status"); | ||
3108 | 3046 | + if (dpcStatus) | ||
3109 | 3047 | + applyDPC(dpcStatus, global); | ||
3110 | 3048 | + | ||
3111 | 3049 | + SdnStatus *sdnStatus = rpiMetadata.getLocked<SdnStatus>("sdn.status"); | ||
3112 | 3050 | + if (sdnStatus) | ||
3113 | 3051 | + applySdn(sdnStatus, global); | ||
3114 | 3052 | + | ||
3115 | 3053 | + DeviceStatus *deviceStatus = rpiMetadata.getLocked<DeviceStatus>("device.status"); | ||
3116 | 3054 | + TdnStatus *tdnStatus = rpiMetadata.getLocked<TdnStatus>("tdn.status"); | ||
3117 | 3055 | + if (tdnStatus && deviceStatus) | ||
3118 | 3056 | + applyTdn(tdnStatus, deviceStatus, global); | ||
3119 | 3057 | + | ||
3120 | 3058 | + CdnStatus *cdnStatus = rpiMetadata.getLocked<CdnStatus>("cdn.status"); | ||
3121 | 3059 | + if (cdnStatus) | ||
3122 | 3060 | + applyCdn(cdnStatus, global); | ||
3123 | 3061 | + | ||
3124 | 3062 | + GeqStatus *geqStatus = rpiMetadata.getLocked<GeqStatus>("geq.status"); | ||
3125 | 3063 | + if (geqStatus) | ||
3126 | 3064 | + applyGeq(geqStatus, global); | ||
3127 | 3065 | + | ||
3128 | 3066 | + SaturationStatus *saturationStatus = | ||
3129 | 3067 | + rpiMetadata.getLocked<SaturationStatus>("saturation.status"); | ||
3130 | 3068 | + if (saturationStatus) | ||
3131 | 3069 | + applySaturation(saturationStatus, global); | ||
3132 | 3070 | + | ||
3133 | 3071 | + SharpenStatus *sharpenStatus = rpiMetadata.getLocked<SharpenStatus>("sharpen.status"); | ||
3134 | 3072 | + if (sharpenStatus) | ||
3135 | 3073 | + applySharpen(sharpenStatus, global); | ||
3136 | 3074 | + | ||
3137 | 3075 | + StitchStatus *stitchStatus = rpiMetadata.getLocked<StitchStatus>("stitch.status"); | ||
3138 | 3076 | + if (stitchStatus) { | ||
3139 | 3077 | + /* | ||
3140 | 3078 | + * Note that it's the *delayed* AGC status that contains the HDR mode/channel | ||
3141 | 3079 | + * info that pertains to this frame! | ||
3142 | 3080 | + */ | ||
3143 | 3081 | + AgcStatus *agcStatus = rpiMetadata.getLocked<AgcStatus>("agc.delayed_status"); | ||
3144 | 3082 | + /* prepareIsp() will fetch this value. Maybe pass it back differently? */ | ||
3145 | 3083 | + stitchSwapBuffers_ = applyStitch(stitchStatus, deviceStatus, agcStatus, global); | ||
3146 | 3084 | + } else | ||
3147 | 3085 | + lastStitchHdrStatus_ = HdrStatus(); | ||
3148 | 3086 | + | ||
3149 | 3087 | + TonemapStatus *tonemapStatus = rpiMetadata.getLocked<TonemapStatus>("tonemap.status"); | ||
3150 | 3088 | + if (tonemapStatus) | ||
3151 | 3089 | + applyTonemap(tonemapStatus, global); | ||
3152 | 3090 | + | ||
3153 | 3091 | + be_->SetGlobal(global); | ||
3154 | 3092 | + | ||
3155 | 3093 | + /* Save this for TDN and HDR on the next frame. */ | ||
3156 | 3094 | + lastExposure_ = deviceStatus->shutterSpeed * deviceStatus->analogueGain; | ||
3157 | 3095 | + | ||
3158 | 3096 | + /* Lens control */ | ||
3159 | 3097 | + const AfStatus *afStatus = rpiMetadata.getLocked<AfStatus>("af.status"); | ||
3160 | 3098 | + if (afStatus) { | ||
3161 | 3099 | + ControlList lensctrls(lensCtrls_); | ||
3162 | 3100 | + applyAF(afStatus, lensctrls); | ||
3163 | 3101 | + if (!lensctrls.empty()) | ||
3164 | 3102 | + setLensControls.emit(lensctrls); | ||
3165 | 3103 | + } | ||
3166 | 3104 | +} | ||
3167 | 3105 | + | ||
3168 | 3106 | +RPiController::StatisticsPtr IpaPiSP::platformProcessStats(Span<uint8_t> mem) | ||
3169 | 3107 | +{ | ||
3170 | 3108 | + using namespace RPiController; | ||
3171 | 3109 | + | ||
3172 | 3110 | + const pisp_statistics *stats = reinterpret_cast<pisp_statistics *>(mem.data()); | ||
3173 | 3111 | + | ||
3174 | 3112 | + unsigned int i; | ||
3175 | 3113 | + StatisticsPtr statistics = | ||
3176 | 3114 | + std::make_unique<Statistics>(Statistics::AgcStatsPos::PostWb, | ||
3177 | 3115 | + Statistics::ColourStatsPos::PreLsc); | ||
3178 | 3116 | + | ||
3179 | 3117 | + /* RGB histograms are not used, so do not populate them. */ | ||
3180 | 3118 | + statistics->yHist = RPiController::Histogram(stats->agc.histogram, | ||
3181 | 3119 | + PISP_AGC_STATS_NUM_BINS); | ||
3182 | 3120 | + | ||
3183 | 3121 | + statistics->awbRegions.init({ PISP_AWB_STATS_SIZE, PISP_AWB_STATS_SIZE }); | ||
3184 | 3122 | + for (i = 0; i < statistics->awbRegions.numRegions(); i++) | ||
3185 | 3123 | + statistics->awbRegions.set(i, { { stats->awb.zones[i].R_sum, | ||
3186 | 3124 | + stats->awb.zones[i].G_sum, | ||
3187 | 3125 | + stats->awb.zones[i].B_sum }, | ||
3188 | 3126 | + stats->awb.zones[i].counted, 0 }); | ||
3189 | 3127 | + | ||
3190 | 3128 | + /* AGC region sums only get collected on floating zones. */ | ||
3191 | 3129 | + statistics->agcRegions.init({ 0, 0 }, PISP_FLOATING_STATS_NUM_ZONES); | ||
3192 | 3130 | + for (i = 0; i < statistics->agcRegions.numRegions(); i++) | ||
3193 | 3131 | + statistics->agcRegions.setFloating(i, | ||
3194 | 3132 | + { { 0, 0, 0, stats->agc.floating[i].Y_sum }, | ||
3195 | 3133 | + stats->agc.floating[i].counted, 0 }); | ||
3196 | 3134 | + | ||
3197 | 3135 | + statistics->focusRegions.init({ PISP_CDAF_STATS_SIZE, PISP_CDAF_STATS_SIZE }); | ||
3198 | 3136 | + for (i = 0; i < statistics->focusRegions.numRegions(); i++) | ||
3199 | 3137 | + statistics->focusRegions.set(i, { stats->cdaf.foms[i] >> 20, 0, 0 }); | ||
3200 | 3138 | + | ||
3201 | 3139 | + if (statsMetadataOutput_) { | ||
3202 | 3140 | + Span<const uint8_t> statsSpan(reinterpret_cast<const uint8_t *>(stats), | ||
3203 | 3141 | + sizeof(pisp_statistics)); | ||
3204 | 3142 | + libcameraMetadata_.set(controls::rpi::PispStatsOutput, statsSpan); | ||
3205 | 3143 | + } | ||
3206 | 3144 | + | ||
3207 | 3145 | + return statistics; | ||
3208 | 3146 | +} | ||
3209 | 3147 | + | ||
3210 | 3148 | +void IpaPiSP::handleControls(const ControlList &controls) | ||
3211 | 3149 | +{ | ||
3212 | 3150 | + for (auto const &ctrl : controls) { | ||
3213 | 3151 | + switch (ctrl.first) { | ||
3214 | 3152 | + case controls::HDR_MODE: | ||
3215 | 3153 | + case controls::AE_METERING_MODE: | ||
3216 | 3154 | + setHistogramWeights(); | ||
3217 | 3155 | + break; | ||
3218 | 3156 | + | ||
3219 | 3157 | + case controls::draft::NOISE_REDUCTION_MODE: { | ||
3220 | 3158 | + RPiController::DenoiseAlgorithm *denoise = dynamic_cast<RPiController::DenoiseAlgorithm *>( | ||
3221 | 3159 | + controller_.getAlgorithm("denoise")); | ||
3222 | 3160 | + | ||
3223 | 3161 | + if (!denoise) { | ||
3224 | 3162 | + LOG(IPARPI, Warning) | ||
3225 | 3163 | + << "Could not set NOISE_REDUCTION_MODE - no Denoise algorithm"; | ||
3226 | 3164 | + return; | ||
3227 | 3165 | + } | ||
3228 | 3166 | + | ||
3229 | 3167 | + if (ctrl.second.get<int32_t>() == controls::draft::NoiseReductionModeOff) | ||
3230 | 3168 | + denoise->setMode(RPiController::DenoiseMode::Off); | ||
3231 | 3169 | + else | ||
3232 | 3170 | + denoise->setMode(RPiController::DenoiseMode::ColourHighQuality); | ||
3233 | 3171 | + | ||
3234 | 3172 | + break; | ||
3235 | 3173 | + } | ||
3236 | 3174 | + } | ||
3237 | 3175 | + } | ||
3238 | 3176 | +} | ||
3239 | 3177 | + | ||
3240 | 3178 | +void IpaPiSP::applyWBG(const AwbStatus *awbStatus, const AgcPrepareStatus *agcPrepareStatus, | ||
3241 | 3179 | + pisp_be_global_config &global) | ||
3242 | 3180 | +{ | ||
3243 | 3181 | + pisp_wbg_config wbg; | ||
3244 | 3182 | + pisp_fe_rgby_config rgby = {}; | ||
3245 | 3183 | + double dg = agcPrepareStatus ? agcPrepareStatus->digitalGain : 1.0; | ||
3246 | 3184 | + | ||
3247 | 3185 | + wbg.gain_r = clampField(dg * awbStatus->gainR, 14, 10); | ||
3248 | 3186 | + wbg.gain_g = clampField(dg * awbStatus->gainG, 14, 10); | ||
3249 | 3187 | + wbg.gain_b = clampField(dg * awbStatus->gainB, 14, 10); | ||
3250 | 3188 | + | ||
3251 | 3189 | + /* | ||
3252 | 3190 | + * The YCbCr conversion block should contain the appropriate YCbCr | ||
3253 | 3191 | + * matrix. We should not rely on the CSC0 block as that might be | ||
3254 | 3192 | + * programmed for RGB outputs. | ||
3255 | 3193 | + */ | ||
3256 | 3194 | + pisp_be_ccm_config csc; | ||
3257 | 3195 | + be_->GetYcbcr(csc); | ||
3258 | 3196 | + | ||
3259 | 3197 | + /* The CSC coefficients already have the << 10 scaling applied. */ | ||
3260 | 3198 | + rgby.gain_r = clampField(csc.coeffs[0] * awbStatus->gainR, 14); | ||
3261 | 3199 | + rgby.gain_g = clampField(csc.coeffs[1] * awbStatus->gainG, 14); | ||
3262 | 3200 | + rgby.gain_b = clampField(csc.coeffs[2] * awbStatus->gainB, 14); | ||
3263 | 3201 | + | ||
3264 | 3202 | + LOG(IPARPI, Debug) << "Applying WB R: " << awbStatus->gainR << " B: " | ||
3265 | 3203 | + << awbStatus->gainB; | ||
3266 | 3204 | + | ||
3267 | 3205 | + be_->SetWbg(wbg); | ||
3268 | 3206 | + fe_->SetRGBY(rgby); | ||
3269 | 3207 | + global.bayer_enables |= PISP_BE_BAYER_ENABLE_WBG; | ||
3270 | 3208 | +} | ||
3271 | 3209 | + | ||
3272 | 3210 | +void IpaPiSP::applyDgOnly(const AgcPrepareStatus *agcPrepareStatus, pisp_be_global_config &global) | ||
3273 | 3211 | +{ | ||
3274 | 3212 | + pisp_wbg_config wbg; | ||
3275 | 3213 | + | ||
3276 | 3214 | + wbg.gain_r = clampField(agcPrepareStatus->digitalGain, 14, 10); | ||
3277 | 3215 | + wbg.gain_g = clampField(agcPrepareStatus->digitalGain, 14, 10); | ||
3278 | 3216 | + wbg.gain_b = clampField(agcPrepareStatus->digitalGain, 14, 10); | ||
3279 | 3217 | + | ||
3280 | 3218 | + LOG(IPARPI, Debug) << "Applying DG (only) : " << agcPrepareStatus->digitalGain; | ||
3281 | 3219 | + | ||
3282 | 3220 | + be_->SetWbg(wbg); | ||
3283 | 3221 | + global.bayer_enables |= PISP_BE_BAYER_ENABLE_WBG; | ||
3284 | 3222 | +} | ||
3285 | 3223 | + | ||
3286 | 3224 | +void IpaPiSP::applyContrast(const ContrastStatus *contrastStatus, | ||
3287 | 3225 | + pisp_be_global_config &global) | ||
3288 | 3226 | +{ | ||
3289 | 3227 | + pisp_be_gamma_config gamma; | ||
3290 | 3228 | + | ||
3291 | 3229 | + if (!generateLut(contrastStatus->gammaCurve, gamma.lut, PISP_BE_GAMMA_LUT_SIZE)) { | ||
3292 | 3230 | + be_->SetGamma(gamma); | ||
3293 | 3231 | + global.rgb_enables |= PISP_BE_RGB_ENABLE_GAMMA; | ||
3294 | 3232 | + } | ||
3295 | 3233 | +} | ||
3296 | 3234 | + | ||
3297 | 3235 | +void IpaPiSP::applyCCM(const CcmStatus *ccmStatus, pisp_be_global_config &global) | ||
3298 | 3236 | +{ | ||
3299 | 3237 | + pisp_be_ccm_config ccm = {}; | ||
3300 | 3238 | + | ||
3301 | 3239 | + for (unsigned int i = 0; i < 9; i++) | ||
3302 | 3240 | + ccm.coeffs[i] = clampField(ccmStatus->matrix[i], 14, 10, true); | ||
3303 | 3241 | + | ||
3304 | 3242 | + be_->SetCcm(ccm); | ||
3305 | 3243 | + global.rgb_enables |= PISP_BE_RGB_ENABLE_CCM; | ||
3306 | 3244 | +} | ||
3307 | 3245 | + | ||
3308 | 3246 | +void IpaPiSP::applyCAC(const CacStatus *cacStatus, pisp_be_global_config &global) | ||
3309 | 3247 | +{ | ||
3310 | 3248 | + pisp_be_cac_config cac = {}; | ||
3311 | 3249 | + | ||
3312 | 3250 | + for (int x = 0; x < PISP_BE_CAC_GRID_SIZE + 1; x++) { | ||
3313 | 3251 | + for (int y = 0; y < PISP_BE_CAC_GRID_SIZE + 1; y++) { | ||
3314 | 3252 | + cac.lut[y][x][0][0] = clampField(cacStatus->lutRx[y * (PISP_BE_CAC_GRID_SIZE + 1) + x], 7, 5, true); | ||
3315 | 3253 | + cac.lut[y][x][0][1] = clampField(cacStatus->lutRy[y * (PISP_BE_CAC_GRID_SIZE + 1) + x], 7, 5, true); | ||
3316 | 3254 | + cac.lut[y][x][1][0] = clampField(cacStatus->lutBx[y * (PISP_BE_CAC_GRID_SIZE + 1) + x], 7, 5, true); | ||
3317 | 3255 | + cac.lut[y][x][1][1] = clampField(cacStatus->lutBy[y * (PISP_BE_CAC_GRID_SIZE + 1) + x], 7, 5, true); | ||
3318 | 3256 | + } | ||
3319 | 3257 | + } | ||
3320 | 3258 | + | ||
3321 | 3259 | + be_->SetCac(cac); | ||
3322 | 3260 | + global.bayer_enables |= PISP_BE_BAYER_ENABLE_CAC; | ||
3323 | 3261 | +} | ||
3324 | 3262 | + | ||
3325 | 3263 | +void IpaPiSP::applyBlackLevel(const BlackLevelStatus *blackLevelStatus, pisp_be_global_config &global) | ||
3326 | 3264 | +{ | ||
3327 | 3265 | + uint16_t minBlackLevel = std::min({ blackLevelStatus->blackLevelR, blackLevelStatus->blackLevelG, | ||
3328 | 3266 | + blackLevelStatus->blackLevelB }); | ||
3329 | 3267 | + pisp_bla_config bla; | ||
3330 | 3268 | + | ||
3331 | 3269 | + /* | ||
3332 | 3270 | + * Set the Frontend to adjust the black level to the smallest black level |