# Patent

## Title
Method of segmenting anatomic entities in 3D digital medical images

## Abstract

For each of a number of landmarks in an image an initial position of the landmark is defined. Next a neighborhood around the initial position comprising a number of candidate locations of the landmark, is sampled and a cost is associated with each of the candidate locations. A cost function expressing a weighted sum of overall gray level cost and overall shape cost for all candidate locations is optimized. A segmented anatomic entity is defined as a path through a selected combination of candidate locations for which combination the cost function is optimized. During optimization towards the optimal segmented surface/volume graph traversal methods are exploited.

## Background
FIELD OF THE INVENTION
The present invention relates to a method of segmenting an entity in a digital image, more specifically an anatomic entity in a digital medical image. The segmentation process according to the present invention is based on the use of geometric and photometric models of an image.
The method of the present invention can inter alia be used as a process of performing geometric measurements on digital images, more specifically on digital medical images.
BACKGROUND OF THE INVENTION
In radiological practice, geometric measurements are frequently used to aid diagnosis of abnormalities. In order to perform these measurements, key user points must be placed in an image, for example in an image displayed on a display device, on their corresponding anatomical landmark position. Measurements such as the distance between two points, or the angulation between lines are based on the position of these key user points. Furthermore, the geometry as a whole may be assessed for normality or abnormality, involving an analysis of the complete shape. Hence there is a need to automate and objectify the extraction of quantitative information that is embedded in a radiological image.
An example of such a frequently performed measurement is the computation of the cardiothoracic ratio (CTR) in thorax RX images (FIG. 6). This ratio is defined as the ratio of the transverse diameter of the heart, at the level of the apex, to the internal diameter of the thorax (ID), i.e. CTR=(MLD+MRD)/ID.
The transverse diameter of the heart is composed of the maximum transverse diameter on the left side of the heart (MLD) and the maximum transverse diameter on the right side of the heart (MRD). Clearly, this definition entails that the radiologist searches along the inner border of the left and right ribcage boundary to locate the point pair needed to compute the internal diameter ID. This point pair must lie at the greatest internal diameter of the thorax. Likewise, the left and right heart shadow border must be searched to locate the points needed to compute the sum of MLD and MRD. More specifically, these points are situated most distant with respect to the midline of the spine. The process of border search requires that the radiologist is performing anatomy segmentation and locating the points (a total of four in this example) on the segmented anatomy. The segmentation step, in the case of CTR computation, amounts to delineating the lung fields.
An example of a 3D application is the segmentation of the lungs and the computation of the lung volume.
Many other measurements in digital images follow a similar approach involving the segmentation of the anatomic organ or entity onto which segmented geometry the characteristic points and measurement objects are determined and finally measurements are performed (FIG. 5).
Referring to the example of cardiothoracic index calculation, to automatically position the required points, a method is needed to automatically segment the lung fields on a chest radiographic image.
The segmentation problem can be approached in several ways, depending on the application. Segmentation strategies evolved from low-level strategies in the early years of computer vision to the more recent model-based strategies.
Low-level methods rely on local image operators separating pixels with different photometric characteristics and grouping of pixels with similar local photometric characteristics. Examples of both classes are edge detection and region growing. Despite the poor performance of these low-level approaches, they are very popular in most commercial image analysis tools. The main reasons are that they are simple to understand and to implement. For complex image data however, such as present in medical images and exemplified by the content of a thorax image as described above, their usefulness is limited.
More successful methods incorporate a priori knowledge about the shape to be segmented and about the photometric or gray-level appearance of the object in the image. These methods, referred to as model-based methods are often based on template matching. A template is matched for instance by correlation or with generalized Hough transform techniques. Unfortunately, the template matching is likely to fail in case of medical images. This is due to the large variability in shape and gray-level appearance that the anatomic object may exhibit.
Methods based on active contours, introduced by Kass et. al. (M. Kass, A. Witkin, and D. Terzopoulos, Snakes: active contour models, Int. J. Computer Vision, 1(4):321-331, 1988) and level sets (J. A. Sethian, Level set methods and fast marching methods, Cambridge Univ. Press, Cambridge, U.K. 1999) are able to cope with a larger shape variability, but are still unsuited for many medical segmentation tasks because little a priori knowledge about the object to be segmented can be incorporated.
Handcrafted parametric models overcome this problem, but are limited to a single application.
In view of these shortcomings, it is obvious that there is need for a generic segmentation scheme that can be trained with examples in order to acquire knowledge about the shape of the object to be segmented and the gray-level appearance of the object in the image. Active shape models (ASMs), introduced by Cootes and Taylor (T. F. Cootes, C. J. Taylor, D. Cooper, J. Graham, Active Shape Models—their training and applications, Computer Vision and Image Understanding, 61(1):38-59, 1995) satisfy this definition of segmentation schemes. The shape model is given by the principal components of vectors of landmark points. The gray-level appearance model describes the statistics of the normalized first derivative of profiles centered at each landmark that run perpendicular to the object contour. The location of a landmark in a new image is found by minimizing the Mahalanobis distance between the first derivative profile and the distribution of the profile. This algorithm starts from an initial estimate and performs a fitting procedure, which is an alternation of landmark displacements and shape model fitting. Similar approaches have been devised all employing a three-step procedure. First, they all use a shape model that ensures that plausible results are generated. Secondly, they use a gray-level appearance model to place the object at a location where the gray-level pattern around the border or within the object is similar to what is expected from the training examples. Finally, the algorithm fits the model by minimizing some cost function.
The approach presented by active shape models is still faced with several limitations.
A first limitation is the need for an initial estimate, known as the initial positioning problem. In some cases, an extensive search for a proper initial contour is needed in this framework.
A second limitation lies in the alternate use of shape model and gray-level appearance model. Firstly, the segmentation estimate is updated using the gray-level appearance model. Secondly, the shape model is fitted to the updated contour. Unfortunately the shape model is misled if the gray-level appearance model wrongly locates a landmark.
Some experiments with active shape model segmentation schemes exhibited another problem. If the gray-level appearance model for a specific landmark is used to find a better location for that landmark, it requires that the true landmark location lies inside the region the algorithm is exploring. In some cases the algorithm may search for a landmark in the region of another landmark. This means that the wrong gray-level appearance model is used at the wrong region, resulting in a poor segmentation.
It is an object of the present invention to provide a method of segmenting an entity in a digital image, more specifically an anatomic entity in a digital medical image, that overcomes the problems of the prior art.
SUMMARY OF THE INVENTION
The above-mentioned aspects are realised by a method as set out in claim 1.
Specific features for preferred embodiments of the invention are set out in the dependent claims.
Another aspect of this invention relates to a method of measuring an anatomic entity in a digital medical image as set out in the appending claims.
In the following the terms gray value model, gray value appearance model, gray level model, gray level appearance model and photometric model are used as synonyms.
Likewise the terms shape model and geometric model are used as synonyms.
The terms feature image and feature are also used as synonyms.
The embodiments of the methods of the present invention are generally implemented in the form of a computer program product adapted to carry out the method steps of the present invention when run on a computer.
The computer program product is commonly stored in a computer readable carrier medium such as a DVD or a CD-ROM. Alternatively the computer program product takes the form of an electric signal and can be communicated to a user through electronic communication.
In EP A 1349098 a method is disclosed to automate the measurements in digitally acquired medical images by grouping measurement objects and entities into a computerized measurement scheme consisting of a bi-directionally linked external graphical model and an internal informatics model.
In a measurement session according to EP A 1349098, a measurement scheme is retrieved from the computer and activated. Measurements are subsequently performed on the displayed image under guidance of the activated measurement scheme.
In this computerized method, a multitude of geometric objects are mapped in the digital image onto which other measurement objects and finally measurement entities (such as distances and angles) are based. The basic geometric objects are typically key user points, which define other geometric objects onto which geometric measurements are based. The above identified patent application does not disclose however how the mapping may be effectuated automatically without the need of user positioning and manipulation of key measurement points. The method according to the present invention can be used to effectuate this mapping.
The method is outlined departing from the two-dimensional case as described in the published European patent applications EP 1 760 658 and EP 1 760 659, where the segmentation results in one or more contours, open-ended or closed and enclosing the anatomical object of interest.
According to the present invention, a segmentation method is provided which comprises the construction of models of anatomic entities such as an organ or a structure in a medical image, which models can be trained from examples so as to obtain knowledge of the gray value appearance and knowledge of the shape of the anatomic entity to be segmented.
The gray value appearance model comprises the probability distribution of the gray value and a number of multiscale derivatives of gray values at a set of landmarks distributed over the anatomic outline.
The shape model comprises the probability distribution of each connection vector between successive landmarks along the outline of an anatomic entity.
A discrete point-based object representation is introduced to describe the anatomic outline in a medical image.
Two strategies and associated systems for generating models and application of the models to segment actual images are disclosed. These strategies, although decomposing in building blocks with equal goals, construct and employ different photometric and geometric model knowledge.
First, a new gray level appearance model is constructed from training images, encoding photometric knowledge at landmark positions. This step exploits intensity correlation in neighborhoods sampled around each landmark.
Secondly, a shape model is constructed, encoding geometric knowledge between landmarks. This step exploits spatial correlation between landmarks of the segmented objects.
In a segmentation step, photometric and geometric knowledge are jointly used to segment one or more anatomic contours on a new image.
The resulting segmentations may be used to derive the position of desired measurement points in the course of performing geometric measurements on an image.
Measurement points can be defined in either a direct or an indirect way.
In the direct way, the positions of the landmarks are used as individual measurement points.
In the indirect way, the landmarks resulting from the segmentation process are interconnected by a curve and characteristic points on this curve are defined as measurement points.
Gray Level Appearance Models
The first step in each modeling system constrains the geometric position of the landmark to lie on a linear path perpendicular to the present contour or a sparse grid centered on the landmark. The photometric pattern at a landmark point in an image is captured by a profile vector sampled in feature images based on image derivates extracted at a number of scales. The profile sampling may be along a linear path in the images or on a circular path around the landmark point.
Feature Images
When the photometric pattern is computed for all image points in the image, feature images are obtained, the size of which is equal to that of the original image. Neighborhood operations are typically employed to compute the feature images. The values of the features in the feature image for a specific point can be arranged in a feature vector. The computation of feature images typically comprise two steps: (a) a linear filtering step using a bank of convolution kernels and (b) a post-processing step involving the sub-steps of a non-linear point operation combined with the computation of local image statistics. In step (b) one of the sub-steps may be performed alone.
Different filters and different types of post-processing lead to different types of feature images. For example, Laws constructed 25 two-dimensional convolution kernels as the outer product of pairs of vectors resembling ideal feature profiles such as Level, Edge, Spot, Wave and Ripple. The post-processing step consists of non-linear windowing in which the absolute filtered values are averaged in larger windows to obtain image texture energy measures. Unser used filter banks constructed as the outer product of vectors corresponding to well-known transforms like discrete sine (DST), discrete cosine (DCT), discrete even sine (DEST), discrete real even Fourier (DREFT), discrete real odd Fourier (DROFT) transforms, and for post-processing the computation of the channel variances.
Finally, Gabor filter banks are constructed using symmetric or anti-symmetric Gabor filters tuned to combinations of different spatial frequencies and different orientations, such that all outputs have equal frequency bandwidth. The non-linear point operation step may consist of thresholding in this case.
Other image characteristics may be measured using feature images based on multi-resolution wavelets filters, rank-value filters or adaptive filters.
Feature Images Based on Locally Orderless Images (LOI's)
The image structure around an anatomical landmark in a medical image exhibits a typical gray-level pattern. In the present invention, this structure is captured in a number N of mathematical features as outlined in the sequel. The concept of using feature images to build a gray-level appearance model was introduced earlier in B. Van Ginneken et al., Active shape model segmentation with optimal features, IEEE Trans. on Medical Imaging, 21(8):924-933, 2002, based on so-called locally orderless images (LOI's) presented by J. J. Koenderink and A. J. Vandoorn, The structure of locally orderless images, Int. J. of Computer Vision, 31(2):159-168, 1999.
A Taylor expansion can be used to approximate a gray-level function ƒ around a point of interest, i.c. a landmark, at position x0, by a polynomial of order K. The coefficients of each term are given by the derivatives ƒ(i) at x0:




  
    f
    ⁡
    
      (
      x
      )
    
  
  ≈
  
    
      ∑
      
        i
        =
        0
      
      K
    
    ⁢
    
      
    
    ⁢
    
      
        1
        
          i
          !
        
      
      ⁢
      
        
          f
          
            (
            n
            )
          
        
        ⁡
        
          (
          
            x
            0
          
          )
        
      
      ⁢
      
        
          (
          
            x
            -
            
              x
              0
            
          
          )
        
        i
      
    
  




All information in this function approximation is contained in the derivatives ƒ(i). Similarly, the image can be described by an image filter bank containing the derivatives of the original image (L, Lx, Ly, Lxx, Lyy, Lxy, . . . ). Each derivative image may further be computed at a number of blurring or inner scales σ. The feature images are finally obtained by computing the post-processing step as local image statistics of each derivate image. The local image statistics consist of a number of moments of the local histogram in a window with width α around each location x0. In a specific embodiment the first and second histogram moments, all derivatives up to second-order (L, Lx, Ly, Lxx, Lyy, Lxy) and 5 inner scales (σ=0.5, 1, 2, 4, 8 pixels) are computed, amounting to a total of N=2×6×5=60 feature images. The window scale to compute the histogram is in accordance to the inner scale, i.e. α=2σ.
The limitation of using the derivatives in the row and column directly (i.e. x resp. y) in the feature vector is the lack of invariance with respect to translation and rotation (i.e. Euclidean Transformations). Unless the images are anti-rotated into a standard orientation, these operators can only be trained on examples that have the same orientation. Cartesian differential invariants (CDI) describe the differential structure of an image independently of the chosen Cartesian coordinate system; hence the anti-rotation step can be omitted. The construction of CDI's from Gaussian differential operators was described in L. M. J. Florack et al., Scale and the differential structure of images, Image and Vision Computing, Vol. 10 (6):376-388, 1992. The following are CDI's using derivatives up to second order: (L, Lxx+Lyy, Lx2+Ly2, Lx2Lxx+2LxyLxLy+Ly2Lyy, Lxx2+2Lxy2+Lyy2). Again, at each pixel location, feature images are constructed using these operators at number of inner scales σ and computing the first two moments of the locally orderless histograms in windows of extent α, with α linked to the inner scale, e.g. α=2σ. These operators are independent to Euclidean transformations of image geometry, but still depend on the choice of the scale parameter σ.
Profile and Feature Similarity Measurement
The gray level appearance model is built on the basis of a mean profile and variance-covariance matrix, and exploits intensity correlation between points of the profile, as explained next. The intensity at a profile is characterized by the intensity feature vector as outlined above.
In order to compare a profile with another profile, it is necessary to know how each point in the profile relates to any other point, and to measure the extent by which the value of a certain point of the profile varies from the mean with respect to any of the other points. This statistical relationship is captured by the covariance measure, which is always computed between 2 points (or the features at those points). If the covariance is measured between the feature value of a point and itself, the variance is obtained. When the profile consists of k points at either side of the contour, for a total of 2k+1 points, (2k+1)k number of relationships exists. The covariance between a pair of points from the profile tells the way how a first value of the pair varies with respect to the second. When the covariance is large and positive, it indicates that when the first point's feature value increases, so does the second in a proportional way. When the covariance is large and negative, it indicates that when the first point's feature value increases, the second decreases in a proportional way. When the covariance is zero, it means that there is no systematic coupling in the feature values, i.e. they are independent of each other. All variance-covariance pairs can be arranged in a covariance matrix S, which is symmetrical about the main diagonal. The covariance matrix thus captures all structural dependencies between feature value pairs in the profile. In practice, the covariance matrix is built from learning samples, in this case a collection of profiles at a number of landmarks and a number of intensity features in a set of training images.
The covariance relates to how distance is calculated in higher dimensional space, i.c. the space of the 2k+1 points in a given profile, to compute the distance between a current profile and a model profile. When the profiles would only comprise a single point with value x, the profiles could be compared with the model point value x for similarity just by subtracting the values of the current profile point and model profile point and taking the absolute value, i.e. d=|x− x|. When the profiles would comprise two points, the distance between the 2-vector x and the model 2-vector x could be computed as the Euclidean distance in the plane, i.e.

d=√{square root over ((x− x)′(x− x))}=√{square root over (|x1− x1|2+|x2− x2|2)}.

Euclidean distance weighs all directions equally. However, when the variables x1 and x2 have unequal standard deviations σ1 resp. σ2, the contours of iso-distance lines are ellipses with major axes parallel to the coordinate axes. The differences may be weighted with the inverse of the standard deviation, resulting in the weighted Euclidean distance




  
    
      d
      w
    
    =
    
      
        
          
            
              (
              
                x
                -
                
                  x
                  _
                
              
              )
            
            ′
          
          ⁢
          
            W
            ⁡
            
              (
              
                x
                -
                
                  x
                  _
                
              
              )
            
          
        
      
      =
      
        
          
            
              
              
                
                  
                    x
                    1
                  
                  -
                  
                    
                      x
                      _
                    
                    1
                  
                
                
                  σ
                  1
                
              
              
            
            2
          
          +
          
            
              
              
                
                  
                    x
                    2
                  
                  -
                  
                    
                      x
                      _
                    
                    2
                  
                
                
                  σ
                  2
                
              
              
            
            2
          
        
      
    
  
  ,




The matrix W contains the inverse of the variances of the variables, i.e.




  W
  =
  
    
      [
      
        
          
            
              1
              /
              
                σ
                1
                2
              
            
          
        
        
          
            
              1
              /
              
                σ
                2
                2
              
            
          
        
      
      ]
    
    .
  




Intensity levels of pixels close to each other as in the case of linear or circular profiles will be heavily correlated when they belong to an identical anatomical region with smoothly varying intensity levels. When pixel pairs are considered belonging to different tissues, the correlation may be inversely proportional. In either case, imaging noise and unimportant anatomical variation introduces a non-zero variance for the intensity level of the pixel itself.
Hence, if the variables are also correlated and have different variances, the inverse of the covariance matrix must be inserted, yielding the so-called Mahalanobis distance

dm=√{square root over ((x− x)′S−1(x− x))}.

The Mahalanobis distance weights the distance of a multi-dimensional data point x from its mean x such that observations that are on the same multivariate normal density contour will have the same distance dm. These Mahalanobis iso-distance contours take the form of ellipses in two-dimensional space, and ellipsoids in three-dimensional space. Obviously, the number of points in the profile 2k+1 is normally much higher than three, in which case the iso-distance loci take the form of hyper-ellipsoids in multi-dimensional space.
The gray level appearance model is obtained from a training image set, and consists for each landmark in a mean profile and a covariance matrix for each of the features. The total of stored models is thus proportional to the number of landmarks and the number of features.
Shape Models
The positional correlation between landmarks along the contour is taken into account in a shape modelling step. Because segmentation of anatomic structures with relatively deterministic shape is aimed at, knowledge regarding the shape must preferably encode the deterministic component, along with relevant anatomical variation, and further preferably ignore irrelevant shape details.
Two embodiments are outlined to take into account positional correlation. The first is based on a global approach involving the use of all landmark positions simultaneously; the second employs a local approach, modelling the spatial disposition of successive landmarks.
PCA Analysis and Fitting
In the first embodiment, a variance-covariance matrix of landmark coordinate positions is constructed from manually placed landmarks in a set of aligned training images. Each diagonal entry in the variance-covariance matrix represents the variance of the coordinate values of the landmarks. The non-diagonal entries represent the covariance of pairs of landmark coordinate values, i.e. it expresses how the coordinates of two landmarks vary with respect to each other. The variation may systematically be in equal ‘positive directions’ with respect to their means, yielding high positive covariance, or systematically in equal ‘negative directions’ with respect to their respective means, yielding high negative covariance, or randomly in opposite directions with respect to their means, yielding zero covariance. An eigenvector/eigenvalue analysis, known in the prior art as Principal Components Analysis (PCA), will detect any global systematic variation modes of the landmarks with respect to the mean landmark positions. PCA aims to reduce the dimensionality of a data set by only keeping the components of coordinate set with largest variation; it therefore statistically decorrelates the original coordinate positions. By projecting onto these highly varying subspaces, the relevant statistics can be approximated by a smaller dimensional system that retains important shape features. A sufficient number of these principal modes are retained and used as the shape model, ignoring the other modes attributed to noisy variations.
Landmark Connection Vector Model
The second embodiment aims at modeling the disposition of successive landmarks at the local level. However, this restriction does not imply that the global shape is not captured. The shape outline can be completely reconstructed given the start point coordinates and the connection vectors, by iteratively adding the connection vector to the current point, starting from the start point. This property is exploited in shape description at the pixel level by chain codes for example. The connection vector is a discrete approximation of the local tangent vector to the curve. When taking into account the direction vector between successive landmarks, i.e. first order geometric derivatives, it allows describing the shape of the object irrespective of translations of the object. By taking into account the curvature, i.e. second order geometric differentiation, between successive landmarks, for example expressed by the angle subtended by two successive connection vectors, the shape of the object can be described irrespective of translations and rotations of the shape (so-called rigid body transformations). In that case the curve can be completely reconstructed when the start position, and the first geometric derivative (i.e. start connection vector) is known, by iteratively adding the difference vector of successive tangent vectors. Curvature based on a chain code at the pixel level is usually highly noise dependent for the scale is at a too fine level. This drawback is coped with in the present disclosure because the landmarks are sufficiently spaced apart so as to enable computation of noise-independent yet accurate first or second order derivative information. Because the magnitude of tangent or curvature vector depends on scale, normalizing the size of each curve of the training set to unity for example, further allows describing the curve up to an Euclidean similarity transformation. The mean and covariance statistics of displacement vectors (i.e. first derivative or tangent) or vector differences of displacement vectors (i.e. second derivative or curvature) between manually placed landmarks in a set of aligned training images constitutes the shape model of this embodiment.
Segmentation Systems
Segmentation systems can also be organised along two tracks each consisting of building blocks with related objectives.
A first building block aims at confining the admissible positions of instantiated model landmark positions to a number of most probable locations in a target image.
In the case landmarks are represented by linear profiles in feature images, a best point voting approach can be adopted that ranks a set of candidate positions on a perpendicular line through an instantiated landmark.
For a circular profile case, a rectangular search grid can be considered at each instantiated landmark and grid crossing positions are ranked according to the combined Mahalanobis distance of circular profiles through all feature images to the model circular profiles.
Second and third building blocks jointly constitute an optimization step. A cost matrix may be constructed, using the cost measures associated with the retained admissible position for each landmark. The cost comprises a term associated with agreement in gray level appearance. Agreement with the shape model may be verified at the global level using weighted PCA contour fitting. Alternatively, the shape agreement may be verified by incorporating a shape cost associated with the candidate position of the landmark. A dynamic programming algorithm can be used to construct a minimum cost path through the cost matrix, yielding the final segmentation as the path with lowest overall cost.
Finally, characteristic points on the final segmentation may indirectly define the geometrical position of the key measurement points, and all depending measurement objects and measurement quantities may be generated on the basis of these key measurement points.
Alternatively, the landmark points used in the segmentation may be used to directly define the key measurement points and a search grid for each measurement point may be provided to locate the admissible positions of the measurement point.
Further specific embodiments and associated advantages of the present invention will become apparent from the following description and drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a flow chart illustrating a first modeling system (Modeling system I) according to the present invention,
FIG. 2 is a flow chart illustrating a first segmentation system (Segmentation System I) according to the present invention,
FIG. 3 is a flow chart illustrating a second modeling system (Modeling System II) according to the present invention,
FIG. 4 is a flow chart illustrating a second segmentation system (Segmentation System II) according to the present invention,
FIG. 5 is a flow chart illustrating measurement computation on the basis of the characteristic points on the anatomic objects segmented according to the present invention,
FIG. 6 is a measurement scheme for measurement of the cardiothoracic ratio from a chest radiograph,
FIG. 7(a) illustrates manual delineation of the left lung in a chest radiograph, in FIG. 7(b) the left lung is represented as a set of landmarks{pi}i=1n, in this example n=14.
FIG. 8 illustrates a discrete representation of the lungs fields by a set of n landmarks pi=(x1, y1), . . . , pn=(xn, yn). The image sizes are normalized between 0 . . . 1. The continuous curve is interpolated through the discrete landmarks.
FIG. 9 illustrates a linear and a circular gray-level profile as a sampling of gray values at a number of points on a line and a circle with radius rc around the landmark, respectively.
FIG. 10 shows experimentally estimated distributions for some connection vectors on the left lung shape consisting of 14 landmarks: (a) v1, (b) v2, (c) v3.
FIG. 11 shows first moment feature images of a chest radiograph, corresponding to the derivatives up to second-order (L, Lx, Ly, Lxx, Lyy, Lxy) and the scales σ equal to 0.5, 2 and 8 pixels,
FIG. 12 shows second moment feature images of a chest radiograph, corresponding to the derivatives up to second-order (L, Lx, Ly, Lxx, Lyy, Lxy) and the scales σ equal to 0.5, 2 and 8 pixels,
FIG. 13 shows examples of application of the present invention to the segmentation of lung fields on a chest radiograph: (a) manual segmentation of left and right lung field; (b) automatic segmentation of left and right lung field.
FIG. 14 illustrates the computation of the Cardiothoracic Ratio using (a) the manual lung field segmentations resulting in a CTRman=0.47; (b) using the automatically derived lung field segmentations according to the present invention resulting in a CTRautomatic=0.45.



DETAILED DESCRIPTION OF THE INVENTION
The present invention will be explained in detail with regard to a specific application, namely the segmentation of the lung field in a medical image.
Object Representation
In the specific embodiments of the method of the present invention that are described below, an anatomical object in an image is represented mathematically as a fixed number of discrete, labeled points lying on the contour that encloses the object, i.e. p1=(x1, y1), . . . , pn=(xn, yn).
The contour{pi}i=1n runs from p1 to pn and back to p1. Hence, the object may be captured by a discrete shape vector x=(x1, y1, . . . , xn, yn)T. The coordinate system is chosen such that all points inside the image area lie in the domain [0,1]×[0,1] (FIG. 7).
Additionally, characteristic points lying in the region enclosed by the contour may be added to the object representation as well, allowing e.g. measurement of entities lying inside the object.
The segmentation scheme described below needs a number of training images, in which the shape vectors x are manually determined. Once the algorithm is trained on the data set, it is able to produce the shape vector in a new image.
The continuous contour of an anatomical object can be reconstructed by curve interpolation from the points {pi}i=1n. A first order interpolation links successive points with a line segment, resulting in a polygonal approximation. Higher order interpolations may be used to achieve a smoother outline. Irrespective of the order, the continuous representation can be used to derive spatial properties of the curve, such as the tangent direction along the curve, or the normal direction at a certain point on the curve.
In three dimensions, the third axis z is added, and the landmark points are now distributed on a surface that encloses the object, i.e. p1=(x, y1z1), . . . , pn=(xn, yn, zn). Hence, in this point-based representation, the object may be captured by a discrete shape vector x=(x1, y1, z1, . . . , xn, yn, zn)T.
A first order continuous representation is achieved by linking groups of surface points in polygons, each polygon defining one interpolating surface patch of a polygon mesh, connected such that each edge is shared by at most two polygons. An edge connects two vertices, and a polygon is a closed sequence of edges. When the points are grouped in triples, each triple defines exactly the equation of a planar surface patch, in which case the polygonalization process becomes a surface triangulation. This process is different from methods in the prior art that extract iso-surfaces and locally triangulate the surface (examples of these methods are the Marching Cubes algorithm introduced in W. Lorensen, H. E. Cline, Marching Cubes: a high resolution 3D surface construction algorithm, Computer Graphics, Vol. 21, No. 4, July 1987, p. 163-169, and later refinements known as the NOISE, WISE and SAGE algorithms). The difference lies in the fact that the 3D object representation adopted here does not assume that the points have equal gray value, hence the object shape or organ outline is assumed to be different from an iso-gray value surface hence the segmentation cannot be based on iso-surface extraction. Instead, the ensemble of landmarks will be modeled geometrically and radiometrically and the models are applied in a novel model-based 3D segmentation scheme.
Additionally, characteristic landmark points lying in the volume enclosed by the surface may be added to the object representation as well, thereby (a) enabling influencing and steering of the segmentation result by dominant anatomic features inside an organ or (b) allowing e.g. measurement of entities lying inside the object. A polyhedral mesh may now be constructed linking points on the surface and inside the surface into an arrangement of polyhedral volumetric cells. In 3D lung scans for example, these additional points may comprise characteristic points of the vessel trees and bronchial trees (such as bifurcation points). In particular the polyhedron can comprise only four points, each group forming a tetrahedron, and the polyhedralization now becomes a tetrahedralization. The outer shell of the tetrahedral structure representing the volume is a triangulated surface.
Modeling System I (FIG. 1)
Gray Level Appearance Model
The gray level appearance model (also called photometric model) captures the spatial intensity distribution in the neighborhood of so-called landmarks (also called landmark points). The spatial component of the gray level appearance model has been devised along the use of gray-level profiles. As will be apparent from their construction, other schemes can be employed.
The number n of landmarks that is for example used to accurately describe a lung field outline may be as low as 14, e.g. landmark 1 denotes the uppermost point of each lung field, landmark 7 is positioned at the cross section of either the left or right heart shadow with their respective hemi-diaphragm, landmark 9 denoting the costophrenic angle. The other landmarks can be equidistantly positioned between these major landmarks. Obviously, a higher number of landmarks may be used.
Linear Gray-Level Profiles (FIG. 9)
At each landmark, the gray level appearance model describing the typical image structure around the landmark is sampled perpendicular to the contour. On either side of the landmark, k pixels are sampled using a certain step size, which gives profile vectors of length 2k+1. This sampling scheme has the advantage that it is able to model linear intensity gradients at the landmark. The profiles may be normalized so that the sum of absolute values of elements in the profile is 1. The direction of sampling can be computed as the mean normal direction between the normals on the line segments resulting from connecting the landmark with its previous or its next neighbour, or as the normal on the line segment connecting the previous and next landmark.
In three dimensions the computation of the normal direction is more compound for the normal to a surface represented as a distributed point set needs be found. In three dimensions, the normal is defined with respect to a plane. This plane may be obtained by fitting a plane ax+by+cz+d=0 through a set of at least three selected nearest neighboring points, using Euclidean distance as the closeness criterion. The normal to the resulting plane has components (ai, bi, ci), and is used as the direction vector along which the volume is sampled perpendicular to the object surface at a particular landmark (xi, yi, zi) to obtain a 3D voxel-level profile.
When landmark points inside the volume are added to the model, profiles may be sampled in the volume for example along some of the connection vectors of the landmark point with landmarks points surrounding it and that are lying either inside the surface or on the surface.
Gray-Level Feature Images
The image structure around a landmark exhibits is captured in a number N of mathematical features as explained above. The feature images are obtained by computing a number of moments of the local histogram of derivative images in a window with width α around each location χ0. In a preferred embodiment the first and second histogram moments, all derivatives up to second-order (L, Lx, Ly, Lxx, Lyy, Lxy) and 5 inner scales (σ=0.5, 1, 2, 4, 8 pixels) are computed, amounting to a total of N=2×6×5=60 feature images. The window scale to compute the histogram is in accordance to the inner scale, i.e. α=2σ. The set of feature images can be regarded as a gray-level decomposition of the gray-level function in the neighbourhood of a landmark.
An example of the computed feature images in a thorax image is given in FIG. 11 (first histogram moments of original image and 5 derivatives images at three scales) and FIG. 12 (second histogram moments of original image and 5 derivatives images at three scales). Thorax images normally appear in the upright position in the image; anatomic objects pertaining to other radiographic examinations may exhibit non-standardized position and rotation, in which case the construction of feature images may employ Cartesian Differential Invariants.
In three dimensions, the derivatives are 3D operators. The volumetric data can locally be described by images containing the partial derivatives of the original image (L, Lx, Ly, Lz, Lxx, Lyy, Lzz, Lxy, Lyz, Lxz, . . . ). Similar to the 2D case, the derivatives may be computed at a number of blurring scales σ, and finally be used to compute a number of feature images using moments of the local histogram. In a preferred embodiment, the first and second histogram moments, all derivatives up to second-order (L, Lx, Ly, Lz, Lxx, Lyy, Lzz, Lxy, Lyz, Lxz) and 5 inner scales (σ=0.5, 1, 2, 4, 8 pixels) are computed, amounting to a total of N=2×10×5=100 feature images. The window scale to compute the histogram is again in accordance to the inner scale, i.e. α=2σ.
Gray-Level Appearance Model
All images of a training set are used to build a statistical model for each feature and each landmark. Denoting the normalized profile sampled at a landmark i (e.g. 14 in total for the 2D case of a thorax lung field) in feature j (e.g. 60 in total for 2D images) as a vector gi,j, the probability distribution of gi,j is estimated from the training images, resulting in a mean gi,j, and a covariance Si,j. For a length of a profile vector of 2k+1, the size of this covariance matrix is (2k+1)×(2k+1). The gray level appearance model for a certain landmark i consists of the mean profiles gi,j, j=1 . . . N and covariance matrices Si,j, j=1 . . . N. The gray-level appearance model for the total lung field consist of the collection of all mean profiles gi,j, i=1 . . . n, j=1 . . . N and covariance matrices Si,j, i=1 . . . n, j=1 . . . N.
In three dimensions, voxel-level samplings (also termed ‘profiles’) for each of the n3D landmarks are obtained in each of the N feature images. The 3D statistical model of the landmarks consists of the collection of all mean profiles gi,j, i=1 . . . n, j=1 . . . N and covariance matrices Si,j, i=1 . . . n, j=1 . . . N.
Gray-Level Cost
The Mahalanobis distance between a new profile gi,j sampled at a point p in a new feature image j for a certain landmark i is computed as

hi,j(p)=(gi,j(p)− gi,j)TSi,j−1(gi,j(p)− gi,j)

A smaller Mahalanobis distance means a larger probability that the profile gi,j(p) originates from the Gaussian distribution with mean gi,j and covariance Si,j. Hence, the Mahalanobis distance may be used as a gray-level cost measure, denoted as hi,j(p). This cost measure is a function of the location p in a given image. The location that most likely is the true location for the landmark i, in accordance to feature j, is the point p that minimizes hi,j(p). This gray-level cost can thus be defined for each feature j.
In three dimensions, the cost function at a certain 3D point p is likewise evaluated as the Mahalanobis distance hi,j(p) between a new 3D voxel-level profile gi,j, sampled at the 3D point p in a new 3D feature image j for a certain 3D landmark i, and the mean gi,j.
Shape Model
The curve outline, in the case of lung fields: one for each of the lung fields, is described by n landmark points (FIG. 8). These landmark points are manually determined in a set of s training images, yielding a sequence of points (x1, y1) . . . (xn, yn). These coordinate tuples are subsequently positioned in a vector x=(x1, y1, . . . , xn, yn)T, representing the curve. Next Principal Components Analysis (PCA) is applied to the shape vectors x of the training images. The PCA projects the curve in a lower dimensional space, covering the most important modes of geometric variation of the lung fields. Each curve xε•2n can be approximated by bε•t with t•2n:

x≈ x+Φb 

with x the mean shape and φε•2n×t the eigenvectors of the covariance matrix of x corresponding to the t largest eigenvalues. Each eigenvalue determines the variance of the shape for that shape model. This curve approximation, represented by the vector b, constitutes the shape model and fits the curve x into the shape model. The eigenshapes can be regarded as a zero-order (positional) geometric decomposition of the shape represented by the set of landmarks. The role of the shape model is to constrain the deformation of the object between the bounds of variation imposed by the training set, for example the three standard deviations with respect to the mean shape.

In three dimensions, the surface outline (i.c. one outline for each anatomic object) is described by n 3D points (landmarks). The outlines may for example represent the 3D lung fields. These landmarks may be manually determined in a set of s training images, or obtained with bootstrapping techniques from a previous sub-set s′ of the training images, yielding a sequence of 3D points (x1, y1, z1) . . . (xn, yn, zn). These coordinate triples are subsequently positioned in a vector x=(x1, y1, z1, . . . , xn, yn, zn)T, representing the surface. As noted earlier, additional characteristic points inside the volume delineated by the surface may complement the shape model.
Next, Principal Components Analysis is applied to set of 3D landmarks covering the surface of the object(s) in each 3D training image. The PCA analysis projects the surface in a lower-dimensional space, covering the most important modes of geometric variation of the anatomical object(s) (e.g. the 3D lung fields). Each surface xε•3n can be approximated by bε•t with t•3n:

x≈ x+Φb 

with x the mean shape and φε•3n×t the eigenvectors of the covariance matrix of x corresponding to the t largest eigenvalues. Each eigenvalue determines the variance of the shape for that shape model. This surface approximation, represented by the vector b, constitutes the shape model and fits the surface x into the shape model. Similar to the 2D case, the eigenshapes can be regarded as a zero-order (positional) geometric decomposition of the surface shape represented by the set of landmarks. The role of the surface shape model is to constrain the deformation of the object between the bounds of variation imposed by the training set, for example the three standard deviations w.r.t. the mean shape.
Segmentation System I (FIG. 2)
The segmentation algorithm will initially position a curve, representing a lung field outline, in the image, and finds a segmentation solution by iteratively updating the positions of the curve's constituent landmarks until an optimization criterion is reaches an optimal value. Each iteration consists of the following steps.
Step 1. Best Point Voting
Assuming a current position of a particular landmark, a better location for this landmark will be searched on a line perpendicular to the contour. On each side of the current position of the landmark, ns positions are evaluated. One of the 2ns+1 points will be voted as the best next point. Each feature of the set of N features contributes one vote to one of the 2ns+1 points. That point of the 2ns+1 points is selected that has minimum cost according to the Mahalanobis distance criterion. For each of the 2ns+1 points, the profile consisting of 2k+1 points sampled in feature image j is put in the equation of hi,j(p) with the proper mean gi,j and covariance Si,j filled in. The point with the lowest Mahalanobis distance is voted by that feature. Each feature chooses one point, resulting in N votes divided over 2ns+1 points as sets N1, . . . , N2ns+1 with Σk=12ns+1Nk=N. Obviously the number N of features must be substantially larger than the number 2ns+1 of selectable points for otherwise there are too few votes that may be assigned to a point of the set of selectable points.
The number of votes Ni,j that each point of the set of considered 2ns+1 points for a certain landmark i receives, may be regarded as a confidence rate that the particular point is the searched for landmark.
In three dimensions, the choice among the 2ns+1 3D points is obtained by taking the maximally voted point through the three-dimensional features.
Step 2. Minimal Cost Path Optimization
According to the first step, each landmark may separately be displaced over 2ns+1 possible locations. The confidence rates Ni,j can be put in a matrix as follows




  
    R
    =
    
      
        
          [
          
            
              
                
                  N
                  
                    1
                    ,
                    1
                  
                
              
              
                ...
              
              
                
                  N
                  
                    1
                    ,
                    
                      
                        2
                        ⁢
                        
                          
                        
                        ⁢
                        
                          n
                          s
                        
                      
                      +
                      1
                    
                  
                
              
            
            
              
                ⋮
              
              
                
                  N
                  
                    i
                    ,
                    j
                  
                
              
              
                ⋮
              
            
            
              
                
                  N
                  
                    n
                    ,
                    1
                  
                
              
              
                ...
              
              
                
                  N
                  
                    n
                    ,
                    
                      
                        2
                        ⁢
                        
                          
                        
                        ⁢
                        
                          n
                          s
                        
                      
                      +
                      1
                    
                  
                
              
            
          
          ]
        
        ⁢
        
          
        
        ⁢
        with
        ⁢
        
          
        
        ⁢
        
          
            ∑
            
              j
              =
              1
            
            
              
                2
                ⁢
                
                  
                
                ⁢
                
                  n
                  s
                
              
              +
              1
            
          
          ⁢
          
            
          
          ⁢
          
            N
            
              i
              ,
              j
            
          
        
      
      =
      
        
          N
          ⁢
          
            
          
          ⁢
          
            ∀
            i
          
        
        =
        1
      
    
  
  ,
  ...
  ⁢
  
    
  
  ,
  
    n
    .
  




Updating the contour involves choosing one element in each row of the matrix C; the concatenation of all elements forming a path through the matrix, such that a cost criterion is optimized (i.c. minimized), is a minimal cost path (MCP) search.
A logical choice would be to take the element with highest confidence in each row; this approach has the drawback that it does not take into account the presence of outliers. Therefore, it may include abrupt changes in the path. This drawback is overcome by imposing a smoothness constraint that excludes the abrupt changes.
To this purpose, first a cost matrix is constructed as follows:




  
    C
    =
    
      [
      
        
          
            
              1
              /
              
                N
                
                  1
                  ,
                  1
                
                m
              
            
          
          
            ...
          
          
            
              1
              /
              
                N
                
                  1
                  ,
                  
                    
                      2
                      ⁢
                      
                        
                      
                      ⁢
                      
                        n
                        s
                      
                    
                    +
                    1
                  
                
                m
              
            
          
        
        
          
            ⋮
          
          
            
              1
              /
              
                N
                
                  i
                  ,
                  j
                
                m
              
            
          
          
            ⋮
          
        
        
          
            
              1
              /
              
                N
                
                  n
                  ,
                  1
                
                m
              
            
          
          
            ...
          
          
            
              1
              /
              
                N
                
                  n
                  ,
                  
                    
                      2
                      ⁢
                      
                        
                      
                      ⁢
                      
                        n
                        s
                      
                    
                    +
                    1
                  
                
                m
              
            
          
        
      
      ]
    
  
  ,




with the power m in the denominator being a positive number that influences the computed path (a larger m yielding smaller cost contribution for a point and hence steering the path towards this point). Second, a cost function is constructed as follows:




  
    
      J
      ⁡
      
        (
        
          
            j
            1
          
          ,
          
            j
            2
          
          ,
          ...
          ⁢
          
            
          
          ,
          
            j
            n
          
        
        )
      
    
    =
    
      
        
          ∑
          
            i
            =
            1
          
          n
        
        ⁢
        
          
        
        ⁢
        
          C
          
            i
            ,
            
              j
              i
            
          
        
      
      +
      
        α
        ⁢
        
          
            ∑
            
              i
              =
              1
            
            n
          
          ⁢
          
            
          
          ⁢
          
            
            
              
                δ
                
                  i
                  ,
                  
                    j
                    i
                  
                
              
              -
              
                δ
                
                  
                    i
                    -
                    1
                  
                  ,
                  
                    j
                    
                      i
                      -
                      1
                    
                  
                
              
            
            
          
        
      
    
  
  ,




with Si,ji the displacement of point i towards its target point ji along the normal to the shape and α a weight factor. The second term in this equation is the smoothness constraint that penalizes target point configurations for which displacements of one target point w.r.t. the displacement of the previous target point vary abruptly along the contour. The cost function J is optimized, using e.g. a technique known in the prior art as dynamic programming, described in e.g. D. H. Ballard, C. M. Brown, Computer Vision, Englewood Cliffs, Prentice Hall Inc. 1982, pp 137-143, resulting in the target points (j*1, . . . , j*n), that minimize J as a minimal cost path (MCP).
Alternatively to the matrix data structure, a layered graph may be used also. Each layer represents the array of perpendicularly sampled image points at a landmark. The graph is augmented with a set of arcs from the last layer back to the first. The dynamic programming technique extracts the boundary as an optimal closed path through the graph.
In three dimensions, the problem of solving for the minimum cost path is more compound and not straightforwardly derivable from the 2D case as will be apparent from that described next. First, the matrix data structure that is constructed in the 2D contour detection approach cannot be extended for the 3D case because there is no obvious way to re-circulate (in the 2D case this is implemented by copying the first row after the last row in the matrix). Furthermore the 2D matrix method enables a systematic way to visit all landmarks (each corresponding to a row); a straightforward way is a sequential order by concatenating successive landmarks. In 3D, each landmark has a number of nearest neighbors spanned over the 3D surface that, in order to treat those on an equal basis must be visited in parallel. Second, the number of variables to minimize is much larger because the surface of an object in a 3D image comprises usually much more points than a contour of an object in a 2D image. Therefore, the minimization algorithm may get more easily stuck in a local minimum for not all combinations of positions may be exhaustively evaluated. The simulated annealing optimization strategy is outlined to cope with this problem.
Two optimization strategies suitable for 3D surface optimization are outlined next.
Minimal Cost Surface Optimization

    1. A weighted undirected graph data structure G is created connecting all landmark points on the surface departing from the triangulated surface, and possibly augmented with connections towards points inside the surface, forming an overall polyhedral mesh. Each node (vertex) g comprises the 1D array of points and the associated cost (e.g. inverse gradients) of the points. The points in the points array are sampled perpendicular to the surface towards the inside and outside of the surface. Each node is linked to all its neighboring nodes obtained by following the edges (arcs) a departing from the node. Any node that has already been visited previously is not visited anymore to avoid cycles. The edges of the graph may be weighted with (a) the calculated Euclidean distance between the point pair that is linked by the edge (b) a geometric property of a landmark and its neighboring landmarks such as the local curvature. The resulting graph is sparse for there exist no edges between all non-neighboring landmark points. Alternative representations may be used such as an adjacency matrix representation where the weights of an existing adjacency relation between a pair of points are put as an entry in the matrix; all non-neighboring points receive a non-existent weight. Another alternative representation for the graph is the adjacency list, which is more suited when the graph is sparse, which is the case for graphs created from a surface triangulation. Here, a linked list is maintained for each landmark storing all neighboring points in subsequent cells of the list; cross links between these lists may be provided to algorithmically ease e.g. the deletion of a node.


The collection of nodes each containing a 1D point array may be viewed as a shell of points around the current surface. A new surface has to be computed comprised of the calculated new locations in the array for each node. This process is outlined in the sequel steps and may be viewed as a deformable surface segmentation.

    2. Starting from a node g in the graph, visit all other nodes of the graph in a systematic way. Graph algorithms, described in standard text books on algorithms such as R. Sedgewick, Algorithms in C++, Addison-Wesley, 1992, are applied to this purpose.


a. Minimum Spanning Tree (MST)
This step is solved using methods of the prior art known as minimum spanning trees. A MST of a weighted graph is a collection of edges connecting all the nodes such the sum of interconnecting weights of the edges is at least as small as the sum of the weights of any other collection of edges connecting all the nodes.
The solution of this problem is based on a property of graph theory in that given any division of the nodes of a graph into two sets, the MST contains the shortest of the edges connecting a node in one of the sets to a node in the other set.
The MST is built starting from any node (vertex), and always takes the next node that is “closest” (resulting in an Euclidean MST, but extremality may be according to other criteria) to the nodes already taken. In other words, the edge of lowest weight is followed among all those edges that connect nodes already in the tree to nodes not yet in the tree, and the node that the edge leads to is added to the tree. The aforementioned property of minimum spanning trees guarantees that each edge added is part of the minimum spanning tree. The resulting MST need not be unique.
Practical methods to find the MST are known in the prior art as the method of Kruskal or Prim's algorithm.
b. Breadth First Traversal
Another way of visiting the nodes of the graph in a systematic way is known in the prior art as the breadth first traversal starting from a certain node. Breadth first search starts covering the area of the surface around a given point node, moving farther away on the surface only when everything close has been looked at. This kind of graph traversal may be regarded at propagating away from the starting point so as to encompass gradually all parts of the surface. For closed surfaces, i.e. surfaces without boundaries, parts of the propagating front will collide with each other at the backside of the surface.
When all weights are one in the graph G, the breadth first traversal tree leads to a shortest path spanning tree.
In general, the MST tree will be different from the breadth first tree.
Although the distances change between each node and its neighboring node and hence the MST or breadth first tree must be recomputed, these trees may be kept constant during all iterations of the dynamic programming algorithm of the next step. It should be noted that although the initial graph will in general be not planar, the resulting visiting MST and breadth first trees are.
In this way all nodes of the segmented surface and its complementary inner landmarks are linked together in a systematic way.

    3. The dynamic programming (DP) approach is now performed on the MST or breadth first traversal tree, using the gradient in each sampled point and the difference in displacement of a node and the displacements of the neighboring nodes, e.i.






  
    J
    ⁡
    
      (
      
        
          j
          1
        
        ,
        
          j
          2
        
        ,
        ...
        ⁢
        
          
        
        ,
        
          j
          n
        
      
      )
    
  
  =
  
    
      
        ∑
        
          i
          =
          1
        
        n
      
      ⁢
      
        
      
      ⁢
      
        C
        
          i
          ,
          
            j
            i
          
        
      
    
    +
    
      α
      ⁢
      
        
          ∑
          
            i
            =
            1
          
          n
        
        ⁢
        
          
        
        ⁢
        
          
          
            
              δ
              
                i
                ,
                
                  j
                  i
                
              
            
            -
            
              δ
              
                
                  i
                  -
                  1
                
                ,
                
                  j
                  
                    i
                    -
                    1
                  
                
              
            
          
          
        
      
    
  




    
    
        with n the number of nodes (points) in the tree, δi,ji the displacement of point i towards its target point ji along the normal to the surface, δi−1,ji−1 the displacement of the parent node point in the tree, and α a weight factor. Node i and i−1 represent neighboring points on the surface; ji and ji−1 are the indices in the point array associated with nodes i resp. i−1. The second term in this equation is the smoothness constraint that penalizes target point configurations for which displacements of one target point w.r.t. the displacement of the previous target point vary abruptly over the surface. The cost function J is optimized, using e.g. a technique known in the prior art as dynamic programming, resulting in the target points (j*1, . . . , j*n), that minimize J as a minimal cost path (MCP). When inner points are added to the model, displacement for these nodes may be along one of the connecting vectors with surrounding nodes.
    
    


Starting from the positions obtained for the landmarks, steps 2 and 3 may now be iterated starting from another node g in the graph, from which a new MST is grown and new positions of landmarks are computed until a stopping criterion is met, e.g. the sum of absolute displacements of all nodes between two iterations does not change noticeably anymore.
Simulated Annealing Optimization
Simulated annealing has been introduced in the prior art by S. Kirckpatrick, C. D. Gelatt, M. P. Vecchi, Optimization by simulated annealing, Science, Vol. 220, No. 4598, May 1983, p. 671-680. In the sequel, details pertaining to the implementation according to the present invention are outlined. In this optimization strategy, no tree need be constructed from the graph to visit the points on the surface in a systematic way. With each ensemble of positions of landmarks on the current surface, the energy associated with it can be calculated from the graph G as follows




  E
  =
  
    
      ∑
      
        i
        =
        1
      
      n
    
    ⁢
    
      
    
    ⁢
    
      
        (
        
          
            C
            
              i
              ,
              
                j
                i
              
            
          
          +
          
            α
            ⁢
            
              
                ∑
                
                  
                    n
                    i
                  
                  ∈
                  
                    N
                    i
                  
                
              
              ⁢
              
                
              
              ⁢
              
                
                
                  
                    δ
                    
                      i
                      ,
                      
                        j
                        i
                      
                    
                  
                  -
                  
                    δ
                    
                      
                        n
                        i
                      
                      ,
                      
                        j
                        
                          n
                          i
                        
                      
                    
                  
                
                
              
            
          
        
        )
      
      .
    
  




The energy is the objective function that has to be minimized. It is composed of a term associated with the node i and a term associated with the set Ni of neighborhood nodes of the node i. The node term assigns a lower energy when the point has higher local gradient for example. The neighborhood term assigns lower energy e.g. when the displacement of each neighboring node w.r.t. the displacement applied to the current node is smaller, meaning a surface shape is penalized when it deforms so as to create local abrupt changes. The simulated annealing optimization consists of applying the Metropolis algorithm in the calculation of the optimal surface: the energy always takes the option for a lower energy state (a downhill step) when the energy E′ of the new iteration is lower than the energy E of the previous iteration, while sometimes taking an uphill step when the energy E′ is higher than energy E. The probability of such change from configuration of energy is adopted from thermodynamic systems and obeys the so-called Bolzmann probability distribution p=exp[−(E′−E)/kT]. The control parameter T (analog of temperature) and an annealing schedule tells how the energy E is lowered from high to low values, e.g. after how many random changes in configuration is each downward step in T taken, and how large is that step. In contrast to the tree-based methods outlined before, no systematic way of visiting the points on the surface is taken; instead they are taken at random over the surface. The steps of the SA algorithm are as follows

    1. Set T to a large value.
    2. (Configuration step) Initialize the surface as a point set (x1, y1, z1) . . . (xn, yn, zn) and compute its energy E.
    3. (Rearrangement step) Deform the surface by generating a new position (x′1, y′1, z′1) . . . (x′n, y′n, z′n) for the landmarks along their direction perpendicular to the surface. The search algorithm may either opt to displace one randomly chosen landmark at a time applying a certain step size, or displace all of them simultaneously. Efficient set of moves may be obtained by tracking the sense (surface inward or surface outward) in which the move of each point occurs and continuing when it is in the direction of lower energy.
    4. (Objective function step) The energy E′ of the resulting surface is computed.


If E′<E accept the change, go to 6.

    5. (Annealing schedule) compute p=exp[−(E′−E)/kT].


If p>P, then accept the change, i.e. although the new surface involves an energy increase w.r.t. the previous surface, the probability is sufficiently high to accept the uphill step. P is a random number between 0 and 1.

    6. (Annealing schedule) Decrease T slightly. If T>Tmin go to 3, else stop.


As this step gradually lowers the temperature, the uphill moves become gradually less likely until for low values of T such moves become impossible, meaning that the solution starts to settle in towards the final segmentation, only allowing small refinements.
Because the tree-based methods follow a systematic path through the points on the surface, and because no unique tree exists, the solution for the surface segmentation may be suboptimal. The simulated annealing method has no pre-defined path, enabling a greater chance of getting into the global optimum, however at the expense of requiring more computation time.
Step 3. Unweighted and Weighted PCA Contour Fitting
In the previous step, each landmark i is given a new location j*i. The sequence (j*1, . . . , j*n) represents a contour that may be fitted in the shape model x≈ x+Φb by substituting it for x and deriving b by solving Φb=x− x. Fitting x in the shape model means finding a b such that x+Φb approximates x with small errors in the high confidence landmarks.
Un-Weighted PCA Contour Fitting
Since Φε there are more equations than unknowns, and the system is over-determined, having no exact solution. Therefore, ∥(Φb−(x− x)∥p must be minimized for some suitable choice of p. Different norms render different optimum solutions. In particular the case of p=2, the least squares problem, is more tractable, and is solved in the prior art by methods based on normal equations and the QR factorization. Denoting the difference between actual point sequence and the fitted point sequence as the fit error e=x−( x+Φb), the problem is to seek the b to minimize eTe. Substituting for e, this optimization problem becomes




  
    
      min
      b
    
    ⁢
    
      J
      ⁡
      
        (
        b
        )
      
    
  
  =
  
    
      
        min
        b
      
      ⁢
      
        
          e
          T
        
        ⁢
        e
      
    
    =
    
      
        min
        b
      
      ⁢
      
        
          (
          
            
              
                (
                
                  x
                  -
                  
                    x
                    _
                  
                
                )
              
              T
            
            -
            
              
                b
                T
              
              ⁢
              
                Φ
                T
              
            
          
          )
        
        ⁢
        
          
            (
            
              
                (
                
                  x
                  -
                  
                    x
                    _
                  
                
                )
              
              -
              
                b
                ⁢
                
                  
                
                ⁢
                Φ
              
            
            )
          
          .
        
      
    
  




J(b) is minimized if ∇J(b)=0. The gradient ∇J(b) of J(b) can be written

∇J(b)=−2ΦTW2(x− x)+2ΦTW2Φb. 

Hence the optimization problem leads to the equations

∇J(b)=0ΦTΦb=ΦT(x− x),

known as the normal equations. These are solved for b as

b=(ΦTΦ)−1ΦT(x− x)

This equation projects the data vector x of the image space into the PCA model space and returns the approximation coefficients b. The approximation result b may be projected back in image space by evaluating the shape model x= x−Φb.
Weighted PCA Contour Fitting
The corresponding number of votes Ni,j*i may be used as weights when fitting the contour into the shape model. As a consequence, the PCA model will tend to give a high priority to the high confidence points. Points with a low confidence rate will lessen their influence on the contour that the model generates. The optimization problem now consists of minimizing the weighted quadratic error (We)T(We). Using a similar approach with normal equations as in the un-weighted case, this problem leads to the solution for b expressed as

b=(ΦTW2Φ)−1ΦTW2(x− x).

This equation is evaluated to project x in the PCA space and may be projected back using the shape model x= x+Φb.
Steps 1 to 3 are iterated until a stop criterion is fulfilled, e.g. when the positions of the landmarks do not change substantially between successive iterations.
Both the un-weighted and weighted PCA fitting yields the final segmentation result as a set of landmark points x in the image. A continuous spline curve may be interpolated through these points to represent the segmentation analytically.
Modeling System II (FIG. 3)
Gray Level Appearance Model
The gray level appearance model captures the spatial intensity distribution in the neighborhood of landmarks. In this embodiment, the spatial model departs from circular profiles sampled in the neighborhood of a landmark. The number n of landmarks that is used to accurately describe a lung field outline may be as low as 14, e.g. landmark 1 denotes the uppermost point of each lung field, landmark 7 is positioned at the cross section of either the left or right heart shadow with their respective hemi-diaphragm, landmark 9 denoting the costophrenic angle. The other landmarks are equidistantly positioned between these major landmarks. Obviously, a higher number of landmarks may be used also in the computational scheme according to the present invention.
Circular Profiles
An alternative way for selecting the points in the neighborhood of a landmark is to sample points on a circle with center at the landmark and at least one radius. An example of a circular sampling is given in FIG. 9. If the landmark is located at (x0, y0), the gray value function of the image is sampled at radius rc at the points




  
    
      
        (
        
          
            
              x
              0
            
            +
            
              
                r
                c
              
              ⁢
              cos
              ⁢
              
                
                  2
                  ⁢
                  π
                
                
                  n
                  c
                
              
              ⁢
              
                (
                
                  i
                  -
                  1
                
                )
              
            
          
          ,
          
            
              y
              0
            
            +
            
              
                r
                c
              
              ⁢
              sin
              ⁢
              
                
              
              ⁢
              
                
                  2
                  ⁢
                  π
                
                
                  n
                  c
                
              
              ⁢
              
                (
                
                  i
                  -
                  1
                
                )
              
            
          
        
        )
      
      ⁢
      
        
      
      ⁢
      i
    
    =
    1
  
  ,
  ...
  ⁢
  
    
  
  ,
  
    
      n
      c
    
    .
  




The samples are put in a profile vector of length nc. Suitable choices of nc are 12, 8, 6, 4 and 3 (corresponding to 30, 45, 60, 90 and 120 degree angular spacing). Multiple circular sub-samplings at a set of radii may be considered simultaneously. Suitable radii rc, expressed dimensionless as a fraction of the image size, are 0.05 and 0.025.
This scheme has the advantage over the linear profiles that it captures the 2D structure around the neighborhood. Specific anatomical landmarks such as the costophrenic corner point or the intersection of the left heart shadow with the left diaphragm are better modeled by circular profiles than linear profiles for they have discontinuous first derivative of the lung field contour. Landmarks along the lung field contour in the vicinity of these specific anatomical landmarks may also ambiguously be represented by a linear profile if its length is too long, for then the profile may cross the juxtaposed lung field border.
The circular profile may be normalized such that the sum of absolute values of the elements in the profile is 1. The degree of sub-sampling may range from no sub-sampling (yielding a re-sampling at original resolution of the image) to very sub-sampled, e.g. only 4 points on the main axes in the case of a circular profile.
In three dimensions, a novel scheme to sample the neighborhood of a landmark in the volume is adopted. An appropriate choice is to sample on a sphere centered at the landmark with coordinates (x0, y0, z0) and having radius rc. Isotropic 3D sampling of the (x, y, z) coordinates on the sphere must be achieved, i.e. the point density on the spherical surface must be equal everywhere. When a spherical polar coordinate system is adopted, with φ denoting the angle w.r.t. the positive x axis in the xy plane, and θ the angle w.r.t. the z axis, and rc the radius w.r.t. the origin centered at the landmark, the mapping to Cartesian coordinates is

x=rc sin θ cos φ

y=rc sin θ sin φ.

z=rc cos θ

φ (the longitude) can be sampled directly in a uniform way between [0 . . . 2π] as in the 2D case, i.e.




  
    φ
    =
    
      
        
          
            2
            ⁢
            π
          
          
            n
            1
          
        
        ⁢
        
          (
          
            i
            -
            1
          
          )
        
        ⁢
        
          
        
        ⁢
        i
      
      =
      1
    
  
  ,
  ...
  ⁢
  
    
  
  ,
  
    
      n
      1
    
    .
  




However, for equal spacing of θ (the latitude), the projections on the z axis are more dense near the poles, hence the sampling in z can only be made uniform when cos θ is sampled uniformly between [−1 . . . 1] instead of θ being sampled uniformly between





  
    [
    
      
        -
        
          π
          2
        
      
      ,
      
        π
        2
      
    
    ]
  
  .




Hence





  
    θ
    =
    
      
        
          arccos
          ⁡
          
            (
            
              j
              
                n
                2
              
            
            )
          
        
        ⁢
        
          
        
        ⁢
        j
      
      =
      
        -
        
          n
          2
        
      
    
  
  ,
  ...
  ⁢
  
    
  
  ,
  
    n
    2
  




is the sampling for θ.





  
    t
    1
  
  =
  
    
      
        
          2
          ⁢
          π
        
        
          n
          1
        
      
      ⁢
      
        
      
      ⁢
      and
      ⁢
      
        
      
      ⁢
      
        t
        2
      
    
    =
    
      1
      
        n
        2
      
    
  




are the periods for the longitude resp. latitude.

A number of concentric spheres may be considered simultaneously to sample the neighborhood. The advantage of the spherical sampling is that the Euclidean distance, defined as d2((x1, y1, z1), (x2, y2, z2))=((x2−x1)2+(y2−y1)2+(z2−z1)2)1/2, of all samples to the landmark's position is equal. Alternatively, the computationally less expensive city-block distance, defined as d1((x1, y1, z1), (x2, y2, z2))=|x2−x1|+|y2−y1|+|z2−z1|, may be used, producing samplings on a diamond shape centered on the landmark, with vertices on the axes; or the L∞ norm or chess-board distance, defined as d∞((x1, y1, z1), (x2, y2, z2))=max(|x2−x1|,|y2−y1|,|z2−z1|), producing cubes as iso-distance surfaces, with sides parallel to the axes. The latter scheme has the advantage that it may avoid interpolation in an isotropic volume, when the distance from the center is chosen as a multiple of the voxel size.
Gray-Level Feature Images
The image structure around a landmark is captured in a number N of mathematical features as outlined in the summary of the invention. The feature images are obtained by computing a number of moments of the local histogram of derivative images in a window with width α around each location x0. In a preferred embodiment the first and second histogram moments, all derivatives up to second-order (L, Lx, Ly, Lxx, Lyy, Lxy) and 5 inner scales (σ=0.5, 1, 2, 4, 8 pixels) are computed, amounting to a total of N=2×6×5=60 feature images. The window scale to compute the histogram is in accordance to the inner scale, i.e. α=2σ. The set of feature images can be regarded as a gray-level decomposition of the gray-level function in the neighborhood of a landmark.
Gray-Level Cost
The Mahalanobis distance between a new profile gi,j, sampled in a new feature image j for a certain landmark its computed as

hi,j(p)=(gi,j(p)− gi,j)TSi,j−1(gi,j(p)− gi,j)

A smaller Mahalanobis distance means a larger probability that the profile gi,j(p) originates from the Gaussian distribution with mean gi,j and covariance Si,j. Hence, the Mahalanobis distance may be used as a gray-level cost measure, denoted as hi,j(p). This cost measure is a function of the location p in a given image. The location that most likely is the true location for the landmark i, in accordance to feature j, is the point p that minimizes hi,j(p). This gray-level cost can thus be defined for each feature j.
A total gray-level cost is obtained by combining all gray-level costs for all features j in a sum




  
    
      h
      i
    
    ⁡
    
      (
      p
      )
    
  
  =
  
    
      ∑
      
        j
        =
        1
      
      N
    
    ⁢
    
      
        
          (
          
            
              
                g
                
                  i
                  ,
                  j
                
              
              ⁡
              
                (
                p
                )
              
            
            -
            
              
                g
                _
              
              
                i
                ,
                j
              
            
          
          )
        
        T
      
      ⁢
      
        
          S
          
            i
            ,
            j
          
          
            -
            1
          
        
        ⁡
        
          (
          
            
              
                g
                
                  i
                  ,
                  j
                
              
              ⁡
              
                (
                p
                )
              
            
            -
            
              
                g
                _
              
              
                i
                ,
                j
              
            
          
          )
        
      
    
  




reflecting the similarity between the gray-level pattern at p and the expected gray-level pattern at landmark i. The location most likely to coincide with landmark i, in accordance to the gray-level appearance, is the solution of the optimization problem




  
    p
    o
  
  =
  
    arg
    ⁢
    
      
        min
        p
      
      ⁢
      
        
          
            h
            i
          
          ⁡
          
            (
            p
            )
          
        
        .
      
    
  




To construct the gray-level appearance model, the distributions ( gi,j, Si,j) of the feature profiles gi,j (for all landmarks i=1, . . . , n, for all feature images j=1, . . . , N have to be estimated from the training images.
In three dimensions, the cost function at a certain 3D point p is likewise evaluated as the Mahalanobis distance hi,j(p) between a new 3D voxel-level profile gi,j sampled spherically at the 3D point p in a new 3D feature image j for a certain 3D landmark i. A total gray-level cost is likewise obtained by combining all gray-level costs for all features j in a sum hi(p), reflecting the similarity in a spherically sampled neighborhood between the gray-level pattern at p and the expected gray-level pattern at landmark i. To search the most likely location for the 3D landmark i, an optimization problem must be solved.
To construct the gray-level appearance model in the 3D case, the distributions ( gi,j, Si,j) of the spherically shaped feature image samplings gi,j (for all landmarks i=1, . . . , n, for all feature images j=1, . . . , N) have to be estimated from the training volume images.
Shape Model
Whereas a gray-level cost validates a gray-level pattern or a pattern of features, a shape cost is defined to validate a connection between two successive landmarks.
The curve outline, one for each of the lung fields, is described by n points (landmarks). These landmarks are manually determined in a set of s training images, yielding a sequence of points (x1, y1) . . . (xn, yn)=(p1, . . . , pn). These coordinate tuples are subsequently positioned in a vector x=(x1, y1, . . . , xn, yn)T, representing the shape. Considering a pair (pi, pi+1) of estimated positions of successive landmarks. A shape cost is assigned to the vector vi=pi+1−pi, reflecting the plausibility of vi w.r.t. its probability distribution. The distributions of v1, v2, . . . , vn, assumed to have normal distributions around their mean, are estimated from the training shapes. The mean and covariance of vi are noted as vi and Svi respectively. An example of these vector distributions is given in FIG. 10. The vector distributions can be regarded as a first-order (tangential) geometric decomposition of the shape represented by the set of landmarks.
A novel shape cost validating a connection vector vi between two successive landmarks pi, pi+1 (a vector in the plane being fully characterized by its orientation and its length) is the Mahalanobis is distance between vi and its mean vi:

ƒi(vi)=(vi− vi)TSvi−1(vi− vi).

A connection, which is unlikely to happen, because it has large Mahalanobis distance, will get a high shape cost. On the other hand, a zero cost will be assigned to a connection that equals the expected value.
In three dimensions, each landmark i is a node or vertex in the point-based representation connected with edges to a number of vertices vi,j j=1 . . . Vi corresponding to the neighboring landmark nodes on the surface or inside the surface. Each edge is a 3D vector characterized by its orientation in 3D space and a length, and the 3D distribution of each edge is derived from the training image set. In practice, it means that each edge of the polygons covering the surface is learned from the training examples. In particular, when the polygons are triangles, the triples of connection vectors of the three sides of all triangles are modeled. When also points inside the volume are included, and polyhedral cell are defined between the ensemble of points on the surface and inside the volume, the distribution of the edges of the polyhedral decomposition are learned from the training set. In particular, when the polyhedrons are tetrahedrons (composed of four points and six connecting edges, forming four triangular faces), the spatial distribution of each of the six edges is modeled. The covariance matrix Svi effectively models the spatial correlation between the connection vectors, because it captures correlated variation that may exist between the positions of different anatomic landmarks. Alternatively, using the triangulated surface representation or the tetrahedral volume representation, the distribution of the normals of the planar patches formed by the triangles may be modeled also.
Segmentation System II (FIG. 4)
Knowledge about the gray-level appearance of the object in the image and about the shape of the object to be segmented is acquired during the training phase. This knowledge is subsequently used to segment the object in a new image according to the following steps.
Step 1. Rectangular Search Grids Construction.
A rectangular search grid for each landmark i is constructed to constrain the possible locations of the landmark. Each rectangular grid is characterized by the parameters of geometric extent and grid spacing.
The grid spacing rg should be in accordance with the radius rc of the circular profiles of the gray-level appearance model. A suitable relationship is rg=ƒgre with rc the radius and ƒg a fixed fraction. A typical fraction for the grid spacing is ƒg=0.5.
The grid extent and grid position is landmark specific and is represented by xmin, xmin, ymin and ymax. The true (unknown) landmark location (x*, y*) is deemed to lie between the lower and upper borders:

xmin<x*<xmax.

ymin<y*<ymax 

These conditions can only be guaranteed if the grid spans the whole image area (i.e. xmin=ymin=0 and xmax=ymax=1). A more efficient approach is to constrain the search to a relevant part of the image. Assuming that the probability distribution px(x) of the x-coordinate of the landmark is normal with mean x and standard deviation σx (estimated from the training shapes). The grid borders xmin and xmax, jointly defining the grid extent in the x-direction, are chosen such that

∫xminxmax px(x)dx=ƒc 

with ƒc some fraction representing the probability that the condition xmin<x*<xmax is true. A suitable value for the fraction ƒc is 0.995. If the requirement is imposed that the extent is symmetric around the mean x, i.e. xmax− x= x−xmin, the upper border xmax is the value that satisfies




  
    
      1
      
        
          σ
          x
        
        ⁢
        
          
            2
            ⁢
            π
          
        
      
    
    ⁢
    
      
        ∫
        
          x
          _
        
        
          x
          max
        
      
      ⁢
      
        
          exp
          (
          
            -
            
              
                
                  (
                  
                    x
                    -
                    
                      x
                      _
                    
                  
                  )
                
                2
              
              
                2
                ⁢
                
                  σ
                  x
                  2
                
              
            
          
          )
        
        ⁢
        
          d
          x
        
      
    
  
  =
  
    
      1
      2
    
    ⁢
    
      
        f
        c
      
      .
    
  




The lower border is then xmin=2 x−xmax. The borders for the y coordinate are obtained analogously.
In three dimensions, the search grid for each landmark i is a parallelepiped aligned with the coordinate axes. The grid spacing rg should be in accordance with the radius rc of the circular profiles of the gray-level appearance model. A suitable relationship is rg=ƒgrc with rc the radius and ƒg a fixed fraction. A typical fraction for the grid spacing is ƒg=0.5.
The grid extent and grid position is landmark specific and is represented by xmin, xmax, ymin, ymax, zmin, and zmax. The true (unknown) landmark location (x*, y*, z*) is deemed to lie between the lower and upper borders:

xmin<x*<xmax 

ymin<y*<ymax.

zmin<z*<zmax 

These conditions can only be guaranteed if the grid spans the whole image volume (i.e. xmin=ymin=zmin=0 and xmax=ymax=zmax=1. A more efficient approach is to constrain the search to a relevant part of the image. Similar to the 2D approach, the grid extent is derived from the training image set so as to cover a fraction ƒc of the integrated probability distribution function of landmark positions in the 3D volumes. A suitable value for the fraction ƒc is 0.995.
In contrast to the linear profile sampling, that restricts the solution for a landmark to lay on the 1D perpendicular to the current segmentation outline, the search grid enlarges the solution space to lie in a 3D neighborhood around the current landmark.
Step 2. Gray-Level Cost Matrix Construction
The gray-level appearance model is used to find proper locations for each landmark. The m best locations of landmark i, in accordance with the gray level appearance model, are selected as follows.

    
    
        First, a rectangular grid covering a relevant part of the image area around the expected location of each landmark i is defined, according to the previous step.
        Secondly, for each grid point, the total gray-level cost hi(p) is computed. The points pi,1, pi,2, . . . , pi,m corresponding to the m lowest total gray-level costs are selected.
        Thirdly, a gray-level cost matrix C is constructed so that each row i contains the costs of the m most likely locations of landmark i:
    
    






  C
  =
  
    
      [
      
        
          
            
              
                h
                1
              
              ⁡
              
                (
                
                  p
                  
                    1
                    ,
                    1
                  
                
                )
              
            
          
          
            ...
          
          
            
              
                h
                1
              
              ⁡
              
                (
                
                  p
                  
                    1
                    ,
                    k
                  
                
                )
              
            
          
          
            ...
          
          
            
              
                h
                1
              
              ⁡
              
                (
                
                  p
                  
                    1
                    ,
                    m
                  
                
                )
              
            
          
        
        
          
            ⋮
          
          
            
              
            
          
          
            ⋮
          
          
            
              
            
          
          
            ⋮
          
        
        
          
            
              
                h
                i
              
              ⁡
              
                (
                
                  p
                  
                    i
                    ,
                    1
                  
                
                )
              
            
          
          
            ...
          
          
            
              
                h
                i
              
              ⁡
              
                (
                
                  p
                  
                    i
                    ,
                    k
                  
                
                )
              
            
          
          
            ...
          
          
            
              
                h
                i
              
              ⁡
              
                (
                
                  p
                  
                    i
                    ,
                    m
                  
                
                )
              
            
          
        
        
          
            ⋮
          
          
            
              
            
          
          
            ⋮
          
          
            
              
            
          
          
            ⋮
          
        
        
          
            
              
                h
                n
              
              ⁡
              
                (
                
                  p
                  
                    n
                    ,
                    1
                  
                
                )
              
            
          
          
            ...
          
          
            
              
                h
                n
              
              ⁡
              
                (
                
                  p
                  
                    n
                    ,
                    k
                  
                
                )
              
            
          
          
            ...
          
          
            
              
                h
                n
              
              ⁡
              
                (
                
                  p
                  
                    n
                    ,
                    m
                  
                
                )
              
            
          
        
      
      ]
    
    .
  




A typical number m of best points per landmark ranges from 10 to 40.
As the m of best points per landmark are selected independently from the set of m of best points for a neighboring landmark, the situation may arise that one or more of these points are nearer to a non-neighboring landmark. These points will likely be neglected in the final contour segmentation by accounting for the is shape cost in the next step.
In three dimensions, the equivalent of a gray-level cost matrix is the gray-level cost graph with each node having a multiplicity representing the number of m lowest total gray-level cost points for the landmark. As in the 2D case, the gray-level appearance model is used to find proper locations for each landmark. The m best locations of landmark i, in accordance with the gray level appearance model, are selected as follows.

    
    
        First, a 3D grid covering a relevant part of the image area around the expected location of each landmark i is defined, according to the previous step.
        Secondly, for each 3D grid point, the total gray-level cost hi(p) is computed, using the spherically sampled neighborhood. The points pi,1, pi,2, . . . , pi,m corresponding to the m lowest total gray-level costs are selected.
        Thirdly, a gray-level cost graph G is constructed, each node i having a multiplicity m, to contain the costs of the m most likely 3D locations of landmark i. The graph is constructed starting from a node of the surface triangulation and, following the edges, linking successively all nearest neighbors on the surface. In each node, the m lowest total gray-level cost points of the previous step are stored. A typical number m of best points per 3D landmark ranges from 10 to 40.
    
    


Because the only criterion is gray-level cost, this step may lead to the situation that a node comprises points in its set of m most likely points that are nearer in 3D space to non-neighboring nodes of node i, especially when the landmarks are densely sampled over the surface. These points will likely be neglected in the final surface segmentation by accounting for the shape cost in the next step, i.e. they will represent unlikely connections.
Step 3. Minimal Cost Path Construction
Determining the contour that segments the object is reduced to finding a path from top to bottom through the matrix C by selecting one element per row. Denoting the index of the selected element in row i as ki, the curve becomes the point sequence {p1,k1p2,k2, . . . , pn,kn}. The optimal path (k*1,k*2, . . . , k*n) is the path that minimizes a cost function J(k1, . . . , kn):




  
    (
    
      
        k
        1
        *
      
      ,
      
        k
        2
        *
      
      ,
      ...
      ⁢
      
        
      
      ,
      
        k
        n
        *
      
    
    )
  
  ⁢
  arg
  ⁢
  
    
      min
      
        
          k
          1
        
        ,
        
          
        
        ⁢
        ...
        ⁢
        
          
        
        ,
        
          k
          n
        
      
    
    ⁢
    
      
        J
        ⁡
        
          (
          
            
              k
              1
            
            ,
            ...
            ⁢
            
              
            
            ,
            
              k
              n
            
          
          )
        
      
      .
    
  




The models introduced above admit a number of cost measures. Considering two successive landmarks pi,ki and pi+1,ki+1, a cost component according to the gray-level appearance model and a cost component according to the shape model are:

    
    
        The gray level costs hi(pi,ki) and hi+1(pi+1,ki+1) corresponding to the landmarks pi,ki and pi+1,ki−1;
        The shape cost ƒi(pi+1,ki+1−pi,ki), which validates the plausibility of the connection from pi,ki to pi+1,ki+1.

Both cost types can be incorporated in the cost function J(k1, . . . , kn) by means of a weighted sum of an overall gray-level cost and an overall shape cost. The overall gray-level cost with weight factor γ1 is the sum of the landmark individual gray-level costs hi(pi,ki), i=1, . . . , n. The overall shape cost with weight factor γ2 is the sum of the shape costs ƒi(pi+1,ki+1−pi,ki), i=1, . . . , n. Hence the cost function J(k1, . . . , kn) becomes

    
    






  
    J
    ⁡
    
      (
      
        
          k
          1
        
        ,
        ...
        ⁢
        
          
        
        ,
        
          k
          n
        
      
      )
    
  
  =
  
    
      
        γ
        1
      
      ⁢
      
        
          ∑
          
            i
            =
            1
          
          n
        
        ⁢
        
          
            h
            i
          
          ⁡
          
            (
            
              p
              
                i
                ,
                
                  k
                  i
                
              
            
            )
          
        
      
    
    +
    
      
        γ
        2
      
      ⁢
      
        
          ∑
          
            i
            =
            1
          
          
            n
            -
            1
          
        
        ⁢
        
          
            f
            i
          
          ⁡
          
            (
            
              
                p
                
                  
                    i
                    +
                    1
                  
                  ,
                  
                    k
                    
                      i
                      +
                      1
                    
                  
                
              
              -
              
                p
                
                  i
                  ,
                  
                    k
                    i
                  
                
              
            
            )
          
        
      
    
    +
    
      
        γ
        2
      
      ⁢
      
        
          
            f
            n
          
          ⁡
          
            (
            
              
                p
                
                  1
                  ,
                  
                    k
                    1
                  
                
              
              -
              
                p
                
                  n
                  ,
                  
                    k
                    n
                  
                
              
            
            )
          
        
        .
      
    
  




The optimal path (k*1,k*2, . . . , k*n) that minimizes J(k1, . . . , kn) is called a Minimal Cost Path. The optimal path is computed using dynamic programming techniques known in the prior art, such as introduced in G. Behiels et al., Evaluation of image features and search strategies for segmentation of bone structures using active shape models, Medical Image Analysis, 6(1):47-62, 2002. A typical weight factor for the gray-level cost is γ1=1, and for the shape cost γ2=0.25.
FIG. 13 shows the automatic segmentation of three thorax images according to the system outlined before, and compares it to the manual segmentation performed by an experienced radiologist. The 14 auto-placed landmarks on each lung field are shown, along with a continuous spline interpolation through them.
In three dimensions, a minimal cost surface construction to determine the optimal segmented surface may likewise use the combination of a gray-level cost and a shape cost. As in the previous module using linear samplings, the path through the points of the surface graph may be in the form of a traversal of a Minimum Spanning Tree (MST) or a depth first tree.
Determining the surface that segments the object is reduced to finding one of the m points per landmark node on the surface. Denoting the index of the selected element in node i as ki, the surface becomes the point sequence {p1,k1, p2,k2, . . . , pn,kn} of the traversed tree. The optimal surface (k*1,k*2, . . . , k*n) is the point set that minimizes a cost function J(k1, . . . , kn):




  
    (
    
      
        k
        1
        *
      
      ,
      
        k
        2
        *
      
      ,
      ...
      ⁢
      
        
      
      ,
      
        k
        n
        *
      
    
    )
  
  =
  
    arg
    ⁢
    
      
        min
        
          
            k
            1
          
          ,
          
            
          
          ⁢
          ...
          ⁢
          
            
          
          ,
          
            k
            n
          
        
      
      ⁢
      
        
          J
          ⁡
          
            (
            
              
                k
                1
              
              ,
              ...
              ⁢
              
                
              
              ,
              
                k
                n
              
            
            )
          
        
        .
      
    
  




The models introduced above admit a number of cost measures. Considering two neighboring landmarks pi,ki and pi+1,ki+1 connected by an arc, a cost component according to the gray-level appearance model and a cost component according to the shape model are:

    
    
        The gray level costs hi(pi,ki) and hi+1(pi+1,ki+1) corresponding to the neighboring landmarks pi,ki and pi+1,ki+1 on the surface (or, additionally, inside the surface) connected by an arc;
        The shape cost ƒi(pi+1,ki+1−pi,ki) which validates the plausibility of the connection vector in 3D space from pi,ki to pi+1,ki+1, the vector being fully characterized by its orientation and length.
    
    


Both cost types can be incorporated in the cost function J(k1, . . . , kn) by means of a weighted sum of an overall gray-level cost and an overall shape cost. The overall gray-level cost with weight factor γ1 is the sum of the landmark individual gray-level costs hi(pi,ki), i=1, . . . , n. The overall shape cost with weight factor γ2 is the sum of the shape costs ƒi(pi+1,ki+1−pi,ki), i=1, . . . , n. Hence the cost function J(k1, . . . , kn) becomes




  
    J
    ⁡
    
      (
      
        
          k
          1
        
        ,
        ...
        ⁢
        
          
        
        ,
        
          k
          n
        
      
      )
    
  
  =
  
    
      
        γ
        1
      
      ⁢
      
        
          ∑
          
            i
            =
            1
          
          n
        
        ⁢
        
          
            h
            i
          
          ⁡
          
            (
            
              p
              
                i
                ,
                
                  k
                  i
                
              
            
            )
          
        
      
    
    +
    
      
        γ
        2
      
      ⁢
      
        
          ∑
          
            i
            =
            1
          
          
            n
            -
            1
          
        
        ⁢
        
          
            f
            i
          
          ⁡
          
            (
            
              
                p
                
                  
                    i
                    +
                    1
                  
                  ,
                  
                    k
                    
                      i
                      +
                      1
                    
                  
                
              
              -
              
                p
                
                  i
                  ,
                  
                    k
                    i
                  
                
              
            
            )
          
        
      
    
    +
    
      
        γ
        2
      
      ⁢
      
        
          
            f
            n
          
          ⁡
          
            (
            
              
                p
                
                  1
                  ,
                  
                    k
                    1
                  
                
              
              -
              
                p
                
                  n
                  ,
                  
                    k
                    n
                  
                
              
            
            )
          
        
        .
      
    
  




The sequence p1, . . . , pn represents the chain of visited nodes as the tree is traversed. The optimal surface (k*1,k*2, . . . , k*n) that minimizes J(k1, . . . , kn) is called a Minimal Cost Surface.
Computational Speed-Up Refinements
The segmentation method consisting of steps 1-3 can be applied to segment only part of the outline of one or more anatomic entities. To this purpose the rectangular search grid is only constructed for a subset of consecutive landmarks. The gray level cost matrix will comprise a number of rows equal to the number of retained landmarks. The minimum cost path construction will minimize a cost function that only comprises a gray level term and a shape term for the retained landmarks. The resulting segmentation traces only that outline part that is covered by the retained landmarks. The obvious advantage of partial segmentation is computational speed when one is only interested in part of the anatomic entity outline, or when only some specific landmarks need to be located to obtain specific measurements.
Another algorithmic refinement to speed up the computation of the segmentation is to use a coarse-to-fine multi-resolution approach. The gray-level appearance and shape models are constructed on a multi-resolution representation for each landmark, introducing the spatial scale as a new dimension. Two alternatives are implemented to this purpose, both applying the segmentation concept over successively finer resolution levels.
In one alternative, during segmentation, the number of points in a profile, the number of points in the search grid and the number of landmark points along the contour are decreased in the original image. The positional precision of the landmarks is then increased by successively increasing the resolution of the search grid in the vicinity of the previous solution (the total number of considered points in the profile and search grid may thus be held constant at each iteration), and applying the finer resolution gray-level and shape models.
In another alternative, the multi-resolution approach may be implemented using a number of levels of a Gaussian and Laplacian pyramid and their associated derivative feature images. The initial position of the landmarks is determined on a coarse level, and is tracked to its final position on the finest level using the intermediate positions of the previous level as the starting position for the next level. Because the coarse resolution images contain fewer details, the search space will likely contain less false minima which will enable faster optimization at a given level and faster locating the landmarks towards their final position.
Training the Segmentation Models
A number of thoracic images is collected from an image repository, and presented sequentially in a Graphical User Interface. The following steps are performed to build the segmentation models:
An experienced user manually segments the lung fields in each displayed image, by indicating—using left mouse clicks— a number of points along the contour that delineates the lung field. These points need not be spaced equidistantly along the lung field outline; the only requirement is that the point set collectively approximates the lung field to a sufficiently high degree. To access the anatomic fit, a spline curve is continually interpolated through the manually positioned points determined so far, until the curve is closed from the last point to the first point by a right mouse click. Manual segmentation adjustments can be made by dragging an individual point towards a new position. The resulting outline is again assessed with respect to anatomical correctness.
Next, a number of landmarks will be auto-placed on the manual segmented lung field contour. In order to achieve that identical landmarks on all images of the training set map on each other, the user positions a few number of easily discernible landmarks, the other landmarks are obtained by equidistantly placing points on the lung field contour. In the case of lung field outlines, a number of easily discernable landmarks are the topmost lung field point, the point denoting the costophrenic angle and the junction of heart shadow and hemi-diaphragm, a sub-total of three. Next a number of total landmarks are chosen, a suitable choice ranging from 14 to 40 for example. In the 14 landmark case, the points p1, p7 and p9 represent the three fixed landmarks, five points are evenly distributed between p1 and p7, one point between p7 and p9, and another five points between p9 and p1. This step is performed separately on left and right lung fields.
Next, parameters pertaining to the training phase are asked: (a) image size for training (and segmentation), a typical value is 256 or 512; (b) fraction of the shape variance to be explained by the Principal Components Analysis (PCA), a typical value being 0.9999; (c) number of points in the profile, either linear or circular, a typical value for the circular profile being 12, 8, 6, 4 or 3; (d) radius of the circular profile as a fraction of the image dimension, typical values being 0.04, 0.03, 0.02.
Training of the gray-level appearance model: (a) decomposition of the gray-level function around the landmarks, i.c. computation of N feature images e.g. the local histogram moments of gray-value derivatives as outlined before, and (b) collection of the gray value distribution of the linear or circular profiles at the landmarks pi, i.c. computation of gi,j,i=1 . . . n,j=1 . . . N and the covariance matrices Si,j,i=1 . . . n,j=1 . . . N (i.e. for each landmark i in feature image j). This step generates the statistical gray-level appearance knowledge.
Training of the shape model: (a) computation of geometric decomposition of the zeroth order (positional) information contained in the landmarks, i.c. computation of the mean shape x and the t principal modes of variation (eigenshapes) arranged columnwise in a matrix b; (b) computation of the vector distributions (first order tangential information) contained in the connection sequence of landmarks, i.c. computation of the mean vi and covariance Svi of vi. This step generates the statistical shape knowledge.
Storage of the statistical gray-level appearance and shape knowledge, e.g. to be used to segment the lung fields in a new image according to the model-based segmentation sub-systems given above.
Application of the Model-Based Segmentation in 2D Images to the Computation of the Cardio-Thoracic Ratio (CTR)
An application of the automated lung field segmentation is the computation of the Cardiothoracic Ratio (CTR). The CTR (FIG. 6) is defined as the ratio of the transverse diameter of the heart to the internal diameter of the thorax (ID):




  CTR
  =
  
    
      MLD
      +
      MRD
    
    ID
  




with MLD the maximum transverse diameter on the left side of the heart and MRD the maximum transverse diameter on the right side of the heart. This index is an important clinical parameter, which varies for an adult between 39% and 50% with an average of about 45%. A cardiothoracic index higher than 50% is considered abnormal. Possible causes are cardiac failure, pericardial effusion and left or right ventricular hypertrophy. It is possible to compute the cardiothoracic ratio automatically, using the automatic lung field segmentation as disclosed in the present invention.

Referring to FIG. 8, the characteristic point defining MRD is obtained by selecting the Cartesian leftmost point on the fitted contour segment between landmarks p1 and p9 of the right lung segmentation; the characteristic point defining MLD is obtained by selecting the Cartesian rightmost point on the fitted contour segment between landmarks p1 and p7 of the left lung segmentation. The sum MLD+MRD is obtained by subtracting the column coordinates of these characteristic points and taking the absolute value. Similarly, the ID is obtained by selecting the Cartesian leftmost point on the fitted contour segment between landmarks p1 and p7 of the right lung segmentation and the Cartesian rightmost point on the fitted contour segment between landmarks p1 and p9 of the left lung segmentation, subtracting the column coordinates of these characteristic points and taking the absolute value.
FIG. 14 shows the computation of the characteristic points on the segmented lung fields, and the computation of the cardiothoracic ratio using (a) the manual lung field segmentations resulting in a CTRman=0.47; (b) using the automatically derived lung field segmentations according to the present invention resulting in a CTRautomatic=0.45.
Application of the Model-Based Segmentation and Measurement System to Other Body Parts
The spatial extent of the search grid for each of the landmarks in the lung field segmentation is derived on the basis of the positions of all similar landmarks in a set of training thorax images. The concept of using a search grid for constraining the candidate positions for a given landmark can be extended for other body parts with that may have wider positional, rotational and size variation in the image than that of a lung field in a thorax image, and that do occupy the full image area as opposed to lung fields in a thorax image.
To allow for such positional, rotational and size variation of the body part, the concept of anchor point mapping of the search grids using methods disclosed in European patent application 04076454, entitled “Method for automatically mapping of geometric objects in digital medical images”, may be applied in conjunction with the present invention. The refined method then becomes particular interesting to segment bony body parts in orthopedic radiographs because they are characterized by a relatively constant shape in the image, and they can be anchored to well manifested bony landmarks in the image.
For example, in a pelvis, hip or full leg examination, the femoral outlines can be anchored to well known landmarks such as the tip of the greater trochanter, the knee center and the femoral head center. These anchor points are used to establish an affine transformation between model anchor points and the associated anchor points selected in the actual image. Because a search grid consists of a collection of candidate points arranged in a rectangular lattice around a landmark point on the segmentation model contour in the model image, each of the constituent candidate points is mapped in turn in the actual image by applying the transformation to the model points' coordinates. In this way, the search grid for a given landmark point is reconstructed around the most likely position of the point. The optimization process then proceeds in the manner disclosed above by optimizing a combined gray value and shape cost for a path through a selected combination of candidate locations, one on each search grid. The path with most optimal cost is the final segmentation of the body part. Examples of other bones are hand and upper extremity bones, foot and lower extremity bones, pelvis and spinal vertebrae and structures.
Other body parts that are amenable to this type of landmark-based segmentation are soft-tissue organs in 3D CT of MR images. On the one hand, a slice-by-slice based approach may be taken here, that determines the segmented contour of the anatomy on each slice, and that combines the result of all slices into a 3D segmented surface. On the other hand, a fully 3D approach, extending the current concept on a 3D volume, may be adopted, that builds and applies models for 3D landmarks confined within 3D search grids. Kidneys, lungs, heart, liver, stomach, spleen, prostate and brain structures are examples of organs to which the method of the present invention is applicable.
In all application examples mentioned, measurement points may be based on the position of the landmarks on the segmentation or on a combination of several landmarks (such as a midpoint of two juxtaposed points on either side of the cortex of an elongated bone, a pair of which determines the bone's anatomical axis), and the landmark points may be subsequently fed into a measurement system such as disclosed in EP A 1349098.
Application of the Model-Based Segmentation in 3D Images to the Computation of Total Lung Volumes (TLV)
The approach for segmenting objects in 2D medical images can be extended as previously to segment objects embedded in 3D volumetric image data such as CT or MR. The resulting segmentations may be used to derive quantitative measurements to aid in the diagnosis. These measurements include size measurements such as organ volumes or the volumes of pathological tissues. Quantitative measurements may be used to compare an individual patient to his prior measurements to track disease progression or therapy evolution, or compare a patient to other patients, or to reference values. A measurement quantity frequently derived from volume images is the volume V of an object or organ, represented by the voxels enclosed by the segmented surface S, and computed as




  
    V
    =
    
      
        ∑
        
          v
          ∈
          V
        
      
      ⁢
      
        Δ
        ⁢
        
          
        
        ⁢
        x
        ⁢
        
          
        
        ⁢
        Δ
        ⁢
        
          
        
        ⁢
        y
        ⁢
        
          
        
        ⁢
        Δ
        ⁢
        
          
        
        ⁢
        z
      
    
  
  ,




where Δx and Δy represent the in-slice voxel dimensions and Δz represents the between-slice spacing.

For example, the total lung volume (TLV) can be calculated on the basis of 3D lung field segmentation, and compared against the prior TLV to assess change. Comparison against reference values for the TLV according to age and gender may be used to assess whether the lung volume is indicative of emphysema. Obviously, the TLV computed on the basis of CT lung field segmentations can be divided in a left and right lung volume, which discrimination cannot be obtained by respiratory lung function tests.
The method according to this invention to construct models of anatomic objects and segment these anatomic objects in medical images can be applied to other organs. Examples are the hip or knee outlines on 2D radiographs and bones, brain, thoracic and abdominal structures on CT or MR images. Subsequent measurements can be based on the geometric information that is contained in the segmented surface of the object(s) or, more directly, be based on the positions of the defining landmarks lying on or inside the resulting segmented surface.

## Claims

1. A method of segmenting an anatomic entity in a digital medical image, the method comprising the steps of:
defining, for each of a number of landmark points in the digital medical image, an initial position of each of the landmark points;
connecting a plurality of pairs of the landmark points to each other to form polygons defining a mesh;
constructing a rectangular grid around each of the landmark points in the mesh;
sampling a neighborhood in each rectangular grid around the initial position for each of the connected landmark points in the mesh, the neighborhood including a number of candidate locations of the connected landmark points in the mesh;
calculating a graph data structure for all of the connected landmark points in the mesh, each node (vertex) of the graph data structure representing a connected landmark point of the connected landmark points in the mesh and each edge (arc) of the graph data structure representing the connection between a pair of the landmark points in the mesh;
calculating a path through the graph data structure wherein an order of visiting the connected landmark points in the mesh is determined by the path through the graph data structure, the path being a minimum spanning tree;
optimizing a cost function expressing a weighted sum of an overall gray level cost and an overall shape cost for all of the candidate locations of the connected landmark points in the mesh based on the path; and
calculating a segmented anatomic entity as a surface or a volume through a selected combination of the candidate locations of each of the connected landmark points in the mesh for which combination the cost function is optimized.

2. The method according to claim 1, wherein a cost associated with a candidate location represents a measure of similarity between a sampled gray level pattern at the candidate location and an expected gray level pattern at the landmark point, the measure of similarity expressed by a Mahalanobis distance defined as a distance between the sampled gray level pattern and a mean gray level pattern weighted with an inverse covariance matrix.

3. The method according to claim 2, wherein the feature image is a derivative image at a predefined scale a, or an image representation including mathematical moments of a local histogram of the digital medical image, or a derivative image in a window having a width α around the location of a landmark point.

4. The method according to claim 2, wherein the cost associated with a candidate location is a total gray level cost obtained by summing gray level costs of the candidate location in every feature image of a set of feature images calculated for the digital medical image, the gray level costs expressed as a Mahalanobis distance defined as a distance between a gray value profile at the candidate location with a corresponding mean profile weighted by the inverse covariance matrix, the mean profile and the covariance matrix retrieved from a gray value model associated with the anatomic entity.

5. The method according to claim 4, wherein the gray value model is obtained by the steps of:
sampling a manually segmented surface or volume of the anatomic entity at a number of landmark points;
forming a polygonal mesh of the surface or a polyhedral mesh of the volume of the anatomic entity by connecting respective groups of neighboring landmark points into a polygon or a polyhedron, respectively, such that each edge of the polygon or the polyhedron is shared by at most two polygons;
defining a graph data structure for all of the landmark points, each node (vertex) representing a landmark and each edge (arc) representing a connection between a pair of landmark points;
sampling a number of points in a neighborhood of each of the landmark points;
for each landmark point, arranging sampled points in a neighborhood around a landmark point in a profile;
computing at least one feature image;
computing a mean profile for each landmark point and for each feature image;
computing a covariance matrix of the profiles for each landmark point and each feature image; and
identifying the graph, the mean profiles, and the covariance matrix as a gray value model of the anatomic entity.

6. The method according to claim 5, where the polygon is a triangle.

7. The method according to claim 5, where the polyhedron is a tetrahedron.

8. The method according to claim 1, wherein the overall gray level cost is a combination of all individual gray level costs of a profile in a number of feature images, and the individual gray level cost is a Mahalanobis distance defined as a distance between the profile and the mean profile of that feature weighted with an inverse of the covariance matrix, the mean profile and the covariance matrix being retrieved from a gray value model of the anatomic entity.

9. The method according to claim 8, wherein the gray value model is obtained by the steps of:
sampling a manually segmented surface or a volume of the anatomic entity at a number of landmark points;
forming a polygonal mesh of the surface or a polyhedral mesh of the volume of the anatomic entity by connecting respective groups of neighboring landmark points into a polygon or a polyhedron, respectively, such that each edge of the polygon or the polyhedron is shared by at most two polygons;
defining a graph data structure for all landmark points, each node (vertex) representing a landmark and each edge (arc) representing a connection between a pair of landmark points;
sampling a number of points in a neighborhood of each of the landmark points;
for each landmark point, arranging sampled points in a neighborhood around a landmark point in a profile;
computing at least one feature image;
computing a mean profile for each landmark point and for each feature image;
computing a covariance matrix of the profiles for each landmark point and each feature image; and
identifying the graph, the mean profiles, and the covariance matrix as a gray value model of the anatomic entity.

10. The method according to claim 1, wherein the overall shape cost is a combination of all individual costs of connection vectors, the connection vectors connecting successive landmark points, for all landmark points in which an individual shape cost is expressed by a Mahalanobis distance defined as a distance of a connection vector between two successive landmark points to a mean connection vector weighted with an inverse of a covariance matrix, the mean connection vector and the covariance matrix being retrieved from a shape model of the anatomic entity.

11. The method according to claim 10, wherein the shape model is obtained by the steps of:
sampling a manually segmented surface or a volume of the anatomic entity at a number of landmark points;
forming a polygonal mesh of the surface or a polyhedral mesh of the volume by connecting groups of neighboring landmark points in a polygon or a polyhedron, respectively;
defining a graph data structure for all landmark points, each node (vertex) representing a landmark point and each edge (arc) representing a connection between a pair of landmark points;
computing connection vectors between pairs of landmark points;
computing a mean connection vector between the pairs of landmark points;
computing a covariance matrix of connection vectors for each connection in the graph data structure; and
identifying the graph, the mean connection vector, and the covariance matrices as a geometric model of the anatomic entity.

12. The method according to claim 1, wherein the cost function is optimized by dynamic programming.

13. The method according to claim 1, wherein the number of candidate locations is reduced by selecting the candidate locations with a minimal total gray value cost, the total gray value cost being a sum over all feature images of all gray value costs for the candidate position in the neighborhood, the gray value cost expressed as a Mahalanobis distance defined as a distance of a gray value profile at the candidate location to a corresponding mean profile weighted with an inverse of a covariance matrix, the mean profile and the covariance matrix retrieved from a gray value model associated with the anatomic entity.

14. The method according to claim 1, wherein the gray value model and the shape model are constructed from and applied to a multi-resolution representation of the digital medical image.

15. The method according to claim 1, wherein the path through the graph data structure is obtained by breadth first traversal.

16. The method according to claim 1, further comprising the steps of:
tracking the position of the landmark points towards a final position in the digital medical image using finer resolutions of the digital medical image; and
calculating, on each resolution level of the digital medical image, a graph data structure.

17. A non-transitory computer-readable medium containing a computer program adapted to carry out, when the computer program runs on a computer, a method according to claim 1.