|
libcamera v0.7.2+rpt20260817
Supporting cameras in Linux since 2019
|
The libipa AWB algorithm. More...


Public Member Functions | |
| int | init (const ValueNode &tuningData, ControlInfoMap::Map &controls) |
Public Member Functions inherited from libcamera::ipa::AwbAlgorithmBase | |
| int | init (const ValueNode &tuningData) |
| Initialize the algorithm with the given tuning data. | |
| int | configure (awb::ActiveState &state) |
| Configure the AWB algorithm. | |
| void | queueRequest (awb::ActiveState &state, const uint32_t frame, awb::FrameContext &frameContext, const ControlList &controls) |
| Queue a Request to the AWB algorithm. | |
| void | prepare (awb::ActiveState &state, awb::FrameContext &frameContext) |
| Set the gains and colour temperature values in frameContext. | |
| void | process (awb::ActiveState &state, awb::FrameContext &frameContext, const AwbStats &stats, unsigned int lux, ControlList &metadata) |
| Process AWB statistics to calculate gains and populate metadata. | |
Additional Inherited Members | |
Protected Attributes inherited from libcamera::ipa::AwbAlgorithmBase | |
| ControlInfoMap::Map | controls_ |
| Controls info map for the controls registered by the AWB algorithm. | |
| float | gainMin_ |
| The minimum supported gain value. | |
| float | gainMax_ |
| The maximum supported gain value. | |
The libipa AWB algorithm.
| Q | The fixedpoint register representation of gain values |
Implement the AWB algorithm for libipa.
The AwbAlgorithm class implements an interface similar in spirit to the one of the Algorithm class. IPA modules are expected to store an instance of AwbAlgorithm as class member, template it with the AWB engine gain register representation and call its function in their implementations of the Algorithm interface.
The AwbAlgorithm instantiates an AwbImplementation implementation (AwbGrey or AwbBayes) at init() time by parsing the tuning data and uses it to compute the RGB gains and estimate a colour temperature given a set of statistics in the form of a AwbStats derived implementation.
|
inline |
| [in] | controls | The info map of the IPA controls |
Initialize the algorithm with the given tuning data.
| [in] | tuningData | The tuning data to use for the algorithm |
Parse tuningData to initialize the AWB algorithm and register controls. IPA modules are expected to call this function as part of their implementation of Algorithm::init().