VolViewerUserManual

From BanghamLab
Revision as of 11:46, 8 June 2011 by JeromeAvondo (talk | contribs)
Jump to navigation Jump to search

Quick Guide

Loading Volume Data

The viewer supports two types of file formats for loading volume data. It also supports four different ways to actually load data into the viewer. See the subsections for more information about the file formats and data loading mechanisms.

Supported File Formats

Image Stacks

The viewer supports image stacks in the following file formats: PNG, BMP, TIFF, JPG. For data that does not have equal spacing in the X,Y,Z dimensions, ie: confocal data, you may also create a text file called voxelspacing.txt to specify the voxel spacing independently for each axis. This file needs to be in the same folder as where your image stack files are. This text file takes the following format:

x 0.488281
y 0.488281
z 1.506024

Note that an image stack is a series of 2D images for each z-series of your stack. The images can be 8bit grey scale or 8bit RGB.

Raw Volume

Raw volumes are supported, these volumes are made up of two files, a .raw and a .dat file. The .raw file is the volume values. These values are stored in binary format, and the voxel values are ordered as R/G/B triplets and in X,Y,Z traversal order. The .dat file with the same filename as the .raw file contains the metadata of the volume. This metadata is the extra information you need to be able to load the volume. This data is X,Y,Z dimensions and the data type.

Loading Data

To load data into the viewer, this can be achieved by one of four mechanisms:

  • Using the FILE dropdown menu.
  • Using the Drag&Drop event.
  • Setting a default file to load in the settings.ini file
  • Parsing a directory name as a command line parameter

The File Dropdown Menu

The easiest method to load data is to do this via the FILE dropdown menu.

Once you select either a stack or a raw volume you will be presented with a file dialogue which you can point to the file you want to load. Note that when loading an image stack you can point the viewer to any file in your stack, it does not have to be the first image of the stack.

Note there are keyboard short-cuts to facilitate the loading of volume data:

* CTRL + R: load a raw volume
* CTRL + S: load an image stack

The Drag&Drop Event

With the Drag&Drop event you can load data into the viewer by simply dragging one of the supported files to the main rendering window. See the figure below.

The Drag&Drop accepts drops of either; a single image file in you stack, a .dat file or a .raw file.

The Settings.ini file

The viewer also supports loading of data via the settings.ini file. The settings.ini file can be found in the root of the viewer folder. The settings.ini file contains many parameters to control the default behaviour of the viewer, all parameters have comments explaining what they do.

With regards to data loading, you are able to setup a file the viewer will load automatically every time you launch it. This is particularly useful if you plan on using the viewer to display data during a talk/presentation.

The entry you need to modify in the settings.ini file is:

file_default_filename=""

You can specify the default file to load inside the "" marks. This can be an absolute file path, ie: "C:\MyStuff\SomeDirName\Data\CylindersRGB.dat" or a relative file path ie: "Data\CylindersRGB.dat"

Command Line Parameter

It is also possible to parse a file as a command line parameter for the viewer to load. For example under windows you may want to create a .bat file and call the viewer as follows:

VolViewer voldir="%CD%\Data\seedling\Slice000.png"

This will load the image stack who's first file is Slice000.png. One useful tip for windows users is that the %CD% command gets the path of your current working directory.

*Exercise 1:
Try loading a volume by downloading the sample volume here and using the drag and drop method.
 

Saving Volume Data

The viewer allows you to save your volume data either as a .RAW binary file or a stack of PNG images. This is achieved by using the FILE dropdown menu and choosing the SAVE option. Note that when saving a PNG image stack you will be asked to point the viewer to a directory that it store the volume stack.

Interacting with the Volume

Once a volume is loaded you can interact with the volume by rotating it, moving it (translating), or zooming in and out. This is achieved via the mouse.

Arcball Rotation

To rotate a volume you use the left mouse button. Click on the centre (more or less) of the view screen and without releasing the left mouse button drag the volume in your desired direction you wish to rotate it. See the figure below for more details.

Zooming In/Out

Zooming in and out is achieved using the right mouse button. You can zoom in by clicking and not releasing the right mouse button and moving the mouse down. Or to zoom out you click the right mouse button and without releasing move the mouse up.

Translation

To move or translate a volume you use the middle mouse button. Translation is achieved by clicking and keeping pressed the middle mouse button, then by either moving left, right, up or down you are able to move the volume. To stop translation simply release the middle mouse button.

(NB) Currently the centre of rotation is not affected by the translation, and the volume will still rotate about it's centre even after translation. The ability to change this behaviour will be introduced in a future release.

*Exercise 2:
Try rotating and zooming the volume.

Toolbars

Viewing

VolViewerMenuTools.PNG

This toolbar allows you to control various viewing options.

  • I: Toggles the volume greyscale channel
  • R: Toggles the volume red channel
  • G: Toggles the volume green channel
  • B: Toggles the volume blue channel
  • S: Toggles the iso-surface (if computed)
  • mip: Toggles the Maximum Intensity Projection mode
  • BG: Allows you to specify the background colour
  • 3D: Allows you to enable stereo rendering (requires a 3D screen)
  • camera icon: Takes a screen grab of the current view and prompts you with a save file dialogue.
  • qual: Various viewing quality presets.
  • view: Various view direction presets.
  • on/off: Various viewing toggles.
*Exercise 3:
Enable/Disable the red channel
Toggle the MIP rendering mode
Use the view menu to view your data from the LEFT orientation.
Use the on/off menu to toggle the axis

Tools

VolViewerTools.png

  • graph icon: Brings up the transfer function widget.
  • crop icon: Brings up the crop widget.
  • clipping plane icon: Brings up the clipping widget.
  • measure icon: Brings up the measure widget.
  • surface icon: Brings up the iso-surface widget.
  • filter icon: Brings up the filter widget.
*Exercise 4:
Open the transfer function widget and adjust the opacity and threshold the volume.
Open the clipping widget to clip the volume
Open the filter widget to apply some Gaussian smoothing to your volume.

Settings

VolViewerSettings.png

  • visual bookmarks icon: Allows you to save an orientation, clip state and transfer function state of your volume as a bookmark
  • movie icon: Allows you to save movie frames for your volume.
  • lighting icon: Allows you to apply lighting to your volume data.
  • settings icon: Allows you to control various performance and quality setting
*Exercise 5:
Use the visual bookmarks to save two different views of you volume, and toggle between them by double clicking the thumbnails.
Use the movie icon to save the frames for a movie

Command Line Arguments

Below is a list of command line arguments supported by the VolViewer application:

General

voldir=XXXXX            //To specify a local directory containing an image stack 
msr=XXXXX              //To specify a local MSR file (measurement geometry object) to load
tfunc=XXXXX            //To specilfy a local TFN file (transfer function) to load
slc=XXXXX               //To specify a local SLC file (clipping planes) to load
auto_close=1           //Tell the application to automatically close once all command line arguments are executed
auto_hide=1            //Tell the application to hide and run in a gui less mode

Movies

movie_rotate(sampling, savefolder, x, y, z, angle)                  //To create a rotation movie from an image
  • sampling: is the angle step size
  • savefolder: is the folder we wish to save frames to
  • x,y,z: either 0 or 1 to enable rotation around that axis
  • angle: the angle to rotate about
movie_rock(sampling, savefolder, angle)                               //To create a rock movie from an image 
  • sampling: is the angle step size
  • savefolder: is the folder we wish to save frames to
  • angle: the angle to rock by (+angle to -angle)

Projections

set_view( x, y, z)                                                         //Set the default view of the volume as euler angles
render=1                                                                    //Creates a png of the volume in the root folder

OMERO

omero_server=XXXXX               //To specify the url of an omero server
omero_username=XXXXX          //To specify a username to connect to the omero server
omero_password=XXXXX          //To specify the password for the given username to connect to the omero server
omero_sessionid=XXXXX          //To specify a session id to join on the omero server
omero_port=XXXXX                //To specify the port of the omero server
omero_imageid=XXXXX           //To specify the image id on the omero server we wish to load in volviewer