diff options
author | Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com> | 2022-02-24 15:39:50 +0100 |
---|---|---|
committer | Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com> | 2022-03-28 12:31:37 +0200 |
commit | 4b2251509f1543d018fea577e7e2760bb913ee86 (patch) | |
tree | 8f6572579fbd2be8823b6c3fc2ac9a25b2c612ee /src/ipa/rkisp1/ipa_context.h | |
parent | 8917c9e7ba642285ae33a7b9cee9cb4a22c76482 (diff) |
ipa: rkisp1: Introduce AWB
The RkISP1 ISP calculates a mean value for Y, Cr and Cb at each frame.
There is a RGB mode which could theoretically give us the values for R,
G and B directly, but it seems to be failing right now.
Convert those values into R, G and B and estimate the gain to apply in a
grey world.
Signed-off-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com>
Tested-by: Peter Griffin <peter.griffin@linaro.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'src/ipa/rkisp1/ipa_context.h')
-rw-r--r-- | src/ipa/rkisp1/ipa_context.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/ipa/rkisp1/ipa_context.h b/src/ipa/rkisp1/ipa_context.h index 35e9b8e5..f387cace 100644 --- a/src/ipa/rkisp1/ipa_context.h +++ b/src/ipa/rkisp1/ipa_context.h @@ -12,6 +12,8 @@ #include <libcamera/base/utils.h> +#include <libcamera/geometry.h> + namespace libcamera { namespace ipa::rkisp1 { @@ -26,6 +28,10 @@ struct IPASessionConfiguration { } agc; struct { + struct rkisp1_cif_isp_window measureWindow; + } awb; + + struct { utils::Duration lineDuration; } sensor; @@ -41,6 +47,16 @@ struct IPAFrameContext { } agc; struct { + struct { + double red; + double green; + double blue; + } gains; + + double temperatureK; + } awb; + + struct { uint32_t exposure; double gain; } sensor; |