Closed hwbchen closed 1 year ago
Hi team,
Love the tool. However, I have a similar error. See below. I am working on a windows 10 machine, running Ubuntu 22.04 LTS WSL. I have the latest version of FSL installed. I followed the FSL instruction RE using eddy_cuda (ln -sf ${FSLDIR}/bin/eddy_cuda9.1 ${FSLDIR}/bin/eddy_cuda).
My acqparams.txt file looks like 0 -1 0 0.05 0 -1 0 0
Any idea of what could go wrong?
Thanks in advance,
Yann
eddy_cuda --imain=$(pwd)/INPUTS/dwi.nii.gz --mask=$(pwd)/INPUTS/brainmask.nii.gz \ acqp=$(> --acqp=$(pwd)/INPUTS/acqparams.txt --index=$(pwd)/INPUTS/index.txt \
--bvecs=$(pwd)/INPUTS/dwi.bvec --bvals=$(pwd)/INPUTS/dwi.bval \ --topup=$(pwd)/OUTPUTS/b0_all_topup --out=$(pwd)/eddy_output/eddy_unwarped_images
Warning: An input intended to be a single 3D volume has multiple timepoints. Input will be truncated to first volume, but this functionality is deprecated and will be removed in a future release.
Warning: An input intended to be a single 3D volume has multiple timepoints. Input will be truncated to first volume, but this functionality is deprecated and will be removed in a future release.
TopupFileIO:: msg=TopupFileReader::MovePar: Index i out of bound
EDDY::: Eddy failed with message EDDY::: ECScanClasses.cpp::: EDDY::ECScanManager::ECScanManager(const string&, const string&, const string&, const string&, const string&, const string&, const string&, const string&, EDDY::ECModel, EDDY::ECModel, const std::vector
Hi all - this seems to be an issue with running eddy (which is outside of the Synb0 container). It appears to suggest that maybe your index file is incorrect? Does your index file have the value 1, repeating for every volume in your dwi.nii.gz image?
Thanks for your response. Yes my index file has 1s for each volume. If the error is not related to the synb0 topup output (I thought it would be because of TopupFileIO:: msg=TopupFileReader::MovePar: Index i out of bound ), I willask the FSL team. Any suggestion is welcome though! Thanks again for your time.
For synb0 - we recommend QA in a few steps. First, look at b0_all.nii.gz. The first volume will be your distorted b0 image, the second will be the synthesized. Check that the synthesized image looks reasonable (i.e., b0 contrast, but T1 geometry, or undistorted). Second, check the b0_all_topup.nii.gz. This is what a traditional output of topup would look like, and the first volume will now be your undistorted b0 image (which should now match the second volume). You can additionally open the topup field coefficients, but they are in a different space, with arbitrary units so they are a bit unintuitive to QA. If the field coefficients and movement parameters exist, and the b0_all_topup looks reasonable, then we consider Synb0 successful. The error you got does indeed appear to be specific to EDDY. The first "warning" isn't a big issue and is probably because your mask is written as a 4D instead of 3D volume. The second error seems to not read topup output correctly. Try "--topup=$(pwd)/OUTPUTS/topup", you may just be pointing to the incorrect files. Hope that helps!
Thanks Kurt. I will check the files. I quickly re-ran my eddy command using And indeed, there was no more topup-related error... only errors with eddy. I copied the error below, for your information (and if someone experience a similar issue!). But will also double check with the FSL team, as it looks like an eddy-only error (specifically cuda-related?). Thanks again so much for your time.
eddy_cuda --imain=$(pwd)/INPUTS/dwi.nii.gz --mask=$(pwd)/INPUTS/brainmask.nii.gz --acqp=$(pwd)/INPUTS/acqparams.txt --index=$(pwd)/INPUTS/index.txt --bvecs=$(pwd)/INPUTS/dwi.bvec --bvals=$(pwd)/INPUTS/dwi.bval --topup=$(pwd)/OUTPUTS/topup --out=$(pwd)/eddy_output/eddy_unwarped_images
EDDY::: EddyCudaHelperFunctions::InitGpu: cudaGetDevice returned an error: cudaError_t = 35, cudaErrorName = cudaErrorInsufficientDriver, cudaErrorString = CUDA driver version is insufficient for CUDA runtime version
EDDY::: cuda/EddyCudaHelperFunctions.cu::: static void EDDY::EddyCudaHelperFunctions::InitGpu(bool): Exception thrown
EDDY::: cuda/EddyGpuUtils.cu::: static std::shared_ptr
Hi all,
I was able to get all the files needed for eddy, but when I attempted to run, I kept getting this error message:
This is my eddy line:
eddy_cuda9.1 --imain=${eddydir}/Neg.nii.gz --mask=${eddydir}/nodif_brain_mask.nii.gz --acqp=${eddydir}/acqparams.txt --index=${eddydir}/index.txt --bvecs=${eddydir}/Neg.bvec --bvals=${eddydir}/Neg.bval --topup=${eddydir}/b0_all_topup --repol --cnr_maps --residuals --mporder=6 --slspec=${scripts}/slspec_mco.txt --estimate_move_by_susceptibility --out=${eddydir}/eddy_corrected_data_synb0
My nodif_brain_mask.nii.gz was generated from bet of the b0.nii.gz image that I fed into Synb0. I am using the same acqparams.txt as the one that I fed into Synb0. Below is my acqparams.txt:
My original data were collected in the AP direction.
Any help would be appreciated! Thanks!