ipa: rkisp1: Use centralised libipa helpers

Use the centralised libipa helpers instead of open-coding common
functions.

Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Signed-off-by: Daniel Scally <dan.scally@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Reviewed-by: Milan Zamazal <mzamazal@redhat.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Daniel Scally 2024-11-15 07:46:25 +00:00
parent edfe10997b
commit 1cc6d926ac
2 changed files with 2 additions and 18 deletions

View file

@ -16,6 +16,8 @@
#include <libcamera/ipa/core_ipa_interface.h>
#include "libipa/colours.h"
/**
* \file awb.h
*/
@ -178,22 +180,6 @@ void Awb::prepare(IPAContext &context, const uint32_t frame,
}
}
uint32_t Awb::estimateCCT(double red, double green, double blue)
{
/* Convert the RGB values to CIE tristimulus values (XYZ) */
double X = (-0.14282) * (red) + (1.54924) * (green) + (-0.95641) * (blue);
double Y = (-0.32466) * (red) + (1.57837) * (green) + (-0.73191) * (blue);
double Z = (-0.68202) * (red) + (0.77073) * (green) + (0.56332) * (blue);
/* Calculate the normalized chromaticity values */
double x = X / (X + Y + Z);
double y = Y / (X + Y + Z);
/* Calculate CCT */
double n = (x - 0.3320) / (0.1858 - y);
return 449 * n * n * n + 3525 * n * n + 6823.3 * n + 5520.33;
}
/**
* \copydoc libcamera::ipa::Algorithm::process
*/