NIST's Integrated Colony Enumerator (NICE)
NIST's Integrated Colony Enumerator (NICE)
NIST's Integrated Colony Enumerator (NICE)
Page 1/23
Table of Contents
1
2
3
4
5
6
7
8
Overview..................................................................................................................... 2
Installation................................................................................................................... 3
Using NICE................................................................................................................. 4
3.1
Getting started..................................................................................................... 4
3.2
Image Information .............................................................................................. 7
3.3
ROI: Defining, Moving, and Resizing............................................................... 7
3.4
Toolbar.............................................................................................................. 10
3.5
NICE Windows................................................................................................. 12
3.5.1 Counting........................................................................................................... 12
3.5.2 Parameters....................................................................................................... 12
3.5.3 Navigation Options .......................................................................................... 14
3.5.4 Stored Data ...................................................................................................... 14
3.5.5 Histogram ........................................................................................................ 18
Counting Procedure .................................................................................................. 19
How NICE Counts .................................................................................................... 20
5.1
Finding Minima ................................................................................................ 20
5.2
Choosing a threshold......................................................................................... 20
Image Acquisition..................................................................................................... 21
NICE Version History............................................................................................... 22
Legal Disclaimers ..................................................................................................... 23
1 Overview
Enumeration of bacterial colonies in an agar plate is simple in concept, but automated
colony counting is difficult due to variations in colony color, size, shape, contrast, and
density, as well as colony overlap. Furthermore, in applications where high throughput is
essential, it is critical to employ a fast and user-friendly automated technique that doesnt
compromise counting accuracy. While commercial products exist that can count
bacterial colonies, they can be cost-prohibitive for small laboratories. We present here a
colony counting program, NISTs Integrated Colony Enumerator (NICE), designed to
count dark colonies from multiple regions of interests on an agar plate. Images can be
cost effectively acquired by a digital camera or a desktop scanner and imported into
NICE. High throughput standardized assay formats such as the multiplexed
opsonophagocytic killing (MOPA4) assay can be readily counted by NICE.
Page 2/23
2 Installation
Recommended Hardware (Currently Windows Only)
32-bit Windows. e.g., Windows XP. (32 bit)
CPU: 2 GHz Processor; RAM: 512 MB or higher
Minimum Screen Resolution of 1024x768 set to 96 DPI.
600 MB hard drive space.
Required Software
There are two software files required to run NICE. These files, as well as additional
demonstration images, can be downloaded at:
ftp://ftp.nist.gov/pub/physics/mlclarke/NICE.
Files:
MCRInstaller.exe
NICE_B2b.exe
Description
MATLAB compiler engine 7.9
Launches NICE
NICE source files written in MATLAB (.m and .fig files) are currently available by
contacting matthew.clarke@nist.gov and will be published online in the future. These
files were created in MATLAB R2008b (www.mathworks.com), and may not function
properly in other versions of MATLAB.
Installation
NICE uses a MATLAB compiler runtime engine which is installed by running
MCRInstaller.exe. If MATLAB version R2008b is already installed on the computer,
you do not need to run the MCRInstaller.exe file.
1. Run MCRInstaller.exe. This is done only once.
2. NICE can now be run by launching NICE_B2b.exe.
Updates
Updates to NICE may be posted.
If you would like to receive software update alerts, please email nice@nist.gov with your
name, institution and contact information.
Page 3/23
3 Using NICE
3.1 Getting started
Acquire plate images using a digital camera or scanner. See the Image Acquisition
section for more information.
Launch NICE_B2b.exe.
Two windows will open. The first is a command prompt window which displays output
text from the software (Figure 1). This window generally can be ignored, but error
messages may be monitored here. If the program appears to have stalled, it is useful to
check this window to see if error messages are present. Closing this window will close
NICE.
Page 4/23
The second window (Figure 2) may take some time to load depending on the computer
configuration. This is the welcome screen which queries login information. Here, the
user can enter information about the experiment: Date (automatically entered), Operator
Name, Experiment, and Notes. A default value of none is entered for each field (except
date) if the user does not provide information.
After entering the desired information and selecting Done, the main window will open
(Figure 3).
Page 5/23
Help menu:
Tutorial launches a window with images and text guiding the user through the basics of
NICE. The tutorial is a set of slides that contains a condensed version of this manual.
It details the toolbar buttons and the control panels of NICE.
About displays information about NICE, including the version number.
Page 6/23
This area indicates the mode: Single File mode if only one image file was opened or
Batch File mode if more than one image file was opened. In the Single File mode, the
file name and directory will be displayed. In the Batch File mode, the name of the file
currently being viewed and the total number of files loaded will be displayed as well as
the directory.
This area also displays the Step time which is the time required to execute the last
command (open image, count, etc). In the case of batch processing, the time is
cumulative.
Page 7/23
Individual ROIs can be moved by left-clicking and dragging to a new position whilst
holding down the left mouse button. The most recently selected ROI will also possess
resizing handles (blue squares, see Figure 4). Left-click (hold) and drag on a handle to
resize the ROI.
Figure 4. An image with six analysis ROIs. The analysis ROI in the top middle is the active ROI. It has
resizing handles displayed at its corners (the white arrow point to one resizing handle).
To move many ROIs at once use the Drag All ROIs toolbar button. For more
information see the toolbar description below.
ROI shape: Parent ROIs or all individual ROIs can be switched between rectangular and
elliptical shapes using the menu ROI Shapes. Elliptical parent ROIs are beneficial for
images on circular petri dishes. Elliptical individual ROIs can be advantageous for high
density plates such as those in Figure 5, where the spotted areas are circular.
Page 8/23
Figure 5. All individual ROIs have been changed to the elliptical shape to better fit this sample.
Resizing handles exist at the rectangle edges defining either ROI shape. Counting will
only occur within the confines of the elliptical or rectangular individual ROIs.
ROI shapes should not be changed between the images in a batch run. All files will use
the most recently selected ROI shape.
Page 9/23
3.4 Toolbar
Open
Update
Login
Details
Save
Image
Zoom In
Zoom
Out
Pan
Data
Cursor
Invert
Contrast
Adjust
Parent
ROI
Drag All
ROIs
Reset
Image
Display
Original
Image
Display
Processed
Image
Highlight
Counted
Colonies
Open: Use to open one or multiple images. Images must be in TIF or JPEG formats.
Images may be grayscale or color, though color images will be converted to grayscale
when loaded. Images will be forced to 8-bit (0-255 values). After loading, the first
image and histogram will be displayed.
Update Login Details: Reopens the login screen and allows user to change any login
details. Images that were counted prior to updating the login information will contain
the previously entered information, but images counted subsequently will contain the
new information.
Save Image: Save an image of the counting area image with or without annotations
(e.g., ROI boundaries, counting results), or save an image of the entire NICE window.
Zoom In / Zoom Out / Pan: Interact with the counting image
Data Cursor: Displays information from the pixels in the image. The index displayed
is the grayscale value (from 0-255).
Invert Contrast: Colonies are counted by looking for dark points in the image. Use
this function to reverse the contrast of the image.
Adjust Parent ROI: This button is enabled only when the Parent ROI box in the
Parameters window is checked. Selecting this command allows the user to move and
resize the parent ROI. To save the parent ROI settings, double-click on the image, or
reselect this icon. Analysis ROIs will be redrawn once the parent ROI is saved.
Drag All ROIs: Move many individual ROIs at once. This button toggles on or off.
Click on the button, then click over any of the individual ROIs to start dragging.
Page 10/23
Left-click and drag to move all individual ROIs. Right- or Ctrl-Click to drag columns
of individual ROIs. Middle- or Shift-Click to drag rows of individual ROIs. Reselect
the button to turn off.
Reset Image: Reloads the image.
Display Original Image: Displays the loaded image, ROIs (parent and individual) and
counts. The original view is always available.
Display Processed Image: Displays an image of the minima, with ROIs (parent and
individual) and counts. Processed images are only available after counting a single
file.
Highlight Counted Colonies: Displays the loaded image, ROIs (parent and
individual), counts, and includes a marker indicating each counted colony.
Highlighted images are available only after counting (single or multiple images).
Examples of the image after pressing each display icon are shown in Figure 6.
Original
Processed
Highlighted
Figure 6. Using the toolbar icons (inset), the opened image can be displayed in different formats.
Page 11/23
Count: Count the dark spots in the image (and all other loaded images) using the
current parameters. Whilst counting, the Count button will be colored yellow.
After counting, the image will be displayed with the counts displayed on the left side
of each ROI.
With colony sizes: Will save the mean colony size for each area. Colony sizes are
approximated by Otsu threshold method. Colony sizing is a rough estimation for
comparison only. Colony areas are reported in pixels and are only available in the
exported data.
3.5.2 Parameters
Rows and Columns: Enter the number of individual ROIs within the image that will
be analyzed. If only one individual ROI is desired, the values should be set to 1 and
1. Once values are changed, new individual ROIs will be calculated. There is a limit
of 25 rows and 25 columns.
Parent ROI: Activate parent ROI feature. See ROIs and Toolbar descriptions above
for more information.
Figure 7 presents an example of an image with a parent ROI (magenta) and 24 (8 rows
by 3 columns) individual ROIs (blue). The numbers displayed indicate the order in
which the individual ROIs will be counted and exported.
Page 12/23
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Figure 7. An example of a parent ROI with analysis ROIs numbered according to their export order.
Background Level: The user can select which threshold level to use for counting.
Lines on the histogram indicate the position of these different levels, and the
numerical value of the level selected is displayed in the Value box. Alternatively, the
user may enter a value by selecting Manual, and typing in a value. -5 sigma from the
mean value of the background intensity is the default value.
Resolution: Indicates the relative resolution of the image to be counted. The counting
parameters are adjusted for optimal results. 300 dpi (dots per inch; ~118 dots per cm)
= low; 600 dpi (~236 dots per cm) = medium; 1200 dpi (~472 dots per cm) = high.
For images acquired with a digital camera, the medium setting usually works well.
Page 13/23
This window allows the user to scroll through images when multiple images were
opened. It also allows the user to copy ROIs (parent and individual) of one image to
other open images. This is useful in batch processing.
Arrows: Navigate between the images or results.
Apply current ROIs to All or Remaining images: The ROIs for the currently
displayed image can be copied to all, or the remaining, images in the batch file.
This window allows the user to view loaded images and results counted in that session.
Tabs at the top of the panel toggle between the list of loaded images and the list of
results.
Images: In the images tab the window lists the loaded files. Files are listed
alphabetically, and represent the order in which they will be counted. Doubleclicking on the image name will display the image. If ROIs have been created for this
image, then those ROIs will be displayed. If ROIs have not been generated, they will
be created when loading the image based on the parameters set when the image was
opened.
Page 14/23
Results: In the results tab the window lists the counted files. Results are listed in the
order they were counted. Results are named by the filename along with a numerical
prefix indicating the count order. Double-clicking on the result name will display the
image with ROIs and counts. However, to save memory, the black and white
processed image is not stored. Images can be recounted by clicking the count
button. Results will be saved as a new result, i.e. the same file name but a different
numerical prefix.
Export: Write all stored results to an MS Excel or text file. First a dialog will ask
whether to export all the results or just the currently selected ones. Next, a dialog will
open to allow the user to select a filename and location. If the filename exists, the
user will be asked if they wish to overwrite. In the case of Excel files, only the sheet
within the file will be overwritten. A second window will pop up, asking the user to
enter a worksheet name where the data will be saved. If the sheet exists (even if it is
blank), the user will be asked if they wish to overwrite it. Data cannot be saved to
files that are currently opened.
Page 15/23
Figure 8 A demonstration export file. The analysis involved counting two 8 rows x 3 columns plates.
Only a portion of the results are shown in this image.
Delete: Delete the selected stored data. If all files are selected then the file count will
be reset to 001. Some temporary data may still exist, but will be overwritten.
Clear List: Clear all stored data. The file count will be reset to 001. Some temporary
data may still exist, but will be overwritten.
Page 16/23
Figure 9. After counting an image the number of colonies counted in each analysis ROI is displayed in
blue in the upper-left corner of the ROI.
Page 17/23
3.5.5 Histogram
Each time an image is opened, the histogram (pixel intensities versus occurrences) of
that image will be displayed. It represents the population of pixels with a given gray
level. 0 corresponds to black pixels, while 255 corresponds to white. Background
pixels will dominate the histogram. The background histogram will be fit using a
Gaussian function (dark blue) and the mean minus 3, 4, 5, and 6 sigma will be
indicated with the blue, green, red, and pink lines, respectively. The threshold based
on the Otsu method is indicated by the dashed cyan line.
NICE fits the histogram to determine the mean background level and distribution.
During counting, the threshold level is queried to determine if a count is valid.
During counting in Batch mode, the histogram fits are calculated, but the fitting lines
are not displayed.
Log scale: Displays the histogram with a logarithmic (base 10) y-axis.
Page 18/23
4 Counting Procedure
1. Open an image file or multiple image files.
2. Set the number of rows and columns for the individual ROI grid needed.
3. Set the counting parameters.
a. Set the background threshold (default is -5 sigma from the mean value of
the background intensity).
b. Set the resolution (default is medium).
4.
5.
6.
7.
8.
You may need to perform some initial testing to determine which parameters are
best for your image acquisition system.
Create a parent ROI (if needed).
a. Click on the parent ROI check box.
b. Resize the parent ROI (by the Adjust Parent ROI toolbar icon).
c. Accept the parent ROI by double-clicking or selecting the Adjust Parent
ROI toolbar icon again.
d. After resizing the parent, the individual ROIs will be placed within the
parent.
Make any adjustments needed to the position of the individual ROIs.
a. Single ROIs can be moved by clicking and dragging them to the new
position.
b. Columns or rows of ROIs (or all ROIs) can be moved by selecting the All
ROI toolbar icon.
c. If counting multiple images, use the navigation buttons to scroll through
all loaded images and make any adjustments required to each image or use
the same set of individual ROIs when adjustment is not necessary.
Press the Count button.
a. The elapsed time will be updated after each image is counted.
b. Once counting completes for each image, the image will be displayed with
a counted colony number on the left hand side of each individual ROI.
Examine the results.
a. Users can view the image with a marker over each colony by pressing the
Show Highlight icon in the toolbar.
b. The processed image can be viewed using the Show Processed icon in
the toolbar. NICE will display a black and white image of the local
minima of colonies (only allowed after single image counting).
c. You view counting results by using the navigation buttons while in the
Results tab, or by double-clicking on the result in the data list.
Export the results.
a. Users have the option of exporting all or selected results.
b. Results can be exported to Microsoft Excel or tab-delimited text files.
Page 19/23
Gaussian Filter
(Blur Noise)
Extended
Minima
Histogram
Fitting
Threshold
Valid Counts
6 Image Acquisition
Plate images can be acquired using a consumer digital camera or office scanner. If a
digital camera is used, an illuminator and camera stand will be required. In preliminary
testing performed at the University of Alabama at Birmingham, the set-up presented in
Figure 10 worked well.
digital camera
camera stand
illuminator/diffuser
By adding an immobile plate guide (Figure 11), the speed of image acquisition from
multiple plates can be increased. Also, the position of the spots on the agar plate will be
more consistent, resulting in less time to re-position individual ROIs.
Page 21/23
plate guide
Figure 11. The plate guide allows for fast alignment of samples.
Page 22/23
8 Legal Disclaimers
NISTs Integrated Colony Enumerator (NICE) software was developed at the National
Institute of Standards and Technology by employees of the Federal Government in the
course of their official duties. Pursuant to Title 17 Section 105 of the United States Code
this software is not subject to copyright protection and is in the public domain. Support
for this project was provided in part by PATH. The views expressed by the developers of
the software do not necessarily reflect the views of PATH. NICE is an experimental
system. Neither NIST nor PATH assumes any responsibility whatsoever for its use by
other parties, and makes no guarantees, expressed or implied, about its quality, reliability,
or any other characteristic. We would appreciate acknowledgment if the software is used.
This software can be redistributed and/or modified freely provided that any derivative
works bear some notice that they are derived from it, and any modified versions bear
some notice that they have been modified.
Certain commercial equipment, instruments, or materials are identified in this paper to
foster understanding and does not imply recommendation or endorsement by NIST, nor
does it imply that the materials or equipment identified are necessarily the best available
for the purpose.
Page 23/23