Ask Your Question
0

improve recognition performance using SURF

asked Jul 22 '13

kpcamota gravatar image

i tested surf for feature extraction and flann to match descriptors to a certain image. I was able to do it in real time having 3 different source image to compare. It was working but the performance was very slow on 640x480, decreasing the resolution by 320x240 increases the performance but unfortunately I need to work on 640x480 because of Kinect Sensor. I have a good pc specs: intel core i7, 6gb ram but still the performance slow.

i had been reading about multi-threading. But OpenCV's GPU and OpenCL does not support my Intel HD graphics 3000. So how could I do multi-threading to improve surf performance. Note: I am using Kinect Sensor as my camera, VC++, OpenCV 2.4.5

Preview: (hide)

Comments

Are you sure that your graphics cards isn't supported? By default openCV isn't build with GPU support. In order to get GPU support or OpenCL support, you need to rebuild openCV with the GPU and OpenCL options enabled.

StevenPuttemans gravatar imageStevenPuttemans (Jul 22 '13)edit

@steven I have Intel Mobile HD Graphics 3000 which is shown here: http://www.intel.com/support/graphics/sb/CS-033757.htm

and GPU support are for nVidia graphics card right? so not possible for me. I want to make sure my laptop is support by gpu or opencl before I rebuild opencv w/ gpu and opencl

kpcamota gravatar imagekpcamota (Jul 22 '13)edit

Right, GPU is for nvidia cards, opencl should work though.

Guanta gravatar imageGuanta (Jul 22 '13)edit
1

GPU interface is indeed based on CUDA & nvidea cards. However, OpenCL can also be used to access GPU cards without problem. So the quote 'gpu is for nvidea cards' is kinda harsh :D So basically OpenCL is the way to go. Your should be supported by openCL, the fact your graphics card is not from nvidea, is one of the main reasons openCL exists :)

StevenPuttemans gravatar imageStevenPuttemans (Jul 23 '13)edit

1 answer

Sort by » oldest newest most voted
1

answered Jul 22 '13

Guanta gravatar image

For which scenario do you want more speed? Tracking? Then for speeding your process, I'd use binary features in conjunction w. either BruteForce-Matcher using Hamming Distance or if it is not tracking but more matching 1:N , then use flann with LSH.

Preview: (hide)

Question Tools

Stats

Asked: Jul 22 '13

Seen: 700 times

Last updated: Jul 22 '13