-
Notifications
You must be signed in to change notification settings - Fork 13
Description
Description
Given a typical GE ASLContext scenario of: deltam, m0scan , this script incorrectly handles the parmsIndex variable, possibly due to the naming of the files "ASL4D_6_00001.json" (deltam) and "ASL4D_1_e00000_6_.json" (m0scan) having a matching 6 designation.
This block seems to be responsible:
% First find the first matching seriesNumber
parmsIndex = length(instanceNumberList);
for iInst = length(instanceNumberList):-1:1
if (currentSeriesNumber == seriesNumberList(iInst))
parmsIndex = iInst;
end
endparmsIndex is intially set to 2 due to the number of files. And since the currentSeriesNumber is going to be 6 for both files, the parmsIndex does not change. This leads to ASLContext being overwritten by the m0scan JSON. The resulting ASLContext becomes "m0scan, m0scan", and snowballs into other errors down the line during processing.
This seems to be present in both 1.9.0 and 1.10.0beta
Fixed a bug in which xASL_bids_Dicom2JSON did not correctly increment the parameter index due to DCM2NII outputting the same series number for each ASL JSON.
xASL_bids_Dicom2JSON_Issue.zip
Tasks
- Fix handling of
parmsIndexin functionxASL_bids_Dicom2JSON.m
How to test
- See attached json files for testing
parmsIndexshould correctly change between 1 and 2.
Release notes
Duplicate. Fixed in #435.