Need some detail idea regarding GSOC 2010 for OpenCV DSP acceleration

Hi,
I am looking forward to work on GSOC 2010 for OpenCV DSP acceleration.
OpenCV is one of the intensively used computer vision library in
industry and academics. Accelerating such algorithm using DSP on
beagleboard can leverage the development of more vision based
application on embedded platform.
I am a graduate student at UTTyler. I have used OpenCV for
benchmarking one of its algorithm cvMatchTemplate on Beagleboard.
Also, I have been working on the DSP side of the Beagleboard to find
out how much acceleration is possible for the same algorithm.
Previously, I had planned to accelerate this algorithm in OpenCV using
DSP. But, as I see now that Beagleboard.org has listed the same on its
project list for GSOC 2010, I would love to work on it. I plan to work
on acceleration of few of its low level algorithms as the time
duration may limit on the number of algorithms that can be ported.
I do not have any knowledge about the xdias frame work but I am
willing to learn about it.

Also, I am looking forward for some suggestion regarding this idea
from the community.

Thanks,
Pramod Poudel

Hi,
I am still looking for some advice regarding this topic. Could someone
give me some suggestion.

Hi,
I am still looking for some advice regarding this topic. Could someone
give me some suggestion.

> Hi,
> I am looking forward to work on GSOC 2010 for OpenCV DSP acceleration.

Great!

> OpenCV is one of the intensively used computer vision library in
> industry and academics. Accelerating such algorithm using DSP on
> beagleboard can leverage the development of more vision based
> application on embedded platform.

Agreed. Several people already make use of the BeagleBoard for
running OpenCV.

> I am a graduate student at UTTyler. I have used OpenCV for
> benchmarking one of its algorithm cvMatchTemplate on Beagleboard.

Great! It would help if you could provide a link to your results as
part of your application. This proves to us that you can actually run
code on your BeagleBoard and profile it. That is a notable advantage
to not being able to show that.

> Also, I have been working on the DSP side of the Beagleboard to find
> out how much acceleration is possible for the same algorithm.

Can you describe the tools you've used to communicate with the DSP and
what you've done with this? This is also a very positive aspect.

> Previously, I had planned to accelerate this algorithm in OpenCV using
> DSP. But, as I see now that Beagleboard.org has listed the same on its
> project list for GSOC 2010, I would love to work on it. I plan to work
> on acceleration of few of its low level algorithms as the time
> duration may limit on the number of algorithms that can be ported.
> I do not have any knowledge about the xdias frame work but I am
> willing to learn about it.

Great!! Get your application in. The deadline is only 9 hours away
from when I hit Send!!!

Pramod wrote:

Hi,
I am still looking for some advice regarding this topic. Could someone
give me some suggestion.

Hi,
I am looking forward to work on GSOC 2010 for OpenCV DSP acceleration.
OpenCV is one of the intensively used computer vision library in
industry and academics. Accelerating such algorithm using DSP on
beagleboard can leverage the development of more vision based
application on embedded platform.
I am a graduate student at UTTyler. I have used OpenCV for
benchmarking one of its algorithm cvMatchTemplate on Beagleboard.

and? how does it benchmark?

Also, I have been working on the DSP side of the Beagleboard to find
out how much acceleration is possible for the same algorithm.

and? what did you find out?

Hi Pramod,
  Can you provide a list of the algorithms from OpenCV you believe would be most valuable to port and accelerate? I imagine you would realistically only be able to accelerate a few over the summer. Listing the ones which are of special interest to you would also enable others to focus on porting and complimenting a complimentary set. If you have some specific application(s) in mind you would like to enable with these, I believe it will help motivate the perceived value of your effort. For example, say you make the algorithm you describe twice as fast on the platform - what does this mean from an application perspective? What other things could then be able to run together that previously couldn't? How much speed up and of which algorithms do you need to achieve in order to enable new applications of interest to the community?
BR,
Leo

Hi,
Thanks for your response.

Jason,

Can you describe the tools you've used to communicate with the DSP and
what you've done with this? This is also a very positive aspect.

I have used DSPLINK to communicate with DSP. I have extended example
applications like LOOP and MESSAGE to find convolution in time-domain
and frequency domain.

Vladimir,

and? how does it benchmark?

It uses code profiling to calculate execution time.

and? what did you find out?

I am still working on the DSP side.

Leo,

I also believe only few algoritms could be accelerated during summer.
I am currently working on cvMatchTemplate. I think at this point some
of computation intensive algorithms is worth porting. Algorithms for
motion analysis and object tracking like calculation of optical flow,
CamShift algorithm; also, some utility operations would be useful.

Thanks,
Pramod