Relating two coordinate systems given some rigid-body transforms represented in both?

62 Views Asked by At

what I'm really after is image registration. However, I will formulate my problem in purely mathematical terms.

I have two disjoint sets of 3D points. The points are located on (or in) one solid body, so they can't move relative to each other.

The points in each set are localized in 3D by a different imaging device (one device per set), so their positions are known in two different coordinate systems, say S1 and S2. The mutual position of those systems are what I'm looking for.

Now the solid body moves, and the points are localized again. With enough points in either set, I am able to identify the rigid-body transform it underwent (rotation+translation), represented by two 4*4 homogeneous matrices, one for each coordinate system. Call them F in S1 and G in S2.

Now let the transform from F to G be M (all capital letters are 4*4 matrices). For any point x in R^3 the following must hold:

MFX = GMX

and hence

MF = GM.

F and G are easily derived from observations. How do I determine M?

The problem can be more general if more than one motion is considered, so I will have a number of {F,G} pairs.

Thanks in advance for any suggestions.