Identifying the Borders of the Upper and Lower ... - Springer Link

8 downloads 112 Views 577KB Size Report
Jagiellonian University Hospital,. Sniadeckich 10, 31-531 Cracow, Poland [email protected]. 3. Department of Radiology, Jagiellonian University Hospital,.
Identifying the Borders of the Upper and Lower Metacarpophalangeal Joint Surfaces on Hand Radiographs Andrzej Bielecki1 , Mariusz Korkosz2, Wadim Wojciechowski3 , and Bartosz Zieli´ nski1 1

2

Institute of Computer Science, Jagiellonian University, L  ojasiewicza 6, 30-348 Cracow, Poland [email protected], [email protected] Division of Rheumatology, Departement of Internal Medicine and Gerontology, Jagiellonian University Hospital, ´ Sniadeckich 10, 31-531 Cracow, Poland [email protected] 3 Department of Radiology, Jagiellonian University Hospital, Kopernika 19, 31-531 Cracow, Poland [email protected]

Abstract. In this paper, the next stage of out studies concerning the computer analysis of hand X-ray digital images is described. An algorithm identifying the borders of the upper and lower joint surfaces on hand radiographs is proposed. It is based on local segmentation and profile plots analysis. The described algorithm achieved high efficiency - mean distance distribution signature for complete borders was equal to 0.118mm. Therefore, it can be applied both to trace development of hand joints diseases and analysis of bone contour shapes using syntactic methods.

1

Introduction

Hand radiographs are an important source of clinical information in the case of inflammatory and non-inflammatory diseases [6]. To give a diagnosis, an X-ray is taken of the patient’s hand and symmetric metacarpophalangeal joint spaces and interphalangeal joint spaces are analyzed. Detecting and tracing pathological changes, like joint space narrowing, as soon as possible is a crucial point in medical diagnosis. Hence, the difference between metacarpophalangeal joints width equals to about 0.5mm in the two following X-ray pictures is significant and supports important information for the estimation of therapy efficiency. However, such small changes are difficult to detect if an X-ray picture is examined by a human expert. Therefore, the possibility of such analysis performed by a computer system, which enables not only the detection of tiny changes in X-ray picture, but also interpret them from a medical point of view, is a key point for diagnosis support. Studies concerning the possibilities of such systems L. Rutkowski et al. (Eds.): ICAISC 2010, Part I, LNAI 6113, pp. 589–596, 2010. c Springer-Verlag Berlin Heidelberg 2010 

590

A. Bielecki et al.

implementation have been the topic of numerous publications [4,5,7] (see more in [2]). This paper is a continuation of the studies described in [1,2,8,9]. In the previous papers, picture preprocessing and joint location algorithms, efficient in around 97% of cases, were presented (see [2,9]). In this paper, the successive step of the development of the computer system for hand diseases diagnoses support is presented. The algorithm identifying the borders of the upper and lower joint surfaces on hand radiographs has been implemented. Obtained borders will be utilized in the implementation of the bones shape description and interpretation algorithm presented in [1].

2

Identifying the Borders of the Upper and Lower Surfaces

The algorithm for identifying the borders of the upper and lower surfaces requires the knowledge that all analyzed metacarpophalangeal joints are condyloid (ellipsoid) joints. Moreover, every joint is placed between two bones called upper surface and lower surface. Due to the specific character of these joint types, the borders of the upper and lower surfaces should be considered differently.

(a)

(b)

(c)

Fig. 1. Input image (a) joint’s region of interest (b) and ideal upper and lower surfaces borders (c)

It should be stressed that the upper surface of every considered joint contains an indentation, resulting in the special location of its border, running through the bottom of the area, which contains the maximum valued pixels (upper line in Fig.1c). Unlike the upper surface, the bottom bone surface does not contain an indentation, which results in the border running through the edge of the bone (lower line in Fig.1c). The main idea of the proposed strategy is to compute the path running through the borders of both surfaces, like the bright lines in Fig.1c, using two points - one from the upper and one from the lower surface. Those two points can be positioned manually by the operator or can be located automatically, using the joint space location method described in [2].

Identifying the Borders of the Upper and Lower Surfaces

591

U

G

G L H

F

F I

C

E

O E

D

(a)

E

(b)

(c)

Fig. 2. Initially analyzed line segments DH and CL (a), circle containing inner and outer pixels of the surface (b) and proceeding counter-clockwise circle points analysis, starting from border point E (c)

2.1

Initial Border Points Location

Let U and D be points located respectively for the upper and lower surface and let DU be the line segment created between them. Let region of interest (ROI) be part of the image in Fig.1a which contains line segment DU running through the corresponding parts of the joint surfaces (see Fig.1b). Moreover, let DH and CL be two initial line segments (ILS) perpendicular to line segment DU , such that C is a point located on the line segment DU in the neighborhood of point D (see Fig.2a). To compute border points lying on the line segments DH and CL, their profile plots have to be analyzed using special function fG , defined as follows: fG (xn ) = mean{f (xn+i )|i = {1...k}} − mean{f (xn−i )|i = {1...k}},

(1)

where f is profile plot and mean{f (xn+i )|i = {1...k}} is average value of the k successive arguments. The initial border point (IBP) is assigned to the argument, for which function fG reaches its global maximum. Accurate location of IBP is certain due to the fact that the values of the pixels corresponding to diaphysis (mid section of the bone) strongly contrast with the neighbouring pixels, corresponding to the background. Profile plots and function fG for line segments DH and CL are presented in Fig.3. Points corresponding to IBP are marked in Fig.2a as E and F . 2.2

Local Segmentation

Initial border points F and E, obtained in the previous step are used to create a circle with a center in point F and radius equal to the distance from F to E. That kind of circle surrounds two kinds of pixels, corresponding to surface and background, divided by a border running through the points F and E (Fig.2b).

592

A. Bielecki et al. 2500

Pixel value

2000 1500

line segment DH fG − line segment DH

1000

line segment CL fG − line segment CL

500 0 −500 0

30

60 90 Distance

120

150

Fig. 3. Profile plots of line segments from Fig.2a and analogous functions fG

Moreover, this circle intersects with ILS in two points considered as inner intersect point (IIP) and outer intersect point (OIP) - see point I and O in Fig.2b. To segment the region surrounded by the given circle, the algorithm starts by computing mean local background value (MLBV), which is an average value of pixels from the neighborhood of OIP. Due to the fact that OIP is located out of the surface, calculated value corresponds to the value of the local background pixels. Then, algorithm uses MLBV to analyze successive pixels lying inside the circle, starting from OIP and proceeding with the four neighbours of OIP, then with the neighbors of OIP’s neighbours and so on. Let M axBackgroundDeviation be a constant value which corresponds to maximal deviation of the background pixels values from the M LBV . If the value of the analyzed pixel is greater than M LBV −M axBackgroundDeviation, then this pixel is marked as a background pixel and its neighbors are analyzed as well. Otherwise, the pixel is marked as surface and its neighbors are not analyzed. As a result of local segmentation, the algorithm returns two consistent parts of the circle, divided by the border (see Fig.2c). This local circle segmentation (LCS) is now used to compute the next point of local segmentation. It is made possible by the fact that the circle runs through two points of the border. One of those points was already set and used to create the circle (point E in Fig.2c). The second border point is unknown (point G in Fig.2c), but can be computed by analyzing successive points from the circle, starting from point E and running counter-clockwise as long as the actual point belongs to a surface (see Fig.2c). The second border point is set as the last point which meets this condition. Point G is then used as the center point of the successive circle and local segmentation is performed once more. However, in contrast to the first local segmentation, MLBV is calculated as the average value of background pixels obtained from the last segmentation and lying inside the successive circle (black pixels in Fig.4a). The algorithm operates as long as the second border point is inside the ROI and at the end can produce two kinds of results. If the upper and lower surface do not overlap one another, the algorithm produces two borders - one for the upper and one for the lower surface (Fig.4c). In this case, the lower surface border is the final border, however the upper surface border still has to be analyzed, due

Identifying the Borders of the Upper and Lower Surfaces

593

G

F E

(a)

(b)

(c)

Fig. 4. Successive circles applied in local segmentation (a) and result of local segmentation for surfaces overlapping one another (b) and separated surfaces (c)

to the fact that sometimes it runs through the rear edge of the bone, instead of running through the bottom of the area, which contains the maximum valued pixels. When surfaces overlap one another, the algorithm produces left and right borders for both surfaces, although it does not separate one surface from another (Fig.4b). 2.3

Surface Disconnection

This step of the algorithm applies only to the ROI with overlapping surfaces. For both the left and right border obtained in the previous stage, the algorithm searches for two points which have the shortest distance to line segment DU. These points correspond to exact joint space locations (EJSL) - see points K and N in Fig.5a. The next issue is to connect the left and right EJSL by curve, which separates two surfaces and does not intersect with any of their borders. Such a curve, called an inner path (IP) is created by outgoing points from point N to point K in Fig.5a. Let {Pi }ni=1 be a set of successive IP points, such that P1 = N and Pn = K. Each given point Pi is used to calculate successive point Pi+1 , α by analyzing five line segments {Pi Pi+1 }α={10,20,30,40,50} , where α is the angle α between line segments Pi K and Pi Pi+1 . End point of the line segment with the highest mean value of underlying pixels is then chosen as Pi+1 (point M of line segment N M in Fig.5b). The algorithm stops operating if analyzed point Pi is in the neighborhood of point K, which eventually leads to obtain the inner path (see Fig.5c). In the final step, IP is analyzed to obtain the final borders of the upper and lower surfaces. However, as has been mentioned above, it is probable that the border generated by the local segmentation for the upper surface is not accurate. Due to this fact, IP is extended to points from the left and right border, which lie in the neighbourhood of EJSL. Extended inner path (EIP), established to contain all required inner points, is shown in Fig.6a. Then, the algorithm applies the modification of the method proposed and described by authors in [2]. The

594

A. Bielecki et al.

K

M N

N N

K

K

(a)

(b)

(c)

Fig. 5. Exact joint space locations (a), line segments analyzed in successive steps (b) and inner path (c)

main idea of the proposed strategy is to create a profile plot for each line segment, parallel to line segment DU , with the lower endpoint located in the corresponding inner point - see Fig.6b. For each profile plot achieved in this manner, the analysis has to be conducted. Denote by xmin , the argument for which the function f reaches its global minimum. Let CDif f be a fixed parameter, which refers to half of the average difference between pixels located on the indentation and pixels located on a bone without indentation. The argument corresponding to the upper border is given by the formula:  f (xj ) − f (xmin ) < CDif f (2) xup = xi : f (xi ) − f (xmin ) > CDif f ∧ min

Suggest Documents