File Exchange

image thumbnail

Remove ghosts from binarized images

version (56.9 KB) by Jan Motl
This method removes speckles in the binarized images.


Updated 01 Apr 2014

View License

The postprocessing step used in Yanowitz and Bruckstein's binarization method removes "ghost" objects, and can be incorporated into other methods as well. The average gradient value at the edge of each printed object is calculated. Objects having an average gradient below a threshold TP are labeled as misclassified, and are removed. The main steps of the algorithm are given below:
1. Smooth the original image by a (3x3) mean filter to remove noise.
2. Calculate the gradient magnitude image G of the smoothed image, using, e.g., Sobel's edge operator.
3. Select a value for TP.
4. For all 4-connected print components, calculate the average gradient of the edge pixels. Edge pixels are print pixels that are 4-connected to the background. Remove print components having an average edge gradient below the threshold TP.
Øivind Due Trier , Torfinn Taxt. Evaluation of Binarization Methods for Document Images (1995). Available at:

Cite As

Jan Motl (2020). Remove ghosts from binarized images (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (3)


good job

thanks a lot for sharing.

Jan Motl

Thanks for reporting. I have added the missing example image. Let me know if you have more issues.

jacky chen

where is the demo image ?


Added example image.

MATLAB Release Compatibility
Created with R13
Compatible with any release
Platform Compatibility
Windows macOS Linux