White matter microstructure differences in obstructive sleep apnea severity groups assessed by diffusion tensor metrics and biophysical modeling.
The 5 matches
- [1] § Materials and Methods › MRI processing: dMRI metrics ↔ designer2/designer.py, lines 6–104 · score 0.95 · Rician bias correction, Gibbs ringing, adaptive patch, motion correction, distortion correction, Partial Fourier
- [2] § Materials and Methods › MRI processing: dMRI metrics ↔ lib/smi.py, lines 1351–1473 · score 0.86 · Rician bias, SMI parameter, free water, parametric maps, EAS, ODF
- [3] § Materials and Methods › MRI acquisition ↔ designer2/designer.py, lines 6–104 · score 0.81 · EPI distortion correction, reverse phase encoding, diffusion gradient, partial Fourier, MR, TE
- [4] § Materials and Methods › MRI acquisition ↔ lib/designer_func_wrappers.py, lines 172–247 · score 0.54 · phase encoding direction, partial Fourier
- [5] § Materials and Methods › MRI processing: dMRI metrics ↔ designer2/tmi.py, lines 66–147 · score 0.53 · DKI parametric, outlier, nonlinear, MK, SMI, MD
Paper
Loaded from Europe PMC by your browser, not stored by OSCR: doi.org · Europe PMC
The paper is loaded when this pane is shown.
The authors' code
Python · 278 lines · 19 KB · MIT · 2 matches
- #!/usr/bin/env python3
- from lib.designer_input_utils import *
- from lib.designer_func_wrappers import *
- def usage(cmdline): #pylint: disable=unused-variable
- from mrtrix3 import app #pylint: disable=no-name-in-module, import-outside-toplevel
- cmdline.set_copyright("""Copyright (c) 2016 New York University.\n\n
- Permission is hereby granted, free of charge, to any non-commercial entity (\'Recipient\') obtaining a copy of this software and associated documentation files (the \'Software\'), to the Software solely for non-commercial research, including the rights to use, copy and modify the Software, subject to the following conditions\n
- 1. The above copyright notice and this permission notice shall be included by Recipient in all copies or substantial portions of the Software.\n
- 2. THE SOFTWARE IS PROVIDED \'AS IS\', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIESvOF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF ORIN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n
- 3. In no event shall NYU be liable for direct, indirect, special, incidental or consequential damages in connection with the Software. Recipient will defend, indemnify and hold NYU harmless from any claims or liability resulting from the use of the Software by recipient.\n
- 4. Neither anything contained herein nor the delivery of the Software to recipient shall be deemed to grant the Recipient any right or licenses under any patents or patent application owned by NYU.\n
- 5. The Software may only be used for non-commercial research and may not be used for clinical care.\n
- 6. Any publication by Recipient of research involving the Software shall cite the references listed below.\n
- """)
- cmdline.set_author('Benjamin Ades-Aron ([email hidden])')
- cmdline.set_synopsis("""Designer by default, with no optional arguments used:\n
- "designer <input> <output>" will not perform any preprocessing. Each preprocessing step must be chosen using the appropriate option. For example usage please see the Designer documentation at https://nyu-diffusionmri.github.io/docs/designer/examples/\n
- 1. pre-check: concatenate all dwi series and make sure the all diffusion AP images and PA image have the same matrix dimensions/orientations. Ensure input parameters are reasonable, perform a check on diffusion gradient scheme.\n
- 2. Denoising\n
- 3. Gibbs ringing correction\n
- 4. EPI distortion and Motion Correction\n
- 5. Normalization\n
- 6. Rician bias correction\n
- """)
- cmdline.add_citation('Veraart, J.; Novikov, D.S.; Christiaens, D.; Ades-aron, B.; Sijbers, J. & Fieremans, E. Denoising of diffusion MRI using random matrix theory. NeuroImage, 2016, 142, 394-406, doi: 10.1016/j.neuroimage.2016.08.016',is_external=True)
- cmdline.add_citation('Veraart, J.; Fieremans, E. & Novikov, D.S. Diffusion MRI noise mapping using random matrix theory. Magn. Res. Med., 2016, 76(5), 1582-1593, doi:10.1002/mrm.26059',is_external=True)
- cmdline.add_citation('Kellner, E., et al., Gibbs-Ringing Artifact Removal Based on Local Subvoxel-Shifts. Magnetic Resonance in Medicine, 2016. 76(5): p. 1574-1581.',is_external=True)
- cmdline.add_citation('Koay, C.G. and P.J. Basser, Analytically exact correction scheme for signal extraction from noisy magnitude MR signals. Journal of Magnetic Resonance, 2006. 179(2): p. 317-322.',is_external=True)
- cmdline.add_citation('Andersson, J. L. & Sotiropoulos, S. N. An integrated approach to correction for off-resonance effects and subject movement in diffusion MR imaging. NeuroImage, 2015, 125, 1063-1078', is_external=True)
- cmdline.add_citation('Smith, S. M.; Jenkinson, M.; Woolrich, M. W.; Beckmann, C. F.; Behrens, T. E.; Johansen-Berg, H.; Bannister, P. R.; De Luca, M.; Drobnjak, I.; Flitney, D. E.; Niazy, R. K.; Saunders, J.; Vickers, J.; Zhang, Y.; De Stefano, N.; Brady, J. M. & Matthews, P. M. Advances in functional and structural MR image analysis and implementation as FSL. NeuroImage, 2004, 23, S208-S219', is_external=True)
- cmdline.add_citation('Skare, S. & Bammer, R. Jacobian weighting of distortion corrected EPI data. Proceedings of the International Society for Magnetic Resonance in Medicine, 2010, 5063', is_external=True)
- cmdline.add_citation('Andersson, J. L.; Skare, S. & Ashburner, J. How to correct susceptibility distortions in spin-echo echo-planar images: application to diffusion tensor imaging. NeuroImage, 2003, 20, 870-888', is_external=True)
- cmdline.add_citation('Zhang, Y.; Brady, M. & Smith, S. Segmentation of brain MR images through a hidden Markov random field model and the expectation-maximization algorithm. IEEE Transactions on Medical Imaging, 2001, 20, 45-57', is_external=True)
- cmdline.add_citation('Smith, S. M.; Jenkinson, M.; Woolrich, M. W.; Beckmann, C. F.; Behrens, T. E.; Johansen-Berg, H.; Bannister P. R.; De Luca, M.; Drobnjak, I.; Flitney, D. E.; Niazy, R. K.; Saunders, J.; Vickers, J.; Zhang, Y.; DeStefano, N.; Brady, J. M. & Matthews, P. M. Advances in functional and structural MR image analysis and implementation as FSL. NeuroImage, 2004,23, S208-S219', is_external=True)
- cmdline.add_argument('input', help='The input DWI series. For multiple input series, separate file names with commas (i.e. dwi1.nii,dwi2.nii,...)')
- cmdline.add_argument('output', help='The output basename')
- options = cmdline.add_argument_group('Other options for the DESIGNER script')
- options.add_argument('-degibbs', action='store_true', help='Perform (RPG) Gibbs artifact correction. Must include PF factor with -pf (e.g. 6/8, 7/8) and PF dimension -dim (1, 2 or 3 for i, j or k respectively).')
- options.add_argument('-rician', action='store_true', help='Perform Rician bias correction')
- options.add_argument('-noisemap', metavar=('<noise map image>'), help='Used along with Rician correction if denoising was done outside of designer')
- options.add_argument('-b1correct', action='store_true', help='Include a bias correction step in dwi preprocessing', default=False)
- options.add_argument('-normalize', action='store_true', help='normalize the dwi volume to median b0 CSF intensity of 1000 (useful for multiple dwi acquisitions)', default=False)
- options.add_argument('-mask', action='store_true',help='compute a brain mask prior to tensor fitting to strip skull and improve efficiency')
- options.add_argument('-echo_time',metavar=('<TE1,TE2,...>'),help='specify the echo time used in the acquisition (comma separated list the same length as number of inputs)')
- options.add_argument('-bshape',metavar=('<beta1,beta2,...>'),help='specify the b-shape used in the acquisition (comma separated list the same length as number of inputs)')
- options.add_argument('-pre_align',action='store_true',help='rigidly align each input series to correct for large motion between series')
- options.add_argument('-ants_motion_correction',action='store_true',help='perform rigid motion correction using ANTs (useful for cases where eddy breaks down)')
- options.add_argument('-pe_dir', metavar=('<phase encoding direction>'), help='Specify the phase encoding direction of the input series (required if using the eddy option). Can be a signed axis number (e.g. -0, 1, +2), an axis designator (e.g. RL, PA, IS), or NIfTI axis codes (e.g. i-, j, k)')
- options.add_argument('-pf', metavar=('<PF factor>'), help='Specify the partial fourier factor (e.g. 7/8, 6/8)')
- options.add_argument('-datatype', metavar=('<spec>'), help='If using the "-processing_only" option, you can specify the output datatype. Valid options are float32, float32le, float32be, float64, float64le, float64be, int64, uint64, int64le, uint64le, int64be, uint64be, int32, uint32, int32le, uint32le, int32be, uint32be, int16, uint16, int16le, uint16le, int16be, uint16be, cfloat32, cfloat32le, cfloat32be, cfloat64, cfloat64le, cfloat64be, int8, uint8, bit')
- options.add_argument('-fslbvec',metavar=('<bvecs>'),help='specify bvec path if path is different from the path to the dwi or the file has an unusual extension')
- options.add_argument('-fslbval',metavar=('<bvals>'),help='specify bval path if path is different from the path to the dwi or the file has an unusual extension')
- options.add_argument('-bids',metavar=('<bids1,bids2,...>'),help='specify bids.json path if path is different from the path to the dwi or the file has an unusual extension')
- options.add_argument('-n_cores',metavar=('<ncores>'),help='specify the number of cores to use in parallel tasks, by default designer will use available cores - 2', default=-3)
- mp_options = cmdline.add_argument_group('Options for specifying denoising parameters')
- mp_options.add_argument('-patch2self', action='store_true', help='Perform patch2self')
- mp_options.add_argument('-denoise', action='store_true', help='Perform MPPCA')
- mp_options.add_argument('-shrinkage',metavar=('<shrink>'),help='specify shrinkage type for MPPCA. Options are "threshold" or "frob"', default='threshold')
- mp_options.add_argument('-algorithm',metavar=('<alg>'),help='specify MP algorithm. Options are "veraart","(cordero-grande)","jespersen"',default='cordero-grande')
- mp_options.add_argument('-extent', metavar=('<size>'), help='MPPCA Denoising extent. Default is 5,5,5')
- mp_options.add_argument('-phase', metavar=('<image>'), help='Diffusion phases - for performing denoising on complex data. This option should not be used alongside "-rician" since denoising complex data reduces the noise floor.', default=None)
- mp_options.add_argument('-adaptive_patch', action='store_true', help='Run MPPCA with adaptive patching')
- mp_options.add_argument('-adaptive_patch_length', metavar=('<len>'), help='Size of the adaptive patch for MPPCA denoising. Default is 80% of the kernel size')
- rpe_options = cmdline.add_argument_group('Options for eddy and to specify the acquisition phase-encoding design')
- rpe_options.add_argument('-eddy', action='store_true', help='run fsl eddy (note that if you choose this command you must also choose a phase encoding option')
- rpe_options.add_argument('-eddy_groups',metavar=('<index1,index2,...'),help='specify how input series should be grouped when running eddy, for use with variable TE or b-shape data. (Comma separated list of integers beginning with 1, i.e. 1,1,1,2,2,2 for 6 series where the first 3 series and second 3 series have different echo times).', default=None)
- rpe_options.add_argument('-eddy_fakeb',metavar=('<factor1,factor2,...'),help='specify how b-values of the input series should be scaled, for use with variable TE or b-shape data.', default=None)
- rpe_options.add_argument('-rpe_none', action='store_true', help='Specify that no reversed phase-encoding image data is being provided; eddy will perform eddy current and motion correction only')
- rpe_options.add_argument('-rpe_pair', metavar=('<reverse PE b=0 image>'), help='Specify the reverse phase encoding image')
- rpe_options.add_argument('-rpe_all', metavar=('<reverse PE dwi volume>'), help='Specify that ALL DWIs have been acquired with opposing phase-encoding; this information will be used to perform a recombination of image volumes (each pair of volumes with the same b-vector but different phase encoding directions will be combined together into a single volume). The argument to this option is the set of volumes with reverse phase encoding but the same b-vectors as the input image')
- rpe_options.add_argument('-rpe_header', action='store_true', help='Specify that the phase-encoding information can be found in the image header(s), and that this is the information that the script should use')
- rpe_options.add_argument('-rpe_te', metavar=('<echo time (s)>'), help='Specify the echo time of the reverse phase encoded image, if it is not accompanied by a bids .json sidecar.')
- rpe_options.add_argument('-eddy_quad_output', metavar=('<path>'), help='path to a not yet existing directory you want to save eddy_quad output to')
- rpe_options.add_argument('-eddy_quad_off', action='store_true', help='skip eddy_quad')
- etc_options = cmdline.add_argument_group('Other options')
- etc_options.add_argument('-set_seed', action='store_true', help='set random seed and make eddy deterministic', default=False)
- def execute(): #pylint: disable=unused-variable
- from mrtrix3 import app, fsl, run, path #pylint: disable=no-name-in-module, import-outside-toplevel
- import pandas as pd
- import numpy as np
- import os
- import random
- from pathlib import Path
- if app.ARGS.set_seed:
- seed = 42
- np.random.seed(seed)
- random.seed(seed)
- # create a temporary directory to store processing files
- app.make_scratch_dir()
- # grab the fsl suffix stored in $FSLOUTPUTTYPLE
- fsl_suffix = fsl.suffix()
- # create dict containing metadata from either user input args or bids .json sidecars
- dwi_metadata = get_input_info(
- app.ARGS.input, app.ARGS.fslbval, app.ARGS.fslbvec, app.ARGS.bids)
- # if rpe_pair is selected then get metadata for the rpe_data
- if getattr(app.ARGS, "rpe_pair", None):
- rpe_path = app.ARGS.rpe_pair
- # Strip off .gz if present, then .nii
- if rpe_path.endswith(".nii.gz"):
- base = rpe_path[:-7] # remove .nii.gz
- elif rpe_path.endswith(".nii"):
- base = rpe_path[:-4] # remove .nii
- else:
- base, _ = os.path.splitext(rpe_path)
- rpe_bval = base + ".bval"
- rpe_bvec = base + ".bvec"
- rpe_json = base + ".json"
- rpe_metadata = get_input_info(
- rpe_path, rpe_bval, rpe_bvec, rpe_json
- )
- # ensure inputs are reasonable for subsequent dwi processing
- # assert_inputs(dwi_metadata, app.ARGS.pe_dir, app.ARGS.pf)
- # convert input data to .mif format and concatenate
- convert_input_data(dwi_metadata)
- # get a table of b-shells, echo times, and b-shapes
- shell_table = create_shell_table(dwi_metadata)
- shell_rows = ['b-value', 'b-shape', 'n volumes', 'echo time']
- shell_df = pd.DataFrame(data = shell_table,
- index = shell_rows)
- print('input DWI data has properties:')
- print(shell_df)
- outpath = Path(app.ARGS.output)
- abs_outpath = outpath.resolve()
- abs_outpath.parent.mkdir(parents=True, exist_ok=True)
- if abs_outpath.suffix == '':
- abs_outpath = abs_outpath.with_suffix('.nii')
- app.goto_scratch_dir()
- # begin pipeline
- # denoising
- if app.ARGS.denoise:
- if app.ARGS.phase:
- phasepath = 'phase.nii'
- else:
- phasepath = None
- # by default perform mppca denoising with optional phase denoising for complex data
- run_mppca(
- app.ARGS.extent, phasepath, app.ARGS.shrinkage, app.ARGS.algorithm, dwi_metadata)
- # patch2self can be run either in addition or alternatively to mppca
- if app.ARGS.patch2self:
- run_patch2self()
- # rpg gibbs artifact correction
- # if app.ARGS.degibbs:
- # run_degibbs(dwi_metadata['pf'], dwi_metadata['pe_dir'],dwi_metadata['stride'])
- # Always run degibbs on main input if --degibbs is set
- if getattr(app.ARGS, "degibbs", False):
- run_degibbs_flexible("working.mif", dwi_metadata['pf'], dwi_metadata['pe_dir'], dwi_metadata['stride'], output_prefix="working")
- # rigid alignment of b0s from separate input series
- if app.ARGS.pre_align:
- run_pre_align(dwi_metadata)
- # rigid alignment of each dwi volume to the prior volume
- if app.ARGS.ants_motion_correction:
- run_ants_moco(dwi_metadata)
- # eddy current, succeptibility, motion correction
- if app.ARGS.eddy:
- run_eddy(shell_table, dwi_metadata)
- # if app.ARGS.denoise_after_eddy:
- # run_sigma_denoiser(dwi_metadata)
- # b1 bias correction and b0 normalization - added by omnia (enable)
- if app.ARGS.b1correct:
- run_b1correct(dwi_metadata)
- # generate a final brainmask
- if app.ARGS.mask or app.ARGS.normalize:
- create_brainmask(fsl_suffix,dwi_metadata)
- # Forced after b1 correction and moved before rician bias correction - added by omnia (enable)
- # normalize separate input series (voxelwise) such that b0 images are properly scaled
- if app.ARGS.normalize or app.ARGS.b1correct:
- if app.ARGS.b1correct:
- print("running b0 normalization because -b1correct was requested.")
- run_normalization(dwi_metadata)
- # rician bias correction
- if app.ARGS.phase and app.ARGS.rician:
- print('phase included, skipping approximated bias correction')
- elif app.ARGS.rician and not app.ARGS.phase:
- run_rice_bias_correct(dwi_metadata)
- run.command('mrinfo -export_grad_fsl dwi_designer.bvec dwi_designer.bval working.mif', show=False)
- orig_stride = dwi_metadata['stride']
- run.command('mrconvert -force -stride %s -datatype float32le working.mif dwi_designer.nii' %
- (orig_stride), show=False)
- dir_path = abs_outpath.parent
- out_name = abs_outpath.stem
- if app.ARGS.datatype:
- run.command('mrconvert -force -stride %s -datatype %s -export_grad_fsl "%s" "%s" %s "%s"' %
- (orig_stride,
- app.ARGS.datatype,
- dir_path / f"{out_name}.bvec",
- dir_path / f"{out_name}.bval",
- 'working.mif',
- abs_outpath))
- else:
- run.command('mrconvert -force -stride %s -export_grad_fsl "%s" "%s" %s "%s"' %
- (orig_stride,
- dir_path / f"{out_name}.bvec",
- dir_path / f"{out_name}.bval",
- 'working.mif',
- abs_outpath))
- bshapes = dwi_metadata['bshape_per_volume']
- tes = dwi_metadata['echo_time_per_volume']
- if len(set(bshapes)) > 1:
- np.savetxt(dir_path / f"{out_name}.bshape", bshapes, fmt='%s', delimiter=' ', newline=' ')
- if len(set(tes)) > 1:
- np.savetxt(dir_path / f"{out_name}.echotime", tes, fmt='%s', delimiter=' ', newline=' ')
- #eddy_quad
- if app.ARGS.eddy:
- run_eddy_quad()
- def main():
- import mrtrix3
- mrtrix3.execute() #pylint: disable=no-member
- if __name__ == "__main__":
- main()
designer.py at commit 92e19a0, under MIT · at the source
Overview
- Brain Aging and Sleep Center, NYU Grossman School of Medicine,New York, USA
- Radiology Department, NYU Grossman School of Medicine,New York, USA
- Nathan Kline Institute for Psychiatric Research,Orangeburg, USA
- University of Kentucky,Lexington, USA
- Penn State Milton S. Hershey Medical Center,Hershey, USA
- Neuromodulation Lab, NYU Grossman School of Medicine,New York, USA
- Hospital de La Santa Creu y Sant Pau,Barcelona, Spain
- Sleep and Brain Plasticity Center, King’s College of London,London, UK
- Healthy Brain Ageing Program, Brain and Mind Centre, The University of Sydney,Sydney, Australia
- Aging Research in Sleep Equity and Dementia Prevention Program, NYU Grossman School of Medicine,New York, USA
- Mount Sinai Integrative Sleep Center, Division of Pulmonary, Critical Care, and Sleep Medicine, Icahn School of Medicine at Mount Sinai,New York, USA
- Monash University,Melbourne, Australia
Abstract
The abstract is not reproduced here: the paper's license (CC BY-NC-ND) does not allow it. Read it in the paper, at the publisher or on Europe PMC.
Repository
Its files are read in the Code ↔ Paper reader above, with 5 matches between paragraphs and lines of code.
NYU-DiffusionMRI/DESIGNER-v2
92e19a0f98980f9100162dc0acafa6efb0e385b3, 29 September 2026Availability: 1 check, the latest on 30 September 2026: the link answers
- 30 September 2026: the link answers
44 files
- constant/
__init__.py , Python, 1 line - designer2/
__init__.py , Python, 8 lines - designer2/
designer.py , Python, 278 lines, 2 matches - designer2/
tmi.py , Python, 880 lines, 1 match - docs/
_includes/ , JavaScript, 1 linejs/ custom.js - docs/
_includes/ , JavaScript, 1 linelunr/ custom-index.js - docs/
_includes/ , JavaScript, 1 linemermaid_config.js - docs/
assets/ , JavaScript, 587 linesjs/ just-the-docs.js - docs/
assets/ , JavaScript, 61 linesjs/ vendor/ lunr.min.js - examples/
run_designer2_and_tmi.sh , Shell, 53 lines - lib/
__init__.py , Python, 1 line - lib/
designer_fit_wrappers.py , Python, 111 lines - lib/
designer_func_wrappers.p , Python, 1,500 lines, 1 matchy - lib/
designer_input_utils.py , Python, 661 lines - lib/
io/ , Python, 1 line__init__.py - lib/
io/ , Python, 288 linesimage.py - lib/
mpcomplex.py , Python, 466 lines - lib/
mpdenoise_adaptive.py , Python, 421 lines - lib/
mpunits.py , Python, 38 lines - lib/
smi.py , Python, 1,476 lines, 1 match - lib/
tensor.py , Python, 869 lines - lib/
utils.py , Python, 295 lines - rpg_cpp/
unring_rpg_pybind.cpp , C++, 1,324 lines - scripts/
compare_json.py , Python, 229 lines - scripts/
download_freesurfer_synt , Shell, 23 lineshstrip.sh - scripts/
minify_ants.sh , Shell, 58 lines - setup.py, Python, 76 lines
- tests/
__init__.py , Python, 1 line - tests/
conftest.py , Python, 18 lines - tests/
e2e_runner_factory.py , Python, 199 lines - tests/
e2e_runners.py , Python, 332 lines - tests/
scripts/ , Python, 338 linesgenerate_test_benchmark. py - tests/
test_e2e_complex_data.py , Python, 80 lines - tests/
test_e2e_heal_coronal.py , Python, 68 lines - tests/
test_e2e_high_resolution , Python, 68 lines.py - tests/
test_e2e_meso_degibbs.py , Python, 68 lines - tests/
test_e2e_meso_eddy.py , Python, 68 lines - tests/
test_e2e_meso_eddy_wo_bi , Python, 68 linesds.py - tests/
test_e2e_meso_nonsquare. , Python, 67 linespy - tests/
test_e2e_meso_nonsquare_ , Python, 69 lineswo_bids.py - tests/
types.py , Python, 39 lines - tests/
utils.py , Python, 159 lines - README.md, Text, 135 lines
- license.txt, License, 35 lines
Tracing map
Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.
What the map holds:
- 1 repository of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 42 scripts, each with its path and the digest of its content;
- 5 matches between paragraphs of the paper and lines of the code (method lexical-v1);
- neither the text of the paper nor the code itself.
Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.
Data
No dataset and no data link were found in the paper.
Data availability statement
The paper has a data availability statement. Its license (CC BY-NC-ND) does not allow reproducing it here; in short, from what the harvester recognized in it:
- it says that the data are available on request
Read it in the paper: doi.org/10.1038/s41598-026-39162-7.
Versions
The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.
Version 1, 30 September 2026: the first record
Recorded: type, language, journal, volume, issue, pages, dates, 24 authors, 18 keywords, 10 MeSH terms, 6 funders, 90 references.
Cite
This paper
Figueredo, L. F., Chen, J., Gaggi, N. L., Song, X., Jacobs, T., Silva-Albornoz, G., Pehel, S., Gonzalez, M., Badia, S. G., Rosenzweig, I., Naismith, S. L., Ramos-Cejudo, J., Gills, J., Ayappa, I., Rapoport, D. M., Kam, K., Mullins, A. E., Parekh, A., Varga, A. W., . . . Osorio, R. S. (2026). White matter microstructure differences in obstructive sleep apnea severity groups assessed by diffusion tensor metrics and biophysical modeling. Scientific reports, 16(1), 11963. https://
BibTeX
@article{figueredo2026wh
author = {Figueredo, Luisa F. and Chen, Jenny and Gaggi, Naomi L. and Song, Xiaotong and Jacobs, Tovia and Silva-Albornoz, Gabriela and Pehel, Shayna and Gonzalez, Moses and Badia, Sandra Giménez and Rosenzweig, Ivana and Naismith, Sharon L. and Ramos-Cejudo, Jaime and Gills, Joshua and Ayappa, Indu and Rapoport, David M. and Kam, Korey and Mullins, Anna E. and Parekh, Ankit and Varga, Andrew W. and Bubu, Omonigho M. and Blessing, Esther and Novikov, Dmitry S. and Fieremans, Els and Osorio, Ricardo S.},
title = {{White matter microstructure differences in obstructive sleep apnea severity groups assessed by diffusion tensor metrics and biophysical modeling}},
journal = {Scientific reports},
year = {2026},
month = mar,
volume = {16},
number = {1},
pages = {11963},
publisher = {Nature Publishing Group},
issn = {2045-2322},
doi = {10.1038/
url = {https://
pmid = {41781414},
pmcid = {PMC13068906}
}
RIS
TY - JOUR
AU - Figueredo, Luisa F.
AU - Chen, Jenny
AU - Gaggi, Naomi L.
AU - Song, Xiaotong
AU - Jacobs, Tovia
AU - Silva-Albornoz, Gabriela
AU - Pehel, Shayna
AU - Gonzalez, Moses
AU - Badia, Sandra Giménez
AU - Rosenzweig, Ivana
AU - Naismith, Sharon L.
AU - Ramos-Cejudo, Jaime
AU - Gills, Joshua
AU - Ayappa, Indu
AU - Rapoport, David M.
AU - Kam, Korey
AU - Mullins, Anna E.
AU - Parekh, Ankit
AU - Varga, Andrew W.
AU - Bubu, Omonigho M.
AU - Blessing, Esther
AU - Novikov, Dmitry S.
AU - Fieremans, Els
AU - Osorio, Ricardo S.
TI - White matter microstructure differences in obstructive sleep apnea severity groups assessed by diffusion tensor metrics and biophysical modeling
T2 - Scientific reports
J2 - Sci Rep
PY - 2026
DA - 2026/
VL - 16
IS - 1
SP - 11963
SN - 2045-2322
PB - Nature Publishing Group
DO - 10.1038/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.1038/
"type": "article-journal",
"title": "White matter microstructure differences in obstructive sleep apnea severity groups assessed by diffusion tensor metrics and biophysical modeling",
"container-title": "Scientific reports",
"author": [
{
"family": "Figueredo",
"given": "Luisa F."
},
{
"family": "Chen",
"given": "Jenny"
},
{
"family": "Gaggi",
"given": "Naomi L."
},
{
"family": "Song",
"given": "Xiaotong"
},
{
"family": "Jacobs",
"given": "Tovia"
},
{
"family": "Silva-Albornoz",
"given": "Gabriela"
},
{
"family": "Pehel",
"given": "Shayna"
},
{
"family": "Gonzalez",
"given": "Moses"
},
{
"family": "Badia",
"given": "Sandra Giménez"
},
{
"family": "Rosenzweig",
"given": "Ivana"
},
{
"family": "Naismith",
"given": "Sharon L."
},
{
"family": "Ramos-Cejudo",
"given": "Jaime"
},
{
"family": "Gills",
"given": "Joshua"
},
{
"family": "Ayappa",
"given": "Indu"
},
{
"family": "Rapoport",
"given": "David M."
},
{
"family": "Kam",
"given": "Korey"
},
{
"family": "Mullins",
"given": "Anna E."
},
{
"family": "Parekh",
"given": "Ankit"
},
{
"family": "Varga",
"given": "Andrew W."
},
{
"family": "Bubu",
"given": "Omonigho M."
},
{
"family": "Blessing",
"given": "Esther"
},
{
"family": "Novikov",
"given": "Dmitry S."
},
{
"family": "Fieremans",
"given": "Els"
},
{
"family": "Osorio",
"given": "Ricardo S."
}
],
"container-title-short":
"volume": "16",
"issue": "1",
"page": "11963",
"DOI": "10.1038/
"PMID": "41781414",
"PMCID": "PMC13068906",
"ISSN": "2045-2322",
"publisher": "Nature Publishing Group",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
3,
4
]
]
}
}
The tracing map gets a citation of its own once an author has validated it and it has a DOI.
Similar papers
The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.
- [1] doi:10.1038/s41467-026-70018-w [code]
- Geometry of the cumulant series in diffusion MRI.Journal: Nature communicationsIn common: structural MRI / diffusion, 15 references
- [2] doi:10.1002/mrm.70336 [code]
- Offline Reconstruction of Diffusion MRI Acquisitions for Comparison Between Complex PCA-Based and AI-Based Denoising.Journal: Magnetic resonance in medicineIn common: DIPY, MRtrix3, NiBabel, 3 other tools, structural MRI / diffusion, 7 references
- [3] doi:10.1038/s41598-026-51531-w [code]
- Multimodal age-dependent diffusion-MRI analysis of the neocortex in a rat model of cortical dysplasia.Journal: Scientific reportsIn common: DIPY, MRtrix3, scikit-image, 4 other tools, structural MRI / diffusion, 5 references
- [4] doi:10.1371/journal.pone.0346132 [code]
- Analysis of cortical dysplasias using b-tensor encoding diffusion MRI in an animal model.Journal: PloS oneIn common: DIPY, MRtrix3, scikit-image, 3 other tools, structural MRI / diffusion, 5 references
- [5] doi:10.1038/s43856-026-01614-6 [code]
- Simulation-based inference at the theoretical limit for fast, robust microstructural MRI with minimal diffusion data.Journal: Communications medicineIn common: DIPY, scikit-image, SciPy, 1 other tool, structural MRI / diffusion, 6 references
- [6] doi:10.1109/tmi.2026.3664328 [code]
- Axon Diameter Mapping From Myelin Water Diffusion MRI.Journal: IEEE transactions on medical imagingIn common: MRtrix3, structural MRI / diffusion, 7 references
- [7] doi:10.1038/s41597-026-06869-1 [code]
- Individual Brain Charting: fifth release of high-resolution fMRI data for cognitive mapping.Journal: Scientific dataIn common: DIPY, MRtrix3, ANTs, 5 other tools, 2 references
- [8] doi:10.2463/mrms.mp.2024-0149 [code]
- Image Distortion Correction for Diffusion MR Imaging Using a Transformer-based U-Net.Journal: Magnetic resonance in medical sciences : MRMS : an official journal of Japan Society of Magnetic Resonance in MedicineIn common: ANTs, scikit-image, NiBabel, 3 other tools, structural MRI / diffusion, 4 references
- [9] doi:10.1002/mrm.70496 [code]
- A Deep Nonlinear Subspace Modeling and Reconstruction for Diffusion-Weighted Imaging Using Denoising Auto-Encoder.Journal: Magnetic resonance in medicineIn common: DIPY, MRtrix3, Numba, 3 other tools, structural MRI / diffusion, 2 references
- [10] doi:10.1093/cercor/bhag132 [code]
- Spatiotemporal white-matter development across early childhood.Journal: Cerebral cortex (New York, N.Y. : 1991)In common: DIPY, MRtrix3, ANTs, 4 other tools, structural MRI / diffusion, 1 reference
Contribute
The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.
Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.
Claim this paper
Correct its record
Say what each link of this record is, remove the ones that are not the paper's, add the ones that are missing. The correction becomes a new version of the record, in its Versions section.
Validate its tracing map
You validate the map as this page shows it: 1 repository of the authors' code, each at its verified commit and with its license, 42 scripts, and 5 matches between paragraphs and code (see the Code and Map sections). It then receives a DOI on Zenodo, with you (your ORCID iD) and OSCR as its creators; the code itself is not deposited.
The map's fingerprint: sha256:948e90d9ba781807…
Add the badge to its README
The badge links the code to this page. Copy one of these into the README of the paper's code: only you decide where it goes, and nothing is changed for you.
Markdown
[, paste the snippet at the top, then “Commit changes…” and, to review it first, “Create a new branch and start a pull request”. You open the pull request; OSCR asks for no permission.
Request its removal
To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).
Discussion, reproductions, activity
Discussion: questions and error reports about this paper and its code, from signed-in readers and its authors. It opens with sign-in.
Reproductions: reports from readers who ran the authors' code: what they reproduced, with which environment, commit and data. It opens with sign-in.
Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.
