LBitmap::RemoveSaltPepperNoise

#include "ltwrappr.h"

virtual L_INT LBitmap::RemoveSaltPepperNoise()

Removes the salt and pepper noise from the specified bitmap.

Returns

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

Comments

This function works only on 8-bit images. It removes salt (pixels having a value of 255) and pepper (pixels having a value of 0) and replaces them with the median value of the non-noisy pixels around them.

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.

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

Required DLLs and Libraries

LTDIS
LTFIL
LTIMGCOR For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

Platforms

Win32, x64.

See Also
Functions: LBitmap::HighPassFilter, LBitmap::MaskConvolution, LBitmap::BinaryFilter, LBitmap::AddNoise, LBitmap::AverageFilter, LBitmap::MaxFilter, LBitmap::MinFilter, LBitmap::Despeckle, LBitmap::MedianFilter, LBitmap::Aging, LBitmap::Add, LBitmap::AddWeighted, LBitmap::AnisotropicDiffusion, LBitmap::GaussianFilter, LBitmap::SRADAnisotropicDiffusion, LBitmap::TADAnisotropicDiffusion, LBitmap::AutoPageSplitter, LBitmap::Deinterlace, LBitmap::SignalToNoiseRatio, LBitmap::PerspectiveDeskew, LBitmap::SmoothEdges, LBitmap::BlurDetection, LBitmap::ExpandPage, LBitmap::GlareDetection, LBitmap::MICRDetection, LBitmap::MRZDetection, LBitmap::DynamicBinary, LBitmap::MeanShift, LBitmap::TissueEqualize, LBitmap::SigmaFilter, Class Members
Topics: Raster Image Functions: Filtering Images
Removing Noise

Example

This example loads a bitmap and removes the salt and pepper noise from it (check the before and after images, and focus on the area in the middle).

#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName 
#if defined (LEADTOOLS_V19_OR_LATER) 
L_INT LBitmap__RemoveSaltPepperNoiseExample(L_VOID) 
{ 
   L_INT nRet; 
   LBitmap LeadBitmap; 
   nRet = LeadBitmap.Load(MAKE_IMAGE_PATH(TEXT("cannon_noisy.png")), 0, ORDER_BGR); 
   if (nRet != SUCCESS) 
      return nRet; 
   /* Apply filter */ 
   nRet = LeadBitmap.RemoveSaltPepperNoise(); 
   if (nRet == SUCCESS) 
      nRet = LeadBitmap.Save(MAKE_IMAGE_PATH(TEXT("Result.BMP")), FILE_BMP, 24, 0, NULL); 
   return nRet; 
} 
#endif // LEADTOOLS_V19_OR_LATER 

Help Version 19.0.2017.10.27
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
LEADTOOLS Raster Imaging C++ Class Library Help