Inexpensive, Easy-To-Use, and Feature-Rich Worm Tracking.

25
Inexpensive, Easy-To-Use, and Feature-Rich Worm Tracking

Transcript of Inexpensive, Easy-To-Use, and Feature-Rich Worm Tracking.

Inexpensive, Easy-To-Use, and Feature-Rich Worm Tracking

Part IA Short Overview

The Benefits

• Inexpensive

• Easy-to-Use

• Feature Rich

• A simple pipeline to Analysis

• Well-Documented (easily extended, updated, and maintained)

Inexpensive

• Works FAST and beautifully with CHEAP (<$30) USB cameras.

• Supports most stages:– Ludl & Prior now– National Instruments/Parker later

• Works well with any computer:– Windows, Mac, & Unix variants

• Does NOT require any software purchases.

Easy-To-Use

• Plug-n-Play– Plug the camera and stage into the PC.– Download and run the software.

• Automatic Calibration– Stage-to-Pixels– Pixels-to-Microns– Tracking

• Simple functionality is on the main screen.– Advanced Options and tweaks are also easily accessible.

Attaching Your USB CameraWhat Do You Need?

Attaching Your USB Camera( Don’t worry it’ll be on the web page )

1. Open it up. 2. Remove the lens.

3. Add glue. 4. Glue on the C-mount.

Voila!

Show Me The Video!

Feature Rich• NO Recording Limits

– Unlimited Length (as long as you have space)– ANY Frame Rate & Resolution

• Track EVEN in Difficult Conditions, e.g.:– Young Worms– Thick Food– Contamination– Plate Edges

• Time-Lapse recording.

• An easy pipeline to our Analysis software– Over 100 Features extracted.

More Features• Continually Log the worm’s Real-World Location.

• Snap images in many formats:– JPG, GIF, BMP, PNG

• Advanced control over recording:– Resolution– Video Format– Frame Rate– Time/Frame/Intermittent Lengths

• Advanced control over tracking:– Boundaries– Thresholds– Coordinate stage movements with recording to Minimize Blur

Standardization

• Identical Video & Tracking DataREGARDLESS of the Hardware & OS Configuration

– Allows Searchable Databases of videos & analyses• Dry Lab Experimentation• Phenotypic Identification• Cross-Experimental Comparisons• Meta Studies

• Open Source for reuse (e.g., A Neuronal Imaging Tracker)

Extensive Documentation

• Design overview

• FAQ

• Tutorials

• Troubleshooting guide

• Javadoc Web Pages– ANY Java programmer can Understand, Edit,

& Extend the code– Easy Updates & Maintenance

Example:Supporting a New Motorized Stage

(A Tutorial Document will be Included with the Software)

• Fill in a motorized stage wrapper.– ~5 Lines of Java

• Translate “Move” into the stage’s language– A text command for the serial port.

• ~1 Line of Java

– Or, call the API to move the stage.• A Few Lines of code

Part IIThe Details

Tracking Overview

The Java Media Framework

• Supports most USB Cameras• Synchronizes multiple data sources

– Cameras, microphones, etc.

• Can Multiplex and Combine data sources Example: 3 synchronized videos– Cyan & yellow filtered fluorescent neurons.– A low magnification worm behavior video.

• Monitor while recording for Real-Time Video Analysis

USBCamera

USBCamera

USBCamera

Worm Tracker 2.0Java

MediaFramework

The Tracking Algorithm

• Convert the image to Grayscale.

• Find the Worm:– Threshold to find the foreground (worm).– Find an appropriate “8-connected” component.

• Find Motion:– Ignore tracked in/out image boundaries.– Subtract successive frames (motion).– Threshold to find movement (worm).– Find large 8-connected components.

• Re-Center the worm upon boundary violation.

Adaptive Thresholding• The Otsu Method

– Assume a bimodal distribution of pixels (worm & background).

– Find a threshold to split the modalities:• Maximize the variance between modalities.• Minimize the variance within modalities.

– O(# of pixels) – Optimal!

Adaptive Thresholding

8-Connected Components

• 8 Neighbors (vs. 4 – no diagonals)

• “Two Strategies to Speed Up Connected Component Labeling”, 2005, Wu et al.– 1 forward scan– Union find– Decision trees– Sequential memory access

• Area and Boundary discovery during the scan.• O(# of Pixels) – Optimal!

Movement Detection

• Calibrate to Ignore Video NoiseAutomatically establish thresholds:– Minimum area– ∆ pixel value

• Subtract successive Frames– Motion = large 8-connected components

where:| ∆ pixel value | > 0

• Move stage to Keep Motion In Bounds

Movement Detection

Acknowledgements

• Chris Cronin

• Ryan Lustig

• Kathleen, Katie, Callie, & Andrew

• Bill Schafer & Paul Sternberg

• Yechiam Yemini (My Dad)

• Zhaoyang (John) Feng