Need to generate tform matrix from triangle parameters.

If a user draws a triangle with parameters b, h and theta and wants to change an entire image via a transformation from a new triangle with user inputed parameters b', h', theta'. How can the transformation matrix be found?

 Respuesta aceptada

Matt J
Matt J el 20 de En. de 2016
Editada: Matt J el 20 de En. de 2016
The corners of each triangle are separated by vectors dy and dx. There is some 2x2 matrix A which transforms them from triangle 1 to triangle 2,
dy2=A*dy1
dx2=A*dx1
These are linear equations in the unknown A, which you can solve.

5 comentarios

Does this transformation also include a change in angle?
Matt J
Matt J el 20 de En. de 2016
yes, the angle between dy2,dx2 can be different from dy1,dx1, as long as both are significantly non-zero.
And can this matrix then be applied to the rest of the image?
Matt J
Matt J el 21 de En. de 2016
Editada: Matt J el 22 de En. de 2016
would it be possible to use your absor function for this vary problem?
Only if theta doesn't transform. Otherwise, the transformation is not a pure rotation.
Matt J I have since managed to solve for the matrix A how can then use this matrix to generate a matrix for an image?

Iniciar sesión para comentar.

Más respuestas (1)

Matt J
Matt J el 20 de En. de 2016
Why not use fitgeotrans, like you were advised here?

1 comentario

I don't have the version of matlabwith fitgeotrans. I need to find someway without using two images.

Iniciar sesión para comentar.

Categorías

Más información sobre Computational Geometry en Centro de ayuda y File Exchange.

Preguntada:

el 19 de En. de 2016

Comentada:

el 29 de En. de 2016

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by