Computational photography research at Stanford January 2012 Marc Levoy Computer Science Department Stanford University Outline ! Light field photography ! FCam and the Stanford Frankencamera ! User interfaces for computational photography ! Ongoing projects • FrankenSLR • burst-mode photography • languages and architectures for programmable cameras • computational videography and cinematography • multi-bucket pixels 2 ! Marc Levoy Light field photography using a handheld plenoptic camera Ren Ng, Marc Levoy, Mathieu Brédif, Gene Duval, Mark Horowitz and Pat Hanrahan (Proc. SIGGRAPH 2005 and TR 2005-02) Light field photography [Ng SIGGRAPH 2005] ! Marc Levoy Prototype camera Contax medium format camera Kodak 16-megapixel sensor Adaptive Optics microlens array 125µ square-sided microlenses 4000 ! 4000 pixels ÷ 292 ! 292 lenses = 14 ! 14 pixels per lens Digital refocusing ! ! ! 2010 Marc Levoy Example of digital refocusing ! 2010 Marc Levoy Refocusing portraits ! 2010 Marc Levoy Light field photography (Flash demo) ! 2010 Marc Levoy Commercialization • trades off (excess) spatial resolution for ability to refocus and adjust the perspective • sensor pixels should be made even smaller, subject to the diffraction limit, for example: 36mm ! 24mm ÷ 2.5µ pixels = 266 Mpix 20K ! 13K pixels 4000 ! 2666 pixels ! 20 ! 20 rays per pixel or 2000 ! 1500 pixels ! 3 ! 3 rays per pixel = 27 Mpix ! Marc Levoy Camera 2.0 Marc Levoy Computer Science Department Stanford University The Stanford Frankencameras Frankencamera F2 Nokia N900 “F” ! facilitate research in experimental computational photography ! for students in computational photography courses worldwide ! proving ground for plugins and apps for future cameras 14 ! 2010 Marc Levoy CS 448A - Computational Photography 15 ! 2010 Marc Levoy CS 448 projects M. Culbreth, A. Davis!! ! ! A phone-to-phone 4D light field fax machine J. Koberstein, A. Mattos!! ! Motion blur detection as a game controller N. Sakunkoo!! ! ! ! ! ! Camera-assisted self portraits on mobile devices C. DuHadway!! ! ! ! ! ! Driving/parking assistive mosaics using car cameras C.-H. Chen, S.H. Park!!!High dynamic range (HDR) viewfinding V. Chandrasekhar, G. Takacs!High dynamic range imaging on the Nokia N95 L. Kim, S. Que !! ! !User interfaces for adjusting focus and tone A.Y.L. Chan, S. Meador!! !Photography using circular/hemispherical ring flash P. Huang, Z. Zheng !! ! Image deblurring from multiple images M. Smith !! ! ! ! ! ! ! Representative (non-real) thumbnails for small screens A. Medearis !!!!!!Multi-shot noise reduction for sports photography D. Johnson !! ! ! ! ! ! Synthetic aperture photography using a painted aperture D. Chan !! ! ! ! ! ! Synthetic aperture rear view mirror for safer driving 16 ! 2010 Marc Levoy Frankencamera architecture Requests Image Sensor Con!gure Application Devices Processor 1 Lens Actions Expose 2 Flash Readout Metadata + ... 3 Imaging Processor Images and Statistics Image Statistics Processing Collection 4 17 ! 2010 Marc Levoy Frankencamera software: the FCAM API Sensor sensor; Flash flash; vector<Shot> burst(2); burst[0].exposure = 1/200.; burst[1].exposure = 1/30.; Flash::FireAction fire(&flash); fire.time = burst[0].exposure/2; burst[0].actions.insert(fire); sensor.stream(burst); while (1) { Frame flashFrame = sensor.getFrame(); Frame noflashFrame = sensor.getFrame(); } 18 ! 2010 Marc Levoy Demonstration applications • Canon 430EX (smaller flash) strobed continuously • Canon 580EX (larger flash) fired once at end of exposure 19 ! 2010 Marc Levoy Fcam is being actively ported to... ! Android (at least by NVIDIA) ! iOS? ! Nokia/Microsoft? ! Android point-and-shoot camera? 20 ! 2010 Marc Levoy Prospects for computational photography ! the megapixel wars are over (and it’s about time) ! computational photography is the next battleground in the camera industry (it’s already starting) 21 ! Marc Levoy Premise: available computing power in cameras is rising faster than megapixels 12 70 9 52.5 6 35 megapixels 3 17.5 billions of pixels / second of pixels billions 0 0 2005 2006 2007 2008 2009 2010 Avg megapixels in new cameras, CAGR = 1.2 NVIDIA GTX texture fill rate, CAGR = 1.8 (CAGR for Moore’s law = 1.5) ! this “headroom” permits more computation per pixel, 22 or more frames per second, or less custom hardware ! Marc Levoy Interfaces for computational photography ! the megapixel wars are over (long overdue) ! computational photography is the next battleground in the camera industry (it’s already starting) ! how will these features appear to consumers? • standard and invisible • standard and visible (and disable-able) • aftermarket plugins and apps for your camera 23 ! Marc Levoy Interfaces for computational photography ! the megapixel wars are over (long overdue) ! computational photography is the next battleground in the camera industry (it’s already starting) ! how will these features appear to consumers? • standard and invisible • standard and visible (and disable-able) • aftermarket plugins and apps for your camera ! but aren’t cameras too complicated already? • won’t computational photography make this worse? 24 ! Marc Levoy Sony NEX-5 ! manual is 159 pages long • and full of grammatical mistakes ! scene modes are not explained well • Sunset: Shoots the red of the sunset beautifully. (page 43) ! user interface is difficult to navigate 1 8 2 9 3 10 4 11 5 12 6 13 7 25 ! Marc Levoy ProHDR for the iPhone 4S " 1 " " 2 " ! most popular HDR capture method on the market ! app developers are making photography easy again! 26 ! Marc Levoy Free 27 Free 28 Free 29 Free circa 500,000 downloads in 2011 30 iPhone 4, single HD video frame 31 SynthCam, align & average ~30 frames SNR increases as sqrt(# of frames) 32 SynthCam Canon 5DII, 1/400 sec Canon 5DII, average of 15 shots of 1/6 sec (Marc Levoy) (Marc Levoy) Removing foreground objects by translating the camera • align the shots • match histograms • apply median filter ! 2010 Marc Levoy Ongoing projects ! Frankencamera F3 (“FrankenSLR”) • SLR-quality sensor, but big, heavy, and expensive ($10K) Micron MT9001 Cypress LUPA 4000 • cell phone quality • DSLR quality • $150 • $1500 • arbitrary ROIs and non-destructive readout 39 ! 2010 Marc Levoy Ongoing projects ! Frankencamera F3 (“FrankenSLR”) • SLR-quality sensor, but big, heavy, and expensive ($10K) ! high-speed burst-mode photography • all still cameras should capture at (up to) 500 fps • capture while aiming the camera - no shutter half-press • frameless photography - ROIs, MOIs (“M” = Moment) 40 ! 2010 Marc Levoy Burst-mode photography 41 ! 2010 Marc Levoy Ongoing projects ! Frankencamera F3 (“FrankenSLR”) • SLR-quality sensor, but big, heavy, and expensive ($10K) ! high-speed burst-mode photography • all still cameras should capture at (up to) 500 fps • capture while aiming the camera - no shutter half-press • frameless photography - ROIs, MOIs (“M” = Moment) ! languages and architectures for programmable cameras • FCam was an API for camera control • now we need APIs for photographic processing and computer vision 42 ! 2010 Marc Levoy Ongoing projects ! Frankencamera F3 (“FrankenSLR”) • SLR-quality sensor, but big, heavy, and expensive ($10K) ! high-speed burst-mode photography • all still cameras should capture at (up to) 500 fps • capture while aiming the camera - no shutter half-press • frameless photography - ROIs, MOIs (“M” = Moment) ! languages and architectures for programmable cameras • FCam was an API for camera control • now we need APIs for photographic processing and computer vision ! computational videography & cinematography • stabilization, stereo, view interpolation, free-viewpoint video 43 ! 2010 Marc Levoy 3D video stabilization [Agarwala 2011] 44 (http://web.cecs.pdx.edu/~fliu/project/subspace_stabilization/demo.mp4) ! Marc Levoy Camera 3.0: multi-bucket pixels transfer gates TX1 TX2 storage nodes photodetector ! a CMOS pixel architecture with multiple accumulation nodes per pixel ! can flip between TX1 and TX2 very fast • all pixels flip at once 45 ! 2009 Marc Levoy Flash/noflash photography [Agrawal SIGGRAPH 2005] another app: TX1 TX2 HDR capture put flash exposure in middle of (with no differences in object motion ambient exposure between exposures) 46 ! 2009 Marc Levoy !"#$%&'()*$+,-'.+"/ High Dynamic Range Photography Short exposure Long exposure HDR Image 47 !"#$%&'()*$+,-'.+"/ Motion artifacts in HDR 48 !"#$%&'()*$+,-'.+"/ HDR Photography using 4-bucket pixels Images with different exposures tightly interleaved 49 !"#$%&'()*$+,-'.+"/ 4-Bucket Pixel Layout (3D View) 50 Requests Image Sensor Con!gure Application Devices Processor 1 Lens Actions Expose 2 Flash Readout Metadata + ... 3 Imaging Processor Sensor sensor; Images and Statistics Image Statistics Shot low, med, high; Processing Collection 4 low.exposure = 1/80.; med.exposure = 1/20.; high.exposure = 1/5.; sensor.capture(low); sensor.capture(med); sensor.capture(high); Frame frames[3]; frames[0] = sensor.getFrame(); frames[1] = sensor.getFrame(); frames[2] = sensor.getFrame(); fused = mergeHDR(frames); http://graphics.stanford.edu/projects/camera-2.0/.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages51 Page
-
File Size-