IoBT-VISTEC / OCTAve

Implementation for OCTAve: 2D en face Optical Coherence Tomography Angiography Vessel Segmentation in Weakly-Supervised Learning with Locality Augmentation (IEEE Transactions on Biomedical Engineering))

Home Page:https://iobt-vistec.github.io/OCTAve/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

OCTAve: 2D en face Optical Coherence Tomography Angiography Vessel Segmentation in Weakly-Supervised Learning with Locality Augmentation

DOI License

ARCHFIG

This repository contains the implementation used in the experiment for replication study (experimentation branch) and ease-of-use implementation (main branch).

For an additional information about our work, please visit the project homepage.


Installation

Usage of virtual python environment such as conda or virtualenv is highly recommended.

pip install -r requirements.txt

Usage

For main branch

# Import model's torch nn.module
from architectures.models.octa import OctaScribbleNet
# Import losses
from architectures.segmentor.losses import WeightedPartialCE, DiceLoss, InterlayerDivergence
from architectures.discriminator.losses import LSDiscriminatorialLoss, LSGeneratorLoss

# Use as you see fit (PyTorch training loop, PyTorch Lightning's LightningModule, Pytorch Ignite, etc.)
...

For experiment branch

Special Requirement: As our experiment is resource intensive and the high-performance cluster were used, SLURM job submitter package submitit is required in our implementation. If your machine does not have job scheduler like SLURM available, a modification to the train script to use LocalExecutor is mandatory (We will update the codebase to make this process automatic at the later date). Please refer to their repo. We will try to response to any inquiries as soon as possible.

  • Download resnest50 pretrained weight from this github release.

  • Download ROSE and OCTA-500 datasets. Both datasets required an email request to the dataset owner for an access.

  • Prepare datasets.

  • Train the model.


Citation

@ARTICLE{9999313,
    author={Chinkamol, Amrest and Kanjaras, Vetit and Sawangjai, Phattarapong and Zhao, Yitian and Sudhawiyangkul, Thapanun and Chantrapornchai, Chantana and Guan, Cuntai and Wilaiprasitporn, Theerawit},
    journal={IEEE Transactions on Biomedical Engineering},
    title={OCTAve: 2D en face Optical Coherence Tomography Angiography Vessel Segmentation in Weakly-Supervised Learning with Locality Augmentation},
    year={2022},
    volume={},
    number={},
    pages={1-12},
    doi={10.1109/TBME.2022.3232102}
}

About

Implementation for OCTAve: 2D en face Optical Coherence Tomography Angiography Vessel Segmentation in Weakly-Supervised Learning with Locality Augmentation (IEEE Transactions on Biomedical Engineering))

https://iobt-vistec.github.io/OCTAve/


Languages

Language:Python 100.0%