Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some...

16
Stress Tensor Field Visualization For Implant Planning in Orthopaedics Ella Maria Kadas Berlin, January 14, 2010

Transcript of Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some...

Page 1: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

Stress Tensor Field Visualization For ImplantPlanning in Orthopaedics

Ella Maria Kadas

Berlin, January 14, 2010

Page 2: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

Contents

1 Introduction 11.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Virtual implant planning tool . . . . . . . . . . . . . . . . . . . . 21.3 Contribution of current work . . . . . . . . . . . . . . . . . . . . 2

2 Stress Tensor Fields 32.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2 Eigenvalue decomposition . . . . . . . . . . . . . . . . . . . . . 62.3 Stress in the real bone structure . . . . . . . . . . . . . . . . . . . 62.4 Stress tensor field computation in the application . . . . . . . . . 7

3 Visualizing stress tensor fields 83.1 Volume rendering of principle stress magnitude . . . . . . . . . . 83.2 Directional information- line tracing . . . . . . . . . . . . . . . . 8

3.2.1 Hyperstreamlines . . . . . . . . . . . . . . . . . . . . . . 93.2.2 Line tracing GPU computation . . . . . . . . . . . . . . . 103.2.3 Rendering . . . . . . . . . . . . . . . . . . . . . . . . . . 11

3.3 Simulated stress vs physiological stress . . . . . . . . . . . . . . 113.4 Focus+context . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.5 Different visualization . . . . . . . . . . . . . . . . . . . . . . . 13

4 Results 14

5 Conclusion 15

1 Introduction

The paper presents methods used to create an application for the advanced three

dimensional visualization of time varying stress tensor fields. These tensor fields

provide and intuitive analysis for determining the optimal position and design of

hip joint implant in a preoperative phase. The application’s aim is to show the

physiological stress distribution in the patient’s bone under load and the stress

distribution under the same load after the surgery replacement.

1.1 Motivation

The bone is a living tissue, which in a healthy person will remodel in response

to the load it is applied on. Therefore, if the loading on a bone is decreased, the

bone will become less dense and weaker because there is no stimulus for continued

remodeling that requires to maintain bone mass. The bone’s stress patterns after an

1

Page 3: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

introducing an implant,should be close to the physiological stress state, in order to

avoid stress shielding with the consecutive effects of osteopenia, fracture and other

possible damaging effects. Stress shielding, [Wik], refers to the bone’s density

reduction as a result of removal of normal stress from the bone by an implant. To

find the optimal design and position of the implant a comparative analysis of the

physiological stress and the one with implant. Therefore, the changes of normal and

shear stresses with respect to the principal stress direction of the physiological state

are visualized. The analysis of the position of the replacement using the proposed

application, provides a better preview of the bone stress patterns.

1.2 Virtual implant planning tool

The application is a virtual implant planning tool, based on an implicit multigrid

finite element approach. It simulates the stress in a human femur under load without

and with an inserted implant. Several techniques were implemented to provide a

better interactive visualization of the stress distribution.

• Volume rendering: Show the stress magnitude

• Transparency, Shading and antialiasing: Indicate stress directions

• Rendering a correct visibility order of stress direction lines: Improve depth

perception

• Running the techniques on GPU: Achieve high frame rates for time-varying

stress tensor fields

• Focus+context technique: View relevant regions and keep the relation between

that region and the context

• Parameter setting by user (transparency, color): Get a better view of the stress

tensor field

1.3 Contribution of current work

For medical purpose, the visualization methods should provide an interactive di-

rectional information in the simulated stress tensor fields. So far [DGBW09], in

clinical practice for hip joint replacement, 2D X-rays are being used, which are

very limited, due to their nature. For this reason several 3D systems have been

developed, which using CT data of the patient, provide a better visualisation, and a

2

Page 4: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

computer assisted navigation. Some more developed approaches make it possible to

visualize scalar stress tensor norms on the surface, or the rendered scalar fields as in

Figure 1. Unfortunately all these approaches do not provide directional information

Figure 1: 3D volume rendering of scalar stress norm. [DGBW09]

of these stress tensor fields and also do not allow a comparative visualization of the

two stress distribution: the one of the bone in the physiological state and the one

with the implant. The technique presented in this paper is supposed to be the first

computational steering environment which should overcome these disadvantages,

as shown in Figure 2

2 Stress Tensor Fields

2.1 Definition

An elastic body under an applied load deforms into a new shape. As presented

in [Wun99] a mathematical description for the displacement the body undergoes

is determined by the following observations. The surface force at a point of the

surface is described by a stress vector. Consider a plane S with normal n at a point

P of the elastic body as shown in Figure 3. Let ∆F be the force acting on a small

3

Page 5: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

Figure 2: Visualization of principle stress using the application proposed. [DGBW09]

area ∆A containing P . The stress vector tn at P is defined as in Equation (1)

tn = lim∆A→0

∆F

∆A. (1)

The stress vector acting on any plane with normal n through P can be expressed as

Figure 3: Computation of stress vector. [Wun99]

tn = σ ·n where the linear operator σ defines the stress tensor in P . To interpret the

components of the stress tensor consider an infinitesimal axis aligned cube. Since

each point in the body is under static equilibrium, only nine stress components from

three planes are needed to describe the stress state at a point P . The stress acting on

a material is decomposed in three mutually orthogonal components as in Figure 4.

One component is normal to the surface and represents the direct stress. The other

4

Page 6: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

two components are tangential to the surface and represent shear stresses.

Figure 4: Components of the stress tensor. [Wun99]

These nine components can be organized in a matrix, the stress tensor:σxx σxy σxz

σyx σyy σyz

σzx σzy σzz

The shear stresses across the diagonal are identical ( i.e. σxy = σyx, σyz = σzy

and σzx = σxz) as a result of the static equilibrium mentioned above [Wun99].

The subscript notation used for the nine components have the following meaning:

σxy, x direction of the surface normal upon which the stress acts, y direction of the

stress component ( stress on the x plane along y direction).

Direct stresses tend to change the volume of the material, while shear stresses

tend to deform the material without changing the volume. The normal stresses are

called principal stresses [DGBW09] and mathematically, they are the eigenvectors

of the stress tensor, see Section 2.2 for eigen decomposition. Visualizing these

principal stress direction play an important role in the analysis of the implant

position see Section 2.3. The eigenvalues represent the principal stress magnitudes

and are independent of the coordinate system in which the tensor is given. Using

the sign of the principal magnitude the stresses can be classified in tension (positive

sign) and compression (negative sign).

5

Page 7: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

2.2 Eigenvalue decomposition

The stress tensor is a symmetric tensor. Therefore, it is completely described by

its eigenvalues and eigenvectors [SP04]. After eigen decomposition, tensor T has

unit-length orthogonal eigenvectors e1, e2, e3 and three λ1, λ2, λ3 corresponding

real eigenvalues which satisfy the Equation (2):

T ei = λiei, i = 1, 2, 3

λ1 ≥ λ2 ≥ λ3 (2)

The original tensor can be reformulated by:

T =(e1 e2 e3

)λ1 0 0

0 λ2 0

0 0 λ3

e

T1

eT2eT3

Thus, visualization of a tensor field is fully equivalent to the simultaneous

visualization of these three eigenvector fields, with corresponding eigenvalues

representing the magnitudes. The advantage of this reformulation is given by the

interpretation of the eigenvectors and eigenvalues. The eigenvectors describe the

direction of extremal variations of the quantity that is contained in the tensor, while

the eigenvalues give the variation values. The eigenvectors are labeled as major,

medium and minor, according to the relative magnitudes of their eigenvalues. It

should be noted that eigenvectors are vectors with sign indeterminacy which asks

for additional care in the visualization process.

2.3 Stress in the real bone structure

A human femur is made of two types of bone tissue: a compact one cortical bone on

the exterior and a spongious one trabecular bone occupying the interior. The bone

suffers several remodelling during time, depending on the load situation, in order

to restore an equilibrium. As a consequence [DGBW09] of this natural adaptation

process , the trabeculae of the spongy bone are aligned along the principal stress

directions see Figure 5. Therefore, visualizing the principal stresses gives the

surgeon an intuitive way to see the stress distribution resulting from a simulated

implant surgery.

6

Page 8: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

Figure 5: Left:A human femur with cortical and trabecular structures. Right: 2D sketch ofthe principla stress directions in a human femur, [DGBW09]

2.4 Stress tensor field computation in the application

The 3D planning system described in , [DGBW08] operates on a voxel model of the

bone obtained from the CT scan in a preprocessing phase. From the voxel model

of the initial CT data the FE (finite element) model is constructed by creating a

hexahedral finite element for each voxel containing at least one CT voxel. Then fast

voxelization technique on the GPU is employed to determine all CT voxels covered

by the implant. For all these voxels the material of the implant is assigned. FE

analysis considers these voxels and simulates their interaction with the surrounding

bone voxel under load. From this finite element discretization each stress tensor is

computed as following [DGBW09]. First the deformation field u is computed using

the Equation (3):

K · u = f (3)

u describes the deformation of an elastic object by mapping the reference

configuration to the deformed one x+u(x) and consists of the displacement vectors

of all vertices, f represents the force vectors applied to these vertices and K is the

stiffness matrix. Once the field u is computed using Equation (3) the internal stress

in the bone is computed by [DGBW09]:

S =1

V

∫ΩDBdx (4)

where V =∫

Ω 1dx is the volume of the finite element Ω, D is the material law,

7

Page 9: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

and B is the element strain matrix. By applying the displacement vector of the

element to the matrix S an average stress tensor S is obtained over the domain of

the element. This stress tensor is assumed to be in the center of the elements. Using

componentwise trilinear interpolation a continuous tensor field is computed.

3 Visualizing stress tensor fields

3.1 Volume rendering of principle stress magnitude

At each point a color mapping is used to assign color to the stress tensor, [DGBW09].

After performing the eigen decomposition, for each principle stress magnitude a

color contribution is determined by the following convention. Each λi gets by the

mapping RGBi, αi, where see (5):

RGBi =

violet if λi ≥ 0

green if λi < 0, αi = saturate(c · |λi|), (5)

• αi is the opacity and is proportional to the absolute stress magnitude

• c is a user specified scaling factor

• violet represents tension

• green represents compression

Using this mapping regions with low stresses are almost transparent, so regions with

high stress can be yielded out. The final color for a point is then the accumulation

of the three color contribution.

RGB =

∑3i=1 αi · RGB i∑3

i=1 αi

, α = saturate

(3∑

i=1

αi

)(6)

3.2 Directional information- line tracing

In order to view directional information, [DGBW09], hyperstreamlines are traced,

see Section 3.2.1., along the three eingenvector fields with six traces originating from

each seed-point, two for each principal stress direction and its opposite direction.

The seed points are chosen on a regular Cartesian grid restricted by the bone surface.

The algorithm used for eigen decomposition is the one proposed by Hasan, which is

suitable for GPU implementation, and is computed on the fly in this application.

8

Page 10: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

Because degenerate points may occur in tensor fields [SP04], where at least two

eingevalue are equal, a special attention needs to be taken in this case. Degenerate

cases occur where the discriminant of the tensor equals to zero. The integral lines

of eigenvectors will cross each other where degeneracy occurs. Three types of

degenerate points can be expressed as (7):

λ1 = λ2 > λ3

λ1 > λ2 = λ3

λ1 = λ2 = λ3

(7)

It was shown [ZPP05] that degenerate features in such data sets form stable topo-

logical lines rather than points as previously thought. Secondly, these features can

be extracted identifying the individual points on these lines and connecting them.

Techniques, like an analytical form of obtaining tangents at the degenerate points

from tensor discriminant, led to fast and stable solutions.

3.2.1 Hyperstreamlines

The concept of hyperstreamlines [SP04] is generalized as the propagations of

streamlines along one of the eigenvector fields while the stretching of cross section

encodes the other two orthogonal eigenvector fields. The trajectory of a hyper-

streamline is an integral curve x(s) satisfying (8):

dx

ds= v(x) (8)

V is one of the eigenvector fields of the tensor field. The other two eigenvectors

and the corresponding eigenvalues define the axes and length of the ellipsoidal cross

section of the hyperstreamline. The eigenvalue corresponding to the eigenvector

defining the trajectory is colour mapped onto the surface of the hyperstreamline.

Hyperstreamlines are called major, medium or minor according to the eigenvector

field followed. All the independent values in symmetric tensor fields can be fully

represented in this way. Just like streamlines, many hyperstreamlines become a

visual clutter that seriously hurt the visualization quality see Figure 6. Thus, in most

practices, only very limited number of hyperstreamlines are presented as a direct

result. Therefore an important aspect in the case of line tracing is the choice of the

seed points. Several approaches have been developed to choose seed points The

9

Page 11: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

Figure 6: Left:15 Hyperstreamlines.Right:400 Hyperstreamlines, [SP04]

goal is to automate the process of generating seeding patterns to identify important

hyperstreamline features. One method of finding seed points [SP04] is based on

anisotropy measurements computed from the eigenvalues to optimize the seeding

positions and density of hyperstreamlines.

In the application [DGBW09], to accurately integrate the lines of principal

stress, a fourth-order Runge-Kutta scheme with fixed step size was applied. During

tracing, the eigenvector-decomposition is computed on-the-fly for each sample

point.

3.2.2 Line tracing GPU computation

First a number of vertices per line and a number of step size are fixed, [DGBW09].

Then the seed points are computed on the CPU and uploaded into a buffer on the

GPU. The lines are then successively traced on the GPU from these seed points

using a multipass ping-pong technique ( these perform one trace step simultaneously

for each line). For each vertex the position, the tangential direction of the stress

line (the eigenvector), the stress magnitude (the eigenvalue) and a number encoding

the eigenvector field ( major/medium/minor) are stored. The vertices are stored in

two texture sets which are alternatively used as input and output. In pass 0 the seed

point for each line is fetched from the buffer, then at each of the 1, N − 1 passes

each lines previous vertex i− 1 is fetched from the texture set (i− 1) mod 2 and

the vertex i is computed using fourth-order Rounge Kutta integration.

10

Page 12: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

3.2.3 Rendering

The application uses volume rendering to simultaneously visualize the three stress

magnitudes at each point, and transparent line rendering to visualize selected stress

directions and stress magnitudes along these directions. The lines are attenuated

with increasing depth.

The correct visibility order is obtained using a stencil-routed k-buffer with four

rendering passes (32 fragments per pixel). The k-buffer consists of a multisampled

texture accompanied by a stencil buffer. First all opaque scene geometry is rendered

into the frame buffer, with depth testing enabled. Then, all transparent geometry

is rendered into a screen aligned k-buffer, with depth testing aswell as front-back

face culling being disabled. (all fragments are captured). The transparent geometry

consists of the bone and the implant surface mesh, and the transparent stress lines.

For the bone and implant fragment depth and normal in camera space, and an object

ID used to assign material colors, are stored. For the lines depth in camera space

and RGBA color of the fragment are stored. Then shaded and antialiased lines are

rendered from the vertices stored in the two textures by putting them in the vertex

shader. The lines are rendered with a specifying width and transparency-based

antialiasing is obtained by using a box filter kernel. Then a full screen render pass

is performed to get the volume rendering and the final image. For each pixel, in

the fragment shader first the transparent fragments corresponding to that pixel are

fetched and sorted according to ascending depth. At each sample point, two texture

fetches are performed to obtain the componentwise interpolated stress tensor, and

its eigenvalues are computed to derive the sample’s color. This color is accumulated

along the ray with the transparent fragments via front-to-back blending. Because

the volume and the lines can appeare partly also outside the bone, volume and line

rendering are clipped at the bone surface. This is implemented by maintaining a

flag during ray-casting.

3.3 Simulated stress vs physiological stress

The goal of an optimal implant is to keep the stress distribution after the insertion of

the implant close to the physiological stress distribution.Therefore, a visualisation

that provides a comparison between the two stress distribution is needed. A model of

a real bone is used to see the trabeculae structure as a reference frame ( the trabeculae

structures correspond to the principle stress directions in the physiological stress see

Section.), [DGBW09]. The stress tensor at each point is decomposed with respect

11

Page 13: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

to the local reference frame ei, i = 1− 3 (the trabecular directions) to to obtain a

stress vector for each direction. This vector is further decomposed into the normal

stress component with the magnitude λi along the direction ei, and the orthogonal

shear stress component with magnitude τi see Figure 7 by Equation (9):

λi = eTi S ei, i ∈ 1, 2, 3

τi = ‖S ei − λiei‖2, i ∈ 1, 2, 3(9)

Figure 7: Decomposition of stress tensor in 2D with respect to the referenceframe, [DGBW09]

The visualization maps the differences of the absolute normal/shear stress

magnitudes to colors of the respective principal stress lines in the physiological

stress distribution. Colors red and yellow, are used to visualize the increase and

decrease of the stress magnitudes, respectively. Only those lines are visible, which

reflect a significant change in the load transmission.

3.4 Focus+context

In order to see regions of interest, the application uses a sphere-shape focus region,

that shows the same structure at different resolution. In the region where the focus

is applied, the density of the stress lines is decreased and the thickness is increased.

To achieve a fine detail of the stress directions, a high seeding density of the stress

lines is needed. To increase the seeding density, the spacing of the Cartesian grid is

increased. Therefore, additional seed points are inserted in the middle between the

existing ones. To preserve a continuous visualisation, the additional seed points are

placed in a sphere region located at the focus region center, and having the radius

equal to the sum of the radius of the focus region plus the trace length. To optimally

reveal the details in the focus region and avoid a flat visualisation the trace line are

12

Page 14: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

made thicker and more distinguishable, and the bone surface’s opacity is increased

in a focused region see Figure 8.

Figure 8: Bildunterschrift. Left:only stress lines.Middle left: stress line with bone’s opacityincreased.Middle right:viewer and ticker lines.Right:Focus+context, [DGBW09]

3.5 Different visualization

• Tension view: Change of normal stresses that are classified as tension in the

physiological state.

• Compression view: Change of normal stresses that are classified as compres-

sion in the physiological state.

• Normal view: Change of normal stresses (tension and compression).

• Shear view: Change of shear stresses.

as in Figure 9

Figure 9: Left:change of normal stresses, tension only.Middle left: change of normalstresses, compression only.change of normal stresses, tension and compression.Right:changeof shear stresses. [DGBW09]

13

Page 15: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

4 Results

The tool has been presented to five experienced orthopaedic surgeons (assistant

or associate professors) at the Klinikum Rechts der Isar, Technische Universit’at

Munchen. Specifically, the visualizations of the stress distribution in two patient-

specific data sets without and with three different implants, each inserted at two

different positions were shown. All surgeons considered the visualization methods

relevant in practice, especially because an intuitive perception of the different kinds

of stresses, i.e., tension and compression, as well as their main directional structure

in combination with the stress magnitudes. All of them stated that the comparative

visualization of the stress distributions provides an intuitive and clearly visible

rating of different implants, and that the use of such a support tool for preoperative

implant selection can significantly reduce the risk of stress shielding. The tool can

be used in the preoperative planning phase for patients with anatomical anomalies,

or in the context of revision interventions. Also comparative stress visualizations for

two implant types and positions were analysed. The examples used with this tool

demonstrate that the visualization techniques help the surgeon to understand and

evaluate the complex mechanical situation arising in hip joint replacement surgery.

The focus+context technique was considered to be an interesting feature of

the system. The majority of the surgeons requested that the focus region should

be automatically placed at a medical point of interest. Two surgeons were critical

concerning the current realization of the tool, because it does not yet support

a default mechanism to automatically place the implant into a physiologically

meaningful initial position. It was also seen problematic, whether the tool can really

be used to precisely analyze the most optimal position of a selected implant.The

results can be seen in Figure 10.

Figure 10: Left:Principal stress direction and magnitudes in the physiological state (violet= tension, green = compression).Middle left: Principal stress direction after a simulatedimplant surgery.Middle right:Change of normal stresses with respect to principal stressdirections of the physiological state, tension and compression (red = increase, yellow =decrease).Right:Change of shear stresses. [DGBW09]

14

Page 16: Stress Tensor Field Visualization For Implant Planning in … · computer assisted navigation. Some more developed approaches make it possible to visualize scalar stress tensor norms

5 Conclusion

The methods presented in this paper allow for interactive load simulation using a FE

model and simulate bone and implant loads on a desktop PC in quasi-real-time. The

central aspect of this computation steering approach is the posibility of obtaining

immediate feedback of the induced loads while the surgeon positions the implant in

the simulated environment.

Bibliography

References

[DGBW08] Christian Dick, Joachim Georgii, Rainer Burgkart, and Rudiger West-ermann. Computational steering for patient-specific implant planningin orthopedics. In Proceedings of Visual Computing for Biomedicine2008, pages 83–92, 2008.

[DGBW09] Christian Dick, Joachim Georgii, Rainer Burgkart, and Rudiger West-ermann. Stress tensor field visualization for implant planning in ortho-pedics. IEEE Transactions on Visualization and Computer Graphics(Proceedings of IEEE Visualization 2009), 15(6):1399–1406, 2009.

[SP04] Han-Wei Shen and Alex Pang. Anisotropy based seeding for hyper-streamline. In to appear in IASTED Computer Graphics and Imaging(CGIM) 2007, 2004.

[Wik] Wikipedia. Stress shielding Wikipedia, the free encyclopedia.

[Wun99] Burkhard Wunsche. The visualization of 3d stress and strain tensorfields, 1999.

[ZPP05] Xiaoqiang Zheng, Beresford N. Parlett, and Alex Pang. Topologicallines in 3d tensor fields and discriminant hessian factorization. IEEETransactions on Visualization and Computer Graphics, 11(4):395–407,2005.

15