QCameraImageProcessing Class

The QCameraImageProcessing class provides an interface for image processing related camera settings. More...

Header: #include <QCameraImageProcessing>
qmake: QT += multimedia
Inherits: QObject

Public Types

enum ColorFilter { ColorFilterNone, ColorFilterGrayscale, ColorFilterNegative, ColorFilterSolarize, ColorFilterSepia, …, ColorFilterVendor }
enum WhiteBalanceMode { WhiteBalanceAuto, WhiteBalanceManual, WhiteBalanceSunlight, WhiteBalanceCloudy, WhiteBalanceShade, …, WhiteBalanceVendor }

Public Functions

qreal brightness() const
QCameraImageProcessing::ColorFilter colorFilter() const
qreal contrast() const
qreal denoisingLevel() const
bool isAvailable() const
bool isColorFilterSupported(QCameraImageProcessing::ColorFilter filter) const
bool isWhiteBalanceModeSupported(QCameraImageProcessing::WhiteBalanceMode mode) const
qreal manualWhiteBalance() const
qreal saturation() const
void setBrightness(qreal value)
void setColorFilter(QCameraImageProcessing::ColorFilter filter)
void setContrast(qreal value)
void setDenoisingLevel(qreal level)
void setManualWhiteBalance(qreal colorTemperature)
void setSaturation(qreal value)
void setSharpeningLevel(qreal level)
void setWhiteBalanceMode(QCameraImageProcessing::WhiteBalanceMode mode)
qreal sharpeningLevel() const
QCameraImageProcessing::WhiteBalanceMode whiteBalanceMode() const

Protected Functions

virtual ~QCameraImageProcessing()

Detailed Description

After capturing the data for a camera frame, the camera hardware and software performs various image processing tasks to produce a final image. This includes compensating for ambient light color, reducing noise, as well as making some other adjustments to the image.

You can retrieve this class from an instance of a QCamera object.

For example, you can set the white balance (or color temperature) used for processing images:

camera = new QCamera;
QCameraImageProcessing *imageProcessing = camera->imageProcessing();

if (imageProcessing->isAvailable()) {
    imageProcessing->setWhiteBalanceMode(QCameraImageProcessing::WhiteBalanceFluorescent);
}

Or adjust the amount of denoising performed:

imageProcessing->setDenoisingLevel(-0.3); //reduce the amount of denoising applied

In some cases changing these settings may result in a longer delay before an image is ready.

For more information on image processing of camera frames, see Camera Image Processing.

See also QCameraImageProcessingControl.

Member Type Documentation

enum QCameraImageProcessing::ColorFilter

Constant Value Description
QCameraImageProcessing::ColorFilterNone 0 No filter is applied to images.
QCameraImageProcessing::ColorFilterGrayscale 1 A grayscale filter.
QCameraImageProcessing::ColorFilterNegative 2 A negative filter.
QCameraImageProcessing::ColorFilterSolarize 3 A solarize filter.
QCameraImageProcessing::ColorFilterSepia 4 A sepia filter.
QCameraImageProcessing::ColorFilterPosterize 5 A posterize filter.
QCameraImageProcessing::ColorFilterWhiteboard 6 A whiteboard filter.
QCameraImageProcessing::ColorFilterBlackboard 7 A blackboard filter.
QCameraImageProcessing::ColorFilterAqua 8 An aqua filter.
QCameraImageProcessing::ColorFilterVendor 1000 The base value for vendor defined filters.

This enum was introduced or modified in Qt 5.5.

enum QCameraImageProcessing::WhiteBalanceMode

Constant Value Description
QCameraImageProcessing::WhiteBalanceAuto 0 Auto white balance mode.
QCameraImageProcessing::WhiteBalanceManual 1 Manual white balance. In this mode the white balance should be set with setManualWhiteBalance()
QCameraImageProcessing::WhiteBalanceSunlight 2 Sunlight white balance mode.
QCameraImageProcessing::WhiteBalanceCloudy 3 Cloudy white balance mode.
QCameraImageProcessing::WhiteBalanceShade 4 Shade white balance mode.
QCameraImageProcessing::WhiteBalanceTungsten 5 Tungsten (incandescent) white balance mode.
QCameraImageProcessing::WhiteBalanceFluorescent 6 Fluorescent white balance mode.
QCameraImageProcessing::WhiteBalanceFlash 7 Flash white balance mode.
QCameraImageProcessing::WhiteBalanceSunset 8 Sunset white balance mode.
QCameraImageProcessing::WhiteBalanceVendor 1000 Base value for vendor defined white balance modes.

Member Function Documentation

[virtual protected] QCameraImageProcessing::~QCameraImageProcessing()

Destroys the camera focus object.

qreal QCameraImageProcessing::brightness() const

Returns the brightness adjustment setting.

See also setBrightness().

QCameraImageProcessing::ColorFilter QCameraImageProcessing::colorFilter() const

Returns the color filter which will be applied to image data captured by the camera.

This function was introduced in Qt 5.5.

See also setColorFilter().

qreal QCameraImageProcessing::contrast() const

Returns the contrast adjustment setting.

See also setContrast().

qreal QCameraImageProcessing::denoisingLevel() const

Returns the denoising adjustment level.

See also setDenoisingLevel().

bool QCameraImageProcessing::isAvailable() const

Returns true if image processing related settings are supported by this camera.

bool QCameraImageProcessing::isColorFilterSupported(QCameraImageProcessing::ColorFilter filter) const

Returns true if a color filter is supported.

This function was introduced in Qt 5.5.

bool QCameraImageProcessing::isWhiteBalanceModeSupported(QCameraImageProcessing::WhiteBalanceMode mode) const

Returns true if the white balance mode is supported.

qreal QCameraImageProcessing::manualWhiteBalance() const

Returns the current color temperature if the current white balance mode is WhiteBalanceManual. For other modes the return value is undefined.

See also setManualWhiteBalance().

qreal QCameraImageProcessing::saturation() const

Returns the saturation adjustment value.

See also setSaturation().

void QCameraImageProcessing::setBrightness(qreal value)

Set the brightness adjustment to value.

Valid brightness adjustment values range between -1.0 and 1.0, with a default of 0.

See also brightness().

void QCameraImageProcessing::setColorFilter(QCameraImageProcessing::ColorFilter filter)

Sets the color filter which will be applied to image data captured by the camera.

This function was introduced in Qt 5.5.

See also colorFilter().

void QCameraImageProcessing::setContrast(qreal value)

Set the contrast adjustment to value.

Valid contrast adjustment values range between -1.0 and 1.0, with a default of 0.

See also contrast().

void QCameraImageProcessing::setDenoisingLevel(qreal level)

Sets the denoising adjustment level.

Valid denoising values range between -1.0 and 1.0, with a default of 0.

If the parameter value is set to 0, the amount of denoising applied is selected by camera and depends on camera capabilities and settings. Changing value in -1.0..1.0 range adjusts the amount of denoising applied within the supported range.

See also denoisingLevel().

void QCameraImageProcessing::setManualWhiteBalance(qreal colorTemperature)

Sets manual white balance to colorTemperature. This is used when whiteBalanceMode() is set to WhiteBalanceManual. The units are Kelvin.

See also manualWhiteBalance().

void QCameraImageProcessing::setSaturation(qreal value)

Sets the saturation adjustment value to value.

Valid saturation values range between -1.0 and 1.0, with a default of 0.

See also saturation().

void QCameraImageProcessing::setSharpeningLevel(qreal level)

Sets the sharpening adjustment level.

Valid sharpening values range between -1.0 and 1.0, with a default of 0.

See also sharpeningLevel().

void QCameraImageProcessing::setWhiteBalanceMode(QCameraImageProcessing::WhiteBalanceMode mode)

Sets the white balance to mode.

See also whiteBalanceMode().

qreal QCameraImageProcessing::sharpeningLevel() const

Returns the sharpening adjustment level.

See also setSharpeningLevel().

QCameraImageProcessing::WhiteBalanceMode QCameraImageProcessing::whiteBalanceMode() const

Returns the white balance mode being used.

See also setWhiteBalanceMode().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qcameraimageprocessing.html