NIST Technical Note 1911

Guidelines for the Registration of Two 

Coordinate Frames

Geraldine S. Cheok

Marek Franaszek 

This publication is available free of charge from:

http://dx.doi.org/10.6028/NIST.TN.1911
NIST Technical Note 1911

Guidelines for the Registration of Two 

Coordinate Frames

Geraldine S. Cheok 

Marek Franaszek

Engineering Laboratory

This publication is available free of charge from:

http://dx.doi.org/10.6028/NIST.TN.1911 

March 2016 

U.S. Department of Commerce 

Penny Pritzker, Secretary

National Institute of Standards and Technology 

Willie May, Under Secretary of Commerce for Standards and Technology and Director
Certain commercial entities, equipment, or materials may be identified in this

document in order to describe an experimental procedure or concept adequately.

Such identification is not intended to imply recommendation or endorsement by the

National Institute of Standards and Technology, nor is it intended to imply that the

entities, materials, or equipment are necessarily the best available for the purpose. 

National Institute of Standards and Technology Technical Note 1911 

Natl. Inst. Stand. Technol. Tech. Note 1911, 10 pages (March 2016) 

CODEN: NTNOEF

This publication is available free of charge from: 

http://dx.doi.org/10.6028/NIST.TN.1911
1 OVERVIEW

The purpose of registration is to obtain the transformation matrix between two coordinate 

frames. Typically, sensors record positional measurements in their own local coordinate frame. 

When positional data are acquired by two instruments or two datasets are acquired with the same 

instrument placed in two different locations, some of the points may be measured only in one 

frame but have to be accessed in the other frame. In order to register one frame to the other, a set 

of common points measured in both frames must be obtained. The quality of registration will 

usually depend on the location and noise of the points used for registration. 

The procedures in this paper provide guidance on selecting points for registration and for 

calculating four metrics for determining the quality of registration. The numerical procedure for 

calculating the transformation matrix is not included in this paper as it is readily available. This

paper is based on experiments and findings reported in Ref. [1].

2 DEFINITIONS AND NOTATION 

1. Working frame – the coordinate frame of instrument A, which is the coordinate frame to

be transformed.

2. Reference frame - the coordinate frame of instrument B, which is the frame into which

the working frame is transformed.

NOTE: Instruments A and B may be the same instrument but placed in two different

locations.

3. Common points – a set of M points, in a quasi-regular grid or random pattern, that are

measured by both instruments A and B, see Figure 1.

4. Fiducials or fiducial points – a subset of N common points (N ≤ M) used to register the

working frame to the reference frame, see Figure 1a.

5. Test points – a subset of (M – N) common points that are not used for registration and are

used to evaluate the quality of registration.

6. Target points – a set of points, measured by instrument A but not by instrument B. These

are points of interest to the user to which registration is applied, see Figure 1b.

1
7. Index F – a scalar value used to determine the optimum set of N fiducials for registration

based on placement of fiducials and the noise of the fiducials.

NOTES:

a. A lower value of F indicates better registration.

b. This index can be calculated quickly for millions of combinations of fiducials since no

registration is performed; only basic arithmetic operations are involved.

8. Ω, τ – 3 x 3 rotation matrix, 1 x 3 translation vector from the registration transformation.

9. prrr_k – k

th test point measured in the reference frame.

10. pt ttt_k – k

th test point, pk, in the working frame transformed into the reference frame.

pt ttt_k = Ω pk + τ .

2
Figure 1. The entire cubic region represents the work volume. In (a) and (b), the white dots represent 

common points in a regular grid pattern for which the noise is characterized. The fiducials for 

registration are selected from this set of points. A potential set of 4 fiducials is represented by red dots in 

(a). In (b), the black dots on the green object represent the target points. Target points are points of 

interest to the user; as shown, these points could be points where the robot has to insert a pin into a hole 

and thus, it has to know the location of the hole within some tolerance.

a.

b.

Target points

Common points

3
3 NOISE CHARACTERIZATION 

It is recommended that the instrument noise be characterized throughout the work volume for 

instruments A and B. If the noise characterization is unknown, the selection of fiducials may not 

yield the best possible registration. 

3.1 PROCEDURE

1. Select locations of M common points throughout the work volume. M depends on the

variability of the noise. If a large variation is observed between adjacent points, then a larger

M may be needed. If little variation is observed between adjacent points, then a smaller M

may suffice.

NOTE:

In Section 5.1, where index F is calculated, keep in mind that the number, MN, of all

combinations of N fiducials will depend on M and N as follows:

MN = M!

N! (M−N)! Eq. 1 

For example, for M = 125 and N = 4, MN = 9,691,375. 

2. Obtain repeated measurements at each common point with instruments A and B. It is

recommended that at least 10 repeat measurements be obtained; more if feasible.

3. From the repeat measurements, calculate the mean position of the m

th common point in the

working and reference frames, pm and pref_m for m = 1,..., M.

4. From the repeat measurements, calculate the variances [var(x), var(y), var(z)] of the

coordinates for pm and pref_m for m = 1,..., M.. The variances are either the:

a. the diagonal elements of the covariance matrix or

b. the square of the standard deviation of the coordinate

5. Calculate the magnitude of the noise, σ0, for each common point pm and pref_m using the

following equation:

σ0(x, y, z) = �vvv(x) + vvv(y) + vvv(z) Eq. 2 

4
4 BIAS

The presence of bias in the measurements will degrade the registration quality. Good practice 

dictates that instruments A and B be calibrated prior to use as this will eliminate most of the 

instrument bias. However, this may not always be possible or bias may be introduced into the 

measurements from other sources. Therefore, it is recommended that the existence of bias in the 

measurements be determined. 

One way to determine if a bias exists is by comparing the relative distances between all pairs of 

common points, i and j, as calculated from measurements made by instrument A, dij, against 

those calculated from measurements made by the instrument B, Dij. Even if only one instrument 

is used but in two different locations, dij may still be different from Dij because bias may be a 

function of the distance of a point from the instrument.

4.1 PROCEDURE

1. For all possible pairs of common points, calculate dij and Dij:

dii = ��xA_i − xA_ �

2

+ �yA_i − yA_ �

2

+ �zA_i − zA_ �

2

 , Eq. 3a 

Dii = ��xB_i − xB_ �

2

+ �yB_i − yB_ �

2

+ �zB_i − zB_ �

2

 , Eq. 3b 

where 

�xA_i, yA_i, zA_i�, �xA_ , yA_ , zA_ � are coordinates of common points pi and pj, as measured 

by instrument A, 1 ≤ i < j and j = 2, ... , M. See Section 3.1, Step 3. 

�xB_i, yB_i, zB_i�, �xB_ , yB_ , zB_ � are coordinates of common points pref_i and pref_j, as 

measured by the instrument B for 1 ≤ i < j and j = 2, ... , M. See Section 3.1, Step 3.

2. Calculate the error of the distance:

errij = dij – Dij Eq. 4 

3. Calculate the RMS of errij

R R = � 2

M(M−1)

∑ ∑ e ii

2M

=2

−1

i=1 . Eq. 5 

4. If RMSerr ≈ 0 then there is little or no bias; otherwise there is a bias.

5
5 SELECTION OF FIDUCIALS FOR REGISTRATION

Find the fiducials for optimal registration using index F. It is recommended that a minimum of 

N = 4 fiducials be used for registration. Once the fiducials are selected, perform the registration. 

NOTE: The combination of fiducials that minimizes index F also yields small Q (see Appendix) 

and relatively small RMST (see Section 6).

5.1 PROCEDURE

1. Calculate the index F for all possible MN combinations.

F = ∑ ∑ �

σ0(Zn)+σ0(Zm)

d(Zn, Zm) + σ0(Yn)+σ0(Ym)d(Yn, Ym) � N

=2

−1

m=1 , Eq. 6 

where

Zn and Yn (n = 1, ... , N) are two sets of corresponding fiducials in the working and 

reference frame, respectively, where Zn and Yn are mean points per Section 3.1, Step 3 

d(Z , Zm), d(Y , Ym) are the distances between Zn and Zm and Yn and Ym, respectively

σ0(Z ) and σ0(Y ) are magnitude of noise (as defined in Eq. 2) at fiducial points Zn and 

Yn

2. Select the set of fiducials that corresponds to the minimum F.

3. It was found in [1] that if all possible combinations MN were investigated in Step 1of this

section, then the addition of more fiducials may not be required as they only marginally

improve the registration.

However, if an additional fiducial is desired, then for N+1 fiducials:

a. Start with the N fiducials selected in Step 2

b. Add an additional fiducial from the remaining M–N fiducials

c. Calculate index F for all possible M–N combinations

d. Select the set of fiducials that correspond to the minimum F

e. Repeat Step 3a-d if an additional fiducial is desired

4. Once the fiducials are selected, perform the registration and obtain rotation matrix Ω and the

translation vector τ.

6
6 REGISTRATION QUALITY

Since the target points are points of interest to the user, a useful metric to quantify registration 

performance would be the root mean square (RMS) of the target points. However, since target 

points are not measured by instrument B, this calculation is not possible. 

We propose a procedure to estimate the RMS of target points using test points; this metric is

RMST. This procedure involves calculating the distances, dk, between transformed test points, 

pt ttt_k, and the corresponding test points in the reference frame, prrr_k, for k = 1 to K where K

is the number of target points that are of interest. For reliable estimates of the RMS of the target 

points using test points, we recommend the selection of test points in the working frame that are 

closest to the target points in the working frame as measured by instrument A. 

6.1 RMST

6.1.1 Procedure

1. In the working frame, select a set of K test points that are closest to the target points.

2. Calculate the distances between corresponding selected test points

dk = �pt ttt_k − prrr_k� Eq. 7 

=��xt ttt_k − xrrr_k�

2

+ �yt ttt_k − yrrr_k�

2

+ �zt ttt_k − zrrr_k�

2

3. Calculate RMST :

R RT = �∑ dk

2K

k=1

K

Eq. 8 

REFERENCES

1. Franaszek, Marek and Cheok, Geraldine S., Optimization of Registration Performance Metrics, to be

published as NISTIR 8111, Gaithersburg, MD, February 2016.

7
APPENDIX: Performance Metrics

Besides RMST, three other metrics may be used to evaluate the registration performance: Q, W, 

and RMSF. Q and W are calculated using test points1 and RMSF is calculated using fiducials. 

The choice of metric depends on the application as the set of fiducials that minimizes one of the 

metric may not necessarily minimize the other metrics. The following sections describe the 

metrics and list the procedures to calculate them.

The computations of the performance metrics involve determinations of covariances and 

Jacobian matrices, and it is assumed that the reader is able to determine the required information.

A1 INDEX W

A1.1 Description

• W is a scalar value that characterizes the work volume.

• W is the median value of all wk (Eq. 9) where wk are dimensionless indices to check

the distance between transformed test points and the corresponding test points in the

reference frame.

• wk < 1 indicates that the distance dk between transformed test point pt ttt_k and its

corresponding test point prrr_k is within one standard deviation of dk.

• A large W (W > 2) indicates bad registration and the likely presence of bias.

A1.2 Procedure

1. For each test point, calculate the distance, dk, between the transformed test point, pt ttt_k,

and the corresponding test point in the reference frame, prrr_k using Eq. 7.

2. Calculate wk

wk = dk

�v (dk)

 , Eq. 9 

where

vvv(dk) = JkCkJk

T Eq. 10 

Ckis a 6 x 6 covariance matrix = �

c�pt ttt_k� 0

0 c�prrr_k�

� Eq. 11 

c�pt ttt_k� is the covariance matrix of the transformed k

th test point 

1 Similar to RMST, Q and W would ideally be calculated using target points. However, for the same reason that 

RMST could not be calculated for target points, test points are used to calculate Q and W. 

8
= Jt �

CΘ 0

0 c�prrr_k�

� Jt

T Eq. 12 

c�prrr_k� is the covariance matrix of the k

th test point measured in the reference frame

CΘ is the 6 x 6 covariance matrix of Θ = �θ, φ, ρ, τx, τy, τz� where the three angles 

{θ, φ, ρ} parameterize the rotation matrix Ω and �τx, τy, τz� are the components of τ

Jk �pt ttt_k(x�, y�, z�), prrr_k(x, y, z)� = 1

dk

[x� − x, y� − y, z� − z, x − x�, y − y�, z − z�]

Jt is the Jacobian matrix of the transformation from the working frame to the reference 

frame. See [1] for more detailed information. 

3. W is the median of all wk

A2 Index Q 

A2.1 Description

• Q is a scalar value that characterizes the work volume.

• Q gives an indication of how much the uncertainties of the transformed test points

increase due to the registration process relative to the uncertainties of the

corresponding test points measured in the working frame.

• Q is the median of all qk where qk is the ratio of the radii (see Eq. 15) of two spheres

with equivalent volumes V�pt ttt_k� and V(pk), see Eq. (13, 14).

• Q ≥ 1; a smaller Q indicates better registration.

A2.2 Procedure

1. Calculate the covariance of the transformed test point, c�pt ttt_k�, using Eq. 12 and then

calculate its eigenvalues �λt ttt_1, λt ttt_2, λt ttt_3�.

2. Calculate the volume of the uncertainty ellipsoid of the transformed point

V�pt ttt_k� = 4

3

π λt ttt_1λt ttt_2λt ttt_3 Eq. 13 

3. Calculate the covariance of the untransformed test point c(pk), in the working frame, and

then calculate its eigenvalues {λ1, λ2, λ3}

9
4. Calculate the volume of the uncertainty ellipsoid of the test point in the working frame

V(pk) = 4

3

π λ1λ2λ3 Eq. 14 

5. Calculate qk

qk = �V�pt ttt_k� V(pk ⁄ ) 3 Eq. 15 

6. Q is the median of all qk

A3 RMSF

A3.1 Description

• The RMS value of the distances between the transformed fiducial points and the

corresponding fiducial points in the reference frame.

• A smaller RMSF indicates better registration.

• Advantage: metric is readily available.

• Disadvantage: there is no correlation between RMST and RMSF.

A3.2 Procedure

1. Calculate the distances between corresponding fiducial points

d = ��xt ttt_k − xrrr_k�

2

+ �yt ttt_k − yrrr_k�

2

+ �zt ttt_k − zrrr_k�

2 Eq. 16 

2. Calculate RMSF

R RF = �∑ dn

2Nn=1

N Eq. 17 

NOTE: 

For any set of N fiducials, RMSF > minRMSF where 

mmm F = � 1

2N(N−1)

∑ ∑ e ii

2N

=2

−1

i=1 Eq. 18 

and errij is the error calculated in Eq. 4 for (i,j) pairs of fiducials (see [1] for derivation of 

Eq. 18). 

10