Doxygen Source Code Documentation
3dIntracranial.c File Reference
#include "mrilib.h"#include "Intracranial.h"#include "estpdf3.c"#include "Intracranial.c"Go to the source code of this file.
Defines | |
| #define | PROGRAM_NAME "3dIntracranial" |
| #define | PROGRAM_AUTHOR "B. D. Ward" |
| #define | PROGRAM_INITIAL "04 June 1999" |
| #define | PROGRAM_LATEST "21 July 2005" |
| #define | USE_QUIET |
Functions | |
| void | SI_error (char *message) |
| void | display_help_menu () |
| void | get_options (int argc, char **argv) |
| void | check_one_output_file (char *filename) |
| void | initialize_program (int argc, char **argv) |
| int | auto_initialize (short **cv) |
| void | target_into_dataset (short *cv) |
| void | write_afni_data (short *cv) |
| void | SEGMENT_auto () |
| int | main (int argc, char **argv) |
Variables | |
| char * | anat_filename = NULL |
| char * | prefix_filename = NULL |
| Boolean | write_mask = FALSE |
| Boolean | quiet = FALSE |
| char * | commandline = NULL |
| Boolean | nosmooth = FALSE |
Define Documentation
|
|
Definition at line 44 of file 3dIntracranial.c. Referenced by main(). |
|
|
Definition at line 45 of file 3dIntracranial.c. Referenced by main(). |
|
|
Definition at line 46 of file 3dIntracranial.c. Referenced by main(). |
|
|
Definition at line 43 of file 3dIntracranial.c. Referenced by get_options(), initialize_program(), main(), and SI_error(). |
|
|
Definition at line 63 of file 3dIntracranial.c. |
Function Documentation
|
|
Definition at line 469 of file 3dIntracranial.c. References DSET_NX, DSET_NY, DSET_NZ, malloc, MTEST, and nz. Referenced by SEGMENT_auto().
00471 {
00472 int nx, ny, nz, nxy, nxyz, ixyz; /* voxel counters */
00473
00474
00475 /*----- Initialize local variables -----*/
00476 nx = DSET_NX(anat); ny = DSET_NY(anat); nz = DSET_NZ(anat);
00477 nxy = nx*ny; nxyz = nxy*nz;
00478
00479
00480 /*----- Initialize voxel classification indicators -----*/
00481 *cv = (short *) malloc (nxyz * sizeof(short));
00482 MTEST (*cv);
00483 for (ixyz = 0; ixyz < nxyz; ixyz++)
00484 (*cv)[ixyz] = 0;
00485
00486
00487 /*----- Initialize random number generator -----*/
00488 srand48 (1234567);
00489
00490
00491 return (1);
00492 }
|
|
|
RWCox [05 Dec 2002] If input is a byte dataset, make a short copy of it. * Definition at line 347 of file 3dIntracranial.c.
00351 {
00352 char message[MAX_STRING_LENGTH]; /* error message */
00353 THD_3dim_dataset * new_dset=NULL; /* output afni data set pointer */
00354 int ierror; /* number of errors in editing data */
00355
00356
00357 /*----- make an empty copy of input dataset -----*/
00358 new_dset = EDIT_empty_copy ( anat );
00359
00360
00361 ierror = EDIT_dset_items( new_dset ,
00362 ADN_prefix , filename ,
00363 ADN_label1 , filename ,
00364 ADN_self_name , filename ,
00365 ADN_none ) ;
00366
00367 if( ierror > 0 )
00368 {
00369 sprintf (message,
00370 "*** %d errors in attempting to create output dataset!\n",
00371 ierror);
00372 SI_error (message);
00373 }
00374
00375 if( THD_is_file(new_dset->dblk->diskptr->header_name) )
00376 {
00377 sprintf (message,
00378 "Output dataset file %s already exists"
00379 "--cannot continue!\a\n",
00380 new_dset->dblk->diskptr->header_name);
00381 SI_error (message);
00382 }
00383
00384 /*----- deallocate memory -----*/
00385 THD_delete_3dim_dataset( new_dset , False ) ; new_dset = NULL ;
00386
00387 }
|
|
|
Definition at line 100 of file 3dIntracranial.c.
00101 {
00102 printf
00103 (
00104 "3dIntracranial - performs automatic segmentation of intracranial region.\n"
00105 " \n"
00106 " This program will strip the scalp and other non-brain tissue from a \n"
00107 " high-resolution T1 weighted anatomical dataset. \n"
00108 " \n"
00109 "----------------------------------------------------------------------- \n"
00110 " \n"
00111 "Usage: \n"
00112 "----- \n"
00113 " \n"
00114 "3dIntracranial \n"
00115 " -anat filename => Filename of anat dataset to be segmented \n"
00116 " \n"
00117 " [-min_val a] => Minimum voxel intensity limit \n"
00118 " Default: Internal PDF estimate for lower bound \n"
00119 " \n"
00120 " [-max_val b] => Maximum voxel intensity limit \n"
00121 " Default: Internal PDF estimate for upper bound \n"
00122 " \n"
00123 " [-min_conn m] => Minimum voxel connectivity to enter \n"
00124 " Default: m=4 \n"
00125 " \n"
00126 " [-max_conn n] => Maximum voxel connectivity to leave \n"
00127 " Default: n=2 \n"
00128 " \n"
00129 " [-nosmooth] => Suppress spatial smoothing of segmentation mask \n"
00130 " \n"
00131 " [-mask] => Generate functional image mask (complement) \n"
00132 " Default: Generate anatomical image \n"
00133 " \n"
00134 " [-quiet] => Suppress output to screen \n"
00135 " \n"
00136 " -prefix pname => Prefix name for file to contain segmented image \n"
00137 " \n"
00138 " ** NOTE **: The newer program 3dSkullStrip will probably give \n"
00139 " better segmentation results than 3dIntracranial! \n"
00140
00141 "----------------------------------------------------------------------- \n"
00142 " \n"
00143 "Examples: \n"
00144 "-------- \n"
00145 " \n"
00146 " 3dIntracranial -anat elvis+orig -prefix elvis_strip \n"
00147 " \n"
00148 " 3dIntracranial -min_val 30 -max_val 350 -anat elvis+orig -prefix strip\n"
00149 " \n"
00150 " 3dIntracranial -nosmooth -quiet -anat elvis+orig -prefix elvis_strip \n"
00151 " \n"
00152 "----------------------------------------------------------------------- \n"
00153 );
00154
00155 exit(0);
00156 }
|
|
||||||||||||
|
Definition at line 165 of file 3dIntracranial.c. References AFNI_logger(), anat_filename, argc, display_help_menu(), DSET_ARRAY, DSET_BRICK_TYPE, DSET_delete, DSET_NVOX, EDIT_empty_copy(), EDIT_substitute_brick(), ISVALID_3DIM_DATASET, malloc, MTEST, nosmooth, prefix_filename, PROGRAM_NAME, quiet, SI_error(), THD_load_datablock(), THD_open_dataset(), and write_mask.
00170 {
00171 int nopt = 1; /* input option argument counter */
00172 int ival; /* integer input */
00173 float fval; /* float input */
00174 char message[MAX_STRING_LENGTH]; /* error message */
00175
00176
00177 /*----- does user request help menu? -----*/
00178 if (argc < 2 || strncmp(argv[1], "-help", 5) == 0) display_help_menu();
00179
00180
00181 /*----- add to program log -----*/
00182 AFNI_logger (PROGRAM_NAME,argc,argv);
00183
00184
00185 /*----- main loop over input options -----*/
00186 while (nopt < argc )
00187 {
00188
00189 /*----- -anat filename -----*/
00190 if (strncmp(argv[nopt], "-anat", 5) == 0)
00191 {
00192 nopt++;
00193 if (nopt >= argc) SI_error ("need argument after -anat ");
00194 anat_filename = malloc (sizeof(char) * MAX_STRING_LENGTH);
00195 MTEST (anat_filename);
00196 strcpy (anat_filename, argv[nopt]);
00197
00198 anat = THD_open_dataset (anat_filename);
00199 if (!ISVALID_3DIM_DATASET (anat))
00200 {
00201 sprintf (message, "Can't open dataset: %s\n", anat_filename);
00202 SI_error (message);
00203 }
00204 THD_load_datablock (anat->dblk);
00205 if (DSET_ARRAY(anat,0) == NULL)
00206 {
00207 sprintf (message, "Can't access data: %s\n", anat_filename);
00208 SI_error (message);
00209 }
00210
00211 /** RWCox [05 Dec 2002]
00212 If input is a byte dataset, make a short copy of it. **/
00213
00214 if( DSET_BRICK_TYPE(anat,0) == MRI_byte ){
00215 THD_3dim_dataset *qset ;
00216 register byte *bar ; register short *sar ;
00217 register int ii,nvox ;
00218 fprintf(stderr,"++ WARNING: converting input dataset from byte to short\n") ;
00219 qset = EDIT_empty_copy(anat) ;
00220 nvox = DSET_NVOX(anat) ;
00221 bar = (byte *) DSET_ARRAY(anat,0) ;
00222 sar = (short *)malloc(sizeof(short)*nvox) ;
00223 for( ii=0 ; ii < nvox ; ii++ ) sar[ii] = (short) bar[ii] ;
00224 EDIT_substitute_brick( qset , 0 , MRI_short , sar ) ;
00225 DSET_delete(anat) ; anat = qset ;
00226 }
00227
00228 nopt++;
00229 continue;
00230 }
00231
00232
00233 /*----- -min_val a -----*/
00234 if (strncmp(argv[nopt], "-min_val", 8) == 0)
00235 {
00236 nopt++;
00237 if (nopt >= argc) SI_error ("need argument after -min_val ");
00238 sscanf (argv[nopt], "%f", &fval);
00239 if (fval < 0.0)
00240 SI_error ("illegal argument after -min_val ");
00241 min_val_float = fval;
00242 min_val_int = 0;
00243 nopt++;
00244 continue;
00245 }
00246
00247
00248 /*----- -max_val b -----*/
00249 if (strncmp(argv[nopt], "-max_val", 8) == 0)
00250 {
00251 nopt++;
00252 if (nopt >= argc) SI_error ("need argument after -max_val ");
00253 sscanf (argv[nopt], "%f", &fval);
00254 if (fval < 0.0)
00255 SI_error ("illegal argument after -max_val ");
00256 max_val_float = fval;
00257 max_val_int = 0;
00258 nopt++;
00259 continue;
00260 }
00261
00262
00263 /*----- -min_conn m -----*/
00264 if (strncmp(argv[nopt], "-min_conn", 9) == 0)
00265 {
00266 nopt++;
00267 if (nopt >= argc) SI_error ("need argument after -min_conn ");
00268 sscanf (argv[nopt], "%d", &ival);
00269 if ((ival < 1) || (ival > 7))
00270 SI_error ("illegal argument after -min_conn ");
00271 min_conn_int = ival;
00272 nopt++;
00273 continue;
00274 }
00275
00276
00277 /*----- -max_conn n -----*/
00278 if (strncmp(argv[nopt], "-max_conn", 9) == 0)
00279 {
00280 nopt++;
00281 if (nopt >= argc) SI_error ("need argument after -max_conn ");
00282 sscanf (argv[nopt], "%d", &ival);
00283 if ((ival < -1) || (ival > 5))
00284 SI_error ("illegal argument after -max_conn ");
00285 max_conn_int = ival;
00286 nopt++;
00287 continue;
00288 }
00289
00290
00291 /*----- -nosmooth -----*/
00292 if (strcmp(argv[nopt], "-nosmooth") == 0)
00293 {
00294 nosmooth = TRUE;
00295 nopt++;
00296 continue;
00297 }
00298
00299
00300 /*----- -mask -----*/
00301 if (strncmp(argv[nopt], "-mask", 5) == 0)
00302 {
00303 write_mask = TRUE;
00304 nopt++;
00305 continue;
00306 }
00307
00308
00309 /*----- -quiet -----*/
00310 if (strncmp(argv[nopt], "-quiet", 6) == 0)
00311 {
00312 quiet = TRUE;
00313 nopt++;
00314 continue;
00315 }
00316
00317
00318 /*----- -prefix prefixname -----*/
00319 if (strncmp(argv[nopt], "-prefix", 7) == 0)
00320 {
00321 nopt++;
00322 if (nopt >= argc) SI_error ("need argument after -prefix ");
00323 prefix_filename = malloc (sizeof(char) * MAX_STRING_LENGTH);
00324 MTEST (prefix_filename);
00325 strcpy (prefix_filename, argv[nopt]);
00326 nopt++;
00327 continue;
00328 }
00329
00330
00331 /*----- unknown command -----*/
00332 sprintf(message,"Unrecognized command line option: %s\n", argv[nopt]);
00333 SI_error (message);
00334
00335 }
00336
00337
00338 }
|
|
||||||||||||
|
Definition at line 396 of file 3dIntracranial.c. References anat_filename, argc, commandline, DSET_BRICK_ARRAY, DSET_NX, DSET_NY, DSET_NZ, estpdf_short(), get_options(), malloc, MTEST, prefix_filename, PROGRAM_NAME, quiet, SI_error(), tross_commandline(), and verify_inputs().
00401 {
00402 float parameters [DIMENSION]; /* parameters for PDF estimation */
00403 int nxyz;
00404 short * sfim;
00405 int ixyz, icount;
00406 short * rfim;
00407 int lower_cutoff = 25;
00408
00409
00410 /*----- save command line for history notes -----*/
00411 commandline = tross_commandline( PROGRAM_NAME , argc,argv ) ;
00412
00413
00414 /*----- Get operator inputs -----*/
00415 get_options (argc, argv);
00416
00417
00418 /*----- Verify that inputs are acceptable -----*/
00419 verify_inputs();
00420
00421
00422 /*----- Initialize local variables -----*/
00423 if (anat == NULL) SI_error ("Unable to read anat dataset");
00424 nxyz = DSET_NX(anat) * DSET_NY(anat) * DSET_NZ(anat);
00425 sfim = (short *) DSET_BRICK_ARRAY(anat,0) ;
00426 if (sfim == NULL) SI_error ("Unable to read anat dataset");
00427 rfim = (short *) malloc (sizeof(short) * nxyz); MTEST (rfim);
00428
00429
00430 /*----- Just use voxels whose intensity is above the lower cutoff -----*/
00431 icount = 0;
00432 for (ixyz = 0; ixyz < nxyz; ixyz++)
00433 if (sfim[ixyz] > lower_cutoff)
00434 {
00435 rfim[icount] = sfim[ixyz];
00436 icount++;
00437 }
00438 if (! quiet)
00439 printf ("%d voxels above lower cutoff = %d \n", icount, lower_cutoff);
00440
00441
00442 /*----- Get PDF estimate and set voxel intensity limits -----*/
00443 if (min_val_int || max_val_int) estpdf_short (icount, rfim, parameters);
00444 if (min_val_int) min_val_float = parameters[4] - 2.0*parameters[5];
00445 if (max_val_int) max_val_float = parameters[7] + 2.0*parameters[8];
00446
00447
00448 if (! quiet)
00449 {
00450 printf ("\n");
00451 printf ("Control inputs: \n");
00452 printf ("anat filename = %s \n", anat_filename);
00453 printf ("min value = %f \n", min_val_float);
00454 printf ("max value = %f \n", max_val_float);
00455 printf ("min conn = %d \n", min_conn_int);
00456 printf ("max conn = %d \n", max_conn_int);
00457 printf ("prefix filename = %s \n", prefix_filename);
00458 }
00459
00460
00461 }
|
|
||||||||||||
|
Definition at line 700 of file 3dIntracranial.c. References argc, initialize_program(), machdep(), mainENTRY, PROGRAM_AUTHOR, PROGRAM_INITIAL, PROGRAM_LATEST, PROGRAM_NAME, and SEGMENT_auto().
00705 {
00706 int ii ;
00707
00708 /*----- Identify software -----*/
00709
00710 for( ii=1 ; ii < argc ; ii++ )
00711 if( strncmp(argv[ii],"-quiet",6) == 0 ) break ;
00712 if( ii == argc ){
00713 printf ("\n\n");
00714 printf ("Program: %s \n", PROGRAM_NAME);
00715 printf ("Author: %s \n", PROGRAM_AUTHOR);
00716 printf ("Initial Release: %s \n", PROGRAM_INITIAL);
00717 printf ("Latest Revision: %s \n", PROGRAM_LATEST);
00718 printf ("\n");
00719 }
00720
00721 mainENTRY("3dIntracranial:main") ; machdep() ;
00722
00723
00724 /*----- Program initialization -----*/
00725 initialize_program (argc, argv);
00726
00727
00728 /*----- Perform automatic segmentation -----*/
00729 SEGMENT_auto();
00730
00731 exit(0);
00732 }
|
|
|
Definition at line 666 of file 3dIntracranial.c. References auto_initialize(), connectivity_tests(), segment_volume(), target_into_dataset(), and write_afni_data(). Referenced by main().
00667 {
00668 short * cv = NULL; /* volume with 1's at target voxel locations */
00669 int ok; /* Boolean for successful operation */
00670
00671
00672 /*----- Perform initialization for automatic segmentation algorithm -----*/
00673 ok = auto_initialize (&cv);
00674 if (! ok) return;
00675
00676
00677 /*----- Segment intracranial voxels -----*/
00678 segment_volume (cv);
00679
00680 /*----- Perform voxel connectivity tests -----*/
00681 connectivity_tests (cv);
00682
00683 /*----- Put estimated target structure into output dataset -----*/
00684 target_into_dataset (cv);
00685
00686 /*----- Write out the segmented dataset -----*/
00687 write_afni_data (cv);
00688
00689 return ;
00690
00691 }
|
|
|
Definition at line 78 of file 3dIntracranial.c. References PROGRAM_NAME. Referenced by check_one_output_file(), get_options(), initialize_program(), segment_volume(), and verify_inputs().
00079 {
00080 fprintf (stderr, "\n");
00081 fprintf (stderr, "%s Error: %s \n", PROGRAM_NAME, message);
00082 exit(1);
00083 }
|
|
|
Definition at line 501 of file 3dIntracranial.c. References DSET_BRICK_ARRAY, DSET_NX, DSET_NY, DSET_NZ, nz, THD_delete_3dim_dataset(), and write_mask. Referenced by SEGMENT_auto().
00505 {
00506 short * anat_data = NULL; /* data from anatomical image */
00507 int nx, ny, nz, nxy, nxyz, ixyz; /* voxel counters */
00508
00509
00510 /*----- Initialize local variables -----*/
00511 anat_data = (short *) DSET_BRICK_ARRAY(anat,0) ;
00512 nx = DSET_NX(anat); ny = DSET_NY(anat); nz = DSET_NZ(anat);
00513 nxy = nx*ny; nxyz = nxy*nz;
00514
00515 if (! write_mask)
00516 {
00517 /*----- Reset to zero those voxels which lie outside the brain -----*/
00518 for (ixyz = 0; ixyz < nxyz; ixyz++)
00519 {
00520 if (cv[ixyz]) cv[ixyz] = 0;
00521 else cv[ixyz] = anat_data[ixyz];
00522 }
00523 }
00524
00525
00526 /*----- deallocate memory -----*/
00527 THD_delete_3dim_dataset (anat, False); anat = NULL;
00528
00529
00530 return;
00531 }
|
|
|
Definition at line 544 of file 3dIntracranial.c. References ADN_brick_fac, ADN_datum_array, ADN_func_type, ADN_label1, ADN_malloc_type, ADN_none, ADN_nvals, ADN_prefix, ADN_self_name, ADN_stat_aux, ADN_type, anat_filename, commandline, DATABLOCK_MEM_MALLOC, THD_3dim_dataset::dblk, THD_datablock::diskptr, DSET_BRICK, DSET_BRIKNAME, DSET_NX, DSET_NY, DSET_NZ, EDIT_dset_items(), EDIT_empty_copy(), FUNC_FIM_TYPE, GEN_FUNC_TYPE, HEAD_FUNC_TYPE, THD_diskptr::header_name, ISHEAD, MAX_STAT_AUX, mri_fix_data_pointer(), prefix_filename, quiet, THD_delete_3dim_dataset(), THD_is_file(), THD_load_statistics(), THD_open_dataset(), THD_write_3dim_dataset(), tross_Append_History(), and tross_Copy_History().
00548 {
00549 int nxyz; /* number of voxels */
00550 int ii; /* voxel index */
00551 THD_3dim_dataset * dset=NULL; /* input afni data set pointer */
00552 THD_3dim_dataset * new_dset=NULL; /* output afni data set pointer */
00553 int ierror; /* number of errors in editing data */
00554 int ibuf[32]; /* integer buffer */
00555 float fbuf[MAX_STAT_AUX]; /* float buffer */
00556 float fimfac; /* scale factor for short data */
00557 int output_datum; /* data type for output data */
00558 char * filename; /* prefix filename for output */
00559
00560
00561 /*----- initialize local variables -----*/
00562 filename = prefix_filename;
00563 dset = THD_open_dataset (anat_filename);
00564 nxyz = DSET_NX(dset) * DSET_NY(dset) * DSET_NZ(dset);
00565
00566
00567 /*-- make an empty copy of this dataset, for eventual output --*/
00568 new_dset = EDIT_empty_copy( dset ) ;
00569
00570
00571 /*----- Record history of dataset -----*/
00572 tross_Copy_History( dset , new_dset ) ;
00573 if( commandline != NULL )
00574 tross_Append_History( new_dset , commandline ) ;
00575
00576
00577 /*----- deallocate memory -----*/
00578 THD_delete_3dim_dataset (dset, False); dset = NULL ;
00579
00580
00581 output_datum = MRI_short ;
00582
00583 ibuf[0] = output_datum ;
00584
00585 if (write_mask)
00586 {
00587 int func_type = FUNC_FIM_TYPE;
00588 ierror = EDIT_dset_items( new_dset ,
00589 ADN_prefix , filename ,
00590 ADN_label1 , filename ,
00591 ADN_self_name , filename ,
00592 ADN_type , ISHEAD(dset) ? HEAD_FUNC_TYPE : GEN_FUNC_TYPE ,
00593 ADN_func_type , func_type ,
00594 ADN_nvals , FUNC_nvals[func_type] ,
00595 ADN_datum_array , ibuf ,
00596 ADN_malloc_type, DATABLOCK_MEM_MALLOC ,
00597 ADN_none ) ;
00598 }
00599 else
00600 {
00601 ierror = EDIT_dset_items( new_dset ,
00602 ADN_prefix , filename ,
00603 ADN_label1 , filename ,
00604 ADN_self_name , filename ,
00605 ADN_datum_array , ibuf ,
00606 ADN_malloc_type, DATABLOCK_MEM_MALLOC ,
00607 ADN_none ) ;
00608 }
00609
00610
00611 if( ierror > 0 ){
00612 fprintf(stderr,
00613 "*** %d errors in attempting to create output dataset!\n",
00614 ierror ) ;
00615 exit(1) ;
00616 }
00617
00618
00619 if( THD_is_file(new_dset->dblk->diskptr->header_name) ){
00620 fprintf(stderr,
00621 "*** Output dataset file %s already exists--cannot continue!\a\n",
00622 new_dset->dblk->diskptr->header_name ) ;
00623 exit(1) ;
00624 }
00625
00626
00627 /*----- attach bricks to new data set -----*/
00628 mri_fix_data_pointer (cv, DSET_BRICK(new_dset,0));
00629 fimfac = 1.0;
00630
00631
00632 /*----- write afni data set -----*/
00633 if (! quiet)
00634 {
00635 if (write_mask) printf("\nWriting functional (mask) dataset: ");
00636 else printf ("\nWriting anatomical dataset: ");
00637 printf("%s\n", DSET_BRIKNAME(new_dset) ) ;
00638
00639 printf("NOTE: You may get better results by trying\n"
00640 " 3dSkullStrip -input %s -prefix %s\n" ,
00641 anat_filename , prefix_filename ) ;
00642 }
00643
00644
00645 for( ii=0 ; ii < MAX_STAT_AUX ; ii++ ) fbuf[ii] = 0.0 ;
00646 (void) EDIT_dset_items( new_dset , ADN_stat_aux , fbuf , ADN_none ) ;
00647
00648 fbuf[0] = (output_datum == MRI_short && fimfac != 1.0 ) ? fimfac : 0.0 ;
00649 (void) EDIT_dset_items( new_dset , ADN_brick_fac , fbuf , ADN_none ) ;
00650
00651 THD_load_statistics( new_dset ) ;
00652 THD_write_3dim_dataset( NULL,NULL , new_dset , True ) ;
00653
00654
00655 /*----- deallocate memory -----*/
00656 THD_delete_3dim_dataset( new_dset , False ) ; new_dset = NULL ;
00657
00658 }
|
Variable Documentation
|
|
Definition at line 65 of file 3dIntracranial.c. Referenced by get_options(), initialize_program(), and write_afni_data(). |
|
|
Definition at line 69 of file 3dIntracranial.c. Referenced by initialize_program(), and write_afni_data(). |
|
|
Definition at line 70 of file 3dIntracranial.c. Referenced by get_options(). |
|
|
Definition at line 66 of file 3dIntracranial.c. Referenced by get_options(), initialize_program(), and write_afni_data(). |
|
|
Definition at line 68 of file 3dIntracranial.c. Referenced by get_options(), initialize_program(), and write_afni_data(). |
|
|
Definition at line 67 of file 3dIntracranial.c. Referenced by get_options(), and target_into_dataset(). |