GVRImageToVolume

MLModule

genre

Octree

author

MeVis Medical Solutions AG

package

MeVisLab/Standard

dll

MLGVR

definition

MLGVR.def

see also

SoGVRVolumeRenderer, GVRVolumeSave, GVRVolumeLoad, GVRVolumeToImage

keywords

octree

Purpose

The module GVRImageToVolume converts an ML image to a GVRVolume image.

Details

The GVR cache file supports Tuint8/Tuint16 storage of six dimensional images. It supports gray, RGB, and RGBA images; RGB is converted to RGBA internally. It creates a data-octree for each time point and u-dimension point. The volume stores the following additional information:

  • Image size (six dimensions)

  • Image data type

  • WorldToVoxel matrix (and thus the voxel size)

  • Original min/max

  • Stored min/max (e.g., if rescaling from float to Tuint8)

  • Histogram

The volume itself is split into octree nodes of equal size and and held in memory. Additional book-keeping information is generated, such as a binary histogram, min/max value, etc. The cache file allows very fast access to any subimage at a given octree level in any orientation, since the data is organized in small data cubes. The default of 32*32*32 has been tested to be a very good size on current processors, since it leads to a per node size of 64 KB when 16-bit data is used.

If the input images is a gray scale image, it is recommended to use the Rank filter to generate the resampled octree levels. The default is a Median filter, which typically provides the best results when volume rendering is considered. For colored images, the filter settings are ignored and averaging is performed for resampling.

Windows

Default Panel

../../../Modules/ML/MLGVR/mhelp/Images/Screenshots/GVRImageToVolume._default.png

Input Fields

input0

name: input0, type: Image

Output Fields

outVolume

name: outVolume, type: GVRVolume(MLBase)

Parameter Fields

Field Index

additionalTransformation: Matrix

Parent Computation Rank: Integer

Update: Trigger

Cancel: Trigger

progress: Float

Update In Background: Trigger

Cast to 8bit: Bool

startTaskSynchronous: Trigger

Update Mode: Enum

Force8bit: Bool

Status: String

Keep Volume While Updating: Bool

taskCanceled: Trigger

Node Size: Enum

taskFinished: Trigger

Pad Size: Enum

taskRunning: Bool

Parent Computation Method: Enum

taskVerboseLogging: Bool

Visible Fields

Update In Background

name: startTask, type: Trigger

When pressed, the cache file is converted in the background, enabling the user to still interact with the GUI.

Cancel

name: cancelTask, type: Trigger

When pressed, a conversion in the background is canceled.

Status

name: status, type: String, persistent: no

Shows the status of the module.

Force8bit

name: force8bit, type: Bool, default: FALSE

If checked, the input data is scaled to fit into 8-bit data and the octree is generated as 8-bit data.

Cast to 8bit

name: castTo8bit, type: Bool, default: FALSE

If checked, input data is cast directly to 8-bit without scaling or shifting.

Use this for tag data.

Node Size

name: nodeSize, type: Enum, default: SIZE32

Sets the desired size of the octree nodes, 32 is considered to be the best choice on current hardware.

Values:

Title

Name

​Size16

​SIZE16

​Size32

​SIZE32

​Size64

​SIZE64

Pad Size

name: padSize, type: Enum, default: AUTO

Sets the amount of overlapping voxels.

Pad1 is the minimum requirement for trilinear interpolation while Pad3 enables corrected gradient computation.

Values:

Title

Name

​Auto

​AUTO

​Pad1

​PAD1

​Pad3

​PAD3

Parent Computation Method

name: parentComputationMethod, type: Enum, default: RANK

Defines the used filter.

Set to either Rank or Average filter; for colored data, Average is used automatically.

Values:

Title

Name

​Rank

​RANK

​Average

​AVERAGE

Parent Computation Rank

name: parentComputationRank, type: Integer, default: 4

Sets a rank value used if the Rank filter is active.

Update Mode

name: updateMode, type: Enum, default: Off

Defines the update mode of this module.

Values:

Title

Name

​Off

​Off

​Auto Update

​AutoUpdate

​Auto Update In Background

​AutoUpdateInBackground

​Auto Clear

​AutoClear

Keep Volume While Updating

name: keepVolumeWhileUpdating, type: Bool, default: FALSE

If checked, the module keeps the previous volume in memory until the volume currently being converted in the background is finished.

Otherwise, the current volume is set to NULL while there is a conversion going on in the background.

Update

name: update, type: Trigger

When pressed, the module converts an ML image to a GVR volume.

Hidden Fields

startTaskSynchronous

name: startTaskSynchronous, type: Trigger

taskVerboseLogging

name: taskVerboseLogging, type: Bool, default: FALSE

taskFinished

name: taskFinished, type: Trigger

taskCanceled

name: taskCanceled, type: Trigger

taskRunning

name: taskRunning, type: Bool, persistent: no

progress

name: progress, type: Float, persistent: no

additionalTransformation

name: additionalTransformation, type: Matrix, default: 1 0 0 0, 0 1 0 0, 0 0 1 0, 0 0 0 1