1-
2-
3-
4- calc_fwhm <- function (final_path , final_mask_path , est_fwhm_path , hemi , eres , mask = NULL , target = " fsaverage" , verbose = FALSE ) {
5- cmdStr <- paste(" mris_fwhm" , " --i" , eres , " --hemi" , hemi , " --subject" , target , " --prune" , " --cortex" , " --dat" , est_fwhm_path , " --out-mask" , final_mask_path )
6- if (! is.null(mask )) paste(cmdStr , " --mask" , mask )
7- message2(verbose = verbose , cmdStr )
8- system(cmdStr , ignore.stdout = ! verbose )
9- fwhm <- read.table(est_fwhm_path )
10- fwhm <- round(fwhm )
11- return (fwhm )
12- }
13-
14- runMriSurfCluster <- function (final_path , dir_fshome , hemi , pval , fwhm , mask_path = NULL , cwpThr = 0.025 , mczThr = NULL , csdSign = " abs" , verbose = FALSE , stack , stack_name ) {
15-
16- if (is.null(mczThr )){
17- mczThr = paste0(" th" , as.character(30 ))
18- }
19- else {
20- mczThr = paste0(" th" , as.character(mczThr ))
21- }
22-
23- oBaseName <- paste0(final_path , " .stack" , stack , " .cache." , mczThr , ' .' , csdSign , " .sig" )
24- if (fwhm < 10 ) fwhm <- paste0(' 0' , fwhm )
25- csd <- file.path(dir_fshome , " average/mult-comp-cor/fsaverage" , hemi , paste0(" cortex/fwhm" , fwhm ), csdSign , mczThr , " mc-z.csd" )
26- cmdStr <- paste(" mri_surfcluster" ,
27- " --in" , pval ,
28- " --csd" , csd ,
29- " --cwsig" , paste0(oBaseName , " .cluster.mgh" ),
30- " --vwsig" , paste0(oBaseName , " .voxel.mgh" ),
31- " --sum" , paste0(oBaseName , " .cluster.summary" ),
32- " --ocn" , paste0(oBaseName , " .ocn.mgh" ),
33- " --oannot" , paste0(oBaseName , " .ocn.annot" ),
34- " --annot" , " aparc" ,
35- " --csdpdf" , paste0(oBaseName , " .pdf.dat" ),
36- " --cwpvalthresh" , cwpThr ,
37- " --o" , paste0(oBaseName , " .masked.mgh" ),
38- " --no-fixmni" ,
39- " --surf" , " white" )
40- cmdStr <- if (! is.null(mask_path )) paste(cmdStr , " --mask" , mask_path ) else paste(cmdStr , " --cortex" )
41- system(cmdStr , ignore.stdout = ! verbose )
42- NULL
1+
2+
3+
4+ calc_fwhm <- function (final_path , final_mask_path , est_fwhm_path , hemi , eres , mask = NULL , target = " fsaverage" , verbose = FALSE ) {
5+ cmdStr <- paste(" mris_fwhm" , " --i" , eres , " --hemi" , hemi , " --subject" , target , " --prune" , " --cortex" , " --dat" , est_fwhm_path , " --out-mask" , final_mask_path )
6+ if (! is.null(mask )) paste(cmdStr , " --mask" , mask )
7+ message2(verbose = verbose , cmdStr )
8+ system(cmdStr , ignore.stdout = ! verbose )
9+ fwhm <- read.table(est_fwhm_path )
10+ fwhm <- round(fwhm )
11+ return (fwhm )
12+ }
13+
14+ runMriSurfCluster <- function (final_path , dir_fshome , hemi , pval , fwhm , mask_path = NULL , cwp_thr = 0.025 , mcz_thr = 30 , csd_sign = " abs" , verbose = FALSE , stack , stack_name ) {
15+
16+ mcz_thr2 <- paste0(" th" , mcz_thr )
17+
18+ o_base_name <- paste0(final_path , " .stack" , stack , " .cache." , mcz_thr2 , ' .' , csd_sign , " .sig" )
19+ if (fwhm < 10 ) fwhm <- paste0(" 0" , fwhm )
20+ csd <- file.path(dir_fshome , " average/mult-comp-cor/fsaverage" , hemi , paste0(" cortex/fwhm" , fwhm ), csd_sign , mcz_thr2 , " mc-z.csd" )
21+ cmd_str <- paste(" mri_surfcluster" ,
22+ " --in" , pval ,
23+ " --csd" , csd ,
24+ " --cwsig" , paste0(o_base_name , " .cluster.mgh" ),
25+ " --vwsig" , paste0(o_base_name , " .voxel.mgh" ),
26+ " --sum" , paste0(o_base_name , " .cluster.summary" ),
27+ " --ocn" , paste0(o_base_name , " .ocn.mgh" ),
28+ " --oannot" , paste0(o_base_name , " .ocn.annot" ),
29+ " --annot" , " aparc" ,
30+ " --csdpdf" , paste0(o_base_name , " .pdf.dat" ),
31+ " --cwpvalthresh" , cwp_thr ,
32+ " --o" , paste0(o_base_name , " .masked.mgh" ),
33+ " --no-fixmni" ,
34+ " --surf" , " white" )
35+ cmd_str <- if (! is.null(mask_path )) paste(cmd_str , " --mask" , mask_path ) else paste(cmd_str , " --cortex" )
36+ system(cmd_str , ignore.stdout = ! verbose )
37+ NULL
4338}
0 commit comments