heudiconv icon indicating copy to clipboard operation
heudiconv copied to clipboard

Heudiconv: INFO: Need to process 0 study sessions

Open LexHayes opened this issue 4 years ago • 7 comments

Hi,

I'm running into an issue with HeuDiConv. I had already ran HeuDiConv on my data but need to rerun it. When I run the following command;

docker run --rm -it -v ~/Volumes/toshiba/DICOMS/2:/data:ro -v ~/Volumes/toshiba/BIDS:/output nipy/heudiconv:latest -d /data/{subject}/{session}/.dcm -s 2002 --ses 1 -f convertall -c none -o /output

I am getting this message INFO: Running heudiconv version 0.8.0 latest 0.8.0 INFO: Need to process 0 study sessions

I have allowed Docker access to the folders, I think it's because I've already ran HeuDiConv on the data already is this the case and if so how can I overcome it?

Many thanks Lexi

Summary

Platform details:

Choose one:

  • [ ] Local environment
  • [ ] Container
  • Heudiconv version:

LexHayes avatar Dec 08 '20 14:12 LexHayes

I think you are missing an asterisk (*) in front of .dcm. Try running:

docker run --rm -it -v ~/Volumes/toshiba/DICOMS/2:/data:ro -v ~/Volumes/toshiba/BIDS:/output nipy/heudiconv:latest -d /data/{subject}/{session}/*.dcm -s 2002 --ses 1 -f convertall -c none -o /output

pvelasco avatar Dec 08 '20 14:12 pvelasco

Hi,

Thanks for your quick response - I have just reran with the asterisk as suggested and am still receiving the same message unfortunately

LexHayes avatar Dec 08 '20 15:12 LexHayes

Can you please try to run the following?

docker run --rm -it -v ~/Volumes/toshiba/DICOMS/2:/data:ro -v ~/Volumes/toshiba/BIDS:/output --entrypoint /bin/bash nipy/heudiconv:latest

That will give you a prompt inside the docker container. Then, at the prompt, run:

ls -lh /data/2002/1/

pvelasco avatar Dec 08 '20 15:12 pvelasco

Sure, just tried to run this and got the following error:

heudiconv: error: unrecognized arguments: --entrypoint /bin/bash nipy/heudiconv:latest

LexHayes avatar Dec 08 '20 15:12 LexHayes

Did you enter the docker run command all in one line? The --entrypoint /bin/bash argument is for the docker run to interpret, not for heudiconv. I don't understand how the --entrypoint /bin/bash is being passed into the docker container (which runs heudiconv)

pvelasco avatar Dec 08 '20 15:12 pvelasco

Sorry my mistake!

I have just reran and it gets me to the prompt at which I have entered

ls -lh /data/2002/1/

and I get this error message

ls: cannot access '/data/2002/1/': No such file or directory

I've double and triple checked the file path and it is correct

LexHayes avatar Dec 08 '20 15:12 LexHayes

So it looks like you cannot access those files from within the docker container.

I don't know about your specific setup, but in my case it happened when I tried to add a volume from the host that was, in turn, mounted by the host from a different server. The solution was to pass the mounting point as the -v argument. E.g., if your host is mounting a folder called data at the mounting point /my_vols, and the path to your DICOM files, in the host, is /my_vols/data/DICOMS, and to the BIDS folder is /my_vols/data/BIDS/project1, then my call to heudiconv would be:

docker run --rm -it -v /my_vols/data:/data_in_container nipy/heudiconv:latest -d /data_in_container/DICOMS/{subject}/{session}/*.dcm -s 2002 --ses 1 -f convertall -c none -o /data_in_container/BIDS/project1

I don't know if this will solve your problem, but you can check...

pvelasco avatar Dec 08 '20 17:12 pvelasco