|
Size: 3428
Comment:
|
Size: 3962
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 1: | Line 1: |
| = mri_overlap = | = mri_seg_overlap = |
| Line 3: | Line 3: |
| This page proposes a new program, called `mri_overlap`, that will replace the redundant (and buggy/slow) `mri_compute_seg_overlap` and `mri_compute_overlap`. A primary new feature is the ability to save a detailed overlap report to a JSON file. | This page proposes a new program, called `mri_seg_overlap`, that will replace the redundant (and buggy/slow) `mri_compute_seg_overlap` and `mri_compute_overlap`. A primary new feature is the ability to save a detailed overlap report to a JSON file. |
| Line 6: | Line 6: |
| USAGE: | USAGE mri_seg_overlap [options] <vol1> <vol2> |
| Line 8: | Line 9: |
| mri_overlap <vol1> <vol2> [options] | DESCRIPTION This program computes the structural overlap between two segmentation volumes. The following statistics can be calculated for each label: dice coefficient - F1-measure of the similarity between the two labels. jaccard coefficient - Intersecting volume over the combined volume of the two labels. volume difference - Fractional difference in volumes of the labels. By default, only dice scores are computed, but this can be reconfigured with the --measures flag. Each structure in the input volumes will be considered by default, but |
| Line 10: | Line 26: |
| DESCRIPTION: | ---- /!\ '''Edit conflict - other version:''' ---- an alternative list of labels can be specified with the --label or -labelfile |
| Line 12: | Line 29: |
| This program computes the overlap between two segmentation volumes. The following statistics can be calculated for each label: |
---- /!\ '''Edit conflict - your version:''' ---- an alternative list of labels can be specified with the --label or --labelfile |
| Line 15: | Line 32: |
| dice coefficient - F1-measure of the similarity between the two labels jaccard coefficient - intersecting volume over the combined volume of the two labels volume difference - fractional difference in volumes of the labels |
---- /!\ '''End of edit conflict''' ---- flags. Additionally, the --seg flag will compute the overlap between the following 12 major anatomical structures: Cerebral White Matter (2,41) Cerebral Cortex (3,42) Hippocampus (17,53) Caudate (11,50) Putamen (12,51) Pallidum (13,52) Amygdala (18,54) Thalamus Proper (10,49) Lateral Ventricle (4,43) Third and Fourth Ventricles (14,15) Inf Lateral Vent (5,44) Accumbens Area (26,58) |
| Line 19: | Line 50: |
| By default, only dice scores are computed, but this can be reconfigured with the --measures flag. |
OPTIONAL ARGUMENTS -o, --out [FILE] Save detailed overlap report to a JSON file. |
| Line 22: | Line 54: |
| Each structure in the input volumes will be considered by default, but an alternative list of labels can be specified with the -l flag. Additionally, the --seg flag will compute the overlap between the following 12 major anatomical structures: |
-m, --measures [MEASURE...] List of measures to compute. By default, only dice scores are computed. Options include: dice, jaccard, voldiff |
| Line 27: | Line 58: |
| Hippocampus (17,53) Caudate (11,50) Putamen (12,51) Pallidum (13,52) Amygdala (18,54) Thalamus Proper (10,49) Lateral Ventricle (4,43) Third and Fourth Ventricles (14,15) Inf Lateral Vent (5,44) Cerebral White Matter (2,41) Cerebral Cortex (3,42) Accumbens Area (26,58) |
-l, --labels [LABEL...] Space-separated list of label values to include. By default, the overlap will be computed between all labels available in both input volumes. |
| Line 40: | Line 63: |
| OPTIONAL ARGUMENTS: | -n, --names [LABELNAME...] Custom label names corresponding to the values specified with the --labels flag. |
| Line 42: | Line 67: |
| -o, --out Save detailed overlap report to a JSON file. |
-f, --labelfile [FILE] Text file specifying the label values to include. This file must be in the format of a freesurfer lookup-table, in which each line contains a label value and, optionally, a corresponding label name. |
| Line 45: | Line 73: |
| -m, --measures List of measures to compute. By default, only dice scores are computed. Options include: dice, jaccard, voldiff |
-x, --no-names Do not report label names. |
| Line 49: | Line 76: |
| -l, --labels Space-separated list of label values to include. By default, the overlap will be computed between all labels available in both input volumes. |
-s, --seg Compute overlap between the the major segmentation structures listed above. |
| Line 53: | Line 80: |
| -f, --labelfile File specifying a list of labels to include. This file can either be a space-separated list of label values or in the format of a freesurfer color lookup-table. |
-q, --quiet Quiet mode - do not print results to stdout. |
| Line 58: | Line 83: |
| -s, --seg Compute overlap between the major segmentation structures listed above. EXAMPLE: mri_overlap aseg.mgz mseg.mgz -l 17 53 -m dice voldiff -o overlap.json This example will compute the dice scores and volume differences of hippocampal segmentations between the two input volumes. Results will be saved to overlap.json. |
|
| Line 72: | Line 87: |
| The proposed JSON output would look something like this: | NOTE: if the `--seg` flag is used, an additional statistic called `weighted-subcortical-mean`, which ignores wm and cortex, will be reported for each measure. |
| Line 76: | Line 91: |
| "names": { "1": "structure 1", "2": "structure 2" ... }, |
|
| Line 82: | Line 92: |
| "/path/to/manual_label.mgz", "/other/path/to/aseg.mgz" |
"/path/to/aseg.mgz", "/path/to/mseg.mgz" |
| Line 87: | Line 97: |
| "mean": 0.9142, "std": 0.0232, |
|
| Line 90: | Line 98: |
| "2": 0.9143, "3": 0.8739, "4": 0.9002, |
"10": 0.9075892566820576, "11": 0.8953675962203272, "12": 0.9146751935375295, |
| Line 94: | Line 102: |
| } | }, "mean": 0.6805390452588164, "std": 0.3237900375396044, "weighted-mean": 0.9340674985029207 |
| Line 97: | Line 108: |
| "mean": 0.8902, "std": 0.0144, |
|
| Line 100: | Line 109: |
| "2": 0.8921, | "10": 0.8308131920466723, "11": 0.8105570623826414, "12": 0.8427663203597457, |
| Line 102: | Line 113: |
| } }, "voldiff": { "mean": 0.0221, "std": 0.0032, "labels": { "2": 0.0123, ... } |
}, "mean": 0.5892475078628221, "std": 0.3029904264784899, "weighted-mean": 0.8801749135061013 |
| Line 112: | Line 118: |
| }, "names": { "10": "Left-Thalamus", "11": "Left-Caudate", "12": "Left-Putamen", ... |
mri_seg_overlap
This page proposes a new program, called mri_seg_overlap, that will replace the redundant (and buggy/slow) mri_compute_seg_overlap and mri_compute_overlap. A primary new feature is the ability to save a detailed overlap report to a JSON file.
USAGE
mri_seg_overlap [options] <vol1> <vol2>
DESCRIPTION
This program computes the structural overlap between two segmentation
volumes. The following statistics can be calculated for each label:
dice coefficient - F1-measure of the similarity between
the two labels.
jaccard coefficient - Intersecting volume over the combined
volume of the two labels.
volume difference - Fractional difference in volumes of
the labels.
By default, only dice scores are computed, but this can be
reconfigured with the --measures flag.
Each structure in the input volumes will be considered by default, but
---- /!\ '''Edit conflict - other version:''' ----
an alternative list of labels can be specified with the --label or -labelfile
---- /!\ '''Edit conflict - your version:''' ----
an alternative list of labels can be specified with the --label or --labelfile
---- /!\ '''End of edit conflict''' ----
flags. Additionally, the --seg flag will compute the overlap between
the following 12 major anatomical structures:
Cerebral White Matter (2,41)
Cerebral Cortex (3,42)
Hippocampus (17,53)
Caudate (11,50)
Putamen (12,51)
Pallidum (13,52)
Amygdala (18,54)
Thalamus Proper (10,49)
Lateral Ventricle (4,43)
Third and Fourth Ventricles (14,15)
Inf Lateral Vent (5,44)
Accumbens Area (26,58)
OPTIONAL ARGUMENTS
-o, --out [FILE]
Save detailed overlap report to a JSON file.
-m, --measures [MEASURE...]
List of measures to compute. By default, only dice scores are
computed. Options include: dice, jaccard, voldiff
-l, --labels [LABEL...]
Space-separated list of label values to include. By default,
the overlap will be computed between all labels available in
both input volumes.
-n, --names [LABELNAME...]
Custom label names corresponding to the values specified with
the --labels flag.
-f, --labelfile [FILE]
Text file specifying the label values to include. This file
must be in the format of a freesurfer lookup-table, in which
each line contains a label value and, optionally, a
corresponding label name.
-x, --no-names
Do not report label names.
-s, --seg
Compute overlap between the the major segmentation structures
listed above.
-q, --quiet
Quiet mode - do not print results to stdout.
JSON
NOTE: if the --seg flag is used, an additional statistic called weighted-subcortical-mean, which ignores wm and cortex, will be reported for each measure.
{
"inputs": [
"/path/to/aseg.mgz",
"/path/to/mseg.mgz"
],
"measures": {
"dice": {
"labels": {
"10": 0.9075892566820576,
"11": 0.8953675962203272,
"12": 0.9146751935375295,
...
},
"mean": 0.6805390452588164,
"std": 0.3237900375396044,
"weighted-mean": 0.9340674985029207
},
"jaccard": {
"labels": {
"10": 0.8308131920466723,
"11": 0.8105570623826414,
"12": 0.8427663203597457,
...
},
"mean": 0.5892475078628221,
"std": 0.3029904264784899,
"weighted-mean": 0.8801749135061013
}
},
"names": {
"10": "Left-Thalamus",
"11": "Left-Caudate",
"12": "Left-Putamen",
...
}
}