Table of Contents
Particle Tracker (2D) Extended
Author
Kota Miura
Centre for Molecular and Cellualr Imaging (CMCI), EMBL Heidelberg
miura at embl dot de Tel: +49 6221 387 404
History
10-11-19 First release
recent
- changed package name from ij to de.embl.cmci (2013/12/15 01:11)
- pom modifed for jar name change (2013/11/08 11:46)
- replaced jar (2013/11/08 11:45)
- minor fix, forotten ';' (2013/11/08 11:44)
- removed old jar in the root (2013/04/03 15:44)
- eclipse environments (2013/04/03 15:42)
- encoding of plugin config corrected. (2013/04/02 17:34)
- plugins config moved. (2013/04/02 17:31)
- mavenized (2013/04/02 17:27)
- added jar, build.xml updated (2010/11/19 11:30)
Source
Installation
Download https://github.com/miura/ParticleTrackerExt/blob/master/target/ParticleTracker_Mod-1.0.0.jar?raw=true and place it in the ImageJ plugin folder.
By [Help > Refresh Menu] or by re-launching ImageJ, you will find new menu items under [Plugins > Particle Tracker Classic >].
(following not working at the moment 20131107) If you are using Fiji: Instead of installing manually, you could also set automatic download & updates by registering our update site.
http://cmci.embl.de/ijplugins
For managing update site, see this page.
Requires
ImageJ ver 1.44h or higher (ImageJ, upgrade page).
Description
ParticleTracker plugin written by Guy Levy (Computational Biophysics Lab, ETH Zurich) added with interactive export of segmentation and tracking results to ImageJ results table. Original web site is HERE
As of Nov. 2013, there is a much up-to-date version from MOSAIC group, which also integrated the extensions I made. I leave this page just to keep the classic version or the particle tracker.
When you use this plugin, please cite:
I. F. Sbalzarini and P. Koumoutsakos.
Feature point tracking and trajectory analysis for video imaging in cell biology.
J. Struct. Biol., 151(2): 182-195, 2005.
PubMed
Work Flow
- 1. Segmentation and Tracking
- Follow instructions in the original website to segment and track cells.
- 2. Transferring all trajectory data
- In the ParticleTracking Results window (see Fig.1), click “All Trajectory to Table” button. All trajectory data will be then transferred to the results table of ImageJ, which then could be directly accessed using ImageJ macro and other scripting languages (Fig. 3).
- 3. Transferring all segmented particle data
- Similarly, all particles segmented in the initial particle detection module could be transferred to the Results window by clicking “All Segmented to Table”
- 4. Transferring Specific Trajectory data
- You could export only a specific trajectory. First, visualize trajectories by clicking “Visualize all trajectories”. In the window overlaid with color-coded trajectories, choose one manually by clicking the trajectory of interest (Fig. 2). ROI will then appear surrounding that trajectory. Then click “Selected Trajectory to Table”. Coordinates of that trajectory will be transferred to ImageJ results table (Fig. 4).
Application: Directionality analysis
Tracking results should be analyzed… and the best convenient way is to analyze the tracked data statistically using R.
A tutorial that was given in EMBO cell biology course is on of such. If you are interested, follow the link below:
IJ Macro and Scripting
If you want to use ParticleTracker silently (not perfectly but) then you could write a javascript that does this. Then this script can be directly executed, or called from your ImageJ macro by
jsstr = File.openAsString("C:\\js\\particleTracker2results.js"); eval("script", jsstr);
// javascript to be called from macro. Does the particle tracking by particle tracker plugin. // // works only with the plugin downloadable from // http://cmci.embl.de/downloads/particletracker2d // // Usage: modify line 7 to 11 to set your parameter. // this JS could be called from ImageJ macro by: // jsstr = File.openAsString("<filepath>"); // eval("script", jsstr); // // Kota Miura (miura@embl.de), CMCI, EMBL Germany // lastupdate: 20110825 rad = 3; coff = 3; ptl = 0.10000; lik = 2 disp = 10; importClass(Packages.java.lang.Thread); importClass(Packages.ij.Macro); imp = IJ.getImage(); // set macro options in the current thread options = "radius="+ rad +" cutoff="+ coff +" percentile=" + ptl+ " link=" + lik + " displacement=" + disp; thread = Thread.currentThread(); original_name = thread.getName(); thread.setName("Run$_my_batch_process"); Macro.setOptions(Thread.currentThread(), options); // run the tracker pt = IJ.runPlugIn(imp, "ParticleTracker_", ""); pt.transferTrajectoriesToResultTable(); // try killing the particle tracker results window frames = WindowManager.getNonImageWindows(); IJ.log(frames.length); for (var i = 0; i < frames.length; i++){ IJ.log(frames[i].getTitle()); if (frames[i].getTitle() == "ParticleTracker Results") frames[i].dispose(); }https://github.com/miura/ijmacros/blob/master/particleTracker2results.js
You could test this by directly executing the script by
jsstr =File.openUrlAsString("https://raw.github.com/miura/ijmacros/master/particleTracker2results.js"); eval("script", jsstr);