<!DOCTYPE art SYSTEM 'http://www.biomedcentral.com/xml/article.dtd'>
<art>
	<ui>1756-3305-5-122</ui>
	<ji>1756-3305</ji>
	<fm>
		<dochead>Research</dochead>
		<bibl>
			<title>
				<p>A user-friendly software to easily count Anopheles egg batches</p>
			</title>
			<aug>
				<au id="A1"><snm>Mollahosseini</snm><fnm>Ali</fnm><insr iid="I1"/><email>ali.mollahosseini@gmail.com</email></au>
				<au id="A2"><snm>Rossignol</snm><fnm>Marie</fnm><insr iid="I2"/><email>marie.rossignol@ird.fr</email></au>
				<au id="A3"><snm>Pennetier</snm><fnm>C&#233;dric</fnm><insr iid="I3"/><insr iid="I4"/><email>cedric.pennetier@ird.fr</email></au>
				<au id="A4"><snm>Cohuet</snm><fnm>Anna</fnm><insr iid="I2"/><email>anna.cohuet@ird.fr</email></au>
				<au id="A5"><snm>Anjos</snm><fnm>Ant&#243;nio dos</fnm><insr iid="I5"/><email>antoniodosanjos@gmail.com</email></au>
				<au id="A6"><snm>Chandre</snm><fnm>Fabrice</fnm><insr iid="I2"/><email>fabrice.chandre@ird.fr</email></au>
				<au id="A7" ca="yes"><snm>Shahbazkia</snm><mnm>Reza</mnm><fnm>Hamid</fnm><insr iid="I1"/><email>hshah@ualg.pt</email></au>
			</aug>
			<insg>
				<ins id="I1"><p>Departamento de Engenharia Eletr&#243;nica e Inform&#225;tica, Universidade do Algarve, 8008-139 Faro, Portugal</p></ins>
				<ins id="I2"><p>Institut de Recherche pour le D&#233;veloppement, UMR MIVEGEC (UM1-UM2-CNRS 5290-IRD 224), 911 avenue Agropolis, B.P. 64501, 34394 Montpellier Cedex 5, France</p></ins>
				<ins id="I3"><p>Institut de Recherche pour le D&#233;veloppement, UMR MIVEGEC (UM1-UM2-CNRS 5290-IRD 224), Contonou, Benin</p></ins>
				<ins id="I4"><p>Centre de Recherche Entomologique de Cotonou, Ministry of Health, Cotonou, Benin</p></ins>
				<ins id="I5"><p>Departamento de Ci&#234;ncias e Tecnologias, ISMAT - Instituto Superior Manuel Teixeira Gomes, 8500-508 Portim&#227;o, Portugal</p></ins>
			</insg>
			<source>Parasites &amp; Vectors</source>
			<issn>1756-3305</issn>
			<pubdate>2012</pubdate>
			<volume>5</volume>
			<issue>1</issue>
			<fpage>122</fpage>
			<url>http://www.parasitesandvectors.com/content/5/122</url>
			<xrefbib><pubidlist><pubid idtype="doi">10.1186/1756-3305-5-122</pubid><pubid idtype="pmpid">22713553</pubid></pubidlist></xrefbib>
		</bibl>
		<history><rec><date><day>14</day><month>3</month><year>2012</year></date></rec><acc><date><day>10</day><month>5</month><year>2012</year></date></acc><pub><date><day>19</day><month>6</month><year>2012</year></date></pub></history>
		<cpyrt><year>2012</year><collab>Mollahosseini et al.; licensee BioMed Central Ltd.</collab><note>This is an Open Access article distributed under the terms of the Creative Commons Attribution License (<url>http://creativecommons.org/licenses/by/2.0</url>), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</note></cpyrt>
		<abs>
			<sec>
				<st>
					<p>Abstract</p>
				</st>
				<sec>
					<st>
						<p>Background</p>
					</st><p>Studies on malaria vector ecology and development/evaluation of vector control strategies often require measures of mosquito life history traits. Assessing the fecundity of malaria vectors can be carried out by counting eggs laid by Anopheles females. However, manually counting the eggs is time consuming, tedious, and error prone.</p>
				</sec>
				<sec>
					<st>
						<p>Methods</p>
					</st><p>In this paper we present a newly developed software for high precision automatic egg counting. The software written in the Java programming language proposes a user-friendly interface and a complete online manual. It allows the inspection of results by the operator and includes proper tools for manual corrections. The user can in fact correct any details on the acquired results by a mouse click. Time saving is significant and errors due to loss of concentration are avoided.</p>
				</sec>
				<sec>
					<st>
						<p>Results</p>
					</st><p>The software was tested over 16 randomly chosen images from 2 different experiments. The results show that the proposed automatic method produces results that are close to the ground truth.</p>
				</sec>
				<sec>
					<st>
						<p>Conclusions</p>
					</st><p>The proposed approaches demonstrated a very high level of robustness. The adoption of the proposed software package will save many hours of labor to the bench scientist. The software needs no particular configuration and is freely available for download on: <url>http://w3.ualg.pt/&#8764;hshah/eggcounter/</url>.</p>
				</sec>
			</sec>
		</abs>
	</fm>
	<bdy>
		<sec>
			<st>
				<p>Background</p>
			</st><p>Understanding the ecology and evolution of malaria vector species and populations is a key factor in controlling the disease they carry <abbrgrp>
					<abbr bid="B1">1</abbr>
				</abbrgrp>. In several contexts, the estimation of the fitness of Anopheles mosquitoes is required. For instance, this may help to understand adaptation of different populations to given environmental conditions <abbrgrp>
					<abbr bid="B2">2</abbr>
					<abbr bid="B3">3</abbr>
					<abbr bid="B4">4</abbr>
				</abbrgrp> or the opposite <abbrgrp>
					<abbr bid="B5">5</abbr>
					<abbr bid="B6">6</abbr>
					<abbr bid="B7">7</abbr>
				</abbrgrp>, interactions between the vectors and the parasites <abbrgrp>
					<abbr bid="B8">8</abbr>
					<abbr bid="B9">9</abbr>
					<abbr bid="B10">10</abbr>
					<abbr bid="B11">11</abbr>
					<abbr bid="B12">12</abbr>
				</abbrgrp> or the vertebrate hosts <abbrgrp>
					<abbr bid="B13">13</abbr>
				</abbrgrp>. More directly related to vector control, fitness measures can help deciphering the effect of insecticides <abbrgrp>
					<abbr bid="B14">14</abbr>
				</abbrgrp>, including new classes of insect growth regulators <abbrgrp>
					<abbr bid="B15">15</abbr>
				</abbrgrp>, effect of insecticide resistance <abbrgrp>
					<abbr bid="B16">16</abbr>
					<abbr bid="B17">17</abbr>
				</abbrgrp>, genetic manipulation of vector populations to make them resistant to parasites <abbrgrp>
					<abbr bid="B18">18</abbr>
					<abbr bid="B19">19</abbr>
				</abbrgrp>, or to impede their reproductive success. The fecundity is a key variable to assess the fitness of populations. In mosquitoes, it can be measured at several stages, but the number of eggs laid by females is often considered as a good estimate. Depending on the case study, the experiments may involve hundreds of females, possibly over many gonotrophic cycles and generations. As female Anopheles can lay over one hundred eggs every 2-3 days, one experiment only, often involves counting thousands of eggs <abbrgrp>
					<abbr bid="B20">20</abbr>
					<abbr bid="B21">21</abbr>
				</abbrgrp>. Such a task is obviously tedious, time-consuming and prone to errors. These facts make the identification and counting of eggs a natural task for automation.</p><p>As software capable of correctly counting Anopheles eggs laid on filter paper was not available, we developed a fully automatic software together with its own user-friendly interface. Egg-Counter v1.0 has the capacity of counting individual eggs as well as eggs laid in piles. At first, it counts the eggs laid on the paper, excluding the debris. Then, the user is able to modify any details of the presented result by means of a provided user-friendly interface. The software was tested by comparing the automatic and manually corrected results with the number of manually counted eggs, and a precision of 98% was obtained. Egg-Counter is fully written in Java and, therefore, completely platform-independent; it can be downloaded, installed and used within a couple of minutes.</p><p>The rest of this paper is organized as follows: In Methods, the proposed method for processing the images is elaborated. A brief description of the software provided and its features are introduced in Software. Experimental results on 16 different images, taken in different experiments are presented in Results and Discussion.</p>
		</sec>
		<sec>
			<st>
				<p>Methods</p>
			</st><p>Figure <figr fid="F1">1</figr> shows the diagram of the proposed algorithm for counting the eggs of an image. First the color image is converted to a grayscale by flattening the image. A binary map is extracted from the grayscale version of the image by means of image thresholding. Then, each connected component in the map is extracted as an object. To make the software as independent as possible from image resolutions and the camera settings, objects containing just one egg are detected and the size of one egg is estimated. Debris objects are detected and removed based on the original color image. Finally noise is removed and the number of eggs inside each of the remaining objects is calculated according to the estimated size of one egg.</p>
			<fig id="F1"><title><p>Figure 1</p></title><caption><p>
   <b>Proposed approach.</b>
</p></caption><text>
   <p>
      <b>Proposed approach.</b>
   </p>
</text><graphic file="1756-3305-5-122-1"/></fig>
			<sec>
				<st>
					<p>Grayscale Conversion</p>
				</st><p>Color images are converted to grayscale images. Luminance is typically computed as a weighed sum of the color components. The most often used weights were originally developed for encoding analog color television signals as: </p><p>
					<display-formula id="M1">
						<m:math name="1756-3305-5-122-i1" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msub>
   <m:mrow>
      <m:mi>I</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>=</m:mo>
<m:mn>0</m:mn>
<m:mi>.</m:mi>
<m:mn>299</m:mn>
<m:mo>&#215;</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>R</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>+</m:mo>
<m:mn>0</m:mn>
<m:mi>.</m:mi>
<m:mn>587</m:mn>
<m:mo>&#215;</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>G</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>+</m:mo>
<m:mn>0</m:mn>
<m:mi>.</m:mi>
<m:mn>144</m:mn>
<m:mo>&#215;</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>B</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>,</m:mo>
</m:math>
					</display-formula>
				</p><p>where <sub>
						<it>R</it>
						<it>i</it>
					</sub>, <sub>
						<it>G</it>
						<it>i</it>
					</sub> and <sub>
						<it>B</it>
						<it>i</it>
					</sub> are the intensity levels of the red, green, and blue channels of the <sup>
						<it>i</it>
						<it>th</it>
					</sup>pixel respectively. Figures <figr fid="F2">2</figr>(a) and <figr fid="F2">2</figr>(b) show a sample color image of the mosquitoes&#8217; eggs and its resulting grayscale version.</p>
				<fig id="F2"><title><p>Figure 2</p></title><caption><p>
   <b>Sample image of the Anopheles eggs and resulting processed images.</b>
</p></caption><text>
   <p>
      <b>Sample image of the Anopheles eggs and resulting processed images.</b>
   </p>
</text><graphic file="1756-3305-5-122-1"/></fig>
			</sec>
			<sec>
				<st>
					<p>Image Thresholding</p>
				</st><p>As shown in Figure <figr fid="F2">2</figr>(b), the eggs and debris are the dark objects on the white paper. Therefore, a proper binary map of the image can be used to distinguish them from the background. This binary map is defined as: </p><p>
					<display-formula id="M2">
						<m:math name="1756-3305-5-122-i2" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msub>
   <m:mrow>
      <m:mi>B</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>=</m:mo>
<m:mfenced separators="" open="{" close="">
   <m:mrow>
      <m:mtable class="array" columnalign="left">
         <m:mtr>
            <m:mtd>
               <m:mn>1</m:mn>
               <m:mo>,</m:mo>
            </m:mtd>
            <m:mtd>
               <m:mn>if</m:mn>
               <m:mspace width="0.3em"/>
               <m:mspace width="0.3em"/>
               <m:msub>
                  <m:mrow>
                     <m:mi>I</m:mi>
                  </m:mrow>
                  <m:mrow>
                     <m:mi>i</m:mi>
                  </m:mrow>
               </m:msub>
               <m:mo>&#8805;</m:mo>
               <m:msub>
                  <m:mrow>
                     <m:mi>T</m:mi>
                  </m:mrow>
                  <m:mrow>
                     <m:mtext>auto</m:mtext>
                  </m:mrow>
               </m:msub>
            </m:mtd>
         </m:mtr>
         <m:mtr>
            <m:mtd>
               <m:mn>0</m:mn>
               <m:mo>,</m:mo>
            </m:mtd>
            <m:mtd>
               <m:mtext>otherwise.</m:mtext>
            </m:mtd>
         </m:mtr>
      </m:mtable>
   </m:mrow>
</m:mfenced>
</m:math>
					</display-formula>
				</p><p>Where <sub>
						<it>B</it>
						<it>i</it>
					</sub> and <sub>
						<it>I</it>
						<it>i</it>
					</sub> are the binary value and intensity of the <sup>
						<it>i</it>
						<it>th</it>
					</sup>pixel respectively and <sub>
						<it>T</it>auto</sub>is the automatic threshold value based on an entropic thresholding method proposed in <abbrgrp>
						<abbr bid="B22">22</abbr>
					</abbrgrp> as: </p><p>
					<display-formula id="M3">
						<m:math name="1756-3305-5-122-i3" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:munder>
   <m:mrow>
      <m:mo>arg max</m:mo>
   </m:mrow>
   <m:mrow>
      <m:mi>T</m:mi>
   </m:mrow>
</m:munder>
<m:msub>
   <m:mrow>
      <m:mi>C</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>B</m:mi>
   </m:mrow>
</m:msub>
<m:mo>(</m:mo>
<m:mi>T</m:mi>
<m:mo>)</m:mo>
<m:mo>+</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>C</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>F</m:mi>
   </m:mrow>
</m:msub>
<m:mo>(</m:mo>
<m:mi>T</m:mi>
<m:mo>)</m:mo>
<m:mo>,</m:mo>
</m:math>
					</display-formula>
				</p><p>with </p><p>
					<display-formula id="M4">
						<m:math name="1756-3305-5-122-i4" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msub>
   <m:mrow>
      <m:mi>C</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>B</m:mi>
   </m:mrow>
</m:msub>
<m:mo>(</m:mo>
<m:mi>T</m:mi>
<m:mo>)</m:mo>
<m:mo>=</m:mo>
<m:mo>&#8722;</m:mo>
<m:mo>log</m:mo>
<m:munderover>
   <m:mrow>
      <m:mo>&#8721;</m:mo>
   </m:mrow>
   <m:mrow>
      <m:mi>g</m:mi>
      <m:mo>=</m:mo>
      <m:mn>0</m:mn>
   </m:mrow>
   <m:mrow>
      <m:mi>T</m:mi>
   </m:mrow>
</m:munderover>
<m:msup>
   <m:mrow>
      <m:mfenced separators="" open="(" close=")">
         <m:mrow>
            <m:mfrac>
               <m:mrow>
                  <m:mi>p</m:mi>
                  <m:mo>(</m:mo>
                  <m:mi>g</m:mi>
                  <m:mo>)</m:mo>
               </m:mrow>
               <m:mrow>
                  <m:mi>p</m:mi>
                  <m:mo>(</m:mo>
                  <m:mi>T</m:mi>
                  <m:mo>)</m:mo>
               </m:mrow>
            </m:mfrac>
         </m:mrow>
      </m:mfenced>
   </m:mrow>
   <m:mrow>
      <m:mn>2</m:mn>
   </m:mrow>
</m:msup>
<m:mo>,</m:mo>
</m:math>
					</display-formula>
				</p><p>and </p><p>
					<display-formula id="M5">
						<m:math name="1756-3305-5-122-i5" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msub>
   <m:mrow>
      <m:mi>C</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>F</m:mi>
   </m:mrow>
</m:msub>
<m:mo>(</m:mo>
<m:mi>T</m:mi>
<m:mo>)</m:mo>
<m:mo>=</m:mo>
<m:mo>&#8722;</m:mo>
<m:mo>log</m:mo>
<m:munderover>
   <m:mrow>
      <m:mo>&#8721;</m:mo>
   </m:mrow>
   <m:mrow>
      <m:mi>g</m:mi>
      <m:mo>=</m:mo>
      <m:mi>T</m:mi>
      <m:mo>+</m:mo>
      <m:mn>1</m:mn>
   </m:mrow>
   <m:mrow>
      <m:msup>
         <m:mrow>
            <m:mi>T</m:mi>
         </m:mrow>
         <m:mrow>
            <m:mi>&#8243;</m:mi>
         </m:mrow>
      </m:msup>
   </m:mrow>
</m:munderover>
<m:msup>
   <m:mrow>
      <m:mfenced separators="" open="(" close=")">
         <m:mrow>
            <m:mfrac>
               <m:mrow>
                  <m:mi>p</m:mi>
                  <m:mo>(</m:mo>
                  <m:mi>g</m:mi>
                  <m:mo>)</m:mo>
               </m:mrow>
               <m:mrow>
                  <m:mn>1</m:mn>
                  <m:mo>&#8722;</m:mo>
                  <m:mi>p</m:mi>
                  <m:mo>(</m:mo>
                  <m:mi>T</m:mi>
                  <m:mo>)</m:mo>
               </m:mrow>
            </m:mfrac>
         </m:mrow>
      </m:mfenced>
   </m:mrow>
   <m:mrow>
      <m:mn>2</m:mn>
   </m:mrow>
</m:msup>
<m:mi>.</m:mi>
</m:math>
					</display-formula>
				</p><p>Where <sub>
						<it>T</it>auto</sub> is the value of <it>T</it> that makes <sub>
						<it>C</it>
						<it>B</it>
					</sub>(<it>T</it>) + <sub>
						<it>C</it>
						<it>F</it>
					</sub>(<it>T</it>) maximum, <it>p</it>(<it>g</it>) is the probability of intensity level <it>g</it> and <it>p</it>(<it>T</it>) is the cumulative probability function. Unlike the original method <abbrgrp>
						<abbr bid="B22">22</abbr>
					</abbrgrp>, here <inline-formula>
						<m:math name="1756-3305-5-122-i6" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msup>
   <m:mrow>
      <m:mi>T</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>&#8243;</m:mi>
   </m:mrow>
</m:msup>
</m:math>
					</inline-formula> controls the maximum value of threshold in order to remove high exposure in the images caused by flash where empirically <inline-formula>
						<m:math name="1756-3305-5-122-i7" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msup>
   <m:mrow>
      <m:mi>T</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>&#8243;</m:mi>
   </m:mrow>
</m:msup>
<m:mo>&#8712;</m:mo>
<m:mo>[</m:mo>
<m:mn>160</m:mn>
<m:mo>,</m:mo>
<m:mn>180</m:mn>
<m:mo>]</m:mo>
</m:math>
					</inline-formula>. Figure <figr fid="F2">2</figr>(c) shows the resulting binary map of the sample image. As it is shown eggs and debris are properly extracted, after the automatic threshold is found.</p>
			</sec>
			<sec>
				<st>
					<p>Object Extraction</p>
				</st><p>In this step eggs and debris are detected by extracting eight-connected neighborhood components. Putting it simply, connected component labeling is the process of assigning labels to the foreground elements in such a way that adjacent foreground elements are assigned to the same label <abbrgrp>
						<abbr bid="B23">23</abbr>
					</abbrgrp>. Here, adjacent means 8-adjacent pixels neighborhood.</p>
			</sec>
			<sec>
				<st>
					<p>Egg Size Estimation</p>
				</st><p>Usually, a single mosquito egg has an elongated ellipse shape, while a pile of eggs looks more circular (see Figure <figr fid="F2">2</figr>(b)). Therefore, the eccentricity of the object is used to distinguish single eggs from the piles of eggs. Eccentricity measures how much an object deviates from being circular. It is the ratio of the distance between the foci and its major axis length <abbrgrp>
						<abbr bid="B24">24</abbr>
					</abbrgrp>, defined as: </p><p>
					<display-formula id="M6">
						<m:math name="1756-3305-5-122-i8" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:mi>e</m:mi>
<m:mo>=</m:mo>
<m:msqrt>
   <m:mrow>
      <m:mn>1</m:mn>
      <m:mo>&#8722;</m:mo>
      <m:mfrac>
         <m:mrow>
            <m:msub>
               <m:mrow>
                  <m:mi>&#955;</m:mi>
               </m:mrow>
               <m:mrow>
                  <m:mn>1</m:mn>
               </m:mrow>
            </m:msub>
         </m:mrow>
         <m:mrow>
            <m:msub>
               <m:mrow>
                  <m:mi>&#955;</m:mi>
               </m:mrow>
               <m:mrow>
                  <m:mn>2</m:mn>
               </m:mrow>
            </m:msub>
         </m:mrow>
      </m:mfrac>
   </m:mrow>
</m:msqrt>
<m:mo>,</m:mo>
</m:math>
					</display-formula>
				</p><p>
					<display-formula id="M7">
						<m:math name="1756-3305-5-122-i9" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msub>
   <m:mrow>
      <m:mi>&#955;</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>=</m:mo>
<m:mfrac>
   <m:mrow>
      <m:msub>
         <m:mrow>
            <m:msup>
               <m:mrow>
                  <m:mi>&#956;</m:mi>
               </m:mrow>
               <m:mrow>
                  <m:mi>&#8243;</m:mi>
               </m:mrow>
            </m:msup>
         </m:mrow>
         <m:mrow>
            <m:mn>20</m:mn>
         </m:mrow>
      </m:msub>
      <m:mo>+</m:mo>
      <m:msub>
         <m:mrow>
            <m:msup>
               <m:mrow>
                  <m:mi>&#956;</m:mi>
               </m:mrow>
               <m:mrow>
                  <m:mi>&#8243;</m:mi>
               </m:mrow>
            </m:msup>
         </m:mrow>
         <m:mrow>
            <m:mn>02</m:mn>
         </m:mrow>
      </m:msub>
   </m:mrow>
   <m:mrow>
      <m:mn>2</m:mn>
   </m:mrow>
</m:mfrac>
<m:mo>&#177;</m:mo>
<m:mfrac>
   <m:mrow>
      <m:msqrt>
         <m:mrow>
            <m:mn>4</m:mn>
            <m:msub>
               <m:mrow>
                  <m:msup>
                     <m:mrow>
                        <m:mi>&#956;</m:mi>
                     </m:mrow>
                     <m:mrow>
                        <m:mi>&#8243;</m:mi>
                     </m:mrow>
                  </m:msup>
               </m:mrow>
               <m:mrow>
                  <m:mn>11</m:mn>
               </m:mrow>
            </m:msub>
            <m:mo>+</m:mo>
            <m:msup>
               <m:mrow>
                  <m:mo>(</m:mo>
                  <m:msub>
                     <m:mrow>
                        <m:msup>
                           <m:mrow>
                              <m:mi>&#956;</m:mi>
                           </m:mrow>
                           <m:mrow>
                              <m:mi>&#8243;</m:mi>
                           </m:mrow>
                        </m:msup>
                     </m:mrow>
                     <m:mrow>
                        <m:mn>20</m:mn>
                     </m:mrow>
                  </m:msub>
                  <m:mo>&#8722;</m:mo>
                  <m:msub>
                     <m:mrow>
                        <m:msup>
                           <m:mrow>
                              <m:mi>&#956;</m:mi>
                           </m:mrow>
                           <m:mrow>
                              <m:mi>&#8243;</m:mi>
                           </m:mrow>
                        </m:msup>
                     </m:mrow>
                     <m:mrow>
                        <m:mn>02</m:mn>
                     </m:mrow>
                  </m:msub>
                  <m:mo>)</m:mo>
               </m:mrow>
               <m:mrow>
                  <m:mn>2</m:mn>
               </m:mrow>
            </m:msup>
         </m:mrow>
      </m:msqrt>
   </m:mrow>
   <m:mrow>
      <m:mn>2</m:mn>
   </m:mrow>
</m:mfrac>
<m:mi>.</m:mi>
</m:math>
					</display-formula>
				</p><p>Where <inline-formula>
						<m:math name="1756-3305-5-122-i10" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msub>
   <m:mrow>
      <m:msup>
         <m:mrow>
            <m:mi>&#956;</m:mi>
         </m:mrow>
         <m:mrow>
            <m:mi>&#8243;</m:mi>
         </m:mrow>
      </m:msup>
   </m:mrow>
   <m:mrow>
      <m:mi>mn</m:mi>
   </m:mrow>
</m:msub>
</m:math>
					</inline-formula> is the central moment of order (<it>m</it>
					<it>n</it>), defined as: </p><p>
					<display-formula id="M8">
						<m:math name="1756-3305-5-122-i11" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msubsup>
   <m:mrow>
      <m:mi>&#956;</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>mn</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>&#8243;</m:mi>
   </m:mrow>
</m:msubsup>
<m:mo>=</m:mo>
<m:munder>
   <m:mrow>
      <m:mo>&#8721;</m:mo>
   </m:mrow>
   <m:mrow>
      <m:mfenced separators="" open="(" close=")">
         <m:mrow>
            <m:mi>u</m:mi>
            <m:mo>,</m:mo>
            <m:mi>v</m:mi>
         </m:mrow>
      </m:mfenced>
      <m:mo>&#8712;</m:mo>
      <m:mi>R</m:mi>
   </m:mrow>
</m:munder>
<m:msup>
   <m:mrow>
      <m:mfenced separators="" open="(" close=")">
         <m:mrow>
            <m:mi>u</m:mi>
            <m:mo>&#8722;</m:mo>
            <m:mover accent="true">
               <m:mrow>
                  <m:mi>x</m:mi>
               </m:mrow>
               <m:mo>&#772;</m:mo>
            </m:mover>
         </m:mrow>
      </m:mfenced>
   </m:mrow>
   <m:mrow>
      <m:mi>p</m:mi>
   </m:mrow>
</m:msup>
<m:msup>
   <m:mrow>
      <m:mfenced separators="" open="(" close=")">
         <m:mrow>
            <m:mi>v</m:mi>
            <m:mo>&#8722;</m:mo>
            <m:mover accent="true">
               <m:mrow>
                  <m:mi>x</m:mi>
               </m:mrow>
               <m:mo>&#772;</m:mo>
            </m:mover>
         </m:mrow>
      </m:mfenced>
   </m:mrow>
   <m:mrow>
      <m:mi>q</m:mi>
   </m:mrow>
</m:msup>
<m:mo>,</m:mo>
</m:math>
					</display-formula>
				</p><p>where <inline-formula>
						<m:math name="1756-3305-5-122-i12" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:mfenced separators="" open="(" close=")">
   <m:mrow>
      <m:mover accent="true">
         <m:mrow>
            <m:mi>x</m:mi>
         </m:mrow>
         <m:mo>&#772;</m:mo>
      </m:mover>
      <m:mo>,</m:mo>
      <m:mover accent="true">
         <m:mrow>
            <m:mi>y</m:mi>
         </m:mrow>
         <m:mo>&#772;</m:mo>
      </m:mover>
   </m:mrow>
</m:mfenced>
</m:math>
					</inline-formula> is the centroid of the object and <inline-formula>
						<m:math name="1756-3305-5-122-i13" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:mfenced separators="" open="(" close=")">
   <m:mrow>
      <m:mi>u</m:mi>
      <m:mo>,</m:mo>
      <m:mi>v</m:mi>
   </m:mrow>
</m:mfenced>
<m:mo>&#8712;</m:mo>
<m:mi>R</m:mi>
</m:math>
					</inline-formula> represents whole set of pixel coordinates inside the object. The value of the eccentricity falls in the interval [0,1]. A value of one indicates a perfect circle and zero indicates a line segment. In this step, the objects with high eccentricity, <sub>
						<it>e</it>1</sub>&lt;<it>e</it>&lt;<sub>
						<it>e</it>2</sub>, are selected as eggs. Values of <sub>
						<it>e</it>1</sub>
					<sub>
						<it>e</it>2</sub>can be set from 0.95 up to 0.99. Experimental results show that more than 80% of the components containing one egg are in this range. Finally, the mode of the size of the candidate objects is chosen as the estimated size for one egg.</p>
			</sec>
			<sec>
				<st>
					<p>Debris Detection</p>
				</st><p>Debris are black regions extracted on the binary map (see Figure <figr fid="F2">2</figr>(b) and <figr fid="F2">2</figr>(c)) that could be assessed as eggs on the binary map. Nevertheless, a yellow brownish area often presents around the regions of debris (see Figure <figr fid="F2">2</figr>(a)) that can be used to detect debris. For extracting the brownish area near the debris, a chroma value for each pixel is defined as: </p><p>
					<display-formula id="M9">
						<m:math name="1756-3305-5-122-i14" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:msub>
   <m:mrow>
      <m:mi>C</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>=</m:mo>
<m:mo>max</m:mo>
<m:mo>(</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>R</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>,</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>G</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>,</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>B</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>)</m:mo>
<m:mo>&#8722;</m:mo>
<m:mo>min</m:mo>
<m:mo>(</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>R</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>,</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>G</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>,</m:mo>
<m:msub>
   <m:mrow>
      <m:mi>B</m:mi>
   </m:mrow>
   <m:mrow>
      <m:mi>i</m:mi>
   </m:mrow>
</m:msub>
<m:mo>)</m:mo>
<m:mi>.</m:mi>
</m:math>
					</display-formula>
				</p><p>In this step, the objects that have at least <it>X</it> pixels with <it>C</it>&gt;<sub>
						<it>C</it>
						<it>E</it>
					</sub> in their radii <it>r</it> are considered as debris. Parameter <sub>
						<it>C</it>
						<it>E</it>
					</sub>is 0.15 by default, but the application allows the user to tune it, resulting in a change of the detection sensitivity. Because eggs have a dark color and the paper is white, the rate of true negatives (considering non-debris areas as debris) is negligible and it only happens for the eggs that are inside the yellow brownish area.</p>
			</sec>
			<sec>
				<st>
					<p>Egg Count and Noise Removal</p>
				</st><p>The number of the eggs <it>N</it> inside the object <it>i</it>, is estimated as: </p><p>
					<display-formula id="M10">
						<m:math name="1756-3305-5-122-i15" xmlns:m="http://www.w3.org/1998/Math/MathML"><m:mi>N</m:mi>
<m:mo>(</m:mo>
<m:mi>i</m:mi>
<m:mo>)</m:mo>
<m:mo>=</m:mo>
<m:mfenced separators="" open="{" close="">
   <m:mrow>
      <m:mtable class="array" columnalign="left">
         <m:mtr>
            <m:mtd>
               <m:mo>&#8741;</m:mo>
               <m:mfrac>
                  <m:mrow>
                     <m:mi>A</m:mi>
                     <m:mo>(</m:mo>
                     <m:mi>i</m:mi>
                     <m:mo>)</m:mo>
                  </m:mrow>
                  <m:mrow>
                     <m:mi>S</m:mi>
                  </m:mrow>
               </m:mfrac>
               <m:mo>&#8741;</m:mo>
               <m:mo>,</m:mo>
            </m:mtd>
            <m:mtd>
               <m:mi>A</m:mi>
               <m:mo>(</m:mo>
               <m:mi>i</m:mi>
               <m:mo>)</m:mo>
               <m:mo>&#8804;</m:mo>
               <m:mn>2</m:mn>
               <m:mo>&#215;</m:mo>
               <m:mi>S</m:mi>
            </m:mtd>
         </m:mtr>
         <m:mtr>
            <m:mtd>
               <m:mo>&#8741;</m:mo>
               <m:mfrac>
                  <m:mrow>
                     <m:mi>A</m:mi>
                     <m:mo>(</m:mo>
                     <m:mi>i</m:mi>
                     <m:mo>)</m:mo>
                     <m:mo>&#215;</m:mo>
                     <m:mi>C</m:mi>
                  </m:mrow>
                  <m:mrow>
                     <m:mi>S</m:mi>
                  </m:mrow>
               </m:mfrac>
               <m:mo>&#8741;</m:mo>
               <m:mo>,</m:mo>
            </m:mtd>
            <m:mtd>
               <m:mtext>otherwise,</m:mtext>
            </m:mtd>
         </m:mtr>
      </m:mtable>
   </m:mrow>
</m:mfenced>
</m:math>
					</display-formula>
				</p><p>where <it>A</it>(<it>i</it>) is the area of the object, <it>S</it> is the estimated size of one egg, &#8741;.&#8741; is the round function and <it>C</it> is the accumulative ratio which should be less than one. The accumulative ratio is necessary due to the fact that regions in the intersection of the eggs inside a pile are shadowed by the eggs and are usually considered as a connected object in the binary map. Therefore, multiplying by this ratio allows better estimation of the number of eggs.</p><p>It should be mentioned that thresholding may produce noise, especially in the grid lines of the paper. There are many methods for noise reduction such as low-pass filters and other smoothing operators. However, these methods highly depend on the size of the filter. Here components smaller than half of the estimated size of one egg, are considered as noise in the Equation (10), and are removed.</p>
			</sec>
		</sec>
		<sec>
			<st>
				<p>Software</p>
			</st><p>The algorithm explained above, has been implemented in Java as open source software. After the user opens an image, the software automatically computes the threshold value, detects and removes areas of debris, estimates the number of eggs inside each pile of the eggs and removes the noise. After that, the user is able to remove, add, and edit the automatically detected features by means of a user-friendly graphical interface. Figure <figr fid="F3">3</figr> shows the basic graphical user interface of the software. The user can zoom, select single and/or multiple objects, modify their properties etc. and after each modification the total number of eggs is recalculated.</p>
			<fig id="F3"><title><p>Figure 3</p></title><caption><p><b>Basic graphical user interface.</b> Zoom utility signaled by &#8216;a&#8217;, and egg count by &#8216;b&#8217;</p></caption><text>
   <p><b>Basic graphical user interface.</b> Zoom utility signaled by &#8216;a&#8217;, and egg count by &#8216;b&#8217;.</p>
</text><graphic file="1756-3305-5-122-1"/></fig><p>Figure <figr fid="F4">4</figr> shows advanced options of the software, which allows the user to change the sensitivity of the thresholding as well as the sensitivity of the debris detection process. Finally, the user can save the results as an image indicating the number of eggs beside each object as well as the total number of eggs. Figure <figr fid="F2">2</figr>(d) shows a sample output of the software, and Figure <figr fid="F2">2</figr>(e) shows the result after a small manually modification. The application estimated 103 eggs and, after manual modification, it showed 92 eggs. Corrections are mainly required on the debris areas without enough colorful pixels beside them, and eggs that fall in the neighborhood of debris areas.</p>
			<fig id="F4"><title><p>Figure 4</p></title><caption><p><b>Advanced graphical user interface.</b> &#8216;c&#8217; signals the advanced features for changing the automatic threshold and chroma value. &#8216;b&#8217; signals a manually corrected egg</p></caption><text>
   <p><b>Advanced graphical user interface.</b> &#8216;c&#8217; signals the advanced features for changing the automatic threshold and chroma value. &#8216;b&#8217; signals a manually corrected egg.</p>
</text><graphic file="1756-3305-5-122-1"/></fig>
		</sec>
		<sec>
			<st>
				<p>Results and Discussion</p>
			</st><p>The software was tested over 16 randomly chosen images from 2 different experiments. Table <tblr tid="T1">1</tblr> shows the number of the eggs estimated by the software; the result after manually correction; the ground truth; the time that the application took in seconds; and the average time for manually counting in minutes.</p>
			<table id="T1">
				<title>
					<p>Table 1</p>
				</title>
				<caption>
					<p>
						<b>Results of 16 different images</b>
					</p>
				</caption>
				<tgroup cols="6">
					<thead valign="top">
						<row rowsep="1">
							<entry align="left" colname="c1" nameend="6" namest="1"/>
						</row>
						<row>
							<entry align="left" colname="c1">
								<p>Image</p>
							</entry>
							<entry align="center" colname="c2">
								<p>Ground Truth/</p>
							</entry>
							<entry align="center" colname="c3">
								<p>Auto./</p>
							</entry>
							<entry align="center" colname="c4">
								<p>Mouse</p>
							</entry>
							<entry align="center" colname="c5">
								<p>Output/</p>
							</entry>
							<entry align="center" colname="c6">
								<p>Missed</p>
							</entry>
						</row>
						<row rowsep="1">
							<entry align="left" colname="c1">
								<p>Ref.</p>
							</entry>
							<entry align="center" colname="c2">
								<p>MINUTES</p>
							</entry>
							<entry align="center" colname="c3">
								<p>Sens.</p>
							</entry>
							<entry align="center" colname="c4">
								<p>Clicks</p>
							</entry>
							<entry align="center" colname="c5">
								<p>SECONDS</p>
							</entry>
							<entry align="center" colname="c6">
								<p>Eggs</p>
							</entry>
						</row>
					</thead>
					<tfoot>
						<p>
							<sup>#</sup>Automatic sensitivity failed and the software needed to be restarted.</p><p>
							<sup>&#8727;</sup>Results after correction of sensitivity.</p><p>Column &#8220;Auto. / Sens.&#8221; presents both the automatically detected eggs using the default parameters and after adjusting the sensitivity parameter.</p>
					</tfoot>
					<tbody valign="top">
						<row>
							<entry align="justify" colname="c1">
								<p>01</p>
							</entry>
							<entry align="center" colname="c2">
								<p>702 / 29</p>
							</entry>
							<entry align="center" colname="c3">
								<p>707</p>
							</entry>
							<entry align="center" colname="c4">
								<p>4</p>
							</entry>
							<entry align="center" colname="c5">
								<p>711 / 9</p>
							</entry>
							<entry align="center" colname="c6">
								<p>1%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>02</p>
							</entry>
							<entry align="center" colname="c2">
								<p>342 / 20</p>
							</entry>
							<entry align="center" colname="c3">
								<p>320</p>
							</entry>
							<entry align="center" colname="c4">
								<p>8</p>
							</entry>
							<entry align="center" colname="c5">
								<p>366 / 18</p>
							</entry>
							<entry align="center" colname="c6">
								<p>7%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>03</p>
							</entry>
							<entry align="center" colname="c2">
								<p>608 / 40<sup>#</sup>
								</p>
							</entry>
							<entry align="center" colname="c3">
								<p>399 / 620</p>
							</entry>
							<entry align="center" colname="c4">
								<p>1<sup>1*</sup>
								</p>
							</entry>
							<entry align="center" colname="c5">
								<p>620 / 35</p>
							</entry>
							<entry align="center" colname="c6">
								<p>2%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>04</p>
							</entry>
							<entry align="center" colname="c2">
								<p>391 / 21</p>
							</entry>
							<entry align="center" colname="c3">
								<p>277 / 400</p>
							</entry>
							<entry align="center" colname="c4">
								<p>1<sup>2*</sup>
								</p>
							</entry>
							<entry align="center" colname="c5">
								<p>400 / 35</p>
							</entry>
							<entry align="center" colname="c6">
								<p>2%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>05</p>
							</entry>
							<entry align="center" colname="c2">
								<p>372 / 21</p>
							</entry>
							<entry align="center" colname="c3">
								<p>314 / 363</p>
							</entry>
							<entry align="center" colname="c4">
								<p>0<sup>3*</sup>
								</p>
							</entry>
							<entry align="center" colname="c5">
								<p>363 / 25</p>
							</entry>
							<entry align="center" colname="c6">
								<p>2%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>06</p>
							</entry>
							<entry align="center" colname="c2">
								<p>219 / 20</p>
							</entry>
							<entry align="center" colname="c3">
								<p>212</p>
							</entry>
							<entry align="center" colname="c4">
								<p>0</p>
							</entry>
							<entry align="center" colname="c5">
								<p>219 / 18</p>
							</entry>
							<entry align="center" colname="c6">
								<p>0%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>07</p>
							</entry>
							<entry align="center" colname="c2">
								<p>460 / 27</p>
							</entry>
							<entry align="center" colname="c3">
								<p>478</p>
							</entry>
							<entry align="center" colname="c4">
								<p>3</p>
							</entry>
							<entry align="center" colname="c5">
								<p>455 / 20</p>
							</entry>
							<entry align="center" colname="c6">
								<p>1%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>08</p>
							</entry>
							<entry align="center" colname="c2">
								<p>086 / 15</p>
							</entry>
							<entry align="center" colname="c3">
								<p>102</p>
							</entry>
							<entry align="center" colname="c4">
								<p>2</p>
							</entry>
							<entry align="center" colname="c5">
								<p>89 / 18</p>
							</entry>
							<entry align="center" colname="c6">
								<p>3%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>09</p>
							</entry>
							<entry align="center" colname="c2">
								<p>114 / 20</p>
							</entry>
							<entry align="center" colname="c3">
								<p>118</p>
							</entry>
							<entry align="center" colname="c4">
								<p>1</p>
							</entry>
							<entry align="center" colname="c5">
								<p>119 / 18</p>
							</entry>
							<entry align="center" colname="c6">
								<p>4%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>10</p>
							</entry>
							<entry align="center" colname="c2">
								<p>280 / 21</p>
							</entry>
							<entry align="center" colname="c3">
								<p>300</p>
							</entry>
							<entry align="center" colname="c4">
								<p>5</p>
							</entry>
							<entry align="center" colname="c5">
								<p>272 / 20</p>
							</entry>
							<entry align="center" colname="c6">
								<p>2%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>11</p>
							</entry>
							<entry align="center" colname="c2">
								<p>352 / 25</p>
							</entry>
							<entry align="center" colname="c3">
								<p>342</p>
							</entry>
							<entry align="center" colname="c4">
								<p>5</p>
							</entry>
							<entry align="center" colname="c5">
								<p>360 / 20</p>
							</entry>
							<entry align="center" colname="c6">
								<p>2%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>12</p>
							</entry>
							<entry align="center" colname="c2">
								<p>480 / 25</p>
							</entry>
							<entry align="center" colname="c3">
								<p>701</p>
							</entry>
							<entry align="center" colname="c4">
								<p>2</p>
							</entry>
							<entry align="center" colname="c5">
								<p>489 / 20</p>
							</entry>
							<entry align="center" colname="c6">
								<p>2%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>13</p>
							</entry>
							<entry align="center" colname="c2">
								<p>022 / 06</p>
							</entry>
							<entry align="center" colname="c3">
								<p>23</p>
							</entry>
							<entry align="center" colname="c4">
								<p>1</p>
							</entry>
							<entry align="center" colname="c5">
								<p>22 / 15</p>
							</entry>
							<entry align="center" colname="c6">
								<p>0%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>14</p>
							</entry>
							<entry align="center" colname="c2">
								<p>297 / 20</p>
							</entry>
							<entry align="center" colname="c3">
								<p>267</p>
							</entry>
							<entry align="center" colname="c4">
								<p>19</p>
							</entry>
							<entry align="center" colname="c5">
								<p>297 / 115</p>
							</entry>
							<entry align="center" colname="c6">
								<p>0%</p>
							</entry>
						</row>
						<row>
							<entry align="justify" colname="c1">
								<p>15</p>
							</entry>
							<entry align="center" colname="c2">
								<p>331 / 21</p>
							</entry>
							<entry align="center" colname="c3">
								<p>358</p>
							</entry>
							<entry align="center" colname="c4">
								<p>9</p>
							</entry>
							<entry align="center" colname="c5">
								<p>331 / 110</p>
							</entry>
							<entry align="center" colname="c6">
								<p>0%</p>
							</entry>
						</row>
						<row rowsep="1">
							<entry align="justify" colname="c1">
								<p>16</p>
							</entry>
							<entry align="center" colname="c2">
								<p>311 / 20</p>
							</entry>
							<entry align="center" colname="c3">
								<p>302</p>
							</entry>
							<entry align="center" colname="c4">
								<p>9</p>
							</entry>
							<entry align="center" colname="c5">
								<p>311 / 110</p>
							</entry>
							<entry align="center" colname="c6">
								<p>0%</p>
							</entry>
						</row>
					</tbody>
				</tgroup>
			</table><p>As it is shown in the error rate column, the precision of the software after a first correction is on average more than 98%, whereas the time saved is enormous. For image number 3, the automatic processing was very poor and the user had to manually set the sensitivity parameters. It should be mentioned that a proper sensitivity can be easily found by just adjusting a sliding bar. Manually counting all eggs of an image containing more than 500 eggs can take up to 30 minutes but, the same image, can be processed by Egg-Counter v1.0 in only a few seconds.</p><p>The results show that the proposed automatic method produces results that are close to the ground truth, and by making a few adjustments, mainly in the regions of debris and the paper&#8217;s grid lines, these results get even closer to the ground truth. Multiplying the time gained by the number of images and experiments, results in economizing an extremely large amount of time. The sensitivity value of the test results for assessing the eggs is around 0.945 in the fully automatic use of the software and is higher after a few mouse clicks. The specificity value, in this case, makes no sense since the true negatives are not actually known. Elimination of thousands of noise pixels during different stages of the analysis does not allow a reliable calculation of the specificity of the software. Positive predictive value of the test is set around 0.921 for the full automatic version.</p><p>The proposed algorithm works well, if eggs are clearly darker than the background paper, even if they are brown or another dark color. To introduce better and higher contrast and a wider color difference between the paper and laid eggs, we suggest using white or semi-white paper. In addition, it is highly recommended to take images with a camera of at least 5M pixels, using the lowest ISO and maximum shutter speed and avoiding re-sizing the images afterwards. Depending on your Laboratory lightning conditions, you might need to use a flash.</p>
		</sec>
		<sec>
			<st>
				<p>Conclusion</p>
			</st><p>In this article, a promising new software package for automatically counting Anopheles eggs was presented. A very intuitive graphical user interface is available, that allows correction of the detection results, if needed. Additionally, in the parameters section of the interface it is possible to control the sensitivity to egg detection. Nevertheless, the proposed approaches involved in the processing of such images demonstrated a very high level of robustness, as it was shown by the results. The adoption of the proposed software package will save many hours of labor for the bench scientist.</p>
		</sec>
		<sec>
			<st>
				<p>Competing interests</p>
			</st><p>The authors declare that they have no competing interests.</p>
		</sec>
		<sec>
			<st>
				<p>Author&#8217;s contributions</p>
			</st><p>Ali Mollahosseini, Ant&#243;nio dos Anjos and Hamid Reza Shahbazkia contributed with the proposed methods and software and Marie Rossignol, C&#233;dric Pennetier, Anna Cohuet and Fabrice Chandre for testing and providing the necessary material. All authors read and approved the final version of the manuscript.</p>
		</sec>
	</bdy>
	<bm>
		<ack>
			<sec>
				<st>
					<p>Acknowledgements</p>
				</st><p>We would like to acknowledge IRD MIVEGEC Montpellier and DEEI UALG for having provided the necessary backup. We would like to thank Prof. Chris Arme, the editor of Parasites &amp; Vectors, and the anonymous reviewers for their insightful and constructive comments.</p>
			</sec>
		</ack>
		<refgrp><bibl id="B1"><title><p>Ecology: A prerequisite for malaria elimination and eradication</p></title><aug><au><snm>Ferguson</snm><fnm>HM</fnm></au><au><snm>Dornhaus</snm><fnm>A</fnm></au><au><snm>Beeche</snm><fnm>A</fnm></au><au><snm>Borgemeister</snm><fnm>C</fnm></au><au><snm>Gottlieb</snm><fnm>M</fnm></au><au><snm>Mulla</snm><fnm>MS</fnm></au><au><snm>Gimnig</snm><fnm>JE</fnm></au><au><snm>Fish</snm><fnm>D</fnm></au><au><snm>Killeen</snm><fnm>GF</fnm></au></aug><source>PLoS Med</source><pubdate>2010</pubdate><volume>7</volume><issue>8</issue><fpage>e1000303</fpage><xrefbib><pubidlist><pubid idtype="doi">10.1371/journal.pmed.1000303</pubid><pubid idtype="pmcid">2914634</pubid><pubid idtype="pmpid" link="fulltext">20689800</pubid></pubidlist></xrefbib></bibl><bibl id="B2"><title><p>Reproductive output of female Anopheles gambiae (Diptera: Culicidae): comparison of molecular forms</p></title><aug><au><snm>Yaro</snm><fnm>AS</fnm></au><au><snm>Dao</snm><fnm>A</fnm></au><au><snm>Adamou</snm><fnm>A</fnm></au><au><snm>Crawford</snm><fnm>JE</fnm></au><au><snm>Traor&#233;</snm><fnm>SF</fnm></au><au><snm>Tour&#233;</snm><fnm>AM</fnm></au><au><snm>Gwadz</snm><fnm>R</fnm></au><au><snm>Lehmann</snm><fnm>T</fnm></au></aug><source>J Med Entomol</source><pubdate>2006</pubdate><volume>43</volume><issue>5</issue><fpage>833</fpage><lpage>839</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1603/0022-2585(2006)43[833:ROOFAG]2.0.CO;2</pubid><pubid idtype="pmpid">17017216</pubid></pubidlist></xrefbib></bibl><bibl id="B3"><title><p>Species B of Anopheles culicifacies (Diptera: Culicidae) is reproductively less fit than species A and C of the complex</p></title><aug><au><snm>Sharma</snm><fnm>A</fnm></au><au><snm>Parasher</snm><fnm>H</fnm></au><au><snm>Singh</snm><fnm>OP</fnm></au><au><snm>Adak</snm><fnm>T</fnm></au></aug><source>Acta Tropica</source><pubdate>2009</pubdate><volume>112</volume><issue>3</issue><fpage>316</fpage><lpage>319</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1016/j.actatropica.2009.08.006</pubid><pubid idtype="pmpid" link="fulltext">19679093</pubid></pubidlist></xrefbib></bibl><bibl id="B4"><title><p>Comparative fecundity and associated factors for two sibling species of the Anopheles gambiae complex occurring sympatrically in The Gambia</p></title><aug><au><snm>Hogg</snm><fnm>JC</fnm></au><au><snm>Thomson</snm><fnm>MC</fnm></au><au><snm>Hurd</snm><fnm>H</fnm></au></aug><source>Med Vet Entomol</source><pubdate>1996</pubdate><volume>10</volume><issue>4</issue><fpage>385</fpage><lpage>391</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1111/j.1365-2915.1996.tb00761.x</pubid><pubid idtype="pmpid">8994142</pubid></pubidlist></xrefbib></bibl><bibl id="B5"><title><p>Effect of discriminative plant-sugar feeding on the survival and fecundity of Anopheles gambiae</p></title><aug><au><snm>Manda</snm><fnm>H</fnm></au><au><snm>Gouagna</snm><fnm>LC</fnm></au><au><snm>Foster</snm><fnm>WA</fnm></au><au><snm>Jackson</snm><fnm>RR</fnm></au><au><snm>Beier</snm><fnm>JC</fnm></au><au><snm>Githure</snm><fnm>JI</fnm></au><au><snm>Hassanali</snm><fnm>A</fnm></au></aug><source>Malaria Journal</source><pubdate>2007</pubdate><volume>6</volume><fpage>113</fpage><lpage>124</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1186/1475-2875-6-113</pubid><pubid idtype="pmcid">2034389</pubid><pubid idtype="pmpid" link="fulltext">17711580</pubid></pubidlist></xrefbib></bibl><bibl id="B6"><title><p>Effects of available sugar on the reproductive fitness and vectorial capacity of the malaria vector Anopheles gambiae (Diptera: Culicidae)</p></title><aug><au><snm>Gary</snm><fnm>RE</fnm></au><au><snm>Foster</snm><fnm>WA</fnm></au></aug><source>J Med Entomol</source><pubdate>2001</pubdate><volume>38</volume><fpage>22</fpage><lpage>28</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1603/0022-2585-38.1.22</pubid><pubid idtype="pmpid">11268686</pubid></pubidlist></xrefbib></bibl><bibl id="B7"><title><p>Influence of soil quality in the larval habitat on development of Anopheles gambiae Giles</p></title><aug><au><snm>Pfaehler</snm><fnm>O</fnm></au><au><snm>Oulo</snm><fnm>DO</fnm></au><au><snm>Gouagna</snm><fnm>LC</fnm></au><au><snm>Githure</snm><fnm>J</fnm></au><au><snm>Guerin</snm><fnm>PM</fnm></au></aug><source>J Vector Ecol</source><pubdate>2006</pubdate><volume>31</volume><issue>2</issue><fpage>400</fpage><lpage>405</lpage><xrefbib><pubidlist><pubid idtype="doi">10.3376/1081-1710(2006)31[400:IOSQIT]2.0.CO;2</pubid><pubid idtype="pmpid">17249359</pubid></pubidlist></xrefbib></bibl><bibl id="B8"><title><p>Reproductive success in Anopheles arabiensis and the M and S molecular forms of Anopheles gambiae: Do natural sporozoite infection and body size matter?</p></title><aug><au><snm>Yaro</snm><fnm>AS</fnm></au><au><snm>Tour&#233;</snm><fnm>AM</fnm></au><au><snm>Guindo</snm><fnm>A</fnm></au><au><snm>Coulibaly</snm><fnm>MB</fnm></au><au><snm>Dao</snm><fnm>A</fnm></au><au><snm>Diallo</snm><fnm>M</fnm></au><au><snm>Traor&#233;</snm><fnm>SF</fnm></au></aug><source>Acta Tropica</source><pubdate>2012</pubdate><volume>122</volume><fpage>87</fpage><lpage>93</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1016/j.actatropica.2011.12.005</pubid><pubid idtype="pmpid" link="fulltext">22198241</pubid></pubidlist></xrefbib></bibl><bibl id="B9"><title><p>The effects of natural Plasmodium falciparum infection on the fecundity and mortality of Anopheles gambiae s. l. in north east Tanzania</p></title><aug><au><snm>Hogg</snm><fnm>JC</fnm></au><au><snm>Hurd</snm><fnm>H</fnm></au></aug><source>Parasitology</source><pubdate>1997</pubdate><volume>114</volume><issue>Pt4</issue><fpage>325</fpage><lpage>331</lpage><xrefbib><pubid idtype="pmpid">9107019</pubid></xrefbib></bibl><bibl id="B10"><title><p>Malaria-induced reduction of fecundity during the first gonotrophic cycle of Anopheles stephensi mosquitoes</p></title><aug><au><snm>Hogg</snm><fnm>JC</fnm></au><au><snm>Hurd</snm><fnm>H</fnm></au></aug><source>Med Vet Entomol</source><pubdate>1995</pubdate><volume>9</volume><issue>2</issue><fpage>176</fpage><lpage>180</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1111/j.1365-2915.1995.tb00175.x</pubid><pubid idtype="pmpid">7787226</pubid></pubidlist></xrefbib></bibl><bibl id="B11"><title><p>Why is the effect of malaria parasites on mosquito survival still unresolved?</p></title><aug><au><snm>Ferguson</snm><fnm>HM</fnm></au><au><snm>Read</snm><fnm>AF</fnm></au></aug><source>Trends in Parasitology</source><pubdate>2002</pubdate><volume>18</volume><issue>6</issue><fpage>256</fpage><lpage>261</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1016/S1471-4922(02)02281-X</pubid><pubid idtype="pmpid" link="fulltext">12036738</pubid></pubidlist></xrefbib></bibl><bibl id="B12"><title><p>Immune stimulation and malaria infection impose reproductive costs in Anopheles gambiae via follicular apoptosis</p></title><aug><au><snm>Ahmed</snm><fnm>AM</fnm></au><au><snm>Hurd</snm><fnm>H</fnm></au></aug><source>Microbes and Infection</source><pubdate>2006</pubdate><volume>8</volume><issue>2</issue><fpage>308</fpage><lpage>315</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1016/j.micinf.2005.06.026</pubid><pubid idtype="pmpid" link="fulltext">16213176</pubid></pubidlist></xrefbib></bibl><bibl id="B13"><title><p>The impact of uniform and mixed species blood meals on the fitness of the mosquito vector Anopheles gambiae s.s: does a specialist pay for diversifying its host species diet?</p></title><aug><au><snm>Lyimo</snm><fnm>IN</fnm></au><au><snm>Keegan</snm><fnm>SP</fnm></au><au><snm>Ranford-Cartwright</snm><fnm>LC</fnm></au><au><snm>Ferguson</snm><fnm>HM</fnm></au></aug><source>Journal of Evolutionary Biology</source><pubdate>2012</pubdate><volume>25</volume><issue>3</issue><fpage>452</fpage><lpage>460</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1111/j.1420-9101.2011.02442.x</pubid><pubid idtype="pmpid" link="fulltext">22221693</pubid></pubidlist></xrefbib></bibl><bibl id="B14"><title><p>Efficacy of an insecticide paint against insecticide-susceptible and resistant mosquitoes - part 1: laboratory evaluation</p></title><aug><au><snm>Mosqueira</snm><fnm>B</fnm></au><au><snm>Duchon</snm><fnm>S</fnm></au><au><snm>Chandre</snm><fnm>F</fnm></au><au><snm>Hougard</snm><fnm>JM</fnm></au><au><snm>Carnevale</snm><fnm>P</fnm></au><au><snm>Mas-Coma</snm><fnm>S</fnm></au></aug><source>Malaria Journal</source><pubdate>2010</pubdate><volume>9</volume><fpage>340</fpage><lpage>346</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1186/1475-2875-9-340</pubid><pubid idtype="pmcid">3001744</pubid><pubid idtype="pmpid" link="fulltext">21108819</pubid></pubidlist></xrefbib></bibl><bibl id="B15"><title><p>New insecticides with ecdysteroidal and juvenile hormone activity</p></title><aug><au><snm>Dhadialla</snm><fnm>TS</fnm></au><au><snm>Carlson</snm><fnm>GR</fnm></au><au><snm>Le</snm><fnm>DP</fnm></au></aug><source>Annu Rev Entomol</source><pubdate>1998</pubdate><volume>43</volume><fpage>545</fpage><lpage>569</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1146/annurev.ento.43.1.545</pubid><pubid idtype="pmpid" link="fulltext">9444757</pubid></pubidlist></xrefbib></bibl><bibl id="B16"><title><p>Relative developmental and reproductive fitness associated with pyrethroid resistance in the major southern African malaria vector, Anopheles funestus</p></title><aug><au><snm>Okoye</snm><fnm>PN</fnm></au><au><snm>Brooke</snm><fnm>BD</fnm></au><au><snm>Hunt</snm><fnm>RH</fnm></au><au><snm>Coetzee</snm><fnm>M</fnm></au></aug><source>Bulletin of Entomological Research</source><pubdate>2007</pubdate><volume>97</volume><issue>6</issue><fpage>599</fpage><lpage>605</lpage><xrefbib><pubid idtype="pmpid" link="fulltext">17997873</pubid></xrefbib></bibl><bibl id="B17"><title><p>Ace-1 duplication in Anopheles gambiae: a challenge for malaria control</p></title><aug><au><snm>Djogb&#233;nou</snm><fnm>L</fnm></au><au><snm>Labb&#233;</snm><fnm>P</fnm></au><au><snm>Chandre</snm><fnm>F</fnm></au><au><snm>Pasteur</snm><fnm>N</fnm></au><au><snm>Weill</snm><fnm>M</fnm></au></aug><source>Malaria Journal</source><pubdate>2009</pubdate><volume>8</volume><fpage>70</fpage><lpage>76</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1186/1475-2875-8-70</pubid><pubid idtype="pmcid">2679766</pubid><pubid idtype="pmpid" link="fulltext">19374767</pubid></pubidlist></xrefbib></bibl><bibl id="B18"><title><p>Fitness of transgenic Anopheles stephensi mosquitoes expressing the SM1 peptide under the control of a vitellogenin promoter</p></title><aug><au><snm>Li</snm><fnm>C</fnm></au><au><snm>Marrelli</snm><fnm>MT</fnm></au><au><snm>Yan</snm><fnm>G</fnm></au><au><snm>Jacobs-Lorena</snm><fnm>M</fnm></au></aug><source>J Hered</source><pubdate>2008</pubdate><volume>99</volume><issue>3</issue><fpage>275</fpage><lpage>282</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1093/jhered/esn004</pubid><pubid idtype="pmpid" link="fulltext">18334506</pubid></pubidlist></xrefbib></bibl><bibl id="B19"><title><p>Can transgenic mosquitoes afford the fitness cost?</p></title><aug><au><snm>Lambrechts</snm><fnm>L</fnm></au><au><snm>Koella</snm><fnm>JC</fnm></au><au><snm>Bo&#235;te</snm><fnm>C</fnm></au></aug><source>Trends in Parasitology</source><pubdate>2008</pubdate><volume>24</volume><fpage>4</fpage><lpage>7</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1016/j.pt.2007.09.009</pubid><pubid idtype="pmpid" link="fulltext">18164248</pubid></pubidlist></xrefbib></bibl><bibl id="B20"><title><p>Evaluating the potential of the sterile insect technique for malaria control: relative fitness and mating compatibility between laboratory colonized and a wild population of Anopheles arabiensis from the Kruger National Park, South Africa</p></title><aug><au><snm>Munhenga</snm><fnm>G</fnm></au><au><snm>Brooke</snm><fnm>BD</fnm></au><au><snm>Chirwa</snm><fnm>TF</fnm></au><au><snm>Hunt</snm><fnm>RH</fnm></au><au><snm>Coetzee</snm><fnm>M</fnm></au><au><snm>Govender</snm><fnm>D</fnm></au><au><snm>Koekemoer</snm><fnm>LL</fnm></au></aug><source>Parasites &amp; Vectors</source><pubdate>2011</pubdate><volume>4</volume><fpage>208</fpage><lpage>11</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1186/1756-3305-4-208</pubid><pubid idtype="pmpid">23029596</pubid></pubidlist></xrefbib></bibl><bibl id="B21"><title><p>The role of cow urine in the oviposition site preference of culicine and Anopheles mosquitoes</p></title><aug><au><snm>Kweka</snm><fnm>EJ</fnm></au><au><snm>Owino</snm><fnm>EA</fnm></au><au><snm>Mwang&#8217;onde</snm><fnm>BJ</fnm></au><au><snm>Mahande</snm><fnm>AM</fnm></au><au><snm>Nyindo</snm><fnm>M</fnm></au><au><snm>Mosha</snm><fnm>F</fnm></au></aug><source>Parasites &amp; Vectors</source><pubdate>2011</pubdate><volume>4</volume><fpage>184</fpage><lpage>190</lpage><xrefbib><pubidlist><pubid idtype="doi">10.1186/1756-3305-4-184</pubid><pubid idtype="pmpid">23029596</pubid></pubidlist></xrefbib></bibl><bibl id="B22"><title><p>A new criterion for automatic multilevel thresholding</p></title><aug><au><snm>Yen</snm><fnm>JC</fnm></au><au><snm>Chang</snm><fnm>FJ</fnm></au><au><snm>Chang</snm><fnm>S</fnm></au></aug><source>Image Processing, IEEE Transactions on</source><pubdate>1995</pubdate><volume>4</volume><issue>3</issue><fpage>370</fpage><lpage>378</lpage><xrefbib><pubid idtype="doi">10.1109/83.366472</pubid></xrefbib></bibl><bibl id="B23"><aug><au><snm>Gonz&#225;lez</snm><fnm>R</fnm></au><au><snm>Woods</snm><fnm>R</fnm></au></aug><publisher>Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA</publisher><pubdate>2001</pubdate></bibl><bibl id="B24"><aug><au><snm>Burger</snm><fnm>W</fnm></au><au><snm>Burge</snm><fnm>MJ</fnm></au></aug><source>Digital Image Processing: an algorithmic introduction using Java</source><publisher>Springer, New York</publisher><pubdate>2008</pubdate></bibl></refgrp>
	</bm>
</art>