LBitmap::RemoveRedEye

#include "ltwrappr.h"

virtual L_INT LBitmap::RemoveRedEye (rcNewColor, uThreshold, nLightness, uFlags = 0)

Removes the "red eye" effect in the class object's bitmap by converting the red color in the eye to the new specified color.

Parameters

COLORREF rcNewColor

COLORREF variable that contains the new color value used to replace the red color in the eyes.

L_UINT uThreshold

Threshold value that indicates which pixels will be changed by this function. All pixels with a red component value greater than this value will be changed. Pixels with a red component value less than this value will not be changed. This value is between 0 and 255.

L_INT nLightness

"Percentage" value that indicates whether the pixels that are replaced are lightened or darkened. If this value is greater than 100, the replaced pixels will be lightened. If this value is less than 100, the replaced pixels will be darkened. This function preserves the lightness of the original pixels and substitutes the red color with the new color.

L_UINT32 uFlags

Reserved for future use. Must be 0.

Returns

Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.

Comments

This function has no effect on grayscale images, since there is no "red eye" problem in grayscale images.

To use this function the user should select a small region around the eye. Otherwise, the function will change all the red color in the image. This function also allows the user to replace the red color with a new color for the eyes that is nearest to the original color.

To update a status bar or detect a user interrupt during execution of this function, refer to LBase::EnableStatusCallback.

This function supports 48 and 64-bit color images. Support for 48 and 64-bit color images is available only in the Document/Medical toolkits.

This function does not support signed data images. It returns the error code ERROR_SIGNED_DATA_NOT_SUPPORTED if a signed data image is passed to this function.

This function does not support 32-bit grayscale images. It returns the error code ERROR_GRAY32_UNSUPPORTED if a 32-bit grayscale image is passed to this function.

Required DLLs and Libraries

Platforms

Win32, x64.

See Also

Functions

Topics

Example

L_INT LBitmap__RemoveRedEyeExample(LBitmap & Bitmap, L_TCHAR * szFile) 
{ 
   L_INT nRet; 
 
   nRet =Bitmap.Load(szFile); 
   if(nRet !=SUCCESS) 
      return nRet; 
    
   return Bitmap.RemoveRedEye(RGB(5, 20, 10), 128, 100); 
} 
Help Version 21.0.2021.7.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C++ Class Library Help