[PATCH v5 03/10] libcamera: software_isp: Store color temperature to metadata
Milan Zamazal
mzamazal at redhat.com
Thu Jan 30 19:14:40 CET 2025
Image color temperature is a piece of information that should be
reported in metadata, let's put it there.
Metadata is currently not reported in simple pipeline but we should make
at least newly added information ready to be reported.
Signed-off-by: Milan Zamazal <mzamazal at redhat.com>
Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
src/ipa/simple/algorithms/awb.cpp | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/ipa/simple/algorithms/awb.cpp b/src/ipa/simple/algorithms/awb.cpp
index 9c85b3f8..b4151670 100644
--- a/src/ipa/simple/algorithms/awb.cpp
+++ b/src/ipa/simple/algorithms/awb.cpp
@@ -12,6 +12,8 @@
#include <libcamera/base/log.h>
+#include <libcamera/control_ids.h>
+
#include "libipa/colours.h"
#include "simple/ipa_context.h"
@@ -34,7 +36,7 @@ void Awb::process(IPAContext &context,
[[maybe_unused]] const uint32_t frame,
[[maybe_unused]] IPAFrameContext &frameContext,
const SwIspStats *stats,
- [[maybe_unused]] ControlList &metadata)
+ ControlList &metadata)
{
const SwIspStats::Histogram &histogram = stats->yHistogram;
const uint8_t blackLevel = context.activeState.blc.level;
@@ -64,6 +66,7 @@ void Awb::process(IPAContext &context,
RGB<double> rgbGains{ { 1 / gains.r(), 1 / gains.g(), 1 / gains.b() } };
context.activeState.awb.temperatureK = estimateCCT(rgbGains);
+ metadata.set(controls::ColourTemperature, context.activeState.awb.temperatureK);
LOG(IPASoftAwb, Debug)
<< "gain R/B: " << gains.r() << "/" << gains.b()
--
2.48.1
More information about the libcamera-devel
mailing list