1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | %--brain mask with the brain tissue mask_name = 'C:\Users\Administrator\Desktop\workspace\preprocessed\masks\within_brain_mask.nii' ; M = load_untouch_nii( mask_name ); % load mask NIFTI mask = double (M.img> 0 ); % get 3d v %--brain functional 4d data data_4d = 'C:\Users\Administrator\Desktop\workspace\preprocessed\4d\func_3d.nii' ; % data_4d = 'C:\Users\Administrator\Desktop\phycaa_workspace\phycaa_plus_2104_03_27\_PHYCAA_step1+2.nii' ; V = load_untouch_nii( data_4d ); %--transform 4d array to 2d array, using brain_mask within_brain_voxels = nifti_to_mat(V,M); nt_matrix = within_brain_voxels; [V_c S_c temp] = svd( nt_matrix' * nt_matrix ); % PC-space representation Q_c = V_c * sqrt( S_c ); offSet= 1 ; pcs= 4 ; % estimate temporal autocorrelation maximized "sources" Q1 = Q_c( 1 :(end-offSet) , 1 :pcs ); % un-offset Q2 = Q_c( (offSet+ 1 ):end , 1 :pcs ); % offsetted timeseries % canonical correlations on time-lagged data [A,B,R,U,V,stats] = canoncorr(Q1,Q2); % getting stable "average" autocorrelated timeseries a=[U( 1 ,:)]; b=[U( 2 :end,:) + V( 1 :end- 1 ,:)./ 2 ]; c=[V(end,:)]; tset = [a;b;c]; |
本文转自二郎三郎博客园博客,原文链接:http://www.cnblogs.com/haore147/p/3797817.html,如需转载请自行联系原作者