Counting particles on image with sizes range

I need counting particles of an image based on their size range.
Such as 7.5-15, 15-25, 25-50, 50-100, 100-150, 150-200, 200-400, 400-600, 600-1000, >1000 micrometers
how i can count the particles on the image and put each number into excel.
Thank you

 Accepted Answer

regionprops() their Area or other relevant "size" measure. histc() or histcounts() to get the counts (note that those two have different behaviours for the values exactly equal to the final value.) xlswrite() to write into excel.

16 Comments

If you don't know how to get areas with regionprops(), then see my Image Segmentation Tutorial: http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862
Hello, thank you for your comment. First of all, is it possible? I will take an image with digital microscope, then i will count with image processing toolbox from 7micrometer to 1000 micrometer. Basically, I will try to do 3 steps with Matlab ( http://kumi-solutions.com/microquick-particle-scanner/)
This is my co-op project at work place. I do not have any other budget. They will install in this week. Then I can watch your tutorial as well.
Regards.
The steps I outlined are quite possible. However, if the particles are rigid particles and are dense enough then some of them might be touching and you might need work to distinguish the touching particles from each other.
They are dusts and plastic parts. I have been studying on image analyst's codes. Try to understand what is what. then I will try to change for my purpose. Microscope is unable to take a picture from all membrane. If it is not possible, I will take a picture with my Canon camera's close zoom mode. I hope I can do this counting at the end. Thank you
We can't work "blind" - attach an image with the green and brown frame icon if you can. Whether you need to split apart touching particles or not depends on how you're going to use the data. If area fraction is good enough, then you don't need to split. But if you really really need a count, then you'll have to split. What are you going to do based on what you find, so we can determine if splitting is required?
in a couple hours, I will take pictures with my canon camera. I will send here as well. this is a test for the cleanliness of the parts. if number is lower than the limit, test will be successful.
That didn't answer my questions. So, maybe you can just take the mean or skewness of the image's histogram and check that. Maybe no particle sizing (count or area fraction) is even needed.
yes definitely counting the particles even if they overlapped is very important in this case. I can not understand what is green and brown frame term in terms of matlab. Yes, for sure i need splitting. At the end, I will say 1000 particles from 15-25 micrometer size range, 50 particles from 150-200 micrometer size range etc. Regards.
this is first membrane's image. 3840x2160 resolution and 13.2mm x 8.8 mm sensor size.
"this is a test for the cleanliness of the parts."
Suppose there is one particle that appears to be 50 square units, but on closer examination with better techniques, it is found to be 5 touching particles each with area 10 square units. Would that be more clean or less clean than the single particle of 50 square units?
Or is it more that upon examination, the particle of 50 square units might be determined to be 7 overlapping particles of 10 square units each, and it would be important to count the full 70 square units in the calculation?
i agree with you. This is bad membrane's image example. I have to dilute this sample. I can not escape from overlapping of fibers. Basically, I try to count this membrane with code. then i will modify dilution and code based on the need.
We do not currently know how you are using the measured counts to do your calculations, so we are asking for information about that as there might be other similar calculations that are "good enough" that do not require separating the particles. Separating the particles can be tricky so it would be nice to avoid doing it.
The image is suggestive that you might be using the membrane as a filter. My experience with cleaning my hair out of my hair-catchers is that the rate at which water drains through often depends less on the number of hairs or their length, and more upon the Mean Free Path (MFP). For example, if the outer 1/3 of my (circular) hair catcher is completely clogged with hair but the inner 2/3 is completely free, the water flows just fine; but if the same amount of hair were distributed more or less equally over the circle, then the water would be slow.
If the situation is similar for the device you are looking at and the measurements are intended to determine how much a liquid flow efficiency has been cut down by the dust / fibres, then I am not presently convinced that the statistics you are proposing to collect would be the best statistics. Instead I would suggest you need some measure of the relative distance apart of the clogging material (though not a plain euclidean distance because for such purposes, a larger speck would interfere more with water flow than a smaller speck.)
Hmmmm... Is it a simple osmosis situation, "we get out the fluid at whatever rate we get it out", or is it a pressure situation where a fluid is being forced through the membrane? The simple osmosis situation could possibly (perhaps) be modeled using purely local dust surface area coverage figures, total flow is sum of the local flows. But if it is a pressure situation then any fluid that is blocked needs to travel somewhere else to go through, resulting in lateral movement, micro-pressures, probable vortices, direction of the fluid input matters, and so on; I suspect something more robust than distribution statistics would be needed (but perhaps someone already studied the matter and found distribution statistics to be useful for constructing a fluidics model??)
There is a standard (ISO 16232) for this test. 10 times the volume of the part, a solvent is using for rinsing.Rinsing the part doing in 2 minute at 2 bar pressure.Then the obtained liquid was investigated with different membrane filters ( 1.25 um, 5um, 200um) Generally filter size is 90mm or 47mm.
I understand if we are thinking theoritically logically this is not 100% showing of the cleanliness of the part. You are right.
I have just started working with Image Processing Toolbox. Which codes can rougly cover this counting based on their size. I think you have already something for my case.
i will think about the other deficient areas with result of the code. Maybe the base of the iso standard is wrong.
Thank you for your great interesting on my case.

Sign in to comment.

More Answers (0)

Categories

Find more on General Applications in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!