Namespace for all functions is cv::intensity_transform
.
Supported Algorithms
- Autoscaling
- Log Transformations
- Power-Law (Gamma) Transformations
- Contrast Stretching
- BIMEF, A Bio-Inspired Multi-Exposure Fusion Framework for Low-light Image Enhancement [311] [312]
References from following book and websites:
|
void | cv::intensity_transform::autoscaling (const Mat input, Mat &output) |
| Given an input bgr or grayscale image, apply autoscaling on domain [0, 255] to increase the contrast of the input image and return the resulting image.
|
|
void | cv::intensity_transform::BIMEF (InputArray input, OutputArray output, float k, float mu, float a, float b) |
| Given an input color image, enhance low-light images using the BIMEF method ([311] [312]).
|
|
void | cv::intensity_transform::BIMEF (InputArray input, OutputArray output, float mu=0.5f, float a=-0.3293f, float b=1.1258f) |
| Given an input color image, enhance low-light images using the BIMEF method ([311] [312]).
|
|
void | cv::intensity_transform::contrastStretching (const Mat input, Mat &output, const int r1, const int s1, const int r2, const int s2) |
| Given an input bgr or grayscale image, apply linear contrast stretching on domain [0, 255] and return the resulting image.
|
|
void | cv::intensity_transform::gammaCorrection (const Mat input, Mat &output, const float gamma) |
| Given an input bgr or grayscale image and constant gamma, apply power-law transformation, a.k.a. gamma correction to the image on domain [0, 255] and return the resulting image.
|
|
void | cv::intensity_transform::logTransform (const Mat input, Mat &output) |
| Given an input bgr or grayscale image and constant c, apply log transformation to the image on domain [0, 255] and return the resulting image.
|
|
◆ autoscaling()
void cv::intensity_transform::autoscaling |
( |
const Mat | input, |
|
|
Mat & | output ) |
Python: |
---|
| cv.intensity_transform.autoscaling( | input, output | ) -> | None |
#include <opencv2/intensity_transform.hpp>
Given an input bgr or grayscale image, apply autoscaling on domain [0, 255] to increase the contrast of the input image and return the resulting image.
- Parameters
-
input | input bgr or grayscale image. |
output | resulting image of autoscaling. |
◆ BIMEF() [1/2]
void cv::intensity_transform::BIMEF |
( |
InputArray | input, |
|
|
OutputArray | output, |
|
|
float | k, |
|
|
float | mu, |
|
|
float | a, |
|
|
float | b ) |
Python: |
---|
| cv.intensity_transform.BIMEF( | input[, output[, mu[, a[, b]]]] | ) -> | output |
| cv.intensity_transform.BIMEF2( | input, k, mu, a, b[, output] | ) -> | output |
#include <opencv2/intensity_transform.hpp>
Given an input color image, enhance low-light images using the BIMEF method ([311] [312]).
This is an overloaded function with the exposure ratio given as parameter.
- Parameters
-
input | input color image. |
output | resulting image. |
k | exposure ratio. |
mu | enhancement ratio. |
a | a-parameter in the Camera Response Function (CRF). |
b | b-parameter in the Camera Response Function (CRF). |
- Warning
- This is a C++ implementation of the original MATLAB algorithm. Compared to the original code, this implementation is a little bit slower and does not provide the same results. In particular, quality of the image enhancement is degraded for the bright areas in certain conditions.
◆ BIMEF() [2/2]
void cv::intensity_transform::BIMEF |
( |
InputArray | input, |
|
|
OutputArray | output, |
|
|
float | mu = 0.5f, |
|
|
float | a = -0.3293f, |
|
|
float | b = 1.1258f ) |
Python: |
---|
| cv.intensity_transform.BIMEF( | input[, output[, mu[, a[, b]]]] | ) -> | output |
| cv.intensity_transform.BIMEF2( | input, k, mu, a, b[, output] | ) -> | output |
#include <opencv2/intensity_transform.hpp>
Given an input color image, enhance low-light images using the BIMEF method ([311] [312]).
- Parameters
-
input | input color image. |
output | resulting image. |
mu | enhancement ratio. |
a | a-parameter in the Camera Response Function (CRF). |
b | b-parameter in the Camera Response Function (CRF). |
- Warning
- This is a C++ implementation of the original MATLAB algorithm. Compared to the original code, this implementation is a little bit slower and does not provide the same results. In particular, quality of the image enhancement is degraded for the bright areas in certain conditions.
◆ contrastStretching()
void cv::intensity_transform::contrastStretching |
( |
const Mat | input, |
|
|
Mat & | output, |
|
|
const int | r1, |
|
|
const int | s1, |
|
|
const int | r2, |
|
|
const int | s2 ) |
Python: |
---|
| cv.intensity_transform.contrastStretching( | input, output, r1, s1, r2, s2 | ) -> | None |
#include <opencv2/intensity_transform.hpp>
Given an input bgr or grayscale image, apply linear contrast stretching on domain [0, 255] and return the resulting image.
- Parameters
-
input | input bgr or grayscale image. |
output | resulting image of contrast stretching. |
r1 | x coordinate of first point (r1, s1) in the transformation function. |
s1 | y coordinate of first point (r1, s1) in the transformation function. |
r2 | x coordinate of second point (r2, s2) in the transformation function. |
s2 | y coordinate of second point (r2, s2) in the transformation function. |
◆ gammaCorrection()
void cv::intensity_transform::gammaCorrection |
( |
const Mat | input, |
|
|
Mat & | output, |
|
|
const float | gamma ) |
Python: |
---|
| cv.intensity_transform.gammaCorrection( | input, output, gamma | ) -> | None |
#include <opencv2/intensity_transform.hpp>
Given an input bgr or grayscale image and constant gamma, apply power-law transformation, a.k.a. gamma correction to the image on domain [0, 255] and return the resulting image.
- Parameters
-
input | input bgr or grayscale image. |
output | resulting image of gamma corrections. |
gamma | constant in c*r^gamma where r is pixel value. |
◆ logTransform()
void cv::intensity_transform::logTransform |
( |
const Mat | input, |
|
|
Mat & | output ) |
Python: |
---|
| cv.intensity_transform.logTransform( | input, output | ) -> | None |
#include <opencv2/intensity_transform.hpp>
Given an input bgr or grayscale image and constant c, apply log transformation to the image on domain [0, 255] and return the resulting image.
- Parameters
-
input | input bgr or grayscale image. |
output | resulting image of log transformations. |