Materials
The Perl Programming Language: Perl stands for the Practical Extraction and Report Language. As the name implies, Perl is a very good language for processing large amounts of data. Perl does very well at being the glue between different programs and libraries (in my case SIFT and FANN), and it is a relatively high level language, letting the programmer concentrate on program flow and logic.
The Fast Artificial Neural Network Library (FANN) - FANN is an open source artificial neural network library, written in C, with several bindings for different languages. FANN supports fully and sparsely connected networks, along with several training algorithms and activation functions. I chose to use FANN over writing my own neural network library because this project is not to implement a neural network library but to test neural networks with image recognition.