Make use of dual or multi core with OpenCV (ARM cortex A9)

asked 2014-01-21 15:44:32 -0600

nLs gravatar image

I have a recently purchased a panda board. The board is equipped with an ARM Cortex A9 processor which has a 1 ghz dual core. For the ARM processor I can not take advantage of multi-core processing that OpenCV supports. (this a bit disappointing, maybe a single core A8 processor would have been better)

I would like to implement object/face tracking. does anyone has any experience with splitting these kind of things up in threads so I can speed up stuff and not be limited by one processor core?

Options that I have thought of are: 1. Have one thread for capturing an image from the webcam and send that to second separate thread for running the object detection?

  1. Get an image from the webcam and split up the image in two separate images and have the two parts being processed by two separate threads.

Since I think processing the images takes the most time, I thin the second option would be the best right?

edit retag flag offensive close merge delete


Hi @nLs, I am also using opencv on a Cortex A9 processor. I would like to know what makes you think that you can not take advantage of multi-core processing ?

In fact, I have a problem : my program is running low with this proc, despite some optimization flags put during compilation.

Did you manage to achieve some optimizations with multi-threading or something else ?

Major Squirrel gravatar imageMajor Squirrel ( 2016-06-07 13:16:43 -0600 )edit