1 / 20

Developing the Demosaicing Algorithm in GPGPU

Developing the Demosaicing Algorithm in GPGPU. Ping Xiang Electrical engineering and computer science. Outline. Background Algorithm Implementation Experiment Results Future Work. Color Filter Array. A mosaic of color filters in front of the image sensor.

sachi
Download Presentation

Developing the Demosaicing Algorithm in GPGPU

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Developing the Demosaicing Algorithm in GPGPU Ping Xiang Electrical engineering and computer science

  2. Outline Background Algorithm Implementation Experiment Results Future Work

  3. Color Filter Array. A mosaic of color filters in front of the image sensor Background

  4. Demosaicing algorithm is to reconstruct a full color image from the data collected by the color filtering array. Background

  5. Bilinear interpolation: The red value of a non-red pixel is computed by the average of the two or four adjacent red pixels, and similarly for blue and green. Algorithm

  6. Algorithm

  7. Algorithm

  8. Algorithm For Green Channels

  9. Algorithm For Red or Blue Channels

  10. Implementation Optimization: 1. Vectorize the pixel data to be processed 2. use shared memory to reduce the data transfer

  11. Implementation 1. Vectorize the pixel data to be processed

  12. Implementation 2. Use shared memory to reduce the data transfer

  13. Experiment Results Platform: ATI Radeon™ HD 4870 Brook+ 1.4 Nvidia GeForce8800 GTX CUDA 2.1 Dual Core AMD Opteron(tm) 2212 Frequency 2.0GHz

  14. Experiment Results For small data size, GPU is not always a good choice a. Memory transfer time dominates the kernel execution time b. Computation is not that complex enough

  15. Experiment Results When the data size is small, CUDA has better performance. When the data size increases to 4K, the brook+ performance catches up with CUDA

  16. Experiment Results Explanation ?

  17. Experiment Results Shared Register Usage Read data into shared register and try to reuse the data

  18. Experiment Results

  19. Future Work 1. Shared memory usage for further optimization 2. Integrate the code with proper interface to import image data and export pixel data 3. Report

  20. Reference 1. High-Quality linear interpolation for Demosaicing of Bayer-patterned color images, Henrique S. Malvar, Li-wei He, and Ross Cutler 2. An Improved Demosaicing Algorithm Alexey Lukin, Denis Kubasov Questions?

More Related