How to thin the image so as to make the thickness of the image to one pixel wide?

17 Ansichten (letzte 30 Tage)
Hello,i have an image and i want to thin that word image so as to make the thickness of each word to one-pixel wide to make the stroke width uniform.Please help me.

Antworten (2)

Image Analyst
Image Analyst am 17 Feb. 2016
Try this
binaryImage = grayImage < 128;
% Remove small blobs;
binaryImage = bwareaopen(binaryImage, 500);
% Skeletonize
skeletonImage = bwmorph(binaryImage, 'skel', inf);
Make sure your image is actually gray scale, not color.
  7 Kommentare
Image Analyst
Image Analyst am 24 Feb. 2016
It's this line that makes it one pixel wide:
skeletonImage = bwmorph(binaryImage, 'skel', inf);
To not remove small blobs, change the 500 to a smaller number, like 20 or 50 or whatever
binaryImage = bwareaopen(binaryImage, 20);
The number you input is the size of blobs, plus smaller ones, that it will throw away (remove).

Melden Sie sich an, um zu kommentieren.


Walter Roberson
Walter Roberson am 17 Feb. 2016
bwareafilt to remove the speckles. bwmorph() to skeletonize.
  1 Kommentar
Meghashree G
Meghashree G am 17 Feb. 2016
Sorry sir..I dint get you..how do i make the image thickness one pixel wide??please help me with the code.Thank you

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by