libcamera/utils
Stefan Klug d476f8358b libipa: awb_bayes: Change the probabilities from log space to linear space
The original code used to specify the probabilities in log space and
scaled for the RaspberryPi hardware with 192 AWB measurement points.
This is reasonable as the whole algorithm makes use of unitless numbers
to prefer some colour temperatures based on a lux level. These numbers
are then hand tuned with the specific device in mind.

This has two shortcomings:

1. The linear interpolation of PWLs in log space is mathematically
   incorrect. The outcome might still be ok, as both spaces (log and
linear) are monotonic, but it is still not "right".

2. Having unitless numbers gets more error prone when we try to
   harmonize the behavior over multiple platforms.

Change the algorithm to interpret the numbers as being in linear space.
This makes the interpolation mathematically correct at the expense of a
few log operations.

To account for that change, update the numbers in the tuning example
file with the linear counterparts scaled to one AWB zone measurement.

Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com>
Reviewed-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Daniel Scally <dan.scally@ideasonboard.com>
2025-02-21 17:51:10 +01:00
..
codegen gstreamer: Generate the new AEGC controls 2025-01-20 21:36:40 +02:00
hooks hooks: pre-push: Verify that co-authors have a SoB line 2024-10-08 18:06:30 +03:00
ipu3 libcamera: Drop file name from header comment blocks 2024-05-08 22:39:50 +03:00
raspberrypi utils: raspberrypi: ctt: Add a maximum gain parameter for LSC 2024-06-13 11:02:39 +01:00
rkisp1 libcamera: Drop remaining file name from header comment blocks 2024-05-09 23:31:15 +03:00
tracepoints meson: Move all code generation scripts to utils/codegen/ 2024-08-15 23:59:08 +03:00
tuning libipa: awb_bayes: Change the probabilities from log space to linear space 2025-02-21 17:51:10 +01:00
abi-compat.sh utils: abi-compat: sort meson options 2024-09-25 10:36:40 +01:00
checkstyle.py utils: checkstyle.py: Centralize dependency handling for checkers 2024-11-05 03:50:12 +02:00
gen-debug-controls.py utils: gen-debug-controls: Output direction flag 2024-12-23 11:16:08 +00:00
gen-ipa-priv-key.sh libcamera: Drop file name from header comment blocks 2024-05-08 22:39:50 +03:00
gen-version.sh utils: gen-version: Use posix compliant date 2024-07-25 09:57:54 +01:00
meson.build meson: Move all code generation scripts to utils/codegen/ 2024-08-15 23:59:08 +03:00
release.sh utils: Provide a release script 2022-10-13 12:40:24 +01:00
run-dist.sh build: Preserve upstream git versioning using meson dist 2021-10-19 13:14:54 +03:00
semver utils: semver: Add version helper 2022-10-13 12:40:23 +01:00
update-kernel-headers.sh utils: update-kernel-headers: Support relative path to kernel git tree 2024-08-27 12:16:10 +03:00
update-mojo.sh utils: update-mojo.sh: Commit the mojo update 2024-01-09 15:39:05 +00:00