Go to file
2021-03-10 22:19:37 +01:00
readme_img Added readme. 2021-03-10 22:19:37 +01:00
.gitignore Init. 2021-03-10 09:47:54 +01:00
colonycounter.py Specify min dependency and minor cleanups. 2021-03-10 22:19:06 +01:00
fileutils.py Specify min dependency and minor cleanups. 2021-03-10 22:19:06 +01:00
LICENSE Init. 2021-03-10 09:47:54 +01:00
README.md Added readme. 2021-03-10 22:19:37 +01:00
requirements.txt Specify min dependency and minor cleanups. 2021-03-10 22:19:06 +01:00
shell.nix Init. 2021-03-10 09:47:54 +01:00
window.py Init. 2021-03-10 09:47:54 +01:00

MIT License

Colony Counter

A simple Utility to count and measure bright spots on dark images 😸


  • Image transformation results are cached and incremental.

  • Provides an ugly user interface with intuitive key binds.

  • Batch process/export image analysis results.

  • Adjust colony recognition and filtering through a couple of simple sliders.

  • Remove false positives by clicking on them.

Getting Started

  • Install python (>=3.8 recommended... I made sure to explicitly use ordered dictionaries but just in case).
  • Install dependencies in whichever way you prefer.
  • Create the folders "in", "out" and "cache" (or run colonycounter.py).
  • Adjust queue functions in source code to suit your needs (and read through Caveats).
  • Copy/Move your images into the "in" folder.
  • Start the program by running the colonycounter.py file.

Key Binds

Key Function
q, left arrow load previous image
w, right arrow load next image
a apply changes (always do this before switching images, otherwise changes will be lost)
r reset changes that have not yet been applied
l load saved settings from disk
s save currently applied settings to disk
left mouse btn add colony to list of ignored colonies
right mouse btn remove colonies in the vicinity from ignore list
c clear list of ignored colonies
e batch process and export all images


  • The current processing queue expects 16bit gray scale images with the file extension .tif (tagged image file).
  • watershed function does not work on 16 bit images... so there are some hard coded values to bring measurements back to 16bit brightness values
    • this means a loss of resolution
  • To get hour and culture type values the following folder structure is expected:
    • $HOUR = integer followed by the letter h
    • $CULTURETYPE = whatever string identifies your culture type
  • Code documentation is currently lacking
  • Not all types are properly annotated