Image Processing and Classification
Nowadays, analyzing images has become a very important task for Artificial Artificial problems such as the Autonomous Driving, object detection, intelligent cameras and also facial detection.
Therefore, this is done with complex algorithms that are based on the convolutional operation. This operation consists on editing a feature image with some filters (kernels) that will be applied to get a transformed image.
The input image will be an RGB image but it can also have one channel (black and white image). This will vary the depth of the RGB image and also the channel. Also RGB images can be resized with a depth of 1 depending on their amount of colour.
Each filter will be a three dimensional array (width, height, depth) with some values.
These values will vary depending on the purpose. These values can be asigned in two different ways depending on their used
- Predifined Filters
- Learning filters for Machine Learning (Convolutional Neural Networks)
Now we will analyze each of them
Predifined Filters for Image Proccessing
This type of filters have been used for a long time with respect to the modern Convolutional Neural Networks in machine learning. They are very useful to reconstruct and proccess and image with different patterns.
Here I will saw some examples of filters for differents finalities:
With this filter we can apply the convolution operation to get the most important pixels that represent the edges of the image.
This is a popular effect that create cool effects in images. It is usually combined with Artificial Intelligence algorithms to blur the background and not the front object or person. Also commonly known as Portrait Mode
The blur effects also have a predifined filter:
Finally we have the sharpenss effect that is the opposite to the blur:
Convolutional Neural Network Filters for Image Processing
Convolutional Neural Networks are widely used for complex problems of image classificiation and detection. With some layers we can get output values that will be the prediction of the network. This network contain also convolutional layers. This layer have also filters that will have been initialized randomly. However with the backpropagation training method we will update these filters to obtain better filters that simplify the images and remark the most important parts of them.2