Top Banner
MatrixUser v1.0 User Guide Fang Liu ([email protected]) July 20, 2013 1 MatrixUser The MatrixUser is a multi-dimensional matrix analysis software package writ- ten using Matlab GUIDE. It is designed to view multi-dimensional (1D, 2D, 3D and 4D) real value matrix in Matlab and to graphically manipulate those multi-dimensional matrices for histogram analysis, ROI analysis and segmen- tation et.al. MatrixUser is adapted by MRiLab, a numerical MRI simulation platform, as the default image display and analysis tool. MatrixUser works with any real value matrix in Matlab. The current version of MatrixUser is made available and can be downloaded from SourceForge website. MatrixUser is released as free software. This means that you are free to use and modify this software as your needs, as long as you acknowledge the original author in any future work. If you find MatrixUser useful for the publication of any scientific results, including a line in your ac- knowledgments section referencing to MatrixUser and this belowing address is requested. MatrixUser downloading address: https://sourceforge.net/projects/matrixuser/ 2 Installing and Running MatrixUser In order to run MatrixUser, the Matlab core is the only software that is required. The current version of MatrixUser has been tested under the following Matlab versions: Matlab R2011a 64-bit Windows Matlab R2012b 64-bit Unix Installing and running MatrixUser is easy, you only need to download Ma- trixUser source code in a compressed file, then uncompress the MatrixUser root 1
13

Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

Mar 17, 2016

Download

Documents

leoliuf

The MatrixUser is a multi-dimensional matrix analysis software package written using Matlab GUIDE. It is designed to view multi-dimensional (1D, 2D, 3D and 4D) real value matrix in Matlab and to graphically manipulate those multi-dimensional matrices for histogram analysis, ROI analysis and segmentation et.al. MatrixUser also supports importing multiple data formats (DICOM, DICOM batch, NIFTI, MAT and Binary) into Matlab. If you need a handy graphic matrix analyzer in Matlab, MatrixUser is for you. Downloading Address: http://matrixuser.sourceforge.net/index.html
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

MatrixUser v1.0 User Guide

Fang Liu([email protected])

July 20, 2013

1 MatrixUser

The MatrixUser is a multi-dimensional matrix analysis software package writ-ten using Matlab GUIDE. It is designed to view multi-dimensional (1D, 2D,3D and 4D) real value matrix in Matlab and to graphically manipulate thosemulti-dimensional matrices for histogram analysis, ROI analysis and segmen-tation et.al. MatrixUser is adapted by MRiLab, a numerical MRI simulationplatform, as the default image display and analysis tool. MatrixUser works withany real value matrix in Matlab.

The current version of MatrixUser is made available and can be downloadedfrom SourceForge website. MatrixUser is released as free software. This meansthat you are free to use and modify this software as your needs, as long as youacknowledge the original author in any future work. If you find MatrixUseruseful for the publication of any scientific results, including a line in your ac-knowledgments section referencing to MatrixUser and this belowing address isrequested.

MatrixUser downloading address:

https://sourceforge.net/projects/matrixuser/

2 Installing and Running MatrixUser

In order to run MatrixUser, the Matlab core is the only software that is required.The current version of MatrixUser has been tested under the following Matlabversions:

• Matlab R2011a 64-bit Windows

• Matlab R2012b 64-bit Unix

Installing and running MatrixUser is easy, you only need to download Ma-trixUser source code in a compressed file, then uncompress the MatrixUser root

1

Page 2: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

folder, put the folder to any location in you computer. To run MatrixUser,you need open Matlab, then simple run the ‘Main.m’ script that is under theMatrixUser root folder.

The MatrixUser main window (Figure 1) opens up as a matrix manager forloaded matrices.

Figure 1: MatrixUser Main Window

3 MatrixUser Input

MatrixUser supports any real value Matlab matrix from either Matlab baseworkspace or external data file. There are several different approaches to importdata into MatrixUser under ‘Load’ menu, including:

• Load from workspaceMatrixUser protects data by isolating matrices fromMatlab base workspace.If the user wants to import matrices from Matlab base workspace into Ma-trixUser workspace, this option if very helpful. A matrix selection windowwill open (Figure 2), and allow the user to choose wanted matrices.

The operation buttons consists of

– || >>> : choose all matrices from available matrix list

– >>>>>> : choose chosen matrices from available matrix list

– <<<<<< : remove chosen matrices from selected matrix list

– <<< || : remove all matrices from selected matrix list

– Save : save a copy of matrices in selected matrix list from baseworkspace to MatrixUser workspace

• Load from DICOM file

MatrixUser supports loading multiple DICOM files by using a file filterinterface (Figure 3)

The user needs to load DICOM files into the loading interface by selectingwanted DICOM files (multiple selection supported) from data folder. The

2

Page 3: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

Figure 2: Matrix Selection Window. The system multiple selection hotkey issupported for choosing multiple matrices at once.

Figure 3: MatrixUser DICOM File Loading Interface

3

Page 4: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

selected files are listed in the DICOM file list. The user can click a singlefile to read its DICOM header and image preview. To manually create amatrix using DICOM files, the user needs to choose files from the left list,then press ‘>>>>>>’ to push the files into selected DICOM file list. Amatrix name must also be provided. Then pressing ‘Convert’ button willcreate a matrix based on chosen DICOM files if these files are compatible.The user can load these created matrices by pressing ‘Load matrix’ button.

• Load from DICOM file (Batch)

MatrixUser also supports loading DICOM files from a folder. This func-tion requires the folder path is provided. MatrixUser will try to createseparate matrices for DICOM files that may come from different imageseries.

• Load from Mat file

Mat file is natively supported by MatrixUser.

• Load from NIFTI file

NIFTI file with .nii suffix is supported by MatrixUser.

• Load from Binary file

Binary data file is supported by MatrixUser. The user is responsible forconfiguring the loading parameters (Figure 4).

Figure 4: MatrixUser Binary File Loading Interface

• Link Space

If the ‘Link Space’ checkbox on the MatrixUser main window is checkedwhen displaying matrix, the selected matrix will be replaced by the matrix

4

Page 5: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

of the same name in base workspace if exists. If there is no such a matrixin base workspace, MatrixUser will copy the selected matrix into baseworkspace.

4 MatrixUser Display

The user can choose to display the selected matrix by using the popup menuon the main window. The matrix size, type and value range are calculatedand provided on the right side. The user can press ‘Display’ button to activateMatrixUser display panel. Current version of MatrixUser supports displaying1D, 2D, 3D and 4D real value matrix and Matlab structure variable.

Figure 5: MatrixUser Display Panel

Figure 5 demonstrates the overview of the MatrixUser display panel interfacefor a 3D image. This interface consists of

1. Matrix Display Axes

The 3D image is displayed slice by slice on the matrix display axes. Theuser can move the mouse cursor to a single voxel to inspect the coordinateand value that are shown below the image.

2. Matrix Display Control

The matrix display control provides a set of sliders and popup menu thathelp control image display. This group consists of

5

Page 6: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

• Colormap Popup Menu: Choose different colormap scheme

• Slice Slider : Slide to move to another slice

• Slice EditText : Edit to move to another slice

• Time Slider : Slide to move to another time point or image phase,used for 4D image matrix

• Time EditText : Edit to move to another time point or image phase,used for 4D image matrix

• C Upper Slider : Slide to control the upper bound of color limits

• C Upper EditText : Edit to control the upper bound of color limits

• C Lower Slider : Slide to control the lower bound of color limits

• C Lower EditText : Edit to control the lower bound of color limits

3. Display Assist

MatrixUser also provides a set of buttons that help manipulate imagematrix, This group consists of

• : Reset image matrix

• : Turn on and off grid line on the image

• : Upsample or downsample image matrix by using various in-

terpolation methods (Figure 6)

• : Create a montage image for multiple slices (Figure 7)

Figure 6: Resolution Window. An example for doubling in-plane resolution byusing linear interpolation

4. ROI Control

MatrixUser provides a set of buttons for performing Region of Interest(ROI) analysis (Figure 8). The statistics for voxels (i.e. mean, standard

6

Page 7: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

Figure 7: Montage Image. An example for creating a 3-by-4 montage imageusing multiple image slices starting from slice 20

deviation and relative standard deviation) in delineated ROI is calculatedand updated when moving the ROI position or changing the ROI shape.To create a ROI, the user needs to click ROI button first, then draw aROI on the image axes. The ROI buttons consists of

• : Draw a free hand ROI

• : Draw a rectangle or square ROI

• : Draw a circle or ellipse ROI

• : Draw a polygon ROI

• : Draw a straight line for measuring distance in units of pixels

5. Segmentation Control

MatrixUser currently supports functions for performing manual segmen-tation, editing, saving and loading segmented ROIs for multiple slices. Tocreate a segmentation ROI, the user needs to click segmentation buttonfirst, then draw a ROI on the image axes. After finishing the ROI, the usercan still modify the ROI detail before double clicking the ROI to confirmsegmentation. The segmentation buttons consists of

• : Do a free hand segmentation

• : Do a rectangle or square segmentation

7

Page 8: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

Figure 8: Multiple ROIs

• : Do a circle or ellipse segmentation

• : Edit segmentation

• : Save segmentation into a MAT file

• : Load segmentation from a MAT file

To edit segmented ROI (Figure 9), the user needs to move to the slice

where the wanted ROIs exist, then press to open segmentationmanager. The manager will automatically detect the type and location ofsegmented ROIs. The user can click any ROI item to inspect the locationof the ROI. To edit chosen segmentation ROI, the user must click ‘Edit’button to activate ROI outline. Both the shape and mask flag are editablefor segmented ROI. After editing, the user must click ‘Update’ to conformmodification. Notice that the user can press to remove segmentation

ROIs from overlapping with background image. The user can pressto save all segmentation ROIs into a MAT file. The file contains a maskmatrix with the same size of the original image and a cell array for storingsegmentation location information.

6. Other Tools

• : Plot histogram for current slice (Figure 10), if ROIs exist, plothistogram for latest ROI

8

Page 9: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

Figure 9: Editing Segmentation

• : Create a 3D graph for rendering Non-zero object in current

3D image matrix (Figure 11)

• : Perform Maximum Intensity Projection (MIP) along slicedirection

• : Overlap two image matrices that have the same matrix size

(Figure 12), notice that the user can press to remove fore-ground matrix from overlapping with background image.

• : Plot and update a profile curve along a line (Figure 13)

7. Matrix Control

Matrix Control group consists of

• Matrix Equation EditText : Accept legal Matlab syntax for manip-ulate matrices which are in Matlab base workspace (Figure 14)

• : Press to execute matrix equation from the EditText

• : Save temporary matrix, for example, interpolated matrix

8. 4D Support

MatrixUser supports to display 4D matrix with a second window showingthe fourth dimension as a curve (Figure 15). The user can move the mousecursor to interactively inspect curve shape for a single voxel. The secondwindow opens up when a 4D matrix is selected.

9

Page 10: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

Figure 10: Histogram for One Image Slice

Figure 11: An Example of 3D Rendering

10

Page 11: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

Figure 12: An Example of Overlapping Two Matrices. The foreground matrixis a arbitrary label matrix in this example.

Figure 13: An Example of 1D Profile. The user can relocate and resize theprofile checking line on the image.

11

Page 12: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

Figure 14: An Example of Showing Two Image Series Side-by-Side. Notice theequation in the Matrix Equation EditText and these two matrices are in Matlabbase workspace.

Figure 15: An Example of Displaying 4D Matrix

12

Page 13: Multi-dimensional Matrix Analysis Software MatrixUser v1.0 User Guide

9. 3D Slice

If the ‘3D Slice’ checkbox on the MatrixUser main window is checked whendisplaying matrix, a second window will open with images on another twoorthogonal orientation (Figure 16).

Figure 16: 3D Slicer

The operation buttons consists of

• : Activate and deactivate localizer line on main display

• : Activate and deactivate localizer line on main display

• ←→ : Flip left and right

• ↕ : Flip up and down

• : Switch images between main display and secondary display

To change localizer line, the user needs to activate localizer and then clickon main image axes.

5 MatrixUser Output

There are two approaches of saving matrices from MatrixUser workspace under‘Save’ menu.

• Save to Workspace : Save all matrices from MatrixUser workspace toMatlab base workspace

• Save to Mat file : Save matrices to MAT file

13