*************** OCTAVA Help ***************
This file contains help and other data for the
OCTAVA vascular analysis toolbox
*******************************************
*******************************************
System Requirements
MATLAB APP version:
MATLAB version must be 2019 or more recent
MATLAB toolboxes required:
-Fuzzy logic toolbox
-Image processing toolbox
-Statistics and machine learning toolbox
Standalone version:
MATLAB runtime environment 2020b
Fully compiled softare available at https://sourceforge.net/projects/octava/
*******************************************
*******************************************
Image requirements
Images are expected to be square with an equal number of pixels in the x
and y directions. If this is not the case, images should be resized using
the button on the front panel or an appropriate image subset should be chosen.
Accepted image formats include the following:
tif
png
jpg
bmp
mat
*******************************************
*******************************************
Process single image instructions
1. Load image into OCTAVA
2. Binarize to generate segment vessels from the background
3. Press "skeletonize" to skeletonize, identify vessels and nodes
4. Press "Generate Metrics" to calculate network metrics and generate histograms
See below for more details
***** Image selection *****
Load image
Clicking this button allows the user to select an image to process. The
image will be displayed in the window labeled 'Original Image.'
Resize
Resize allows the user to change the dimensions of the image in pixels.
A window pops up for the user to manually enter the desired size in pixels.
For large images, the algorithm may cause memory problems depending on
the performance of your computer. Resize gives you the option to compress
images to reduce the number of pixels. This may impact the precision of your
results. Conversely, for images with a low number of pixels, increasing the
size in pixels can improve the segmentation. Images should be resized to
have the same pixel size in both dimensions. The same pixel size should be
used for all images in a dataset to allow for comparison so that filters can
be applied uniformly across all images.
Image subset
Allows the user to select a square or circular region from within the
loaded image. A new window will pop up. Select the desired shape (rectangle
or round) and press the 'Start' button. The ROI can then be drawn onto
the image directly. The button 'Get ROI size' can be used to check the dimensions
of the selected region in pixels or in mm. The conversion to mm is based on
the 'image size' value on the main interface. Once a satisfactory ROI has
been selected, click 'Done.' 'Clear' will clear the window to select a new ROI
and 'Cancel' will allow you to return to the main window without selecting
a new subregion. If the number in the 'image size' box on the main interface
will be based on the size of the selected subregion, click the box labeled
'Use ROI size as image size?' to recalculate the conversion factor.
***** Image Filtering *****
Median Filter
Removes small noise features from the image size using a smoothing filter
The numerical value represents the filter size in pixels. A larger number
corresponds to removal of larger features. The median filter will only be
applied if the check box is selected.
Frangi Filter
The Frangi filter is a Hessian filter which enhances vessel-like structures
in the image. The numerical value represents the maximum and minumum
kernel size to be applied. Sigma max gives an indication of the upper bound
of vessel diameter expected in the image in units of pixels. A larger number
corresponds to a larger maximum vessel diameter. Overestimation of sigma max
can lead to artificial vessel dilation. Undersetimation of sigma max can lead
to poor segmentation of vessels.
***** Vessel segmentation *****
Binarize
This button applies the image filtering and segmentation algorithms
selected in the user interface to generate a binary image which segments the
vessels from the background. The binary mask overlaid on the original image
will be displayed in the window labeled 'Segmented image.' The regions
identified as vessels will be shown in yellow.
Binarization Method
The user can select between two binarization algorithms: Fuzzy means and
Adaptive yhresholding. Fuzzy means is generally a more robust method, but
Adaptive thresholding may be useful for users working with retinal data.
For adaptive thresholding, the kernel size may need to be tuned based
on the size of your image in pixels.
If the segmentation using fuzzy means is inedequate, try increasing the
number of pixels in the image using the 'Resize' button.
Invert
Binary mask must be generated with the vessels in white and background in
black. If the binary mask is generated with black vessels, the Invert button
can be use to switch the color values of the two regions.
AT kernel size
If the adaptive thresholding algorithm is used, the kernel size mush be
selected. The kernel size determines the size of the area around a given
pixel used to generate the local threshold value. The kernel size is specified
in units of pixels.
Pre binary
In the case that images have already been binarized outside of OCTAVA,
the user can skip the binarization step using the Pre binary check box
***** Skeletonization and network analysis *****
Skeletonize
This button intializes the skeletonization of the image and classification
of network elements. The skeletonization in perfomed using a decomposition
of the binary mask until a single pixel width line is left for each identified
vessel. The skeletonized image overlaid on the original image is displayed
in the window labeled 'Skeletonized image,' with the skeleton displayed in yellow.
The skeleton is then converted into a graph structure in order to analyze the
interconnectivity of the network. The output of the graph analysis is show
in the window labeled 'Overlay.' In the overlay image, nodes (branchpoints)
are rendered in pink. Yellow lines indicate segments, which connect to the vessel
network on both ends. Green lines indicate branches, which connect only on
one end. Blue lines are isolated elements, which do not apear to be connected
to the network. Vessel diameters are calculated based on a euclidian distance
transform.
Display overlay
Depending on the memory availaible, generation of the overlay image can be time-
intesive. This output can be suppressed using the Display overlay checkbox to
speed-up processing time.
Twig Size
This setting determines the minimum length of the of isolated elements and branches(in pixels)
to be included int the analysis. Any smaller elements, termed twigs,
are excluded from the analysis.
Twigs are excluded from statistical analysis
***** Generation and display of metrics *****
Generate Metrics
Clicking the button generates the metrics and displayed them on the main
interface. The size of the image in mm must be specified in order to obtain
accurate results. Some metrics are displayed in the metrics section on the
main interface, as well as histograms of the diameters, lengths, and tortuosity.
The bin size of the histograms are adjustable on the front panel. The generate
metrics button must be pushed again to reload these plots.
Images size (mm)
The size of the image in mm must be specified in order to obtain
accurate results. The size here should refer to the original loaded image before
cropping or resizing. If the image is circular, the diameter of the image
should be specified.
***** Retinal metrics *****
Aditional metrics are available for analysis of retinal OCTA measurements
FAZ analysis
FAZ analysis is implemented using a two-step process. First, the contour is
initialized using Rapid FAZ, Manual FAZ, or Draw FAZ. In each case, a new window
will pop up showing the segmentation. Then, the user has the option to further
optimize using active contouring.
Rapid FAZ
Rapid FAZ initializes the segmentaion using a Gaussian filter. The stringency
factor can be used to optimize the Rapid FAZ segmentation.
Maual FAZ
If the Rapid FAZ is insufficient, the user can manually define an inital contour.
The user clicks several points around the border of the FAZ to define an
initial contour. 4-5 points should be suffient if active countouring will
also be used.
Draw FAZ
Allows the usere to manually draw the full shape of the FAZ contour.
Rapid FAZ stringency factor
This slider can be used to tune the performance of the rapid FAZ contour
initialization.
Tune FAZ segmentation
This allows the user to apply a Chan-vese active contour optimization to further
tune the FAZ segmentation after the initialization step.
Measure FAZ
Measures the area and other metrics related to the foveal avascular zone.
If the Tune FAZ segmentaion button is selected, and active contouring will
run to further uptimize the segmentation. The active contouring should stop
its own. Upon clicking this button, a new window will pop up showing the
actve contour.
Regional analysis
The regional analysis defines a range of metrics by region in the retina.
The regions can be defined using four different methods:
- a square grid with 9 equal segments
- a circular grid centered on the centerpoint of the FAZ with regions
defined by the ETDRS grid
- a circular grid centered on the centerpoint of the FAZ with regions
defined by the extended ETDRS grid
- Concentric rings around the fovea center
Region names are defined based on wheter the right or left eye is specified.
***** Batch processing *****
Raw data folder
When batch processing, the user should select the folder where the images
are stored using the Raw data folder button. If Process from folder is selected,
Batch processing will run for all images in this folder of the specified file type.
File type
Specifies the filetype for generating the list of images when Process from
folder is selected. This has no effect if processing from a list.
Save binary
Allows the user to specify whether binary images should be saved
Abort
Allows the user to abort the batch processing before all images have been processed
Batch resize
If this button is selected, all images will automaitically be resized to
square images with dimensions in pixels matching the number in the adjacent
box.
Retina check box
This is used for batch processing indicating that the retinal metrics should
be calculated.
Variable image size
Allows the user to process a dataset where images do not all have the same size.
This is relevant, e.g., for applying axial length correction in retinal images.
This feature only works if Proces from list is selected since the list of sizes
for each image must be read from a list.
Process from folder/list
Choose whether to batch-process all the files of a particular file type in the
selected folder or to process the files on a list. The list should be in an excel
file with one column called "name" (all lower case). This column should contain the
list of files to be processed including the file extension, e.g, Retina1.png.
This allows the user to process images with different file types in one batch
or to process images with different sizes, e.g., to apply azial length correction
for retinal images. In order to use the Variable image size feature, there must be a
colmun in the spreadsheet called "size" (all lower case) which contains the size
of each image in mm.
*******************************************
*******************************************
Saving data
Metrics, skeleton, and overlay images are saved automatically each time the
analysis is run. The metrics are saved in a timestamped excel file with the
name of the dataset.
From the Saving menu:
-Save Binary Map - allows manual saving of the binary map
-Save session - saves a record of all metrics acquired since software was
opened or session was cleared
*******************************************
*******************************************
Overview of metrics
Vessel area density
Vessel length density
Total vessel length
Number of nodes/branchpoints
Mean diameter
Median diameter
Mean Length
Median Length
Mean toruosity
Branchpoint density
Fractal dimension
Variance, skewness, and kurtosis of diameter, length, and tortuosity
FAZ metrics
Area
Eccentricity
Circularity
Centroid
Perimeter
Axis ratio
Major and minor axis length
Acircularity index
FD 300 (Foveal density in a 300 micron ring around the FAZ)
*******************************************
*******************************************
License data
Export_fig
Skel2Graph