The 6th point is wrong. Filters do linear combination with group of pixels (depends on filter size) and move over the image and continue to do linear combination operation until it finishes the whole image. Please look at [2D convolution in CNN][1] I would explain CNN following way: CNN is a kind of neural network that generally contains many convolutional layers and one or two fully connected layers. The purpose of the convolutional layers is feature extraction. Each of the convolutional layers contains many kernels. The purpose of the kernel is to extract different types of features. E. g. Edge, color, shape, and so on. Finally, fully connected layers at the end of the network decide the output based on the features that were extracted by convolutional layers. The advantage of CNN is that we can learn feature extraction kernels based training images. If you look earlier days of image processing. You can see the image processing community used convolution for feature extraction all the time. They were just using selective kernel for feature extraction. E. g. Sobel operator for edge detection. [1]: http://cs231n.github.io/convolutional-networks/