Advanced Real-time Post-Processing using GPGPU techniques

33 %
67 %
Information about Advanced Real-time Post-Processing using GPGPU techniques
Entertainment

Published on January 20, 2009

Author: repii

Source: slideshare.net

Description

Master thesis about GPGPU post-processing by Per Lönroth and Mattias Unger from Linköping University, Department of Science and Technology.

Advanced Real-time Post-Processing using GPGPU techniques

Presentation overview Problem description and objectives Depth of field Methods GPGPU programming Results Conclusion Questions

Problem description and objectives

Depth of field

Methods

GPGPU programming

Results

Conclusion

Questions

Problem description and objectives Post processing filters Different depth of field algorithms Visual quality Implement using HLSL and CUDA Performance Usability

Post processing filters

Different depth of field algorithms

Visual quality

Implement using HLSL and CUDA

Performance

Usability

Depth of field Depth cue Focus plane Focus in area in front of and beyond Different blurriness

Depth cue

Focus plane

Focus in area in front of and beyond

Different blurriness

Depth of field Thin lens camera model Circle of confusion

Thin lens camera model

Circle of confusion

Depth of field Calculate Circle of confusion Depth value and lins parameters Depth map COC map

Calculate Circle of confusion

Depth value and lins parameters

Methods Poisson disc blur Multi-passed diffusion Separable diffusion Summed-area table

Poisson disc blur

Multi-passed diffusion

Separable diffusion

Summed-area table

Methods – Poisson disc blur Distribution function COC defines scale Downscaled image

Distribution function

COC defines scale

Downscaled image

Methods – Poisson disc blur Calculate values and interpolate depending on COC

Calculate values and interpolate depending on COC

Methods – Multi-passed diffusion Every pixel gets new value depending on the COC gradient Iterations

Every pixel gets new value depending on the COC gradient

Methods – Separable diffusion Use a tridiagonal system to represent the heat conductivity Cyclic reduction can solve the matrices for each row

Use a tridiagonal system to represent the heat conductivity

Cyclic reduction can solve the matrices for each row

Methods – Separable diffusion Each row is solved independently In each step a reduced tridiagonal matrix is calculated (and output value) until the system is solved

Each row is solved independently

In each step a reduced tridiagonal matrix is calculated (and output value) until the system is solved

GPGPU programming General Better flexibility Potential advantages CUDA Extension of C Large community

General

Better flexibility

Potential advantages

CUDA

Extension of C

Large community

GPGPU programming Executes in chunks of threads User specified blocks Several memory types Global Texture Shared Constant More choices and possibilities Hardware specific limits Great potential

Executes in chunks of threads

User specified blocks

Several memory types

Global

Texture

Shared

Constant

More choices and possibilities

Hardware specific limits

Great potential

GPGPU programming Gaussian blur timings

Gaussian blur timings

GPGPU programming Implementation impact using CUDA + Easy to get started (C) Memory indexing (no more floating point texture indices) Good support for timing on the GPU Good control over computations (threads and memory) - A lot of ”rules” (amount of threads, occupancy, etc) Hard to optimize Beta problems (lack of interop, slow operations)

Implementation impact using CUDA

+

Easy to get started (C)

Memory indexing (no more floating point texture indices)

Good support for timing on the GPU

Good control over computations (threads and memory)

-

A lot of ”rules” (amount of threads, occupancy, etc)

Hard to optimize

Beta problems (lack of interop, slow operations)

Results HLSL and CUDA for most methods Exceptions Poisson disc (HLSL only) Summed Area-Table (CUDA only) Timings in runs of 100 on recent hardware

HLSL and CUDA for most methods

Exceptions

Poisson disc (HLSL only)

Summed Area-Table (CUDA only)

Timings in runs of 100 on recent hardware

Results Poisson disc timings Separable simluated diffusion timings Multi-passed diffusion timings

Poisson disc timings

Separable simluated diffusion timings

Multi-passed diffusion timings

Results Artifacts Color leaking Sharp edges

Artifacts

Color leaking

Sharp edges

Results Input data

Input data

Results Poisson disc Multi-passed diffusion Separable simulated diffusion

Poisson disc

Multi-passed diffusion

Separable simulated diffusion

Results Poisson disc Multi-passed diffusion Separable simulated diffusion

Poisson disc

Multi-passed diffusion

Separable simulated diffusion

Results Lens parameter settings

Lens parameter settings

Conclusions Current depth of field filters are good enough Not really, but better is too expensive Cut scenes do get time for more computations GPGPU techniques have great potential Not mature enough (hardware support etc.) Maybe better for other things than image processing Future work Diffusion based approach offers best visual quality Compute shaders anyone?

Current depth of field filters are good enough

Not really, but better is too expensive

Cut scenes do get time for more computations

GPGPU techniques have great potential

Not mature enough (hardware support etc.)

Maybe better for other things than image processing

Future work

Diffusion based approach offers best visual quality

Compute shaders anyone?

Videos

End

Add a comment

Related presentations

Related pages

Advanced Real-time Post-Processing using GPGPU ... - DICE

Post-processing techniques are used to change a rendered image as a last step before presentation and include, but is not limited to, operations such as ...
Read more

Advanced Real-time Post-Processing using GPGPU techniques

LiU-ITN-TEK-A--08/080--SE Advanced Real-time Post-Processing using GPGPU techniques Examensarbete utfört i medieteknik vid Tekniska Högskolan vid
Read more

Advanced Real-time Post-Processing using GPGPU techniques ...

Publication » Advanced Real-time Post-Processing using GPGPU techniques.
Read more

Advanced Real-time Post-Processing using GPGPU techniques ...

Advanced Real-time Post-Processing using GPGPU techniques. November 2 2009, By Frostbite. Post-processing techniques are used to change a rendered image as ...
Read more

Advanced Real-time Post-Processing using GPGPU techniques

Search and download thousands of Swedish university essays. Full text. Free. Essay: Advanced Real-time Post-Processing using GPGPU techniques.
Read more

News - Page 20 of 20 - DICE

Advanced Real-time Post-Processing using GPGPU techniques 2009-11-05 by DICE Post-processing techniques are used to change a rendered image as a last step ...
Read more

urn:nbn:se:liu:diva-14962 : Advanced Real-time Post ...

Post-processing techniques are used to change a rendered image as a last step before ... Advanced Real-time Post-Processing using GPGPU techniques.
Read more

KIT - Computergrafik - Lehrveranstaltungen - SS 2015 ...

Post-Processing-Effekte... ... Algorithms and Techniques. 14.07.2015: Voxel-Rendering; ... Advanced Real-Time Post-Processing using GPGPU Techniques; ...
Read more