[libcamera-devel] [PATCH v1 0/7] IPU3: AWB and AGC improvements
Jean-Michel Hautbois
jeanmichel.hautbois at ideasonboard.com
Mon Aug 23 14:49:30 CEST 2021
Now that we have a full context share between algorithms when needed,
and a modular algorithm instanciation, we can introduce a new AGC
algorithm to demonstrate how one can chose between one or another (it
could obviously be done with a configuration file).
The algorithm comes from the RPi source code, and has been adapted but
stays similar in its concepts. It uses the AWB gains calculated at each
frame to adjust the exposure.
As we need to access the AWB statistics, having the needed structures
outside the AWB class sounds better.
Finally, we can introduce the Black level correction values in order to
slightly improve the contrast (we still lack Lens Shading Correction and
sensor linearization, though).
Jean-Michel Hautbois (7):
ipa: ipu3: Move the AWB stats structures
ipa: ipu3: awb: Correct the relevant zones proportion
ipa: ipu3: awb: Correct the gain multipliers
ipa: ipu3: awb: Add some documentation on the algorithm used
ipa: ipu3: rename AGC algorithm
ipa: ipu3: Introduce a new AGC algorithm
ipa: ipu3: Introduce Black Level Correction
.../ipu3/algorithms/{agc.cpp => agc_mean.cpp} | 31 +-
src/ipa/ipu3/algorithms/{agc.h => agc_mean.h} | 8 +-
src/ipa/ipu3/algorithms/agc_metering.cpp | 336 ++++++++++++++++++
src/ipa/ipu3/algorithms/agc_metering.h | 81 +++++
src/ipa/ipu3/algorithms/awb.cpp | 59 ++-
src/ipa/ipu3/algorithms/awb.h | 78 ++--
src/ipa/ipu3/algorithms/meson.build | 3 +-
src/ipa/ipu3/ipa_context.h | 8 +
src/ipa/ipu3/ipu3.cpp | 12 +-
9 files changed, 546 insertions(+), 70 deletions(-)
rename src/ipa/ipu3/algorithms/{agc.cpp => agc_mean.cpp} (87%)
rename src/ipa/ipu3/algorithms/{agc.h => agc_mean.h} (90%)
create mode 100644 src/ipa/ipu3/algorithms/agc_metering.cpp
create mode 100644 src/ipa/ipu3/algorithms/agc_metering.h
--
2.30.2
More information about the libcamera-devel
mailing list