quote:
Hi,
I am new to functional connectivity, so forgive the basic problems!
I am trying to use PLS for fMRI data, using the gui.
In the Edit Runs window, I manage to load my 4D NIFTI files, and they are found ok and recognized as having the correct number of scans.
However, when I try to create the datamat, I get
ERROR: Cannot access the image file: fmcsm5_run1.nii
Any ideas?
Thanks in advance,
Cherif
I just tested with your image data, and I realized that this error message also indicated that the image data you provided is not supported by PLSgui program.
PLSgui program requires that the image data to be properly pre-processed: including properly aligned, registered, and smoothed. In addition, PLSgui can only support image file with any of 48 orthogonal orientations starting from Version 4.0509151:
Version 4.0509151 September 15, 2005
1. PLSgui is now support NIFTI data format. This includes
file extension support for both single file (.nii) and
dual file (.img/.hdr); temporal dimension support (4th
dimension in the data); and data value scaling support
(Y = scl_slope * X + scl_inter). It also support some
of the sform or qform affine transform. This includes
any scaling (to get voxel_size), any translation (to get
originator), any flipping, and a few Rotation (only N*90
degrees, where N must be integer).
If it is slightly off the orthogonal orientation, the program will also accept it starting from Version 4.0511071:
Version 4.0511071 November 7, 2005
1. Images whose cardinal planes are slightly off
Cartesian coordinates will also be loaded. However,
this approximation is based on the following
assumption: In affine matrix, any value (absolute)
below a tenth of the third largest value (absolute)
can be ignored and replaced with 0. In this case,
fields 'old_affine' & 'new_affine' will be added
into hdr.hist. If you can not accept the above
assumption, simply discard any nii structure with
fields 'old_affine' & 'new_affine'.
However, I found that your image data is a way skewed:
for affine matrix R = [
3.1250 0 0
0 3.0509 1.2986
0 0.6764 5.8578
],
By default, the program will not ignore elements 0.6764 and 1.2986.
Since SPM5 will convert all different image data into its own interpolated template. So it can display your image correctly like this:
However, PLSgui is based on voxel calculation. If you ignore the elements 0.6764 and 1.2986 above, it will display your image incorrectly like this:
Therefore, my suggestion will be:
- Find a 3D interpolate program to process your image data frame by frame. Basically, the affine matrix in your image header should be implemented in the data itself;
- If you cannot find any program to process your data, and you can tolerate the difference, then you simply change R( find( abs(R) < min(R_sort(end-2:end))/10 ) ) in line 259 of program xform_nii.m to R( find( abs(R) < min(R_sort(end-2:end))/1.0 ) ). In this case, data will be processed based on the incorrect image above.