libcamera v0.0.0+3240-f2a18172-dirty (2022-05-13T12:52:26+00:00)
Supporting cameras in Linux since 2019
Public Member Functions | List of all members
libcamera::ipa::ipu3::algorithms::BlackLevelCorrection Class Reference

A class to handle black level correction. More...

Inheritance diagram for libcamera::ipa::ipu3::algorithms::BlackLevelCorrection:
Inheritance graph
[legend]
Collaboration diagram for libcamera::ipa::ipu3::algorithms::BlackLevelCorrection:
Collaboration graph
[legend]

Public Member Functions

void prepare (IPAContext &context, ipu3_uapi_params *params) override
 Fill in the parameter structure, and enable black level correction. More...
 
- Public Member Functions inherited from libcamera::ipa::ipu3::Algorithm
virtual int configure (IPAContext &context, const IPAConfigInfo &configInfo)
 Configure the Algorithm given an IPAConfigInfo. More...
 
virtual void prepare (IPAContext &context, ipu3_uapi_params *params)
 Fill the params buffer with ISP processing parameters for a frame. More...
 
virtual void process (IPAContext &context, const ipu3_uapi_stats_3a *stats)
 Process ISP statistics, and run algorithm operations. More...
 

Detailed Description

A class to handle black level correction.

The pixels output by the camera normally include a black level, because sensors do not always report a signal level of '0' for black. Pixels at or below this level should be considered black. To achieve that, the ImgU BLC algorithm subtracts a configurable offset from all pixels.

The black level can be measured at runtime from an optical dark region of the camera sensor, or measured during the camera tuning process. The first option isn't currently supported.

Member Function Documentation

◆ prepare()

void libcamera::ipa::ipu3::algorithms::BlackLevelCorrection::prepare ( IPAContext context,
ipu3_uapi_params *  params 
)
overridevirtual

Fill in the parameter structure, and enable black level correction.

Parameters
contextThe shared IPA context
paramsThe IPU3 parameters

Populate the IPU3 parameter structure with the correction values for each channel and enable the corresponding ImgU block processing.

Reimplemented from libcamera::ipa::ipu3::Algorithm.


The documentation for this class was generated from the following files: