<< Chapter < Page Chapter >> Page >

Scale-invariant feature results

Sift results on image of rice

Rice SIFT
The curves are well detected but horizontal and vertical lines are lost.

Sift results on bibo bear

A dog sitting on a bed
The words BIBO can be seen on the bear's chest.

Sift results on president leebron

A dog sitting on a bed
It is evident that it is the image of a person.

Although SIFT is extremely useful, it cannot easily find vertical or horizontal lines because they are not considered feature points. Since our image templates were made up of almost all straight lines, we had a significant issue. Due to time constraints we chose to implement the edge functions in MatLab. Instead of passing the results of SIFT into the Hough Transform and Moment of Inertia we passed the results of the edge functions in MatLab.

Results of matlab functions

Results of passing a test image into matlab edge functions

A dog sitting on a bed

Clearly the edge results from matlab are much more suited to our type of test images.

Hough transform results

A dog sitting on a bed
The Hough Transform of the template image.

A dog sitting on a bed

A dog sitting on a bed

Even with noise same peaks are found.

A dog sitting on a bed

A dog sitting on a bed
Same peaks are found with noise.

A dog sitting on a bed

A dog sitting on a bed

With this amount of noise the peaks are still found. As long as the noise does not interfere with the edges the peaks will always be found. However, if the edges are lost then the Hough Peaks will be incorrect.

Moment of inertia results

Description of steps in demo

  1. Read in the image as a matrix of type ‘double’ and turn it into a logical array (im2bw function)
  2. Using bwboundaries functions, find all connected boundaries (default is 4-connectedness of pixel)
  3. Iterate through all closed boundaries and mask all pixels within boundary to be 1 and 0 outside the boundary
  4. Find the moment of inertia of the masked images which is normalized by the square total number of pixels

A dog sitting on a bed

Moment of inertia method on simple image

A dog sitting on a bed

Moment of Inertia Method works perfectly on a test image without overlaps where the shapes are significantly different.

However, bwboundaries returns closed boundaries which would create problems when you have intersection of lines.

Moment of inertia method on image with overlaps

A dog sitting on a bed

We can clearly see from the previous images that the function now detects 4 objects instead of the three that we are interested in, shown below as the two larger squares traced out by red outline and the smaller one filled by the color green.

A dog sitting on a bed

Moment of inertia method on image with similar shapes

A dog sitting on a bed

In the above image, objects in the top right and top left corners of the subplots differ in moment of inertia by 0.703%, in spite of having drastically different shapes. However, we note that such algorithm would only produce false positive.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, A comparison of object recognition using the hough transform and the properties of moment of inertia. OpenStax CNX. Dec 16, 2014 Download for free at http://legacy.cnx.org/content/col11727/1.4
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'A comparison of object recognition using the hough transform and the properties of moment of inertia' conversation and receive update notifications?

Ask