Filtering Approaches for Real-Time Anti-Aliasing

Slides:



Advertisements
Similar presentations
Filtering Approaches for Real-Time Anti-Aliasing
Advertisements

Saito, T. and Takahashi, T. Comprehensible Rendering of 3-D Shapes Proc. of SIGGRAPH '90 Genesis of Image Space NPR.
Compositing and Blending Ed Angel Professor Emeritus of Computer Science University of New Mexico 1 E. Angel and D. Shreiner: Interactive Computer Graphics.
Optimized Stencil Shadow Volumes
The Art and Technology Behind Bioshock’s Special Effects
Week 7 - Monday.  What did we talk about last time?  Specular shading  Aliasing and antialiasing.
Week 10 - Monday.  What did we talk about last time?  Global illumination  Shadows  Projection shadows  Soft shadows.
David Luebke1/19/99 CS 551/651: Antialiasing David Luebke
Part I: Basics of Computer Graphics
Compositing and Blending Mohan Sridharan Based on slides created by Edward Angel 1 CS4395: Computer Graphics.
Image Compositing Angel 8.11 Angel: Interactive Computer Graphics5E © Addison-Wesley
SIGGRAPH ASIA 2011 Preview seminar Shading and Shadows.
December 5, 2013Computer Vision Lecture 20: Hidden Markov Models/Depth 1 Stereo Vision Due to the limited resolution of images, increasing the baseline.
Shape from Contours and Multiple Stereo A Hierarchical, Mesh-Based Approach Hendrik Kück, Wolfgang Heidrich, Christian Vogelgsang.
Antialiasing Recovery Lei Yang, Pedro V. Sander The Hong Kong University of Science and Technology Jason Lawrence University of Virginia Hugues Hoppe Microsoft.
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
Filtering CSE P 576 Larry Zitnick
Multimedia Data Introduction to Image Processing Dr Mike Spann Electronic, Electrical and Computer.
Image Segmentation. Introduction The purpose of image segmentation is to partition an image into meaningful regions with respect to a particular application.
Robust Object Segmentation Using Adaptive Thresholding Xiaxi Huang and Nikolaos V. Boulgouris International Conference on Image Processing 2007.
CS223B Assignment 1 Recap. Lots of Solutions! 37 Groups Many different approaches Let’s take a peek at all 37 results on one image from the test set.
1Notes. 2Atop  The simplest (useful) and most common form of compositing: put one image “atop” another  Image 1 (RGB) on top of image 2 (RGB)  For.
Aliasing and Anti-Aliasing Copyright Zachary Wartell, University of North Carolina at Charlotte, All Rights Reserved Revision: 10/24/2007 3:38:00 AM ©Zachary.
CIS 681 Distributed Ray Tracing. CIS 681 Anti-Aliasing Graphics as signal processing –Scene description: continuous signal –Sample –digital representation.
WHAT MAKES A GOOD PHOTOGRAPH? Composition. The selection, placement and arrangement of subjects within the picture area Means “putting together” Organization.
Post-rendering Cel Shading & Bloom Effect
Computer Graphics Shadows
Tal Mor  Create an automatic system that given an image of a room and a color, will color the room walls  Maintaining the original texture.
Computer Graphics Mirror and Shadows
Filtering Approaches for Real-Time Anti-Aliasing /
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
Antialiasing with Line Samples Thouis R. Jones, Ronald N. Perry MERL - Mitsubishi Electric Research Laboratory.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Graphics Graphics Korea University cgvr.korea.ac.kr Raster Graphics 고려대학교 컴퓨터 그래픽스 연구실.
Computer Graphics An Introduction. What’s this course all about? 06/10/2015 Lecture 1 2 We will cover… Graphics programming and algorithms Graphics data.
Multiscale Moment-Based Painterly Rendering Diego Nehab and Luiz Velho
Multimedia Data Introduction to Image Processing Dr Sandra I. Woolley Electronic, Electrical.
CS 450: COMPUTER GRAPHICS ANTIALIASING SPRING 2015 DR. MICHAEL J. REALE.
1 Shadows (2) ©Anthony Steed Overview n Shadows – Umbra Recap n Penumbra Analytical v. Sampling n Analytical Aspect graphs Discontinuity meshing.
Image Processing Edge detection Filtering: Noise suppresion.
03/05/03© 2003 University of Wisconsin Last Time Tone Reproduction If you don’t use perceptual info, some people call it contrast reduction.
Rendering Fake Soft Shadows with Smoothies Eric Chan Massachusetts Institute of Technology.
1 Research Question  Can a vision-based mobile robot  with limited computation and memory,  and rapidly varying camera positions,  operate autonomously.
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Compositing and Blending
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Lecture 6 Rasterisation, Antialiasing, Texture Mapping,
Sampling Pixel is an area!! – Square, Rectangular, or Circular? How do we approximate the area? – Why bother? Color of one pixel Image Plane Areas represented.
Visual Computing Computer Vision 2 INFO410 & INFO350 S2 2015
David Luebke2/23/2016 CS 551 / 645: Introductory Computer Graphics Color Continued Clipping in 3D.
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
09/23/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Reflections Shadows Part 1 Stage 1 is in.
David Luebke 3/17/2016 Advanced Computer Graphics Antialiasing David Luebke
CS 325 Introduction to Computer Graphics 04 / 07 / 2010 Instructor: Michael Eckmann.
Compositing and Blending Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
Computer Graphics I, Fall 2008 Compositing and Blending.
Over the recent years, computer vision has started to play a significant role in the Human Computer Interaction (HCI). With efficient object tracking.
CIS 681 Distributed Ray Tracing. CIS 681 Anti-Aliasing Graphics as signal processing –Scene description: continuous signal –Sample –digital representation.
Applications and Rendering pipeline
Antialiasing. What is alias? Alias - A false signal in telecommunication links from beats between signal frequency and sampling frequency (from dictionary.com)
Distributed Ray Tracing
Image gradients and edges April 11th, 2017
Silhouette Intersection
Real-time Volumetric Lighting in Participating Media
UMBC Graphics for Games
Distributed Ray Tracing
Object Recognition Today we will move on to… April 12, 2018
Primitive Drawing Algorithm
Fourier Transform of Boundaries
Primitive Drawing Algorithm
Presentation transcript:

Filtering Approaches for Real-Time Anti-Aliasing

Filtering Approaches for Real-Time Anti-Aliasing Morphological Anti-Aliasing Alexander Reshetov Intel Labs

What is MLAA?

This talk: MLAA in retrospect

Scene from Call of Duty: Word at War ® courtesy of Activision

The Plan 1.Somehow find silhouettes in images (and hope that it will correspond to real objects) 2.Blend (aka filter) colors around the silhouettes

Meaningful similarities between... post-pro­cessing antialiasing super-resolution –Raanan Fattal. Image Upsampling via Imposed Edge Statistics. Siggraph computer vision recovered (aka hallucinated) silhouette edges are used for image enhancement / recognition

... and one important distinction 3D model data (available at ∞ resolution) We can use it to infer better silhouettes –a directionally adaptive edge filter, DEAA, GBAA Or super-sample quantities other than color inside pixel –SRAA Or we may choose to use only a single sample/pixel –either color or depth or combination Simplicity Quality

Why (we hope) it will work Super-Sampling Anti-Aliasing: 1. sample each pixel 2. average computed colors

Simplifications For pixels with 2 distinct sampled colors, integral can be approximated with area computation: middle pixel = * + * ( comes from the left pixel, — from the middle one )

It was done before… For a very simple content, pixel art scaling algorithms may work Developed in 80’s to allow original low-res computer games run on better hardware (Wikipedia)Wikipedia (see also Johannes Kopf, Dani Lischinski. Depixelizing Pixel Art, Siggraph 2011)

What we need Boolean data (which pixels are different) continuous silhouette lines

MethodFeatures threshold for each color channel ≠ human vision issues with illumination changes near silhouettes luminosity [ITU-R BT. 709]ITU-R BT. 709false negatives Non-linear thresholding (in GOW) good detection over the whole range requires artist’s adjustment depth onlychoosing a scale is difficult problems with corners depth + color + object’s id + … perhaps, the best one (if data is available) How to decide if pixels are different

MLAA rule # 1 (out of 2) silhouette segments start/end at edges of pixels at which horizontal and vertical separation lines intersect

MLAA rule # 2 for each separation line look at all start/end points on adjacent orthogonal lines choose the longest segment

Rationale: object intersection Want to preserve the nose silhouette line despite the glasses on top of it

Avoiding over-blurring If both horizontal and vertical silhouette lines intersect the same pixel, choose the longest silhouette line (vertical for these pixels) or any one (if both lengths are 1) (this is Edgar’s nose in a shadow)

Two types of shapes Z-shapeZ-shape U-shapeU-shape

This is what we will get

MLAA in a one sentence (1) detect all pixels that are different from neighbors to (2) approximate silhouettes and then (3) filter colors around these silhouettes Steps 1 and 2 allow innovation and differentiation Step 3 seems to be OK in RGB space (without gamma)

Then (2009) and now (2011) MLAA pitfallswhat can be done non-local CPU-friendly filter considered as a proof-of-concept efficient implementations for GPU, PS3, Xbox, and CPU, as well as alternative algorithms Nyquist limitSRAA, a directionally adaptive edge filter varying lighting can trigger silhouette changes in static scenes discontinuity buffer (Jimenez’s MLAA) temporal artifactsspatio-temporal upsampling potential 1-frame latencydo it in parallel with other post- processing effects (God Of War)

Timeline for 2020 ? AA Naming Guide on AnandTech: 27 entries for major variationsAA Naming Guide Historical perspective: Z-buffer killed all other invisible surface removal algorithms… Hardware AA was unable to do it (yet?)

So the question is… Will retina displays (~300 dpi) kill all AA? –(it will be exciting) Bottom line: it seems that post-processing AA algorithms have matured in time when –resolution is good enough to alleviate certain artifacts –But not too high to forget about AA at all

So the question is… (amended) Even 300 dpi are not enough to forget about AA –People evolved to notice higher frequency than eye’s resolution (hyperacuity) You can read more ( see the course web site )the course web site –John Hable’s blogblog –David Luebke’s The Ultimate DisplayThe Ultimate Display

this one is MLAAsed   this one is not   this one is not (if you can read it, you can see it) Finally, some animation Next talk: Next talk: Jorge Jimenez on Practical MLAA