10#include <linux/intel-ipu3.h>
23struct IPACameraSensorInfo;
25namespace ipa::ipu3::algorithms {
37 const ipu3_uapi_stats_3a *stats,
41 double estimateLuminance(
double gain)
const override;
42 Histogram parseStatistics(
const ipu3_uapi_stats_3a *stats,
43 const ipu3_uapi_grid_config &grid);
48 double minAnalogueGain_;
49 double maxAnalogueGain_;
55 ipu3_uapi_grid_config bdsGrid_;
56 std::vector<std::tuple<uint8_t, uint8_t, uint8_t>> rgbTriples_;
Base class implementing mean luminance AEGC.
Associate a list of ControlId with their values for an object.
Definition controls.h:350
A class representing the tree structure of the YAML content.
Definition yaml_parser.h:26
A mean-based auto-exposure algorithm.
Definition agc_mean_luminance.h:29
The base class for all IPA algorithms.
Definition algorithm.h:23
The base class for creating histograms.
Definition histogram.h:24
A mean-based auto-exposure algorithm.
Definition agc.h:28
void process(IPAContext &context, const uint32_t frame, IPAFrameContext &frameContext, const ipu3_uapi_stats_3a *stats, ControlList &metadata) override
Process IPU3 statistics, and run AGC operations.
Definition agc.cpp:206
int configure(IPAContext &context, const IPAConfigInfo &configInfo) override
Configure the AGC given a configInfo.
Definition agc.cpp:94
int init(IPAContext &context, const YamlObject &tuningData) override
Initialise the AGC algorithm from tuning files.
Definition agc.cpp:74
Helper class from std::chrono::duration that represents a time duration in nanoseconds with double pr...
Definition utils.h:354
Data structures related to geometric objects.
Class to represent Histograms and manipulate them.
Top-level libcamera namespace.
Definition backtrace.h:17
Global IPA context data shared between all algorithms.
Definition ipa_context.h:86
IPU3-specific FrameContext.
Definition ipa_context.h:79
Miscellaneous utility functions.