Here we keep a current list of software packages/tools that are CIFTI file format compliant:

Connectome Workbench 

One platform containing wb_view for surface and volume brain visualization and wb_command command line tools (particularly for CIFTI manipulation)

FSL

The FMRIB team has released FSL version 5.0.10, which includes beta versions of melodic, film, and flameo that are CIFTI-compliant. Additional CIFTI-compliant tools are planned for upcoming release of the FSL 6.0 major update.

PALM

PALM — Permutation Analysis of Linear Models — is a tool that allows inference using permutation methods. It runs in matlab, octave, or from the command-line, and is capable of some processing on CIFTI files.

FieldTrip

specific commands: ft_sourceparcellate, ft_sourceplot, ft_volumewrite, ft_read_cifti, ft_write_cifti

FieldTrip allows MEG/EEG source reconstruction on source models that represent the full brain as a volumetric grid, and/or on the cortical sheet as a triangulated surface. After estimating the activity on the dense (volumetric or surface) source model, FieldTrip allows for averaging of the activity within parcels. Alternatively, FieldTrip allows for specifying the parcels prior to source estimation. The parcellated representation of MEG/EEG source activity is represented in a format similar to channel-level data, i.e. each parcel is represented as channel in the MATLAB data structure. This allows all channel-level analysis tools to be applied on the parcellated source reconstruction.

AFNI/SUMA

specific commands: suma, cifti_tool

SUMA supports displaying cifti data.


Reading HCP data into MATLAB

cifti-matlab v2

specific commands: cifti_read, cifti_write (plus drop-in compatibility for ciftiopen, ciftisave, ciftisavereset)

Version 2 of the cifti-matlab toolbox was mostly rewritten, with a new design that more closely represents the internals of the file format, exposing nearly all of the information in the XML, and providing some helper functions to simplify some common operations.  This is the recommended option for MRI-derived data, as it provides drop-in compatibility with ciftiopen and related functions, and should be faster, with less disk IO.

Workbench v1.0 (or greater) + GIFTI toolbox code

specific commands: ciftiopen, ciftisave, ciftisavereset

These functions allow the use of CIFTI files in MATLAB by using wb_command to convert to pseudo-GIFTI format and the GIFTI toolbox matlab library to read them. ciftiopen does not parse the XML within the file, meaning that additional external commands are necessary to determine what the CIFTI indices represent (which vertex or voxel, etc).

cifti-matlab v1 (previous version)

specific commands: ft_read_cifti, ft_write_cifti

The cifti-matlab toolbox contains a subset of functions from the FieldTrip toolbox to facilitate the use of CIFTI files and MATLAB without having to install the entire FieldTrip toolbox. The FieldTrip-based cifti-matlab toolbox does some translation of the CIFTI file to match what FieldTrip can take as input, resulting in some changes to the indices of the data matrix.