Linear and Affine Transformations Coordinate Systems

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

2D/3D Geometric Transformations and Scene Graphs

Geometric Transformations

Transforms. COMP 575/770 Spring 2013

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

GEOMETRIC TRANSFORMATIONS AND VIEWING

Vector Algebra Transformations. Lecture 4

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

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

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

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

CT5510: Computer Graphics. Transformation BOCHANG MOON

Advanced Computer Graphics Transformations. Matthias Teschner

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

Graphics Pipeline 2D Geometric Transformations

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

Computer Graphics with OpenGL ES (J. Han) Chapter IV Spaces and Transforms

Specifying Complex Scenes

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

Viewing with Computers (OpenGL)

Transforms 1 Christian Miller CS Fall 2011

Computer Science 426 Midterm 3/11/04, 1:30PM-2:50PM

CSE452 Computer Graphics

CS559: Computer Graphics

CS354 Computer Graphics Rotations and Quaternions

Transformations Week 9, Lecture 18

Today s Topics. 3. Transformations in 2D. 4. Coordinate-free geometry. 5. 3D Objects (curves & surfaces) 6. Transformations in 3D

Interactive Computer Graphics. Hearn & Baker, chapter D transforms Hearn & Baker, chapter 5. Aliasing and Anti-Aliasing

Object Representation Affine Transforms. Polygonal Representation. Polygonal Representation. Polygonal Representation of Objects

Section III: TRANSFORMATIONS

3D Graphics for Game Programming (J. Han) Chapter II Vertex Processing

3D Viewing. CS 4620 Lecture 8

UNIT 2 2D TRANSFORMATIONS

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

CSE528 Computer Graphics: Theory, Algorithms, and Applications

Today. Parity. General Polygons? Non-Zero Winding Rule. Winding Numbers. CS559 Lecture 11 Polygons, Transformations

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

Linear transformations Affine transformations Transformations in 3D. Graphics 2009/2010, period 1. Lecture 5: linear and affine transformations

Animation. Keyframe animation. CS4620/5620: Lecture 30. Rigid motion: the simplest deformation. Controlling shape for animation

Midterm Examination CS 534: Computational Photography

Visual Recognition: Image Formation

Lecture 5: Transforms II. Computer Graphics and Imaging UC Berkeley CS184/284A

3D Geometry and Camera Calibration

3D GRAPHICS. design. animate. render

3D Viewing Episode 2

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

Overview. By end of the week:

CSE328 Fundamentals of Computer Graphics

Lecture 3 Sections 2.2, 4.4. Mon, Aug 31, 2009

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

Transformations in Ray Tracing. MIT EECS 6.837, Durand and Cutler

CSC 305 The Graphics Pipeline-1

COSC579: Scene Geometry. Jeremy Bolton, PhD Assistant Teaching Professor

Chapter 2 - Basic Mathematics for 3D Computer Graphics

Introduction to Homogeneous coordinates

APN-065: Determining Rotations for Inertial Explorer and SPAN

Introduction to Computer Vision

3D Mathematics. Co-ordinate systems, 3D primitives and affine transformations

Implementing a virtual camera. Graphics 2. Creating a view of the scene an outline. Virtual camera - definitions

Models and The Viewing Pipeline. Jian Huang CS456

Computer Graphics. Geometric Transformations

COMP3421. Vector geometry, Clipping

Game Engineering: 2D

Structure from Motion. Prof. Marco Marcon

Computer Graphics. Geometric Transformations

Computer Graphics Geometric Transformations

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

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

CS4670/5670: Computer Vision Kavita Bala. Lecture 14: Feature matching and Transforms

Monday, 12 November 12. Matrices

METRIC PLANE RECTIFICATION USING SYMMETRIC VANISHING POINTS

CALCULATING TRANSFORMATIONS OF KINEMATIC CHAINS USING HOMOGENEOUS COORDINATES

When you move an (unparented and unrotated) item in Layout, generally your mouse movements have the following effects:

CS251 Spring 2014 Lecture 7

Coordinate transformations. 5554: Packet 8 1

Linear Algebra Part I - Linear Spaces

UNIT 4 GEOMETRIC OBJECTS AND TRANSFORMATIONS-1

THE VIEWING TRANSFORMATION

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

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

CV: 3D sensing and calibration

COMP3421. Introduction to 3D Graphics

INTRODUCTION TO COMPUTER GRAPHICS. It looks like a matrix Sort of. Viewing III. Projection in Practice. Bin Sheng 10/11/ / 52

CS 465 Program 4: Modeller

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

Computer Graphics Hands-on

the gamedesigninitiative at cornell university Lecture 14 2D Sprite Graphics

Three-Dimensional Viewing Hearn & Baker Chapter 7

Transformations. Questions on Assignment 1? Announcements

COMP3421. Introduction to 3D Graphics

On Your Own. ). Another way is to multiply the. ), and the image. Applications. Unit 3 _ _

3D Viewing Episode 2

CV: Matching in 2D. Matching 2D images to 2D images; Matching 2D images to 2D maps or 2D models; Matching 2D maps to 2D maps MSU CSE 803

Advanced Lighting Techniques Due: Monday November 2 at 10pm

CSE 167: Introduction to Computer Graphics Lecture #3: Projection. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013

Epipolar Geometry Prof. D. Stricker. With slides from A. Zisserman, S. Lazebnik, Seitz

CS770/870 Spring 2017 Transformations

Computer Vision Projective Geometry and Calibration. Pinhole cameras

Coordinate Frames and Transforms

CS6670: Computer Vision

Transcription:

Linear and Affine Transformations Coordinate Systems

Recall A transformation T is linear if

Recall A transformation T is linear if Every linear transformation can be represented as matrix

Linear Transformation Examples Uniform Scaling Non-uniform Scaling Rotations Reflections Orthogonal Projections Translations?

Problem with Translation Translation by not linear! Would like a unified framework for handling all transformations

Homogeneous Coordinates Main idea: add a dummy 4 th dimension points: vectors:

In Homogeneous Coordinates

In Homogeneous Coordinates

In Homogeneous Coordinates

In Homogeneous Coordinates

Homogeneous Coordinates Main idea: add a dummy 4 th dimension points: vectors: Now translation is matrix multiplication! 4 x 4 matrix transformations called affine

Linear Transformation Zoo Translation:

Linear Transformation Zoo Translation:

Linear Transformation Zoo Rotation:

Linear Transformation Zoo Rotation:

Linear Transformation Zoo Rotation: what about in homogeneous coordinates?

Linear Transformation Zoo Rotation:

Linear Transformation Zoo Rotation:

Linear Transformation Zoo Uniform scaling:

Linear Transformation Zoo Uniform scaling:

Linear Transformation Zoo Scaling:

What About Non-Axis-Aligned?

What About Non-Axis-Aligned? compose transformations!

What About Non-Axis-Aligned? compose transformations!

Linear Transformation Zoo Reflection:

Linear Transformation Zoo Reflection: axis to reflect

Linear Transformation Zoo Reflection:

Linear Transformation Zoo Shear:

Linear Transformation Zoo Shear:

Linear Transformation Zoo Shear: shear y-axis in x-axis direction

Linear Transformation Zoo Shear:

Combining Transformations matrix multiplication does not commute

Example: Rotate About Point

Example: Rotate About Point

Transforming Normals The problem:

Transforming Normals The problem:

Transforming Normals The problem: Points and vectors: Normals:

What is a Coordinate System? 1. an origin 2. a frame of vectors spanning space

What is a Coordinate System? 1. an origin 2. a frame of vectors spanning space usually orthonormal usually right-handed

What is a Coordinate System? 1. an origin 2. a frame of vectors spanning space usually orthonormal usually right-handed How represented?

What is a Coordinate System? 1. an origin 2. a frame of vectors spanning space usually orthonormal usually right-handed How represented? in other coordinates (turtles all the way down?)

Cartesian World Coordinates Canonical root coordinate system Usually y points up, x and z horizontal But this is arbitrary

Transforming Coordinate Systems Can define coordinate system in terms of world coordinates

Transforming Coordinate Systems Can define coordinate system in terms of world coordinates Given in world coords

Transforming Coordinate Systems Can define coordinate system in terms of world coordinates Given in world coords

Change of Coordinates Matrix Maps from local to world coordinates

Change of Coordinates Matrix Maps from local to world coordinates How to map back?

More Coordinates Systems world

More Coordinates Systems world

Coordinate Systems in Graphics world camera

Coordinate Systems in Graphics world view matrix (also called look at ) camera

Building the View Matrix Three axes: tangent, up, look

Building the View Matrix Three axes: tangent, up, look Note: camera looks down negative look direction for extra confusion

tangent up -look eye Building the View Matrix Three axes: tangent, up, look Note: camera looks down negative look direction for extra confusion

tangent up -look eye Building the View Matrix Three axes: tangent, up, look Note: camera looks down negative look direction for extra confusion

tangent up -look eye -R eye Building the View Matrix R tangent up -look

Coordinate Systems in Graphics world object view matrix camera

Why Use Object Coordinates?

Why Use Object Coordinates? Easier to work with / animate

Why Use Object Coordinates? Easier to work with / animate Instancing

Coordinate Systems in Graphics model matrix world object view matrix camera

Transformations Every transformation creates child coordinate system

Two Interpretations of Backwards: transforms applied right to left in original coordinate system

Two Interpretations of Forwards: transforms applied left to right in new coordinate systems

Two Interpretations of Same answer either way, but both interpretations useful

Scene Graph Represents hierarchy of transformations Assignment 3: bones in character body