libcamera
v0.3.2+116-83c5ad0f
Supporting cameras in Linux since 2019
|
The IPA (Image Processing Algorithm) namespace. More...
Classes | |
class | AgcMeanLuminance |
A mean-based auto-exposure algorithm. More... | |
class | Algorithm |
The base class for all IPA algorithms. More... | |
class | AlgorithmFactory |
Registration of Algorithm classes and creation of instances. More... | |
class | AlgorithmFactoryBase |
class | CameraSensorHelper |
Base class for computing sensor tuning parameters using sensor-specific constants. More... | |
class | CameraSensorHelperFactory |
Registration of CameraSensorHelperFactory classes and creation of instances. More... | |
class | CameraSensorHelperFactoryBase |
Base class for camera sensor helper factories. More... | |
class | ExposureModeHelper |
Class for splitting exposure into shutter time and total gain. More... | |
class | FCQueue |
A support class for managing FrameContext instances in IPA modules. More... | |
struct | FrameContext |
Context for a frame. More... | |
class | Histogram |
The base class for creating histograms. More... | |
class | Interpolator |
Class for storing, retrieving, and interpolating objects. More... | |
class | LscPolynomial |
Class for handling even polynomials used in lens shading correction. More... | |
class | Matrix |
Matrix class. More... | |
class | Module |
The base class for all IPA modules. More... | |
class | Pwl |
Describe a univariate piecewise linear function in two-dimensional real space. More... | |
class | Vector |
Vector class. More... | |
Functions | |
double | rec601LuminanceFromRGB (double r, double g, double b) |
Estimate luminance from RGB values following ITU-R BT.601. More... | |
uint32_t | estimateCCT (double red, double green, double blue) |
Estimate correlated colour temperature from RGB color space input. More... | |
template<typename T , typename U , unsigned int Rows, unsigned int Cols> | |
Matrix< U, Rows, Cols > | operator* (T d, const Matrix< U, Rows, Cols > &m) |
Multiply the matrix by a scalar. More... | |
template<typename T , typename U , unsigned int Rows, unsigned int Cols> | |
Matrix< U, Rows, Cols > | operator* (const Matrix< U, Rows, Cols > &m, T d) |
Multiply the matrix by a scalar. More... | |
template<typename T , unsigned int R1, unsigned int C1, unsigned int R2, unsigned in C2> | |
Matrix< T, R1, C2 > | operator* (const Matrix< T, R1, C1 > &m1, const Matrix< T, R2, C2 > &m2) |
Matrix multiplication. More... | |
template<typename T , unsigned int Rows, unsigned int Cols> | |
Matrix< T, Rows, Cols > | operator+ (const Matrix< T, Rows, Cols > &m1, const Matrix< T, Rows, Cols > &m2) |
Matrix addition. More... | |
template<typename T , unsigned int Rows, unsigned int Cols> | |
Vector< T, Rows > | operator* (const Matrix< T, Rows, Cols > &m, const Vector< T, Cols > &v) |
Multiply a matrix by a vector. More... | |
template<typename T , unsigned int Rows> | |
bool | operator== (const Vector< T, Rows > &lhs, const Vector< T, Rows > &rhs) |
Compare vectors for equality. More... | |
template<typename T , unsigned int Rows> | |
bool | operator!= (const Vector< T, Rows > &lhs, const Vector< T, Rows > &rhs) |
Compare vectors for inequality. More... | |
The IPA (Image Processing Algorithm) namespace.
The IPA namespace groups all types specific to IPA modules. It serves as the top-level namespace for the IPA library libipa, and also contains module-specific namespaces for IPA modules.
uint32_t libcamera::ipa::estimateCCT | ( | double | red, |
double | green, | ||
double | blue | ||
) |
Estimate correlated colour temperature from RGB color space input.
[in] | red | The input red value |
[in] | green | The input green value |
[in] | blue | The input blue value |
This function estimates the correlated color temperature RGB color space input. In physics and color science, the Planckian locus or black body locus is the path or locus that the color of an incandescent black body would take in a particular chromaticity space as the blackbody temperature changes.
If a narrow range of color temperatures is considered (those encapsulating daylight being the most practical case) one can approximate the Planckian locus in order to calculate the CCT in terms of chromaticity coordinates.
More detailed information can be found in: https://en.wikipedia.org/wiki/Color_temperature#Approximation
bool libcamera::ipa::operator!= | ( | const Vector< T, Rows > & | lhs, |
const Vector< T, Rows > & | rhs | ||
) |
Compare vectors for inequality.
Matrix::Matrix< U, Rows, Cols > libcamera::ipa::operator* | ( | T | d, |
const Matrix< U, Rows, Cols > & | m | ||
) |
Multiply the matrix by a scalar.
T | Type of the numerical scalar value |
U | Type of numerical values in the matrix |
Rows | Number of rows in the matrix |
Cols | Number of columns in the matrix |
d | The scalar multiplier |
m | The matrix |
Matrix::Matrix< U, Rows, Cols > libcamera::ipa::operator* | ( | const Matrix< U, Rows, Cols > & | m, |
T | d | ||
) |
Multiply the matrix by a scalar.
T | Type of the numerical scalar value |
U | Type of numerical values in the matrix |
Rows | Number of rows in the matrix |
Cols | Number of columns in the matrix |
d | The scalar multiplier |
m | The matrix |
Matrix< T, R1, C2 > libcamera::ipa::operator* | ( | const Matrix< T, R1, C1 > & | m1, |
const Matrix< T, R2, C2 > & | m2 | ||
) |
Matrix multiplication.
T | Type of numerical values in the matrices |
R1 | Number of rows in the first matrix |
C1 | Number of columns in the first matrix |
R2 | Number of rows in the second matrix |
C2 | Number of columns in the second matrix |
m1 | Multiplicand matrix |
m2 | Multiplier matrix |
Vector< T, Rows > libcamera::ipa::operator* | ( | const Matrix< T, Rows, Cols > & | m, |
const Vector< T, Cols > & | v | ||
) |
Multiply a matrix by a vector.
T | Numerical type of the contents of the matrix and vector |
Rows | The number of rows in the matrix |
Cols | The number of columns in the matrix (= rows in the vector) |
m | The matrix |
v | The vector |
bool libcamera::ipa::operator== | ( | const Vector< T, Rows > & | lhs, |
const Vector< T, Rows > & | rhs | ||
) |
Compare vectors for equality.
double libcamera::ipa::rec601LuminanceFromRGB | ( | double | r, |
double | g, | ||
double | b | ||
) |
Estimate luminance from RGB values following ITU-R BT.601.
[in] | r | The red value |
[in] | g | The green value |
[in] | b | The blue value |
This function estimates a luminance value from a triplet of Red, Green and Blue values, following the formula defined by ITU-R Recommendation BT.601-7 which can be found at https://www.itu.int/rec/R-REC-BT.601