Recap of Previous Lecture Matting foreground from background Using a single known background (and a constrained foreground) Using two known backgrounds.

Slides:



Advertisements
Similar presentations
High Dynamic Range Imaging Samu Kemppainen VBM02S.
Advertisements

Cameras Digital Visual Effects, Spring 2005 Yung-Yu Chuang 2005/3/2 with slides by Brian Curless, Steve Seitz and Alexei Efros.
UNDERSTANDING RAW Joe Sukenick DigiQuest
Computational Photography: Color perception, light spectra, contrast Connelly Barnes.
16421: Vision Sensors Lecture 6: Radiometry and Radiometric Calibration Instructor: S. Narasimhan Wean 5312, T-R 1:30pm – 2:50pm.
Computer graphics & visualization HDRI. computer graphics & visualization Image Synthesis – WS 07/08 Dr. Jens Krüger – Computer Graphics and Visualization.
10/14/14 Image-based Lighting Computational Photography Derek Hoiem, University of Illinois Many slides from Debevec, some from Efros T2.
CS443: Digital Imaging and Multimedia Point Operations on Digital Images Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University Spring.
Capturing light Source: A. Efros. Review Pinhole projection models What are vanishing points and vanishing lines? What is orthographic projection? How.
High Dynamic Range Images : Computational Photography Alexei Efros, CMU, Fall 2005 …with a lot of slides stolen from Paul Debevec and Yuanzhen Li,
High Dynamic Range Images : Rendering and Image Processing Alexei Efros.
Capturing Light… in man and machine : Computational Photography Alexei Efros, CMU, Fall 2006 Some figures from Steve Seitz, Steve Palmer, Paul Debevec,
High Dynamic Range Images : Computational Photography Alexei Efros, CMU, Fall 2006 …with a lot of slides stolen from Paul Debevec and Yuanzhen Li,
Imaging Techniques in Digital Cameras Presented by Jinyun Ren Jan
10/16/14 Image-based Lighting (Part 2) Computational Photography Derek Hoiem, University of Illinois Many slides from Debevec, some from Efros, Kevin Karsch.
A New Correspondence Algorithm Jitendra Malik Computer Science Division University of California, Berkeley Joint work with Serge Belongie, Jan Puzicha,
Computational Photography lecture 13 – HDR CS 590 Spring 2014 Prof. Alex Berg (Credits to many other folks on individual slides)
1/22/04© University of Wisconsin, CS559 Spring 2004 Last Time Course introduction Image basics.
Computer Graphics Inf4/MSc Computer Graphics Lecture Notes #16 Image-Based Lighting.
Basic Principles of Imaging and Photometry Lecture #2 Thanks to Shree Nayar, Ravi Ramamoorthi, Pat Hanrahan.
Light and shading Source: A. Efros.
Photography Is the capture of reflective light on light sensitive material. Film-Base Photography used “silver” as the light sensitive material. Digital.
Digital Photography Basics. Pixels A pixel is a contraction if the term PIcture ELement. Digital images are made up of small squares, just like a tile.
11/18/10 Image-based Lighting (Part 2) Computational Photography Derek Hoiem, University of Illinois Many slides from Debevec, some from Efros T2.
Making the best pictures You could possibly make.
Core Issues in Digital Preservation: Text and Images Jacob Nadal, Preservation Officer UCLA Library.
Tone mapping with slides by Fredo Durand, and Alexei Efros Digital Image Synthesis Yung-Yu Chuang 11/08/2005.
Recovering High Dynamic Range Radiance Maps from Photographs [Debevec, Malik - SIGGRAPH’97] Presented by Sam Hasinoff CSC2522 – Advanced Image Synthesis.
Photographics 10 Introduction to Digital Photography
High dynamic range imaging. Camera pipeline 12 bits8 bits.
11/15/11 Image-based Lighting Computational Photography Derek Hoiem, University of Illinois Many slides from Debevec, some from Efros T2.
Camera Geometry and Calibration Thanks to Martial Hebert.
1 Image Basics Hao Jiang Computer Science Department Sept. 4, 2014.
Image-Based Rendering from a Single Image Kim Sang Hoon Samuel Boivin – Andre Gagalowicz INRIA.
How A Camera Works Image Sensor Shutter Mirror Lens.
High Dynamic Range Images cs195g: Computational Photography James Hays, Brown, Spring 2010 slides from Alexei A. Efros and Paul Debevec.
03/10/03© 2003 University of Wisconsin Last Time Tone Reproduction and Perceptual Issues Assignment 2 all done (almost)
© N. David King. High Dynamic Range Imaging For Digital Photography © N. David King.
16421: Vision Sensors Lecture 7: High Dynamic Range Imaging Instructor: S. Narasimhan Wean 5312, T-R 1:30pm – 3:00pm.
Computational photography CS4670: Computer Vision Noah Snavely.
Dynamic Range And Granularity. Dynamic range is important. It is defined as the difference between light and dark areas of an image. All digital images.
FYS 100 Creative Discovery in Digital Art Forms Fall 2008 Burg Digital Photography Assignment.
High-Resolution Interactive Panoramas with MPEG-4 발표자 : 김영백 임베디드시스템연구실.
16421: Vision Sensors Lecture 7: High Dynamic Range Imaging Instructor: S. Narasimhan Wean 5312, T-R 1:30pm – 3:00pm.
Capturing light Source: A. Efros.
Digital Cameras And Digital Information. How a Camera works Light passes through the lens Shutter opens for an instant Film is exposed to light Film is.
Film Digital Image Synthesis Yung-Yu Chuang 11/5/2008 with slides by Pat Hanrahan and Matt Pharr.
Image-Based Lighting © Eirik Holmøyvik …with a lot of slides donated by Paul Debevec CS194: Image Manipulation & Computational Photography Alexei Efros,
High Dynamic Range Images : Computational Photography Alexei Efros, CMU, Spring 2010 …with a lot of slides stolen from Paul Debevec © Alyosha Efros.
Rendering Synthetic Objects into Real Scenes: Bridging Traditional and Image-based Graphics with Global Illumination and High Dynamic Range Photography.
11/16/10 Image-based Lighting Computational Photography Derek Hoiem, University of Illinois Many slides from Debevec, some from Efros T2.
How digital cameras work The Exposure The big difference between traditional film cameras and digital cameras is how they capture the image. Instead of.
FYS 100 Creative Discovery in Digital Art Forms Spring 2007 Burg Digital Photography Assignment.
High dynamic range imaging Digital Visual Effects, Spring 2006 Yung-Yu Chuang 2006/3/8 with slides by Fedro Durand, Brian Curless, Steve Seitz and Alexei.
The Camera. Photography is all about how light interacts with film and with paper. Cameras are designed to control the amount of light that reaches film.
Fundamentals of Digital Images & Photography. Pixels & Colors The pixel (a word invented from "picture element") is the basic unit of programmable color.
Tone mapping Digital Visual Effects, Spring 2007 Yung-Yu Chuang 2007/3/13 with slides by Fredo Durand, and Alexei Efros.
Distributed Ray Tracing. Can you get this with ray tracing?
Unit 1 The History of Photography & The Camera
Image-based Lighting Computational Photography
donated by Paul Debevec
© 2005 University of Wisconsin
Capturing light Source: A. Efros.
Point Processing CS194: Image Manipulation & Computational Photography
High Dynamic Range Images
Digital Visual Effects, Spring 2006 Yung-Yu Chuang 2006/3/8
Digital Image Synthesis Yung-Yu Chuang 11/01/2005
Recovering HDR radiance maps for Project 5
Digital Image Synthesis Yung-Yu Chuang 11/8/2007
Presentation transcript:

Recap of Previous Lecture Matting foreground from background Using a single known background (and a constrained foreground) Using two known backgrounds Using lots of backgrounds to capture reflection and refraction Separating direct illumination and global illumination using structured lighting

Next lectures on HDR (1)Recovering high dynamic range images (2)Rendering high dynamic range back to displayable low dynamic range (tone mapping)

High Dynamic Range Images cs129: Computational Photography James Hays, Brown, Fall 2012 slides from Alexei A. Efros and Paul Debevec

Problem: Dynamic Range , ,000 2,000,000,000 The real world is high dynamic range.

Long Exposure Real world Picture 0 to 255 High dynamic range

Short Exposure Real world Picture High dynamic range 0 to 255

pixel (312, 284) = 42 Image 42 photons?

Camera Calibration Geometric –How pixel coordinates relate to directions in the world Photometric –How pixel values relate to radiance amounts in the world Geometric –How pixel coordinates relate to directions in the world Photometric –How pixel values relate to radiance amounts in the world

Camera Calibration Geometric –How pixel coordinates relate to directions in the world in other images. Photometric –How pixel values relate to radiance amounts in the world in other images. Geometric –How pixel coordinates relate to directions in the world in other images. Photometric –How pixel values relate to radiance amounts in the world in other images.

The Image Acquisition Pipeline scene radiance (W/sr/m ) scene radiance (W/sr/m )  sensor exposure sensor exposure Lens Shutter 2 2 tttt analog voltages analog voltages digital values digital values pixel values pixel values ADC Remapping CCD Raw Image JPEG Image sensor irradiance (W/m ) sensor irradiance (W/m ) 2 2

log Exposure = log (Radiance *  t) Imaging system response function Pixelvalue (CCD photon count)

Varying Exposure

Camera is not a photometer! Limited dynamic range  Perhaps use multiple exposures? Unknown, nonlinear response  Not possible to convert pixel values to radiance Solution: –Recover response curve from multiple exposures, then reconstruct the radiance map Limited dynamic range  Perhaps use multiple exposures? Unknown, nonlinear response  Not possible to convert pixel values to radiance Solution: –Recover response curve from multiple exposures, then reconstruct the radiance map

Recovering High Dynamic Range Radiance Maps from Photographs Paul Debevec Jitendra Malik Paul Debevec Jitendra Malik August 1997 Computer Science Division University of California at Berkeley Computer Science Division University of California at Berkeley

Ways to vary exposure  Shutter Speed (*)  F/stop (aperture, iris)  Neutral Density (ND) Filters  Shutter Speed (*)  F/stop (aperture, iris)  Neutral Density (ND) Filters

Shutter Speed Ranges: Canon D30: 30 to 1/4,000 sec. Sony VX2000: ¼ to 1/10,000 sec. Pros: Directly varies the exposure Usually accurate and repeatable Issues: Noise in long exposures Ranges: Canon D30: 30 to 1/4,000 sec. Sony VX2000: ¼ to 1/10,000 sec. Pros: Directly varies the exposure Usually accurate and repeatable Issues: Noise in long exposures

Shutter Speed Note: shutter times usually obey a power series – each “stop” is a factor of 2 ¼, 1/8, 1/15, 1/30, 1/60, 1/125, 1/250, 1/500, 1/1000 sec Usually really is: ¼, 1/8, 1/16, 1/32, 1/64, 1/128, 1/256, 1/512, 1/1024 sec Note: shutter times usually obey a power series – each “stop” is a factor of 2 ¼, 1/8, 1/15, 1/30, 1/60, 1/125, 1/250, 1/500, 1/1000 sec Usually really is: ¼, 1/8, 1/16, 1/32, 1/64, 1/128, 1/256, 1/512, 1/1024 sec

 t = 1 sec  t = 1/16 sec  t = 4 sec  t = 1/64 sec The Algorithm Image series  t = 1/4 sec Exposure = Radiance   t log Exposure = log Radiance  log  t Pixel Value Z = f(Exposure)

The Algorithm  t = 1 sec  t = 1/16 sec  t = 4 sec  t = 1/64 sec Image series  t = 1/4 sec log Exposure = log Radiance  log  t ln Exposure Assuming unit radiance for each pixel Assuming unit radiance for each pixel Pixel value Exposure = Radiance   t Pixel Value Z = f(Exposure)

Response Curve ln Exposure Assuming unit radiance for each pixel Assuming unit radiance for each pixel After adjusting radiances to obtain a smooth response curve Pixel value ln Exposure Pixel value

The Math Let g(z) be the discrete inverse response function For each pixel site i in each image j, want: Solve the overdetermined linear system: Let g(z) be the discrete inverse response function For each pixel site i in each image j, want: Solve the overdetermined linear system: fitting termsmoothness term

Matlab Code function [g,lE]=gsolve(Z,B,l,w) n = 256; A = zeros(size(Z,1)*size(Z,2)+n+1,n+size(Z,1)); b = zeros(size(A,1),1); k = 1; % Include the data-fitting equations for i=1:size(Z,1) for j=1:size(Z,2) wij = w(Z(i,j)+1); A(k,Z(i,j)+1) = wij; A(k,n+i) = -wij; b(k,1) = wij * B(i,j); k=k+1; end A(k,129) = 1; % Fix the curve by setting its middle value to 0 k=k+1; for i=1:n-2 % Include the smoothness equations A(k,i)=l*w(i+1); A(k,i+1)=-2*l*w(i+1); A(k,i+2)=l*w(i+1); k=k+1; end x = A\b; % Solve the system using SVD g = x(1:n); lE = x(n+1:size(x,1));

Results: Digital Camera Recovered response curve log Exposure Pixel value Kodak DCS460 1/30 to 30 sec

Reconstructed radiance map

Results: Color Film Kodak Gold ASA 100, PhotoCD

Recovered Response Curves RedGreen RGBBlue

The Radiance Map

How do we store this?

Portable FloatMap (.pfm) 12 bytes per pixel, 4 for each channel signexponentmantissa PF Floating Point TIFF similar Text header similar to Jeff Poskanzer’s.ppm image format:

(145, 215, 87, 149) = (145, 215, 87) * 2^( ) = ( , , ) (145, 215, 87, 149) = (145, 215, 87) * 2^( ) = ( , , ) Red Green Blue Exponent 32 bits / pixel (145, 215, 87, 103) = (145, 215, 87) * 2^( ) = ( , , ) (145, 215, 87, 103) = (145, 215, 87) * 2^( ) = ( , , ) Ward, Greg. "Real Pixels," in Graphics Gems IV, edited by James Arvo, Academic Press, 1994 Radiance Format (.pic,.hdr)

ILM’s OpenEXR (.exr) 6 bytes per pixel, 2 for each channel, compressed signexponentmantissa Several lossless compression options, 2:1 typical Compatible with the “half” datatype in NVidia's Cg Supported natively on GeForce FX and Quadro FX Available at

Now What?

Tone Mapping Real World Ray Traced World (Radiance) Display/ Printer 0 to 255 High dynamic range How can we do this? Linear scaling?, thresholding? Suggestions? How can we do this? Linear scaling?, thresholding? Suggestions?

The Radiance Map Linearly scaled to display device

Simple Global Operator Compression curve needs to –Bring everything within range –Leave dark areas alone In other words –Asymptote at 255 –Derivative of 1 at 0 Compression curve needs to –Bring everything within range –Leave dark areas alone In other words –Asymptote at 255 –Derivative of 1 at 0

Global Operator (Reinhart et al)

Global Operator Results

Darkest 0.1% scaled to display device Reinhart Operator

What do we see? Vs.

Issues with multi-exposure HDR Scene and camera need to be static Camera sensors are getting better and better Display devices are fairly limited anyway (although getting better).

What about local tone mapping? What about avoiding radiance map reconstruction entirely?