Questions tagged [homogenous-transformation]

Related to questions about transformations in homogeneous coordinates.

In linear algebra, linear transformations can be represented by matrices.

Linear transformations are not the only ones that can be represented by matrices. Some transformations that are non-linear on a n-dimensional Euclidean space, can be represented as linear transformations on the n+1-dimensional space. These include both affine transformations (such as translation) and projective transformations.

Homogeneous coordinates are ubiquitous in computer graphics because they allow common operations such as translation, rotation, scaling and perspective projection to be implemented as matrix operations.

83 questions
40
votes
2 answers

Get 3D coordinates from 2D image pixel if extrinsic and intrinsic parameters are known

I am doing camera calibration from tsai algo. I got intrensic and extrinsic matrix, but how can I reconstruct the 3D coordinates from that inormation? 1) I can use Gaussian Elimination for find X,Y,Z,W and then points will be X/W , Y/W , Z/W as…
21
votes
2 answers

Why do 2D transformations need 3x3 matrices?

I want to do some 2D drawing and thus want to implement some matrix transformations. With my light mathematics background I am trying to understand how to do so in C# (any other oop language would do it obviously). All I read is explaining that we…
Mr.Pe
  • 719
  • 1
  • 7
  • 19
14
votes
3 answers

Why does sign matter in opengl projection matrix

I'm working on a computer vision problem which requires rendering a 3d model using a calibrated camera. I'm writing a function that breaks the calibrated camera matrix into a modelview matrix and a projection matrix, but I've run into an…
Kyle Simek
  • 9,576
  • 4
  • 26
  • 32
8
votes
3 answers

Why are aggregate and fold two different APIs in Spark?

When using the Scala standard lib, I can do somthing like this: scala> val scalaList = List(1,2,3) scalaList: List[Int] = List(1, 2, 3) scala> scalaList.foldLeft(0)((acc,n)=>acc+n) res0: Int = 6 Making one Int out of many Ints. And I can do…
7
votes
4 answers

Determining a homogeneous affine transformation matrix from six points in 3D using Python

I am given the locations of three points: p1 = [1.0, 1.0, 1.0] p2 = [1.0, 2.0, 1.0] p3 = [1.0, 1.0, 2.0] and their transformed counterparts: p1_prime = [2.414213562373094, 5.732050807568877, 0.7320508075688767] p2_prime = [2.7677669529663684,…
7
votes
1 answer

Convert a vector of 3D point to homogeneous representation in Eigen

I have a buffer containing N 3D points stored as [XYZXYZXYZ ... XYZ]. This buffer can be directly mapped to a Eigen::Matrix using Eigen::Map. Since I will transform the points using affine transformations (i.e Eigen::Matrix4f matrices)…
Pierluigi
  • 2,212
  • 1
  • 25
  • 39
6
votes
1 answer

Applying an inverse CATransform3D to sublayers of a CALayer that has already been transformed

I'm using a CATransform3D transformation to apply a pseudo 3D perspective effect to a view. I'm using the gyroscope in the iPhone 4 to control the parameters of the transform. The view I'm transforming has some subviews: The result is something…
Jasarien
  • 58,279
  • 31
  • 157
  • 188
5
votes
0 answers

html5 non affine image transformation with a 3x3 matrix

Is there any straight-forward way to do non affine transformations on an image with canvas/css/svg without using 3d transforms? By non affine transformation I mean applying a 3x3 homogeneous matrix on an image, you know, to do "perspective"…
Zelenova
  • 276
  • 3
  • 7
4
votes
1 answer

How does near/far clipping planes in gluPerspective()/glm::perspective() work?

I have a question about how the standard perspective projection matrix works, the one you get from gluPerspective() or glm::perspective(). Specifically, I'm wondering about the near/far clipping planes. I was under the impression that after…
4
votes
2 answers

OpenCv warpPerspective meaning of elements of homography

I have a question regarding the meaning of the elements from an projective transformation matrix e.g. in an homography used by OpenCv warpPerspective. I know the basic of an affin transformation, but here I'm more interested in the projective…
flor1an
  • 960
  • 3
  • 15
  • 33
4
votes
1 answer

How do I convert a 2D transformation matrix (for homogeneous coordinates) into 3D in the z=0 plane?

I have a 3x3 transformation matrix for 2D homogeneous coordinates: a b c d e f g h i I'd like to pass this to OpenGL (using glMultMatrix) in a 2D application, but OpenGL takes 4x4 matrices for 3D homogeneous coordinates. I'd like all coordinates…
3
votes
1 answer

How do you properly implement a View Matrix?

I'm making a Minecraft-like game using the Rust Vulkano Vulkan API binding to render the game. I have a player rotating either about the Y-axis or X-axis, specifically implemented with a FPS view matrix. The output expected from the view matrix is…
entropy32
  • 169
  • 3
  • 11
3
votes
0 answers

Coordinate system transformation in 3D

I have a point cloud of a scene in which one object of interest is present along with some other points. I also know the coordinates of the eight corners of the 3D bounding box which happens to be a cuboid. Now I have a use case where I need to…
3
votes
3 answers

SceneKit – What is the lowest row of elements in SCNMatrix4 for?

In SCNMatrix4 struct, the last m44 element is used for Homogeneous Coordinates. I'd like to know what are m14, m24 and m34 elements in SCNMatrix4? And what exactly I can use these three elements for? init(m11: Float, m12: Float, m13: Float, m14:…
Andy Jazz
  • 49,178
  • 17
  • 136
  • 220
3
votes
2 answers

Estimate Euclidean transformation with python

I want to do something similar to what in image analysis would be a standard 'image registration' using features. I want to find the best transformation that transforms a set of 2D coordinates A in another one B. But I want to add an extra…
1
2 3 4 5 6