Object Detection on 2D Images

In this post, we are going to demonstrate that how to detect objects on still images with Python and OpenCV. This post will focus on feature extraction, then following posts will demonstrate how to use features extracted to train models with samples, and detect objects against test images.

In real estate industry, swimming pool is an important factor in pricing a house. One popular approach to price a house is using a clustering algorithm to figure out the mean value in a certain area, then factor in other important auxiliaries to estimate a final price.

Once swimming pools can be detected from pictures by a machine learning algorithm, the process of price estimation may be automated.

To train such a supervised learning model, we need to extract features from image data. Here we demonstrate how to use OpenCV and Python to implement feature extraction. Note that this step maybe accomplished by a Deep Learning technique such as a R-CNN architecture during convolution.

The idea is that swimming pools are bluish, so we construct HSV masks in certain ranges and apply them to image data. We then use the filtered images as features to train a supervised learning model. This model may be used to detect swimming pools in unseen images.