SlitherC. elegan


made with




mailing list



Slither is an application designed to track the movement of C. elegans worms in a laboratory environment. You can either use video footage you've already captured from your dissection microscope camera, or you can allow Slither to capture new footage for you. If you're curious how the detection algorithm works, you can read about it informally here.

It was being developed by Kip Warner under the Small Neural Systems Group of Dr. Catharine Rankin, at the Brain Research Centre located at the University of British Columbia.

Slither is released under the GNU General Public License and is available for GNU, Windows, and OS X. Accessibility is important, and thus porting to other operating systems is encouraged.

A mailing list for both development and user discussion is available here.

Click below to see a screenshot.

Slither Screenshot

Made with

wxWidgetsIntelMac OS XUniversal BinaryGnome


July 28th, 2010

Slither has just been acknowledged by the Free Software Foundation and the United Nations Educational, Scientific and Cultural Organization (UNESCO).

July 21st, 2010

Slither has been relicensed from the terms of the GPLv2 to the terms of the GPLv3 or later, on the advice of the FSF.

June 9th, 2010

Created mailing list for both development and user discussion here.

March 28th, 2008

Released Ubuntu i386 package and OS X (universal) for 0.0.45.

  • Updated: OS X users can now use Slither under Leopard. However, due to problems with Apple's proprietary tools and operating system, it made it too difficult to ensure that Slither could work on Tiger and older.
  • Fixed: Better code optimizations and other miscellaneous bug fixes.
  • Added: Inlet detection and other user configurable artificial intelligence settings.
  • Removed: CPU throttle since it was problematic.
  • Updated: Built against wxMac 2.8.7 and latest OpenCV CVS.
  • Added: OS X and Ubuntu packages are built with debugging symbols, hence the size. This will hopefully help bug fixes.
  • Added: OS X packages are signed now.
  • Many user interface fixes, especially for smaller screens.

Nov 13th, 2007

Released Ubuntu i386 package and OS X (universal) for 0.0.44a.

  • Added: Feature to save analysis results to disk.
  • Fixed: Better analysis stability.
  • Note: Saving analysis results to clipboard is temporarily disabled under OS X builds due to what appears to be a bug in wxMac 2.8.6 raising a SIGSEGV.

Oct 29th, 2007

Released Ubuntu i386 package and OS X (universal) for 0.0.43a.

  • Added: Import media feature under file menu in case dragging and dropping media onto the window doesn't work for whatever reason under your version of OS X.

Oct 25th, 2007

Released Ubuntu i386 package and OS X (universal) for 0.0.42a.

  • Fixed: Crashes during analysis.
  • Changed: Stripped out HighGUI dependency for GUI.
  • Added: Extract a frame from a video to media list feature.
  • Added: Accumulate results feature.
  • Changed: Disabled Check For Update feature since it is not thread safe for now.
  • Added: Image analysis window (Ctrl-I or ⌘I on Mac).
  • Fixed: Bug in XML parser during experiment loading.
  • Fixed: Notebook on the main frame looked terrible under OS X.
  • Fixed: Simplified build process in source.
  • Updated: OS X universal binary is statically linked against wxWidgets 2.8.6.
  • Fixed: Some crashes on startup due to improper XRC usage.
  • Updated: Ubuntu packages are hence forth built for Ubuntu Gutsy (7.10).

Sep 28th, 2007

Released Ubuntu i386 package and OS X (universal) for 0.0.41a.

  • Fixed bug in not being able to type into user interface due to OpenCV fiddling with the event handlers.
  • Fixed crash in check for update.
  • Added JPEG support.
  • Copy -> Paste from analysis results directly into Excel.

Sep 12th, 2007

Slither 0.0.40a has been released. Currently available for Ubuntu Feisty and OS X. Please note that the Subversion repository has been relocated.

  • Body size analysis is now functional.
  • Numerous bug fixes.
  • Analysis user interface completely updated.

Analysis screenshot Analysis UI screenshot

May 20th, 2007

Built Ubuntu i386 package for 0.0.33a and published into the newly created apt repository.

May 10th, 2007

Added application/x-apple-diskimage to Apache server's MIME types. Should fix broken downloads for OS X.

May 8th, 2007

Uploaded version 0.0.33a for OS X. Many bug fixes, faster, and more reliable image analysis.

Uploaded version 0.0.32a for OS X. Fixed a number of user interface bugs. Installer and executable are also much smaller now.

May 6th, 2007

Uploaded version 0.0.31a of an OS X build of Slither. Highly experimental and probably unstable. Use at your own risk.

April 27th, 2007:

Slither is still in alpha at version 0.0.30a. Look for installers soon. Porting to OS X is difficult as it is my first time.


Platform Description
Ubuntu Linux: This is an Ubuntu package. Use it if you are running Ubuntu Gutsy or newer. Your package manager will automatically take care of satisfying all required dependencies.

Packages are digitally signed. Please add my GnuPG public key using System -> Administration -> Software Sources -> Authentication -> Import.

Add the following to your /etc/apt/sources.list, then update:

## Slither package repository...
deb gutsy main

Version: 0.0.45

Mac OS XUniversal Binary
Mac OS X: This is an Apple OS X application bundle. Just uncompress it and place the bundle wherever happens to be convenient for you. You can use it regardless of whether you are running a PowerPC or Intel based Mac, since it is a universal binary. OpenCV and wxWidgets runtimes are statically linked, hence the size. Keep in mind that this is still an alpha. Use at your own risk.

Download Signature
Version: 0.0.45

Windows Win32: This is a Nullsoft Installer for the Windows version. It has been tested under Windows XP SP2, but should run under most Win32 systems.

Download (unavailable)

Subversion Source: Build instructions are included with the source. Compiling Slither from source can be either simple or extremely difficult - depending on how familiar you are with general unix development tools. You will need to be familiar with SCons, Python, wxWidgets, OpenCV, C++, and the GNU Autotools. You should also be comfortable with the command line.

git clone Slither




Dr. Catharine Rankin, crankin AT
Kip Warner, kip AT