% % _______________________________________________ % by Marcelo G Mattar (10/21/2013) % mattar@sas.upenn.edu % dataset = 'MDS_Multi'; masksize = 800; load('~/Data/FaceSpace/ROIs/fusiform.mat') rh = logical(rh); lh = logical(lh); [sig_rh, M_rh, mr_parms_rh] = load_mgh(['~/Data/FaceSpace/group_glms/' dataset '/DriftMainEffect/rh.DriftMainEffect.glmdir/osgm/sig.mgh']); [sig_lh, M_lh, mr_parms_lh] = load_mgh(['~/Data/FaceSpace/group_glms/' dataset '/DriftMainEffect/lh.DriftMainEffect.glmdir/osgm/sig.mgh']); % Initialize mask vectors temp_rh = nan(size(sig_rh)); temp_lh = nan(size(sig_lh)); mainEffectMask_rh = nan(size(sig_rh)); mainEffectMask_lh = nan(size(sig_lh)); % Mask with the fusiform anatomical mask temp_rh(rh) = sig_rh(rh); temp_lh(lh) = sig_lh(lh); % Find the index of the top vertices temp_rh(isnan(temp_rh)) = -Inf; temp_lh(isnan(temp_lh)) = -Inf; [~,sorted_indices_rh] = sort(temp_rh,1,'descend'); [~,sorted_indices_lh] = sort(temp_lh,1,'descend'); % Create the masked vector mainEffectMask_rh(sorted_indices_rh(1:masksize)) = temp_rh(sorted_indices_rh(1:masksize)); mainEffectMask_lh(sorted_indices_lh(1:masksize)) = temp_lh(sorted_indices_lh(1:masksize)); % Create binary mask mask_rh = zeros(size(sig_rh)); mask_lh = zeros(size(sig_lh)); mask_rh(~isnan(mainEffectMask_rh)) = 1; mask_lh(~isnan(mainEffectMask_lh)) = 1; mask_rh = logical(mask_rh); mask_lh = logical(mask_lh); % Save output save_mgh(mainEffectMask_rh,['~/Data/FaceSpace/ROIs/maskedBetas_' dataset '_' num2str(masksize) '_rh.mgh'],M_rh,mr_parms_rh); save_mgh(mainEffectMask_lh,['~/Data/FaceSpace/ROIs/maskedBetas_' dataset '_' num2str(masksize) '_lh.mgh'],M_lh,mr_parms_lh); save_mgh(mask_rh,['~/Data/FaceSpace/ROIs/binaryMask_' dataset '_' num2str(masksize) '_rh.mgh'],M_rh,mr_parms_rh); save_mgh(mask_lh,['~/Data/FaceSpace/ROIs/binaryMask_' dataset '_' num2str(masksize) '_lh.mgh'],M_lh,mr_parms_lh);