0

Lately I have been looking into the geometry of image processing. What I am trying to accomplish is this :

Imagine there is two pictures of a scene. I want to convert second picture to the first picture. I want to revert perspectivity of the second picture taking the first one as reference.

However, my question is about spaces. I have learnt that perspective transformation is a projective transformation with the special case of the mapping planes being euclidean.

I wanted to ask if image plane is euclidean ? I would think it has homogeneous coordinates as when I perform a transformation with open cv I would use an x vector such as (x,y,1). I am really confused about definitin of euclidean and projective space.

Are coordinates homogeneous with both planes ? Which transformation should I use for rotating camera stabilization?

Even I think my question is confusing, but well, I am confused...

Thanks in advance.

Ozum Safa
  • 1,458
  • 2
  • 15
  • 27

1 Answers1

0

I have learnt that perspective transformation is a projective transformation with the special case of the mapping planes being euclidean.

Where did you learn that? OK, input and output may be Euclidean planes, but not the same: the line at infinity in one setup might end up as a finite line (e.g. at the horizon) in the other setup.

A projective transformation that stays in the same Euclidean plane is an affine transformation.

I wanted to ask if image plane is euclidean? I would think it has homogeneous coordinates as when I perform a transformation with open cv I would use an x vector such as (x,y,1).

Homogenous coordinates can be useful for affine transformations as well, as they allow writing such a transformation as a single matrix multiplication. But an affine transformation, as opposed to a general projective transformation, will never change the last component from zero to non-zero or vice versa.

I am really confused about definitin of euclidean and projective space.

In terms of spaces, the projective space is what you get when you add infinite elements (the line at infinity in case of a projective plane) to an affine space. But I believe you'd be more at home thinking about transformations than spaces. An affine transformation will always preserve parallel lines, while a projective transformation will not. So for perspectives, you need projective transformations.

Are coordinates homogeneous with both planes?

I'd suggest using homogenous coordinates, yes.

Which transformation should I use for rotating camera stabilization?

Four points and their images uniquely define a projective transformation. So once you've registered four points, you can compute and apply the transformation.

Tools like Hugin do a lot more elaborate work here, by compensating for various optical distortions, by registering more points to get a better approximation on all of these, and so on. Have alook.

MvG
  • 57,380
  • 22
  • 148
  • 276
  • Thanks for your answer. I have read that about perspective transformation in the book "Multiple View Geometry in Computer Vision. It is the first time I am working with homogeneous coordinates, and I think naturally I am having some hard time to accept it : ). I think what I should firstly grasp is the relationship between affine plane euclidean plane and projective plane. – Ozum Safa Oct 26 '12 at 10:41
  • I am not saying, I dont understand the definitions, but intuitively I am not even close to accepting the things I read. Before I have red your answer I have decided projective transformation is what I am looking for. I suppose it is the fact that it gives us the chance to scale based on the position ? – Ozum Safa Oct 26 '12 at 10:42
  • @OzumSafa: I'd differentiate things rather based on transformations than the underlying spaces. Euclidean transforms preserve lengths, so these are rigid motions. Similarity transforms include isotropic scaling and preserve angles. Affine transforms include shears and preserve parallels. Projective transformations preserve collinearity. Each class includes the one preceding it, so all can be found as special projective transformations, acting on a projective space. That's the reason I prefer lookin at the set of transformations and not the underlying space. – MvG Oct 26 '12 at 11:06