Introduction to Geometric Algebra Lecture I

Similar documents
Introduction to Geometric Algebra

Introduction to Geometric Algebra Lecture VI

Introduction to Geometric Algebra Lecture V

Geometric Algebra for Computer Graphics

APPENDIX A CLIFFORD ALGEBRA

Geometric Algebra. 8. Conformal Geometric Algebra. Dr Chris Doran ARM Research

From Grassmann s vision to Geometric Algebra Computing

ANALYSIS OF POINT CLOUDS Using Conformal Geometric Algebra

Unified Mathematics (Uni-Math)

Introduction to Geometric Algebra

Coordinate Free Perspective Projection of Points in the Conformal Model Using Transversions

PRIMITIVES INTERSECTION WITH CONFORMAL 5D GEOMETRY

Foundations of Geometric Algebra Computing

Geometric Algebra for Computer Science

2D Euclidean Geometric Algebra Matrix Representation

Visualization of the projective line geometry for geometric algebra

Advanced Geometric Approach for Graphics and Visual Guided Robot Object Manipulation

Versor Cheat Sheet. versor.mat.ucsb.edu. February 4, 2013

Inverse Kinematics of a Humanoid Robot based on Conformal Geometric Algebra using optimized Code Generation

Modeling Adaptive Deformations during Free-form Pose Estimation

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

Geometric Hand-Eye Calibration for an Endoscopic Neurosurgery System

GEOMETRIC TOOLS FOR COMPUTER GRAPHICS

PLAY WITH GEOMETRY ANIMATED AND INTERACTIVE, FREE, INSTANT ACCESS, ONLINE GEOMETRIC ALGEBRA JAVA APPLETS WITH CINDERELLA

Vector Algebra Transformations. Lecture 4

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

Design of Algorithms of Robot Vision Using Conformal Geometric Algebra

G 6,3 GEOMETRIC ALGEBRA

Graphics Pipeline 2D Geometric Transformations

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

The Making of a Geometric Algebra Package in Matlab Computer Science Department University of Waterloo Research Report CS-99-27

(Received February 18, 2005)

Geometric Algebra for Computer Graphics

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

Homogeneous coordinates, lines, screws and twists

SEMINARI CHIMICI. Dr. Eckhard Hitzer Department of Applied Physics University of Fukui - Japan

Game Mathematics. (12 Week Lesson Plan)

Inverse kinematics computation in computer graphics and robotics using conformal geometric algebra

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

Multiple View Geometry in Computer Vision

arxiv:cs.cg/ v1 9 Oct 2003

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

Singularity Analysis of a Novel Minimally-Invasive-Surgery Hybrid Robot Using Geometric Algebra

INTRODUCTION TO CAD/CAM SYSTEMS IM LECTURE HOURS PER WEEK PRESENTIAL

Gaigen: a Geometric Algebra Implementation Generator

arxiv: v4 [math.gm] 23 May 2016

Advances in Applied Clifford Algebras Boosted Surfaces: Synthesis of 3D Meshes using Point Pair Generators in the Conformal Model

Geometric Transformations

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

Dual Numbers: Simple Math, Easy C++ Coding, and Lots of Tricks. Gino van den Bergen

Chapter 2 Geometric Algebra for Modeling in Robot Physics

A case study in geometric algebra: Fitting room models to 3D point clouds

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

Katu Software Algebra 1 Geometric Sequence

CS354 Computer Graphics Rotations and Quaternions

3D Computer Vision II. Reminder Projective Geometry, Transformations

Lecture 5 2D Transformation

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

EFFICIENT INVERSE KINEMATICS ALGORITHM BASED ON CONFORMAL GEOMETRIC ALGEBRA Using Reconfigurable Hardware

2D/3D Geometric Transformations and Scene Graphs

Programming with Gaigen 2

Fundamentals of 3D. Lecture 3: Debriefing: Lecture 2 Rigid transformations Quaternions Iterative Closest Point (+Kd-trees)

Quaternions and Dual Coupled Orthogonal Rotations in Four-Space

S U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T

Advanced Computer Graphics Transformations. Matthias Teschner

Quaternions & Rotation in 3D Space

3D Euclidean Geometry Through Conformal Geometric Algebra (a GAViewer tutorial)

Graphics and Interaction Transformation geometry and homogeneous coordinates

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates

Teaching Geometric Algebra with CLUCalc

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

Jorg s Graphics Lecture Notes Coordinate Spaces 1

Rida Farouki from the University of California at Davis (UCD), USA, for inviting me to work with them. The work on random multivector variables and

Robot object manipulation using stereoscopic vision and conformal geometric algebra

CHAPTER 1 Graphics Systems and Models 3

Geometric transformations assign a point to a point, so it is a point valued function of points. Geometric transformation may destroy the equation

Spherical Conformal Geometry with Geometric Algebra

Object Detection in Point Clouds Using Conformal Geometric Algebra

Visual Recognition: Image Formation

Linear Algebra Part I - Linear Spaces

Transformations. Examples of transformations: shear. scaling

2D Transforms. Lecture 4 CISC440/640 Spring Department of Computer and Information Science

Advances in Metric-neutral Visualization

2D Object Definition (1/3)

Monday, 12 November 12. Matrices

COMPUTER GRAPHICS USING CONFORMAL GEOMETRIC ALGEBRA

Geometric algebras for euclidean geometry

Bezier Curves. An Introduction. Detlef Reimers

Planes Intersecting Cones: Static Hypertext Version

Computer Graphics. Geometric Transformations

EECE 478. Learning Objectives. Learning Objectives. Linear Algebra and 3D Geometry. Linear algebra in 3D. Coordinate systems

Computer Graphics. Geometric Transformations

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

X Std. Topic Content Expected Learning Outcomes Mode of Transaction

arxiv: v1 [math.gm] 16 Jan 2019

CS451Real-time Rendering Pipeline

Advanced Rendering Techniques

Deccan Education Society s

3. Spherical Conformal Geometry with Geometric Algebra

ACT Math and Science - Problem Drill 11: Plane Geometry

Transcription:

Introduction to Geometric Algebra Lecture I Leandro A. F. Fernandes laffernandes@inf.ufrgs.br Manuel M. Oliveira oliveira@inf.ufrgs.br CG UFRGS

Geometric problems Geometric data Lines, planes, circles, spheres, etc. Transformations Rotation, translation, scaling, etc. Other operations Intersection, basis orthogonalization, etc. Linear Algebra is the standard framework 2

Using vectors to encode geometric data Directions Points 3

Using vectors to encode geometric data Directions Points Drawback The semantic difference between a direction vector and a point vector is not encoded in the vector type itself. R. N. Goldman (1985), Illicit expressions in vector algebra, ACM Trans. Graph., vol. 4, no. 3, pp. 223 243. 4

Assembling geometric data Straight lines Point vector Direction vector 5

Assembling geometric data Straight lines Point vector Direction vector Planes Normal vector Distance from origin 6

Assembling geometric data Straight lines Point vector Direction vector Planes Normal vector Distance from origin Spheres Center point Radius 7

Assembling geometric data Straight lines Point vector Direction vector Planes Normal vector Distance from origin Spheres Center point Radius Drawback The factorization of geometric elements prevents their use as computing primitives. 8

Intersection of two geometric elements A specialized treatment for each pair of elements Straight line Straight line Straight line Plane Straight line Sphere Plane Sphere etc. Special cases must be handled explicitly e.g., Straight line Straight line may return Empty set Point Straight line 9

Intersection of two geometric elements A specialized treatment for each pair of elements Straight line Straight line Straight line Plane Straight line Sphere Plane Sphere etc. Special cases must be handled explicitly e.g., Straight line Straight line may return Empty set Point Straight line Plücker Coordinates Linear Algebra Extension An alternative to represent flat geometric elements Points, lines and planes as elementary types Allow the development of more general solution Not fully compatible with transformation matrices J. Stolfi (1991) Oriented projective geometry. Academic Press Professional, Inc. 10

Using matrices to encode transformations Projective Affine Similitude Rigid / Euclidean Identity Translation Rotation Isotropic Scaling Linear Scaling Reflection Shear Perspective 11

Drawbacks of transformation matrices Non-uniform scaling affects point vectors and normal vectors differently 90 > 90 1.5 X 12

Drawbacks of transformation matrices Non-uniform scaling affects point vectors and normal vectors differently Rotation matrices Not suitable for interpolation Encode the rotation axis and angle in a costly way 13

Drawbacks of transformation matrices Non-uniform scaling affects point vectors and normal vectors differently Rotation matrices Not suitable for interpolation Encode the rotation axis and angle in a costly way Quaternion Linear Algebra Extension Represent and interpolate rotations consistently Can be combined with isotropic scaling Not well connected with other transformations Not compatible with Plücker coordinates Defined only in 3-D W. R. Hamilton (1844) On a new species of imaginary quantities connected with the theory of quaternions. In Proc. of the Royal Irish Acad., vol. 2, pp. 424-434. 14

Linear Algebra Standard language for geometric problems Well-known limitations Aggregates different formalisms to obtain complete solutions Matrices Plücker coordinates Quaternions Jumping back and forth between formalisms requires custom and ad hoc conversions 15

Geometric Algebra High-level framework for geometric operations Geometric elements as primitives for computation Naturally generalizes and integrates Plücker coordinates Quaternions Complex numbers Extends the same solution to Higher dimensions All kinds of geometric elements 16

Lecture I Outline 17

Outline for this week Lecture I Mon, January 11 Subspaces Multivector space Some non-metric products Lecture II Tue, January 12 Metric spaces Some inner products Dualization and undualization Lecture III Fri, January 15 Duality relationships between products Blade factorization Some non-linear products 18

Outline for next week Lecture IV Mon, January 18 Geometric product Versors Rotors Lecture V Tue, January 19 Models of geometry Euclidean vector space model Homogeneous model Lecture VI Fri, January 22 Conformal model Concluding remarks 19

Reference material (on-line available) Geometric Algebra: A powerful tool for solving geometric problems in visual computing L. A. F. Fernandes M. M. Oliveira Tutorials of Sibgrapi (2009) Geometric Algebra: a Computational Framework for Geometrical Applications, Part 1 L. Dorst S. Mann IEEE Computer Graphics and Applications, 22(3):24-31 (2002) Geometric Algebra: a Computational Framework for Geometrical Applications, Part 2 S. Mann L. Dorst IEEE Computer Graphics and Applications, 22(4):58-67 (2002) 20

Reference material (books) Geometric algebra for computer science L. Dorst D. Fontijne S. Mann Morgan Kaufmann Publishers (2007) Geometric algebra with applications in engineering C. Perwass Springer Publishing Company (2009) Geometric computing with Clifford algebras G. Sommer Springer Publishing Company (2001) 21

Lecture I Subspaces 22

Vector space A vector space consists, by definition, of elements called vectors 23

Vector in a vector space 24

Spanning subspaces Geometric Meaning The resulting subspace is a primitive for computation! The subspace spanned by vectors a and b 25

k-d oriented subspaces k-d oriented subspaces (or k-blades) are built as the outer product of k vectors spanning it, for 0 k n 0-blade 1-blade 2-blade 3-blade n-blade 26

Properties of subspaces Attitude The equivalence class, for any Attitude Vectors with the same attitude 27

Properties of subspaces Attitude The equivalence class, for any Weight The value of in, where is a reference blade with the same attitude as Reference Weighted vector 28

Properties of subspaces Attitude The equivalence class, for any Weight The value of in, where is a reference blade with the same attitude as Orientation The sign of the weight relative to Reference + - Positive orientation Negative orientation 29

Properties of subspaces Attitude The equivalence class, for any Weight The value of in, where is a reference blade with the same attitude as Orientation Direction The sign of the weight relative to The combination of attitude and orientation Attitude Vectors with different directions 30

We need a basis for k-d subspaces n-d Vector Space 2 n -D Multivector Space consists of 1-D elements called vectors, in the basis can handle k-d elements, for 0 k n It is not enough! 31

Basis for multivector space Scalars Vector Space Bivector Space Trivector Space 32

Multivectors Basis for multivector space Scalars Vector Space Bivector Space Trivector Space Multivector 33

Definition issues Multivector The weighted combination of basis elements of Step k-vector The weighted combination of basis elements of k-blade The outer product of k vector factors Grade 34

Notable k-vectors Only these k-vectors are always also blades in n-d k-vector Linear Space Special Name 0-vector 1-vector (n-1)-vector n-vector scalar vector pseudovector pseudoscalar 35

Lecture I Outer product 36

Properties of the outer product Antisymmetry Scalars commute Distributivity Associativity 37

Computing with the outer product Basis for multivector space Scalars Vector Space Bivector Space Trivector Space 38

Computing with the outer product Basis for multivector space Scalars Vector Space Bivector Space Trivector Space 39

Computing with the outer product Basis for multivector space Scalars Vector Space Bivector Space Trivector Space Antisymmetry Scalars commute Distributivity 40

Computing with the outer product Basis for multivector space Scalars Vector Space Bivector Space Trivector Space Antisymmetry Scalars commute Distributivity 41

Computing with the outer product Basis for multivector space Scalars Vector Space Bivector Space Trivector Space 42

Lecture I The regressive product 43

The notion of duality The complementary grade of a grade k is n-k Venn Diagram Venn Diagrams 44

The notion of duality The complementary grade of a grade k is n-k 45

The notion of duality The complementary grade of a grade k is n-k The regressive product is correctly dual to the outer product k-blade are also built as the regressive product of n-k pseudovectors 46

Regressive Product Returns the subspace shared by two blades c 47

Properties of the regressive product Antisymmetry Scalars commute Distributivity Associativity 48

Credits Hermann G. Grassmann (1809-1877) Grassmann, H. G. (1877) Verwendung der Ausdehnungslehre fur die allgemeine Theorie der Polaren und den Zusammenhang algebraischer Gebilde. J. Reine Angew. Math. (Crelle's J.), Walter de Gruyter Und Co., 84, 273-283 49