Capturing Light… in man and machine

Slides:



Advertisements
Similar presentations
Computational Photography: Color perception, light spectra, contrast Connelly Barnes.
Advertisements

Color & Light, Digitalization, Storage. Vision Rods work at low light levels and do not see color –That is, their response depends only on how many photons,
Color Image Processing
776 Computer Vision Jan-Michael Frahm, Enrique Dunn Fall 2014.
Light Light is fundamental for color vision Unless there is a source of light, there is nothing to see! What do we see? We do not see objects, but the.
Review: Image formation
Laurent Itti: CS599 – Computational Architectures in Biological Vision, USC Lecture 10: Color Perception. 1 Computational Architectures in Biological.
Lecture 30: Light, color, and reflectance CS4670: Computer Vision Noah Snavely.
Capturing Light… in man and machine : Computational Photography Alexei Efros, CMU, Fall 2006 Some figures from Steve Seitz, Steve Palmer, Paul Debevec,
What is color for?.
Capturing Light… in man and machine : Computational Photography Alexei Efros, CMU, Fall 2010.
Capturing Light… in man and machine : Computational Photography Alexei Efros, CMU, Fall 2008.
1 Computer Science 631 Lecture 6: Color Ramin Zabih Computer Science Department CORNELL UNIVERSITY.
Colors and sensors Slides from Bill Freeman, Fredo Durand, Rob Fergus, and David Forsyth, Alyosha Efros.
What is wrong with this picture? Recap from Lecture 2 Pinhole camera model Perspective projections Focal length and field of view Remember to use your.
Recap from Friday Pinhole camera model Perspective projections Lenses and their flaws Focus Depth of field Focal length and field of view.
Color Monday, Feb 7 Prof. Kristen Grauman UT-Austin.
Light and Color Computational Photography Derek Hoiem, University of Illinois 09/08/11 “Empire of Light”, Magritte.
9/14/04© University of Wisconsin, CS559 Spring 2004 Last Time Intensity perception – the importance of ratios Dynamic Range – what it means and some of.
Color Based on Kristen Grauman's Slides for Computer Vision.
Any questions about the current assignment? (I’ll do my best to help!)
Lenses: Focus and Defocus A lens focuses light onto the film – There is a specific distance at which objects are “in focus” other points project to a “circle.
1 Perception and VR MONT 104S, Fall 2008 Lecture 7 Seeing Color.
Physiology of Vision: a swift overview Pixels to Percepts A. Efros, CMU, Spring 2011 Some figures from Steve Palmer.
Computational Photography Derek Hoiem, University of Illinois
Physiology of Vision: a swift overview : Learning-Based Methods in Vision A. Efros, CMU, Spring 2009 Some figures from Steve Palmer.
Light and Color Jehee Lee Seoul National University With a lot of slides stolen from Alexei Efros, Stephen Palmer, Fredo Durand and others.
Color in image and video Mr.Nael Aburas. outline  Color Science  Color Models in Images  Color Models in Video.
Physiology of Vision: a swift overview : Advanced Machine Perception A. Efros, CMU, Spring 2006 Some figures from Steve Palmer.
1 Formation et Analyse d’Images Session 2 Daniela Hall 7 October 2004.
Recap from Lecture 2 Pinhole camera model Perspective projections Lenses and their flaws Focus Depth of field Focal length and field of view Chapter 2.
COLORCOLOR Angel 1.4 and 2.4 J. Lindblad
Histograms and Color Balancing Computational Photography Derek Hoiem, University of Illinois 09/10/15 “Empire of Light”, Magritte.
Color Processing : Rendering and Image Processing Alexei Efros …with most figures shamelessly stolen from Forsyth & Ponce and Gonzalez & Woods.
Introduction to Computer Graphics
Lecture 34: Light, color, and reflectance CS4670 / 5670: Computer Vision Noah Snavely.
Histograms and Color Balancing Computational Photography Derek Hoiem, University of Illinois 09/13/11 “Empire of Light”, Magritte.
1 CSCE441: Computer Graphics: Color Models Jinxiang Chai.
David Luebke 1 2/5/2016 Color CS 445/645 Introduction to Computer Graphics David Luebke, Spring 2003.
Capturing Light… in man and machine CS194: Image Manipulation & Computational Photography Alexei Efros, UC Berkeley, Fall 2015.
Color Phillip Otto Runge ( ). What is color? Color is a psychological property of our visual experiences when we look at objects and lights, not.
09/10/02(c) University of Wisconsin, CS559 Fall 2002 Last Time Digital Images –Spatial and Color resolution Color –The physics of color.
1 of 32 Computer Graphics Color. 2 of 32 Basics Of Color elements of color:
CSE 185 Introduction to Computer Vision
PNU Machine Vision Lecture 2a: Cameras Source: S. Lazebnik.
Color Models Light property Color models.
Welcome to a class with some content!
Capturing Light… in man and machine
Color Image Processing
Color Image Processing
Color Image Processing
Physiology of Vision: a swift overview
Capturing Light… in man and machine
Physiology of Vision: a swift overview
Color Image Processing
Color April 16th, 2015 Yong Jae Lee UC Davis.
Welcome to a class with some content!
© University of Wisconsin, CS559 Spring 2004
Engineering Math Physics (EMP)
Computer Vision Lecture 4: Color
CS 2770: Computer Vision Linear Algebra and Matlab
CS 1674: Intro to Computer Vision Linear Algebra Review
Jan-Michael Frahm Fall 2016
Lecture 13: Cameras and geometry
Color Image Processing
Capturing Light… in man and machine
Slides taken from Scott Schaefer
Color Image Processing
Computational Photography Derek Hoiem, University of Illinois
Histograms and Color Balancing
Presentation transcript:

Capturing Light… in man and machine CS194: Image Manipulation & Computational Photography Alexei Efros, UC Berkeley, Fall 2016

Textbook http://szeliski.org/Book/

General Comments “No Screens” Policy: Graduate Version: Prerequisites Linear algebra!!! (EE16A, Math 54, or Math 110) Good programming skills (at least CS61B) Some computer graphics, computer vision, or image processing is useful, but not required. Emphasis on programming projects! Building something from scratch Graduate Version: Need to do more on each project, plus a final paper “No Screens” Policy: No laptops, no cell phones, no smartphones, etc.

Getting help outside of class Course Web Page http://inst.eecs.berkeley.edu/~cs194-26/ Discussion board: piazza.com Office hours See http://inst.eecs.berkeley.edu/~cs194-26/

More Administrative Stuff Grading Programming Project (60%) 2/3rd Term Exam (20%) -> Nov 17, in class Final Project (20%) Class Participation: priceless Late Policy Five (5) emergency late days for semester, to be spent wisely Max 10% of full credit afterwards

For each project: Derive the math, implement stuff from scratch, and apply it to your own photos Every person does their own project (except final projects and camera obscura) Reporting via web page (plus submit code) Afterwards, vote for class favorite(s)! Programming Language: Matlab or Python you can use other languages, but you are on your own

Academic Integrity Can discuss projects, but don’t share code Don’t look up code or copy from a friend If you’re not sure if it’s allowed, ask Acknowledge any inspirations If you get stuck, come talk to us

Waitlists Unlikely that we will get a bigger room Historically, waitlists clear up eventually (especially after the first few projects ;)

Why you should NOT take this class Project-based class No canned problem sets Not theory-heavy (but will read a few research papers) No clean rubrics Open-ended by design Need time to think, not just hack Creativity is a class requirement Lots of work…There are easier classes if you just need some units you care more about the grade than about learning stuff Not worth it if you don’t enjoy it

Now… reasons TO take this class It’s your reward after 3 grueling years  You get to create pictures, unleash your creative potential Interested in grad school? 

Capturing Light… in man and machine CS194: Image Manipulation & Computational Photography Alexei Efros, UC Berkeley, Fall 2016

Etymology PHOTOGRAPHY drawing / writing light

Image Formation Digital Camera Film The Eye

Sensor Array CMOS sensor

Sampling and Quantization

Interlace vs. progressive scan http://www.axis.com/products/video/camera/progressive_scan.htm Slide by Steve Seitz

Progressive scan http://www.axis.com/products/video/camera/progressive_scan.htm Slide by Steve Seitz

Interlace http://www.axis.com/products/video/camera/progressive_scan.htm Slide by Steve Seitz

Rolling Shutter http://en.wikipedia.org/wiki/Rolling_shutter Even DSLRs have this problem. http://en.wikipedia.org/wiki/Rolling_shutter

Saccadic eye movement

Saccadic eye movement

The Eye The human eye is a camera! Iris - colored annulus with radial muscles Pupil - the hole (aperture) whose size is controlled by the iris What’s the “film”? photoreceptor cells (rods and cones) in the retina Slide by Steve Seitz

The Retina

Retina up-close Light

Two types of light-sensitive receptors Cones cone-shaped less sensitive operate in high light color vision Rods rod-shaped highly sensitive operate at night gray-scale vision © Stephen E. Palmer, 2002

Rod / Cone sensitivity The famous sock-matching problem…

Distribution of Rods and Cones Night Sky: why are there more stars off-center? © Stephen E. Palmer, 2002

Foundations of Vision, by Brian Wandell, Sinauer Assoc., 1995

Electromagnetic Spectrum At least 3 spectral bands required (e.g. R,G,B) Human Luminance Sensitivity Function http://www.yorku.ca/eye/photopik.htm

…because that’s where the Visible Light Why do we see light of these wavelengths? …because that’s where the Sun radiates EM energy © Stephen E. Palmer, 2002

The Physics of Light Any patch of light can be completely described physically by its spectrum: the number of photons (per time unit) at each wavelength 400 - 700 nm. © Stephen E. Palmer, 2002

The Physics of Light Some examples of the spectra of light sources © Stephen E. Palmer, 2002

The Physics of Light Some examples of the reflectance spectra of surfaces Red 400 700 Yellow 400 700 Blue 400 700 Purple 400 700 % Photons Reflected Wavelength (nm) © Stephen E. Palmer, 2002

The Psychophysical Correspondence There is no simple functional description for the perceived color of all lights under all viewing conditions, but …... A helpful constraint: Consider only physical spectra with normal distributions mean area variance © Stephen E. Palmer, 2002

The Psychophysical Correspondence Mean Hue # Photons Wavelength © Stephen E. Palmer, 2002

The Psychophysical Correspondence Variance Saturation Wavelength # Photons © Stephen E. Palmer, 2002

The Psychophysical Correspondence Area Brightness # Photons Wavelength © Stephen E. Palmer, 2002

Physiology of Color Vision Three kinds of cones: Why are M and L cones so close? Why are there 3? © Stephen E. Palmer, 2002

Trichromacy Rods and cones act as filters on the spectrum Power S Wavelength Rods and cones act as filters on the spectrum To get the output of a filter, multiply its response curve by the spectrum, integrate over all wavelengths Each cone yields one number How can we represent an entire spectrum with 3 numbers? We can’t! Most of the information is lost As a result, two different spectra may appear indistinguishable such spectra are known as metamers Slide by Steve Seitz

More Spectra metamers

Color Constancy The “photometer metaphor” of color perception: Color perception is determined by the spectrum of light on each retinal receptor (as measured by a photometer). © Stephen E. Palmer, 2002

Color Constancy The “photometer metaphor” of color perception: Color perception is determined by the spectrum of light on each retinal receptor (as measured by a photometer). © Stephen E. Palmer, 2002

Color Constancy The “photometer metaphor” of color perception: Color perception is determined by the spectrum of light on each retinal receptor (as measured by a photometer). © Stephen E. Palmer, 2002

Color Constancy Do we have constancy over all global color transformations? 60% blue filter Complete inversion © Stephen E. Palmer, 2002

Color Constancy Color Constancy: the ability to perceive the invariant color of a surface despite ecological Variations in the conditions of observation. Another of these hard inverse problems: Physics of light emission and surface reflection underdetermine perception of surface color © Stephen E. Palmer, 2002

Camera White Balancing Manual Choose color-neutral object in the photos and normalize Automatic (AWB) Grey World: force average color of scene to grey White World: force brightest object to white

Color Sensing in Camera (RGB) 3-chip vs. 1-chip: quality vs. cost Why more green? Why 3 colors? http://www.cooldictionary.com/words/Bayer-filter.wikipedia Slide by Steve Seitz

Green is in! R G B

Practical Color Sensing: Bayer Grid Estimate RGB at ‘G’ cels from neighboring values http://www.cooldictionary.com/ words/Bayer-filter.wikipedia Slide by Steve Seitz

Color Image R G B

Images in Matlab Images represented as a matrix Suppose we have a NxM RGB image called “im” im(1,1,1) = top-left pixel value in R-channel im(y, x, b) = y pixels down, x pixels to right in the bth channel im(N, M, 3) = bottom-right pixel in B-channel imread(filename) returns a uint8 image (values 0 to 255) Convert to double format (values 0 to 1) with im2double column row R 0.92 0.93 0.94 0.97 0.62 0.37 0.85 0.99 0.95 0.89 0.82 0.56 0.31 0.75 0.81 0.91 0.72 0.51 0.55 0.42 0.57 0.41 0.49 0.96 0.88 0.46 0.87 0.90 0.71 0.80 0.79 0.60 0.58 0.50 0.61 0.45 0.33 0.86 0.84 0.74 0.39 0.73 0.67 0.54 0.48 0.69 0.66 0.43 0.77 0.78 G 0.92 0.93 0.94 0.97 0.62 0.37 0.85 0.99 0.95 0.89 0.82 0.56 0.31 0.75 0.81 0.91 0.72 0.51 0.55 0.42 0.57 0.41 0.49 0.96 0.88 0.46 0.87 0.90 0.71 0.80 0.79 0.60 0.58 0.50 0.61 0.45 0.33 0.86 0.84 0.74 0.39 0.73 0.67 0.54 0.48 0.69 0.66 0.43 0.77 0.78 B 0.92 0.93 0.94 0.97 0.62 0.37 0.85 0.99 0.95 0.89 0.82 0.56 0.31 0.75 0.81 0.91 0.72 0.51 0.55 0.42 0.57 0.41 0.49 0.96 0.88 0.46 0.87 0.90 0.71 0.80 0.79 0.60 0.58 0.50 0.61 0.45 0.33 0.86 0.84 0.74 0.39 0.73 0.67 0.54 0.48 0.69 0.66 0.43 0.77 0.78

Color spaces How can we represent color? http://en.wikipedia.org/wiki/File:RGB_illumination.jpg

Color spaces: RGB RGB cube Default color space 0,1,0 R 1,0,0 G 0,0,1 B (R=0,B=0) RGB cube Easy for devices But not perceptual Where do the grays live? Where is hue and saturation? B (R=0,G=0) Image from: http://en.wikipedia.org/wiki/File:RGB_color_solid_cube.png

HSV Hue, Saturation, Value (Intensity) RGB cube on its vertex Decouples the three components (a bit) Use rgb2hsv() and hsv2rgb() in Matlab Slide by Steve Seitz

Color spaces: HSV Intuitive color space H S V (S=1,V=1) (H=1,V=1)

Color spaces: L*a*b* “Perceptually uniform”* color space L a b (L=65,b=0) b (L=65,a=0)

Programming Project #1 Prokudin-Gorskii’s Color Photography (1907)

Programming Project #1

Programming Project #1 How to compare R,G,B channels? No right answer Sum of Squared Differences (SSD): Normalized Correlation (NCC):