Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Phase difference field maps fail if BOLD is missing PhaseEncodingDirection metadata #7

Closed
effigies opened this issue Oct 3, 2018 · 1 comment · Fixed by #55
Closed
Milestone

Comments

@effigies
Copy link
Member

effigies commented Oct 3, 2018

A better approach would be to check for PE direction when needed, and, if missing, print a warning and disable fieldmaps.

@effigies
Copy link
Member Author

effigies commented Oct 3, 2018

Running on DS000117, with this sidecar:

{
    "RepetitionTime": 2, 
    "TaskName": "facerecognition",
    "EchoTime": 0.03,
    "FlipAngle": 78,
    "PulseSequenceType": "EPI",
    "Manufacturer": "Siemens",
    "ManufacturersModelName": "TIM TRIO",
    "MagneticFieldStrength": 3,
    "NumberOfVolumesDiscardedByScanner": 3,
    "NumberOfVolumesDiscardedByuser": 2
}

Traceback:

Traceback (most recent call last):                                                                                                      
  File "/usr/local/miniconda/bin/fmriprep", line 11, in <module>                                                                        
    sys.exit(main())                                                                                                                    
  File "/usr/local/miniconda/lib/python3.6/site-packages/fmriprep/cli/run.py", line 343, in main
    fmriprep_wf.run(**plugin_settings)                                                                                                  
  File "/usr/local/miniconda/lib/python3.6/site-packages/nipype/pipeline/engine/workflows.py", line 585, in run                         
    execgraph = generate_expanded_graph(deepcopy(flatgraph))                                                                            
  File "/usr/local/miniconda/lib/python3.6/site-packages/nipype/pipeline/engine/utils.py", line 995, in generate_expanded_graph         
    graph_in = _remove_nonjoin_identity_nodes(graph_in, keep_iterables=True)                                                            
  File "/usr/local/miniconda/lib/python3.6/site-packages/nipype/pipeline/engine/utils.py", line 880, in _remove_nonjoin_identity_nodes  
    _remove_identity_node(graph, node)
  File "/usr/local/miniconda/lib/python3.6/site-packages/nipype/pipeline/engine/utils.py", line 905, in _remove_identity_node           
    portinputs)                                                                                                                         
  File "/usr/local/miniconda/lib/python3.6/site-packages/nipype/pipeline/engine/utils.py", line 982, in _propagate_internal_output      
    value = evaluate_connect_function(src[1], src[2], value)                                                                            
  File "/usr/local/miniconda/lib/python3.6/site-packages/nipype/pipeline/engine/utils.py", line 736, in evaluate_connect_function       
    output_value = func(first_arg, *list(args))                                                                                         
  File "<string>", line 2, in _get_pedir_fugue                                                                                          
KeyError: 'PhaseEncodingDirection'

@oesteban oesteban transferred this issue from nipreps/fmriprep Jul 9, 2019
@oesteban oesteban added this to the 1.0.0 milestone Aug 7, 2019
oesteban added a commit to oesteban/sdcflows that referenced this issue Nov 20, 2019
oesteban added a commit to oesteban/sdcflows that referenced this issue Nov 20, 2019
oesteban added a commit to oesteban/sdcflows that referenced this issue Nov 20, 2019
oesteban added a commit to oesteban/sdcflows that referenced this issue Nov 20, 2019
This PR:
  - [x] Refines the work in nipreps#53 addressing nipreps#40.
  - [x] Adds tests to cover the orchestration workflow.
  - [x] Fixes nipreps#7 (added regression tests for this bug).
  - [x] Updates the interface of phdiff workflows: removes the metadata
        input, which was defined for this workflow solely.
  - [x] Makes it trivial to extend the phdiff workflow to phase1/phase2
        workflows (nipreps#15).
oesteban added a commit to oesteban/sdcflows that referenced this issue Nov 20, 2019
This PR:
  - [x] Refines the work in nipreps#53 addressing nipreps#40.
  - [x] Adds tests to cover the orchestration workflow.
  - [x] Fixes nipreps#7 (added regression tests for this bug).
  - [x] Updates the interface of phdiff workflows: removes the metadata
        input, which was defined for this workflow solely.
  - [x] Makes it trivial to extend the phdiff workflow to phase1/phase2
        workflows (nipreps#15).
oesteban added a commit that referenced this issue Nov 23, 2019
This PR:
  - [x] Refines the work in #53 addressing #40.
  - [x] Adds tests to cover the orchestration workflow.
  - [x] Fixes #7 (added regression tests for this bug).
  - [x] Updates the interface of phdiff workflows: removes the metadata
        input, which was defined for this workflow solely.
  - [x] Makes it trivial to extend the phdiff workflow to phase1/phase2
        workflows (#15).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants