<div dir="ltr">Thank you!!<div><br></div><div>David</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, 22 Nov 2023 at 09:23, Kieran Bingham <<a href="mailto:kieran.bingham@ideasonboard.com">kieran.bingham@ideasonboard.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Quoting Naushir Patuck via libcamera-devel (2023-11-22 09:15:58)<br>
> Hi David,<br>
> <br>
> Thank you for this fix.<br>
> <br>
> On Wed, 22 Nov 2023 at 09:13, David Plowman via libcamera-devel<br>
> <<a href="mailto:libcamera-devel@lists.libcamera.org" target="_blank">libcamera-devel@lists.libcamera.org</a>> wrote:<br>
> ><br>
> > The algorithm computes R/G and B/G colour ratio statistics which we<br>
> > should not allow to go to zero because there is clearly no gain you<br>
> > could apply to R or B to equalise them. Instead flag such regions as<br>
> > having "insufficient data" in the normal manner.<br>
> ><br>
> > Signed-off-by: David Plowman<br>
> <br>
> Missing your email there :)<br>
<br>
Can be fixed while applying...<br>
<br>
> <br>
> Reviewed-by: Naushir Patuck <<a href="mailto:naush@raspberrypi.com" target="_blank">naush@raspberrypi.com</a>><br>
<br>
Reviewed-by: Kieran Bingham <<a href="mailto:kieran.bingham@ideasonboard.com" target="_blank">kieran.bingham@ideasonboard.com</a>><br>
<br>
> <br>
> > ---<br>
> >  src/ipa/rpi/controller/rpi/alsc.cpp | 4 +++-<br>
> >  1 file changed, 3 insertions(+), 1 deletion(-)<br>
> ><br>
> > diff --git a/src/ipa/rpi/controller/rpi/alsc.cpp b/src/ipa/rpi/controller/rpi/alsc.cpp<br>
> > index b7413611..8a205c60 100644<br>
> > --- a/src/ipa/rpi/controller/rpi/alsc.cpp<br>
> > +++ b/src/ipa/rpi/controller/rpi/alsc.cpp<br>
> > @@ -548,7 +548,9 @@ static void calculateCrCb(const RgbyRegions &awbRegion, Array2D<double> &cr,<br>
> >         for (unsigned int i = 0; i < cr.size(); i++) {<br>
> >                 auto s = awbRegion.get(i);<br>
> ><br>
> > -               if (s.counted <= minCount || s.val.gSum / s.counted <= minG) {<br>
> > +               /* Do not return unreliable, or zero, colour ratio statistics. */<br>
> > +               if (s.counted <= minCount || s.val.gSum / s.counted <= minG ||<br>
> > +                   s.val.rSum / s.counted <= minG || s.val.bSum / s.counted <= minG) {<br>
> >                         cr[i] = cb[i] = InsufficientData;<br>
> >                         continue;<br>
> >                 }<br>
> > --<br>
> > 2.30.2<br>
> ><br>
</blockquote></div>