introduction
play

INTRODUCTION Computer Graphics 1 INTRODUCTION: THE OUTLINE I. - PowerPoint PPT Presentation

INTRODUCTION Computer Graphics 1 INTRODUCTION: THE OUTLINE I. Image Processing / Computer Graphics II. Advantages III. Representative Uses IV. Classification of Applications V. History VI. Conceptual Framework VII. Our First Assignment 2


  1. INTRODUCTION Computer Graphics 1

  2. INTRODUCTION: THE OUTLINE I. Image Processing / Computer Graphics II. Advantages III. Representative Uses IV. Classification of Applications V. History VI. Conceptual Framework VII. Our First Assignment 2

  3. I. IMAGE PROCESSING / COMPUTER GRAPHICS • Image Processing: • Analysis and reconstruction of existing images • Sub-Areas: • Image Enhancement • Pattern Detection and Recognition • Scene Analysis • Computer Vision 3

  4. I. IMAGE PROCESSING 4

  5. IMAGE ENHANCEMENT Apex Sharpening of Andromeda Galaxy Image http://math.nist.gov/mcsd/highlights/carasso-spie06.html 5

  6. PATTERN DETECTION AND RECOGNITION Body parts detection for people tracking using trees of Histogram of Oriented Gradient descriptors, http://hal.inria.fr/INRIA/inria-00496980/en/ 6

  7. SCENE ANALYSIS The Vision and Mobile Robotics Laboratory, http://www.cs.cmu.edu/~vmr/jobs/jobs.html 7

  8. COMPUTER VISION Software That Evaluates Facial Expressions , http://www.sciencedaily.com/videos/computers_math/internet/5/ 8

  9. I. IMAGE PROCESSING / COMPUTER GRAPHICS • Computer Graphics: • Synthesis of new images • Overlap between the two is growing • William Latham, Evolutionary Art 9

  10. II. ADVANTAGES • Communication between user and computer • Interactive graphics • Creation of abstract, synthetic objects • Not confined to static images: animation • User controlled dynamics 10

  11. III. REPRESENTATIVE USES • User Interfaces • Interactive Data Plotting • Office Automation / Electronic Publishing • Computer-Aided Drafting and Design http://www.warmelin.com/cad-cam.html 11

  12. III. REPRESENTATIVE USES • Simulation and Animation • Scientific • Entertainment • Art and Commerce • Process Control • Cartography 12

  13. IV. CLASSIFICATION OF APPLICATIONS • Dimensionality • Kind of Picture • Type of Interaction • Role of the Image / Graphic • Relationship between Objects and Pictures • Logical • Temporal 13

  14. DIMENSIONALITY: 2D AND 3D http://www.media-freaks.com/articles/3d-animation-studios-what-goes-on-behind-those-closed-doors 14

  15. KIND OF PICTURE: LINE DRAWING / WIREFRAME Grand Designs 3D Software 15

  16. KIND OF IMAGE: COLOR / GRAYSCALE 16

  17. TYPE OF INTERACTION • Offline Plotting • Interactive Plotting • User Moves Around (or within) Object • Interactive Object Design 17

  18. ROLE OF THE IMAGE / GRAPHIC • Picture as End Product • Cartography • Drafting • Artwork • Animation • Picture as Means to an End • CAD/CAM 18

  19. V. HISTORY • Beginnings • Crude Plotting • Sutherland 1963 • Sketchpad 19

  20. V. HISTORY • Output Technology • Vector Display • Oscilloscopes were some of the 1st computer displays • Computation results used to drive the vertical and horizontal axis (X-Y) • Intensity could also be controlled (Z-axis) • Used mostly for line drawings • Display list had to be constantly updated (except for storage tubes) • Raster Display 20

  21. V. HISTORY • Output Technology • Vector Display • Raster Display Raster 21

  22. V. HISTORY • Input Technology • Light Pens • Mouse, Tablet, Touch Screen, Audio • Kinect 22

  23. V. HISTORY Software • Device Dependent – Device Independent • • Program Portability • Programmer Portability • Standards Core • GKS and GKS-3D • • PHIGS and PHIGS+ • Industry Standards (as opposed to official standards) • OpenGL (SGI) Java-2D and Java-3D (Sun) • DirectX (Microsoft) • • X-Windows (MIT/Unix/Linux) • … 23

  24. VI. CONCEPTUAL FRAMEWORK Software Hardware Graphics System/ GPU Graphics Application Application Library program Model/data base 24

  25. VI. CONCEPTUAL FRAMEWORK • Application Model • Application Database • Property Information • Created by: • Application Program • User Interaction 25

  26. VI. CONCEPTUAL FRAMEWORK • Application Program • Translation of the Model to Graphics Commands • Database Traversal • Translation to Geometric Primitives • User Interaction Handling • Sampling vs. Event Driven • Event Loop Model • State and Screen Update vs. State, Screen and Database Update 26

  27. VI. CONCEPTUAL FRAMEWORK • Application Program • Two Basic Paradigms: Sample-Based and Geometry-Based • Sample-based graphics: discrete samples are used to describe visual information • pixels can be created by digitizing images, using a sample-based “painting” program, etc. • often some aspect of the physical world is sampled for visualization, e.g., temperature across the US • example programs: Adobe Photoshop™, GIMP™ , Adobe AfterEffects ™ 27

  28. SAMPLE-BASED GRAPHICS • Images are made up of grid of discrete pixels, for 2D “picture elements” Pixels are point locations with • associated sample values, usually of light intensities/colors, transparency, and other control information • Samples created directly in paint-type program, or as sampling of continuous (analog) visual materials • Sample values can also be input numerically Once an image is defined as pixel- • array, it can be manipulated via: Image editing • • Image processing 28

  29. SAMPLE-BASED GRAPHICS Advantages: • Once image is defined in terms of colors at (x, y) • locations on grid, can change image easily by altering location or color values Pixel information from one image can be copied • and pasted into another, replacing or combining with previously stored pixels Disadvantages: • WYSIAYG (What You See Is All You Get): • • no depth information • can’t examine scene from different point of view • at most can play with the individual pixels or groups of pixels to change colors, enhance contrast, find edges, etc. 29

  30. GEOMETRY-BASED GRAPHICS Geometry-based graphics (also called scalable vector • graphics or object-oriented graphics) • Store mathematical descriptions, or “models,” of geometric elements (lines, polygons, polyhedrons…) and associated attributes (e.g., color, material properties). Images created as pixel arrays (via sampling of geometry) for • viewing, but not stored as part of model. Images of many different views are generated from same model Users cannot usually work directly with individual pixels in • geometry-based programs; as user manipulates geometric elements, program resamples and redisplays elements 30

  31. GEOMETRY-BASED GRAPHICS MODELING VS. RENDERING Modeling • Rendering • • Create models Take “picture” with camera • Apply materials to models • Both can be done with commercial software: • • Place models around scene Autodesk Maya TM ,3D Studio Max TM , • Place lights in scene • Blender TM , etc. • Place the camera Point Light Spot Light Directional Light Ambient Light 31

  32. VI. CONCEPTUAL FRAMEWORK • Graphics Library • Graphics Subroutine Library or Package Intermediary between Application and Display Hardware • • Examples: OpenGL™, DirectX™, Windows Presentation Foundation™ (WPF), RenderMan ™ Primitives (characters, lines, polygons, meshes,…) • Attributes • • Color, line style, material properties for 3D • Lights Transformations • • Immediate mode vs. retained mode 32

  33. VI. CONCEPTUAL FRAMEWORK • Graphics System / GPU • Logical Display Device • User Interaction • Modification of Model and/or Image 33

  34. OUR FIRST ASSIGNMENT 34

  35. THE CODE import static com.jogamp.opengl.GL4.*; import java.nio.FloatBuffer; import javax.swing.JFrame; import com.jogamp.common.nio.Buffers; import com.jogamp.opengl.*; import com.jogamp.opengl.awt.*; @SuppressWarnings("serial") public class Code extends JFrame implements GLEventListener { private GLCanvas myCanvas; public Code() { setTitle("Chapter2 - program1"); setSize(600,400); setLocation(200,200); myCanvas = new GLCanvas(); myCanvas.addGLEventListener(this); getContentPane().add(myCanvas); setVisible(true); } public void display(GLAutoDrawable drawable) { GL4 gl = (GL4) GLContext.getCurrentGL(); float bkg[] = { 1.0f, 1.0f, 0.0f, 1.0f }; FloatBuffer bkgBuffer = Buffers.newDirectFloatBuffer(bkg); gl.glClearBufferfv(GL_COLOR, 0, bkgBuffer); } public static void main(String[] args) { new Code(); } public void init(GLAutoDrawable drawable) {} public void reshape(GLAutoDrawable drawable, int x, int y, int width, int height) {} public void dispose(GLAutoDrawable drawable) {} } 35

  36. SUMMARY I. Image Processing / Computer Graphics II. Advantages III. Representative Uses IV. Classification of Applications V. History VI. Conceptual Framework VII. Our First Assignment 36

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend