layerfMRI / LAYNII

Stand alone fMRI software suite for layer-fMRI analyses.
BSD 3-Clause "New" or "Revised" License
86 stars 25 forks source link

LN_BOCO issue (probably data type issue) with very large fMRI data #93

Open zqsha opened 11 months ago

zqsha commented 11 months ago

Hi experts, Recently, I used LN_BOCO to do BOLD correction. Basically, I have a BOLD.nii with 360 volumes and a Nulled.nii with 360 volumes. Then, I used the following command line to do BOLD correction.

/software/LayNii_v2.4.0/LN_BOCO \
-Nulled Nulled.nii \
-BOLD BOLD.nii \
-output test

There is an output file, called test_VASO_LN.nii. Even though this test_VASO.LN.nii contained 360 volumes, each image was null. So, I checked each image from Nulled.nii and BOLD.nii, and everything is fine. So, I tried to split Nulled.nii into two parts, with each having 180 volumes. I also did it for BOLD.nii. And then I separately performed BOLD correction for two parts of images, and everything works very well. My question is why the file with 360 volumes can not run BOLD correction with LN_BOCO. Is there any reason? I noticed that our server has 300GB RAM, so it's good enough to load the BOLD.nii (about 11GB). Is there any memory limit for LN_BOCO function?

Thanks, Cain

ofgulban commented 11 months ago

Hi @zqsha ,

Thanks for opening this issue, and also writing how to solve it.

Can you tell us what are the spatial dimensions of your nifti file as well (e.g. 256x256x100 x 360)? You might be hitting a data type limit in LayNii during loading the file into RAM (note that this can be independent of how much RAM you have available in your computer) but we need to know how many voxels you have in your nifti first. If this is the case (which sounds like it is from your solution but we need to be sure), we can increase it.

zqsha commented 11 months ago

Hi expert,

Thanks for your feedback. The image resolution is 0.8mm0.8mm0.8mm*360volumes. Yes, I agree I might touch the upper limit of data type. Do you have any thoughts on it? If you need any information from my side, please let me know.

Best, Cain

ofgulban commented 11 months ago

Sorry, maybe it was unclear, I am asking about the size of the data array, not voxel dimensions. 0.8 mm is the voxel dimension, I asking about how many voxels are there along x, y, z axes (256 × 256 × 256 voxels that are of dimension 0.8 mm × 0.8 mm × 0.8 mm).

zqsha commented 11 months ago

Sorry for reporting the incorrect information. I just now checked that the size of data array is 240 x 240 x 136. Hopefully, it's clearer this time. Thank you so much. Best, Cain

ofgulban commented 10 months ago

Thanks for the information, we will look into this problem but as you already have a workaround solution it will not be high priority in our list.

zqsha commented 10 months ago

Yes, I figured it out. Thank you so much for your feedback. If you have any updates about this LN_BOCO function, please let me know, and then I will download the up-to-date version of Laynii.

ofgulban commented 10 months ago

Cool. If there is anything new, I will post to this conversation. You should get a notification in this way automatically.