Main concepts of CNNs
Recently, Deep Neural Networks (DNNs) have given fresh impetus to research and therefore they are being used widely. CNNs are a special type of DNN, and they have been used with great success in image classification problems. Before diving into the implementation of an image classifier based on CNNs, we'll introduce some basic concepts in image recognition, such as feature detection and convolution.
In computer vision, it is well known that a real image is associated with a grid composed of a high number of small squares called pixels. The following figure represents a black and white image related to a 5×5 grid of pixels:
Each element in the grid corresponds to a pixel. In the case of a black and white image, a value of 1 is associated with black and a value of 0 is associated with white. Alternatively, for a grayscale image, the allowed values for each grid element are in the range [0, 255], where 0 is associated...