alanlukezic / csr-dcf

Discriminative Correlation Filter with Channel and Spatial Reliability
226 stars 73 forks source link

Why the FPS is low when I run the demo_csr.m file? #7

Closed trikim closed 6 years ago

trikim commented 6 years ago

I follow the instructions to compile the files and success to run the demo_csr.m on Inter Core i7-7700K 4.2GHz. However, the fps is so low, about 6. I have tried some other objects, the results range from 3 to 12 fps. The demo video shows that the tracking speed is high, can reach to 200 fps. Is it because of using gpu devices?

alanlukezic commented 6 years ago

The reported speed of this tracker is cca. 15 FPS on a standard desktop computer without GPU. The demo videos are rendered in post-processing, so the speed is visualized faster to make it easier for the person who watches the video. The tracking positions are the same the tracker provided. If you are interested in real-time aspects of the tracker you should consider trying a C++ version of CSR-DCF which is available in OpenCV contrib tracking module.

trikim commented 6 years ago

@alanlukezic Thank you very much!

trikim commented 6 years ago

@alanlukezic I have tried the C++ version of CSR-DCF in OpenCV contrib tracking module and get 17 FPS with one tracking object. If I add another object, the speed would be decreased to 9 FPS. The tracking accuracy is much better than other methods in the OpenCV contrib tracking module, especially in scalability. Could you give me some advices to increase the speed expect for the parallel processing?

alanlukezic commented 6 years ago

What kind of hardware do you use? The tracker was tested on a standard Intel i7 CPU desktop without using GPU and without parallel processing it runs approximately at 30 FPS.

trikim commented 6 years ago

It tested on i7-7700K with 8 Intel Core under the Ubuntu16.04. The image size is 640*480.

alanlukezic commented 6 years ago

If you are using default parameters it should be at least 2-times faster than you reported. Did you compile in Release mode?

trikim commented 6 years ago

I forget to uncomment the "#define HAVE_OPENCV" at 18 line in the multitracker.cpp under "opencv_contrib/modules/tracking/samples" folder. After I use the "HAVE_OPENCV", it raise the speed to 40 FPS. Thank you!

jirip commented 4 years ago

What kind of hardware do you use? The tracker was tested on a standard Intel i7 CPU desktop without using GPU and without parallel processing it runs approximately at 30 FPS.

Hi. I want to use the tracker for multiple objects, and trying to estimate potential speed. When you say "without parallel processing" do you mean it runs using a single CPU core? So the maximal CPU usage is 100%? Thanks