What is CNN?
Source: https://towardsdatascience.com/a-comprehensive-guide-to-convolutional-neural-networks-the-eli5-way-3bd2b1164a53
Fig. 1. Architecture of convolutional neural networks
Artificial Intelligence and Deep Learning have been witnessing massive growth in current years because of the advancement of technology. Researchers and programmers work on multitudinous aspects of the field to make astounding things happen. One of the main domains is the sphere of Computer Vision.
The agenda for this field is to enable machines to examine the world as humans do, perceive it in an analogous manner, and indeed use the knowledge for a multitude of tasks similar to Image & Video recognition, Image Analysis & Classification, Object Detection, Language Processing, etc. The progress in Deep Learning applied to Computer Vision has been constructed and perfected with time, primarily over one method — a Convolutional Neural Network.
A Convolutional Neural Network - CNN is a type of neural network that differs from other neural networks because of its convolutional layer, the convolutional layer has a number of components; input data, filters (matrices used to extract features), and a feature map, the feature detector will iterate over the input and check if the feature is present by the use of filters, this process is known as convolution.
What is R-CNN?
Source: https://analyticsindiamag.com/r-cnn-vs-fast-r-cnn-vs-faster-r-cnn-a-comparative-guide/
Fig. 2. Architecture of region-based convolutional neural networks
Region-based CNN i.e., R-CNN is an object recognition model that uses CNN on various ‘regions’ to carry out various operations, segmentation, localization, etc. It uses selective search to identify several bounded areas and then extracts features from each of them for independently performing classification for each area, this technique is called region proposal. It was first innovated in the paper “Rich feature hierarchies for accurate object detection and semantic segmentation”.
An input image received by the R-CNN goes through various stages:
- Region proposal algorithm with selective search recognizes and ‘selects’ various regions for passing through CNN.
- CNN will extract features from each region by passing each region through it giving output.
- Feature vectors are then ‘fed’ to an SVM (Support Vector Machine) for classification.
Object Detection and Segmentation with R-CNN
Source: https://www.semanticscholar.org/paper/Region-Based-Convolutional-Networks-for-Accurate-Girshick-Donahue
Fig. 3. R-CNN regions with CNN features
Selective Search
In computer vision, object detection, and segmentation is the process of detecting and segmenting objects in images. There are many different methods for doing this, but one of the most popular is selective search. Selective search is a method of object detection that starts by creating a set of initial proposals, or candidate regions, which are then refined using several different algorithms. Selective Search is a technique for finding objects in images. It is a bottom-up approach that starts with small objects and then expands them to larger ones. The idea is to take a small image and find all the objects in it. This is done by first finding all the edges in the image, then grouping the edges into objects. The process is then repeated with larger images until all the objects in the image have been found.
The goal is to eventually produce a set of high-quality object proposals, which can then be used for further processing, such as object classification or instance segmentation. The R-CNN (region-based convolutional neural network) is a type of neural network that is particularly well-suited for this task. R-CNNs have been used for a variety of different tasks, including object detection, semantic segmentation, and even human pose estimation. One of the advantages of using R-CNNs for object detection is that they can be trained end-to-end, meaning that the entire process can be learned from data, without the need for manual feature engineering. This is a significant advantage over traditional object detection methods, which often require a lot of hand-tuning to get good results.
The advantage of Selective Search is that it is fast and accurate. It is also able to find objects in images that are cluttered or have multiple objects. The disadvantages of Selective Search are that it is not as accurate as some other methods, and it can be slow.
Feature Extraction
Source: https://medium.com/@selfouly/r-cnn-3a9beddfd55a
Fig. 4. Block diagram for Feature extraction using CNN
Classification
Types of R-CNN
Fast R-CNN as its name suggests is a fast version of regular R-CNN, instead of using a max pool layer we utilize the region of interest pooling. ROI pooling produces feature maps of a single size from the various sized input regions by doing max-pooling of the inputs. The main advantage of this method is the use of a single feature map for all regions proposed enabling us to pass an entire image to the CNN.
Comparison
Table. 1. Comparison between R-CNN, Fast R-CNN, Faster R-CNN, and Mask R-CNN
Conclusion
Region Based CNN’s and their variants work through the aforementioned techniques to reduce computation time and make neural networks more capable of object detection tasks with the combined use of feature maps, region searching techniques, and neural networks. R-CNN is a powerful and innovative tool in Deep Learning to help advance the field and its application in object detection and segmentation, the full potential of this technology is still being discovered and utilized for various problems in artificial intelligence. It is a pioneering technique in the hand of any Deep Learning engineer.
This blog is a small endeavor to compile and make accessible information regarding the same and to contribute to the pool of knowledge available.
Informative :)
ReplyDeleteVery very informative! Keep it up!
ReplyDeleteIntresting and Informative..!!
ReplyDeleteAwesome ;)
ReplyDeleteQuite informative and well written 👍
ReplyDeleteVery informative
ReplyDeleteVery Informative and Useful 👍
ReplyDeleteGreat!!
ReplyDelete