Radiographic Image Analysis and Understanding

Martin Downing

(This page is currently under construction.)

My area of research is concerned with the analysis of Orthopaedic radiographs to give information which can aid the planning and monitoring of fracture repair surgery. One of the goals is the extraction of geometric bone models from the available patient radiographs to allow quantitative measurements and aid visualisation of the problem.

The first task is digitizing of the radiographs. Images used so far have been acquired from an Optronics rotating drum scanner capable of giving pixel resolutions of 100 down to 12 microns with 256 levels of optical density (8 bit). My images have been digitized at 100 microns (0.1 mm), and in some cases reduced to 400 microns before further processing.
The image shown in fig 1 is from a radiograph of a excised dry humerus. This was digitised with a simple "CCD camera on a stick", the resolution for the section shown here is about 120x500 8 bit pixels of size 0.9mmx0.8mm. This method was used as the radiograph would not fit on the Optronics drum and is adequate as the contrast is much greater than an equivalent in-vivo radiograph.

Extraction of bone boundaries from radiographs is not a simple problem. Digital images from standard radiographs can be considered as a non-linear function of projected linear attenuation, in general this can not be accurately calibrated due to variations in film and exposure parameters, consequently the constrast and and average intensity across a bone boundary vary with tissue depth and occlusion from other bones fragments. Canny type edge filters can havereasonable success at extracting most of a boundary such as the outer boundary of a bone, however the "edge" is almost always incomplete and the sections making up the desired boundary are a subset of many unwanted edgels which must be searched.

Current Research

Active Contour Models for Orthopaedic Image Analysis

Active contours (Snakes) were first introduced by Terazopoulos, Kass, and Witkin (1987). A snake is a deformable curve which moves over an image minimising it's potential energy. The energy of a snake can in general be divided into an internal energy term constraining the overall shape of the snake, and an external energy function provided by the image driving the snake towards the desired boundary. With an appropriate image energy function and careful initialisation, a snake can converge effectively to the required boundary. However local minima and image irregularities can confuse a "simple" snake. So my current research is concerned with "tailoring" the active contour models to specific object boundary types (such as inner and outer bone cortex) found in long-bone radiographs.

Two examples of converging snakes

fig1a: evolving edge snake (15K) fig 1b
Figs 1a&b: Fixed length "edge snake". Figs 1c&d: Growing "ridge snake"

In the above images the red circles represent the snake vertices which are connected by the green links. The evolution of the snake has been visualised in figs 1a and 1c by redrawing the snake every 100 iterations without refreshing the display.
The first example is of a edge seeking snake fixed length. The image potential used attracts the snake to classic edges, that is to maxima in image gradient. From it's stiffness and rigidity this snake has some resistance to converging on local minima, since other sections will try to pull a region from a weaker local minima if this results in a smoother, straighter curve. Otherwise it is dependent on the initialisation being close enough to the desired minima. The snake was initialised in a rough manner around the right side of the bone (fig 1a) and in this case is able to pull the central section from the inner "edge" of the bone. Fig 1b shows the final position of the snake when convergence is complete.
The second example is of a ridge seeking snake, this is useful for defining the 2D position of the inner cortex of the bone. This snake is not of a fixed length and growth from it's ends is allowable under certain constraints, such as the end being within a threshold of convergence and satisfying a ridge cost function. The snake was initialised by a short section of 8 vertices drawn obliquely to the ridge in the central region of the bone shaft (fig 1c). This section converges on the ridge before end growth can start. Without this constraint the end would grow further from the ridge and may get caught in a local minima.

Code and interface development

My code for snakes has been written in C++, and an interactive interface has been created using X11 with the Xview toolkit to run on our computer section's Sun workstations. The interface does at present allow more interaction with the snakes than would be practical in a working application, however this gives it more flexibility as a "test bed".


M. Kass, A. Witkin and D. Terzopoulos. Snakes: Active Contour Models. Int. J. of Computer Vision. 1987 Vol. 1, pp321-331.

J. Canny. A Computational Approach to Edge Detection. IEEE Trans. PAMI. Nov 86 Vol 8(6): pp679-698 Last modified: Wed Apr 26 20:15:27 1995

Martin Downing