A definition we will encounter: Groups

Slides:



Advertisements
Similar presentations
Chapter 4 Euclidean Vector Spaces
Advertisements

CS 450: COMPUTER GRAPHICS LINEAR ALGEBRA REVIEW SPRING 2015 DR. MICHAEL J. REALE.
John C. Hart CS 318 Interactive Computer Graphics
Chris Hall Aerospace and Ocean Engineering
Chapter 4.1 Mathematical Concepts. 2 Applied Trigonometry Trigonometric functions Defined using right triangle  x y h.
Ch. 2: Rigid Body Motions and Homogeneous Transforms
CSCE 590E Spring 2007 Basic Math By Jijun Tang. Applied Trigonometry Trigonometric functions  Defined using right triangle  x y h.
3D orientation.
Computer Graphics CSC 630 Lecture 2- Linear Algebra.
GG313 Lecture 12 Matrix Operations Sept 29, 2005.
Orientations Goal: –Convenient representation of orientation of objects & characters in a scene Applications to: – inverse kinematics –rigid body simulation.
Geometric Objects and Transformations Geometric Entities Representation vs. Reference System Geometric ADT (Abstract Data Types)
ME451 Kinematics and Dynamics of Machine Systems Review of Matrix Algebra – 2.2 September 13, 2011 Dan Negrut University of Wisconsin-Madison © Dan Negrut,
Rotations and Translations
Compiled By Raj G. Tiwari
Graphics CSE 581 – Interactive Computer Graphics Mathematics for Computer Graphics CSE 581 – Roger Crawfis (slides developed from Korea University slides)
1 February 24 Matrices 3.2 Matrices; Row reduction Standard form of a set of linear equations: Chapter 3 Linear Algebra Matrix of coefficients: Augmented.
Mathematical Topics Review of some concepts:  trigonometry  aliasing  coordinate systems  homogeneous coordinates  matrices, quaternions.
Linear Algebra Chapter 4 Vector Spaces.
CS 450: COMPUTER GRAPHICS QUATERNIONS SPRING 2015 DR. MICHAEL J. REALE.
Rotations and Translations
CSE 681 Review: Transformations. CSE 681 Transformations Modeling transformations build complex models by positioning (transforming) simple components.
Rotations and Translations 1. Mathematical terms The inner product of 2 vectors a,b is defined as: The cross product of 2 vectors is defined as: A unit.
Week 5 - Wednesday.  What did we talk about last time?  Project 2  Normal transforms  Euler angles  Quaternions.
Advanced Computer Graphics Spring 2014
Sect. 4.2: Orthogonal Transformations
Animating Rotations and Using Quaternions. What We’ll Talk About Animating Translation Animating 2D Rotation Euler Angle representation 3D Angle problems.
Chun-Yuan Lin Mathematics for Computer Graphics 2015/12/15 1 CG.
Comparing Two Motions Jehee Lee Seoul National University.
Basic Theory (for curve 01). 1.1 Points and Vectors  Real life methods for constructing curves and surfaces often start with points and vectors, which.
A function is a rule f that associates with each element in a set A one and only one element in a set B. If f associates the element b with the element.
Euler Angles This means, that we can represent an orientation with 3 numbers Assuming we limit ourselves to 3 rotations without successive rotations about.
Week 5 - Monday.  What did we talk about last time?  Lines and planes  Trigonometry  Transforms  Affine transforms  Rotation  Scaling  Shearing.
Learning from the Past, Looking to the Future James R. (Jim) Beaty, PhD - NASA Langley Research Center Vehicle Analysis Branch, Systems Analysis & Concepts.
Learning from the Past, Looking to the Future James R. (Jim) Beaty, PhD - NASA Langley Research Center Vehicle Analysis Branch, Systems Analysis & Concepts.
1 Objective To provide background material in support of topics in Digital Image Processing that are based on matrices and/or vectors. Review Matrices.
Fundamentals of Computer Animation Orientation and Rotation.
Graphics Graphics Korea University kucg.korea.ac.kr Mathematics for Computer Graphics 고려대학교 컴퓨터 그래픽스 연구실.
1 Part B Tensors Or, inverting The graph above represents a transformation of coordinates when the system is rotated at an angle  CCW.
MAT 322: LINEAR ALGEBRA.
CSE 167 [Win 17], Lecture 2: Review of Basic Math Ravi Ramamoorthi
Mathematics for Computer Graphics
CPSC 641: Computer Graphics Rotation Representation and Interpolation
Geometric Transformations
Representation of scene motion
Spatcial Description & Transformation
Ch. 2: Rigid Body Motions and Homogeneous Transforms
Rigid Body transformation Lecture 1
Review: Transformations
Matrices and Vectors Review Objective
ROTATIONS & TRANSLATIONS
Lecture 03: Linear Algebra
Mobile Robot Kinematics
Basic Math Review (you already know this stuff ...)
CSE4421/5324: Introduction to Robotics
CSC4820/6820 Computer Graphics Algorithms Ying Zhu Georgia State University Transformations.
Lecture on Linear Algebra
Rotational Kinematics
Rigid Body Transformations
Objective To provide background material in support of topics in Digital Image Processing that are based on matrices and/or vectors.
Quaternions are back!!! A global quaternion q is defined as q = q0 + q where q = q1I+ q2 J+ q3K . where q0 is a scalar and q is a vector. A quaternion.
VIRTUAL ENVIRONMENT.
Math review - scalars, vectors, and matrices
Game Programming Algorithms and Techniques
Rigid Body Transformations
Rotation and Orientation: Fundamentals
General Vector Spaces I
Robotics 1 Copyright Martin P. Aalund, Ph.D.
Presentation transcript:

A definition we will encounter: Groups Groups: algebraic structure consisting of a set of elements equipped with a binary operation (called the group operation) that combines any two elements to form a third element and that satisfies four conditions called the group axioms, namely closure, associativity, identity and invertibility. CLOSURE: A set has closure under an operation if performance of that operation on members of the set always produces a member of the same set; in this case we also say that the set is closed under the operation. ASSOCIATIVITY: Within an expression containing two or more occurrences in a row of the same associative operator, the order in which the operations are performed does not matter as long as the sequence of the operands is not changed. That is, rearranging the parentheses in such an expression will not change its value. IDENTITY: An identity element or neutral element is a special type of element of a set with respect to a binary operation on that set, which leaves other elements unchanged when combined with it. INVERTIBILITY: In abstract algebra, the idea of an inverse element generalizes concepts of a negation (sign reversal) in relation to addition, and a reciprocal in relation to multiplication. EXAMPLES: Real numbers with addition (the identity is 0) Nonzero real numbers with multiplication (the identity is 1)

Three definitions we may encounter: Groups, SO(3), SE(3). SO(3): Special Orthogonal group in three dimensions.  Coordinate frames corresponding to right handed frames are represented by orthogonal matrices with determinant +1 (this is why it’s special, it’s not -1). The set of all 3 x 3 matrices which satisfy these two properties is SO(3) ⊂ R3x3  (a group  under matrix multiplication). EXAMPLE: A = [cos(pi/3) –sin(pi/3 0; sin(pi/3) cos(pi/3) 0; 0 0 1] is such that det(A) = 1 SE(3): Special Euclidean group. Used for the kinematics of a rigid body, in classical mechanics. An arbitrary rigid transformation in SE(3) can be separated into two parts, namely, a translation and a rigid rotation. We will discuss translations and rotations in detail. NOTE: We will not be dealing with the various mathematical aspects of groups including something called Lie groups you may encounter in your readings. This page is just for information!!!

Quaternions… (William Rowen Hamilton, 1843) Quaternions, discovered in (Monday October 16th) 1843 began to be relegated (since mid 1880) to a minor role in mathematics and physics by vector analysis which described the same phenomena as quaternions but in a conceptually simpler manner with a cleaner notation. However, quaternions have had a revival since the late 20th century, primarily due to their utility in describing spatial rotations. The representations of rotations by quaternions are more compact and quicker to compute than the representations by matrices. Quaternions are used in: computer graphics, computer vision, robotics, navigation, control theory, signal processing, attitude control, physics, bioinformatics, molecular dynamics, computer simulations, orbital mechanics ... Unit quaternions, also known as versors, provide a convenient notation for representing orientations and rotations of objects in three dimensions. Compared to Euler angles they are simpler to compose and avoid the problem of gimbal lock. Compared to rotation matrices they are more compact, more numerically stable, and more efficient. When used to represent rotation, unit quaternions are also called rotation quaternions. When used to represent an orientation (rotation relative to a reference coordinate system), they are called orientation quaternions or attitude quaternions.

Quaternions… (Con't) ... Definition: A quaternion q can be regarded as a 4-tuple of real numbers (q0, q1, q2, q3), its components, where q0 is its scalar part and (q1, q2, q3) is its vector part (in R3), that is, q = q0 + q1i+ q2 j+ q3k , where (i, j, k) is the well known triad of unit vectors defined in R3. We can write instead, q = q0 + q where q = q1i+ q2 j+ q3k . (This definition suffices to show that quaternions are closed under addition and multiplication by a scalar) To complete the definition we need to add the fundamental (Hamilton’s) special products (not the “dot” nor the “cross” products) associated with i, j and k: i2 = j2 = k2 = ijk = -1; ij = -ji = k; jk = - kj = i; ki = -ik = j. (and then we can show other properties including that the product of quaternions is non-commutative.)

Product of quaternions and other properties ... Let q = q0 + q (with q = q1i+ q2 j+ q3k) and p = p0 + p (with p = p1i+ p2 j+ p3k) be two quaternions, then qp = (q0 + q ) (p0 + p ) = q0p0 + q0p + p0q + qp where the “product” qp = q x p – q . p that is: qp = q0p0 – q . p + q0p + p0q + q x p (here the scalar part is “q0p0 – q . p“, and the rest are vectors).

Product of quaternions and other properties ... Quaternion conjugates: Quaternions q = q0 + q and q* = q0 - q are called conjugates. (Note q + q* = 2q0) Magnitude (Size, Norm) of a quaternion: Given q = q0 + q1i + q2 j + q3k, then qq* = q*q = |q| = (q1)2 + (q2)2 + (q3)2 Inverse of a quaternion: Given q = q0 + q1i+ q2 j+ q3k, then q-1 = 1/q = q*/|q|2 Unit quaternion: A quaternion such that |q| = 1. Also for this quaternion q-1 = q*. Here q = 1 + 0, that is, the unit quaternion has the scalar part of 1 and the vector part of 0. The zero and the negative (additive inverse) quaternions are trivially defined as “0” and “-q”.

An example using quaternions ... Let p = 3 + i – 2j +k and q = 2 – i + 2j +3k. Verify that p . q = - 2 and p x q = -8i – 4j and thus their product is: pq = 3*2 - (-2) + 3*(– i + 2j +3k) + 2*(i – 2j +k ) + (-8i – 4j ) = 8 – 9i – 2j + 11k. We can use this example to verify that the product of quaternions can be expressed using algebra of matrices. For this let: p = p0 + p = p0 + p1i+ p2 j+ p3k, and q = q0 + q = q0 + q1i+ q2 j+ q3k, and let’s designate the product as the quaternion r = pq = r0 + r = r0 + r1i+ r2 j+ r3k = 8 – 9i – 2j + 11k. We can verify that the product pq can be written in matrix notation as follows: p0 -p1 -p2 -p3 p1 p0 -p3 p2 p2 p3 p0 -p1 p3 -p2 p1 p0 = r0 r1 r2 r3 q0 q1 q2 q3 And using the example at the top of the page: 3 -1 2 -1 1 3 -1 -2 -2 1 3 -1 1 2 1 3 = r0 r1 r2 r3 2 -1 3 8 -9 -2 11 IF YOU FEEL UNSURE ABOUT THESE LAST TWO SLIDES ASK QUESTIONS NOW!!!