Eddy_indices.txt

Der Mrtrix experts,

I am testing dwifslpreproc and I have a few questions.
My data is a forward-reverse multishell dwi sequence with 209 volumes, including 197 gradients across 3 b values (750; 1000, 2500) and 12 interleaved b0s.
Here is the command that i used.

/usr/local/software/miniconda/bin/dwifslpreproc 20180518.1003_s1_418_denoise.mif 20180518.1003_s1_418_denoise_prep.mif -rpe_all -pe_dir pa -eddyqc_all eddyqc -eddy_slspec slspec.txt -fslgrad 20180518.1003_s1_418.bvec 20180518.1003_s1_418.bval -readout_time 0.085 -eddy_options "--slm=linear --mporder=16 --repol --fep  --data_is_shelled "

and this is what the generated eddy_indices.txt looks like:

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

this is wrong, given that after concatenating the 2 sequences I should have 24 b0s overall.

cat bvals
0 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 0 750 750 750 750 750 750 750 750 750 750 750 750 750 0 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 0 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 0 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 0 1000 1000 1000 1000 1000 1000 1000 1000 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500 0 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 750 0 750 750 750 750 750 750 750 750 750 750 750 750 750 0 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 0 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 0 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 0 1000 1000 1000 1000 1000 1000 1000 1000 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 2500 0 2500 2500 2500 2500 2500

Any idea of what I am doing wrong?

Thanks,
Amelia

Nothing, as far as I can tell: there are 24 b0s in your bvals, it’s just that they’re not clustered at the start, but interspersed throughout your acquisition (which is a good thing, in my opinion).

A quick way to verify:

$ cat bvals | xargs -n 1 | sort -n | uniq -c
     24 0
     64 750
    130 1000
    200 2500

Yes, this is exactly what I have, but the index.txt file generated by dwifslpreproc (eddy_indices.txt; see former post) looks different from what I was expecting:

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 12 12 12 12 12 12 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 13 14 14 14 14 14 14 14 14 14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 17 18 18 18 18 18 18 18 18 18 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 24 24 24 24 24 24

I wonder if I did something wrong with the slspec.txt file?
Here is what I came up with for our sequence, which is a MB=4, interleaved:

0 54 108 162
2 56 110 164
4 58 112 166
6 60 114 168
8 62 116 170
10 64 118 172
12 66 120 174
14 68 122 176
16 70 124 178
18 72 126 180
20 74 128 182
22 76 130 184
24 78 132 186
26 80 134 188
28 82 136 190
30 84 138 192
32 86 140 194
34 88 142 196
36 90 144 198
38 92 146 200
40 94 148 202
42 96 150 204
44 98 152 206
46 100 154 208
48 102 156 163
50 104 158 165
52 106 160 167
1 55 109 169
3 57 111 171
5 59 113 173
7 61 115 175
9 63 117 177
11 65 119 179
13 67 121 181
15 69 123 183
17 71 125 185
19 73 127 187
21 75 129 189
23 77 131 191
25 79 133 193
27 81 135 195
29 83 137 197
31 85 139 199
33 87 141 201
35 89 143 203
37 91 145 205
39 93 147 207
41 95 149
43 97 151
45 99 153
47 101 155
49 103 157
51 105 159
53 107 161

Admittedly, I am familiar with topup and eddy, but I never used the slspec file. Anyway, eddy_cuda didn’t work. Not sure if this has anything to do with the eddy_indices.txt ‘issue’ noted above, but here is the eddy_cuda

Reading images
Filling empty planes
Performing volume-to-volume registration
Running Register
…Allocated GPU # 0…
Loading prediction maker
Evaluating prediction maker model
Calculating parameter updates
Iter: 0, Total mss = 243.5
Loading prediction maker
Evaluating prediction maker model
Calculating parameter updates
Iter: 1, Total mss = 195.192
Loading prediction maker
Evaluating prediction maker model
Calculating parameter updates
Iter: 2, Total mss = 165.76
Loading prediction maker
Evaluating prediction maker model
Calculating parameter updates
Iter: 3, Total mss = 152.18
Loading prediction maker
Evaluating prediction maker model
Calculating parameter updates
Iter: 4, Total mss = 145.888
Setting scan 392 as b0 shape-reference.
Running sm.ApplyB0LocationReference
Running sm.PolateB0MovPar
Running Register
Loading prediction maker
Evaluating prediction maker model
Checking for outliers
Segmentation violation, Address not mapped, Offending address = 0xe6b00000e70
eddy_cuda9.1 EDDY::ReplacementManager::Update(EDDY::DiffStatsVector const&) [0x64c127]
eddy_cuda9.1 EDDY::EddyInternalGpuUtils::detect_outliers(EDDY::EddyCommandLineOptions const&, EDDY::ScanType, std::shared_ptrEDDY::DWIPredictionMaker, NEWIMAGE::volume const&, EDDY::ECScanManager const&, EDDY::ReplacementManager&, EDDY::DiffStatsVector&) [0x6913a7]
eddy_cuda9.1 EDDY::EddyGpuUtils::DetectOutliers(EDDY::EddyCommandLineOptions const&, EDDY::ScanType, std::shared_ptrEDDY::DWIPredictionMaker, NEWIMAGE::volume const&, EDDY::ECScanManager const&, EDDY::ReplacementManager&) [0x67f154]
eddy_cuda9.1() [0x55048a]
eddy_cuda9.1 EDDY::DoVolumeToVolumeRegistration(EDDY::EddyCommandLineOptions const&, EDDY::ECScanManager&) [0x5513a7]
eddy_cuda9.1 main [0x525844]
/lib/x86_64-linux-gnu/libc.so.6 __libc_start_main [0x7f3e5cee6c87]
eddy_cuda9.1() [0x549b84]

Also, topup did not work:

Any help would be greatly appreciated.
Thanks!! Amelia