Loading...
Searching...
No Matches
lux.h
Go to the documentation of this file.
/* SPDX-License-Identifier: BSD-2-Clause */
/*
* Copyright (C) 2019, Raspberry Pi Ltd
* Copyright (C) 2024, Paul Elder <paul.elder@ideasonboard.com>
*
* Helper class that implements lux estimation
*/
#pragma once
#include <libcamera/base/utils.h>
namespace libcamera {
class YamlObject;
namespace ipa {
class Histogram;
class Lux
{
public:
Lux();
int parseTuningData(const YamlObject &tuningData);
double estimateLux(utils::Duration exposureTime,
double aGain, double dGain,
const Histogram &yHist) const;
private:
utils::Duration referenceExposureTime_;
double referenceAnalogueGain_;
double referenceDigitalGain_;
double referenceY_;
double referenceLux_;
};
} /* namespace ipa */
} /* namespace libcamera */
libcamera::YamlObject
A class representing the tree structure of the YAML content.
Definition yaml_parser.h:28
libcamera::ipa::Histogram
The base class for creating histograms.
Definition histogram.h:23
libcamera::ipa::Lux::Lux
Lux()
Construct the Lux helper module.
Definition lux.cpp:75
libcamera::ipa::Lux::estimateLux
double estimateLux(utils::Duration exposureTime, double aGain, double dGain, const Histogram &yHist) const
Estimate lux given runtime values.
Definition lux.cpp:154
libcamera::ipa::Lux::parseTuningData
int parseTuningData(const YamlObject &tuningData)
Parse tuning data.
Definition lux.cpp:98
libcamera::utils::Duration
Helper class from std::chrono::duration that represents a time duration in nanoseconds with double pr...
Definition utils.h:322
libcamera::ipa
The IPA (Image Processing Algorithm) namespace.
Definition af.cpp:58
libcamera
Top-level libcamera namespace.
Definition backtrace.h:17
utils.h
Miscellaneous utility functions.