Light Field Rendering Marc Levo Y and Pat Hanrahan Computer Science Department Stanford University
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Domain-Specific Programming Systems
Lecture 22: Domain-Specific Programming Systems Parallel Computer Architecture and Programming CMU 15-418/15-618, Spring 2020 Slide acknowledgments: Pat Hanrahan, Zach Devito (Stanford University) Jonathan Ragan-Kelley (MIT, Berkeley) Course themes: Designing computer systems that scale (running faster given more resources) Designing computer systems that are efficient (running faster under constraints on resources) Techniques discussed: Exploiting parallelism in applications Exploiting locality in applications Leveraging hardware specialization (earlier lecture) CMU 15-418/618, Spring 2020 Claim: most software uses modern hardware resources inefficiently ▪ Consider a piece of sequential C code - Call the performance of this code our “baseline performance” ▪ Well-written sequential C code: ~ 5-10x faster ▪ Assembly language program: maybe another small constant factor faster ▪ Java, Python, PHP, etc. ?? Credit: Pat Hanrahan CMU 15-418/618, Spring 2020 Code performance: relative to C (single core) GCC -O3 (no manual vector optimizations) 51 40/57/53 47 44/114x 40 = NBody 35 = Mandlebrot = Tree Alloc/Delloc 30 = Power method (compute eigenvalue) 25 20 15 10 5 Slowdown (Compared to C++) Slowdown (Compared no data no 0 data no Java Scala C# Haskell Go Javascript Lua PHP Python 3 Ruby (Mono) (V8) (JRuby) Data from: The Computer Language Benchmarks Game: CMU 15-418/618, http://shootout.alioth.debian.org Spring 2020 Even good C code is inefficient Recall Assignment 1’s Mandelbrot program Consider execution on a high-end laptop: quad-core, Intel Core i7, AVX instructions... Single core, with AVX vector instructions: 5.8x speedup over C implementation Multi-core + hyper-threading + AVX instructions: 21.7x speedup Conclusion: basic C implementation compiled with -O3 leaves a lot of performance on the table CMU 15-418/618, Spring 2020 Making efficient use of modern machines is challenging (proof by assignments 2, 3, and 4) In our assignments, you only programmed homogeneous parallel computers. -
Multi-Perspective Stereoscopy from Light Fields
Multi-Perspective stereoscopy from light fields The MIT Faculty has made this article openly available. Please share how this access benefits you. Your story matters. Citation Changil Kim, Alexander Hornung, Simon Heinzle, Wojciech Matusik, and Markus Gross. 2011. Multi-perspective stereoscopy from light fields. ACM Trans. Graph. 30, 6, Article 190 (December 2011), 10 pages. As Published http://dx.doi.org/10.1145/2070781.2024224 Publisher Association for Computing Machinery (ACM) Version Author's final manuscript Citable link http://hdl.handle.net/1721.1/73503 Terms of Use Creative Commons Attribution-Noncommercial-Share Alike 3.0 Detailed Terms http://creativecommons.org/licenses/by-nc-sa/3.0/ Multi-Perspective Stereoscopy from Light Fields Changil Kim1,2 Alexander Hornung2 Simon Heinzle2 Wojciech Matusik2,3 Markus Gross1,2 1ETH Zurich 2Disney Research Zurich 3MIT CSAIL v u s c Disney Enterprises, Inc. Input Images 3D Light Field Multi-perspective Cuts Stereoscopic Output Figure 1: We propose a framework for flexible stereoscopic disparity manipulation and content post-production. Our method computes multi-perspective stereoscopic output images from a 3D light field that satisfy arbitrary prescribed disparity constraints. We achieve this by computing piecewise continuous cuts (shown in red) through the light field that enable per-pixel disparity control. In this particular example we employed gradient domain processing to emphasize the depth of the airplane while suppressing disparities in the rest of the scene. Abstract tions of autostereoscopic and multi-view autostereoscopic displays even glasses-free solutions become available to the consumer. This paper addresses stereoscopic view generation from a light field. We present a framework that allows for the generation However, the task of creating convincing yet perceptually pleasing of stereoscopic image pairs with per-pixel control over disparity, stereoscopic content remains difficult. -
The Mission of IUPUI Is to Provide for Its Constituents Excellence in Teaching and Learning; Research, Scholarship, and Creative Activity; and Civic Engagement
INFO H517 Visualization Design, Analysis, and Evaluation Department of Human-Centered Computing Indiana University School of Informatics and Computing, Indianapolis Fall 2016 Section No.: 35557 Credit Hours: 3 Time: Wednesdays 12:00 – 2:40 PM Location: IT 257, Informatics & Communications Technology Complex 535 West Michigan Street, Indianapolis, IN 46202 [map] First Class: August 24, 2016 Website: http://vis.ninja/teaching/h590/ Instructor: Khairi Reda, Ph.D. in Computer Science (University of Illinois, Chicago) Assistant Professor, Human–Centered Computing Office Hours: Mondays, 1:00-2:30PM, or by Appointment Office: IT 581, Informatics & Communications Technology Complex 535 West Michigan Street, Indianapolis, IN 46202 [map] Phone: (317) 274-5788 (Office) Email: [email protected] Website: http://vis.ninja/ Prerequisites: Prior programming experience in a high-level language (e.g., Java, JavaScript, Python, C/C++, C#). COURSE DESCRIPTION This is an introductory course in design and evaluation of interactive visualizations for data analysis. Topics include human visual perception, visualization design, interaction techniques, and evaluation methods. Students develop projects to create their own web- based visualizations and develop competence to undertake independent research in visualization and visual analytics. EXTENDED COURSE DESCRIPTION This course introduces students to interactive data visualization from a human-centered perspective. Students learn how to apply principles from perceptual psychology, cognitive science, and graphics design to create effective visualizations for a variety of data types and analytical tasks. Topics include fundamentals of human visual perception and cognition, 1 2 graphical data encoding, visual representations (including statistical plots, maps, graphs, small-multiples), task abstraction, interaction techniques, data analysis methods (e.g., clustering and dimensionality reduction), and evaluation methods. -
Computational Photography
Computational Photography George Legrady © 2020 Experimental Visualization Lab Media Arts & Technology University of California, Santa Barbara Definition of Computational Photography • An R & D development in the mid 2000s • Computational photography refers to digital image-capture cameras where computers are integrated into the image-capture process within the camera • Examples of computational photography results include in-camera computation of digital panoramas,[6] high-dynamic-range images, light- field cameras, and other unconventional optics • Correlating one’s image with others through the internet (Photosynth) • Sensing in other electromagnetic spectrum • 3 Leading labs: Marc Levoy, Stanford (LightField, FrankenCamera, etc.) Ramesh Raskar, Camera Culture, MIT Media Lab Shree Nayar, CV Lab, Columbia University https://en.wikipedia.org/wiki/Computational_photography Definition of Computational Photography Sensor System Opticcs Software Processing Image From Shree K. Nayar, Columbia University From Shree K. Nayar, Columbia University Shree K. Nayar, Director (lab description video) • Computer Vision Laboratory • Lab focuses on vision sensors; physics based models for vision; algorithms for scene interpretation • Digital imaging, machine vision, robotics, human- machine interfaces, computer graphics and displays [URL] From Shree K. Nayar, Columbia University • Refraction (lens / dioptrics) and reflection (mirror / catoptrics) are combined in an optical system, (Used in search lights, headlamps, optical telescopes, microscopes, and telephoto lenses.) • Catadioptric Camera for 360 degree Imaging • Reflector | Recorded Image | Unwrapped [dance video] • 360 degree cameras [Various projects] Marc Levoy, Computer Science Lab, Stanford George Legrady Director, Experimental Visualization Lab Media Arts & Technology University of California, Santa Barbara http://vislab.ucsb.edu http://georgelegrady.com Marc Levoy, Computer Science Lab, Stanford • Light fields were introduced into computer graphics in 1996 by Marc Levoy and Pat Hanrahan. -
Surfacing Visualization Mirages
Surfacing Visualization Mirages Andrew McNutt Gordon Kindlmann Michael Correll University of Chicago University of Chicago Tableau Research Chicago, IL Chicago, IL Seattle, WA [email protected] [email protected] [email protected] ABSTRACT In this paper, we present a conceptual model of these visual- Dirty data and deceptive design practices can undermine, in- ization mirages and show how users’ choices can cause errors vert, or invalidate the purported messages of charts and graphs. in all stages of the visual analytics (VA) process that can lead These failures can arise silently: a conclusion derived from to untrue or unwarranted conclusions from data. Using our a particular visualization may look plausible unless the an- model we observe a gap in automatic techniques for validating alyst looks closer and discovers an issue with the backing visualizations, specifically in the relationship between data data, visual specification, or their own assumptions. We term and chart specification. We address this gap by developing a such silent but significant failures visualization mirages. We theory of metamorphic testing for visualization which synthe- describe a conceptual model of mirages and show how they sizes prior work on metamorphic testing [92] and algebraic can be generated at every stage of the visual analytics process. visualization errors [54]. Through this combination we seek to We adapt a methodology from software testing, metamorphic alert viewers to situations where minor changes to the visual- testing, as a way of automatically surfacing potential mirages ization design or backing data have large (but illusory) effects at the visual encoding stage of analysis through modifications on the resulting visualization, or where potentially important to the underlying data and chart specification. -
To Draw a Tree
To Draw a Tree Pat Hanrahan Computer Science Department Stanford University Motivation Hierarchies File systems and web sites Organization charts Categorical classifications Similiarity and clustering Branching processes Genealogy and lineages Phylogenetic trees Decision processes Indices or search trees Decision trees Tournaments Page 1 Tree Drawing Simple Tree Drawing Preorder or inorder traversal Page 2 Rheingold-Tilford Algorithm Information Visualization Page 3 Tree Representations Most Common … Page 4 Tournaments! Page 5 Second Most Common … Lineages Page 6 http://www.royal.gov.uk/history/trees.htm Page 7 Demonstration Saito-Sederberg Genealogy Viewer C. Elegans Cell Lineage [Sulston] Page 8 Page 9 Page 10 Page 11 Evolutionary Trees [Haeckel] Page 12 Page 13 [Agassiz, 1883] 1989 Page 14 Chapple and Garofolo, In Tufte [Furbringer] Page 15 [Simpson]] [Gould] Page 16 Tree of Life [Haeckel] [Tufte] Page 17 Janvier, 1812 “Graphical Excellence is nearly always multivariate” Edward Tufte Page 18 Phenograms to Cladograms GeneBase Page 19 http://www.gwu.edu/~clade/spiders/peet.htm Page 20 Page 21 The Shape of Trees Page 22 Patterns of Evolution Page 23 Hierachical Databases Stolte and Hanrahan, Polaris, InfoVis 2000 Page 24 Generalization • Aggregation • Simplification • Filtering Abstraction Hierarchies Datacubes Star and Snowflake Schemes Page 25 Memory & Code Cache misses for a procedure for 10 million cycles White = not run Grey = no misses Red = # misses y-dimension is source code x-dimension is cycles (time) Memory & Code zooming on y zooms from fileprocedurelineassembly code zooming on x increases time resolution down to one cycle per bar Page 26 Themes Cognitive Principles for Design Congruence Principle: The structure and content of the external representation should correspond to the desired structure and content of the internal representation. -
Using Visualization to Understand the Behavior of Computer Systems
USING VISUALIZATION TO UNDERSTAND THE BEHAVIOR OF COMPUTER SYSTEMS A DISSERTATION SUBMITTED TO THE DEPARTMENT OF COMPUTER SCIENCE AND THE COMMITTEE ON GRADUATE STUDIES OF STANFORD UNIVERSITY IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY Robert P. Bosch Jr. August 2001 c Copyright by Robert P. Bosch Jr. 2001 All Rights Reserved ii I certify that I have read this dissertation and that in my opinion it is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Dr. Mendel Rosenblum (Principal Advisor) I certify that I have read this dissertation and that in my opinion it is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Dr. Pat Hanrahan I certify that I have read this dissertation and that in my opinion it is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Dr. Mark Horowitz Approved for the University Committee on Graduate Studies: iii Abstract As computer systems continue to grow rapidly in both complexity and scale, developers need tools to help them understand the behavior and performance of these systems. While information visu- alization is a promising technique, most existing computer systems visualizations have focused on very specific problems and data sources, limiting their applicability. This dissertation introduces Rivet, a general-purpose environment for the development of com- puter systems visualizations. Rivet can be used for both real-time and post-mortem analyses of data from a wide variety of sources. The modular architecture of Rivet enables sophisticated visualiza- tions to be assembled using simple building blocks representing the data, the visual representations, and the mappings between them. -
Visual Analytics Application
Selecting a Visual Analytics Application AUTHORS: Professor Pat Hanrahan Stanford University CTO, Tableau Software Dr. Chris Stolte VP, Engineering Tableau Software Dr. Jock Mackinlay Director, Visual Analytics Tableau Software Name Inflation: Visual Analytics Visual analytics is becoming the fastest way for people to explore and understand data of any size. Many companies took notice when Gartner cited interactive data visualization as one of the top five trends transforming business intelligence. New conferences have emerged to promote research and best practices in the area, including VAST (Visual Analytics Science & Technology), organized by the 100,000 member IEEE. Technologies based on visual analytics have moved from research into widespread use in the last five years, driven by the increased power of analytical databases and computer hardware. The IT departments of leading companies are increasingly recognizing the need for a visual analytics standard. Not surprisingly, everywhere you look, software companies are adopting the terms “visual analytics” and “interactive data visualization.” Tools that do little more than produce charts and dashboards are now laying claim to the label. How can you tell the cleverly named from the genuine? What should you look for? It’s important to know the defining characteristics of visual analytics before you shop. This paper introduces you to the seven essential elements of true visual analytics applications. Figure 1: There are seven essential elements of a visual analytics application. Does a true visual analytics application also include standard analytical features like pivot-tables, dashboards and statistics? Of course—all good analytics applications do. But none of those features captures the essence of what visual analytics is bringing to the world’s leading companies. -
Light Field Saliency Detection with Deep Convolutional Networks Jun Zhang, Yamei Liu, Shengping Zhang, Ronald Poppe, and Meng Wang
1 Light Field Saliency Detection with Deep Convolutional Networks Jun Zhang, Yamei Liu, Shengping Zhang, Ronald Poppe, and Meng Wang Abstract—Light field imaging presents an attractive alternative � � � �, �, �∗, �∗ … to RGB imaging because of the recording of the direction of the � incoming light. The detection of salient regions in a light field �� �, �, �1, �1 �� �, �, �1, �540 … image benefits from the additional modeling of angular patterns. … For RGB imaging, methods using CNNs have achieved excellent � � results on a range of tasks, including saliency detection. However, �� �, �, ��, �� Micro-lens … it is not trivial to use CNN-based methods for saliency detection Main lens Micro-lens Photosensor image on light field images because these methods are not specifically array �� �, �, �375, �1 �� �, �, �375, �540 (a) (b) designed for processing light field inputs. In addition, current � � ∗ ∗ light field datasets are not sufficiently large to train CNNs. To �� � , � , �, � … overcome these issues, we present a new Lytro Illum dataset, �� �−4, �−4, �, � �� �−4, �4, �, � … which contains 640 light fields and their corresponding ground- … truth saliency maps. Compared to current light field saliency � � � � , � , �, � datasets [1], [2], our new dataset is larger, of higher quality, � 0 0 … contains more variation and more types of light field inputs. Sub-aperture Main lens Micro-lens Photosensor image This makes our dataset suitable for training deeper networks array �� �4, �−4, �, � �� �4, �4, �, � and benchmarking. Furthermore, we propose a novel end-to- (c) (d) end CNN-based framework for light field saliency detection. Specifically, we propose three novel MAC (Model Angular Fig. 1. Illustrations of light field representations. (a) Micro-lens image Changes) blocks to process light field micro-lens images. -
Interactive Visualization of Large Graphs and Networks
INTERACTIVE VISUALIZATION OF LARGE GRAPHS AND NETWORKS A DISSERTATION SUBMITTED TO THE DEPARTMENT OF COMPUTER SCIENCE AND THE COMMITTEE ON GRADUATE STUDIES OF STANFORD UNIVERSITY IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY Tamara Munzner June 2000 c 2000 by Tamara Munzner All Rights Reserved ii I certify that I have read this dissertation and that in my opinion it is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Pat Hanrahan (Principal Adviser) I certify that I have read this dissertation and that in my opinion it is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Marc Levoy I certify that I have read this dissertation and that in my opinion it is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Terry Winograd I certify that I have read this dissertation and that in my opinion it is fully adequate, in scope and quality, as a dissertation for the degree of Doctor of Philosophy. Stephen North (AT&T Research) Approved for the University Committee on Graduate Studies: iii Abstract Many real-world domains can be represented as large node-link graphs: backbone Internet routers connect with 70,000 other hosts, mid-sized Web servers handle between 20,000 and 200,000 hyperlinked documents, and dictionaries contain millions of words defined in terms of each other. Computational manipulation of such large graphs is common, but previous tools for graph visualization have been limited to datasets of a few thousand nodes. -
Convolutional Networks for Shape from Light Field
Convolutional Networks for Shape from Light Field Stefan Heber1 Thomas Pock1,2 1Graz University of Technology 2Austrian Institute of Technology [email protected] [email protected] Abstract x η x η y y y y Convolutional Neural Networks (CNNs) have recently been successfully applied to various Computer Vision (CV) applications. In this paper we utilize CNNs to predict depth information for given Light Field (LF) data. The proposed method learns an end-to-end mapping between the 4D light x x field and a representation of the corresponding 4D depth ξ ξ field in terms of 2D hyperplane orientations. The obtained (a) LF (b) depth field prediction is then further refined in a post processing step by applying a higher-order regularization. Figure 1. Illustration of LF data. (a) shows a sub-aperture im- Existing LF datasets are not sufficient for the purpose of age with vertical and horizontal EPIs. The EPIs correspond to the training scheme tackled in this paper. This is mainly due the positions indicated with dashed lines in the sub-aperture im- to the fact that the ground truth depth of existing datasets is age. (b) shows the corresponding depth field, where red regions inaccurate and/or the datasets are limited to a small num- are close to the camera and blue regions are further away. In the EPIs a set of 2D hyperplanes is indicated with yellow lines, where ber of LFs. This made it necessary to generate a new syn- corresponding scene points are highlighted with the same color in thetic LF dataset, which is based on the raytracing software the sub-aperture representation in (b). -
Head Mounted Display Optics II
Head Mounted Display Optics II Gordon Wetzstein Stanford University EE 267 Virtual Reality Lecture 8 stanford.edu/class/ee267/ Lecture Overview • focus cues & the vergence-accommodation conflict • advanced optics for VR with focus cues: • gaze-contingent varifocal displays • volumetric and multi-plane displays • near-eye light field displays • Maxwellian-type displays • AR displays Magnified Display • big challenge: virtual image appears at fixed focal plane! d • no focus cues d’ f 1 1 1 + = d d ' f Importance of Focus Cues Decreases with Age - Presbyopia 0D (∞cm) 4D (25cm) 8D (12.5cm) 12D (8cm) Nearest focus distance focus Nearest 16D (6cm) 8 16 24 32 40 48 56 64 72 Age (years) Duane, 1912 Cutting & Vishton, 1995 Relative Importance of Depth Cues The Vergence-Accommodation Conflict (VAC) Real World: Vergence & Accommodation Match! Current VR Displays: Vergence & Accommodation Mismatch Accommodation and Retinal Blur Blur Gradient Driven Accommodation Blur Gradient Driven Accommodation Blur Gradient Driven Accommodation Blur Gradient Driven Accommodation Blur Gradient Driven Accommodation Blur Gradient Driven Accommodation Top View Real World: Vergence & Accommodation Match! Top View Screen Stereo Displays Today (including HMDs): Vergence-Accommodation Mismatch! Consequences of Vergence-Accommodation Conflict • Visual discomfort (eye tiredness & eyestrain) after ~20 minutes of stereoscopic depth judgments (Hoffman et al. 2008; Shibata et al. 2011) • Degrades visual performance in terms of reaction times and acuity for stereoscopic vision