Object detection with R-CNN?

Shamane Siriwardhana picture Shamane Siriwardhana · Apr 14, 2017 · Viewed 7.2k times · Source

What does R-CNN actually do? Is it like using features extracted by CNN to detect classes in a specified window area? Is there any tensorflow implementation for this?

Answer

Amitay Nachmani picture Amitay Nachmani · Apr 14, 2017

R-CNN is using the following algorithm:

  1. Get region proposals for object detection (using selective search).
  2. For each region crop the area from the image and run it thorough a CNN which classify the object.

There are more advanced algorithms that are built upon this like fast-R-CNN and faster R-CNN.

fast-R-CNN:

  1. Run the entire image through the CNN
  2. For each region from the region proposals extract the area using "roi polling" layer and than classify the object.

faster R-CNN:

  1. Run the entire image through the CNN
  2. Using the features detected using the CNN find region proposals using a object proposals network.
  3. For each object proposal extract the area using "roi polling" layer and than classify the object.

There are a lot of implantation in tensorflow specifically for faster R-CNN which is the most recent variant just google faster R-CNN tensorflow.

Good luck