how to fill the cells?

8 ビュー (過去 30 日間)
Sarah Nasra
Sarah Nasra 2021 年 11 月 5 日
回答済み: Sahil Jain 2021 年 11 月 17 日
i want to fill the cells so i used the function "imfill" but because the borders of the cells not completed 100%, not all the cells filled.
A = imread("ניסוי1 חתוך.tif","tif");
A=rgb2gray(A);
t = 0.64;
BW1 = imbinarize(A,t);
BW2 = bwareaopen(BW1,50);
BW3 = medfilt2(BW2);
BW4 = imfill(BW3,'holes');
figure; imshow(BW4); title("after");
in the file there a pic that summrize what i mean.

回答 (1 件)

Sahil Jain
Sahil Jain 2021 年 11 月 17 日
Hi Sarah. You can try using the "morphological close" operation to close the cells before filling. You may need to experiment with the size of the structuring element for your use case.
A = imread("ניסוי1 חתוך.tif","tif");
A=rgb2gray(A);
t = 0.64;
BW1 = imbinarize(A,t);
BW2 = bwareaopen(BW1,50);
BW3 = medfilt2(BW2);
se = strel('disk',20);
BW4 = imclose(BW3,se);
BW5 = imfill(BW4,'holes');
figure; imshow(BW5); title("after");

カテゴリ

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