I have image with different cell size but I want Count the number of big cells only!!
I try this code:
A = imread ('cell.png');
level=graythresh(A);
I=im2bw(A,level);
[labeled,numObjects]=bwlabel(I,4)
numObjects = 26

 采纳的回答

Dishant Arora
Dishant Arora 2014-3-10
编辑:Dishant Arora 2014-3-10
use bwareaopen to remove objects smaller than certain number of pixels.
BW2 = bwareaopen(BW, thresh);
[~, numObjects] = bwlabel(BW2,4);

2 个评论

It did nit worked with me!!
It calculate small and big cells.
I = imread('cell.png'); EDU>> imshow(I); EDU>> bw = im2bw(I); EDU>> figure,imshow(bw);
EDU>> BW2 = bwareaopen(bw, 1000); EDU>> figure,imshow(BW2); [labeled,numObjects]=bwlabel(BW2,4) numObjects = 10
Check out for 8-connectivity when using bwlabel or attach your image.

请先登录,再进行评论。

更多回答(1 个)

Image Analyst
Image Analyst 2014-3-25

0 个投票

See my code to extract the largest blob, attached below in blue. In there, there is a general purpose function I wrote that can take the N largest or smallest blobs in a binary image.

Community Treasure Hunt

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

Start Hunting!

Translated by