how to remove the tiny white pixels around the rectangles

 采纳的回答

Img = imread('originalImage.png');
imshow(Img)
You can also filter based on area of objects
Img = bwareafilt(imbinarize(Img),4,'largest'); % keep the 4 largest objects
imshow(Img)

更多回答(2 个)

Depends on exactly what that means.
  1. Do you want to simply remove small blobs?
  2. Or do you also want to remove a small protrusion that is sticking out of the side of a much larger rectangle.
For case 1 you can use bwareaopen or bwareafilt
For case 2 you might try imopen, though be careful for changes to the shape you don't want, especially near the corners or protruding blobs.

类别

帮助中心File Exchange 中查找有关 Image Processing Toolbox 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by