ipa: raspberrypi: awb: Add GetConvergenceFrames method to AWB base class
We add a GetConvergenceFrames method to the AwbAlgorithm class which can be called when the AWB is started from scratch. It suggests how many frames should be dropped before displaying any (while the AWB converges). The Raspberry Pi specific implementation makes this customisable from the tuning file. Signed-off-by: David Plowman <david.plowman@raspberrypi.com> Reviewed-by: Naushir Patuck <naush@raspberrypi.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
parent
748f48a006
commit
dbcf4d8247
3 changed files with 14 additions and 0 deletions
|
@ -59,6 +59,7 @@ void AwbConfig::Read(boost::property_tree::ptree const ¶ms)
|
|||
bayes = params.get<int>("bayes", 1);
|
||||
frame_period = params.get<uint16_t>("frame_period", 10);
|
||||
startup_frames = params.get<uint16_t>("startup_frames", 10);
|
||||
convergence_frames = params.get<unsigned int>("convergence_frames", 3);
|
||||
speed = params.get<double>("speed", 0.05);
|
||||
if (params.get_child_optional("ct_curve"))
|
||||
read_ct_curve(ct_r, ct_b, params.get_child("ct_curve"));
|
||||
|
@ -165,6 +166,16 @@ void Awb::Initialise()
|
|||
prev_sync_results_ = sync_results_;
|
||||
}
|
||||
|
||||
unsigned int Awb::GetConvergenceFrames() const
|
||||
{
|
||||
// If colour gains have been explicitly set, there is no convergence
|
||||
// to happen, so no need to drop any frames - return zero.
|
||||
if (manual_r_ && manual_b_)
|
||||
return 0;
|
||||
else
|
||||
return config_.convergence_frames;
|
||||
}
|
||||
|
||||
void Awb::SetMode(std::string const &mode_name)
|
||||
{
|
||||
std::unique_lock<std::mutex> lock(settings_mutex_);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue