how to fill the cells?

3 ビュー (過去 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 ExchangeTables についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by