Ask Your Question

Gaussian Filters with ORB

asked 2016-05-27 03:34:19 -0500

WhoAmI gravatar image

updated 2016-05-27 03:59:22 -0500

Hello All,

I am a student and currently doing my project in the field of Image recognition using Feature Point detectors and descriptors. I have no prior knowledge on the topics of Image recognition techniques before starting of this project and then I have researched on the available detectors and descriptors and came to know about the differences between them. Finally, I have opted out to work with the ORB detectors and descriptors for Image recognition (If it didn't worked according to my requiremnets then I would like to go out with the BRISK later).

As of now am in a stage of getting the results for Image recognition using ORB. At this Point, I was thinking of to use Gaussian Filters in my code so that I can get better results even though the Input Image is a bit blur.

My questions:

1) Is it possible to use Gaussian filters with ORB to get much better results for Image recognition?

2) When I read the paper on ORB I came to know that the lines below

FAST does not produce a measure of cornerness, and we have found that it has large responses along edges. We employ a Harris corner measure [11] to order the FAST keypoints. For a target number N of keypoints, we first set the threshold low enough to get more than N keypoints, then order them according to the Harris measure, and pick the top N points. 

FAST does not producemulti-scale features. We employ a scale pyramid of the image, and produce FAST Features (filtered by Harris) at each level in the pyramid.

ORB provides the Harris Corner inorder to detect the corners in an image and is it worth for me to use Gaussian Filters along with ORB?

3) ORB uses only Harris Corner to detect the corners or any other?

Please let me know about this and just enlighten me on the above mentioned questions.

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2016-05-27 17:30:01 -0500

Tetragramm gravatar image

ORB does use gaussian filters in at least one portion of the algorithm. When creating the scale pyramid for the FAST points, it uses GaussianBlur to blur each level before resizing it smaller.

ORB finds a list of keypoints with FAST, but some of them are edges, which are no good, so it finds the Harris Corner score for each of those points, and keeps the best however many you need. It could use a different corner score, but you would need to re-write the code to use that instead.

To answer your first question, it depends on how you want to use the Gaussian filters. If you are using just enough to remove noise from your images, it may help. Other than that, I can't think of anything that would be improved by using Gaussian filters.

edit flag offensive delete link more


Perfect and simple answer!!

WhoAmI gravatar imageWhoAmI ( 2016-05-31 03:17:34 -0500 )edit

Dear Tetragramm, I thought of going with Gaussian filters as the accuracy of my ORB is just 60%. I just had a look on RANSAC and am thinking of working with RANSAC in ORB to remove the outliers as it will increase the accuracy. Does RANSAC in ORB improves the accuracy or it is not a good approach. Could you let me know how can I improve my ORB Performance please

WhoAmI gravatar imageWhoAmI ( 2016-05-31 08:30:44 -0500 )edit

So your real question is, "How do I get better results with ORB?" Why don't you start a new question showing what you're doing, with sample images to show the problem you're having. Without knowing what you're trying to do, all I can really do is re-iterate what's on Wikipedia and show you where OpenCV already uses RANSAC and Gaussian Filters.

Tetragramm gravatar imageTetragramm ( 2016-06-01 07:44:48 -0500 )edit

Question Tools

1 follower


Asked: 2016-05-27 03:34:19 -0500

Seen: 745 times

Last updated: May 27 '16