Lecture 2 5 Aug 2004
|
|
- Susan Crawford
- 6 years ago
- Views:
Transcription
1 TOPICS in IT: ADVANCED GRAPHICS (CS & SE ) Lecture 2 5 Aug
2 Topics Image Formation Electromagnetic spectrum Light Human Visual Image processing Color Programming in OpenGL Background Programming Structure and naming conventions 2
3 Electromagnetic Spectrum The surface of Earth bathed in electromagnetic radiation from sun Electromagnetic energy is created by a vibration that produces wave that carry the energy Waves are ordered in the electromagnetic spectrum according to their wave length (λ) Longest (radio) Shortest (gamma) Frequency (f) refers to the number of waves a vibration creates during a period of time Wavelength and frequency are inversely related f = 1/ λ 3
4 Electromagnetic Spectrum Wavelength vs Frequency Increasing in Wavelength (λ) Increasing in Frequency (f) 4
5 (Human) Visible Light Spectrum 5
6 Light Detection Advantages Travels rapidly (300,000 km/sec) and in straight lines Surfaces reflect and absorb various wavelengths of light depending on physical and chemical properties Light therefore contains a great deal of information about environment Useful for many survival needs Allows detection of predators, prey at a distance without direct physical contact 6
7 Photosensitivity Ability to detect different intensities of diffuse illumination Present in many plants and most animals, Found in single celled animals, skin of many simple organisms, and in specialized visual organs, Light sensitivity underlies daily rhythm of activities 7
8 Vision Sensing changes in illumination that are rapid in time and localized in space Image forming eyes found in annelids (segmented worms) mollusks (snails, scallops, squid etc.) arthropods (spiders, crabs, insects etc.) and vertebrates 8
9 Visual Acuity and Sensitivity Acuity Expressed as angular resolving power Humans can resolve 1' (one minute) of arc, full moon 30' arc diameter, Some birds of prey, such as eagles can resolve 20" of arc Sensitivity how an eye responds to light In complete darkness, human eye can respond to single photon of light, stimulation of only cells by single photons in a small patch of retina is sufficient to produce a conscious percept in a human observer 9
10 Human (Vertebrate) Vision Retina The photosensitive part of the eye Specialized layer of photoreceptor cells and neurons at back of eye Image formed on retina by refraction of light by cornea and lens Efferent control systems Ciliary muscles stretch lens to alter focus setting Iris controls amount of light admitted to eye (f-stop) 10
11 Rods and Cones The retina is largely composed of two types of cells, called rods and cones Rods Specialised for night vision can be activated by a single photon but they produce lower acuity vision, however. Cones Specialised for day vision, are concentrated at the fovea and provide high acuity vision Confer color vision to primates, birds, reptiles, and most fish 11
12 Human Color Wavelength Humans have 3 types of cone pigment that are maximally sensitive to either red, green or blue Color perception results from the simultaneous stimulation of the 3 cone types Colorblindness results from a deficiency of one cone type Sensitivities 12
13 Additive and Subtractive Color Additive color Form a color by adding amounts of three primaries Used by CRTs, projection systems, positive film Primaries are Red (R), Green (G), Blue (B) Subtractive color Form a color by filtering white light with cyan (C), Magenta (M), and Yellow (Y) filters Light-material interactions Used in Printing and Negative film 13
14 Color Matching In order to define the perceptual 3D space in a "standard" way A set of experiments can (and have been) carried by having observers try and match color of a given wavelength, lambda, Done by mixing three other pure wavelengths, such as R=700nm, G=546nm, and B=436nm A problem exists, because sometimes the red light needs to be added to the target before a match can be achieved. This is shown on the graph by having its intensity, R, take on a negative value. 14
15 Commission Internationale Defined three new hypothetical light sources, x, y, and z, which yield positive matching curves Given a spectrum and wish to find the corresponding X, Y, and Z quantities Done by integrating the product of the spectral power and each of the three matching curves over all wavelengths. The weights X,Y,Z form the three-dimensional CIE XYZ space d'eclairage (CIE) 15
16 CIE Chromaticity Diagram Defines 3 color index in 2 dimensions done by projecting the 3D color space onto the plane X+Y+Z=1 16
17 Color Gamuts The chromaticity diagram can be used to compare the "gamuts" of various possible output devices Such as monitors and printers Note that a color printer cannot reproduce all the colors visible on a color monitor 17
18 RGB Color Cube The additive color model used for computer graphics is represented by the RGB color cube, R, G, and B represent the colors produced by red, green and blue phosphours, respectively. 18
19 CIE XYZ Color Space 19
20 CMYK color model Used by printers Green paper is green because it reflects green and absorbs other wavelengths To produce blue, one would mix cyan and magenta inks both reflect blue while each absorbing one of green and red Black ink is used to ensure that a high quality black can always be printed, and is often referred to as to K dye color absorbs reflects Cyan Red Blue and Green Magenta Green Blue and Red Yellow Blue Red and Green Black (K) All None 20
21 Other Color Models HSV Hue, Saturation, Value HLS Hue, Luminosity, Saturation Color conversion formula exist to convert colors between respective color models 21
22 Programming with OpenGL Background Programming Structure and naming conventions Primitives Attributes and States Programming in three dimensions Inputs and Interaction Working with Callbacks 22
23 SGI and GL Silicon Graphics (SGI) revolutionized the graphics workstation by implementing the pipeline in hardware (1982) To access the system, application programmers used a library called IRIS GL With GL, it was relatively simple to program three dimensional interactive applications 23
24 OpenGL The success of GL lead to OpenGL (1992) a platform-independent API that was Easy to use Close enough to the hardware to get excellent performance Available in a number of languages OS-independent and hardware-independent Focus on rendering Aimed at 2-D/3-D scenes made of polygons (and lines and points). Omitted windowing and input to avoid window system dependencies Not as good for 2-D windows/text/gui-style graphics 24
25 OpenGL Evolution Controlled by an Architectural Review Board (ARB) Members include SGI, Microsoft, NVidia, HP, 3DLabs, IBM, Apple, Dell, Intel, Matrox, Sun, HP,. Relatively stable Evolution reflects new hardware capabilities 3D texture mapping and texture objects Vertex programs Allows for platform specific features through extensions 25
26 OpenGL Design The interface with the graphics hardware. Designed for efficient implementation in hardware. Particular OpenGL implementations may be partially or totally software. We deal with OpenGL via function calls (or commands). No global variables. Most OpenGL functions have few parameters. C/C++ header: <GL/gl.h> But you make lots of function calls. No complex data types. OpenGL is function-call intensive. Think: advantages/disadvantages. 26
27 Software Organization Application Program OpenGL Motif widget or similar GLUT GLX, AGL, or WGL X, Windows, Apple O/S GLU GL Software and/or Hardware 27
28 OpenGL is Procedural OpenGL is a procedural rather than descriptive interface. In order to get a rendering of a red sphere the programmer must specify the appropriate sequence of commands Set up the camera view and modelling transformations Draw the geometry for a sphere with a red color. etc. Disadvantage of using a procedural interface The application must specify all of the operations in exacting detail and in the correct sequence to get the desired result. Advantage of this approach It allows great flexibility in the process of generating the image Application is free to trade-off rendering speed and image quality by changing the steps through which the image is drawn. 28
29 OpenGL is Not Pixel Exact This means that two different OpenGL implementations are very unlikely to render exactly the same image. This allows OpenGL to be implemented across a range of hardware platforms. If the specification were too exact, it would limit the kinds of hardware acceleration that could be used; limiting its usefulness as a standard. In practice, the lack of exactness need not be a burden -- unless you plan to build a rendering farm from a diverse set of machines. 29
30 OpenGL State OpenGL is a state machine OpenGL functions are of two types Primitive generating (drawing) Can cause output if primitive is visible How vertices are processed and appearance of primitive are controlled by the state Set and return state values Transformation functions Attribute functions So: all drawn objects are composed of primitives. The properties of these are attributes, which are determined by OpenGL states. 30
31 OpenGL Libraries OpenGL Core Library OpenGL32 on Windows GL on most unix/linux systems OpenGL Utility Library (GLU) Provides functionality in OpenGL core but avoids having to rewrite code Additional functions & types for various graphics operations. Designed to be implemented in software; calls GL. C/C++ header: <GL/glu.h>. Links with window system GLX or X window systems WGL or Windows AGL for Macintosh 31
32 GLUT Provides functionality common to all window systems Open a window Get input from mouse and keyboard Menus Event-driven Code is portable but GLUT lacks the functionality of a good toolkit for a specific platform 32
33 GLUT Functions glutinit allows application to get command line arguments and initializes system gluinitdisplaymode requests properties for the window (the rendering context) RGB color Single buffering Properties logically ORed together glutwindowsize in pixels glutwindowposition from top-left corner of display glutcreatewindow create window glutdisplayfunc display callback glutmainloop enter infinite event loop 33
34 OpenGL Extensions Functionality that anyone can add to OpenGL. OpenGL specifies rules that extensions are to follow. May be system-dependent. We will not use any extensions. 34
35 OpenGL Naming Conventions Functions Begin with gl, words capitalized & run together Example: glclearcolor Can include type information. For example, the 2d in glvertex2d indicates two parameters of type GLdouble. Constants Begin with GL, all upper-case, _ between words Example: GL_TRIANGLE_STRIP Types Begin with GL, next word not capitalized, all words run together Example: GLdouble 35
36 Related Package Naming Conventions Related packages use similar conventions. GLU Function: gluscaleimage Constant: GLU_TESS_ERROR Type: GLUtesselatorObj GLUT Function: glutinitdisplaymode Constant: GLUT_MIDDLE_BUTTON 36
37 OpenGL Types OpenGL defines its own types, which have the same (minimum) precision on all systems. Some of these: GLint: at least 32-bit integer GLfloat: at least 32-bit floating-point GLdouble: at least 64-bit floating-point and others So, for example, GLdouble is probably the same as double, but may not be. Converting (say) a GLdouble to a double is fine. But be careful when tossing around GLdouble * and double *. (Why?) 37
38 Lack of Object Orientation OpenGL is not object oriented so that there are multiple functions for a given logical function As a result, some OpenGL commands have several forms allowing for different types. For example, glvertex* can take 2, 3, or 4 parameters of many different types. Function glvertex2d takes 2 parameters of type GLdouble. Function glvertex3f takes 3 parameters of type GLfloat. Function glvertex3fv ( v for vector ) takes a single parameter of type GLfloat * (should be a pointer to an array of 3 GLfloat s). Underlying storage mode is the same 38
39 OpenGL Function Format belongs to GL library glvertex3f(x,y,z) 3 float inputs are required function glvertex3fv(p) p is a pointer to a 3 Dimensional array of floats 39
40 OpenGL #defines Most constants are defined in the include files gl.h, glu.h and glut.h #include <glut.h> should automatically include the others Examples glbegin(gl_polygon) glclear(gl_color_buffer_bit) include files also define OpenGL datatypes: GLfloat, GLdouble,. 40
41 glflush() It is important to note that OpenGL commands are not necessarily executed as soon as they are issued. It is necessary to call the command glflush() to ensure that all previously issued commands are executed. glflush() is generally called at the end of a sequence of drawing commands to ensure all objects in the scene are drawn. 41
42 Program Structure Most OpenGL programs have a similar structure that consists of the following functions main(): defines the callback functions opens one or more windows with the required properties enters event loop (last executable statement) init(): sets the state variables Viewing Attributes callbacks Display function Input and window functions 42
43 Event Loop Every glut program must have a display callback The display callback is executed whenever OpenGL decides the display must be refreshed, for example when the window is opened The main function ends with the program entering an event loop 43
44 References The Electro Magnetic Spectrum Tutorial, What is RF Radiation?, m The Physics Classroom, The Electromagnetic and Visible Spectra, Light Sources, The Visual System, The Visual System I & II, Dr. Paul Patton, Computer Graphics Color Models, CSC 418: Colour Representation, Michiel van de Panne, University of Toronto, 44
45 References www/terry/opengl/changing_state.html es/lecture/pipeline.html Ed Angel Lecture notes (Lectures 4, 5, 6, 7, 8 and 9) Open GL web page 45
Programming with OpenGL Part 1: Background
Programming with OpenGL Part 1: Background Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico 1 Objectives Development of the OpenGL API
More informationEarly History of APIs. PHIGS and X. SGI and GL. Programming with OpenGL Part 1: Background. Objectives
Programming with OpenGL Part 1: Background Early History of APIs Objectives Development of the OpenGL API OpenGL Architecture - OpenGL as a state machine Functions - Types -Formats Simple program IFIPS
More informationLecture 2 CISC440/640 Spring Department of Computer and Information Science
Lecture 2 CISC440/640 Spring 2015 Department of Computer and Information Science Today s Topic The secrets of Glut-tony 2 So let s do some graphics! For the next week or so this is your world: -1 1-1 1
More informationCS450/550. Pipeline Architecture. Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012
CS450/550 Pipeline Architecture Adapted From: Angel and Shreiner: Interactive Computer Graphics6E Addison-Wesley 2012 0 Objectives Learn the basic components of a graphics system Introduce the OpenGL pipeline
More informationIntroduction to OpenGL Week 1
CS 432/680 INTERACTIVE COMPUTER GRAPHICS Introduction to OpenGL Week 1 David Breen Department of Computer Science Drexel University Based on material from Ed Angel, University of New Mexico Objectives
More informationObjectives. Image Formation Revisited. Physical Approaches. The Programmer s Interface. Practical Approach. Introduction to OpenGL Week 1
CS 432/680 INTERACTIVE COMPUTER GRAPHICS Introduction to OpenGL Week 1 David Breen Department of Computer Science Drexel University Objectives Learn the basic design of a graphics system Introduce graphics
More informationComputer Graphics. Bing-Yu Chen National Taiwan University
Computer Graphics Bing-Yu Chen National Taiwan University Introduction to OpenGL General OpenGL Introduction An Example OpenGL Program Drawing with OpenGL Transformations Animation and Depth Buffering
More informationComputer Graphics - Chapter 1 Graphics Systems and Models
Computer Graphics - Chapter 1 Graphics Systems and Models Objectives are to learn about: Applications of Computer Graphics Graphics Systems Images: Physical and Synthetic The Human Visual System The Pinhole
More informationDrawing Primitives. OpenGL basics
CSC 706 Computer Graphics / Dr. N. Gueorguieva 1 OpenGL Libraries Drawing Primitives OpenGL basics OpenGL core library OpenGL32 on Windows GL on most unix/linux systems (libgl.a) OpenGL Utility Library
More informationCIS 441/541: Introduction to Computer Graphics Lecture 14: OpenGL Basics
CIS 441/541: Introduction to Computer Graphics Lecture 14: OpenGL Basics Oct. 26th, 2016 Hank Childs, University of Oregon Announcements OH Hank: Weds 1-2, Thursday 11-12 Dan: Weds 4-530, Thursday 930-11
More informationProgramming with OpenGL Part 1: Background
Programming with OpenGL Part 1: Background Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico 1 Objectives Development of the OpenGL API
More informationLECTURE 02 OPENGL API
COMPUTER GRAPHICS LECTURE 02 OPENGL API Still from Pixar s Inside Out, 2015 IMRAN IHSAN ASSISTANT PROFESSOR WWW.IMRANIHSAN.COM EARLY HISTORY OF APIS IFIPS (1973) formed two committees to come up with a
More informationAPI Background. Prof. George Wolberg Dept. of Computer Science City College of New York
API Background Prof. George Wolberg Dept. of Computer Science City College of New York Objectives Graphics API history OpenGL API OpenGL function format Immediate Mode vs Retained Mode Examples The Programmer
More informationThe Display pipeline. The fast forward version. The Display Pipeline The order may vary somewhat. The Graphics Pipeline. To draw images.
View volume The fast forward version The Display pipeline Computer Graphics 1, Fall 2004 Lecture 3 Chapter 1.4, 1.8, 2.5, 8.2, 8.13 Lightsource Hidden surface 3D Projection View plane 2D Rasterization
More informationLecture 1. Computer Graphics and Systems. Tuesday, January 15, 13
Lecture 1 Computer Graphics and Systems What is Computer Graphics? Image Formation Sun Object Figure from Ed Angel,D.Shreiner: Interactive Computer Graphics, 6 th Ed., 2012 Addison Wesley Computer Graphics
More informationToday s Agenda. Basic design of a graphics system. Introduction to OpenGL
Today s Agenda Basic design of a graphics system Introduction to OpenGL Image Compositing Compositing one image over another is most common choice can think of each image drawn on a transparent plastic
More informationProgramming using OpenGL: A first Introduction
Programming using OpenGL: A first Introduction CMPT 361 Introduction to Computer Graphics Torsten Möller Machiraju/Zhang/Möller 1 Today Overview GL, GLU, GLUT, and GLUI First example OpenGL functions and
More informationCSC Graphics Programming. Budditha Hettige Department of Statistics and Computer Science
CSC 307 1.0 Graphics Programming Department of Statistics and Computer Science Graphics Programming 2 Common Uses for Computer Graphics Applications for real-time 3D graphics range from interactive games
More informationVR-programming tools (procedural) More VRML later in this course! (declarative)
Realtime 3D Computer Graphics & Virtual Reality OpenGL Introduction VR-programming Input and display devices are the main hardware interface to users Immersion embeds users through the generation of live-like
More informationIntroduction to OpenGL
CS100433 Introduction to OpenGL Junqiao Zhao 赵君峤 Department of Computer Science and Technology College of Electronics and Information Engineering Tongji University Before OpenGL Let s think what is need
More informationProgramming with OpenGL Part 2: Complete Programs Computer Graphics I, Fall
Programming with OpenGL Part 2: Complete Programs 91.427 Computer Graphics I, Fall 2008 1 1 Objectives Refine first program Alter default values Introduce standard program structure Simple viewing 2-D
More informationComputer Graphics. Bing-Yu Chen National Taiwan University The University of Tokyo
Computer Graphics Bing-Yu Chen National Taiwan University The University of Tokyo Introduction The Graphics Process Color Models Triangle Meshes The Rendering Pipeline 1 What is Computer Graphics? modeling
More informationTeacher Assistant : Tamir Grossinger Reception hours: by - Building 37 / office -102 Assignments: 4 programing using
Teacher Assistant : Tamir Grossinger email: tamirgr@gmail.com Reception hours: by email - Building 37 / office -102 Assignments: 4 programing using C++ 1 theoretical You can find everything you need in
More informationThe Elements of Colour
Color science 1 The Elements of Colour Perceived light of different wavelengths is in approximately equal weights achromatic.
More informationLectures OpenGL Introduction
Lectures OpenGL Introduction By Tom Duff Pixar Animation Studios Emeryville, California and George Ledin Jr Sonoma State University Rohnert Park, California 2004, Tom Duff and George Ledin Jr 1 What is
More informationCS 4204 Computer Graphics
CS 4204 Computer Graphics OpenGL Basics Yong Cao Virginia Tech References: 2001 Siggraph, An Interactive Introduction to OpenGL Programming, Dave Shreiner,Ed Angel, Vicki Shreiner Official Presentation
More informationGraphics Programming
Graphics Programming 3 rd Week, 2011 OpenGL API (1) API (application programming interface) Interface between an application program and a graphics system Application Program OpenGL API Graphics Library
More informationExercise 1 Introduction to OpenGL
Exercise 1 Introduction to OpenGL What we are going to do OpenGL Glut Small Example using OpenGl and Glut Alexandra Junghans 2 What is OpenGL? OpenGL Two Parts most widely used and supported graphics API
More informationLecture 4 of 41. Lab 1a: OpenGL Basics
Lab 1a: OpenGL Basics William H. Hsu Department of Computing and Information Sciences, KSU KSOL course pages: http://snipurl.com/1y5gc Course web site: http://www.kddresearch.org/courses/cis636 Instructor
More informationComputer Graphics (Basic OpenGL)
Computer Graphics (Basic OpenGL) Thilo Kielmann Fall 2008 Vrije Universiteit, Amsterdam kielmann@cs.vu.nl http://www.cs.vu.nl/ graphics/ Computer Graphics (Basic OpenGL, Input and Interaction), ((57))
More informationImage Formation. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico
Image Formation Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico 1 Objectives Fundamental imaging notions Physical basis for image formation
More informationReading. 2. Color. Emission spectra. The radiant energy spectrum. Watt, Chapter 15.
Reading Watt, Chapter 15. Brian Wandell. Foundations of Vision. Chapter 4. Sinauer Associates, Sunderland, MA, pp. 69-97, 1995. 2. Color 1 2 The radiant energy spectrum We can think of light as waves,
More informationComputer Graphics. OpenGL
Computer Graphics OpenGL What is OpenGL? OpenGL (Open Graphics Library) is a library for computer graphics It consists of several procedures and functions that allow a programmer to specify the objects
More informationCS 543 Lecture 1 (Part II): Intro to OpenGL and GLUT (Part I) Emmanuel Agu
CS 543 Lecture 1 (Part II): Intro to OpenGL and GLUT (Part I) Emmanuel Agu OpenGL Basics OpenGL s function Rendering Rendering? Convert geometric/mathematical object descriptions into images OpenGL can
More informationERKELEY DAVIS IRVINE LOS ANGELES RIVERSIDE SAN DIEGO SAN FRANCISCO EECS 104. Fundamentals of Computer Graphics. OpenGL
ERKELEY DAVIS IRVINE LOS ANGELES RIVERSIDE SAN DIEGO SAN FRANCISCO SANTA BARBARA SANTA CRUZ EECS 104 Fundamentals of Computer Graphics OpenGL Slides courtesy of Dave Shreine, Ed Angel and Vicki Shreiner
More informationLecture 1 Image Formation.
Lecture 1 Image Formation peimt@bit.edu.cn 1 Part 3 Color 2 Color v The light coming out of sources or reflected from surfaces has more or less energy at different wavelengths v The visual system responds
More informationGL_COLOR_BUFFER_BIT, GL_PROJECTION, GL_MODELVIEW
OpenGL Syntax Functions have prefix gl and initial capital letters for each word glclearcolor(), glenable(), glpushmatrix() glu for GLU functions glulookat(), gluperspective() constants begin with GL_,
More informationComp 410/510 Computer Graphics Spring Programming with OpenGL Part 2: First Program
Comp 410/510 Computer Graphics Spring 2017 Programming with OpenGL Part 2: First Program Objectives Refine the first program Introduce a standard program structure - Initialization Program Structure Most
More informationCSE528 Computer Graphics: Theory, Algorithms, and Applications
CSE528 Computer Graphics: Theory, Algorithms, and Applications Hong Qin State University of New York at Stony Brook (Stony Brook University) Stony Brook, New York 11794--4400 Tel: (631)632-8450; Fax: (631)632-8334
More informationCS635 Spring Department of Computer Science Purdue University
Color and Perception CS635 Spring 2010 Daniel G Aliaga Daniel G. Aliaga Department of Computer Science Purdue University Elements of Color Perception 2 Elements of Color Physics: Illumination Electromagnetic
More informationComputer Graphics. Bing-Yu Chen National Taiwan University
Computer Graphics Bing-Yu Chen National Taiwan University Introduction The Graphics Process Color Models Triangle Meshes The Rendering Pipeline 1 INPUT What is Computer Graphics? Definition the pictorial
More informationComputer Graphics, Chapt 08
Computer Graphics, Chapt 08 Creating an Image Components, parts of a scene to be displayed Trees, terrain Furniture, walls Store fronts and street scenes Atoms and molecules Stars and galaxies Describe
More informationIntroduction to Computer Graphics with WebGL
Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science Laboratory University of New Mexico Image Formation
More informationGraphics Programming. August 31, Programming of the Sierpinski gasket. Programming with OpenGL and C/C++
Computer Graphics Graphics Programming August 31, 2005 Contents Our Goal in This Chapter Programming of the Sierpinski gasket How To? Programming with OpenGL and C/C++ OpenGL API (Application Programmer
More informationCSC 8470 Computer Graphics. What is Computer Graphics?
CSC 8470 Computer Graphics What is Computer Graphics? For us, it is primarily the study of how pictures can be generated using a computer. But it also includes: software tools used to make pictures hardware
More informationLecture 2 2D transformations Introduction to OpenGL
Lecture 2 2D transformations Introduction to OpenGL OpenGL where it fits what it contains how you work with it OpenGL parts: GL = Graphics Library (core lib) GLU = GL Utilities (always present) GLX, AGL,
More information(0, 1, 1) (0, 1, 1) (0, 1, 0) What is light? What is color? Terminology
lecture 23 (0, 1, 1) (0, 0, 0) (0, 0, 1) (0, 1, 1) (1, 1, 1) (1, 1, 0) (0, 1, 0) hue - which ''? saturation - how pure? luminance (value) - intensity What is light? What is? Light consists of electromagnetic
More informationIntroduction to color science
Introduction to color science Trichromacy Spectral matching functions CIE XYZ color system xy-chromaticity diagram Color gamut Color temperature Color balancing algorithms Digital Image Processing: Bernd
More informationINTRODUCTION. Slides modified from Angel book 6e
INTRODUCTION Slides modified from Angel book 6e Fall 2012 COSC4328/5327 Computer Graphics 2 Objectives Historical introduction to computer graphics Fundamental imaging notions Physical basis for image
More informationBasic Graphics Programming
15-462 Computer Graphics I Lecture 2 Basic Graphics Programming Graphics Pipeline OpenGL API Primitives: Lines, Polygons Attributes: Color Example January 17, 2002 [Angel Ch. 2] Frank Pfenning Carnegie
More informationIllumination and Shading
Illumination and Shading Light sources emit intensity: assigns intensity to each wavelength of light Humans perceive as a colour - navy blue, light green, etc. Exeriments show that there are distinct I
More informationCS 432 Interactive Computer Graphics
CS 432 Interactive Computer Graphics Lecture 1 Part 3 Anatomy of OpenGL Programs Matt Burlick - Drexel University - CS 432 1 Reading Angel Chapter 2 Red Book Chapter 4 Matt Burlick - Drexel University
More informationImage Formation. Camera trial #1. Pinhole camera. What is an Image? Light and the EM spectrum The H.V.S. and Color Perception
Image Formation Light and the EM spectrum The H.V.S. and Color Perception What is an Image? An image is a projection of a 3D scene into a 2D projection plane. An image can be defined as a 2 variable function
More informationGame Programming. Bing-Yu Chen National Taiwan University
Game Programming Bing-Yu Chen National Taiwan University What is Computer Graphics? Definition the pictorial synthesis of real or imaginary objects from their computer-based models descriptions OUTPUT
More information3D graphics, raster and colors CS312 Fall 2010
Computer Graphics 3D graphics, raster and colors CS312 Fall 2010 Shift in CG Application Markets 1989-2000 2000 1989 3D Graphics Object description 3D graphics model Visualization 2D projection that simulates
More informationSNC 2PI Optics Unit Review /95 Name:
SNC 2PI Optics Unit Review /95 Name: Part 1: True or False Indicate in the space provided if the statement is true (T) or false(f) [15] 1. Light is a form of energy 2. Shadows are proof that light travels
More informationCS Computer Graphics: Intro to OpenGL
CS 543 - Computer Graphics: Intro to OpenGL by Robert W. Lindeman gogo@wpi.edu (with help from Emmanuel Agu ;-) OpenGL Basics Last time: What is Computer Graphics? What is a graphics library What to expect
More informationCS Computer Graphics: Intro to OpenGL
CS 543 - Computer Graphics: Intro to OpenGL by Robert W. Lindeman gogo@wpi.edu (with help from Emmanuel Agu ;-) OpenGL Basics Last time: What is Computer Graphics? What is a graphics library What to expect
More informationOverview of Graphics Systems Hearn & Baker Chapter 2. Some slides are taken from Robert Thomsons notes.
Overview of Graphics Systems Hearn & Baker Chapter 2 Some slides are taken from Robert Thomsons notes. OVERVIEW Video Display Devices Raster Scan Systems Graphics Workstations and Viewing Systems Input
More informationPick up Light Packet & Light WS
Pick up Light Packet & Light WS Only sit or stand at a station with a cup. Test or Quiz Make Ups Today/Tomorrow after School Only. Sound Test Corrections/Retakes: Wednesday, Next Tuesday, Wednesday, Thursday
More informationCGT521 Introduction to
CGT521 Introduction to Bedrich Benes, Ph.D. Purdue University Department of Computer Graphics Rendering We have a virtual scene (a model in the memory of computer) and we want to display it What is the
More informationComputer Graphics Lecture 2
1 / 16 Computer Graphics Lecture 2 Dr. Marc Eduard Frîncu West University of Timisoara Feb 28th 2012 2 / 16 Outline 1 Graphics System Graphics Devices Frame Buffer 2 Rendering pipeline 3 Logical Devices
More informationCSE 167: Lecture #6: Color. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011
CSE 167: Introduction to Computer Graphics Lecture #6: Color Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011 Announcements Homework project #3 due this Friday, October 14
More informationIntroduction to Computer Graphics with OpenGL/GLUT
Introduction to Computer Graphics with OpenGL/GLUT What is OpenGL? A software interface to graphics hardware Graphics rendering API (Low Level) High-quality color images composed of geometric and image
More informationOpenGL Introduction Computer Graphics and Visualization
Fall 2009 2 OpenGL OpenGL System Interaction Portable Consistent visual display regardless of hardware, OS and windowing system Callable from Ada, C, C++, Fortran, Python, Perl and Java Runs on all major
More informationSurvey in Computer Graphics Computer Graphics and Visualization
Example of a Marble Ball Where did this image come from? Fall 2010 What hardware/software/algorithms did we need to produce it? 2 A Basic Graphics System History of Computer Graphics 1200-2008 Input devices
More informationNational Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor
Computer Graphics 1. Graphics Systems National Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor Textbook: Hearn and Baker, Computer Graphics, 3rd Ed., Prentice Hall Ref: E.Angel, Interactive
More informationComputer Graphics. Chapter 3 Computer Graphics Software
Computer Graphics Chapter 3 Computer Graphics Software Outline Graphics Software Packages Introduction to OpenGL Example Program 2 3 Graphics Software Software packages General Programming Graphics Packages
More informationCS4670: Computer Vision
CS4670: Computer Vision Noah Snavely Lecture 30: Light, color, and reflectance Light by Ted Adelson Readings Szeliski, 2.2, 2.3.2 Light by Ted Adelson Readings Szeliski, 2.2, 2.3.2 Properties of light
More informationCS452/552; EE465/505. Color Display Issues
CS452/552; EE465/505 Color Display Issues 4-16 15 2 Outline! Color Display Issues Color Systems Dithering and Halftoning! Splines Hermite Splines Bezier Splines Catmull-Rom Splines Read: Angel, Chapter
More informationLight Transport Baoquan Chen 2017
Light Transport 1 Physics of Light and Color It s all electromagnetic (EM) radiation Different colors correspond to radiation of different wavelengths Intensity of each wavelength specified by amplitude
More informationCSE4030 Introduction to Computer Graphics
CSE4030 Introduction to Computer Graphics Dongguk University Jeong-Mo Hong Timetable 00:00~00:10 Introduction (English) 00:10~00:50 Topic 1 (English) 00:50~00:60 Q&A (English, Korean) 01:00~01:40 Topic
More informationComputer Graphics. Making Pictures. Computer Graphics CSC470 1
Computer Graphics Making Pictures Computer Graphics CSC470 1 Getting Started Making Pictures Graphics display: Entire screen (a); windows system (b); [both have usual screen coordinates, with y-axis y
More informationWhat is it? How does it work? How do we use it?
What is it? How does it work? How do we use it? Dual Nature http://www.youtube.com/watch?v=dfpeprq7ogc o Electromagnetic Waves display wave behavior o Created by oscillating electric and magnetic fields
More informationComputer Graphics and Visualization. Graphics Systems and Models
UNIT -1 Graphics Systems and Models 1.1 Applications of computer graphics: Display Of Information Design Simulation & Animation User Interfaces 1.2 Graphics systems A Graphics system has 5 main elements:
More informationOpenGL/GLUT Intro. Week 1, Fri Jan 12
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2007 Tamara Munzner OpenGL/GLUT Intro Week 1, Fri Jan 12 http://www.ugrad.cs.ubc.ca/~cs314/vjan2007 News Labs start next week Reminder:
More informationCS130 : Computer Graphics Lecture 2: Graphics Pipeline. Tamar Shinar Computer Science & Engineering UC Riverside
CS130 : Computer Graphics Lecture 2: Graphics Pipeline Tamar Shinar Computer Science & Engineering UC Riverside Raster Devices and Images Raster Devices - raster displays show images as a rectangular array
More informationCOMP 371/4 Computer Graphics Week 1
COMP 371/4 Computer Graphics Week 1 Course Overview Introduction to Computer Graphics: Definition, History, Graphics Pipeline, and Starting Your First OpenGL Program Ack: Slides from Prof. Fevens, Concordia
More informationAnnouncements OpenGL. Computer Graphics. Autumn 2009 CS4815
Computer Graphics Autumn 2009 Outline 1 Labs 2 Labs Outline 1 Labs 2 Labs Labs Week02 lab Marking 8 10 labs in total each lab worth 2 3% of overall grade marked on attendance and completion of lab completed
More informationComputer Graphics 1 Computer Graphics 1
Projects: an example Developed by Nate Robbins Shapes Tutorial What is OpenGL? Graphics rendering API high-quality color images composed of geometric and image primitives window system independent operating
More informationComputer Graphics (CS 4731) OpenGL/GLUT(Part 1)
Computer Graphics (CS 4731) Lecture 2: Introduction to OpenGL/GLUT(Part 1) Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Recall: OpenGL GLBasics OpenGL s function Rendering
More informationRendering. Part 1 An introduction to OpenGL
Rendering Part 1 An introduction to OpenGL Olivier Gourmel VORTEX Team IRIT University of Toulouse gourmel@irit.fr Image synthesis The Graphics Processing Unit (GPU): A highly parallel architecture specialized
More informationTo Do. Computer Graphics (Fall 2008) Course Outline. Course Outline. Methodology for Lecture. Demo: Surreal (HW 3)
Computer Graphics (Fall 2008) COMS 4160, Lecture 9: OpenGL 1 http://www.cs.columbia.edu/~cs4160 To Do Start thinking (now) about HW 3. Milestones are due soon. Course Course 3D Graphics Pipeline 3D Graphics
More informationBasic Graphics Programming
CSCI 480 Computer Graphics Lecture 2 Basic Graphics Programming January 11, 2012 Jernej Barbic University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s12/ Graphics Pipeline OpenGL API
More informationComputer Graphics Course 2005
Computer Graphics Course 2005 Introduction to GLUT, GLU and OpenGL Administrative Stuff Teaching Assistant: Rony Goldenthal Reception Hour: Wed. 18:00 19:00 Room 31 (Ross 1) Questions: E-mail: cg@cs Newsgroups:
More information1.2 Basic Graphics Programming
Fall 2018 CSCI 420: Computer Graphics 1.2 Basic Graphics Programming Hao Li http://cs420.hao-li.com 1 Last time Last Time Story Computer Graphics Image Last Time 3D Printing 3D Capture Animation Modeling
More informationImage Formation. CS418 Computer Graphics Eric Shaffer.
Image Formation CS418 Computer Graphics Eric Shaffer http://graphics.cs.illinois.edu/cs418/fa14 Some stuff about the class Grades probably on usual scale: 97 to 93: A 93 to 90: A- 90 to 87: B+ 87 to 83:
More informationGraphics Pipeline & APIs
Graphics Pipeline & APIs CPU Vertex Processing Rasterization Fragment Processing glclear (GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT); glpushmatrix (); gltranslatef (-0.15, -0.15, solidz); glmaterialfv(gl_front,
More informationLight. Properties of light. What is light? Today What is light? How do we measure it? How does light propagate? How does light interact with matter?
Light Properties of light Today What is light? How do we measure it? How does light propagate? How does light interact with matter? by Ted Adelson Readings Andrew Glassner, Principles of Digital Image
More informationLecture 11. Color. UW CSE vision faculty
Lecture 11 Color UW CSE vision faculty Starting Point: What is light? Electromagnetic radiation (EMR) moving along rays in space R(λ) is EMR, measured in units of power (watts) λ is wavelength Perceiving
More informationGLUT. What is OpenGL? Introduction to OpenGL and GLUT
What is OpenGL? Introduction to OpenGL and An application programming interface (API) A (low-level) Graphics rendering API Generate high-quality h color images composed of geometric and image primitives
More informationCSE 167: Lecture #6: Color. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012
CSE 167: Introduction to Computer Graphics Lecture #6: Color Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012 Announcements Homework project #3 due this Friday, October 19
More informationInformation Coding / Computer Graphics, ISY, LiTH. OpenGL! ! where it fits!! what it contains!! how you work with it 11(40)
11(40) Information Coding / Computer Graphics, ISY, LiTH OpenGL where it fits what it contains how you work with it 11(40) OpenGL The cross-platform graphics library Open = Open specification Runs everywhere
More informationOpenGL. Jimmy Johansson Norrköping Visualization and Interaction Studio Linköping University
OpenGL Jimmy Johansson Norrköping Visualization and Interaction Studio Linköping University Background Software interface to graphics hardware 250+ commands Objects (models) are built from geometric primitives
More informationReading. 4. Color. Outline. The radiant energy spectrum. Suggested: w Watt (2 nd ed.), Chapter 14. Further reading:
Reading Suggested: Watt (2 nd ed.), Chapter 14. Further reading: 4. Color Brian Wandell. Foundations of Vision. Chapter 4. Sinauer Associates, Sunderland, MA, 1995. Gerald S. Wasserman. Color Vision: An
More informationOPEN GL BACKGROUND. Objectives. Early History of APIs. SGI and GL. PHIGS and X. Modified from Angel 6e book slides
OPEN GL Modified from Angel 6e book slides BACKGROUND Objectives Early History of APIs Development of the OpenGL API OpenGL Architecture OpenGL as a state machine OpenGL as a data flow machine Functions
More informationAnnouncements OpenGL. Computer Graphics. Spring CS4815
Computer Graphics Spring 2017-2018 Outline 1 2 Tutes and Labs Tute02, vector review (see matrix) Week02 lab Lab Marking 10 labs in total each lab worth 3% of overall grade marked on attendance and completion
More informationCSE 167: Introduction to Computer Graphics Lecture #6: Colors. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013
CSE 167: Introduction to Computer Graphics Lecture #6: Colors Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013 Announcements Homework project #3 due this Friday, October 18
More informationRECITATION - 1. Ceng477 Fall
RECITATION - 1 Ceng477 Fall 2007-2008 2/ 53 Agenda General rules for the course General info on the libraries GLUT OpenGL GLUI Details about GLUT Functions Probably we will not cover this part 3/ 53 General
More information11/1/13. Basic Graphics Programming. Teaching Assistant. What is OpenGL. Course Producer. Where is OpenGL used. Graphics library (API)
CSCI 420 Computer Graphics Lecture 2 Basic Graphics Programming Teaching Assistant Yijing Li Office hours TBA Jernej Barbic University of Southern California Graphics Pipeline OpenGL API Primitives: Lines,
More information