Otoliths and GlassWindow in ObjectJ

 

GlassWindow is an extension to the ObjectJ plugin. It allows to mark and snap any underlying live image that is displayed by a foreign application. Markers appear both on the glass window and on the currently linked stack that can receive any number of snapshots. This document shows an extended project that is intended for marking otolith year rings.

 

 

 

Macro Commands:

 

Show GlassWindow [1]

Shows the GlassWindow whose size and position can be adjusted to cover the underlying live image.

 

Connect New Stack [2]

Creates a stack of same size as the GlassWindow for receiving snapshots.

 

Update Snapshot [3]

In the connected stack, the current snapshot is refreshed.

 

Append Snapshot [4]

A new snapshot is appended to the connected stack.

 

Toggle Vis Range [5]

Toggles between these two cases:

a) markers are only visible if their home slice is selected

b) all markers from all stack slices are visible (shining through).

The visibility range has effect on the glass window and all linked images.

 

Close GlassWindow [6]

Same as clicking on the GlassWindows red close button.

 

 

 

 

 

Tutorial:

 

- Make sure objectj_.jar is in ImageJ`s plugins folder

- Windows users: Java 1.7 is required, see:

https://sils.fnwi.uva.nl/bcb/objectj/examples/glasswindow/Java7/Install-Java-7.htm

 

- Open demo project GlassDemo.ojj

https://sils.fnwi.uva.nl/bcb/objectj/examples/glasswindow/GlassW_Otolith_Project

 

- Start your foreign acquisition program so that its (live) image appears on the screen.

 

- Arrange these windows so they can conveniently be accessed (similar to fig 1):

-- ImageJ window,

-- ObjectJ Tools

-- Live window

 

- Choose menu ObjectJ> Show Glass Window [1]

and adjust size and position so it covers the live image to be anlayzed

 

- Choose menu ObjectJ> Connect New Stack [2]

A stack with same size as the GlassWindow is prepared and linked  to the project. It is automatically filled with the first screenshot. You can now zoom out so the image becomes very small and occupies little real estate on the screen. If necessary, choose ObjectJ>Update Snapshot [3] for refreshing.

 

- Start a trajectory by choosing ObjectJ>New Trajectory [F1]

This closes any previous trajectory and sets the item type to "Begin"

 

- Set markers along the desired trajectory: the first one will of type "Begin" which may occur only once, the next ones will be of type "Ring"

 

- For inserting a non-contributing segment, choose Switch To Link [F3], set a Link marker, and go back to Switch To Ring [F2]

 

- If  the underlying image has changed, choose ObjectJ>Append Snapshot

 

- Instead of setting markers with the left mouse button, you can use the right mouse button for marking, which will first append a new screenshot, and  then set the marker into the new slice.

 

- Close the trajectory via ObjectJ>NewTrajectory [F1]

 

- Close the GlassWindow and save the stack of snapshots

 

- Show or hide the year annotation via ObjectJ>Show/Hide Annotation [F5]

 

- Insert a ring by first selecting the trajectory with the finger tool, then locate the mouse cursor at the desired position, and press [F7].

 

- Delete any ring by choosing the pistol tool, keep down the Alt key, and shoot the ring marker away.

 

- Show numerical output via ObjectJ> Output List or Output Table

 

 

 

 

Notes:

 

- While setting markers on the glass window, ImageJ is in the foreground, i.e. the foreign acquisition program must be able to create the live image without being in the foreground.

 

- Generally, changing position of glass window or live window during marking would disturb analysis and should be avoided.

 

- GlassWindow simply captures RGB images as they appear on the screen, not being aware of their processing history.