statistical filtering of indirect illumination for computer graphics … · 2008. 4. 30. ·...

35
Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward Lee, Henry Pao, Karamatou Yacoubou-Djima Dr. John Anderson, Pixar Animation Studios Dr. Todd Wittman, IPAM RIPS 2007

Upload: others

Post on 22-Mar-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Statistical Filtering of Indirect

Illumination for Computer Graphics

Martin Benning, Edward Lee,

Henry Pao, Karamatou Yacoubou-Djima

Dr. John Anderson, Pixar Animation Studios

Dr. Todd Wittman, IPAM

RIPS 2007

Page 2: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Outline

� Introduction� Background

� PCA

� Motion detection� Global

� Local

� Denoising� Error Threshold Method

� Moving Basis

� Anisotropic Diffusion

� Hybrid Method

� Regression

� Artifact detection

Page 3: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Background

Direct Illumination (D) Global Illumination (G)

Page 4: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward
Page 5: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Photon Mapping

� Used for indirect illumination

� Method that Pixar wishes to use

� Algorithm is

computationally expensive

� Lower sampling rates

generates noisy images

Page 6: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Our Problem

� Remove noise generated by low sample photon mapping

� Detect and replace problematic pixels

� Re-render as few pixels as possible

=>

Page 7: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

PCA: Basis

� PCA creates a variance-ordered basis

� Basis vectors point in direction of highest successive variance

� Noise-free pixels and noise are represented

by different directions in the basis Transformation of Basis

using PCA

1x

2x

2y 1y

Page 8: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

PCA: Choosing the Basis

� Noisy animations are represented using PCA:

� The first vectors of the basis capture the noise-free indirect illumination

� The last vectors of the basis describe the noise� Noise-free I(x,t) is determined with a truncated PCA

basis:

∑=

=≈k

i

iik xBtwtxItxI1

)()(),(),(vvv

∑=

=N

i

ii xBtwtxI1

)()(),(vv

tsCoefficiennObservatio)(

VectorsBasis)(

framesofNumber

sequenceImage),(

=

=

=

=

tw

xB

N

txI

i

i

r

Page 9: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward
Page 10: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Global vs. Local Motion

Original Animation Global motion Local motion

Page 11: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Global Motion Detection

� PCA separates the animation sequence into spatial and temporal bases

� The spatial basis vectors can be used for detecting global motion

∑=

=F

i

ii xBtwtxI1

)()(),(vv

B1 B3 B9

),( txIr

Page 12: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Global Motion Detection

� The first basis vectors contain information of area of motion

� The last basis vectors contain only noise

� Adding up the absolute values of B1 to B5 results in

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

∑=

=5

1

)()(i

i xBxrr

α

Page 13: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Local Motion Detection using z-scores

Original animation Threshold z-scores

( ) ( ) ( )( )x

xtxItxz r

rrr

σ

µ−=

,,

Page 14: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Denoising using PCA

� It represents data with a variance ordered basis

� First basis vectors contain the noise-free indirect

illumination

� Last basis vectors contain noise and motion

� Noise in animation sequence can be filtered using truncated temporal PCA basis

∑=

=F

i

ii xBtwtxI1

)()(),(vv

Page 15: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

PCA: Motivation

� Most methods denoise individual frames

� Our approach uses temporal correlation of pixel values

� PCA finds a new basis which separates meaningful pixels from noisy ones

� PCA is fast and inexpensive

Noisy Pixel

Page 16: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

PCA: Basis

� PCA creates a variance-ordered basis

� Basis vectors point in direction of highest successive variance

� Noise-free pixels and noise are represented

by different directions in the basis Transformation of Basis

using PCA

1x

2x

2y 1y

Page 17: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

PCA: Choosing the Basis

� Noisy animations are represented using PCA:

� The first vectors of the basis capture the noise-free indirect illumination

� The last vectors of the basis describe the noise� Noise-free I(x,t) is determined with a truncated PCA

basis:

∑=

=≈k

i

iik xBtwtxItxI1

)()(),(),(vvv

∑=

=N

i

ii xBtwtxI1

)()(),(vv

tsCoefficiennObservatio)(

VectorsBasis)(

framesofNumber

sequenceImage),(

=

=

=

=

tw

xB

N

txI

i

i

r

Page 18: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Image Sequence Reconstruction

Reconstruction with k = 2 Reconstruction with k = 10

Noisy animation sequence

Page 19: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Error Threshold Method*

� Compute the PCA basis

� Create reconstructions for each truncation Tk

� Calculate the error (between the reconstruction and

the noisy image)

� Calculate the difference of the error

( ) ( ) ( )[ ]2,,, txItxIxkerror k

rrr−=

( )( ) ( ) ( )xkerrorxkerrorxkerrorrrr

,1,, +−=∆

( ) ( ) ( )xBtwtxI i

k

i

ik

rr∑

=

=1

,

* MARK MEYER, JOHN ANDERSON, 2007, Statistical Acceleration for Animated Global Illumination

Page 20: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Error Threshold Method

Error Threshold MethodNoisy Animation

),( txIPCA

v

Page 21: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Error Threshold Method

Error Threshold MethodNoisy AnimationNoise-free animation

Page 22: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward
Page 23: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Moving Basis Reconstruction

Noisy animation sequence

),( txIMB

v

Moving Basis

Page 24: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Moving Basis

Noisy animation sequence Reconstruction using Moving Basis

Page 25: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Single Frame Denoising*

� Each frame of the image

sequence is denoisedusing anisotropic

diffusion:

� Motion is preserved

� Little noise is removed

∇+•∇= u

uut

2||1

1

* P. Perona, J. Malik, "Scale-Space and Edge Detection Using Anisotropic Diffusion," IEEE Transactions on Pattern Analysis and

Machine Intelligence, vol. 12, no. 7, pp. 629-639, Jul., 1990

),( txISF

v

Page 26: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward
Page 27: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Hybrid Method

� Combination of:

� Denoising methods

� Motion detection

� Formulation

<<=

stationary ,1

point someat motion ,10

motion ,0

)( σα xr

<<=

motion ,1

timesomeat motion 1, 0

motion no currently ,0

),( σβ txr

)),(1))((1)(,(

),())(1)(,(

)(),(),(

txxtxI

txxtxI

xtxItxI

SF

MB

PCAHybrid

rrr

rrr

rrr

βα

βα

α

−−+

−+

=

Global Motion:

Local Motion:

Page 28: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward
Page 29: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward
Page 30: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Artifact Detection using Regression

� Artifact – any pixel that looks bad �

� Regression methods used to detect pixels

that have to be re-rendered

� Polynomial regression on all pixels over time

� Degree is determined by

a threshold

( ) ( )

<−= δtRtxI

Fn xi

i

rr

,,1

minarg

1

2

3

4

5

6

7

Degree map

Page 31: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward
Page 32: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Regression Results

Polynomial RegressionNoise-free Animation

Page 33: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Summary� Detect motion using spatial PCA basis vectors and z-scores

� Denoise image sequence with hybrid method

� Detection artifacts using regression

� Re-render artifacts

High sample data Reconstructed data

Page 34: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Future work

� Artifacts detection

� Improvement of regression

� Difference between hybrid and regression

denoising

� Motion detection

� Localization of motion using VARIMAX

Page 35: Statistical Filtering of Indirect Illumination for Computer Graphics … · 2008. 4. 30. · Statistical Filtering of Indirect Illumination for Computer Graphics Martin Benning, Edward

Acknowledgements

� Todd Wittman, IPAM

� John Anderson, PIXAR

� PIXAR Animation Studios

� IPAM

� RIPS Students 2007