Analyse particles: counting eggs query

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Analyse particles: counting eggs query

Amy Mikhail
Hello all,

I've recently been using the image J "analyse", "analyse particles"
function to count mosquito eggs (digital photo taken of black eggs on
white filter paper).

One difficulty is that the eggs tend to stick to each other, and often
appear lying side by side.  In this instance, Imaje J counts all the eggs
that are not separate as one.

Manually separating the eggs out without damaging them is quite difficult
and very time consuming.  Luckily the eggs do not vary much in size , so
to overcome this problem, I have worked out the size range (in pixels) of
an average single egg (9 - 22 pixels).  I carry out 3 counts:

1. < 9 pixels
2. 9-22 pixles
3. > 22 pixels

Particles counted in the first range are too small to be eggs and are
probably dust / artifacts (large artefacts are removed from the photo
prior to processing).  Particles in the second range are all the eggs that
have been counted singly, while particles in the 3rd range are eggs that
are stuck together and have been counted incorrectly.  To get a total
(more accurate) count,  I use this formula:

Range 2 Count + (Range 3 total area / range 2 mean particle area).

(Areas are in pixels - means are taken from each photo to account for
differences in zoom etc)

So here is my query; currently I am using an excel sheet to compute the
formula - I add the necessary results from Image J manually to the excel
sheet.  Would it be possible to feed the Image J results I need directly
into the excel sheet?  If so how would I do this?

BTW we are trying to set up this system to use in experiments where large
numbers of egg papers will be processed on a daily basis (by various
people).  Using image J as opposed to counting manually is already a vast
improvement (both time-wise and in terms of human error), so what I'm
after is a bit of fine tuning to further expedite the process.

Any advice / help on this would be greatly appreciated...

Thanks,

Amy.



-------------------------------------------
Amy Mikhail
Research student
University of Aberdeen
Zoology Building
Tillydrone Avenue
Aberdeen AB24 2TZ
Scotland
Email: [hidden email]
Phone: 00-44-1224-272880 (lab)
Reply | Threaded
Open this post in threaded view
|

Re: Analyse particles: counting eggs query

Bill Christens-Barry
Amy,

Do you have a sample image I can look at? Several ideas come to mind:

1) Hough transform, which is used to detect circular objects;
2) Correlation-based approach, with spatial filtering to select for desired size ranges;
3) Good old particle counting as you tried, but with some size-selective restrictions.

A lot will depend on the composition of the images - contrast, brightness, etc. Black-on-white is
probably good. It may be that you can get images that are better (for analytical purposes) by
playing with the spectrum of you light source, polarization, etc. I wonder if these eggs fluoresce
under UV.

Also, do clumping eggs clump as monolayers? If so, then you basically have an image in which you
might be able to classify eggs by their maximum height, by acquiring images using narrow depth-
of-focus and focused at various heights.

What kind of imaging was done? Can you describe the camera, illumination, microscope, etc?

Cheers,

Bill Christens-Barry

On Fri, 16 Sep 2005 17:18:03 +0100, Amy Mikhail <[hidden email]> wrote:

>Hello all,
>
>I've recently been using the image J "analyse", "analyse particles"
>function to count mosquito eggs (digital photo taken of black eggs on
>white filter paper).
>
>One difficulty is that the eggs tend to stick to each other, and often
>appear lying side by side.  In this instance, Imaje J counts all the eggs
>that are not separate as one.
>
>Manually separating the eggs out without damaging them is quite difficult
>and very time consuming.  Luckily the eggs do not vary much in size , so
>to overcome this problem, I have worked out the size range (in pixels) of
>an average single egg (9 - 22 pixels).  I carry out 3 counts:
>
>1. < 9 pixels
>2. 9-22 pixles
>3. > 22 pixels
>
>Particles counted in the first range are too small to be eggs and are
>probably dust / artifacts (large artefacts are removed from the photo
>prior to processing).  Particles in the second range are all the eggs that
>have been counted singly, while particles in the 3rd range are eggs that
>are stuck together and have been counted incorrectly.  To get a total
>(more accurate) count,  I use this formula:
>
>Range 2 Count + (Range 3 total area / range 2 mean particle area).
>
>(Areas are in pixels - means are taken from each photo to account for
>differences in zoom etc)
>
>So here is my query; currently I am using an excel sheet to compute the
>formula - I add the necessary results from Image J manually to the excel
>sheet.  Would it be possible to feed the Image J results I need directly
>into the excel sheet?  If so how would I do this?
>
>BTW we are trying to set up this system to use in experiments where large
>numbers of egg papers will be processed on a daily basis (by various
>people).  Using image J as opposed to counting manually is already a vast
>improvement (both time-wise and in terms of human error), so what I'm
>after is a bit of fine tuning to further expedite the process.
>
>Any advice / help on this would be greatly appreciated...
>
>Thanks,
>
>Amy.
>
>
>
>-------------------------------------------
>Amy Mikhail
>Research student
>University of Aberdeen
>Zoology Building
>Tillydrone Avenue
>Aberdeen AB24 2TZ
>Scotland
>Email: [hidden email]
>Phone: 00-44-1224-272880 (lab)
Reply | Threaded
Open this post in threaded view
|

Re: Analyse particles: counting eggs query

Joel Sheffield
In reply to this post by Amy Mikhail
You might also try the watershed algorithm to see if you can split
some of the joined profiles.

> Hello all,
>
> I've recently been using the image J "analyse", "analyse particles"
> function to count mosquito eggs (digital photo taken of black eggs on
> white filter paper).
>
> One difficulty is that the eggs tend to stick to each other, and often
> appear lying side by side.  In this instance, Imaje J counts all the
> eggs that are not separate as one.
>
> Manually separating the eggs out without damaging them is quite
> difficult and very time consuming.  Luckily the eggs do not vary much
> in size , so to overcome this problem, I have worked out the size
> range (in pixels) of an average single egg (9 - 22 pixels).  I carry
> out 3 counts:
>
> 1. < 9 pixels
> 2. 9-22 pixles
> 3. > 22 pixels
>
> Particles counted in the first range are too small to be eggs and are
> probably dust / artifacts (large artefacts are removed from the photo
> prior to processing).  Particles in the second range are all the eggs
> that have been counted singly, while particles in the 3rd range are
> eggs that are stuck together and have been counted incorrectly.  To
> get a total (more accurate) count,  I use this formula:
>
> Range 2 Count + (Range 3 total area / range 2 mean particle area).
>
> (Areas are in pixels - means are taken from each photo to account for
> differences in zoom etc)
>
> So here is my query; currently I am using an excel sheet to compute
> the formula - I add the necessary results from Image J manually to the
> excel sheet.  Would it be possible to feed the Image J results I need
> directly into the excel sheet?  If so how would I do this?
>
> BTW we are trying to set up this system to use in experiments where
> large numbers of egg papers will be processed on a daily basis (by
> various people).  Using image J as opposed to counting manually is
> already a vast improvement (both time-wise and in terms of human
> error), so what I'm after is a bit of fine tuning to further expedite
> the process.
>
> Any advice / help on this would be greatly appreciated...
>
> Thanks,
>
> Amy.
>
>
>
> -------------------------------------------
> Amy Mikhail
> Research student
> University of Aberdeen
> Zoology Building
> Tillydrone Avenue
> Aberdeen AB24 2TZ
> Scotland
> Email: [hidden email]
> Phone: 00-44-1224-272880 (lab)


Joel B. Sheffield, Ph.D.
Biology Department, Temple University
1900 North 12th Street
Philadelphia, PA 19122
[hidden email]  
(215) 204 8839, fax (215) 204 0486
http://astro.temple.edu/~jbs
Reply | Threaded
Open this post in threaded view
|

Re: Analyse particles: counting eggs query

Albert Cardona
In reply to this post by Amy Mikhail
Amy,

For counting particles that are touching each other have a look at the WCIF
ImageJ manual and plugin collection:

http://www.uhnresearch.ca/facilities/wcif/imagej/

in section 5. Particle Analysis, 5.1 Automatic Particle counting.

It has been very useful to me for cell counting.

Albert

--


Albert Cardona
Institute of Neuroinformatics     Tel : +41 1 635 3052
University/ETH Zurich             Fax : +41 1 635 3053
Winterthurerstrasse 190           acardona (at) ini phys ethz ch
Zurich 8057, Switzerland          www.ini.unizh.ch
Reply | Threaded
Open this post in threaded view
|

Re: Analyse particles: counting eggs query

Amy Mikhail
In reply to this post by Amy Mikhail
Hi all,

Thanks for all the replies, watershed and euclidian distance was a good
tip ... however I'm also interested in some of the suggestions below
(which I guess touch on similar points);

(a) How would I go about putting my formula in the ImagJ results table as
suggested by JiHo(I'm not a computer programmer, so don't know any Java
but willing to give it a try with some explicit instructions!)

(b)How would I get batch processing to work (Chris)?

Thanks again,

Amy.


> I guess that what you will probably do (if watersheding doesn't solve
> the problem) is to modify the particle analysis plugin and introduce
> a new collum in the results table which is the output of your
> formula. It is not difficult to code it in Java (really, I mean it!)
> and you'll spare you the use of nasty proprietary softwares. ;-)

> JiHO

> OK, first of all, check out Excel_Writer at
> http://rsb.info.nih.gov/ij/plugins/excel-writer.html to automatically
> import your results to an Excel spreadsheet.  You should be able to
count your eggs if they are not too clumped using some variant of the
binary processing Euclidean Distance Map either Ultimate Points or
Watershed segmentation to separate your touching eggs.  However,
division by the egg size may also be satisfactory for your purposes.
There are some errors in any approach you take, but you should be able
to deal with them.
>
> Also, you can do your math right in ImageJ before exporting to Excel if
> you want.  Also, if you have lots of images, you can batch process them,
> thereby automating the whole process and limited only by your hard drive
capacity. Let me know if you need pointers for any or all of these
procedures.

> Chris Coulon



----------------------------------------------------------------------------

>> Hello all,
>>
>> I've recently been using the image J "analyse", "analyse particles"
>> function to count mosquito eggs (digital photo taken of black eggs on
>> white filter paper).
>>
>> One difficulty is that the eggs tend to stick to each other, and often
>> appear lying side by side.  In this instance, Imaje J counts all the
>> eggs
>> that are not separate as one.
>>
>> Manually separating the eggs out without damaging them is quite
>> difficult
>> and very time consuming.  Luckily the eggs do not vary much in size , so
>> to overcome this problem, I have worked out the size range (in pixels)
>> of
>> an average single egg (9 - 22 pixels).  I carry out 3 counts:
>>
>> 1. < 9 pixels
>> 2. 9-22 pixles
>> 3. > 22 pixels
>>
>> Particles counted in the first range are too small to be eggs and are
>> probably dust / artifacts (large artefacts are removed from the photo
>> prior to processing).  Particles in the second range are all the eggs
>> that
>> have been counted singly, while particles in the 3rd range are eggs that
>> are stuck together and have been counted incorrectly.  To get a total
>> (more accurate) count,  I use this formula:
>>
>> Range 2 Count + (Range 3 total area / range 2 mean particle area).
>>
>> (Areas are in pixels - means are taken from each photo to account for
>> differences in zoom etc)
>>
>> So here is my query; currently I am using an excel sheet to compute the
>> formula - I add the necessary results from Image J manually to the excel
>> sheet.  Would it be possible to feed the Image J results I need directly
>> into the excel sheet?  If so how would I do this?
>>
>> BTW we are trying to set up this system to use in experiments where
>> large
>> numbers of egg papers will be processed on a daily basis (by various
>> people).  Using image J as opposed to counting manually is already a
>> vast
>> improvement (both time-wise and in terms of human error), so what I'm
>> after is a bit of fine tuning to further expedite the process.
>>
>> Any advice / help on this would be greatly appreciated...
>


-------------------------------------------
Amy Mikhail
Research student
University of Aberdeen
Zoology Building
Tillydrone Avenue
Aberdeen AB24 2TZ
Scotland
Email: [hidden email]
Phone: 00-44-1224-272880 (lab)