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?

 Akzeptierte Antwort

Matt J
Matt J am 20 Jan. 2016
Bearbeitet: Matt J am 20 Jan. 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 Kommentare

Does this transformation also include a change in angle?
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 am 21 Jan. 2016
Bearbeitet: Matt J am 22 Jan. 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?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Matt J
Matt J am 20 Jan. 2016

0 Stimmen

Why not use fitgeotrans, like you were advised here?

1 Kommentar

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

Melden Sie sich an, um zu kommentieren.

Kategorien

Gefragt:

am 19 Jan. 2016

Kommentiert:

am 29 Jan. 2016

Community Treasure Hunt

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

Start Hunting!

Translated by