How do I remove the square box surrounding on the single digit?

2 views (last 30 days)
when i try to recognize the digit that surrounded by square box ,but i can't remove the edges of the square box.can anyone tell how do i remove??

Accepted Answer

Image Analyst
Image Analyst on 19 Jan 2015
Threshold it, fill it, then call imerode() to shrink the binary blob.
binaryImage = grayImage > 128;
binaryImage = imfill(binaryImage , 'holes');
erodedImage = imerode(binaryImage, true(9));
Then subtract from original binary image to get just the straight borders.
maskImage = binaryImage - erodedImage;
Then use that as a mask to assign any other value, such as 0 or 128 or whatever.
grayImage(maskImage) = 0;
Or you can use nearby image image values if you want by using roifill(). Give it a try and come back with your code attempt if you still need help.
  5 Comments
Image Analyst
Image Analyst on 22 Jan 2015
Like I said, "For the first image, you can check if the centroid of one blob is inside the bounding box of a different blob. " If you don't know how to find centroids and bounding boxes, then see my tutorial http://www.mathworks.com/matlabcentral/fileexchange/25157-image-segmentation-tutorial---blobsdemo-- It goes over that in well-commented detail.

Sign in to comment.

More Answers (1)

suraj tarade
suraj tarade on 5 Oct 2017
Edited: suraj tarade on 5 Oct 2017
Hi i also want solution for the same please find below link for details https://in.mathworks.com/matlabcentral/answers/359858-i-want-to-remove-border-surrounding-on-character

Community Treasure Hunt

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

Start Hunting!