OSCR

Non-invasive MRI of choroid plexus vascular function.

Code ↔ Paper

2 matches between paragraphs of the paper and lines of its authors' code, computed by the harvester (lexical-v1). Click a colored paragraph or line to see its counterpart.

The 2 matches
  1. [1] § Methods › Study 1: Choroid plexus vascular elasticity measured by hypercapnia challenge ↔ pro_CO2_CVR_DLBS_Data.m, lines 76–146 · score 0.68 · EtCO2, BOLD signal, delay, lowest, residual, linear
  2. [2] § Methods › Study 2: Choroid plexus vascular elasticity measured by intermittent breath modulation ↔ pro_CO2_CVR_DLBS_Data.m, lines 76–146 · score 0.55 · EtCO2, BOLD signal, linear, brain

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

MATLAB · 210 lines · 8 KB · no license · 2 matches

  1. clear all;close all;
  2. %GENERAL
  3. cwd = 'F:\ParkData\CO2_CVR'; %project main path
  4. subSeries = dir([cwd filesep 'sub-*']);
  5. for ii=1:length(subSeries)
  6. subjectlist{ii} = subSeries(ii).name;
  7. end
  8. nsub=length(subjectlist);
  9. imgtpm='D:\MATLAB\spm12\tpm\TPM.nii';
  10. SmoothFWHMmm=4;
  11. matsize = [64 64 43];
  12. matresol = [3.44 3.44 3.5];
  13. matcenter = [32 32 22];
  14. tr=2;
  15. envelope_interp_rate=48;
  16. brainMaskName='BrainMask';
  17. %%%%%%%%%%%%%%%%%%global parameters%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  18. warning off;
  19. spm_get_defaults;
  20. global defaults;
  21. totalstart = cputime;
  22. for sub=1:nsub
  23. subname=subjectlist{sub};
  24. subdir=[cwd filesep subname];
  25. workDir = [subdir filesep 'workspace'];
  26. mkdir(workDir);
  27. copyfile([subdir filesep subname '*_1-d0211.*'],workDir); % copy 4D BOLD data (hdr/img) to the workDir
  28. %%%%%%%%%%%%% Realign BOLD %%%%%%%%%%%%%%%%%%%%%%%%%%%%
  29. P = cell(1,1);
  30. P{1} = spm_select('FPList',workDir,['^' subname '.*img']);
  31. V = spm_vol(P);
  32. disp(sprintf(['realigning ' subname]));
  33. FlagsC = struct('quality',defaults.realign.estimate.quality,'fwhm',5,'rtm',0);
  34. spm_realign(V, FlagsC);
  35. which_writerealign = 2;
  36. mean_writerealign = 1;
  37. FlagsR = struct('interp',defaults.realign.write.interp,...
  38. 'wrap',defaults.realign.write.wrap,...
  39. 'mask',defaults.realign.write.mask,...
  40. 'which',which_writerealign,'mean',mean_writerealign);
  41. spm_reslice(P,FlagsR);
  42. clear V;
  43. %%%%%%%%%%%%%%%%%%%%end realign fmri%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  44. %%%%%%%%%% Smoothing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  45. P = cell(1,1);
  46. P{1} = spm_select('FPList',workDir,['^r' subname '.*img']);
  47. % get the scan's data
  48. V = spm_vol(P);
  49. V = cat(1,V{:});
  50. % smooth scan (creates a 4D smoothed scan prefixed with 's' and the FWHM of
  51. % the gaussian kernel)
  52. disp(sprintf(['smoothing ' subname]));
  53. [pth,nam,ext] = fileparts(V(1).fname);
  54. fnameIn = fullfile(pth,[nam ext]);
  55. fname = fullfile(pth,['s' int2str(SmoothFWHMmm) nam ext]);
  56. spm_smooth(fnameIn,fname,SmoothFWHMmm);
  57. % clear V for further use
  58. clear V;
  59. %%%%%% Shift EtCO2 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  60. % get filename for the EtCO2 time course
  61. envelopeCo2FilePath = [subdir filesep 'IP_etco2_time_' subname '.txt'];
  62. % get average smoothed bold scan (prefixed with 'mean')
  63. meanimg = spm_select('FPList',workDir,'^mean.*img');
  64. % get brain masks using average bold scan
  65. [brnmsk, brnmsk_clcu] = bold_getBrainMask(imgtpm,meanimg);
  66. % save masks as 'BrainMask.img' and 'BrainMask_calulation.img'
  67. write_ANALYZE(brnmsk,[workDir filesep brainMaskName '.img'],matsize,matresol,1,4,0,...
  68. matcenter);
  69. write_ANALYZE(brnmsk_clcu,[workDir filesep brainMaskName '_calulation.img'],matsize,...
  70. matresol,1,4,0,matcenter);
  71. bold_maskPath = [workDir filesep brainMaskName '.img'];
  72. % get realigned and resliced bold scan and its respective data
  73. P = cell(1,1);
  74. P{1} = spm_select('FPList',workDir,['^r.' subname '*img']);
  75. V = spm_vol(P);
  76. V = cat(1,V{:});
  77. % find the average bold signal for the whole brain inside the
  78. % calculation brian mask (this is a 1D signal)
  79. avgBold = zeros(length(V),1);
  80. for i=1:length(V)
  81. vols = spm_read_vols(V(i));
  82. vols(isnan(vols)) = 0;
  83. img = vols/V(i).pinfo(1);
  84. avgBold(i) = mean(img(brnmsk_clcu>0));
  85. end
  86. % save the whole-brain bold signal
  87. avgBold = [tr*(0:length(avgBold)-1)',avgBold];
  88. name_avgboldPath=strcat(workDir,filesep,'AvgBOLD_WB_ns.txt');
  89. dlmwrite(name_avgboldPath, avgBold);
  90. % get the co2 envelope signal (timestamps in 1st column, mmHgCo2 in 2nd)
  91. r1 = textread(envelopeCo2FilePath,'%f','delimiter',',');
  92. etco2timecourse = reshape(r1,2,length(r1)/2)';
  93. % find the optimal delay between the whole-brain bold signal and the co2
  94. % envelope (by finding the lowest residual values between the two shifted
  95. % curves after linear fitting)
  96. % delay range in seconds (it is assumed that the EtCO2 curve will cover a
  97. % much larger range than the BOLD; therefore, the shift of the EtCO2 curve
  98. % will only be negative (to the left))
  99. minRange = -abs((length(etco2timecourse)./envelope_interp_rate) -...
  100. (size(avgBold,1).*tr));
  101. maxRange = 0;
  102. delayrange = [minRange maxRange];
  103. % finds the optimal delay in the delay range between the two curves
  104. [optDelay, ~] = cvr_func_findCO2delay(avgBold, tr,...
  105. etco2timecourse, delayrange,1,1,1,workDir,1);
  106. % repeat process once with +/- 10s delays with 0.1s iteration bewteen
  107. % delays to approach (zoom in on) the optimal delay
  108. delayrange = [optDelay-5, optDelay+5];
  109. [optDelay, optEtCO2] = cvr_func_findCO2delay(avgBold, tr,...
  110. etco2timecourse, delayrange,1,0,0.1,workDir);
  111. co2delay=optDelay;
  112. % save delays
  113. filename = fullfile(workDir, 'Sync_EtCO2_timecourse.txt');
  114. save(filename,'optEtCO2','-ascii');
  115. filename = fullfile(workDir, 'EtCO2_BOLD_delay.txt');
  116. save(filename,'co2delay','-ascii');
  117. %%%%%%% Generate CVR map %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  118. cd(workDir);
  119. % make brainMaskStruct to potentially update brainMask
  120. brainMaskStruct.brainMaskName = brainMaskName;
  121. brainMaskStruct.matsize = matsize;
  122. brainMaskStruct.matresol = matresol;
  123. brainMaskStruct.matcenter = matcenter;
  124. % find and save CVR map using global-shift method
  125. cvrdir_g = [workDir filesep 'CVR_globalshift_s4'];mkdir(cvrdir_g);
  126. brnmsk=loadimage([workDir filesep brainMaskName '.img'],1);
  127. [EtCO2_mean,EtCO2_min,EtCO2_max] = CVR_mapping_spm_GLM(workDir,subname,...
  128. tr,SmoothFWHMmm,brnmsk,brainMaskStruct,cvrdir_g);
  129. %%%%%%% Coregister and normalize to MNI space %%%%%%%%%%%%%%%%%%%%%%
  130. % MPRAGE
  131. mprdir=[subdir filesep 'mpr'];
  132. delete([subdir filesep '.mat']);
  133. meanfile = spm_select('FPList',workDir,'^mean.*img');
  134. meanimg=spm_read_vols(spm_vol(meanfile));
  135. write_ANALYZE(meanimg,meanfile,matsize,matresol,1,16,0,matcenter);
  136. write_ANALYZE(meanimg,[mprdir filesep 'mean_co2bold.img'],matsize,matresol,1,16,0,matcenter);
  137. cvrfile=spm_select('FPlist', cvrdir_g, ['^HC_CVRmap_s.*img$']);
  138. cvrimg=spm_read_vols(spm_vol(cvrfile));
  139. write_ANALYZE(cvrimg,[mprdir filesep 'HC_CVRmap_' subname '_s' int2str(SmoothFWHMmm) '.img'],matsize,matresol,1,16,0,matcenter);
  140. % generate skull-stripped MPRAGE
  141. imgfile = [mprdir filesep 'mpr.img'];
  142. brainmask = skullstripping_spm12(imgtpm,imgfile);
  143. mprvol = spm_vol(imgfile);
  144. mpr = spm_read_vols(mprvol)/mprvol.pinfo(1);
  145. write_ANALYZE(mpr,[mprdir filesep 'mpr.img'],[256 256 198],[1,1,1],1,4,0,[128 128 99]);
  146. write_ANALYZE(mpr.*brainmask,[mprdir filesep 'mpr_brain.img'],[256 256 198],[1,1,1],1,4,0,[128 128 99]);
  147. %Coregister maps to skull-stripped MPRAGE
  148. target = [mprdir filesep 'mpr_brain.img'];
  149. source = spm_select('FPlist', mprdir,'^mean_co2bold.*img');
  150. co2files=spm_select('FPlist', mprdir,['^HC_CVRmap_' subname '.*img']);
  151. other=cellstr(co2files);
  152. spm_coreg12(target,source,other);
  153. % reset the .mat of each hdr/img to ensure consistent BOLDspace rotation
  154. % matrix (coregistration changes the rotation matrix of source and other)
  155. fn_rawbold = meanfile;%spm_select('FPList',workDir,'^meanro.*img');
  156. P = spm_vol(fn_rawbold);
  157. matInfo = P(1).mat;
  158. fl1 = cat(1,source, other);
  159. resetRotationMatrix(fl1, matInfo);
  160. %%%%%%%%%%%% Normalize to MNI %%%%%%%%%%%%%%%%%%%%%%%%%%%%
  161. source = spm_select('FPlist', mprdir, '^mpr.img$');
  162. co2files=spm_select('FPlist', mprdir, ['^rHC_CVRmap_' subname '.*img']);
  163. other=cellstr(co2files);
  164. spm_norm12(imgtpm,source,other);
  165. disp('Current Dataset Complete!');
  166. end

pro_CO2_CVR_DLBS_Data.m at commit 22a138f, no license · at the source

Overview

Authors: Peiying Liu1, Lori Donaldson1, Beini Hu1, Gagan S Wig2,3, Hanzhang Lu4
ORCID iDs: Peiying Liu, Beini Hu
  1. Department of Diagnostic Radiology & Nuclear Medicine, University of Maryland School of Medicine, Baltimore, MD, United States
  2. Center for Vital Longevity & Department of Psychology, The University of Texas at Dallas, Dallas, TX, United States
  3. Department of Psychiatry, The University of Texas Southwestern Medical Center, Dallas, TX, United States
  4. The Russell H. Morgan Department of Radiology & Radiological Science, Johns Hopkins University School of Medicine, Baltimore, MD, United States
Journal: Imaging neuroscience (Cambridge, Mass.), volume 4, article IMAG.a.1216
Dates: received 19 September 2025; accepted 11 March 2026; published online 17 April 2026
Type: Research article · Language: English
License: CC BY
Identifiers: DOI 10.1162/imag.a.1216 · PMID 42016556 · PMCID PMC13094013 · OpenAlex W7147019455
Open access: diamond, a free copy (OpenAlex)
Status: code verified
Categories: fMRI (modality)
Methods: Spectral & time-frequency, Statistics, Preprocessing, fMRI & imaging
Keywords: choroid plexus, vasculature, elasticity, functional MRI, BOLD, aging
Topic: Cerebrospinal fluid and hydrocephalus (Cellular and Molecular Neuroscience, Neuroscience), according to OpenAlex
Funding: National Institutes of Health (P41EB031771, EB031771, U01NS100588, R01 NS115771); National Institute of Neurological Disorders and Stroke (R01 NS115771, U01 NS100588); National Institute of Biomedical Imaging and Bioengineering (P41 EB031771)
Citations: not cited yet (Europe PMC); 37 references in the paper

Abstract

Choroid plexus (ChP) is a highly vascularized tissue in the ventricles of the brain, and it plays an important role in the production of cerebrospinal fluid (CSF) and formation of the blood-CSF barrier. The function of ChP vessels has been implicated in waste clearance efficiency during aging and neurodegenerative diseases. At present, postmortem studies are the main method to assess choroid plexus vascular integrity, with a few tools to measure ChP function in living humans. Here, we proposed a non-invasive MRI approach to assess ChP vascular elasticity based on the detection of MRI signal changes in response to vasoactive challenges. The mechanism of the signal is hypothesized to be due to reciprocal blood and stroma volume alterations during vessel expansion. We demonstrated that ChP vascular elasticity can be evaluated with BOLD MRI using a hypercapnia challenge of CO2 inhalation. This effect is specifically located in the brain ventricles where ChP is abundant. We revealed the ability of the technique in detecting age-related reduction in ChP vascular elasticity. We further showed that this effect can be assessed with gas-free methods, including intermittent breath modulation and resting-state BOLD fMRI. We characterized the image contrast requirement under which this effect can be detected. This technique may provide a clinically feasible tool for assessing ChP vascular function in health and disease.

Reproduced under the paper's license (CC BY), from the paper cited above.

Repository

Its files are read in the Code ↔ Paper reader above, with 2 matches between paragraphs and lines of code.

BrainPhysioMRI/ChP_elasticity

License: none: the authors keep all their rights
State: the link answers, verified on 29 September 2026
Evidence: files inventoried
Commit: 22a138f6cc646d47e6571f49b3110dc6482e46c8, 20 March 2026
Languages: MATLAB (4)
Size: 21 files, 4 scripts
Software Heritage: not archived
Found in: “Data and Code Availability”
Holds: README
Not found: license file, CITATION.cff, environment file, tests, continuous integration, documentation
Tools: SPM (4 files)
Availability: 1 check, the latest on 29 September 2026: the link answers
  • 29 September 2026: the link answers
5 files

The paper's code and data availability statement is in the Data section.

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;
  • 4 scripts, each with its path and the digest of its content;
  • 2 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

Datasets cited

Data and Code Availability

All data of Study 1 from the DLBS are available open access on OpenNeuro.org (https://openneuro.org/datasets/ds004856). All data of Study 2 are available open access on OpenNeuro.org (https://openneuro.org/datasets/ds007588). All data of Study 3 were downloaded from OpenfMRI (https://openfmri.org/dataset/ds000258/).

The codes used in this work are available at https://github.com/BrainPhysioMRI/ChP_elasticity

Reproduced under the paper's license (CC BY), from the paper cited above.

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, 29 September 2026: the first record

Recorded: type, language, journal, volume, pages, dates, 5 authors, 6 keywords, 3 funders, 37 references.

Cite

This paper

Liu, P., Donaldson, L., Hu, B., Wig, G. S., & Lu, H. (2026). Non-invasive MRI of choroid plexus vascular function. Imaging neuroscience (Cambridge, Mass.), 4, IMAG.a.1216. https://doi.org/10.1162/imag.a.1216

BibTeX

@article{liu2026non,
author = {Liu, Peiying and Donaldson, Lori and Hu, Beini and Wig, Gagan S and Lu, Hanzhang},
title = {{Non-invasive MRI of choroid plexus vascular function}},
journal = {Imaging neuroscience (Cambridge, Mass.)},
year = {2026},
month = apr,
volume = {4},
pages = {IMAG.a.1216},
publisher = {MIT Press},
issn = {2837-6056},
doi = {10.1162/imag.a.1216},
url = {https://doi.org/10.1162/imag.a.1216},
pmid = {42016556},
pmcid = {PMC13094013}
}

RIS

TY - JOUR
AU - Liu, Peiying
AU - Donaldson, Lori
AU - Hu, Beini
AU - Wig, Gagan S
AU - Lu, Hanzhang
TI - Non-invasive MRI of choroid plexus vascular function
T2 - Imaging neuroscience (Cambridge, Mass.)
J2 - Imaging Neurosci (Camb)
PY - 2026
DA - 2026/04/17
VL - 4
SP - IMAG.a.1216
SN - 2837-6056
PB - MIT Press
DO - 10.1162/imag.a.1216
UR - https://doi.org/10.1162/imag.a.1216
LA - en
ER -

CSL-JSON

{
"id": "10.1162/imag.a.1216",
"type": "article-journal",
"title": "Non-invasive MRI of choroid plexus vascular function",
"container-title": "Imaging neuroscience (Cambridge, Mass.)",
"author": [
{
"family": "Liu",
"given": "Peiying"
},
{
"family": "Donaldson",
"given": "Lori"
},
{
"family": "Hu",
"given": "Beini"
},
{
"family": "Wig",
"given": "Gagan S"
},
{
"family": "Lu",
"given": "Hanzhang"
}
],
"container-title-short": "Imaging Neurosci (Camb)",
"volume": "4",
"page": "IMAG.a.1216",
"DOI": "10.1162/imag.a.1216",
"PMID": "42016556",
"PMCID": "PMC13094013",
"ISSN": "2837-6056",
"publisher": "MIT Press",
"URL": "https://doi.org/10.1162/imag.a.1216",
"language": "en",
"issued": {
"date-parts": [
[
2026,
4,
17
]
]
}
}

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.1162/imag.a.1198 [code]
MEPrep: A robust pipeline for multi-echo fMRI denoising and preprocessing.
Journal: Imaging neuroscience (Cambridge, Mass.)
In common: openfmri.org/dataset/ds000258, fMRI, 1 reference
[2] doi:10.1162/imag.a.1338 [code]
Systematic fMRI signal differences across cohorts alter lifespan trajectories of functional brain networks.
Journal: Imaging neuroscience (Cambridge, Mass.)
In common: OpenNeuro ds004856, fMRI, 1 reference
[3] doi:10.1038/s41398-026-04426-3 [code]
Resting-state brain age is associated with cognitive and sensorimotor abnormalities in schizophrenia spectrum disorders: a validation & longitudinal study.
Journal: Translational psychiatry
In common: OpenNeuro ds004856, 1 reference
[4] doi:10.1002/brb3.71684
Evaluating the 8-Year Association Between Cognition and Beta Amyloid in the Dallas Lifespan Brain Study Cohort.
Journal: Brain and behavior
In common: OpenNeuro ds004856, 1 reference
[5] doi:10.1038/s43587-026-01121-2 [code]
Predicting categorical and continuous Alzheimer's disease outcomes from a single MRI scan.
Journal: Nature aging
In common: OpenNeuro ds004856, 1 reference
[6] doi:10.1038/s42003-026-10335-4 [code]
Diurnal choroid plexus function in mice depends on sex, age, and amyloid-β status.
Journal: Communications biology
In common: 3 references
[7] doi:10.1002/mrm.70429
Ultrafast fMRI Detects Age-Related Changes in Harmonics of Cardiac Pulsations in the Brain at 7 T.
Journal: Magnetic resonance in medicine
In common: fMRI, 3 references
[8] doi:10.1007/s11682-026-01191-1 [code]
Enhancing reproducibility in neuroimaging with containerized archival.
Journal: Brain imaging and behavior
In common: OpenNeuro ds004856
[9] doi:10.1186/s40708-026-00316-y [code]
Generalizable and explainable deep learning for brain MRI: a multi-cohort evaluation of 3D architectures for age and sex prediction.
Journal: Brain informatics
In common: OpenNeuro ds004856
[10] doi:10.1002/hbm.70519 [code]
Lifespan Trajectories of Asymmetry in White Matter Tracts.
Journal: Human brain mapping
In common: OpenNeuro ds004856

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.

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.