In my thesis I describe the structure, application and FPGA implementation of convolutional neural networks. The convolutional neural networks are similar to the conventional feedforward neural networks, however their structure is more complicated, they contain several types of layers. Their most important application is computer vision. Currently the convolutional neural networks are the state of the art methods for image classification and object recognition.
Running convolutional neural networks is computationally intensive, thus the implementation of ConvNets on GPU or FPGA is reasonable. Currently the GPU based solutions are common, but the FPGA implementation is considered to be quite advantageous. The FPGA implementation offers good computation capability with low power consumption, thus it is well suited for embedded systems. In my thesis I thoroughly review the implementation of convolutional neural networks on FPGAs and I present the concrete implementation of a ConvNet capable of doing object recognition.