Hi Experts,
I have followed the following link to download the basis set https://juchem.bme.columbia.edu/content/mr-spectroscopy-basis-sets
However, our data was acquired using a PRESS sequence at the band width of 1200 Hz, TE 30 ms, in Siemens Skyra 3T MRI. Can someone provide with the basis set according to the above mentioned parameters or show us some pointers. We tried downloading the basis set at 2500 Hz; but the fitting was not proper.
Please advise
Hi,
Can someone provide with the basis set according to the below mentioned parameters or show us some pointers. our data was acquired using a PRESS sequence at the band width of 1200 Hz, TE 30 ms, in Siemens Skyra 3T MRI
Thanks
Himanshu
Hi @wclarke,
We have used the below command for conversion
basis_tools convert RawBasis_for_PRESSPhilips_TE_30_BW_2500_NPts_1024 --bandwidth 1200 --fieldstrength 3.0 fsl_basis_test
Thanks @wclarke, i tried the same basis_tools convert RawBasis_for_PRESSPhilips_TE_30_BW_2500_NPts_1024 --bandwidth 2500 --fieldstrength 3.0 fsl_basis_test1 fsl_mrs --data HS69_BASE.nii.gz --basis fsl_basis_test1 --output HS69_svs --tissue_frac segmentation.json --report
the error is shown below:
File “/User/anaconda2/envs/py38/lib/python3.8/site-packages/fsl_mrs/core/basis.py”, line 317, in _resampled_basis
basis = misc.ts_to_ts_ft(self._raw_fids,
File “/User/anaconda2/envs/py38/lib/python3.8/site-packages/fsl_mrs/utils/misc.py”, line 255, in ts_to_ts_ft raise InsufficentTimeCoverageError(‘Input data covers less time than is requested by interpolation.’ fsl_mrs.utils.misc.InsufficentTimeCoverageError: Input data covers less time than is requested by interpolation. Change interpolation points or dwell time.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File “/User/anaconda2/envs/py38/bin/fsl_mrs”, line 8, in
sys.exit(main())
File “/User/anaconda2/envs/py38/lib/python3.8/site-packages/fsl_mrs/scripts/fsl_mrs.py”, line 281, in main
conjugated = mrs.check_Basis(repair=True)
File “/User/anaconda2/envs/py38/lib/python3.8/site-packages/fsl_mrs/core/mrs.py”, line 626, in check_Basis
basis = self.basis
File “/User/anaconda2/envs/py38/lib/python3.8/site-packages/fsl_mrs/core/mrs.py”, line 231, in basis
return self._basis.get_formatted_basis(
File “/User/anaconda2/envs/py38/lib/python3.8/site-packages/fsl_mrs/core/basis.py”, line 238, in get_formatted_basis
formatted_basis = self._resampled_basis(1 / bandwidth, points)
File “/User/anaconda2/envs/py38/lib/python3.8/site-packages/fsl_mrs/core/basis.py”, line 327, in _resampled_basis raise BasisHasInsufficentCoverage('The basis spectra covers too little time. ’ fsl_mrs.core.basis.BasisHasInsufficentCoverage: The basis spectra covers too little time. Please reduce the dwelltime, number of points or pad this basis.
This is saying that the basis set simulations don’t cover the full period of your data FID, you can probably get around this by zero-padding the basis set data first, e.g. just double the number of points.
Apologies, I am new to MRS can you please elaborate your suggestion or provide me some link to follow on how to double the number of points and perform zero padding of the basis set
Probably easiest is just to open the original files (from Christoph Juchem’s group) in your favourite program (matlab/python etc) and just pad each vector with zeros.
Hi @wclarke,
I am still not getting what do you mean by padding the vectors with zero. As I am using the following link to download basis set from Christoph Juchem’s group. What are the original files in this folder; you mean to say all the 35 .raw metabolite files must be padded?
I have seen padding using matlab using paddata command as shown in the link, however, it is still confusing how to apply this on original file/s of basis set.
Kindly help in this regard