[PATCH v2 17/17] ipa: rkisp1: awb: Avoid division by zero
Stefan Klug
stefan.klug at ideasonboard.com
Wed Mar 19 17:11:22 CET 2025
As the gains can also be specified manually, the regulation can run into
numeric instabilities by dividing by near zero. Mitigate that by
applying a small minium value.
Signed-off-by: Stefan Klug <stefan.klug at ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
---
Changes in v2:
- Collected tag
---
src/ipa/rkisp1/algorithms/awb.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/ipa/rkisp1/algorithms/awb.cpp b/src/ipa/rkisp1/algorithms/awb.cpp
index e8b04d03748d..eb4545439ae3 100644
--- a/src/ipa/rkisp1/algorithms/awb.cpp
+++ b/src/ipa/rkisp1/algorithms/awb.cpp
@@ -421,9 +421,9 @@ RGB<double> Awb::calculateRgbMeans(const IPAFrameContext &frameContext, const rk
/*
* The ISP computes the AWB means after applying the colour gains,
* divide by the gains that were used to get the raw means from the
- * sensor.
+ * sensor. Apply a minimum value to avoid divisions by near-zero.
*/
- rgbMeans /= frameContext.awb.gains;
+ rgbMeans /= frameContext.awb.gains.max(0.01);
return rgbMeans;
}
--
2.43.0
More information about the libcamera-devel
mailing list