Views
No views yet
indian_tb_xray_scan_dataset. The script automates clinically-motivated best practices: advanced augmentations (MixUp, CutMix, CLAHE, Gaussian noise), focal loss + class weighting, SMOTE-Tomek rebalancing, shortcut auditing, domain adversarial regularization, temperature scaling, MC-dropout uncertainty, TTA, and ensemble evaluation.pip install -r requirements.txtindian_tb_xray_scan_dataset using the provided folder split:indian_tb_xray_scan_dataset/
abnormal-tuberculosis/
*.dicom|*.dcm
normal/
*.dicom|*.dcmmetadata.csv with filepath,domain columns to expose acquisition-site domains for adversarial alignment.1python train_tb_classifier.py \
2 --data_root indian_tb_xray_scan_dataset \
3 --output_dir runs/baseline \
4 --batch_size 8 \
5 --epochs 10 \
6 --amp--mixup_alpha/--cutmix_alpha: enable MixUp/CutMix (set to 0 to disable).--smote_tomek: rebalance training split using SMOTE-Tomek on radiograph statistics.--audit_shortcuts: dump shortcut_report.json with contrast/brightness deltas per label.--use_weighted_sampler --class_weights 1.0 2.0: increase recall on TB-positive cases.--tta and --mc_dropout_samples 16: activate test-time augmentation + Monte-Carlo dropout metrics.1python train_tb_classifier.py \
2 --num_models 3 \
3 --seed 7 \
4 --output_dir runs/ensemble \
5 --tta --mc_dropout_samples 16timm/maxvit_base_tf_512.in21k_ft_in1k? Use the companion script:1python train_tb_classifier_maxvit.py \
2 --data_root indian_tb_xray_scan_dataset \
3 --output_dir runs/maxvit \
4 --batch_size 4 \
5 --epochs 10 \
6 --ampdata_config.1python train_tb_classifier.py \
2 --eval_only \
3 --checkpoint runs/baseline/tb_dinov3_run0.pt \
4 --tta --mc_dropout_samples 16--ensemble_checkpoints ckpt1.pt ckpt2.pt to fuse heterogeneous backbones.1python inference_tb_classifier.py \
2 --checkpoint runs/baseline/tb_dinov3_run0.pt \
3 --temperature_path runs/baseline/temperature_run1.pt \
4 --data_root indian_tb_xray_scan_dataset \
5 --output_dir runs/baseline/inference \
6 --batch_size 64 \
7 --amp --tta--mc_dropout_samples 8 to retrieve epistemic uncertainty estimates, and add --save_predictions --save_logits to dump CSV/tensor artifacts for downstream audit.metrics.json: full validation/test stats (accuracy, F1, AUC, ECE, MC-dropout uncertainty, etc.).temperature_run*.pt: calibrated temperature parameters per model.history_run*.json: per-epoch logs.logits.pt (set --save_logits).AutoModel loads Dinov3 ConvNeXt; AutoTokenizer is initialized for completeness even though this is a vision backbone.python train_tb_classifier.py --help to inspect every flag.