medtrace-brats-segresnet / model_card.json
AIOmarRehan's picture
SegResNet weights, TorchScript export and model card
c58b7d0 verified
Raw
History Blame Contribute Delete
5.12 kB
{
"name": "medtrace-brats-seg",
"version": "1.0.0",
"task": "3D brain tumour segmentation from four MRI sequences",
"intended_use": "Produce tumour compartment masks for MEDTRACE's longitudinal measurement pipeline. Research use. Not a diagnostic device and not for clinical decision-making.",
"architecture": {
"class": "monai.networks.nets.SegResNet",
"spatial_dims": 3,
"in_channels": 4,
"out_channels": 3,
"init_filters": 32,
"blocks_down": [
1,
2,
2,
4
],
"blocks_up": [
1,
1,
1
],
"dropout_prob": 0.2,
"parameters": 18798627
},
"input_contract": {
"channel_order": [
"t1c",
"t1n",
"t2f",
"t2w"
],
"note": "Channel order is not recoverable from the weights. Wrong order, wrong output, no error.",
"normalisation": "per case, per channel, zero mean unit variance over NON-ZERO voxels only",
"spacing_mm": [
1.0,
1.0,
1.0
],
"orientation": "as distributed by BraTS 2023 (already co-registered and skull-stripped)",
"cropping": "crop to the non-zero bounding box of the summed channels, 4 voxel margin",
"patch_size": [
128,
128,
128
],
"inference": {
"method": "sliding window",
"overlap": 0.5,
"blend": "gaussian"
}
},
"output_contract": {
"activation": "sigmoid, independent per channel",
"channels": [
"TC",
"WT",
"ET"
],
"channel_meaning": {
"TC": "tumour core = necrotic core + enhancing",
"WT": "whole tumour = necrotic core + oedema + enhancing",
"ET": "enhancing tumour"
},
"overlapping": true,
"postprocessing": {
"threshold": 0.5,
"min_component_voxels": 0,
"et_min_voxels": 200
},
"to_integer_labels": {
"convention": "BRATS",
"mapping": {
"1": "necrotic_core",
"2": "oedema",
"3": "enhancing"
},
"procedure": "write WT as 2, then TC as 1, then ET as 3, in that order"
}
},
"training_data": {
"dataset": "BraTS 2023 GLI, challenge training split (the only labelled split)",
"split_unit": "subject",
"split_seed": 20260813,
"cases": {
"train": 874,
"val": 191,
"test": 186
},
"subjects": {
"train": 792,
"val": 172,
"test": 169
},
"label_mapping_verified": true,
"excluded_cases": []
},
"training": {
"epochs_completed": 37,
"epochs_planned": 60,
"selected_epoch": 32,
"selection_metric": "mean Dice over TC, WT, ET on the validation split",
"loss": "DiceFocalLoss(sigmoid=True, squared_pred=True, batch=True)",
"optimizer": "AdamW lr=0.0002 wd=1e-05",
"scheduler": "CosineAnnealingLR",
"precision": "AMP float16",
"augmentation": [
"random axis flips",
"intensity scale +-10%",
"intensity shift +-10%"
],
"patch_sampling": "80% centred on whole tumour, 20% uniform",
"seed": 20260813
},
"metrics": {
"validation": {
"TC": {
"dice_mean": 0.9015418441673284,
"dice_median": 0.947789848286196,
"hd95_median": 2.0
},
"WT": {
"dice_mean": 0.9177529638232264,
"dice_median": 0.939965202760836,
"hd95_median": 3.316624879837036
},
"ET": {
"dice_mean": 0.8503461605067909,
"dice_median": 0.9047415373334963,
"hd95_median": 1.4142135381698608
}
},
"test": {
"TC": {
"dice_mean": 0.9078361539305267,
"dice_median": 0.9563434942782733,
"hd95_median": 2.0,
"sensitivity_mean": 0.9165695598827129,
"precision_mean": 0.9170155149790782
},
"WT": {
"dice_mean": 0.921562897191002,
"dice_median": 0.9489419374016819,
"hd95_median": 2.4494898319244385,
"sensitivity_mean": 0.9247750225794058,
"precision_mean": 0.9235932925559869
},
"ET": {
"dice_mean": 0.852042452735223,
"dice_median": 0.8984435921432055,
"hd95_median": 1.4142135381698608,
"sensitivity_mean": 0.8833305802745401,
"precision_mean": 0.8486887298796273
}
},
"empty_region_rule": "BraTS convention: with empty ground truth, Dice is 1 if the prediction is also empty and 0 otherwise. Not averaged away as NaN."
},
"limitations": [
"Trained on pre-operative adult glioma only. LUMIERE's post-treatment appearances, including resection cavities and radiation change, are not represented.",
"Requires all four sequences. Behaviour with a missing sequence is untested.",
"Assumes BraTS preprocessing: skull-stripped, co-registered, 1 mm isotropic.",
"Agreement with one annotation protocol on one dataset. Not a measure of clinical accuracy.",
"Selection and post-processing tuning both used the validation split, so validation figures are optimistic. Use the test figures."
],
"environment": {
"monai": "1.6.0",
"torch": "2.10.0+cu128",
"numpy": "2.0.2",
"device": "Tesla T4, 15.6 GB",
"amp": true
}
}