Dear All
I’m getting the attached error with tck2connectome. I verified that registration is well done.
I’m dealing with a 1.5T, single-shell
Any idea?
best regards
Mike
Dear All
I’m getting the attached error with tck2connectome. I verified that registration is well done.
I’m dealing with a 1.5T, single-shell
Any idea?
best regards
Mike
Welcome Mike!
The “this may indicate a poor registration” warning may be a red herring. The earlier warning says that, from file sift_1M.csv
, the number of streamlines for which valid weights were read is zero; and as a consequence, connectome construction was ceased after having loaded zero streamlines from the track file.
I think what may have happened is some confusion about the nature of the SIFT vs. SIFT2 methods. With SIFT, one filters a tractogram to produce a tractogram with a reduced streamline count, and then operates on that reduced tractogram with equal contribution from all remaining streamlines. With SIFT2, one obtains a “weight” for each streamline, which must be operated on in parallel to the streamlines data.
In your case, you have two files, “tracks_10M.tck
” and “sift_1M.csv
”. This is not compatible with either method:
tcksift
command is a track file, not a text file, and you would provide that as input to tck2connectome
and not use the -tck_weights_in
command-line option;.tck
tractogram file and .csv
weights file to contain data for the same number of streamlines, which is contradicted by your file names containing “10M
” and “1M
” respectively.My best guess is that file “sift_1M.csv
” was generated by the tcksift
command and actually contains streamlines data, and so the “.csv
” file extension is misleading.
I can probably revise the command behaviour to give a more direct error message, but I also suspect that you’re using a slightly out-of-date installation, given that the message you received is not consistent with the current code.
Cheers
Rob
Thank you Rob
I’m using SIFT2. I’ve just switched to “tcksift2 -act 5tt_coreg.mif -out_mu sift_mu.txt -out_coeffs sift_coeffs.txt -nthreads 8 tracks_10^5.tck wm_norm.mif sift_10^5.csv” and then “tck2connectome -symmetric -zero_diagonal -scale_invnodevol -tck_weights_in sift_10^5.csv tracks_10^5.tck nodes_coreg.mif nodes_coreg.csv -out_assignment assignments_nodes_coreg.csv”,
but the outcome is the same as before: “Streamline weights file contains less entries than .tck file; only read 0 streamlines”.
Mike
tcksift2 -act 5tt_coreg.mif -out_mu sift_mu.txt -out_coeffs sift_coeffs.txt -nthreads 8 tracks_10^5.tck wm_norm.mif sift_10^5.csv
The file name “sift_10^5.csv
” is still slightly misleading, as those data are being generated by the SIFT2 method, not the SIFT method.
I would also verify that the presence of “^
” characters in your file names is not causing issues.
Beyond that, it needs to be determined whether that weights file genuinely does not contain any data, or whether the data are there but for whatever reason tck2connectome
is failing to import it correctly. This simply requires showing the contents of the start of the file; e.g.:
head sift_10^5.csv -c500
Rob