open source, neuro, learning, collaboration, sound theory, solid results


theory-driven, experimentally verified open-source software for imaging and neuroscience.
  • zInSANE
  • zPipedream
  • zNetwork
  • zGlamGlue


ANTs and ANTsR

If you have comments or questions on this software, please refer to the “issues” links available via the above sites.

New ants documentation

To accompany a new release:


ANTs Wordcloud


ANTs application areas & research topics

ANTs leads in open competition / evaluation

The SyN Paper is one of the most cited in Medical Image Analysis since 2008

Advanced Normalization Tools finished first overall in three different competitions that test the reliability, reproducibility and accuracy of our image registration and segmentation methods.   This is joint work with Nick Tustison, Gang Song, Paul Yushkevich, Hongzhi Wang and Hans Johnson.

Each of these was conducted in a blinded fashion and judged impartially on hidden data.  These types of open competitions provide a more accurate window into the rigor and reliability of methods in real world scenarios.

1)  Klein 2009 brain mapping competition

2) Murphy 2011

3) Multi-atlas challenge MICCAI 2012

The conclusion of this workshop was that the registration tool strongly impacts performance ( all the top finishers used ANTs ) and that, in future workshops , everyone should use ANTs (or another equally good tool). This would allow pure testing of the multi-atlas labeling approach.


updated ANTs compile instructions: ITKv4

latest ants binaries are here:   ANTs-Binaries

instructions for linux / osx type installation.   windows works too ( via cmake ) but i dont have specifics.

to compile ants from the source code, you first need: git, cmake and a c++ compiler

then in a terminal, do:

>  git clone git://

>  mkdir antsbin

> cd antsbin

>  ccmake ../ANTs

then go into cmake and type “c” and then “g”  then exit back to the
terminal.   then:

>  make -j 4

and wait a while.

to update an existing ANTs install, go to the ANTs directory and type “git pull origin master”

Don’t forget to toggle to advanced and turn off

SuperBuild_ANTS_USE_GIT_PROTOC if behind firewall

gcc 4.6.1 on osx lion

got gcc 4.6.1 installed on lion.   why do you want gcc?

basically, better warnings, faster compilation and better optimization.   i was mainly interested in the fact that it finds errors that lion’s 4.2 misses.

i tried to simplify these instructions a bit (which are excellent):

if you have homebrew installed, the first couple steps become:

1.  brew install gmp

2.  brew install mpfr
3.  then get mpc 0.8.1 from here:
../configure --prefix=$HOME/my_gcc --with-gmp=/usr/local/Cellar/gmp/5.0.2/lib/ --with-mpfr=/usr/local/Cellar/mpfr/3.0.1/lib/
 make install
note — you may get an error similar to this:
in that case open the relevant failing file and replace GMP_RND with MPFR_RND
then compile gcc 4.6 via :
../configure --prefix=$HOME/my_gcc --enable-checking=release --with-gmp=/usr/local/Cellar/gmp --with-mpfr=/usr/local/Cellar/mpfr --with-mpc=/Users/stnava/my_gcc/ --program-suffix=-4.6.1
make   # could take all day
sudo make install
then create a Makefile:
CFLAGS=-c -Wall
    $(CC) $(LDFLAGS) $(OBJECTS) -lpthread -std=c++0x  -o $@
    $(CC) $(CFLAGS) $< -o $@
in the Makefile, the $(CC) lines shoudl begin with a tab, all others left-justified.
then compile the test.cpp by typing make.
#include <iostream>
using namespace std;
int main()
// below some funky new C++0x syntax ( the next ISO C++ standard. )
  cout<<[](int m,int n){return m+n;}(2,4)<<endl;
  std::cout <<" go surfing " << std::endl;
it should print the number 6 then say "go surfing."

surface analysis and normalization environment