SlideServe
Menu
Préférences
© SlideServe · v2026

Static Image Filtering on Commodity Graphics Processors

gypsy avatar
15 diapositives · 266 Views · Sep 13, 2014

This paper discusses various image filtering techniques implemented on commodity graphics processors (GPUs). Key filters reviewed include the Mean filter, Gaussian filter, and Laplacian of Gaussian, each with distinctive characteristics and applications. Additionally, the paper contrasts CPU and GPU filtering approaches, emphasizing the benefits of parallel processing on GPUs while highlighting challenges related to memory addressing and cache usage. The proposed GPU algorithm showcases efficient convolution kernel usage for real-time image processing, ultimately enhancing super-fast filtering for 2-D images and aiding complex image-related tasks.

Static Image Filtering on Commodity Graphics Processors - slide 1
01 / 15Static Image Filtering on Commodity Graphics Processors
1 / 17

Télécharger la présentation

Static Image Filtering on Commodity Graphics Processors
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Static Image Filtering on Commodity Graphics Processors Peter Djeu May 1, 2003

  2. Filters from Computer Vision • Mean (a.k.a. average) filter • each element in a neighborhood is given equal weight; a simple image smoother • Gaussian • a neighborhood is weighted by a 2-D Gaussian, with the peak at the center; a better image smoother • Laplacian of Gaussian • The Gaussian filter is applied, and then the Laplacian (spatial derivative is applied); good for edge detection

  3. The Convolution Kernel • We want to transmit pixel information from neighbors to a central pixel • Use the convolution kernel as a window to frame the work that needs to be done 1 161

  4. Filtering on a CPU vs. a GPU • CPU • sequential and straightforward • GPU • not so straightforward if the goal is to exploit parallelism and maintain good locality • a pixel’s output value depends on the weighted value of it’s neighbors, so there is dependency across various elements

  5. Pixel Buffers in GPUS • GPU’s do not have indirect addressing to memory, so results have to be stored in pixel buffers. The card is really rendering to an off-screen frame (writing). • The GPU can then treat the Pixel Buffer as a texture for rendering (reading).

  6. Proposal for the GPU Algorithm 1. Store original into pb1. 2. For each element ki in the convolution kernel { 3. Copy pb1 into pb2, scaling by ki in the process (use Cg shader). 4. Based on the location of ki, render pb2 into pb3 with a certain offset. The blending is a single add. } 5. return pb3

  7. The Ups and Downs • This technique may be fast because… • parallelism is completely possible during the scaling stage and the blending • since most convolution kernels have symmetry, a little bit of preprocess could mean • On the other hand… • as image size grows, cache misses may become more prominent, since we manipulate the whole image • when translating, coords. are interpolated, not mapped • Tiling? Can a good size be determined in exp.?

  8. Current Progress • P-Buffer’s are frustrating • wglReleasePbufferDCARB() returning type PFNWGLRELEASEPBUFFERDCARBPROC • Lot’s of low level implementation / debugging, very much on a hardware level • (Naïve) CPU implementation is complete and working, and P-Buffers are almost done

  9. Results (in real-time sec’s)CPU, Gaussian Filter, w/ RGB, 24 bit targa’s

  10. Time (s) versus Kernel Size (elts)

  11. Time(s) versus Image Size (x*y)using a (31 x 31) kernel

  12. Applications? • Super fast filtering techniques on 2-D images may provide tools or insight for traditionally more complex problems involving 2-D images, like categorization / classification