Robust semi-automatic vessel tracing in the human retinal image by an instance segmentation neural network
Data files
Mar 21, 2025 version files 117.13 KB
-
global_trace_annotation_drive.xlsx
42.95 KB
-
global_trace_annotation_new.xlsx
17.25 KB
-
global_trace_result_drive.xlsx
34.01 KB
-
global_trace_result_new.xlsx
19.10 KB
-
README.md
3.82 KB
Abstract
Vasculature morphology and hierarchy are essential for blood perfusion. Human retinal 20 circulation is an intricate vascular system emerging and remerging at the optic nerve head 21 (ONH). Tracing retinal vascular branching from ONH can allow detailed morphological 22 quantification, and yet remains a challenging task. We presented a robust semi-automatic 23 vessel tracing algorithm on human fundus images by an instance segmentation neural 24 network (InSegNN). InSegNN separates and labels individual vascular trees and enables 25 tracing each tree throughout its branching. We have three strategies to improve robustness 26 and accuracy: pseudo-temporal learning, spatial multi-sampling, and dynamic probability 27 map. We achieved 83% specificity, 50% improvement in Symmetric Best Dice (SBD) 28 compared to literature, and outperformed baseline U-net, and achieved 91% precision with 29 71% sensitivity. We have demonstrated tracing individual vessel trees from fundus 30 images, and simultaneously retain vessel hierarchy information. InSegNN paves a way for 31 subsequent analysis of vascular morphology in relation to retinal diseases.
The dataset contains starting points for global vessel tracing results.
DRIVE DATA
global_trace_annotation_drive.xlsx
This spreadsheet contains starting points for global tracing in DRIVE dataset.
- Subject: number assigned to each retina scan in DRIVE dataset
- ID: number assigned to each starting point pair
- Row_sp: pixel number in x axis of first start point
- Column: pixel number in y axis of first start point
- Row_other: pixel number in x axis of second start point
- Column_other: pixel number in y axis of second start point
- Vessel: number assigned to each vessel tree in current retina scan
- Sample: number assigned to each starting point pair in current vessel tree
global_trace_result_drive.xlsx
This spreadsheet contains the statistics of global tracing results for DRIVE dataset with different segmentation thresholds.
- Subject: number assigned to each retina scan in DRIVE dataset
- Vessel: number assigned to each vessel tree in current retina scan
- TN: true negative pixel count
- FP: false positive pixel count
- FN: false negative pixel count
- TP: true positive pixel count
- Threshold: number assigned to each global tracing threshold tested
NEW DATA
global_trace_annotation_new.xlsx
This spreadsheet contains starting points for global tracing in our new acquired dataset.
- Subject: number assigned to each retina scan in DRIVE dataset
- Row_sp: pixel number in x axis of first start point
- Column_sp: pixel number in y axis of first start point
- Row_other: pixel number in x axis of second start point
- Column_other: pixel number in y axis of second start point
- Vessel: number assigned to each vessel tree in current retina scan
global_trace_result_new.xlsx
This spreadsheet contains the statistics of global tracing results for our new acquired dataset.
- Subject: number assigned to each retina scan in DRIVE dataset
- Vessel: number assigned to each vessel tree in current retina scan
- TN: true negative pixel count
- FP: false positive pixel count
- FN: false negative pixel count
- TP: true positive pixel count
Sharing/Access information
Our GitHub repository also contains the retina scans, ground truth vessel segmentations, and network segmentation results along with the data hosted here. The retina scans and global trace annotations are inputs to the segmentation networks. The ground truth segmentations and network outputs are compared to generate the global trace result spreadsheets. Our GitHub repository is publicly available at:
The DRIVE dataset was derived from the following sources:
Code/Software
The DATA PREP SCRIPT folder contains MATLAB scripts for cropping the retinal scans into 96x96 pixel regions following the vessel traces for training the segmentation network. This folder also contains PYTHON scripts for matching the global tracing start points with vessel tree ID in the ground truth segmentations for evaluation of tracing results.
The TRACING SCRIPT folder contains PYTHON scripts for vessel segmentation. The main scripts are titled TRAIN (for training the segmentation network), TEST (for testing the segmentation network on local 96x96 patches), and TRACINGVESSEL (for global tracing). Other files are utilities to be used in the main scripts.