Visual Servoing Platform  version 3.6.1 under development (2024-04-20)
Histogram equalization

Functions

VISP_EXPORT void vp::equalizeHistogram (vpImage< unsigned char > &I, const vpImage< bool > *p_mask=nullptr)
 
VISP_EXPORT void vp::equalizeHistogram (const vpImage< unsigned char > &I1, vpImage< unsigned char > &I2, const vpImage< bool > *p_mask=nullptr)
 
VISP_EXPORT void vp::equalizeHistogram (vpImage< vpRGBa > &I, bool useHSV=false)
 
VISP_EXPORT void vp::equalizeHistogram (const vpImage< vpRGBa > &I1, vpImage< vpRGBa > &I2, bool useHSV=false)
 

Detailed Description

Histogram equalization.

Function Documentation

◆ equalizeHistogram() [1/4]

void vp::equalizeHistogram ( const vpImage< unsigned char > &  I1,
vpImage< unsigned char > &  I2,
const vpImage< bool > *  p_mask = nullptr 
)

Adjust the contrast of a grayscale image by performing an histogram equalization. The intensity distribution is redistributed over the full [0 - 255] range such as the cumulative histogram distribution becomes linear.

Parameters
I1: The first grayscale image.
I2: The second grayscale image after histogram equalization.
p_mask: If set, a boolean mask to take into account only the points for which the mask is true.

Definition at line 226 of file vpImgproc.cpp.

References vpHistogram::equalize(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), and vpHistogram::setMask().

◆ equalizeHistogram() [2/4]

void vp::equalizeHistogram ( const vpImage< vpRGBa > &  I1,
vpImage< vpRGBa > &  I2,
bool  useHSV = false 
)

Adjust the contrast of a color image by performing an histogram equalization. The intensity distribution is redistributed over the full [0 - 255] range such as the cumulative histogram distribution becomes linear. The alpha channel is ignored / copied from the source alpha channel.

Parameters
I1: The first color image.
I2: The second color image after histogram equalization.
useHSV: If true, the histogram equalization is performed on the value channel (in HSV space), otherwise the histogram equalization is performed independently on the RGB channels.

Definition at line 301 of file vpImgproc.cpp.

References vp::equalizeHistogram().

◆ equalizeHistogram() [3/4]

void vp::equalizeHistogram ( vpImage< unsigned char > &  I,
const vpImage< bool > *  p_mask = nullptr 
)

Adjust the contrast of a grayscale image by performing an histogram equalization. The intensity distribution is redistributed over the full [0 - 255] range such as the cumulative histogram distribution becomes linear.

Parameters
I: The grayscale image to apply histogram equalization.
p_mask: If set, a boolean mask to take into account only the points for which the mask is true.
Examples
testImgproc.cpp, tutorial-brightness-adjustment.cpp, and tutorial-contrast-sharpening.cpp.

Definition at line 220 of file vpImgproc.cpp.

Referenced by vp::equalizeHistogram().

◆ equalizeHistogram() [4/4]

void vp::equalizeHistogram ( vpImage< vpRGBa > &  I,
bool  useHSV = false 
)

Adjust the contrast of a color image by performing an histogram equalization. The intensity distribution is redistributed over the full [0 - 255] range such as the cumulative histogram distribution becomes linear. The alpha channel is ignored / copied from the source alpha channel.

Parameters
I: The color image to apply histogram equalization.
useHSV: If true, the histogram equalization is performed on the value channel (in HSV space), otherwise the histogram equalization is performed independently on the RGB channels.

Definition at line 239 of file vpImgproc.cpp.

References vpImage< Type >::bitmap, vp::equalizeHistogram(), vpImage< Type >::getHeight(), vpImage< Type >::getWidth(), vpImageConvert::HSVToRGBa(), vpImageConvert::RGBaToHSV(), and vpImageConvert::split().