An efficient CUDA-based approximate two-dimensional dynamic programming algorithm for advanced computer vision applications
Description
Dynamic programming is a popular optimization technique, developed in the 60's and still widely used today in several fields for its ability to find global optimum. Dynamic Programming Algorithms (DPAs) can be developed in many dimension. However, it is known that if the DPA dimension is greater or equal to two, the algorithm is an NP complete problem. In this paper we present an approximation of the fully two-dimensional DPA (2D-DPA) with polynomial complexity. Then, we describe an implementation of the algorithm on a recent parallel device based on CUDA architecture. We show that our parallel implementation presents a speed-up of about 25 with respect to a sequential implementation on an Intel I7 CPU. In particular, our system allows a speed of about ten 2D-DPA executions per second for 85 × 85 pixels images. In the experimental Section of the paper we report some image warping examples performed with our CUDA-based 2D-DPA and speed-up figures.
Additional details
- URL
- http://hdl.handle.net/11567/887236
- URN
- urn:oai:iris.unige.it:11567/887236
- Origin repository
- UNIGE