What is the world frame?

the global frame / coordinate systrem we use

-> allows us to provide absolute positions for individual cameras / local coordinate systems

in relation to their global position

In what are we interested when we talk of relative positions?

only in the relative positions from two or more cameras

but not in a global context

When performing a transformation, what is fixed and what is actually transformed?

we transform local frames

-> change the coordinate systems

but usually fix the points (static)

How do the coordinate systems of two camera frames relate (w.r.t. a point p in the world frame)?

basis * coefficients -> point in space

meaning the point is the same but on the right hand side with new basis (and thus also new coefficients)

What do rotation matrices belong to and what properties do they have?

special orthogonal group

a = R a’

RR^T = I (rotation matrix * translated rotaiotn matrix = identity matrix)

det(R) = 1

a’ = R^-1 a = R^T a

How can an entire euclidean transformation be expressed?

a’ = R a + t

rotation matrix R

point a

translation t

How can rotaiton and translaiton be expressed in a more compact way? What is required?

Transformatoin matrix T

requires a, b, c to be (from 3 to) 4 dimensional…

How can we create T from R and t? How must the points be changed?

What is the definintion of the special euclidean gorup (SE(3))?

rotation and translation matrix (set)

matrix multiplicatoin (operator)

Again, what is the result of applying rotaiton and translation to a point?

have point p in origional frame

apply translation and rotation to compute same point

in new frame (coordinate system)

How can one reverse rotation and translation (compute point in original frame)?

=>

What is the transformation matrix of inverse transformation?

Given two absolute poses ((R1,t1), (R2,t2)) how can we compute the the relateive pose (R12, t12)?

How should we express the position of a camera frame in the world frame?

provide the rotaiotn and translation

from camera to world

not from world to camera…

How can we get the R, t from world to camera?

get the inverse/transpose from camera to world…

How many degrees of freedom does the similarity transformation have?

7

How many degrees of freedom does euclidean transformation have?

2D -> 4

rotation along each axis: 2

translation along each axis: 2

3D -> 6

‘‘ -> 3

What is the additional dimension / degree of freedom introduced by similarity transformaiton?

euclidean (6)

plus scale (1)

-> 7

What are plücker coordinates used for?

to express lines in R^3 (3D lines…)

How are projection planes defined (w.r.t. 3d lines)?

projection plane is based on origin of camera frame

and 3D line

Of what do plücker coordinates consist?

v: direcotin of 3D line (typically unit vector)

n: normal of projection plane

-> we have V

-> we have Q (perpendicular to v through origin)

n: normal of projection plane (n = Q x v)

v gives directoin

n gives distance and position to origin

What is Q w.r.t. plücker coordinates?

Q is the point in the image frame (w.r.t. coordinate system of image frame) that lies on the 3D line

-> Q gives point, v gives direction…

How is the norm of the n part in hte plücker coordinates (normal of projection plane) obtained?

use definintion of cross product

|| a x b || = ||a|| ||b|| sin theta

n = Q x v

as Q x v orthogonal -> sin (90) = 1…

-> || n || = d * ||v||

with d = ||Q|| = ||n||/||v||

distance from origin to image plane…

In real-world scenarios, does one use 3D lines as they are?

no -> usually use segments (3D lines with start and endpoint…)

What is a general “problem” of using rotation matrices to denote rotations?

has 9 elements

but actually only 3 degrees of freedom…

-> x,y,z axis rotation…

=> redundancy…!

=> there are better ways to express rotations

What common methods to express rotation are there? What is the best one?

roation matrix

euler angles

angle-axis (rotation vector)

quaternion

cayley’s representation

=> no ideal rotatoin representation for all purposes

-> are equivalent in some sense as they express the same

What axis exist in euler angles?

roll axis

pitch axis

yaw axis

What type of rotation exists in euler angles?

intrinsic rotation

extrinsic rotation

What is the difference between extrinsic and intrinsic rotatoin (euler angles)?

extrinsic:

the initial axis stay fixed when we conduct the invididual rotations

-> comparable to world space

intrinsic:

axis change with the rotation (dynamic)

-> rotation on one axis change palcement of other axis thus the following rotation…

-> compared to object space / camera frame

What is a gimbal lock?

degenerate case of euler rotations

-> first two rotations (along z, y axis)

-> lead to last rotation along x asix being along initial z axis

How does the axis-angle repesenation looks like?

give rotation axis e

give rotation angle theta

-> rotation vector is theta e

How are quaternions defined?

based on polar coordinates

-> similar to axis-angle representaiton

but: actual representation with 4-dim vector q

q = (q0,q1,q2,q3)

with

How is a quaternion denoted?

(n = [x,y,z]…)

When using quaternions, how are real points denoted?

denote as quaternion with real coordinate equal to 0

p = [0, x, y, z] = [0,v]

What are some common 3D representation methods?

Point cloud

Voxel grid

Implicit surface

Mesh

What are point clouds?

discrete set of data points in space

may represent shape or object

each point position has its set of cartesian coordinates and independent of each other

What is a voxel grid?

similar to pixel grid but in 3D

voxel: 3D cube

=> grid of values organized into layers, rows and columns (resulting in these 3D cubes…)

What is mesh?

-> collectoin of vertices, edges and faces

that define shape of polyhedral object

What types of mesh are there?

triangle mesh

preffered if gemoetry function is easy and less complex

mostly for regular geometrical shapes

quad mesh

(relatively) accurate results

more used in complex systems

How do voxel, point cloud and polygon mesh compare?

Voxel

Polygon mesh

memory efficiency

poor

not good

good

textures

no

yes

for neural networks

easy

not easy

How does signed distance function differ from the previously introduced 3D representation methods?

previous: explicit

SDF: implicit

How does SDF roughly work?

create voxel grid

calculate distance of actual surface to each voxel

-> creates zeru-value SDF isosurface

voxel lies outside: distance positive

voxel lies inside: negative value

based on this, regress a decision boundary

=> creating water-thight surface

How do we actualy find the surface given the voxels?

take voxel corners

determin sign of these corners (positive: inside; negatrive: outside)

create iso-surface delimiting these edges

What are line clouds?

similar to point clouds

but with lines…

How can we improve 3D scene representation?

integrate infromation

-> i.e. parallelism and orthogonality

man-made structures usually orthogonal and paralell

-> enforce this in line-clouds…

-> enforce co-planarity

How can we extend semantic information from 2d to 3d? (2d image segmentation -> each pixel has semantic meaning like car, sidewalk, pedestrian…)

assign semantic meaning to

points of pointcloud

What are rigid transformations?

Rotation and translation

Last changed5 months ago