To Do. Outline. Translation. Homogeneous Coordinates. Foundations of Computer Graphics. Representation of Points (4-Vectors) Start doing HW 1

Similar documents
Math background. 2D Geometric Transformations. Implicit representations. Explicit representations. Read: CS 4620 Lecture 6

Linear and Affine Transformations Coordinate Systems

Vector Algebra Transformations. Lecture 4

GEOMETRIC TRANSFORMATIONS AND VIEWING

Geometric Transformations

Computer Graphics. Geometric Transformations

Computer Graphics. Geometric Transformations

Viewing with Computers (OpenGL)

Camera Model and Calibration

3D Geometry and Camera Calibration

3D Transformations. CS 4620 Lecture Kavita Bala w/ prior instructor Steve Marschner. Cornell CS4620 Fall 2015 Lecture 11

2D/3D Geometric Transformations and Scene Graphs

Today. Today. Introduction. Matrices. Matrices. Computergrafik. Transformations & matrices Introduction Matrices

Humanoid Robotics. Projective Geometry, Homogeneous Coordinates. (brief introduction) Maren Bennewitz

CS 428: Fall Introduction to. Transformations in OpenGL + hierarchical modeling. Andrew Nealen, Rutgers, /21/2009 1

Robot Mapping. A Short Introduction to Homogeneous Coordinates. Gian Diego Tipaldi, Wolfram Burgard

CS559: Computer Graphics

Introduction to Homogeneous coordinates

3D Transformations. CS 4620 Lecture 10. Cornell CS4620 Fall 2014 Lecture Steve Marschner (with previous instructors James/Bala)

Last week. Machiraju/Zhang/Möller/Fuhrmann

Overview. By end of the week:

Rigid Body Motion and Image Formation. Jana Kosecka, CS 482

Motivation. General Idea. Goals. (Nonuniform) Scale. Outline. Foundations of Computer Graphics. s x Scale(s x. ,s y. 0 s y. 0 0 s z.

CT5510: Computer Graphics. Transformation BOCHANG MOON

CS4620/5620. Professor: Kavita Bala. Cornell CS4620/5620 Fall 2012 Lecture Kavita Bala 1 (with previous instructors James/Marschner)

Computer Graphics. Coordinate Systems and Change of Frames. Based on slides by Dianna Xu, Bryn Mawr College

Camera Model and Calibration. Lecture-12

Lecture 4: Transformations and Matrices. CSE Computer Graphics (Fall 2010)

To Do. Computer Graphics (Fall 2004) Course Outline. Course Outline. Motivation. Motivation

3-D D Euclidean Space - Vectors

Computer Graphics Hands-on

Computer Viewing. CS 537 Interactive Computer Graphics Prof. David E. Breen Department of Computer Science

Advanced Computer Graphics Transformations. Matthias Teschner

2D transformations: An introduction to the maths behind computer graphics

3D Viewing. CMPT 361 Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller

Lecture 5 2D Transformation

Computer Viewing Computer Graphics I, Fall 2008

COMS 4160: Problems on Transformations and OpenGL

Computer Viewing. CITS3003 Graphics & Animation. E. Angel and D. Shreiner: Interactive Computer Graphics 6E Addison-Wesley

Geometry: Outline. Projections. Orthographic Perspective

Introduction to Computer Graphics 4. Viewing in 3D

Camera Models and Image Formation. Srikumar Ramalingam School of Computing University of Utah

Transforms 1 Christian Miller CS Fall 2011

Camera Models and Image Formation. Srikumar Ramalingam School of Computing University of Utah

Computer Viewing and Projection. Overview. Computer Viewing. David Carr Fundamentals of Computer Graphics Spring 2004 Based on Slides by E.

To Do. Course Outline. Course Outline. Goals. Motivation. Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 3: Transformations 1

Overview. Viewing and perspectives. Planar Geometric Projections. Classical Viewing. Classical views Computer viewing Perspective normalization

Advances in Metric-neutral Visualization

Homework 5: Transformations in geometry

Reminder: Lecture 20: The Eight-Point Algorithm. Essential/Fundamental Matrix. E/F Matrix Summary. Computing F. Computing F from Point Matches

Index. 3D reconstruction, point algorithm, point algorithm, point algorithm, point algorithm, 253

Overview of Projections: From a 3D world to a 2D screen.

An idea which can be used once is a trick. If it can be used more than once it becomes a method

UNIT 4 GEOMETRIC OBJECTS AND TRANSFORMATIONS-1

Perspective Projection in Homogeneous Coordinates

1 Transformations. Chapter 1. Transformations. Department of Computer Science and Engineering 1-1

Motivation. Parametric Curves (later Surfaces) Outline. Tangents, Normals, Binormals. Arclength. Advanced Computer Graphics (Fall 2010)

Index. 3D reconstruction, point algorithm, point algorithm, point algorithm, point algorithm, 263

MAE : Lecture #12 - Projection and Perspective. Lecture Overview:

Introduction to Computer Vision

3D Viewing. CS 4620 Lecture 8

Early Fundamentals of Coordinate Changes and Rotation Matrices for 3D Computer Vision

Basic Elements. Geometry is the study of the relationships among objects in an n-dimensional space

Visual Recognition: Image Formation

3D Viewing. Introduction to Computer Graphics Torsten Möller. Machiraju/Zhang/Möller

Three-Dimensional Graphics III. Guoying Zhao 1 / 67

Graphics Pipeline 2D Geometric Transformations

Transforms. COMP 575/770 Spring 2013

Module 9 : Numerical Relaying II : DSP Perspective

Transformations. Examples of transformations: shear. scaling

Motivation. What we ve seen so far. Demo (Projection Tutorial) Outline. Projections. Foundations of Computer Graphics

Computer Graphics. Chapter 5 Geometric Transformations. Somsak Walairacht, Computer Engineering, KMITL

CSE328 Fundamentals of Computer Graphics: Theory, Algorithms, and Applications

CV: 3D sensing and calibration

Lecture 4: Transforms. Computer Graphics CMU /15-662, Fall 2016

Monday, 12 November 12. Matrices

COMP3421. Introduction to 3D Graphics

3D Geometry and Camera Calibration

Viewing. Reading: Angel Ch.5

DD2429 Computational Photography :00-19:00

Translation. 3D Transformations. Rotation about z axis. Scaling. CS 4620 Lecture 8. 3 Cornell CS4620 Fall 2009!Lecture 8

Homework 5: Transformations in geometry

GRAFIKA KOMPUTER. ~ M. Ali Fauzi

COMP3421. Introduction to 3D Graphics

Graphics pipeline and transformations. Composition of transformations

N-Views (1) Homographies and Projection

3D Viewing. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 9

Multiple View Geometry in Computer Vision

Moving Objects. We need to move our objects in 3D space.

Ray Casting. Outline. Similar to glulookat derivation. Foundations of Computer Graphics

Geometric transformations in 3D and coordinate frames. Computer Graphics CSE 167 Lecture 3

Chap 3 Viewing Pipeline Reading: Angel s Interactive Computer Graphics, Sixth ed. Sections 4.1~4.7

Computer Graphics 7: Viewing in 3-D

Lecture 9: Transformations. CITS3003 Graphics & Animation

Multiple View Geometry in Computer Vision

CS380: Computer Graphics Viewing Transformation. Sung-Eui Yoon ( 윤성의 ) Course URL:

CSE 252B: Computer Vision II

Announcement. Project 1 has been posted online and in dropbox. Due: 11:59:59 pm, Friday, October 14

CS230 : Computer Graphics Lecture 6: Viewing Transformations. Tamar Shinar Computer Science & Engineering UC Riverside

Describe the Orthographic and Perspective projections. How do we combine together transform matrices?

Transcription:

Foundations of Computer Graphics Homogeneous Coordinates Start doing HW 1 To Do Specifics of HW 1 Last lecture covered basic material on transformations in 2D Likely need this lecture to understand full 3D transformations Last lecture: full derivation of 3D rotations. You only need final formula glulookat derivation later this lecture helps clarifying some ideas Translation E.g. move x by +5 units, leave y, z unchanged We need appropriate matrix. What is it? Homogeneous Coordinates Add a fourth homogeneous coordinate (w=1) 4x4 matrices very common in graphics, hardware Last row always 0 0 0 1 (until next lecture) Representation of Points (4-Vectors) Homogeneous coordinates Divide by 4 th coord (w) to get (inhomogeneous) point Multiplication by w > 0, no effect Assume w 0. For w > 0, normal finite point. For w = 0, point at infinity (used for vectors to stop translation) 1

Advantages of Homogeneous Coords Unified framework for translation, viewing, rot Can concatenate any set of transforms to 4x4 matrix No division (as for perspective viewing) till end Simpler formulas, no special cases Standard in graphics software, hardware General Translation Matrix Order matters!! TR is not the same as RT (demo) General form for rigid body transforms We show rotation first, then translation (commonly used to position objects) on next slide. Slide after that works it out the other way Demos with applet 2

Foundations of Computer Graphics Transforming Normals Normals Important for many tasks in graphics like lighting Do not transform like points e.g. shear Algebra tricks to derive correct transform Incorrect to transform like points Finding Normal Transformation Finding Normal Transformation 3

Finding Normal Transformation Foundations of Computer Graphics Rotations Revisited: Coordinate Frames Coordinate Frames All of discussion in terms of operating on points But can also change coordinate system Example, motion means either point moves backward, or coordinate system moves forward Coordinate Frames: In general Can differ both origin and orientation (e.g. 2 people) Coordinate Frames: Rotations One good example: World, camera coord frames (H1) Camera Camera World World 4

Geometric Interpretation 3D Rotations Axis-Angle formula (summary) Rows of matrix are 3 unit vectors of new coord frame Can construct rotation matrix from 3 orthonormal vectors Foundations of Computer Graphics Derivation of glulookat Case Study: Derive glulookat Defines camera, fundamental to how we view images Steps Up vector Eye May be important for HW1 Combines many concepts discussed in lecture Core function in OpenGL for later assignments Center First, create a coordinate frame for the camera Define a rotation matrix Apply appropriate translation for camera (eye) location 5

Constructing a coordinate frame? We want to associate w with a, and v with b But a and b are neither orthogonal nor unit norm And we also need to find u Constructing a coordinate frame We want to position camera at origin, looking down Z dirn Hence, vector a is given by eye center The vector b is simply the up vector Up vector Eye From basic math lecture - Vectors: Orthonormal Basis Frames Center Steps Geometric Interpretation 3D Rotations Rows of matrix are 3 unit vectors of new coord frame Can construct rotation matrix from 3 orthonormal vectors First, create a coordinate frame for the camera Define a rotation matrix Apply appropriate translation for camera (eye) location Steps Translation First, create a coordinate frame for the camera Define a rotation matrix Apply appropriate translation for camera (eye) location Cannot apply translation after rotation The translation must come first (to bring camera to origin) before the rotation is applied 6

glulookat final form glulookat final form 7