[FIX] Normalization of template-generated standard spaces#306
[FIX] Normalization of template-generated standard spaces#306effigies merged 10 commits intobids-standard:masterfrom
Conversation
Unfolded from bids-standard#213. I'm splitting that PR into two: one here to the current spec, sorting out existing templates; and a second to the `common-derivatives` branch to make it consistent with this one and adding my suggestions regarding spaces.
0d596ab to
aec4090
Compare
This PR supersedes bids-standard#213, and should be rebased with master after bids-standard#306 is merged. W.r.t. master it only adds the table of _Nonstandard template identifiers_ W.r.t. `common-derivatives`, the changes are: - [x] Removed the distinction between surface templates and volumetric templates. After all, to properly apply a surface template one should first spatially normalize to a particular volumetric template. Although it is possible to create mixed templates (e.g. using ``MNI152Lin`` to generate a mapping for volumetric coordinates and then, say, ``fsLR`` for the surface after some surface mapping process), this option should be discouraged. Anyways, this discussion does not affect how the names of BIDS entities should be specified, since one can always describe how the template coordinates are generated with the information described in this PR. - [x] Removed ``MNI152NLin6AsymConte69`` because it does not define any new coordinate system (see bids-standard#207 (comment)), - [x] Removed ``FS305`` as it is now covered by ``fsaverage``. - [x] Reorganized subsections in "standard" vs "nonstandard" spaces.
satra
left a comment
There was a problem hiding this comment.
Left some comments on naming consistency. I would choose one or both styles
- list every separate option as a separate name
- list stems with optional components
| | MNI152Lin | Also known as ICBM (version with linear coregistration) [http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152Lin](http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152Lin) | | ||
| | MNI152NLin2009\[a-c\]\[Sym|Asym\] | Also known as ICBM (non-linear coregistration with 40 iterations, released in 2009). It comes in either three different flavours each in symmetric or asymmetric version. [http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152NLin2009](http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152NLin2009) | | ||
| | MNI152NLin6Sym | Also known as symmetric ICBM 6th generation (non-linear coregistration). Used by SPM99 - SPM8. [http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152NLin6](http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152NLin6) | | ||
| | MNI152NLin6ASym | A variation of `MNI152NLin6Sym` built by A. Janke that is released as the *MNI template* of FSL. Volumetric templates included with [HCP-Pipelines](https://github.com/Washington-University/HCPpipelines/tree/master/global/templates) correspond to this template too. See [10.1016/j.neuroimage.2012.01.024](https://doi.org/10.1016/j.neuroimage.2012.01.024). | |
There was a problem hiding this comment.
should this be compressed with the one above just like MNI152NLin2009...
There was a problem hiding this comment.
Not sure about this one - everyone refers to this template as "MNI" because it comes as such within FSL, but you can't find it in the official repository. (Will correct the ASym bit to be Asym though).
| | OASIS30AntsOASISAnts | [https://figshare.com/articles/ANTs_ANTsR_Brain_Templates/915436](https://figshare.com/articles/ANTs_ANTsR_Brain_Templates/915436) | | ||
| | OASIS30Atropos | [https://mindboggle.info/data.html](https://mindboggle.info/data.html) | | ||
| | Talairach | Piecewise linear scaling of the brain is implemented as described in TT88. [http://www.talairach.org/](http://www.talairach.org/) | | ||
| | UNCInfant | Infant Brain Atlases from Neonates to 1- and 2-year-olds. [https://www.nitrc.org/projects/pediatricatlas](https://www.nitrc.org/projects/pediatricatlas) | |
There was a problem hiding this comment.
how will the temporal qualifiers be noted for this atlas and for NIHPD?
There was a problem hiding this comment.
In TemplateFlow we are using a cohort- entity for that. However, I don't think age ranges should be considered as generators of new spaces.
There was a problem hiding this comment.
this may boil down to the question whether a custom template is a new space?
i think here space is more related to image landmarks being different rather than whether coordinate axes and units are aligned.
so from that perspective age-ranges could create different landmarks.
There was a problem hiding this comment.
I wouldn't go down that road. Coordinates across all age ranges are the same (i.e., the origin of coordinates is always the same and one mm is always the same length too).
For the purpose of registration, you will always have the cohort- present in the ReferenceVolume (or whatever keyword we end up choosing in the derivatives PR), so the reference will be univocal and you'll be always aware of what range was used.
There was a problem hiding this comment.
i'm generally ok, but the image coordinates are different from the coordinate system. under coordinate system, location of origin, units, and angle of axes all the MNI spaces are essentially the same.
i think we just need to be careful in what we call landmarks and coordinate systems. i think robert and i had an extensive discussion on this that led to the updated language for coordinates/landmarks/etc.,..
There was a problem hiding this comment.
i'm generally ok, but the image coordinates are different from the coordinate system.
Not sure how this applies to this PR, could you clarify?
under coordinate system, location of origin, units, and angle of axes all the MNI spaces are essentially the same.
Agreed.
i think we just need to be careful in what we call landmarks and coordinate systems.
Agree - but this statement makes me believe you are not completely sure about it in the context of this PR, is that correct? could you clarify where you're getting at?
think robert and i had an extensive discussion on this that led to the updated language for coordinates/landmarks/etc.,..
hehehe I witnessed part of that :D
There was a problem hiding this comment.
but this statement makes me believe you are not completely sure about it in the context of this PR, is that correct? could you clarify where you're getting at?
since we are talking about Template Based Coordinate Systems the image landmarks matter and hence just like fsaverage3/4/5/6, we would have to have some notion for the pediatric templates that are based on different age groups.
effigies
left a comment
There was a problem hiding this comment.
Overall, I'm fine with this. I think we could probably clean up the appearance and clarity of the "DISCOURAGED" statements by making them a new table, e.g.:
The following template identifiers are retained for backwards compatibility
of BIDS implementations.
Their use is NOT RECOMMENDED for new BIDS datasets and tooling, but their
presence MUST NOT produce a validation error.
| Coordinate System | Equivalent to |
|-------------------|---------------|
| fsaverage[...] | ... |
| UNCInfant[...] | ... || | ICBM452Warp5Space | Reference space defined by the "average of 452 T1-weighted MRIs of normal young adult brains" "based on a 5th order polynomial transformation into the atlas space" [https://www.loni.usc.edu/research/atlases](https://www.loni.usc.edu/research/atlases) | | ||
| | IXI549Space | Reference space defined by the average of the "549 (...) subjects from the IXI dataset" linearly transformed to ICBM MNI 452.Used by SPM12. [http://www.brain-development.org/](http://www.brain-development.org/) | | ||
| | fsaverage\[3|4|5|6|sym\] | DISCOURAGED, please use `fsaverage` without modifiers. Images were sampled to the FreeSurfer surface reconstructed from the subject’s T1w image, and registered to an fsaverage template | | ||
| | fsaverage\[3|Sym\] | The `fsaverage` is a **dual template** providing both volumetric and surface coordinates references. The volumetric template corresponds to a FreeSurfer variant of `MNI305` space. The `fsaverage` atlas also defines a surface reference system (formerly described as fsaverage\[3|4|5|6|sym\]). The `fsaverageSym` is the symmetric counterpart of `fsaverage`. | |
There was a problem hiding this comment.
Presumably you didn't mean to keep fsaverage3 in?
| | fsaverage\[3|Sym\] | The `fsaverage` is a **dual template** providing both volumetric and surface coordinates references. The volumetric template corresponds to a FreeSurfer variant of `MNI305` space. The `fsaverage` atlas also defines a surface reference system (formerly described as fsaverage\[3|4|5|6|sym\]). The `fsaverageSym` is the symmetric counterpart of `fsaverage`. | | |
| | fsaverage\[Sym\]. | The `fsaverage` is a **dual template** providing both volumetric and surface coordinates references. The volumetric template corresponds to a FreeSurfer variant of `MNI305` space. The `fsaverage` atlas also defines a surface reference system (formerly described as fsaverage\[3|4|5|6|sym\]). The `fsaverageSym` is the symmetric counterpart of `fsaverage`. | |
There was a problem hiding this comment.
Oh right, but I meant to keep the pipe symbol |.
There was a problem hiding this comment.
The square brackets should indicate optional already, if that's what a | and empty string are supposed to mean.
There was a problem hiding this comment.
MNI152NLin2009 is then allowed?
There was a problem hiding this comment.
Yeah, I guess we're kind of making up these rules as we go. Whatever. As long as it's unambiguous, I can live with it.
There was a problem hiding this comment.
I think it's almost ready to go...but I think this table should also contain the mapping of the original fsaverage[3,4,5,6] to their respective recommended den- values..(or at least a link to text section where those values are specified)
There was a problem hiding this comment.
There is no concept of resolution nor density in the BIDS spec at this point. Those keywords will be added in #307. Please write a comment there so I don't forget to update the table with your suggestion.
|
I like this suggestion very much. Will update asap, thanks!
…On Wed, Sep 4, 2019, 09:46 Chris Markiewicz ***@***.***> wrote:
***@***.**** commented on this pull request.
Overall, I'm fine with this. I think we could probably clean up the
appearance and clarity of the "DISCOURAGED" statements by making them a new
table, e.g.:
The following template identifiers are retained for backwards compatibility
of BIDS implementations.
Their use is NOT RECOMMENDED for new BIDS datasets and tooling, but their
presence MUST NOT produce a validation error.
| Coordinate System | Equivalent to |
|-------------------|---------------|
| fsaverage[...] | ... |
| UNCInfant[...] | ... |
------------------------------
In src/99-appendices/08-coordinate-systems.md
<#306 (comment)>
:
> -| OASIS30AntsOASISAnts | [https://figshare.com/articles/ANTs_ANTsR_Brain_Templates/915436](https://figshare.com/articles/ANTs_ANTsR_Brain_Templates/915436) |
-| OASIS30Atropos | [http://mindboggle.info/data.html](http://mindboggle.info/data.html) |
-| ICBM452AirSpace | Reference space defined by the "average of 452 T1-weighted MRIs of normal young adult brains" with "linear transforms of the subjects into the atlas space using a 12-parameter affine transformation" [https://www.loni.usc.edu/docs/atlases_methods/ICBM_452_T1_Atlas_Methods.pdf](https://www.loni.usc.edu/docs/atlases_methods/ICBM_452_T1_Atlas_Methods.pdf) |
-| ICBM452Warp5Space | Reference space defined by the "average of 452 T1-weighted MRIs of normal young adult brains" "based on a 5th order polynomial transformation into the atlas space" [https://www.loni.usc.edu/docs/atlases_methods/ICBM_452_T1_Atlas_Methods.pdf](https://www.loni.usc.edu/docs/atlases_methods/ICBM_452_T1_Atlas_Methods.pdf) |
-| IXI549Space | Reference space defined by the average of the "549 (...) subjects from the IXI dataset" linearly transformed to ICBM MNI 452.Used by SPM12. [http://www.brain-development.org/](http://www.brain-development.org/) |
-| fsaverage\[3|4|5|6|sym\] | Images were sampled to the FreeSurfer surface reconstructed from the subject’s T1w image, and registered to an fsaverage template |
-| UNCInfant\[0|1|2\]V\[21|22|23\] | Infant Brain Atlases from Neonates to 1- and 2-year-olds. [https://www.nitrc.org/projects/pediatricatlas](https://www.nitrc.org/projects/pediatricatlas) |
+### Standard template identifiers
+
+| Coordinate System | Description |
+| --------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| ICBM452AirSpace | Reference space defined by the "average of 452 T1-weighted MRIs of normal young adult brains" with "linear transforms of the subjects into the atlas space using a 12-parameter affine transformation" [https://www.loni.usc.edu/research/atlases](https://www.loni.usc.edu/research/atlases) |
+| ICBM452Warp5Space | Reference space defined by the "average of 452 T1-weighted MRIs of normal young adult brains" "based on a 5th order polynomial transformation into the atlas space" [https://www.loni.usc.edu/research/atlases](https://www.loni.usc.edu/research/atlases) |
+| IXI549Space | Reference space defined by the average of the "549 (...) subjects from the IXI dataset" linearly transformed to ICBM MNI 452.Used by SPM12. [http://www.brain-development.org/](http://www.brain-development.org/) |
+| fsaverage\[3|4|5|6|sym\] | DISCOURAGED, please use `fsaverage` without modifiers. Images were sampled to the FreeSurfer surface reconstructed from the subject’s T1w image, and registered to an fsaverage template |
+| fsaverage\[3|Sym\] | The `fsaverage` is a **dual template** providing both volumetric and surface coordinates references. The volumetric template corresponds to a FreeSurfer variant of `MNI305` space. The `fsaverage` atlas also defines a surface reference system (formerly described as fsaverage\[3|4|5|6|sym\]). The `fsaverageSym` is the symmetric counterpart of `fsaverage`. |
Presumably you didn't mean to keep fsaverage3 in?
⬇️ Suggested change
-| fsaverage\[3|Sym\] | The `fsaverage` is a **dual template** providing both volumetric and surface coordinates references. The volumetric template corresponds to a FreeSurfer variant of `MNI305` space. The `fsaverage` atlas also defines a surface reference system (formerly described as fsaverage\[3|4|5|6|sym\]). The `fsaverageSym` is the symmetric counterpart of `fsaverage`. |
+| fsaverage\[Sym\]. | The `fsaverage` is a **dual template** providing both volumetric and surface coordinates references. The volumetric template corresponds to a FreeSurfer variant of `MNI305` space. The `fsaverage` atlas also defines a surface reference system (formerly described as fsaverage\[3|4|5|6|sym\]). The `fsaverageSym` is the symmetric counterpart of `fsaverage`. |
------------------------------
In src/99-appendices/08-coordinate-systems.md
<#306 (comment)>
:
> +| IXI549Space | Reference space defined by the average of the "549 (...) subjects from the IXI dataset" linearly transformed to ICBM MNI 452.Used by SPM12. [http://www.brain-development.org/](http://www.brain-development.org/) |
+| fsaverage\[3|4|5|6|sym\] | DISCOURAGED, please use `fsaverage` without modifiers. Images were sampled to the FreeSurfer surface reconstructed from the subject’s T1w image, and registered to an fsaverage template |
+| fsaverage\[3|Sym\] | The `fsaverage` is a **dual template** providing both volumetric and surface coordinates references. The volumetric template corresponds to a FreeSurfer variant of `MNI305` space. The `fsaverage` atlas also defines a surface reference system (formerly described as fsaverage\[3|4|5|6|sym\]). The `fsaverageSym` is the symmetric counterpart of `fsaverage`. |
+| fsLR | The `fsLR` is a **dual template** providing both volumetric and surface coordinates references. The volumetric template corresponds to `MNI152NLin6Asym`. Surface templates are given at several sampling densities: 164k (used by HCP pipelines for 3T and 7T anatomical analysis), 59k (used by HCP pipelines for 7T MRI bold and DWI analysis), 32k (used by HCP pipelines for 3T MRI bold and DWI analysis), or 4k (used by HCP pipelines for MEG analysis) fsaverage_LR surface reconstructed from the T1w image. |
+| MNIColin27 | Average of 27 T1 scans of a single subject [http://www.bic.mni.mcgill.ca/ServicesAtlases/Colin27Highres](http://www.bic.mni.mcgill.ca/ServicesAtlases/Colin27Highres) |
+| MNI152Lin | Also known as ICBM (version with linear coregistration) [http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152Lin](http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152Lin) |
+| MNI152NLin2009\[a-c\]\[Sym|Asym\] | Also known as ICBM (non-linear coregistration with 40 iterations, released in 2009). It comes in either three different flavours each in symmetric or asymmetric version. [http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152NLin2009](http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152NLin2009) |
+| MNI152NLin6Sym | Also known as symmetric ICBM 6th generation (non-linear coregistration). Used by SPM99 - SPM8. [http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152NLin6](http://www.bic.mni.mcgill.ca/ServicesAtlases/ICBM152NLin6) |
+| MNI152NLin6Asym | A variation of `MNI152NLin6Sym` built by A. Janke that is released as the *MNI template* of FSL. Volumetric templates included with [HCP-Pipelines](https://github.com/Washington-University/HCPpipelines/tree/master/global/templates) correspond to this template too. See [10.1016/j.neuroimage.2012.01.024](https://doi.org/10.1016/j.neuroimage.2012.01.024). |
+| MNI305 | Also known as avg305. |
+| NIHPD\[Sym|Asym\] | Pediatric templates generated from the NIHPD sample. Available for different age groups (4.5–18.5 y.o., 4.5–8.5 y.o., 7–11 y.o., 7.5–13.5 y.o., 10–14 y.o., 13–18.5 y.o. This template also comes in either -symmetric or -asymmetric flavor. [http://www.bic.mni.mcgill.ca/ServicesAtlases/NIHPD-obj1](http://www.bic.mni.mcgill.ca/ServicesAtlases/NIHPD-obj1) |
+| OASIS30AntsOASISAnts | [https://figshare.com/articles/ANTs_ANTsR_Brain_Templates/915436](https://figshare.com/articles/ANTs_ANTsR_Brain_Templates/915436) |
+| OASIS30Atropos | [https://mindboggle.info/data.html](https://mindboggle.info/data.html) |
+| Talairach | Piecewise linear scaling of the brain is implemented as described in TT88. [http://www.talairach.org/](http://www.talairach.org/) |
+| UNCInfant | Infant Brain Atlases from Neonates to 1- and 2-year-olds. [https://www.nitrc.org/projects/pediatricatlas](https://www.nitrc.org/projects/pediatricatlas) |
+| UNCInfant\[0|1|2\]V\[21|22|23\] | DISCOURAGED, please use ``UNCInfant`` without modifiers. Infant Brain Atlases from Neonates to 1- and 2-year-olds. [https://www.nitrc.org/projects/pediatricatlas](https://www.nitrc.org/projects/pediatricatlas) |
⬇️ Suggested change
-| UNCInfant\[0|1|2\]V\[21|22|23\] | DISCOURAGED, please use ``UNCInfant`` without modifiers. Infant Brain Atlases from Neonates to 1- and 2-year-olds. [https://www.nitrc.org/projects/pediatricatlas](https://www.nitrc.org/projects/pediatricatlas) |
+| UNCInfant\[0|1|2\]V\[21|22|23\] | DISCOURAGED, please use `UNCInfant` without modifiers. Infant Brain Atlases from Neonates to 1- and 2-year-olds. [https://www.nitrc.org/projects/pediatricatlas](https://www.nitrc.org/projects/pediatricatlas) |
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#306?email_source=notifications&email_token=AAESDRXFXJVL5X3BSAIPPW3QH7RABA5CNFSM4IMBBY4KYY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCDU2C5A#pullrequestreview-283746676>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAESDRXEK4NDUCEUZCZEIUDQH7RABANCNFSM4IMBBY4A>
.
|
Co-Authored-By: Chris Markiewicz <effigies@gmail.com>
|
Hi @edickie and/or @satra, a final pass to get this forward? Rendered result: https://1230-150465237-gh.circle-artifacts.com/0/home/circleci/project/site/99-appendices/08-coordinate-systems.html |
effigies
left a comment
There was a problem hiding this comment.
Reading the rendered doc, I noticed a typo that we might as well clean up while we're here.
Co-Authored-By: Chris Markiewicz <effigies@gmail.com>
|
looks ok to me. |
|
Looks fine to me.
…On Tue, Oct 22, 2019 at 3:01 PM Oscar Esteban ***@***.***> wrote:
Bump to all concerned.
@edickie <https://github.com/edickie> @satra <https://github.com/satra>
@oesteban <https://github.com/oesteban> What do you each feel is the
current status?
Also, @bids-standard/raw <https://github.com/orgs/bids-standard/teams/raw>
in general, if you have thoughts about coordinate systems and templates.
Bump again :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#306?email_source=notifications&email_token=ADEXT5R4KYPRIUPAL237B4TQP5E2JA5CNFSM4IMBBY4KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEB62XMA#issuecomment-545106864>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADEXT5SOKMDRD4S3RONWXDDQP5E2JANCNFSM4IMBBY4A>
.
|
|
I plan to merge this on Monday unless someone objects. |
* [FIX] Revise template-generated coordinate systems This PR supersedes #213, and should be rebased with master after #306 is merged. W.r.t. master it only adds the table of _Nonstandard template identifiers_ W.r.t. `common-derivatives`, the changes are: - [x] Removed the distinction between surface templates and volumetric templates. After all, to properly apply a surface template one should first spatially normalize to a particular volumetric template. Although it is possible to create mixed templates (e.g. using ``MNI152Lin`` to generate a mapping for volumetric coordinates and then, say, ``fsLR`` for the surface after some surface mapping process), this option should be discouraged. Anyways, this discussion does not affect how the names of BIDS entities should be specified, since one can always describe how the template coordinates are generated with the information described in this PR. - [x] Removed ``MNI152NLin6AsymConte69`` because it does not define any new coordinate system (see #207 (comment)), - [x] Removed ``FS305`` as it is now covered by ``fsaverage``. - [x] Reorganized subsections in "standard" vs "nonstandard" spaces. * fix: added the concept of ``scanner`` as an Image-based coordinate system - [x] Describes more clearly the situation when files do not have ``space-`` definition. - [x] Remove the ``ReferenceIndex`` as an index does not generate a coordinate system (the concept here is mixed up with that of image registration, which is just a process).
Unfolded from #213. I'm splitting that PR into two: one here to the current spec, sorting out existing templates; and a second to the
common-derivativesbranch to make it consistent with this one and adding my suggestions regarding spaces.templates (see [FIX] Revise template-generated coordinate systems #213).
fsaverage[3|4|5|6|sym]as DISCOURAGEDfsaverageandfsaverageSymcorresponding to such"deprecations".
UNCInfantfsLR