How sarseej-shrestha/lungnoduleclassification works
This repository implements a lung-nodule classification research workflow over LIDC-IDRI CT scans: prepare nodule-centered positive and hard-negative samples, split patients to avoid leakage, train a three-view classifier, and assess predictions and saliency. The checked-in split and output artifacts reflect this workflow. Source excerpts document preprocessing, dataset loading, training, inference metrics, and Grad-CAM; links for unsampled behavior are limited to what the tree and these excerpts support.
Main entry points: config.py Configuration · train.py Fold training · evaluate.py Model evaluation · gradcam.py Grad-CAM analysis
Components 15
Data preparation
- Sample extraction
src/preprocess.py - Preprocessed samples
input/subset6 - Patient stratification
src/splits.py - Patient splits
input/splits/patient_splits.json - Dataset loading
src/dataset.py - Configuration
src/config.py
Model training
- Fold training
src/train.py - Three-view classifier
src/model.py - Model checkpoints
Assessment
- Model evaluation
src/evaluate.py - Evaluation reports
output - Grad-CAM analysis
src/gradcam.py - Saliency overlays
output/gradcam
Other components
- Researcher
- CT scans
Connections 24
- Researcher → Sample extraction: runs extraction
- CT scans → Sample extraction: provides scans
- Sample extraction → Preprocessed samples: writes samples
- Researcher → Patient stratification: builds splits
- Patient stratification → Patient splits: writes patients
- Fold training → Dataset loading: loads batches
- Dataset loading → Preprocessed samples: reads samples
- Dataset loading → Patient splits: loads splits
- Fold training → Three-view classifier: trains model
- Fold training → Model checkpoints: saves checkpoint
- Fold training → Evaluation reports: writes history
- Model evaluation → Dataset loading: loads samples
- Model evaluation → Three-view classifier: runs inference
- Model evaluation → Model checkpoints: loads checkpoint
- Model evaluation → Evaluation reports: writes report
- Grad-CAM analysis → Dataset loading: loads samples
- Grad-CAM analysis → Three-view classifier: computes saliency
- Grad-CAM analysis → Model checkpoints: loads checkpoint
- Grad-CAM analysis → Saliency overlays: writes overlays
- Configuration → Sample extraction: sets parameters
- Configuration → Fold training: sets parameters
- Configuration → Three-view classifier: sets parameters
- Configuration → Model evaluation: sets parameters
- Configuration → Grad-CAM analysis: sets parameters