ipa: raspberrypi: alsc: Limit the calculated lambda values
Under the right circumstances, the alsc calculations could spread the colour errors across the entire image as lambda remains unbound. This would cause the corrected image chroma values to slowly drift to incorrect values. This change adds a config parameter (alsc.lambda_bound) that provides an upper and lower bound to the lambda value at every stage of the calculation. With this change, we now adjust the lambda values so that the average across the entire grid is 1 instead of normalising to the minimum value. Signed-off-by: Naushir Patuck <naush@raspberrypi.com> Reviewed-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Naushir Patuck <naush@raspberrypi.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
parent
c45f9ce04c
commit
226792a141
2 changed files with 44 additions and 15 deletions
|
@ -41,6 +41,7 @@ struct AlscConfig {
|
|||
std::vector<AlscCalibration> calibrations_Cb;
|
||||
double default_ct; // colour temperature if no metadata found
|
||||
double threshold; // iteration termination threshold
|
||||
double lambda_bound; // upper/lower bound for lambda from a value of 1
|
||||
};
|
||||
|
||||
class Alsc : public Algorithm
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue