4.2. Classified program list¶
All AFNI programs, great and small, are listed here and classified based on functionality. That is, they are grouped into some general categories that we made up and given short bios.
The ranking of each program is to highlight ones that we think are particularly useful in general processing (‘5’ being the most directly useful, and ‘1’ being something that might just be a low-level, supplementary tool). Note that a given program may appear in more than one group.
This page might be most useful by using your browser to search through the text for keywords of interest, such as “ROI”, “mask”, “diffusion”, “align”, “model”, etc. Clicking on the name of the program will bring you its online help documentation, referenced from this page of all AFNI “helps”.
4.2.1. Interactive viewer GUIs¶
5 |
GUI-based viewer for exploring data primarily as slices |
|
5 |
GUI-based viewer for exploring data in 3D: surfaces, tracts, graph nodes, and volume slices |
|
2 |
AFNI Image Viewer program |
4.2.2. Voxelwise calcs, esp. stats and tests¶
5 |
Compute voxelwise t-tests (and GLMs) across collection of datasets (see 3dMEMA for generalizing to include within-subjects variance in model) |
|
5 |
Compute voxelwise statistics of time series datasets (e.g., mean, variance) |
|
5 |
Group-analysis program that performs traditional ANOVA- and ANCOVA style computations, and multivariate modeling |
|
5 |
Voxelwise Linear Mixed-Effects (LME) modeling. The linear mixed-effects modeling approach implemented in 3dLMEr is for population-level analysis, and is much more flexible than 3dLME. |
|
5 |
Group-analysis program that performs Mixed Effects Meta Analysis, modeling both within- and across-subjects variability |
|
4 |
Compute the average of a number of datasets |
|
4 |
Compute voxelwise IntraClass correlation (ICC) values. ICC computations are performed with one of the three types: ICC(1, 1), ICC(2,1) and ICC(3,1). Input can be either effect estimates only or effect estimates plus their t-statistics. |
|
4 |
Compute voxelwise InterSubject Correlation (ISC). ISCs are assessed for naturalistic data at the population through linear mixed-effects (LME) modeling. |
|
4 |
Group-analysis program that performs linear mixed-effects (LME) modeling analysis (and see 3dLMEr for complex random-effects structures) |
|
3 |
With a group of dsets, calc voxelwise t-tests on group of corr maps wherever user clicks |
|
3 |
Correlation coefficient between 3D+time dataset and 1D time series |
|
3 |
Compute average correlation of every voxel with every other |
|
3 |
Fit a linear model to each voxel time series, with various methods (L1, L2, LASSO) |
|
3 |
Deconvolution analysis of fMRI voxel time series with L1 norm methods (LASSO, Dantzig Selector), akin to 3dTfitter but using a different procedure and algorithms |
|
3 |
Deconvolution analysis of multi-echo fMRI voxel time series with L1 norm methods (LASSO), akin to 3dPFM |
|
2 |
A slightly revised version of 3dLME that is more flexible in specifying random-effects components and variance-covariance structure; this may be helpful (but more computationally expensive) in some cases |
|
2 |
Calculate the following for 2 dsets on the same grid: for each voxel in grid, calculate correlation map in each dset, and then correlate those spatial maps; store that correlation value at that location. A way to look at similarity of correlation across, say, resting state datasets, perhaps. |
|
1 |
Preliminary program to run when using 3dGroupInCorr |
|
1 |
3Monte Carlo simulation for multiple comparison correction |
|
1 |
Compute correlation between two 3D+time datasets |
|
1 |
Apply a linear filter to each voxel time series (archaic) |
|
1 |
Sort each voxel’s time series in various ways |
|
1 |
||
1 |
||
1 |
1-way ANOVA (fixed effects) |
|
1 |
2-way ANOVA (fixed, random, mixed effects) |
|
1 |
3-way ANOVA (fixed, random, mixed effects) |
|
1 |
||
1 |
False Discovery Rate analysis |
|
1 |
Structural equation modeling (path analysis) (why here???) |
|
1 |
Nonparametric Wilcoxon test |
|
1 |
Nonparametric Kruskal-Wallis test |
|
1 |
Nonparametric Friedman test |
|
1 |
Nonparametric 3dMannWhitney test |
|
1 |
Voxel-wise linear regression analyses |
|
1 |
Convert each statistical value in a dataset (e.g., t-statistic) to a p-value |
|
1 |
Tests the input values at each voxel for normality, using the Anderson-Darling method |
4.2.3. Get info/stats within ROIs¶
5 |
Get atlas region name for coordinates |
|
4 |
Calculate dataset values from multiple ROIs |
|
4 |
Calculate dataset values averaged over a ROI |
|
4 |
Output all dataset values in a ROI |
|
4 |
Calculate percentile values within dsets |
|
4 |
measure thickness using ball and box method |
|
4 |
measure thickness using erosion method |
|
4 |
measure thickness between in and out masks |
|
4 |
compare thickness measurement methods |
|
3 |
Create dataset from text (inverse of 3dmaskdump) |
|
2 |
Resample a mask dataset to a different resolution |
|
1 |
Create mask that is overlap of nonzero voxels from multiple datasets |
|
1 |
Collapse 4D data to 1D in various ways |
|
1 |
Make an atlas from a dataset and label text files |
|
1 |
Assign labels to values |
|
1 |
AFNI_atlas_spaces.niml |
space, atlas, transformations definitions file |
4.2.4. Build FMRI pipelines¶
5 |
Generate tcsh script for full processing (including QC) of single subject FMRI data— it might just be your new best friend |
|
4 |
a wrapper for afni_proc.py to generate simple processing and quick QC for multiecho FMRI data, using almost no options besides filenames |
|
4 |
a wrapper for afni_proc.py to generate simple processing and quick QC for single echo FMRI data, using almost no options besides filenames |
|
4 |
Generate QC review scripts |
|
4 |
Award-winning program to help anonymize datasets by defacing and/or refacing them (with free QC images!) |
|
3 |
Generate group analysis scripts |
|
2 |
Graphical interface to help set up an afni_proc.py command (probably just use -> afni_proc.py directly; uber_subject.py does not have full range of options that afni_proc.py has; recommended to use afni_proc.py examples as a basis, instead) |
|
2 |
Program used by afni_proc.py to build QC HTML (this builds script to generate images+text) |
|
2 |
Program used by afni_proc.py to build QC HTML (this builds HTML pieces made by apqc_make_tcsh.py) |
|
2 |
supplementary program that can map afni_proc.py outputs to BIDS-style derivative structure (typically used via option in afni_proc.py) |
|
1 |
4.2.5. Align/register/warp/axialize spatially¶
5 |
Volumetric registration (rigid body in 3D, 6DOF linear) |
|
5 |
Align 2 volumes (e.g. anat and EPI) |
|
5 |
Skull-stripping program that uses a reference anatomical |
|
5 |
alignment and skullstripping and moves atlas regions to native space, specially suited for animal brains |
|
5 |
Align two datasets using nonlinear warping (relatedly, see sswarper2, @SSwarper, auto_warp.py, @toMNI_Qwarpar) |
|
5 |
Cross-modality affine volume registration |
|
5 |
Rewrite dataset in new orientation, with new voxel size |
|
4 |
Can wrap many registration operations (in addition to/as part of its FMRI processing pipeline generation) |
|
4 |
Align a T1w dset to a T2w dset, esp. as part of DWI processing and if incorporating FreeSurfer after |
|
4 |
Attempt to align major viewing planes of anatomical with FOV, based on WB alignment to a reference vol |
|
4 |
Apply a nonlinear warp to transform a dataset |
|
3 |
Align the center of a dataset to another |
|
3 |
Show two or more datasets with edges for alignment visualization |
|
3 |
Utility for combining linear affine transformation matrices (e.g., from 3dAllineate) |
|
3 |
Performs B0 distortion correction along the phase encode (PE) direction, using an acquired frequency (phase) image; originally written by Vinai Roopchansingh |
|
2 |
Measure the “distance” between 2 different affine spatial transformation matrices, for potential use in testing alignment software tools run in different environments |
|
2 |
Compute an affine spatial transformation matrix from the set of parameters output by ‘3dAllineate -1Dparam_save …’. This code can be used to modify the matrix by altering the physically relevant parameters (e.g., scalings, shifts, rotations, shears), and could be combined with program cat_matvec, for example. |
|
2 |
Align anatomical data that has large lesion features to a template, and use warp inversion to help segment original space data |
|
1 |
wrapper for nonlinear warping with 3dQwarp |
|
1 |
Automatic transformation of dataset to match Talairach template (rigid/12dof???) |
|
1 |
Non-rigid transformation of 3D coordinates |
|
1 |
Volumetric registration, includes warping (12DOF, linear affine); prob use 3dAllineate or align_epi_anat.py (???) |
|
1 |
Align (non-oblique) full- and partial-coverage T1w datasets; consider 3dQwarp instead. |
|
1 |
(deprecated -> use newer sswarper2) |
|
1 |
Align volume from FreeSurfer analysis to a different session’s anatomical volume in order to warp surfaces similarly |
|
1 |
Adjust a collection of nonlinear warps for template building (@toMNI_Qwarpar) |
|
1 |
Carry out calculations on nonlinear warps |
|
1 |
Combine linear and nonlinear warps (spatial transformations) |
|
1 |
Compute various voxelwise information about a nonlinear warp (e.g., Jacobian) |
|
1 |
Apply a nonlinear warp to a set of (x,y,z) triples |
|
1 |
Align datasets by matching manually placed ‘tags’ |
|
1 |
Rigid body rotation of dataset in 3D |
|
1 |
Transform dataset using warp from dataset header |
|
1 |
Transform 3-vectors using warp from dataset header |
|
1 |
Slice-by-slice registration (rigid body in 2D) |
|
1 |
(obsolete -> use 3dresample) |
|
1 |
Make a group template - affine alignment |
|
1 |
Make a group template - iterative nonlinear alignment |
|
1 |
GUI for affine alignment with align_epi_anat.py |
|
1 |
Blip-up/down unwarping nonlinear alignment |
|
1 |
Move origin of dataset by specified amount or shift between MNI and MNI_ANAT |
|
1 |
plugin(Edit Tagset) |
Place ‘tags’ in a dataset interactively |
4.2.6. Spline fitting¶
4 |
Profile Tracking Analysis, to estimate nonlinear trajectories or profiles via smoothing splines |
|
4 |
Multilevel Smoothing-Spline modeling, to offer a too to go beyond linear fitting, particularly in population-level modeling with one or more quantitative predictors |
4.2.7. SUMA surface calculations, formats and viewing¶
5 |
Convert Freesurfer surfaces to SUMA spec files |
|
4 |
Extract isosurface from a volume |
|
4 |
Compute volume equivalent from surface or pair of surfaces |
|
4 |
Assign values to surface nodes from volumetric data |
|
4 |
Send commands to SUMA program from script |
|
4 |
Compute local statistics on a surface, such as mean, mode, number of nodes, local smoothness (FWHM) and more |
|
3 |
Provides information on surface mesh |
|
3 |
Compute various measurements for surface or pair of surfaces |
|
3 |
Generate (basic) specification file for running suma |
|
3 |
Project values from surface to volume and fill holes |
|
3 |
Generate one or more intermediate surfaces between a pair of boundary surfaces (see also quickspecSL) |
|
2 |
Convert SureFit surfaces to SUMA spec files |
|
2 |
Generate a specification file for new layers generated with the program SurfLayers |
|
1 |
||
1 |
Find clusters on surfaces |
|
1 |
Output shortest distance between two nodes on a surface (along surface or Euclidean) |
|
1 |
Display information about surface dataset |
|
1 |
Find local extrema in a (surface) dataset |
|
1 |
||
1 |
Show information on surface |
|
1 |
Reduce number of points in surface mesh |
|
1 |
Extract patch of surface or compute volume from specified nodes |
|
1 |
Quality check for surfaces |
|
1 |
||
1 |
Smooth surfaces |
|
1 |
||
1 |
Interpolate data from one surface onto mesh of another surface |
|
1 |
||
1 |
||
1 |
||
1 |
||
1 |
Convert ROI (e.g., after drawing) to SUMA-type dset |
|
1 |
Generate volumetric mask for inside of surface |
|
1 |
Converts a surface dataset from one format to another |
|
1 |
Convert surface files among various formats |
|
1 |
Compute distances between two surfaces at each node |
|
1 |
||
1 |
Create new version of surface mesh using mesh of icosahedron |
|
1 |
||
1 |
Make afni and suma colormaps |
4.2.8. Mask/skull-strip/segment¶
5 |
Generate a brain and skull-only mask |
|
5 |
Enhanced skull stripping |
|
5 |
Combines skull stripping with generating a warp to a nonlinear template space; directly combinable with afni_proc.py, too! |
|
5 |
alignment and skullstripping and moves atlas regions to native space, specially suited for animal brains (and directly combinable with afni_proc.py) |
|
4 |
for combining/dilating/eroding/filling masks |
|
4 |
Award-winning program to help anonymize datasets by defacing and/or refacing them (with free QC images!) |
|
3 |
Strips the skull of anatomical datasets with low SNR |
|
3 |
Segment anatomical (t1w) volume into major brain tissue types |
|
1 |
Edit masks by filling in holes |
|
1 |
Strip off outside-the-brain voxels |
|
1 |
(deprecated -> use newer sswarper2) |
|
1 |
Find value to threshold off outside-the-brain voxels |
|
1 |
plugin(Draw Dataset) |
Manually draw ROI mask datasets |
1 |
plugin(Gyrus Finder) |
Interactively segment gray and white matter |
4.2.9. Make/edit/evaluate stimulus timing files¶
5 |
Edit stimulus timing files |
|
4 |
Generate random stimulus times files |
|
1 |
Combine ragged 1D files for use with 3dDeconvolve’s -stim_times_AM2 option |
|
1 |
Convert 0/1 stim file format to stim times format |
|
1 |
(obsolete -> use make_random_timing.py) |
|
1 |
4.2.10. Edit dset headers¶
5 |
Displays, modifies, copies nifti structures in datasets |
|
5 |
Wrap around the 3drefit functionality to remove obliquity from a dataset whilst preserving its origin |
|
4 |
Lets you change attributes in a dataset header |
|
4 |
Help reorient datasets where subject had nose along scanner bore (e.g., nonhuman scanning) |
|
3 |
Estimate dset’s center of mass, and allow recentering |
|
2 |
Assign a new ID code to a dataset (also, generate a random string for filenames); useful for scripting to get temporary filenames/directory names |
|
1 |
Lets you put text notes into a dataset header |
|
1 |
Displays, modifies, copies nifti structures in datasets |
|
1 |
Displays, modifies, copies nifti structures in datasets |
|
1 |
(how diff than nifti_tool???) |
|
1 |
Convert orientation code into signed code used in AFNI header |
|
1 |
Convert orientation code into signed +/-1 code relative to RAI and permutations |
|
1 |
Convert RAI coordinates into another coordinate order |
|
1 |
Convert coordinates to RAI order |
|
1 |
Get absolute path of a file |
|
1 |
Returns path of afni executables |
|
1 |
Get dimensions of dataset |
|
1 |
Get AFNI ID of dataset |
|
1 |
Get orientation code of dataset |
|
1 |
Get prefix part of dataset name |
|
1 |
Get voxel resolution of dataset |
|
1 |
Get afni view equivalent of dataset (+orig,+tlrc) |
|
1 |
Return parts of an AFNI or NIFTI dataset name |
|
1 |
Return parts of an AFNI dataset name |
|
1 |
Return parts of a dataset name including AFNI specifiers |
|
1 |
Find a path to dataset |
|
1 |
Flag if dataset is marked as oblique |
|
1 |
Move origin of dataset by specified amount or shift between MNI and MNI_ANAT |
|
1 |
plugin(Dataset NOTES) |
Interactive header notes editor |
4.2.11. Compute various numbers from datasets¶
5 |
Estimate FWHM for all sub-bricks of dataset |
|
4 |
Take a cluster dataset and make a table of overlaps with respect to a given atlas. |
|
3 |
Simple statistics (max, min, mean) for scripts |
|
2 |
Find local maxima (or minima) of datasets |
|
1 |
Dot product (correlation coefficient) of 2 sub-bricks |
|
1 |
Find statistically connected clusters |
|
1 |
Output voxel values for a row/column in x,y,z space |
4.2.12. Check/compare dsets and their headers¶
5 |
Print out information from the header |
|
5 |
“Getting To Know Your Data”, by comparing+tabulating header info across many files |
|
4 |
Examine element-wise differences between two datasets |
|
1 |
Print out a single header attribute |
|
1 |
Print out the number of sub-bricks (3D volumes) in a dataset |
4.2.13. Blur and smooth dsets¶
5 |
Process (e.g., blur) and optionally combine datasets |
|
1 |
Blur a dataset, but only inside a mask (or masks) |
|
1 |
Blur a dataset to a given level of smoothness (for inter-site studies) |
|
1 |
Smooth a dataset using an anisotropic technique to preferentially preserve edges (e.g., to clean up structural images) |
|
1 |
Smooth a 3D volume using a median filter |
4.2.14. Volume editing/image processing¶
5 |
Calculate edges in 3D, using “Optimal edge detection using recursive filtering” |
|
5 |
Map out the depth of masks or sets of ROIs; can also effectively erode or edge-ify ROIs and masks |
|
4 |
Smooth a dataset using an anisotropic technique to preferentially preserve edges (e.g., to clean up structural images) |
|
4 |
Correct T1-weighted dataset for non-uniform histogram |
|
4 |
Calculate edges in 3D using “Differences of Gaussians (DoGs)” |
|
3 |
use “moving median” method to unifize brightness of dataset to 1, while preserving interesting structures in the original (used widely by afni_proc.py for human data) |
|
2 |
3D sharpening filter applied to a dataset (to clean up a template) |
4.2.15. Update AFNI, install software, check setup/info (not demos)¶
5 |
Update current AFNI binaries |
|
5 |
Evaluate present setup |
|
5 |
compile AFNI from the git repository |
|
4 |
Get+install all necessary R packages |
|
4 |
Install the R packages required by some AFNI programs from the Linux terminal (see also rPkgsInstall) |
|
3 |
Returns one value, the number of OMP_NUM_THREADS set (for programs able to use multiple CPUs with OpenMP) |
|
3 |
either initialize or just evaluate dot files (often used by build_afni.py) |
|
1 |
Download an archived version of AFNI source code using github |
|
1 |
Check if update needed (compare present and available version numbers) |
4.2.16. Simple dset calcs (-> make new dsets)¶
5 |
Voxel-by-voxel general purpose calculator |
|
5 |
Various spatial filters, thresholds, and averaging |
|
5 |
Various statistics of multi-brick datasets, voxel-by-voxel |
|
4 |
Average datasets together, voxel-by-voxel, for each timept |
|
4 |
Smooth a dataset using an anisotropic technique to preferentially preserve edges (e.g., to clean up structural images) |
|
2 |
Compute the first 2 principal vectors (component time series) of a 3D+time dataset, then output a dataset measuring the R^2 of the input dataset with the 2D subspace spanned by these 2 vectors. The same algorithm is used in the 3dGrayplot program to order the voxels to cluster similar time series together, for visualization. |
|
1 |
Nonlinear order statistics filter for spatial smoothing |
|
1 |
Find simple statistical values for neighborhoods around each voxel |
|
1 |
Compute various bivariate statistics for neighborhoods around each voxel |
|
1 |
Compute some local statistics in a neighborhood around each voxel |
|
1 |
Compute mixed model ACF parameters in a neighborhood around each voxel |
|
1 |
Compute the ‘principal vector’ from a time series dataset, in a neighborhood around each voxel |
|
1 |
Compute the SVD from a time series dataset, in a neighborhood around each voxel |
|
1 |
Compute the count of how many times each unique value occurs, in a neighborhood around each voxel |
|
1 |
Collapse 4D data to 1D in various ways |
|
1 |
Applies matrix to datasets |
|
1 |
Multiply datasets as matrices |
4.2.17. Resting state FMRI parameters¶
5 |
Calculate ReHo (Kendall’s coefficient of concordance) for time series |
|
4 |
Calculate RSFC parameters (ALFF, fALFF, RSFA, etc.) for uncensored time series |
|
3 |
Calculate amp/pow spectrum (like FFT) along time axis with missing time points |
|
3 |
Calculate RSFC parameters (ALFF, fALFF, RSFA, etc.) from 3dLombScargle output |
|
2 |
Calculate the following for 2 dsets on the same grid: for each voxel in grid, calculate correlation map in each dset, and then correlate those spatial maps; store that correlation value at that location. A way to look at similarity of correlation across, say, resting state datasets, perhaps. |
4.2.18. Region-wise group analysis¶
5 |
Region-Based Analysis. RBA performs Bayesian multilevel (BML) modeling for a list of predefined ROIs. Instead of controlling for multiple testing in conventional population-level analysis, RBA borrows and calibrates the information across regions (see also BayesianGroupAna.py) |
|
5 |
The Python version of RBA, for Bayesian multilevel (BML) modeling for a list of predefined ROIs (see also RBA) |
|
4 |
Test-retest reliability analysis for behavioral and/or region-wise neuroimaging data when there are multiple trials per condition (if not multiple trials per condition, just use 3dICC) |
|
3 |
Matrix-Based Analysis. MBA is for population-level analysis with matrix (e.g., correlation) data from each subject as input. Partial pooling is adopted through Bayesian multilevel (BML) modeling |
4.2.19. Make/edit correlation matrices¶
4 |
Calculate correlation matrix of a set of ROIs, as well as WB maps of each |
|
3 |
Visualize functional correlation (*.netcc files) or tracted-WM property (*.grid file) matrices |
|
1 |
Make an NxN ROI correlation matrix of N ROIs (consider 3dNetCorr instead) |
|
1 |
(obsolete -> use fat_mat2d_plot.py) |
|
1 |
Compute the correlation matrix for the residual (or error) time series in a dataset |
4.2.20. Make/edit ROIs and clusters, resample¶
5 |
Rewrite dataset, possibly in new orientation, with new voxel size |
|
5 |
Find clusters of voxels in a dataset and print out a table about the clusters |
|
4 |
Edit datasets (e.g., blur, cluster), and optionally combine them |
|
4 |
Take a cluster dataset and make a table of overlaps with respect to a given atlas. |
|
3 |
Find+report about clusters in a dataset (see 3dClusterize for a newer program with newer options and easier syntax) |
|
3 |
Create a 3D dataset from text data; complements 3dmaskdump |
|
3 |
Threshold and clusterize dataset, as well as inflate (esp. for tractography prep) |
|
3 |
Exchange values from one set of indices with another set |
|
2 |
Resample a mask to a different grid size |
|
2 |
Dilate regions iteratively by most common value within a neighborhod |
|
2 |
Remove small separate parts of region |
|
1 |
Find local extrema within volumes |
|
1 |
Find local extrema within volumes |
|
1 |
Apply thresholds to dsets at various levels, and just count clusters of various sizes; used mainly for simulations. |
4.2.21. Edit dsets: concatenate, split, add/remove slices¶
5 |
Assemble a bucket dataset from multiple input sub-bricks |
|
5 |
Concatenate sub-bricks from input datasets into one big 3D+time dataset |
|
5 |
Add zero slices around the edges of a dataset (specifying per side or padding in various ways); can also be used to remove slices |
|
3 |
Automatically crop a dataset to remove empty space |
|
3 |
Glue multiple sub-bricks together along the {x|y|z}-axis |
|
2 |
Convert a 3D+time dataset into multiple 3D single-brick files |
|
2 |
Assemble a 3D+time dataset from multiple input sub-bricks |
|
2 |
Cut slices out of a dataset to make a ‘thinner’ dataset |
|
1 |
Interpolate a dataset to a different slice thickness |
4.2.22. Drive AFNI/SUMA, make images/snapshots/montages¶
5 |
Wrapper to combine environment+driving functionality to save image files of 3D dataset (nice in conjunction with 2dcat to form arrays of images) |
|
5 |
Very useful program for making grids of images and things (nice in conjunction with @chauffeur_afni or generally driving AFNI) |
|
5 |
Drive AFNI to save QC images of EPI-anatomical alignment |
|
5 |
Show overlap of two datasets, like for judging initial alignment positioning (also can account for obliquity) |
|
4 |
Drive suma from external program |
|
3 |
Close all network talking afni and suma instances (often used at end of “talking” scripts) |
|
3 |
Wrapper to combine environment+driving functionality to save image/movies files of 4D dataset |
|
3 |
Drive afni GUI from external program |
|
2 |
Example script to drive afni GUI with class data |
|
2 |
Example script to drive suma with class data |
|
1 |
||
1 |
Sub-functionality of @djunct_dwi_selector.tcsh |
|
1 |
Helper/intermediate function for fat_proc_select_vols |
|
1 |
Sub-functionality of @djunct_dwi_selector.tcsh |
|
1 |
||
1 |
||
1 |
||
1 |
Execute AFNI commands for multiple datasets |
|
1 |
Popup a dialog box with a message and buttons |
|
1 |
(obsolete -> use prompt_popup) |
|
1 |
Get and set AFNI environment variables |
|
1 |
(deprecated name -> use new name 2dcat) |
4.2.23. Deal with 1D time series¶
4 |
Perform various manipulations of 1D data |
|
4 |
Plot/graph values from columns in a file |
|
4 |
Like 1dplot, but more modern Python-based viewing (more options; requires Python-matplotlib) |
|
3 |
Transpose 1D files (interchange rows and columns) |
|
1 |
Calculate correlation coefficients between 1D columns, with confidence intervals |
|
1 |
1D calculator (like 3dcalc for 1D files) |
|
1 |
Catenate 1D files horizontally (use system program cat for vertical combining) |
|
1 |
Show values from columns in a file as bands of gray levels |
|
1 |
Matrix calculator for 1D files |
|
1 |
Add up all numbers in columns of a 1D file (can also do means) |
|
1 |
Sort each column of the input 1D file (separately) |
|
1 |
Compute the Singular Value Decomposition of a matrix (including PCA) |
|
1 |
Interpolate columns of a 1D file to a finer grid |
|
1 |
Catenate data horizontally |
4.2.25. Convert surfaces from other software¶
5 |
Convert output from standard FreeSurfer ‘recon-all’ processing to AFNI+SUMAland |
|
1 |
Convert output from standard Caret processing to AFNI+SUMAland |
|
1 |
Convert output from standard SureFit processing to AFNI+SUMAland |
|
1 |
||
1 |
Renumber standard FS-‘recon-all’ seg+parc values; make tissue-grouped maps (part of @SUMA_Make_Spec_FS) |
|
1 |
||
1 |
||
1 |
||
1 |
||
1 |
Parse FreeSurfer region labels to get indices |
4.2.26. Convert statistics and p-values¶
4 |
A command line calculator (like 3dcalc) |
|
4 |
Compute probabilities, thresholds for standard distributions |
|
4 |
Convert a p-value to a stat, using parameters stored in a dset header (complement of dsetstat2p) |
|
3 |
Convert a stat to a p-value, using parameters stored in a dset header (complement of p2dsetstat) |
4.2.27. Compare dset volumes (masks or valued)¶
5 |
Count overlaps between 2 datasets (union, intersection, etc.) |
|
5 |
Calculate Dice coefficients slice-by-slice (for all three FOV planes) between mask dsets. |
|
4 |
Find pairs of similar-looking subbricks between two groups of dsets |
|
1 |
Computes Dice Coefficient between two datasets |
|
1 |
Calculate correlation coefficients between sub-brick pairs in a 4D dset |
|
1 |
Faster version of 3ddot, though currently just for calculating eta-squared |
|
1 |
Count of number of voxels that are nonzero in ALL of the input dataset sub-bricks |
4.2.28. Work with JSON files (e.g., sidecars)¶
4 |
Extract info from BIDS formatted json files (like those from dcm2niix) |
|
4 |
Manipulate json files in specific ways: add TR, add slice timing, copy info |
|
3 |
Manipulate json files in various ways (add keys, etc.), as well as convert back and forth from simple “two column” dictionary format |
4.2.29. Time series pre-processing¶
5 |
Generate slicewise physiological regressors, with QC and interactive editing mode |
|
4 |
Shift slices to a common time origin (temporal interpolation) |
|
3 |
Alter one dataset’s time series to be maximally correlated with another dataset’s time series |
|
1 |
Remove spikes from voxel time series |
|
1 |
Remove trends from voxel time series |
|
1 |
Project out time series (like -errts from 3dDeconvolve) |
|
1 |
Smooth time series in the time domain |
|
1 |
Resample a dataset in time from an irregular grid to a regular grid |
|
1 |
Generate slicewise physiological regressors (deprecated -> use newer physio_calc.py) |
4.2.30. Time series analysis¶
5 |
Multiple linear regression (generalized least squares) |
|
4 |
Multiple linear regression and deconvolution (ordinary least squares) |
|
1 |
Nonlinear regression |
|
1 |
Ad hoc version of IM regression, giving amplitudes for each stimulus event |
|
1 |
Correlate two input datasets, voxel-by-voxel |
|
1 |
Correlate each voxel with every other voxel |
|
1 |
Principal component analysis |
|
1 |
Compute 3d+time dataset from partial model |
|
1 |
Single regressor linear analysis with time shifting |
|
1 |
Linear regression (obsolete -> use 3dDeconvolve) |
|
1 |
Fit a general model to a vector of data |
|
1 |
plugin(Deconvolution) |
Interactive deconvolution |
1 |
plugins(Nlfit and Nlerr) |
Interactive nonlinear regression |
4.2.31. Quality checks (for 3D+time datasets or results)¶
5 |
“Getting To Know Your Data”, by comparing+tabulating header info across many files |
|
5 |
open up afni_proc.py’s QC (APQC) HTML with a local server running, for interactive features |
|
4 |
Check voxel time series for quality (temporal outliers) |
|
4 |
Check datasets for correlation artifact |
|
4 |
Generate QC review scripts |
|
4 |
Take a cluster dataset and make a table of overlaps with respect to a given atlas. |
|
3 |
check original space EPIs for variance line artifacts (used by afni_proc.py) |
|
3 |
compute per-ROI size+TSNR statistics over a given dataset (used within afni_proc.py) |
|
2 |
make a grayplot from residuals (errts) dataset, particularly in afni_proc.py results dir |
|
2 |
evaluate the output of compute_ROI_stats.tcsh, colorizing them for HTML display (used by apqc_make_tcsh.py) |
|
1 |
Check dataset sub-bricks for quality (spatial outliers) |
|
1 |
Compute average pairwise correlation (GCOR), one number |
|
1 |
Generate spread-sheet of review_basic results |
4.2.32. Miscellaneous file manipulations¶
5 |
Display or edit data in arbitrary files; find bad characters or missing “end of line” backslashes, for example |
|
4 |
For manipulating and evaluating 1D files |
|
3 |
Compare (diff) a set of files to those in another location |
|
3 |
Compare (diff) 2 directory trees of files |
|
1 |
Byte pair swap, e.g., ab ba |
|
1 |
Byte quad swap, e.g., abc dcba |
|
1 |
Mixed 2 and 4 byte swaps in same file |
|
1 |
Find a string in a file and replace it with junk |
|
1 |
Remove specified file extensions from file name |
|
1 |
Change name of file or dataset to avoid pound (#) symbols |
|
1 |
Generate new prefix given some base prefix |
4.2.33. MVM modelling of (correlational or structural) matrices¶
4 |
fat_mat_tableize |
Make tables for AFNI group analysis programs from outputs from 3dNetCorr (*.netcc) and 3dTrackID (*.grid) |
3 |
Plot matrices from 3dNetcorr (*.netcc) or 3dTrackID (*.grid) files |
|
3 |
Combine *.grid/*.netcc files with subject data in CSV files; for fat_mvm* modeling |
|
3 |
Read in a data table file (esp. from fat_mvm_prep.py) and build 3dMVM command |
|
1 |
(obsolete -> use fat_mat2d_plot.py) |
|
1 |
Convert ooold 3dTrackID output *.grid files; should be unnecessary now |
4.2.34. Interact with multi-echo data¶
5 |
Generate FMRI processing pipelines, including for multi-echo FMRI data; can use several methods for combining echoes, such as optimally combined (via @compute_OC_weights) and tedana.py, as well as others |
|
3 |
Deconvolution analysis of multi-echo fMRI voxel time series with L1 norm methods (LASSO), akin to 3dPFM |
|
2 |
Compute optimally combined weights dataset |
|
1 |
P Kundu’s MEICA denoising tools |
|
1 |
Install the demo archive for P Kundu’s MEICA denoising tools |
4.2.35. Generate model 1D time series¶
3 |
Generate hemodynamic responses for stimulus timing files; also useful for displaying example convolution results |
|
1 |
Generate columns of sines and cosines for bandpassing |
|
1 |
Generate hemodynamic responses to stimulus time series |
4.2.37. Dset histograms¶
3 |
Compute histograms using functions for generating priors |
|
1 |
Create and plot histogram of dataset, print peaks (output is a list of peaks in the histogram, to stdout) |
|
1 |
Create histogram of dataset to a file |
|
1 |
plugin(Histogram) |
Interactively graphs histogram of a dataset (or ROI) |
1 |
plugin(ScatterPlot) |
Interactively graphs 1 sub-brick vs. another (or ROI) |
4.2.38. Download/install demos¶
4 |
Install Surface Layers demo (combining AFNI and SUMA) from Torrisi et al. |
|
4 |
Install Saleem D99 macaque atlas and template |
|
4 |
Install Subcortical Atlas of the Marmoset (“SAM”) monkey dataset, from Saleem et al. |
|
4 |
Install DBS processing pipeline script |
|
4 |
Install newer FATCAT Demo for DTI processing with fat_proc programs (and including TORTOISE and FreeSurfer processing) |
|
4 |
Install multiecho FMRI (ME-FMRI) processing demo, which includes scripts for running afni_proc.py (including with tedana and older MEICA) |
|
3 |
Install India Brain Templates (IBTs) and atlases (IBTAs), reference volumes across most of human life span for Indian population studies |
|
3 |
Install NIH marmoset template and atlases, from Liu et al. |
|
3 |
Install original FATCAT Demo for DTI + some FMRI processing |
|
3 |
Install FATCAT+MVM statistical modeling demo, multivariate modeling in conjuction with tractography (also applies to correlation matrices such as from 3dNetCorr) |
|
3 |
Install processing examples for task-based FMRI of macaque data, using @animal_warper and afni_proc.py (1 subject) |
|
3 |
Install processing examples for resting state FMRI of macaque data, using @animal_warper and afni_proc.py (6 subjects) |
|
3 |
Install NIMH Macaque Template (NMT) datasets (ver=2 is most recent) and CHARM and D99 atlases; can get both symmetric and asymmetric variants. |
|
1 |
||
1 |
||
1 |
||
1 |
Install demo data for InstaCorr, instant correlation |
|
1 |
Install the demo archive for P Kundu’s MEICA denoising tools |
|
1 |
Install NIH Marmoset atlas and template |
|
1 |
||
1 |
4.2.39. DICOM info and conversion¶
5 |
Read DICOM files on disk or as they are created (i.e., can monitor real-time acquisition of DICOM image files) |
|
5 |
Another choice for converting DCM files (particularly useful for DWI dsets, often) |
|
3 |
Print out selected information from a number of DICOM headers |
|
2 |
Read image files, write AFNI format datasets (not usually directly used) |
|
2 |
Write dataset slices into image files |
|
1 |
Print out information from one DICOM header |
|
1 |
For extracting only the binary image data from a DICOM file |
|
1 |
Partition DICOM images into run directectories |
|
1 |
Dissect one dataset, sends images to AFNI realtime plugin |
|
1 |
Print information from a DICOM file |
|
1 |
Imon |
(obs - use Dimon); Read GE realtime EPI files as they are created |
1 |
plugin(RT Options) |
Control options for AFNI realtime image input |
4.2.40. Copy/convert/manipulate dsets¶
5 |
Copy a dataset to make new files |
|
3 |
Convert 3 scalar datasets to 1 RGB AFNI format dataset |
|
1 |
||
1 |
Read image files, write AFNI format datasets |
|
1 |
Convert AFNI format dataset to ANALYZE format |
|
1 |
||
1 |
||
1 |
||
1 |
||
1 |
(almost useless helpfile… obsolete???) |
|
1 |
Rename dataset files |
|
1 |
Create complex dataset from two sub-bricks |
|
1 |
Create header file only for specified dimensions |
|
1 |
Convert RGB coloration to HSL values; typically intermed step in viewing prob. tracking results. |
|
1 |
4.2.41. Changing dset spatial structure¶
5 |
Rewrite dataset in new orientation, with new voxel size |
|
4 |
Rotate brain to have standard viewing planes along slices |
|
3 |
Flip dataset contents Left <-> Right |
|
1 |
Rewrite dataset with slices in different direction |
4.2.42. Change dset temporal structure¶
1 |
Upsample in time (to a shorter TR), by integer factors (output will be float format) |
4.2.43. Supplementary/open programs included in AFNI¶
1 |
Compress an image file to a JPEG file, with various control options for type upsampling/downsampling, etc. |
|
1 |
Decompress a JPEG file to an image file |
|
1 |
Concatenate series of GIFs into a single one |
|
1 |
mpeg_encode |
Convert sequence of images into MPEG movie |
4.2.44. Supplemental/underlying programs (no desc needed)¶
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
4.2.45. Simulate/generate dsets¶
1 |
Generate 3D+time dataset from 1D model and noise; the time series for each voxel is generated according to a user specified signal+noise model. |
|
1 |
Simulate datasets and estimate statistical power |
|
1 |
Like 3dClustSim, but for surface data. |
|
1 |
Companion to slow_surf_clustsim.py |
|
1 |
Simulate datasets via convolution (for testing 3dDeconvolve) |
|
1 |
Compute stimulus time series given activation map and 3D+time dataset |
|
1 |
Make a simulated DWI set with random noise, from DT+gradient information |
|
1 |
Generate synthetic ARMA(1,1) correlated time series, to test 3dREMLfit |
4.2.46. Miscellaneous visualization tools¶
3 |
AFNI Image Viewer program; shows 2D images from the command line in an AFNI-like image viewer, and can also read images in NIML format |
|
3 |
Take a 3D+time dataset and make a summary 2D image for data quality review; can organize and scale in different ways |
|
1 |
Open various AFNI/SUMA files (*.xmat, *.pdf, etc.) |
|
1 |
plugin(Render[new]) |
Interactive volume rendering |
1 |
plugin(Dataset#N) |
Graph extra dataset time series in AFNI graph viewer |
4.2.47. Miscellaneous utilities¶
5 |
Simple+approx string searching; used in atlases and helps |
|
4 |
Generate numbered strings for command line scripts |
|
4 |
Display a log of updates to AFNI code |
|
3 |
A command line calculator (like 3dcalc) |
|
3 |
Compute probabilities, thresholds for standard distributions |
|
2 |
Calculate (i, j, k) indices in a volume from (x, y, z) coordinates |
|
1 |
Report the byteorder of the current CPU |
|
1 |
Create an audio file from a 1D file (= columns of numbers in ASCII format); fun but not very useful |
4.2.48. Unclassed¶
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
||
1 |
qdelaunay |
|
1 |
qhull |
4.2.49. Retired (no longer in the build)¶
0 |
3dAFNItoMINC |
Convert AFNI format dataset to MINC format (MINC now extinct) |
0 |
3dMINCtoAFNI |
Convert MINC format dataset to AFNI format (MINC now extinct) |
0 |
AlphaSim |
(obsolete -> used 3dClustSim) |
0 |
3dFWHM |
(obsolete -> use 3dFWHMx) |
0 |
3dMax |
(obsolete -> use 3dBrickStat) |
0 |
@auto_align |
(obsolete -> use align_epi_anat.py or 3dAllineate) |
0 |
@UpdateAfni |
(obsolete -> use @update.afni.binaries) |
0 |
3dANALYZEtoAFNI |
(obsolete -> use 3dcopy or to3d) |
0 |
Dimon1 |
(obsolete -> use Dimon) |
0 |
3dCountSpikes |
(obsolete -> use 3dToutcount) |
0 |
3dfim |
(obsolete -> use 3dDeconvolve) |
0 |
3dUniformize |
(obsolete -> use 3dUnifize) |
0 |
@DTI_studio_reposition |
(probably obsolete) |
0 |
@make_stim_file |
(obsolete -> use timing_tool.py) |
0 |
3dICC_REML.R |
(obsolete -> use 3dICC) |
0 |
3dAOV.R |
(obsolete -> use 3dMVM) |
0 |
lpc_align.py |
(obsolete -> use align_epi_anat.py or 3dAllineate) |
0 |
afni_restproc.py |
(obsolete -> use afni_proc.py) |
0 |
@snapshot_volreg3 |
(obsolete -> use @snapshot_volreg) |
0 |
1dDW_Grad_o_Mat |
(obsolete -> use 1dDW_Grad_o_Mat++) |
0 |
3dProbTrackID |
(obsolete -> use 3dTrackID) |
0 |
3dFourier |
(obsolete -> use 3dBandpass) |
0 |
3dttest |
(obsolete -> use 3dttest++; for “3dttest -base ..” functionality, use “3dttest++ -singletonA ..”) |
0 |
3dAnatNudge |
(obsolete -> use align_epi_anat.py, 3dAllineate or Nudge plugin) |
0 |
3ddup |
(obsolete -> use 3dcopy or something else to make new dset) |
0 |
3dDeconvolve_f |
(obsolete -> use 3dDeconvolve) |
0 |
DoPerRoi.py |
|
0 |
3dbuc2fim |
|
0 |
3dnoise |
|
0 |
3dproject |
|
0 |
3dWavelets |
|
0 |
abut |
Create zero-filled slices to put into dataset gaps |
0 |
ent16 |
|
0 |
ftosh |
|
0 |
ge_header |
Print information from a GE I. file |
0 |
Ifile |
Read GE realtime EPI files and runs to3d |
0 |
check_dset_for_fs.py |
not needed |
0 |
mayo_analyze |
Print information from an ANALYZE .hdr file |
0 |
mritopgm |
|
0 |
siemens_vision |
Print information from a Siemens Vision .ima file |
0 |
sqwave |
Generate a square wave (a very old program) |
0 |
Xphace |
|
0 |
FD2 |
|
0 |
fat_lat_csv.py |
Make latent variables for CSV file data using factor analysis; esp for fat_mvm* usage |
0 |
fat_mvm_review.py |
(only beta) |
0 |
fat_proc_grad_plot |
(to be) replaced by newer version |
4.2.50. R programs (written in R; called by other programs)¶
0 |
1dGC.R |
|
0 |
1dRplot |
|
0 |
1dRplot.R |
|
0 |
1dSVAR.R |
|
0 |
3dGC.R |
|
0 |
3dICA.R |
|
0 |
3dICC.R |
|
0 |
3dKS.R |
|
0 |
3dMEMA.R |
|
0 |
3dPFM.R |
|
0 |
3dRowFillin |
|
0 |
3dRprogDemo |
|
0 |
3dRprogDemo.R |
|
0 |
3dSignatures.R |
|
0 |
AFNI_Batch_R |
|
0 |
AFNIplot.R |
|
0 |
afni_run_R |
|
0 |
ExamineXmat.R |
|
0 |
FIRdesign |
|
0 |
Level2.R |
|
0 |
@R_funclist |
|
0 |
Signatures.R |
|
0 |
smooth.R |