10#include <linux/intel-ipu3.h>
20namespace ipa::ipu3::algorithms {
25 typedef struct __attribute__((packed)) y_table_item {
36 ipu3_uapi_params *params)
override;
39 const ipu3_uapi_stats_3a *stats)
override;
44 bool afScan(
IPAContext &context,
int min_step);
46 bool afNeedIgnoreFrame();
47 void afIgnoreFrameReset();
48 double afEstimateVariance(Span<const y_table_item_t> y_items,
bool isY1);
57 double currentVariance_;
59 uint32_t ignoreCounter_;
61 double previousVariance_;
65 bool coarseCompleted_;
The base class for all IPA algorithms.
Definition: algorithm.h:23
An auto-focus algorithm based on IPU3 statistics.
Definition: af.h:23
void prepare(IPAContext &context, const uint32_t frame, IPAFrameContext &frameContext, ipu3_uapi_params *params) override
Fill the params buffer with ISP processing parameters for a frame.
Definition: af.cpp:119
void process(IPAContext &context, const uint32_t frame, IPAFrameContext &frameContext, const ipu3_uapi_stats_3a *stats) override
Determine the max contrast image and lens position.
Definition: af.cpp:424
int configure(IPAContext &context, const IPAConfigInfo &configInfo) override
Configure the Af given a configInfo.
Definition: af.cpp:138
Data structures related to geometric objects.
Algorithm common interface.
Top-level libcamera namespace.
Definition: backtrace.h:17
Global IPA context data shared between all algorithms.
Definition: ipa_context.h:82
IPU3-specific FrameContext.
Definition: ipa_context.h:75
Miscellaneous utility functions.