フィルターのクリア

How to change white on the outside to black?

1 回表示 (過去 30 日間)
Keane Athallah
Keane Athallah 2022 年 5 月 19 日
コメント済み: DGM 2022 年 5 月 19 日

採用された回答

DGM
DGM 2022 年 5 月 19 日
Some of the objects are connected to the surrounding white blob. You'll need to deal with that. You might be able to do something like:
A = imread('https://www.mathworks.com/matlabcentral/answers/uploaded_files/1004025/image.png');
A = rgb2gray(A)>127; % binarize
B = imopen(A,ones(3)); % try to break connectivity
B = imclearborder(B); % clear border
B = A & ~B; % difference of original and smoothed copy sans border
B = bwareafilt(B,1); % select only the border object, delete speckles
B = A & ~B; % remove border object from original image
imshow(B)
  4 件のコメント
Keane Athallah
Keane Athallah 2022 年 5 月 19 日
i already deal with that error, Thank you so much
DGM
DGM 2022 年 5 月 19 日
As you've probably already figured out, your working image is probably still a single-channel logical image, whereas the attached PNG file is a uint8-scale RGB image. In that case, the conversion and thresholding isn't necessary unless dealing with a copy like the one attached.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeImage Processing Toolbox についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by