Computational Photography and Capture: (Re)Coloring. Gabriel Brostow & Tim Weyrich TA: Frederic Besse

Similar documents
Overview. Video. Overview 4/7/2008. Optical flow. Why estimate motion? Motion estimation: Optical flow. Motion Magnification Colorization.

Image Compositing and Blending

Colorization: History

Examples. Bilateral filter. Input. Soft texture is removed

Academia Arena 2017;9(11) Colorization of Gray Level Images by Neural Network

Computational Photography and Video: Intrinsic Images. Prof. Marc Pollefeys Dr. Gabriel Brostow

Midterm Examination CS 534: Computational Photography

Landmark-Based Sparse Color Representations for Color Transfer

Geometric camera models and calibration

Introduction to Computer Graphics. Image Processing (1) June 8, 2017 Kenshi Takayama

Image Composition. COS 526 Princeton University

Fast Colorization Using Edge and Gradient Constrains

EE795: Computer Vision and Intelligent Systems

Targil 10 : Why Mosaic? Why is this a challenge? Exposure differences Scene illumination Miss-registration Moving objects

Range Imaging Through Triangulation. Range Imaging Through Triangulation. Range Imaging Through Triangulation. Range Imaging Through Triangulation

IMA Preprint Series # 1979

Homographies and RANSAC

Skin Color Transfer. Introduction. Other-Race Effect. This work

TOWARDS AUTOMATED COLOUR GRADING

Image Blending and Compositing NASA

Motion Estimation. There are three main types (or applications) of motion estimation:

Announcements. Mosaics. Image Mosaics. How to do it? Basic Procedure Take a sequence of images from the same position =

Multimedia Technology CHAPTER 4. Video and Animation

CS6670: Computer Vision

Automatic Palette Extraction for Image Editing

Computer Vision 2. SS 18 Dr. Benjamin Guthier Professur für Bildverarbeitung. Computer Vision 2 Dr. Benjamin Guthier

Course overview. Digital Visual Effects, Spring 2005 Yung-Yu Chuang 2005/2/23

Mosaics. Today s Readings

Synthesizing Realistic Facial Expressions from Photographs

Write detailed answers. That way, you can have points for partial answers;

Manifold Preserving Edit Propagation

CS664 Lecture #18: Motion

ELEC Dr Reji Mathew Electrical Engineering UNSW

Topics to be Covered in the Rest of the Semester. CSci 4968 and 6270 Computational Vision Lecture 15 Overview of Remainder of the Semester

Automatic Generation of An Infinite Panorama

Today s lecture. Image Alignment and Stitching. Readings. Motion models

The Light Field and Image-Based Rendering

CS 354R: Computer Game Technology

CS664 Lecture #19: Layers, RANSAC, panoramas, epipolar geometry

Temporal Color Morphing

Image Morphing. Application: Movie Special Effects. Application: Registration /Alignment. Image Cross-Dissolve

IMAGE DENOISING TO ESTIMATE THE GRADIENT HISTOGRAM PRESERVATION USING VARIOUS ALGORITHMS

Mixture Models and EM

Image Stitching. Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi

CS559: Computer Graphics. Lecture 1 Introduction Li Zhang University of Wisconsin, Madison

Course Evaluations. h"p:// 4 Random Individuals will win an ATI Radeon tm HD2900XT

Graphics Hardware and Display Devices

GRAPH MODELLING OF 3D GEOMETRIC INFORMATION FOR COLOR CONSISTENCY OF MULTIVIEW IMAGES. Manohar Kuse, Sunil Prasad Jaiswal

Image Warping and Mosacing

Computer Vision 5 Segmentation by Clustering

CSCI 5980: Assignment #3 Homography

Color Source Separation for Enhanced Pixel Manipulations MSR-TR

Why is computer vision difficult?

Lecture 15: Image-Based Rendering and the Light Field. Kayvon Fatahalian CMU : Graphics and Imaging Architectures (Fall 2011)

Clustering Color/Intensity. Group together pixels of similar color/intensity.

Feature Tracking and Optical Flow

Feature Tracking and Optical Flow

Single-view 3D Reconstruction

High Dynamic Range Imaging.

Median filter. Non-linear filtering example. Degraded image. Radius 1 median filter. Today

Non-linear filtering example

EE795: Computer Vision and Intelligent Systems

Image Based Rendering. D.A. Forsyth, with slides from John Hart

Data-driven methods: Video & Texture. A.A. Efros

3D Editing System for Captured Real Scenes

Today. Motivation. Motivation. Image gradient. Image gradient. Computational Photography

What will we learn? Geometric Operations. Mapping and Affine Transformations. Chapter 7 Geometric Operations

IMA Preprint Series # 1979

CS4670: Computer Vision

CS559: Computer Graphics. Lecture 6: Painterly Rendering and Edges Li Zhang Spring 2008

Lecture 19: Depth Cameras. Visual Computing Systems CMU , Fall 2013

Image-Based Modeling and Rendering

Panoramic Image Stitching

Local Image Features

BCC Rays Streaky Filter

CS4670: Computer Vision

CIS581: Computer Vision and Computational Photography Project 2: Face Morphing and Blending Due: Oct. 17, 2017 at 3:00 pm

Multi-view stereo. Many slides adapted from S. Seitz

About Phoenix FD PLUGIN FOR 3DS MAX AND MAYA. SIMULATING AND RENDERING BOTH LIQUIDS AND FIRE/SMOKE. USED IN MOVIES, GAMES AND COMMERCIALS.

CS6670: Computer Vision

Computer Graphics Disciplines. Grading. Textbooks. Course Overview. Assignment Policies. Computer Graphics Goals I

Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

Miniature faking. In close-up photo, the depth of field is limited.

Image Based Lighting with Near Light Sources

Image Based Lighting with Near Light Sources

Today: non-linear filters, and uses for the filters and representations from last time. Review pyramid representations Non-linear filtering Textures

Data-driven methods: Video & Texture. A.A. Efros

BSB663 Image Processing Pinar Duygulu. Slides are adapted from Selim Aksoy

Texture. Announcements. Markov Chains. Modeling Texture. Guest lecture next Tuesday. Evals at the end of class today

Recommender Systems New Approaches with Netflix Dataset

Image correspondences and structure from motion

arxiv: v1 [cs.cv] 4 Aug 2016

Texture Synthesis. Darren Green (

Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

DD2423 Image Analysis and Computer Vision IMAGE FORMATION. Computational Vision and Active Perception School of Computer Science and Communication

Outline. Segmentation & Grouping. Examples of grouping in vision. Grouping in vision. Grouping in vision 2/9/2011. CS 376 Lecture 7 Segmentation 1

Physics-based Vision: an Introduction

Image Warping and Morphing. Alexey Tikhonov : Computational Photography Alexei Efros, CMU, Fall 2007

Matting, Transparency, and Illumination. Slides from Alexei Efros

A Closed-Form Solution to Natural Image Matting

Transcription:

Computational Photography and Capture: (Re)Coloring Gabriel Brostow & Tim Weyrich TA: Frederic Besse

Week Date Topic Hours 1 12-Jan Introduction to Computational Photography and Capture 1 1 14-Jan Intro + More on Cameras, Sensors and Color 2 2 19-Jan No lecture! (Go capture bracketed photos?) - 2 21-Jan Blending, Compositing, Poisson Editing 2 3 26-Jan Time-Lapse 1 3 28-Jan Carving, Warping, and Morphing 2 4 02-Feb High-Dynamic-Range Imaging and Tone Mapping 1 4 04-Feb Hybrid Images, Flash and Multi-Flash Photography 2 5 09-Feb Colorization and Color Transfer 1 5 11-Feb Image Inpainting and Texture Synthesis 2 7 23-Feb Video Based Rendering of Scenes I 1 7 25-Feb Video Based Rendering of Scenes II 2 8 02-Mar Video Texture Synthesis 1 8 04-Mar Video Sprites 2 9 09-Mar Deblurring/Dehazing and Coded Aperture Imaging 1 9 11-Mar Image-based Rendering 2 10 16-Mar Motion Capture guest lecture by Doug Griffin 10 18-Mar Capturing Geometry with Active Lighting 2 11 23-Mar Intrinsic Images 1 11 25-Mar Dual Photography and Reflectance Analysis 2

Today s Lecture Colorization using Optimization Levin, Lischinski, Weiss, Siggraph 2004 Color Transfer Between Images Reinhard, Ashikhmin, Gooch, Shirley, CG&A 2001 N-Dimensional Probability Density Function Transfer and its Application to Colour Transfer Pitié, Kokaram, Dahyot, ICCV 2005 (see also Interactive Local Adjustment of Tonal Values 06)

Note: Using Anat Levin s slides for structure, with the other papers appearing throughout Colorization Using Optimization Anat Levin Dani Lischinski Yair Weiss SIGGRAPH 2004 Project web page

Colorization Colorization: a computer-assisted process of adding color to a monochrome image or movie. (Invented by Wilson Markle, 1970)

Motivation Colorizing black and white movies and TV shows Earl Glick (Chairman, Hal Roach Studios), 1984: You couldn't make Wyatt Earp today for $1 million an episode. But for $50,000 a segment, you can turn it into color and have a brand new series with no residuals to pay Hugh O'Brien as Wyatt Earp, 1957

Motivation Colorizing black and white movies and TV shows Recoloring color images for special effects

Motivation

Typical Colorization Process Images from: Yet Another Colorization Tutorial http://www.worth1000.com/tutorial.asp?sid=161018

Typical Colorization Process Delineate region boundary Images from: Yet Another Colorization Tutorial http://www.worth1000.com/tutorial.asp?sid=161018

Typical Colorization Process Delineate region boundary Choose region color from palette. Images from: Yet Another Colorization Tutorial http://www.worth1000.com/tutorial.asp?sid=161018

Typical Colorization Process Delineate region boundary Choose region color from palette. Images from: Yet Another Colorization Tutorial http://www.worth1000.com/tutorial.asp?sid=161018

Typical Colorization Process Delineate region boundary Choose region color from palette. Images from: Yet Another Colorization Tutorial http://www.worth1000.com/tutorial.asp?sid=161018

Video Colorization Process Delineate region boundary Choose region color from palette. Track regions across video frames

Colorization Process Discussion Time consuming and labor intensive Fine boundaries. Failures in tracking.

Colorization by Analogy A : A B : B? Hertzmann et al. 2001, Welsh et al. 2002

Colorization by Analogy A : A B : B Hertzmann et al. 2001, Welsh et al. 2002

Transferring Color To Greyscale Images Welsh et al. 2002

Colorization by Analogy - Discussion Indirect artistic control No spatial continuity constraint

Levin et al. Approach

Levin et al. Approach Artist scribbles desired colors inside regions

Levin et al. Approach Colors are propagated to all pixels Nearby pixels with similar intensities should have the same color

Propagation using Optimization Y U, V Intensity channel Color channels Neighboring pixels with similar intensities should have similar colors

Y U, V Intensity channel Color channels Neighboring pixels with similar intensities should have similar colors

Propagation using Optimization Y U, V Intensity channel Color channels 2 J ( U ) r U ( r) s N ( r) w rs U ( s) Minimize difference between color at a pixel and an affinityweighted average of the neighbors

Affinity Functions w rs e 2 ( Y ( r) Y ( s)) 2 / r r proportional to local variance

Affinity Functions in Space-Time w rs e 2 2 ( Y ( r) Y ( s)) / 2 r i 1 i i 1

Minimizing cost function Minimize: 2 J ( U ) r U ( r) s N ( r) w rs U ( s) Subject to labeling constraints Since cost is quadratic, minimum can be found by solving sparse system of linear equations. Using Matlab s least-squares solver for sparse linear systems (code online)

Color Interpolation

Coloring Stills

Coloring Stills Original Colorized

Progressive Colorization

Progressive Colorization

Progressive Colorization

Coloring Stills

Coloring Stills

Colorization Challenges

Segmentation? NCuts Segmentation (Shi & Malik 97) Segmentation aided colorization Our result

Recoloring Affinity between pixels based on intensity AND color similarities.

Recoloring

Recoloring c.f. Poisson image editing Perez et al. SIGGRAPH 2003

Colorizing Video 13 out of 92 frames

Colorizing Video 16 out of 101 frames

Matting as Colorization Page of example results Red channel<->matte

Still Needed: Import image segmentation advantages: affinity functions, optimization techniques. Alternative color spaces, propagating hue and saturation differently

Other Approaches? Color space was YUV Small amount of user effort needed For film/color grading, can this be automated?

Linear Alignment Reinhard, Ashikhmin, Gooch, Shirley, CG&A 2001 (R, G, B) is rubbish: all channels are correlated (L*, a*, b*) is good Algorithm (per channel): Align mean Rescale standard deviation

Linear Alignment Reinhard, Ashikhmin, Gooch, Shirley, CG&A 2001 RGB is rubbish: all channels are correlated L* a* b* is good Algorithm (per channel): Align mean Rescale standard deviation

But Needs Some Guidance

Non-Linear Alignment Pitié, Kokaram, Dahyot, ICCV 2005 See their project web-page for code + papers See Lab page for code + paper

Iterate 1D Solution at Different Rotations 1D solution uses cumulative PDFs: ND solution: Pick a rotation matrix R, apply to both 3D distribs. Project both distribs. onto each axis in turn Apply 1D solution Unproject, unrotate <repeat>

Don t Forget Other Problems (Really) automatic colorization Flicker removal Dirt removal Noise removal Supersampling Texture (aren t histograms enough?) Two-scale Tone Management for Photographic Look, by Bae, Paris, Durand, Siggraph 2006

Don t Forget Other Problems (Really) automatic colorization Flicker removal Dirt removal Noise removal Supersampling Texture Two-scale Tone Management for Photographic Look, by Bae, Paris, Durand, Siggraph 2006