I have dabbled with this before just to try out MATLAB's capabilities and am no expert in the area of linear transformations, so take my suggestion with a grain of salt as I am not sure about my "answer." But I think the following resource should help:
- On spatial transformations in MATLAB (keep in mind MATLAB transformation matrices look a little different than those you would find in literature because of the "rows and columns" way MATLAB sees images): http://www.mathworks.com/help/images/performing-general-2-d-spatial-transformations.html
- affine2d class which returns a tform when you give it the "desired txform" transformation matrix: http://www.mathworks.com/help/images/ref/affine2d-class.html
- A tutorial that shows translation and rotation are not commutative operations: http://www.cs.mtu.edu/~shene/COURSES/cs3621/NOTES/geometry/geo-tran.html
By "desired txform" matrix I am referring to: [a b 0; c d 0; e f 1]
I looked into the source code for imregtform and looked at the way it constructs the "desired txform" matrix before it passes it over to affine2d and returns you the tform. It appears to be constructing the "desired txform" matrix such that for rigid transformations, the first two rows of "desired txform" contain the rotation component [a b 0; c d 0] contain the rotation components of the rigid transformation and the last row [e f 1] contains the translational component.
So if my barnyard math is right, MATLAB returns a tform that represents a transformation in which rotation is applied first and then translation (keep this ordering in mind), so in "desired txform", a = cos(theta) where theta is the angle of rotation about the origin, and then you can find theta by using the inverse cosine function. e and f then represent the translational components.
Hopefully that helps. But take my suggestion with a grain of salt.