슬라이드 1 - Computer graphics

슬라이드 1 - Computer graphics

Accelerating Spatially Varying Gaussian Filters Jongmin Baek and David E. Jacobs Stanford University Motivation Input Gaussian Filter Spatially Varying Gaussian

Filter Roadmap 1) Accelerating Spatially Varying Gaussian Filters 2) Accelerating Spatially Varying Gaussian Filters 3) Accelerating Spatially Varying Gaussian Filters 4) Applications Gaussian Filters Position Value

Given pairs as input, = exp ( 2 2

2 ) Gaussian Filters Each output value = exp

( 2 2 2 ) Gaussian Filters

is a weighted sum of input values = exp ( 2 2

2 ) Gaussian Filters whose weight is a Gaussian = exp (

2 2 2 ) Gaussian Filters in the space of the associated positions.

= exp ( 2 2 2

) Gaussian Filters: Uses Gaussian Blur =( , ) , =( , , ) Gaussian Filters: Uses Bilateral Filter

=( , , , , ) , =( , ,) Gaussian Filters: Uses Non-local Means Filter =( , , ) =( , , ) Gaussian Filters: Summary Applications Denoising images and meshes

Data fusion and upsampling Abstraction / Stylization Tone-mapping ... Previous work on fast Gaussian Filters Bilateral Grid (Chen, Paris, Durand; 2007) Gaussian KD-Tree (Adams et al.; 2009)

Permutohedral Lattice (Adams, Baek, Davis; 2010) Gaussian Filters: Implementations Summary of Previous Implementations: A separable blur flanked by resampling operations. Exploit the separability of the Gaussian kernel. Spatially Varying Gaussian Filters

2 = N ( ; ) Spatially Invariant = N ( ; )

Spatially varying covariance matrix Spatial Variance in Previous Work Trilateral Filter (Choudhury and Tumblin, 2003) Tilt the kernel of a bilateral filter along the image gradient. Piecewise linear instead of

Piecewise constant model. Spatially Varying Gaussian Filters: Tradeoff Benefits: Can adapt the kernel spatially. Better filtering performance. Cost: No longer separable.

No existing acceleration schemes. Input Bilateral-filtered Trilateral-filtered Acceleration Problem: Spatially varying (thus non-separable) Gaussian filter Existing Tool:

Fast algorithms for spatially invariant Gaussian filters Solution: Re-formulate the problem to fit the tool. Need to obey the piecewise-constant assumption Nave Approach (Toy Example) I LOST THE GAME Input Signal 1 filtered w/ 1 filtered w/ 2 filtered w/ 3

filtered w/ 4 2 1 3 1 4 Desired Kernel

1 1 1 2 3 4 Output Signal Challenge #1

In practice, the # of kernels can be very large. Desired Kernel K(x) Range of Kernels needed Pixel Location x Solution #1 Sample a few kernels and interpolate. Desired Kernel K(x)

K1 Sampled kernels K2 Interpolate result! K3 Pixel Location x Assumptions

Interpolation needs an extra assumption to work: The covariance matrix i is either piecewiseconstant, or smoothly varying. Kernel is spatially varying, but locally spatially invariant. Challenge #2 Runtime scales with the # of sampled kernels.

Desired Kernel K(x) K1 Sampled kernels K2 K3 Filter only some regions of the image with each kernel. (support) Pixel Location x

Defining the Support In this example, x needs to be in the support of K1 & K2. Desired Kernel K(x) K1 K2 K3 Pixel Location x Dilating the Support Desired Kernel K(x) K1

K2 K3 Pixel Location x Algorithm 1) Identify kernels to sample. 2) For each kernel, compute the support needed. 3) Dilate each support. 4) Filter each dilated support with its kernel. 5) Interpolate from the filtered results. Algorithm 1) Identify kernels to sample.

2) For each kernel, compute the support needed. 3) Dilate each support. 4) Filter each dilated support with its kernel. 5) Interpolate from the filtered results. K1 K2 K3 Algorithm 1) Identify kernels to sample. 2) For each kernel, compute the support needed. 3) Dilate each support. 4) Filter each dilated support with its kernel.

5) Interpolate from the filtered results. K1 K2 K3 Algorithm 1) Identify kernels to sample. 2) For each kernel, compute the support needed. 3) Dilate each support. 4) Filter each dilated support with its kernel. 5) Interpolate from the filtered results. K1 K2

K3 Algorithm 1) Identify kernels to sample. 2) For each kernel, compute the support needed. 3) Dilate each support. 4) Filter each dilated support with its kernel. 5) Interpolate from the filtered results. K1 K2 K3 Algorithm

1) Identify kernels to sample. 2) For each kernel, compute the support needed. 3) Dilate each support. 4) Filter each dilated support with its kernel. 5) Interpolate from the filtered results. K1 K2 K3 Applications HDR Tone-mapping Joint Range Data Upsampling

Application #1: HDR Tone-mapping Base Fi lt er e at nu te At

Input HDR Detail Output Tone-mapping Example Bilateral Filter Kernel Sampling Application #2: Joint Range Data Upsampling

Range Finder Data Scene Image te Fil r Sparse Unstructured Noisy Output

Synthetic Example Scene Image Ground Truth Depth Synthetic Example Scene Image Simulated Sensor Data

Synthetic Example : Result Bilateral Filter Kernel Sampling Synthetic Example : Relative Error Bilateral Filter Kernel Sampling 2.41% Mean Relative Error

0.95% Mean Relative Error Real-World Example Scene Image Range Finder Data *Dataset courtesy of Jennifer Dolson, Stanford University Real-World Example: Result

Input Bilateral Naive Kernel Sampling Performance Kernel Sampling

Choudhury and Tumblin (2003) Nave Tonemap 1 5.10 s 41.54 s 312.70 s

Tonemap 2 6.30 s 88.08 s 528.99 s Depth1 Depth2

Kernel Sampling Kernel Sampling (No segmentation) 3.71 s 9.18 s 57.90 s 131.68 s Conclusion

1. A generalization of Gaussian filters Spatially varying kernels Lose the piecewise-constant assumption. 2. Acceleration via Kernel Sampling Filter only necessary pixels (and their support) and interpolate. 3. Applications

Recently Viewed Presentations

  • VCU Health System

    VCU Health System

    VCU Health System Indigent Care Distribution FY12 Projected Distribution of Indigent Care Funding About The VCU Health System VCU Health System: only academic medical center in Central Virginia, with 32,500 admissions and > 500,000 outpatient visits annually.
  • Being an Ethical Manager

    Being an Ethical Manager

    Being an Ethical Manager Do you know? White collar scams Enron & Arthur Anderson MCI worldcom CSE Insider Dealings Immoral Management An approach that not only lacks ethical principles but is actively opposed to ethical behaviour Norms are of active...
  • What is a Postdisciplinary Engineer? Jim Brenner Florida

    What is a Postdisciplinary Engineer? Jim Brenner Florida

    Has internal support of Bill Allen (Cybersecurity), Phil Bernhard (new dept. head for Computer Sci. & Electrical & Computer Engineering), Dan Kirk (Assoc. Dean), and David Beavers (Makerspace; likely to supervise GSA's who would teach it) ChE. advisory board &...
  • Loaned Executive Training Purpose, Role and Training Objectives

    Loaned Executive Training Purpose, Role and Training Objectives

    2014 campaign raised $3.37M (9th largest on the planet!) Over 20,000 charities (local, national, international) Campaign branding/message-broader than United Way. Specific rules for federal campaign- Only solicit federal employees- No coercion- Impartiality to specific charities .
  • Stop Telling Me What to Do: Brain-Based Methods

    Stop Telling Me What to Do: Brain-Based Methods

    Supported by the latest groundbreaking research on the brain, Quiet Leadership provides, for the first time, a simple brain-based approach that will help busy leaders, executives, and managers improve their own and their colleagues' performance. Quiet Leadership: Six Steps to...
  • Central Authorization System

    Central Authorization System

    Java Web Service Servers and Clients in Internet2 Grouper February 2009 Chris Hyzer University of Pennsylvania IT Internet2
  • Proposed Engagement Plan for the next 90 days of Your Virtual ...

    Proposed Engagement Plan for the next 90 days of Your Virtual ...

    include access to or participation in advisory discussion with the authoring analysts, called Analyst Inquiries. It also does not include more actionable research content, such as Toolkits, IT Key Metrics Data, and ITScore maturity assessments.)
  • The Periodic Table of the Elements

    The Periodic Table of the Elements

    The Modern Periodic Table. The periodic table is an organized arrangement of all the elements that explains and predicts their physical and chemical properties. The main information about an element includes: Atomic number