Processing Image and Video for An Impressionist Effect Peter Litwinowicz Apple Computer, Inc. Siggraph1997.

Slides:



Advertisements
Similar presentations
Animosaics Kaleigh Smith, Yunjun Liu, and Allison Klein McGill University Eurographics Symposium on Computer Animation 2005.
Advertisements

Texture Synthesis on [Arbitrary Manifold] Surfaces Presented by: Sam Z. Glassenberg* * Several slides borrowed from Wei/Levoy presentation.
Lecture 2: Convolution and edge detection CS4670: Computer Vision Noah Snavely From Sandlot ScienceSandlot Science.
Spatial Filtering (Chapter 3)
Topic 6 - Image Filtering - I DIGITAL IMAGE PROCESSING Course 3624 Department of Physics and Astronomy Professor Bob Warwick.
Motion illusion, rotating snakes. Slide credit Fei Fei Li.
Regional Processing Convolutional filters. Smoothing  Convolution can be used to achieve a variety of effects depending on the kernel.  Smoothing, or.
03/16/2009Dinesh Manocha, COMP770 Texturing Surface’s texture: its look & feel Graphics: a process that takes a surface and modifies its appearance using.
CHAPTER 12 Height Maps, Hidden Surface Removal, Clipping and Level of Detail Algorithms © 2008 Cengage Learning EMEA.
EDGE DETECTION.
1Ellen L. Walker Edges Humans easily understand “line drawings” as pictures.
Lapped Textures Emil Praun and Adam Finkelstien (Princeton University) Huges Hoppe (Microsoft Research) SIGGRAPH 2000 Presented by Anteneh.
A New Block Based Motion Estimation with True Region Motion Field Jozef Huska & Peter Kulla EUROCON 2007 The International Conference on “Computer as a.
EE663 Image Processing Edge Detection 2 Dr. Samir H. Abdul-Jauwad Electrical Engineering Department King Fahd University of Petroleum & Minerals.
CSCE 641 Computer Graphics: Image Filtering & Feature Detection Jinxiang Chai.
1 Image Filtering Readings: Ch 5: 5.4, 5.5, 5.6,5.7.3, 5.8 (This lecture does not follow the book.) Images by Pawan SinhaPawan Sinha formal terminology.
Image Enhancement.
Optical Flow Estimation
NPR - 2D to 3D, painting and rendering Daniel Teece Walt Disney Feature Animation Daniel Teece Walt Disney Feature Animation
Computational Photography: Image Processing Jinxiang Chai.
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Painterly Rendering for Animation Barbara J. Meier Walt Disney Feature Animation SIGGRAPH 96.
Non-Photorealistic Rendering Greg Turk College of Computing and GVU Center.
Non-Photorealistic Rendering - This is the attempt to make a realistic scene or object look as if it were hand drawn.
University of Texas at Austin CS 378 – Game Technology Don Fussell CS 378: Computer Game Technology Beyond Meshes Spring 2012.
Painterly Rendering for Animation – Barbara Meier
04/04/05© 2005 University of Wisconsin NPR Today "Processing Images and Video for an Impressionist Effect", Peter Litwinowicz, Proceedings of SIGGRAPH.
Image Analogies Aaron Hertzmann (1,2) Charles E. Jacobs (2) Nuria Oliver (2) Brian Curless (3) David H. Salesin (2,3) 1 New York University 1 New York.
Expressive rendering for animation Pascal Barla ARTIS-GRAVIR / IMAG INRIA Advisers : François Sillion & Joëlle Thollot.
Painterly Rendering for Animation The author starts with the assumption that painterly rendering is necessary or desirable. Most of the Introduction is.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Spatial Filtering: Basics
01/28/05© 2005 University of Wisconsin Last Time Improving Monte Carlo Efficiency.
CS559: Computer Graphics Lecture 6: Edge Detection, Image Compositing, and Warping Li Zhang Spring 2010.
Light Using Texture Synthesis for Non-Photorealistic Shading from Paint Samples. Christopher D. Kulla, James D. Tucek, Reynold J. Bailey, Cindy M. Grimm.
09/09/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Event management Lag Group assignment has happened, like it or not.
Multiscale Moment-Based Painterly Rendering Diego Nehab and Luiz Velho
Nonphotorealistic rendering, and future cameras Computational Photography, Bill Freeman Fredo Durand May 11, 2006.
Marching Cubes: A High Resolution 3D Surface Construction Algorithm William E. Lorenson Harvey E. Cline General Electric Company Corporate Research and.
Processing Images and Video for an Impressionist Effect Author: Peter Litwinowicz Presented by Jing Yi Jin.
University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Image processing.
UCF REU: Weeks 1 & 2. Gradient Code Gradient Direction of the Gradient: Calculating theta.
Lumo: Illumination for Cel Animation Scott F. Johnston.
Paint By Numbers The goal of a visual artist (Hagen): Without modeling detail, painters use brush strokes to: –Represent objects –Direct attention The.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
Non-Photorealistic Rendering and Content- Based Image Retrieval Yuan-Hao Lai Pacific Graphics (2003)
MTA SzTAKI & Veszprém University (Hungary) Guests at INRIA, Sophia Antipolis, 2000 and 2001 Paintbrush Rendering of Images Tamás Szirányi.
03/28/03© 2005 University of Wisconsin NPR Today “Comprehensible Rendering of 3-D Shapes”, Takafumi Saito and Tokiichiro Takahashi, SIGGRAPH 1990 “Painterly.
Orientable Textures for Image- Based Pen-And-Ink Illustration Michael P. Salisbury Michael T. Wong John F. Hughes David A. Salesin SIGGRAPH 1997 Andrea.
Segmentation of Vehicles in Traffic Video Tun-Yu Chiang Wilson Lau.
Rick Parent - CIS681 Motion Capture Use digitized motion to animate a character.
Motion Estimation using Markov Random Fields Hrvoje Bogunović Image Processing Group Faculty of Electrical Engineering and Computing University of Zagreb.
Painterly Rendering for Animation Introduction speaks of focus and detail –Small brush strokes focus and provide detail –Large strokes are abstract and.
Course 5 Edge Detection. Image Features: local, meaningful, detectable parts of an image. edge corner texture … Edges: Edges points, or simply edges,
Machine Vision Edge Detection Techniques ENT 273 Lecture 6 Hema C.R.
Instructor: Mircea Nicolescu Lecture 5 CS 485 / 685 Computer Vision.
Last Lecture photomatix.com. Today Image Processing: from basic concepts to latest techniques Filtering Edge detection Re-sampling and aliasing Image.
David Luebke 3/17/2016 Advanced Computer Graphics Antialiasing David Luebke
Processing Images and Video for An Impressionist Effect Automatic production of “painterly” animations from video clips. Extending existing algorithms.
Motion tracking TEAM D, Project 11: Laura Gui - Timisoara Calin Garboni - Timisoara Peter Horvath - Szeged Peter Kovacs - Debrecen.
Winter in Kraków photographed by Marcin Ryczek
Motion and optical flow
A Look Into Photorealistic and Non-Photorealistic Rendering
Non-Photorealistic Rendering
EE/CSE 576 HW 1 Notes.
EE/CSE 576 HW 1 Notes.
Introduction Computer vision is the analysis of digital images
Image Filtering Readings: Ch 5: 5. 4, 5. 5, 5. 6, , 5
Image Filtering with GLSL
ECE/CSE 576 HW 1 Notes.
Presentation transcript:

Processing Image and Video for An Impressionist Effect Peter Litwinowicz Apple Computer, Inc. Siggraph1997

Introduction To exploit temporal coherence in video clips to design an automatic filter with a hand-drawn animation quality. produce an Impressionist Effect

Introduction Impressionist In 1800’s,Claude Monet created paintings that attempted to “catch the fleeting impression of sunlight on objects. And it was the out-of-doors world he wanted to capture in paint”.

Introduction Goal 1.To produce images that are impressions of an input image sequence. 2.To produce painterly animation from video clips automatically.

Introduction Advantage To use optical flow fields to push brush strokes from frame to frame in the direction of pixel movements. Randomness is used to perturb the brush stroke’s length, color and orientation to enhance the hand-touched look.

The Process Rendering Strokes Brush Stroke Orientation Frame-to-Frame Coherence

Rendering Strokes Stroke Generation Assume that each brush stroke is rendered with an antialiased line centered at (cx,cy),with a given length, a given brush thickness radius,and a given orientation,theta. The brush stroke positioned every two pixels in both the X and Y directions for the image.

Rendering Strokes Stroke Generation The order that stroke are drawn is randomized to help create a hand-touched look. The color for a particular stroke is assigned the bilinearly interpolated color of the original image at (cx,cy)

Rendering Strokes Random Perturbations Adding random variations and perturbations to a stroke helps to create a hand-crafted look. We assign random amounts to length,radius,color and theta. Denotation: We do not generate new values for each frame as this results in animations with too much jitter.

Rendering Strokes Clipping and Rendering In order to preserve detail and silhouettes, strokes are clipped. Method before: Users specify the edge. Method now: To rely on standard image processing techniques to locate edges In our system there is no user interaction to specify edges.

Rendering Strokes No brush stroke clipping brush stroke clipping

Rendering Strokes The Process 1. Standard conversion of r,g,b values to intensity value. 2. Using Gaussian kernel to blur the intensity image. 3. The resulting blurred image is Sobel filtered. Each pixel calculated its gradient(Gx,Gy),and the value of the Sobel filter at any given pixel is: 4. Grow the line! 5. Assign color to the stroke. The color of the stroke is assign the color of the original image at the center of the stroke.

Rendering Strokes Blurred imageSobel filtered image

Rendering Strokes Use no brush stroke clippingUse brush stroke clipping

Rendering Strokes Using Brush Texture Brush strokes may also be rendered with textured brush images that have r,g,b and alpha components. Each component of the color of the brush stroke texture is multiplied by the color assigned to the stroke.

Rendering Strokes Using Brush Texture

Brush Stroke Orientation An artist may not want to have all the strokes drawn in the same direction! The orientation can be approximated automatically by drawing strokes normal to the gradient direction(of the intensity image) The same Gaussian kernel used in the edge finding process was used for smoothing the image for the gradient calculation.

Brush Stroke Orientation A greater kernel width is used for the orientation calculation.

Brush Stroke Orientation Exception When the magnitude of gradient is near zero, we can’t rely on the gradient direction to be useful!! Solution We modify the gradient field so that brush strokes in a region of constant color smoothly interpolate the directions defined at the region’s boundaries.

Brush Stroke Orientation

Frame-to-Frame Coherence Input: a video clip with no a priori information about pixel movement in the scene. Process: 1. To render the first frame,we use the process described in the previous two sections. 2. Calculate the optical flow between the two images We use a gradient-based multi-resolution technique,employing a pyramid of successively low-passed versions of the gradient to help compute the optical flow.

Frame-to-Frame Coherence Use the flow field to move the strokes The optical flow technique we implemented provides subpixel positioning, and this feature is exploited by moving brush strokes to subpixel location. The optical flow vector field is used as a displacement field to move the brush strokes to new locations in a subsequent frame.

Frame-to-Frame Coherence Optical flow field that maps pixels from one frame to another.

Frame-to-Frame Coherence Problem: Not full coverage of the image with rendered brush strokes. Solution: Using Delaunay triangulation

Frame-to-Frame Coherence

There are two lists of brush strokes: 1. Old brush strokes(stroke moved and subsequently kept) 2. New brush strokes(generated in sparse region) If the new strokes sre simply painted behind the old strokes,undesirable effects can occur!

Frame-to-Frame Coherence Uniformly distributing the new strokes among the old ones

Result

報告結束