home | find me | science | publications | software | toolbox | site map


Software




Fiji

Fiji is Just ImageJ: an ImageJ distribution with many plugins bundled along, including TrakEM2. The whole of Fiji software repository is under version control with git.

My daily use of Fiji:

TrakEM2

What is TrakEM2: an ImageJ plugin for 3D modeling, image annotation, automatic montage-making, image alignment, and everything I need for neuroscience in Drosophila. The program can handle arbitrarily large image datasets (my largest one so far is 350 Gb). There is a manual and a couple of snapshots of TrakEM2 in action.

My daily use of TrakEM2:

All the above, of course, within the excellent image processing environment provided for free by ImageJ.


CurveMorphing

This C python module for Blender started up from my frustration with the crudeness of marching-cubes generated meshes, as found in Amira. Amira's meshing abilities suffer from three main problems: (1) they force the user to segment in all slices of the stack, even when the segmentation profile doesn't change much from one slice to the next; (2) fine neurites, which because of a small iris and/or large section thickness in confocal stacks, result in what I call the "flying pizzas" problem: disconnected sections following a path in space; and (3) they require several iterations of subsurfacing+decimation to make them look right, resulting in artifactually deformed and smoothed meshes.

The CurveMorphing module attempts to solve the above three problems. What it does: takes a sequence of segmentation profiles which are known to be consecutive, and generates the proper skin by morphing one profile to the next. Transitions are very smooth and thus meshes need no post-processing at all. Missing sections or artifactually non-overlapping segmentations are not a problem. It's C implementation is highly optimized, wicked fast and reliable.

At the moment CurveMorphing is interfaced from Blender through a python script which you can get here. The required segmentation profiles are those exported from profile lists in TrakEM2 as a .shapes file, and those obtained from my old A 3D Editing segmentation editor plugin for ImageJ.

Known limitations: segmentation profiles cannot have holes. Branching is also handled rather crudely at the moment.


Blender python scripts


ImageJ Jython Interpreter

Bringing the expression power of python to ImageJ. The plugin provides with a command line input field, with a handy popup menu to copy, save or execute lines in the screen.

All ImageJ and TrakEM2 classes are imported for convenience, the latter in a fail-safe manner (i.e. if TrakEM2_.jar is not present, no problem).

The Jython Interpreter is best used along with the Jython Utilities, which consist of:

There is a long list of examples of jython for ImageJ

Get the Jython Interpreter or the whole Jython utilities folder with example scripts and the Refresh Jython List plugin (just unzip into ImageJ's plugins folder). The zip file includes many example scripts.

For the interpreter to work, you will need Jython itself to be installed, and its jython21.jar (or later version) included in ImageJ's classpath.

Updated 2008-03-02: now the interpreter executes in its own thread, not on the EventDispatchThread -which means that it runs without blocking the GUI. Also added primitive support for class and variable name expansion (more to come soon).


ImageJ Macro interpreter

Command Line Interface plugin for the ImageJ macro interpreter. Get the jar file (includes the source code).

Just type in any macro code and execute by pressing intro. Select macro code from the screen and execute, copy or save it through a popup menu. Type up and down to bring back already entered commands, and TAB key expands both macro commands and image paths.

Record, view, execute, edit and save macros. Use Unix-like commands (pwd, cd, ls, lsi, lsd, mv, rm) and navigate, open, and manage your files and particularly image files.

Type doc to get the ImageJ macro manual (needs internet connection). There are several other add-ons; type help for all info.

Installation: simply drop the CLI_.jar file into the ImageJ plugins folder. Requires ImageJ 1.33f or higher. Despite the unix flavour, it works on Windows! Beautiful!

Check the list of examples and further functionality descriptions.


ImageJ plugins: miscellaneous

I have started also a series of ImageJ Programming Tutorials.



Last updated: 2009-02-08 18:50 Zurich time. Copyright Albert Cardona 2007,2008.