Contents

# Target Outcome

The overall goal of this specification is to provide coordinate systems for each registration marker sets on femur, tibia, and patella with the intention to allow transformation between joint testing and anatomical imaging coordinate systems. In this regard, the goals are

- Establish the relationship between bone the coordinate system of motion capture and joint testing (Optrotrak global coordinate system) and anatomical imaging coordinate system (MRI global coordinate system)

# Prerequisities

## Infrastructure

## Previous Protocols

## Requirements

**Python [Version 2.7]**(https://www.python.org)**NumPy**(https://www.numpy.org)**NumPy-stl 1.4.2 Folder**(https://pypi.python.org/pypi/numpy-stl)

# Procedures

The following scripts, which can be found in the repository at https://simtk.org/websvn/wsvn/openknee/utl/Registration/Registration_final, will allow for a relationship between the coordinate systems. The workflow of the registration and data re-sampling process is included here.

Note: Previously documented registration methods have been moved to the Discussion page.

#### Obtaining Coordinates of Registration Marker Centers

The registration markers are spherical objects. The boundaries of these spheres will be digitized from magnetic resonance imaging and during joint testing using a digitizing probe, see Previous Protocols above. More than 10 points are expected to be acquired for each registration marker for a given experimentation modality. For TibioFemoral Joint Experimentation, roughly 10 surface points will be acquired for each registration markers. For PatelloFemoral Joint Experimentation, the locations of the 12 divot points will be acquired (see Specifications/SpecimenPreparation). For Anatomical Imaging, surface coordinates will be acquired from the .stl model of each registration marker.

### convert_to_image_CS.py

#### Tibiofemoral Joint Configuration Files

- goal
- to find the location of the center of the registration markers (on the femur and tibia) with regards to the optotrak sensor coordinate system given the coordinates of points on the surface of the markers with respect to the global optotrak coordinate system
- requirements
python [version 2.7] (https://www.python.org) and numpy (https://www.numpy.org)

- input
- logic
- math
- the transformation matrix extracted from each position sensor coordinate set (x,y,z,r,p,w) is as followed:

Imagine the matrix containing points portraying the position of registration markers in the world coordinates as "A" and the transformation matrix we extracted as "T_A_B", and B is the coordinates in the bone sensor coordinates that we want

latex error! exitcode was 1 (signal 0), transscript follows: This is pdfTeX, Version 3.1415926-2.4-1.40.13 (TeX Live 2012/Debian) entering extended mode (./latex_7a0a664c4ab0e6fe5035207eb80133a051a5c94b_p.tex LaTeX2e <2011/06/27> Babel <v3.8m> and hyphenation patterns for english, dumylang, nohyphenation, lo aded. (/usr/share/texlive/texmf-dist/tex/latex/base/article.cls Document Class: article 2007/10/19 v1.4h Standard LaTeX document class (/usr/share/texlive/texmf-dist/tex/latex/base/size12.clo)) (/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty (/usr/share/texlive/texmf-dist/tex/latex/base/utf8.def (/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu) (/usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu) (/usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu))) No file latex_7a0a664c4ab0e6fe5035207eb80133a051a5c94b_p.aux. ! Double subscript. l.9 A=T_A_ B \times B\\ [1] (./latex_7a0a664c4ab0e6fe5035207eb80133a051a5c94b_p.aux) ) (see the transcript file for additional information) Output written on latex_7a0a664c4ab0e6fe5035207eb80133a051a5c94b_p.dvi (1 page, 388 bytes). Transcript written on latex_7a0a664c4ab0e6fe5035207eb80133a051a5c94b_p.log.

As a result we need the inverse of that transformation matrix to multiply by A

latex error! exitcode was 1 (signal 0), transscript follows: This is pdfTeX, Version 3.1415926-2.4-1.40.13 (TeX Live 2012/Debian) entering extended mode (./latex_9d388aab08b4ed3cd4f56d9991a99ab7bcda7373_p.tex LaTeX2e <2011/06/27> Babel <v3.8m> and hyphenation patterns for english, dumylang, nohyphenation, lo aded. (/usr/share/texlive/texmf-dist/tex/latex/base/article.cls Document Class: article 2007/10/19 v1.4h Standard LaTeX document class (/usr/share/texlive/texmf-dist/tex/latex/base/size12.clo)) (/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty (/usr/share/texlive/texmf-dist/tex/latex/base/utf8.def (/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.dfu) (/usr/share/texlive/texmf-dist/tex/latex/base/ot1enc.dfu) (/usr/share/texlive/texmf-dist/tex/latex/base/omsenc.dfu))) No file latex_9d388aab08b4ed3cd4f56d9991a99ab7bcda7373_p.aux. ! Double subscript. l.9 B=A \times T_A_ B^{-1}\\ [1] (./latex_9d388aab08b4ed3cd4f56d9991a99ab7bcda7373_p.aux) ) (see the transcript file for additional information) Output written on latex_9d388aab08b4ed3cd4f56d9991a99ab7bcda7373_p.dvi (1 page, 484 bytes). Transcript written on latex_9d388aab08b4ed3cd4f56d9991a99ab7bcda7373_p.log.

(Side Note: the transformation matrix is 4 by 4 for each set of x,y,z coordinates. As a result we change the 3 by 1 coordinate arrays into a 4 by 1 array by adding a 1 at the end. This will cancel out by the end and we can just take the first 3 resulting coordinates of the array since the 4th will still be a 1)

- output
- examples

#### Patellofemoral Joint Configuration Files

- goal
- to find the location of the center of the registration markers (on the patella) with regards to the optotrak sensor coordinate system given the coordinates of the divot points on the registration marker with respect to the global optotrak coordinate system
- requirements
python [version 2.7] (https://www.python.org) and numpy (https://www.numpy.org)

- input
- logic
- math
the math to convert the points from optotrak global coordinates to optotrak sensor coordinates is the same as for TibioFemoral

in addition, in order to find the location of the centers of three spheres given the 12 divot points, the dimensional relationship among the CAD points is used. This relationship is described at https://simtk.org/websvn/wsvn/openknee/utl/PatFem_Registration/CAD_PT_DIMENSIONS.csv

- output
- examples

## Transformation Matrices

-- aerdemir 2015-06-30 12:31:16 This session already has documentation to calculate transformation matrices between bone registration marker coordinate system and Optotrak coordinate system and bone registration marker coordinate system and image coordinate system. It will be good to expand this session for patellofemoral registration marker assembly. Particularly, by providing the necessary inputs for calculations. Also, we need to correct the information to emphasize that we are finding transformation matrices in reference to local (bone specific) Optotrak coordinate systems not global.

# References

Söderkvist I, Wedin PA. Determining the movements of the skeleton using well-configured markers. J Biomech. 1993 Dec;26(12):1473-7. PubMed