High Performance GPU-Based Anisotropic Diffusion Filtering

This page contains supplemental material for the following paper:

High Performance GPU-Based Anisotropic Diffusion Filtering

The Anisotropic Diffusion Filter (ADF) [1, 2] is a powerful image processing technique for noise removal and edge detection operations, assisting on image filtering and segmentation processes, potentially playing an important role in image analysis and computer vision. However, this technique has received little attention in the development of real-world applications due to its high computational cost, which renders it as a solution that is not practical where processing time is critical, such as robot navigation or industrial automation.

Today’s performance of GPUs along with recent improvements in its programmability, have made GPUs a compelling platform for computationally demanding tasks in a wide variety of application domains[3, 4, 5, 6, 7, 8, 9] . Given the characteristics of the ADF algorithms, the GPGPU-approach is a candidate for a simple low-cost performance enhancement of ADFs in common computers, even turning ADFs into real-time capable applications.

Here we present a comparison between CPU and GPU implementations in order to point out the main performance differences. The resulting images of processing are avaiable on another section of this website. Given the differences in the rounding precision of floating point numbers between CPUs and GPUs [10], we evaluate and present these differences using well-established criteria providing a qualitative validation of our implementation through a method known as cross-normalized correlation, which is a technique widely used to compare two images in order to find matching subimages or to perform co-registration of images.

We validate our approach using three different platforms as our GPUs: the NVIDIA GeForce 8800GTS, the NVIDIA GeForce 7600GT and the NVIDIA GeForce 6600, in contrast to the Intel Core 2 Duo 3.0GHz CPU.

Besides providing the image results obtained with the ADF, we devised a very simple but effective validation procedure: we compared the processing resulting images with the reference CPU implementation to the results of each GPU implementation using cross- normalized correlation [11]. The most common way to use CC is its normalized form [17, 20], which gives a real number within the interval [0…1] meaning no correlation at all (CC=0) or perfect match (CC=1).

Browsing

By Processor results. CPU results: lists all CPU processing results for the tested images with an Intel Core 2 Duo 2GHz.

GPU results: lists all GPU processing results for the tested images with the current GPUs:

The smaller images shown in these pages are all linked to their full-size versions.

References

[1] Weickert, J.: Anisotropic Diffusion in Image Processing. ECMI Series, Teubner, Stuttgart, 1998.

[2] Weickert, J.: Applications of nonlinear diffusion in image processing and computer vision. Acta Mathematica Universitatis Comenianae, vol. 70, No. 1, 2001: 33-50.

[3] Govindaraju, N., Redon, S., Lin, M. and Cullide, D.M.: Interactive collision detection between complex models in large environments using graphics hardware. In Proceedings of the ACM SIGGRAPH/Eurographics Workshop on Graphics Hardware, 2003: 25-32.

[4] Harris, M., Baxter, W., Scheuermann, T. and Lastra, A.: Simulation of cloud dynamics on graphics hardware. In Proceedings of Graphics Hardware, 2003: 92-101.

[5] Harris, M., Coombe, G., Scheuermann, T. and Lastra, A.: Physically-based visual simulation on graphics hardware. In Proceedings of the ACM SIGGRAPH/Eurographics Workshop on Graphics Hardware, 2002: 109-118.

[6] Purcell, T., Buck, I., Mark, W. and Hanrahan, P.: Ray tracing on programmable graphics hardware. ACM Transactions on Graphics, vol. 21, issue 3, July, 2002: 703-712.

[7] Zhang, Q. and Zhang, Y.: Hierarchical clustering of gene expression profiles with graphics hardware acceleration. Pattern Recognition Letters, vol. 27, issue 6, April, 2006: 676-681.

[8] Moreland, K. and Angel, E.: The FFT on a gpu, In Proceedings of the ACM SIGGRAPH/Eurographics Workshop on Graphics Hardware, July, 2003: 112–119.

[9] Fung, J. and Mann, S.: Openvidia: parallel gpu computer vision. In Proceedings of the 13th annual ACM international conference on Multimedia, New York, USA, 2005: 849–852.

[10] Hillesland, K., Lastra, A.: GPU ?oating-point paranoia. In ACM Workshop on General Purpose Computing on Graphics Processors, August, 2004.: C8.

[11] Brown, L. G.: A Survey of Image Registration Techniques. ACM Computing Surveys, New York, 1992.

[12] Brown, L. G.: A Survey of Image Registration Techniques. ACM Computing Surveys, New York, 1992.

[13] Pratt, W.K.: Digital Image Processing: Piks Inside. 3rd. ed. 2001. ISBN-13: 978-0471374077.

About admin

info biografia