New end user features in GIMIAS 1 1 0
- 1 Usability
- 2 Widgets Input
- 3 Remove data objects (Idea #9: Is not easy to remove a set of data objects)
- 4 Multiple landmark sets
- 5 Toolbars
- 6 DICOM
- 7 GIMIAS Workflow
- 8 Views
- 9 Working Areas
- 10 Plugins
- 11 Processing Tools
- 12 Readers and writers
- 13 Selection Tools
- 14 BSV: multidimensional signal viewing and exploration
Improved name of the tabs: This allows to clearly see the current selected tab
The selection of the inputs of the widgets have been improved, using a combo box with the possible data objects.
You can click the combo box arrow at the right and you can choose the desired input from the data tree.
Remove data objects (Idea #9: Is not easy to remove a set of data objects)
Added a right mouse button option and the “Delete” key to remove data objects.
Multiple landmark sets
Added a button “New landmarks” to create a new landmark set. Now you can have multiple landmark sets for one data object.
Split the main toolbar into several specific toolbars. You can show/hide each toolbar using the Menu option.
Added a new toolbar to show/hide common widgets
Pressing each button of the toolbar you will be able to show or hide a concrete widget. For example, the first buttons allows you to show the Data tree and the second one is for the Command Panel.
- Data Tree
- Command Pannel
- Time management
- Appearance Suitcase
- Data Information
- Processing Tools
- Signal Viewer
- Bull’s Eye Plot
- Image Contrast
- Working area configuration
You can access the same options using the menu:
You can manage very often used rendering properties: show/hide Lookup table, lookup table, opacity.
All possible interactors are present in this toolbar: landmarks, measurements and manual segmentation.
Standard toolbar for managing a single MultiRenderWindow.
You can change the layout of the currently selected MultiRenderWindow
Working Area Toolbar
You can choose the working area.
Open and save files.
Added Most Recent Used files to DICOM plugin for DICOM/ DICOMDIR files and DICOM directories. Save last opened directory.
Drag and Drop DICOM/ DICOMDIR files and DICOM directories directly into DICOM plugin.
Added IO Toolbar for DICOM data.
Extended GIMIAS with the possibility to create, edit and use workflows. A GIMIAS Workflow is a way to organize the processing steps and provide a simplified navigation to the end user from the initial step to the final step. For example we can take a look at Angio Morphology Clinical Workflow:
- In GIMIAS, this workflow is represented as tab pages. Each workflow step (tab page) contains a set of processing steps. Each processing step has a set of alternatives. For example. Step number 2 Vessel Segmentation has a default segmentation algorithm. In case that the default one is not working, there are a list of possible alternatives that the user can select.
- Perspective: GIMIAS still supports the previous way of loading plugins, called “Plugin Perspective”. To switch between these two perspectives, you need to select the appropriate menu entry in the File->Perspective->Plugin or File->Perspective->Workflow. When using the “Workflow” perspective, all needed plugins are loaded automatically.
- Customizable: Each tab page will contain specific processing widgets, toolbars, working areas and layout. So its easy to customize GIMIAS interface for a specific end-user.
- Persistence: Workflows are stored as XML files in the user home folder. In Windows the folder is C:\Documents and Settings\<User>\.gimias\Workflows. Is possible to store specific plugin properties like PACS AET title or a specific threshold parameter of a processing widget.
- Version: Each workflow has a name and a version. So it’s easy to update them.
- Workflow Navigation: Added a new widget to easily navigate through the processing steps with a next and back arrows like a web browser.
To manage workflows, you need to access the File->Workflow Manager Menu entry. The following window appears:
The basic operations you can perform are:
- New: Creates a new empty Workflow
- Edit: Allows to edit the currently selected workflow. You can also double click on the workflow to edit
- Rename: Renames the currently selected workflow. This will also change the XML file name
- Activate: Will change the active workflow. This button will automatically change the perspective to “Workflow” and restart Gimias
- Delete: Deletes the workflow and the XML file from disk
It allows to edit a workflow. At the left side you have all possible components that are registered in Gimias and can be added to the workflow. At the right side you have the currently edited workflow. As a example we will take a look at AngioMorphology workflow.
- Left side: You can see the needed plugins to create this workflow: Common, DICOMPlugin, MeshEditorPlugin, AngioSegmentationPlugin, AngioMorphologyPlugin. Common folder contains all components registered as common for all plugin tabs.
- Right side: This workflow has 4 steps. Each step contains Processing steps and Windows. For example “Load image data” step contains two specific windows from DICOMPlugin: WorkingAreaPanelWidget and ConnectToPacsDialogWidget. While Vessel Segmentation contains one processing step and 4 alternatives.
How to create/edit a workflow
To edit the workflow you need to
- Start GIMIAS with the Plugin Perspective and load all the plugins that you need to create the workflow
- Open the Workflow Editor
- Add a workflow step: Press right mouse button over the Workflow name and select “Add a step”. By default all Common widgets will be added automatically. Is possible to remove some of the “Common” widgets that are not needed in your workflow. You can edit the workflow step name pressing F2 key.
- Add components: Drag and drop the processing steps and the windows from the left tree to the right tree. You can select multiple components.
- Remove components: You can remove a component from the right tree dropping it out of the window
- Change workflow steps order: You can change the workflow steps order or the processing steps order with drag and drop over the right tree.
- Press “Ok” button to save the changes or “Cancel” button to discard them.
With workflow navigation widget you can navigate through the workflow processing steps pressing next and back button. With the middle button you can access the alternative processing steps.
Ortho Slice view
This is the simplest method for visualization. This working area is composed of 3 planar cuts through the volumetric image and one 3D view.
- X View: sagittal
- Y View: frontal, lateral or coronal
- Z View: transversal or axial
- 3D View
The possible layout configurations for this view can be managed using the layout toolbar. You can also change the rotation, flip and direction of each plane.
Multi Slice View
This view is composed of several cut planes and one 3D view. By default the cut planes are parallel and the direction is Sagittal. The goal of this view is to show several cut planes of an image at the same time and allow a general overview of the image.
It’s possible to change the direction of the cut planes and number of slices using the configuration window. The configuration window allows you to create your own view. You can add as many slices as you want and configure the direction of each slice independently.
- The cut planes are not related to the DICOM slices. In the future, we will add this feature to configure the cut planes automatically.
- The Ortho Slice View is a special case of Multi Slice View with three cut planes in each direction.
Skeleton visualization in 2D views
Extended rendering library to allow visualization of skeleton points in 2D view.
Hide frame border colors
Added an option to hide the frame border color to make the interface colors smoother.
The Working area is the window that appears in the center of Gimias. It is used to render the data objects. By default, Gimias provides several working areas. However, more working areas can be added externally.
Side by Side
This working area is composed of two OrthoSlice views showing the 3D view alone. The goal of this working area is to compare two data objects side by side.
It’s also possible to link the camera position of the views using the link button in the working area toolbar.
Note: Since this working area is composed of 2 OrthoSlice views, you can also change the layout of each OrthoSlice view.
Compare three cut planes
This working area is composed of three OrthoSlice views showing the X, Y and Z planes. The goal of this working area is to compare three data objects side by side.
For example, the user navigates through the first image and the rest of the views will be automatically updated to the same position.
It’s also possible to link the camera position of the views using the link button in the working area toolbar.
Note: Since this working area is composed of 3 OrthoSlice views, you can also change the layout of each OrthoSlice view.
Split the GIMIAS framework functionalities in several plugins. Now you can select any of these plugins to load specific functionalities:
- Cardio Tools: Bull’s Eye plot widget
- DICOM: DICOM viewer and PACS
- Image Tools: Image cropping, change orientation and other common image tools
- Manual Segmentation: Manual segmentation tool to create a mask image
- Mesh Editor: Mesh editor tools
- Neuro Tools: Neuroimaging tools like image contrast widget
- Scene View: Visualization empty plugin
- SignalViewer: Signal navigation and editor
Generate mask image from surface mesh
Added an option to generate a mask image from a surface mesh. The main goal of this function is to create a mask image using ROI interactor, without empty slices.
You can select different ROI in different separate slices. For example slice number 1, number 5 and number 15.
The mesh contains all voxels from the mask image.
The image contains all “0” voxels except the ones that are inside the surface mesh, that are “1”.
Added a new widget to change orientation of images
For example when you press the button Flip Up/Down, the image will be flipped like in this example:
It allows you to overlay an image to a main image.
For example the main image can be an MRI and the overlay image can be a PET.
Readers and writers
Added an option to select the desired fields from a CGNS file and change the frequency of a BrainVision file signal.
When you open a BrainVision file, a window allows you to change the sub sampling factor that will be used when reading the signal data.
In this example, the initial sample rate of the file was 500 Hz and the output sample rate will be 50 Hz.
When you open a CGNS file, a dialog appears that allows you to select the fields you want to load.
The option “Use compression” allows optimizing the memory when loading data with multiple time steps.
You can enable the manual segmentation widget through the corresponding Icon in the Interactors Toolbar or through the menu option Tools->Selection->Manual Segmentation.
In the Selection Toolbox different options will appear.
- Add level: You must specify the name for the new level (zone) and then click add. Each level will correspond to a different pixel value in the mask image. You can have up to 16 levels.
- Select level: You can change the level using the combobox. When interacting (left mouse button) the pixel value corresponding to the selected level will be drawn. You can change the name of the selected level by editing directly in the combobox and pressing enter. Next to the selected level, the color corresponding to it will appear.
- Erase only selected color: When erasing (CTRL + Left mouse button) you can choose to erase only the selected level or all them.
- Lookup table: You can change the lookup table if you don’t like the default colors.
For example here you have a segmentation with 3 levels (LV epi, LV endo, RV endo)
The multi level ROI can be saved to disk and restored later. The level information is saved in the VTK file header.
Multi Level ROI information
You can enable the multi level ROI information widget through the menu option View->Visualization->Multi Level ROI
In the multi level ROI information widget you have the following options:
- Propagate over time: This option allows the user to copy the mask image in a range of time steps. You must specify the range setting the left and right values.
- Measures: This shows the mean, standard deviation, minimum and maximum intensity values of the image corresponding to the selected level and time step. You can change the level using the combo box and the time step using the time management widget (View->Windows->Time management). When you click update the values are refreshed with the selected level and time step.
- Create signal: You can create a signal to compare the evolution of those values over time. Those values are also computed using only the selected level.
You can visualize the signal using the signal viewer.
Extended manual segmentation to work with 2D images
You can open a 2D image and use manual segmentation tool.
Extended landmarks selection to allow multiple landmarks set.
You can enable the surface selector through the corresponding Icon in the Interactors Toolbar or through the menu option Tools->Selection->Surface
In the Selection Toolbox different options will appear, all of them use the CTRL + Left Mouse Button interaction:
- TriangleSelect: allows the user to select triangle by triangle
- SphereSelect: allows the user to select a circular region, using a sphere that grows dragging the mouse
- BrushSelect: allows the user to select a region with a brush of defined radius, by dragging you will create a path with your brush (for the moment it only allow one brush path, if we switch to another type and then we come back we can use it multiple times)
- combination of different options: allows the user to change the selection type during the selection of a specific region.
Once made the selection one of the Tools that are listed in the section Select Tools could be applied.
- Remove Cells option (working)
- Local Refiner, Edge Swap and Taubin Smoothing options ( to be improved)
BSV: multidimensional signal viewing and exploration
Modified the signal viewer plugin to synchronize image and signal using the signal markers.
Step1: Open signal data
Open signal data. You can see in the images bellow a standard 32 channel EEG signal with the red markers on the first signal channel.
The second picture is the double banana visualization. You can compute it using the menu option Tools->Signals->Double Banana.
Step 2: Open set of images
Next, the user can open the 400 SPECT images of the brain acquired during the same period. Using the Image Contrast Widget, the user can easily adjust the blue and red colors of the image.
Step 3: Synchronize signal and images
Propagate the signal markers to the image. You need to open the Tools->Signal->Propagate Signal Time.
Pressing the button Synchronize of the Signal Viewer will synchronize the image and the signal
Open the time management window to navigate through the signal and images at the same time. You can adjust the offset and window size of the signal view.
Step 5: Add an annotation to the signal
Right click on a channel of the signal viewer and select “Add annotation”. Select the annotation type you want to add. Drag the mouse button to set the duration.
Step 6: Add free annotations to the signal
You can add free annotations use the right click button and the option “Add free annotation”. Using these annotations, you can freely set the name of the annotation.
Step 7: Save signal in GDF format
Save the signal using the menu File->Save selected data entity.