help
help > Global signal calculation
Sep 22, 2016 03:09 PM | Pravesh Parekh - National Institute of Mental Health and Neurosciences
Global signal calculation
Dear Dr. Alfonso/Conn Users,
Greetings!
Thank you for the many detailed discussions on global signal on other threads. Based on that, I wanted to confirm the method by which Conn calculates the global signal. I have written a brief method for the same below, wherein I am masking my functional data with 'mask.volume.brainmask.nii' file (Conn default), calculating the mean across all the voxels that are included in the mask for each functional volume, and at the end calculating PSC with respect to the mean global signal. Would this be the way Conn would calculate global signal (when including an explicit ROI for brainmask) or am I missing something? I have plotted both of them (params.ROIdata in the appropriate REX file and the global signal estimated from the lines below). They are mostly identical save for very slight differences at a few points. I know that these differences are not much and might be insignificant, still how do we explain the slight differences?
image_files_read = spm_vol(image_files);
num_volumes = length(image_files_read);
mask_file_read = spm_vol('mask.volume.brainmask.nii');
mask_file_volume = spm_read_vols(mask_file_read);
global_signal = zeros(num_volumes,1);
for vol_idx = 1:num_volumes
image_file_volume = spm_read_vols(image_files_read(vol_idx));
masked_volume = image_file_volume.*mask_file_volume;
global_signal(vol_idx,1) = mean(mean(mean(masked_volume)));
end
mean_global_signal = mean(global_signal);
% Calculate percent signal change with reference to the mean global signal
global_signal_psc = ((global_signal-mean_global_signal)/mean_global_signal)*100;
Thank you so much for your time and continued help and support!
Warm Regards
Pravesh
Greetings!
Thank you for the many detailed discussions on global signal on other threads. Based on that, I wanted to confirm the method by which Conn calculates the global signal. I have written a brief method for the same below, wherein I am masking my functional data with 'mask.volume.brainmask.nii' file (Conn default), calculating the mean across all the voxels that are included in the mask for each functional volume, and at the end calculating PSC with respect to the mean global signal. Would this be the way Conn would calculate global signal (when including an explicit ROI for brainmask) or am I missing something? I have plotted both of them (params.ROIdata in the appropriate REX file and the global signal estimated from the lines below). They are mostly identical save for very slight differences at a few points. I know that these differences are not much and might be insignificant, still how do we explain the slight differences?
image_files_read = spm_vol(image_files);
num_volumes = length(image_files_read);
mask_file_read = spm_vol('mask.volume.brainmask.nii');
mask_file_volume = spm_read_vols(mask_file_read);
global_signal = zeros(num_volumes,1);
for vol_idx = 1:num_volumes
image_file_volume = spm_read_vols(image_files_read(vol_idx));
masked_volume = image_file_volume.*mask_file_volume;
global_signal(vol_idx,1) = mean(mean(mean(masked_volume)));
end
mean_global_signal = mean(global_signal);
% Calculate percent signal change with reference to the mean global signal
global_signal_psc = ((global_signal-mean_global_signal)/mean_global_signal)*100;
Thank you so much for your time and continued help and support!
Warm Regards
Pravesh
Threaded View
Title | Author | Date |
---|---|---|
Pravesh Parekh | Sep 22, 2016 | |
Sascha Froelich | Oct 5, 2016 | |
Pravesh Parekh | Oct 5, 2016 | |
Alfonso Nieto-Castanon | Sep 28, 2016 | |
Alfonso Nieto-Castanon | Sep 28, 2016 | |
Pravesh Parekh | Sep 28, 2016 | |
Pravesh Parekh | Sep 28, 2016 | |
Alfonso Nieto-Castanon | Sep 28, 2016 | |
Pravesh Parekh | Sep 28, 2016 | |
Sascha Froelich | Sep 26, 2016 | |
Pravesh Parekh | Sep 26, 2016 | |
Sascha Froelich | Sep 23, 2016 | |
Pravesh Parekh | Sep 23, 2016 | |
Sascha Froelich | Sep 23, 2016 | |
Pravesh Parekh | Sep 26, 2016 | |
Sascha Froelich | Sep 26, 2016 | |
Pravesh Parekh | Sep 26, 2016 | |