[libcamera-devel] [PATCH v2 0/4] IPU3: AWB and AGC improvements

Jean-Michel Hautbois jeanmichel.hautbois at ideasonboard.com
Fri Aug 27 10:02:23 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.

--
v2: Remove the AWB modifications of the gains because it introduces
regressions on SGo2

Jean-Michel Hautbois (4):
  ipa: ipu3: Move the AWB stats structures
  ipa: ipu3: Rename AGC algorithm
  ipa: ipu3: Document AGC mean-based algorithm
  ipa: ipu3: Introduce a new AGC algorithm

 .../ipu3/algorithms/{agc.cpp => agc_mean.cpp} | 116 ++++-
 src/ipa/ipu3/algorithms/{agc.h => agc_mean.h} |   8 +-
 src/ipa/ipu3/algorithms/agc_metering.cpp      | 427 ++++++++++++++++++
 src/ipa/ipu3/algorithms/agc_metering.h        |  78 ++++
 src/ipa/ipu3/algorithms/awb.cpp               |  47 +-
 src/ipa/ipu3/algorithms/awb.h                 |  81 ++--
 src/ipa/ipu3/algorithms/meson.build           |   3 +-
 src/ipa/ipu3/ipa_context.h                    |   7 +
 src/ipa/ipu3/ipu3.cpp                         |  15 +-
 9 files changed, 693 insertions(+), 89 deletions(-)
 rename src/ipa/ipu3/algorithms/{agc.cpp => agc_mean.cpp} (61%)
 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