File size: 5,115 Bytes
c58b7d0 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 | {
"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
}
} |