# Patent

## Title
Method of enhancing the contrast of an image

## Abstract

A method of generating a multiscale contrast enhanced image is described wherein the shape of edge transitions is preserved. Detail images are subjected to a conversion, the conversion function of at least one scale being adjusted for each detail pixel value according to the ratio between the combination of the enhanced center differences and the combination of the unenhanced center differences. Several adaptive enhancement measures are described.

## Background
RELATED APPLICATIONS
This application is a §371 National Phase Application of PCT/EP2008/060058 filed on Jul. 31, 2008, which claims priority to European Patent Application No. 07113866.3 filed on Aug. 6, 2007, and claims the benefit under 35 USC 119(e) of U.S. Provisional Application No. 60/954,849 filed on Aug. 9, 2007, all of which are incorporated herein by reference in their entirety.
FIELD OF THE INVENTION
The present invention relates to a method for enhancing the image quality of an image that is represented by a digital signal.
BACKGROUND OF THE INVENTION
Commonly images represented by a digital signal such as medical images are subjected to image processing during or prior to displaying or hard copy recording.
The conversion of grey value pixels into values suitable for reproduction or displaying may comprise a multi-scale image processing method (also called multi-resolution image processing method) by means of which the contrast of the image is enhanced.
According to such a multi-scale image processing method an image, represented by an array of pixel values, is processed by applying the following steps. First the original image is decomposed into a sequence of detail images at multiple scales and occasionally a residual image. Next, the pixel values of the detail images are modified by applying to these pixel values at least one conversion. Finally, a processed image is computed by applying a reconstruction algorithm to the residual image and the modified detail images.
There are limits for the behavior of the conversion functions. Grey value transitions in the image can be distorted to an extent that the appearance becomes unnatural if the conversion functions are excessively non-linear. The distortions are more pronounced in the vicinity of significant grey level transitions, which may result in overshoots at step edges and loss of homogeneity in regions of low variance facing strong step edges. The risk of creating artifacts becomes more significant for CT images since they have sharper grey level transitions, e.g. at the interface of soft tissue and contrast media. One has to be careful using the multi-scale techniques on CT images.
A multi-scale contrast enhancement algorithm which results in a contrast enhanced image while preserving the shape of the edge transitions has been described in co-pending European patent application 06 125 766.3 filed Dec. 11, 2006.
In one embodiment of this method the contrast of an image that is represented by a digital signal is enhanced by performing the following steps.
The digital signal is decomposed into a multi-scale representation comprising at least two detail images representing detail at multiple scales and approximation images of which the detail images are derived, an approximation image at a scale representing the grey values of said image in which all details at that scale have been omitted.
Next, translation difference images are computed of at least one approximation image.
The values of these translation difference images are non-linearly modified.
Then, an amplification image is computed at least one scale as the ratio of 2 images wherein the first image is computed by combining the modified translation difference images at the same or smaller scale and the second image is created by combining unenhanced translation difference images at the same or smaller scale.
An enhanced multi-scale detail representation is then computed by modifying at least one scale the detail image according to the amplification image at that scale.
Finally an enhanced image representation is computed by applying a reconstruction algorithm to the enhanced multi-scale detail representation.
It is an object of the present invention to further enhance this method.
SUMMARY OF THE INVENTION
The above-mentioned further enhancement is obtained by a method for enhancing the contrast of an image that is represented by a digital signal wherein said digital signal is decomposed into a multi-scale representation comprising at least two detail images representing detail at multiple scales and approximation images of which the detail images are derived, an approximation image at a scale representing the grey values of said image in which all details at that scale have been omitted. Additionally, the method also includes computing translation difference images by pixel-wise subtracting the values of an approximation image at scale s and the values of translated versions of said approximation image. The method further includes non-linearly modifying the values of said translation difference images. Additionally, the method includes computing an amplification image at at least one scale as the ratio of 2 images wherein the first image is computed by combining said modified translation difference images at the same or smaller scale and the second image is created by combining un-enhanced translation difference images at the same or smaller scale, said un-enhanced translation difference images being different from said detail images and an enhanced multi-scale detail representation is computed by modifying at at least one scale the detail image according to the amplification image at that scale. Additionally, the method also includes computing an enhanced image representation by applying a reconstruction algorithm inverting the multi-scale decomposition to the enhanced multi-scale detail representation, wherein at least one of the following actions is performed: (1) said non-linear modification of the values of said translation difference images is steered by (a) characteristic(s) computed out of said approximation image(s) at at least one scale, (2) said non-linear modification of the values of said translation difference images is steered by (a) characteristic(s) computed out of said detail images, (3) said approximation images at a scale are subjected to an adaptive or non-adaptive filter to generate filtered approximation images, (4) an adaptive or non-adaptive filter is applied to the enhanced center difference images, (5) a transform is applied to the enhanced and filtered center difference images.
In the context of the present invention specific terms are defined as follows:
Multi-Scale Decomposition Mechanism:
A multi-scale (or multi-resolution) decomposition of an image is a process that computes detail images of said image at multiple scales of a grey value image. A multi-scale decomposition mechanism generally involves filter banks for computing the detail images. Well-known techniques are for example: the Laplacian pyramid, the Burt pyramid, the Laplacian stack, the wavelet decomposition, QMF (quadrature mirror filter) filter banks.
Approximation Image:
An approximation image is a grey value image that represents the original grey value image at the same or a larger scale, or at the same or a lower resolution. An approximation image at a specific scale is equivalent to the original grey value image in which all details at that scale have been omitted (Mallat S. G., “A Theory for Multiresolution Signal Decomposition: The Wavelet Representation”, IEEE Trans. On Pattern Analysis and Machine Intelligence, vol. 11, no. 7, July 1989).
Detail Image:
A detail image is defined as the difference of information between an approximation image at a certain scale and an approximation image at a smaller scale.
Conversion Operator:
A conversion operator is an operator which generates the pixel-wise modification of the detail pixel values as an intermediate step to create a contrast enhanced version of the grey value image. Such an operator has for example been described in European patent EP 527 525. The modification is defined by a conversion function and can e.g. be implemented as a look up table or as a multiplicative amplification.
Translation Difference Image:
The translation difference images at a scale s are a measurement of elementary contrast in each pixel of an approximation image at scale s. They can be computed by taking the difference of the approximation image at that scale s and a translated version. Other computations for elementary contrast are possible, e.g. the ratio of pixel with a neighboring pixel can be used in case the processing steps are preceded by an exponential transform and followed by a log transform.
Center Difference Image:
A center difference image is computed by applying a combining operator (for example the summation) to translation difference images.
The combining operator can be a linear or non-linear function of corresponding pixel values in the translation difference images.
The prior art method described higher is enhanced by steering the non-linear modification of the values of the translation difference images by one or more characteristics computed out of the approximation images at least one scale or by an approximation image itself.
Examples of these characteristics that are described further on are the average grey value in an area, the local standard deviation etc.
Another example of a characteristic is the presence of predefined image structures or abnormal patterns in an approximation image. An example of such a pattern is a microcalcification in a mammographic image.
The detection of these abnormal patterns can be performed by several techniques reaching from simple filtering to a complex computer aided detection algorithm. For example by means of a binary localization mask the presence of these abnormal patterns can be used to steer the non-linear modification.
In another embodiment the non-linear modification of the values of the translation difference images is steered by (a) characteristic(s) computed out of the detail images or by a detail image itself. Examples are described below.
Approximation images may be filtered as will be explained further on.
The center differences may also be subjected to adaptive or non-adaptive filtering.
In one embodiment the center difference images are identical to the multi-scale detail images or a close approximation of the multiscale detail images.
The present invention is generally implemented as a computer program product adapted to carry out the method of any of the claims when run on a computer and is stored on a computer readable medium.
The methods of the present invention can be applied for enhancing the image quality of medical images such as mammographic images, images obtained by computed tomography etc.
Further advantages and embodiments of the present invention will become apparent from the following description and drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 shows a multi-resolution image processing scheme with different control paths according to this invention, center difference images are computed out of the approximation images at the same scale,
FIG. 2 shows an advanced enhancement functional block making use of characteristics derived from approximation images and/or detail images as steering inputs,
FIGS. 3 and 5 show different implementations of the multi-resolution image processing of the present invention,
FIG. 4 illustrates the image enhancement step of the multi-resolution image processing method illustrated in FIG. 3,
FIG. 6 illustrates the image processing step of the multi-resolution image processing method illustrated in FIG. 5,
FIG. 7 is a legend pertaining to the symbols used in the above figures.



DETAILED DESCRIPTION OF THE INVENTION
This contrast enhancement algorithm is applicable to all multiscale detail representation methods from which the original image can be computed by applying the inverse transformation.
It is applicable to the reversible multi-scale detail representation that can be computed as a weighted sum of translation difference images.
The weighing factors and the translation offsets of the translation difference images can be deducted from the multi-scale decomposition in such a way that the resulting weighted sum of the translation difference images is either identical or an approximation of the detail pixel values.
For these multi-scale detail representations the contrast can be enhanced by applying the conversion operator to the center differences before the weighted sum is computed.
To compute the weighted sum of translation difference images, the approximation image at the same scale (or resolution level) or the approximation images at the smaller scales (or finer resolution levels) can be used.
State-of-the-art multi-scale contrast enhancement algorithms decompose an image into a multi-scale representation comprising detail images representing detail at multiple scales and a residual image.
Some of the important multi-scale decompositions are the wavelet decomposition, the Laplacian-of-Gaussians (or LoG decomposition), the Difference-of-Gaussians (or DoG) decomposition and the Burt pyramid.
The wavelet decomposition is computed by applying a cascade of high-pass and low-pass filters followed by a subsampling step.
The high-pass filter extracts the detail information out of an approximation image at a specific scale.
In the Burt pyramid decomposition the detail information is extracted out of an approximation image at scale k by subtracting the upsampled version of the approximation image at scale k+1.
In a state of the art methods as the one disclosed in EP 527 525 a contrast enhanced version of the image is created by conversion of the pixel values in the detail images followed by multi-scale reconstruction.
All above implementations of multiscale decomposition have a common property. Each pixel value in the detail images can be computed out of an approximation image by combining the pixel values in a moving neighborhood.
In the above cases the combining function is a weighted sum.
For the wavelet decomposition the pixel values in the detail image at scale k are computed as:

dk+1=↓(hd*gk)

gk+1=↓(ld*gk)

with hd a high-pass filter, ld a low-pass filter, * the convolution operator and ↓ the subsampling operator (i.e. leaving out every second row and column).
For the wavelet reconstruction the enhanced approximation image at scale k is computed as:

hk=lr*(↑hk+1)+hr*(↑f(dk+1))

with hr a high-pass filter, lr a low-pass filter and ↑ the upsampling operator (i.e. inserting pixels with value 0 in between any two rows and columns).
For the Burt decomposition the pixel values in the detail image at scale k are computed as:

dk=gk−4g*(↑gk+1)

or

dk=gk−4g*(↑(↓(g*gk)))

or

dk=(1−4g*(↑(↓g)))*gk 

with g a Gaussian low-pass filter and 1 the identity operator.
For the Burt reconstruction the enhanced approximation image at scale k is computed as:

hk−4g*(↑hk+1)+f(dk)

with f(x) the conversion operator.

The Multi-Scale Detail Pixel Values as Weighted Sums
Suppose that in the Burt multi-scale decomposition a 5×5 Gaussian filter is used with coefficients wk,l with k=−2, . . . 2 and l=−2, . . . , 2, the subsampling operator removes every second row and column and the upsampling operator inserts pixels with value 0 in between any two rows and columns.
The pixel at position i,j in the approximation image gk+1 is computed as:




  
    
      g
      
        k
        +
        1
      
    
    ⁡
    
      (
      
        i
        ,
        j
      
      )
    
  
  =
  
    
      ∑
      
        s
        =
        
          -
          2
        
      
      2
    
    ⁢
    
      
        ∑
        
          t
          =
          
            -
            2
          
        
        2
      
      ⁢
      
        
          w
          
            s
            ,
            t
          
        
        ⁢
        
          
            g
            k
          
          ⁡
          
            (
            
              
                
                  2
                  ⁢
                  i
                
                +
                s
              
              ,
              
                
                  2
                  ⁢
                  j
                
                +
                t
              
            
            )
          
        
      
    
  




The pixel at position i,j in the upsampled image uk is computed as:




  
    
      u
      k
    
    ⁡
    
      (
      
        i
        ,
        j
      
      )
    
  
  =
  
    {
    
      
        
          
            
              ∑
              
                s
                =
                
                  -
                  2
                
              
              2
            
            ⁢
            
              
                ∑
                
                  t
                  =
                  
                    -
                    2
                  
                
                2
              
              ⁢
              
                
                  w
                  
                    s
                    ,
                    t
                  
                
                ⁢
                
                  
                    g
                    k
                  
                  ⁡
                  
                    (
                    
                      
                        i
                        +
                        s
                      
                      ,
                      
                        j
                        +
                        t
                      
                    
                    )
                  
                
              
            
          
        
        
          
            if
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            and
            ⁢
            
              
            
            ⁢
            j
            ⁢
            
              
            
            ⁢
            are
            ⁢
            
              
            
            ⁢
            even
          
        
      
      
        
          0
        
        
          otherwise
        
      
    
  




The pixel at position i,j in the upsampled, smoothed image guk is computed as:





  
    
      gu
      k
    
    ⁡
    
      (
      
        i
        ,
        j
      
      )
    
  
  =
  
    {
    
      
        
          
            
              ∑
              
                m
                =
                
                  {
                  
                    
                      -
                      2
                    
                    ,
                    0
                    ,
                    2
                  
                  }
                
              
            
            ⁢
            
              
                ∑
                
                  n
                  =
                  
                    {
                    
                      
                        -
                        2
                      
                      ,
                      0
                      ,
                      2
                    
                    }
                  
                
              
              ⁢
              
                
                  w
                  
                    m
                    ,
                    n
                  
                
                ⁢
                
                  
                    ∑
                    
                      s
                      =
                      
                        -
                        2
                      
                    
                    2
                  
                  ⁢
                  
                    
                      ∑
                      
                        t
                        =
                        
                          -
                          2
                        
                      
                      2
                    
                    ⁢
                    
                      
                        w
                        
                          s
                          ,
                          t
                        
                      
                      ⁢
                      
                        
                          g
                          k
                        
                        ⁡
                        
                          (
                          
                            
                              i
                              +
                              s
                              +
                              m
                            
                            ,
                            
                              j
                              +
                              t
                              +
                              n
                            
                          
                          )
                        
                      
                    
                  
                
              
            
          
        
      
      
        
          
            if
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            and
            ⁢
            
              
            
            ⁢
            j
            ⁢
            
              
            
            ⁢
            are
            ⁢
            
              
            
            ⁢
            even
          
        
      
      
        
          
            
              ∑
              
                m
                =
                
                  {
                  
                    
                      -
                      1
                    
                    ,
                    1
                  
                  }
                
              
            
            ⁢
            
              
                ∑
                
                  n
                  =
                  
                    {
                    
                      
                        -
                        2
                      
                      ,
                      0
                      ,
                      2
                    
                    }
                  
                
              
              ⁢
              
                
                  w
                  
                    m
                    ,
                    n
                  
                
                ⁢
                
                  
                    ∑
                    
                      s
                      =
                      
                        -
                        2
                      
                    
                    2
                  
                  ⁢
                  
                    
                      ∑
                      
                        t
                        =
                        
                          -
                          2
                        
                      
                      2
                    
                    ⁢
                    
                      
                        w
                        
                          s
                          ,
                          t
                        
                      
                      ⁢
                      
                        
                          g
                          k
                        
                        ⁡
                        
                          (
                          
                            
                              i
                              +
                              s
                              +
                              m
                            
                            ,
                            
                              j
                              +
                              t
                              +
                              n
                            
                          
                          )
                        
                      
                    
                  
                
              
            
          
        
      
      
        
          
            if
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            is
            ⁢
            
              
            
            ⁢
            odd
            ⁢
            
              
            
            ⁢
            and
            ⁢
            
              
            
            ⁢
            j
            ⁢
            
              
            
            ⁢
            is
            ⁢
            
              
            
            ⁢
            even
          
        
      
      
        
          
            
              ∑
              
                m
                =
                
                  {
                  
                    
                      -
                      2
                    
                    ,
                    0
                    ,
                    2
                  
                  }
                
              
            
            ⁢
            
              
                ∑
                
                  n
                  =
                  
                    {
                    
                      
                        -
                        1
                      
                      ,
                      1
                    
                    }
                  
                
              
              ⁢
              
                
                  w
                  
                    m
                    ,
                    n
                  
                
                ⁢
                
                  
                    ∑
                    
                      s
                      =
                      
                        -
                        2
                      
                    
                    2
                  
                  ⁢
                  
                    
                      ∑
                      
                        t
                        =
                        
                          -
                          2
                        
                      
                      2
                    
                    ⁢
                    
                      
                        w
                        
                          s
                          ,
                          t
                        
                      
                      ⁢
                      
                        
                          g
                          k
                        
                        ⁡
                        
                          (
                          
                            
                              i
                              +
                              s
                              +
                              m
                            
                            ,
                            
                              j
                              +
                              t
                              +
                              n
                            
                          
                          )
                        
                      
                    
                  
                
              
            
          
        
      
      
        
          
            if
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            is
            ⁢
            
              
            
            ⁢
            even
            ⁢
            
              
            
            ⁢
            and
            ⁢
            
              
            
            ⁢
            j
            ⁢
            
              
            
            ⁢
            is
            ⁢
            
              
            
            ⁢
            odd
          
        
      
      
        
          
            
              ∑
              
                m
                =
                
                  {
                  
                    
                      -
                      1
                    
                    ,
                    1
                  
                  }
                
              
            
            ⁢
            
              
                ∑
                
                  n
                  =
                  
                    {
                    
                      
                        -
                        1
                      
                      ,
                      1
                    
                    }
                  
                
              
              ⁢
              
                
                  w
                  
                    m
                    ,
                    n
                  
                
                ⁢
                
                  
                    ∑
                    
                      s
                      =
                      
                        -
                        2
                      
                    
                    2
                  
                  ⁢
                  
                    
                      ∑
                      
                        t
                        =
                        
                          -
                          2
                        
                      
                      2
                    
                    ⁢
                    
                      
                        w
                        
                          s
                          ,
                          t
                        
                      
                      ⁢
                      
                        
                          g
                          k
                        
                        ⁡
                        
                          (
                          
                            
                              i
                              +
                              s
                              +
                              m
                            
                            ,
                            
                              j
                              +
                              t
                              +
                              n
                            
                          
                          )
                        
                      
                    
                  
                
              
            
          
        
      
      
        
          
            if
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            and
            ⁢
            
              
            
            ⁢
            j
            ⁢
            
              
            
            ⁢
            are
            ⁢
            
              
            
            ⁢
            odd
          
        
      
    
  




Finally, the pixel at position i,j in the detail image dk is computed as:





  
    
      d
      k
    
    ⁡
    
      (
      
        i
        ,
        j
      
      )
    
  
  =
  
    {
    
      
        
          
            
              
                g
                k
              
              ⁡
              
                (
                
                  i
                  ,
                  j
                
                )
              
            
            -
            
              4
              ⁢
              
                
                  ∑
                  
                    m
                    =
                    
                      {
                      
                        
                          -
                          2
                        
                        ,
                        0
                        ,
                        2
                      
                      }
                    
                  
                
                ⁢
                
                  
                    ∑
                    
                      n
                      =
                      
                        {
                        
                          
                            -
                            2
                          
                          ,
                          0
                          ,
                          2
                        
                        }
                      
                    
                  
                  ⁢
                  
                    
                      w
                      
                        m
                        ,
                        n
                      
                    
                    ⁢
                    
                      
                        ∑
                        
                          s
                          =
                          
                            -
                            2
                          
                        
                        2
                      
                      ⁢
                      
                        
                          ∑
                          
                            t
                            =
                            
                              -
                              2
                            
                          
                          2
                        
                        ⁢
                        
                          
                            w
                            
                              s
                              ,
                              t
                            
                          
                          ⁢
                          
                            
                              g
                              k
                            
                            ⁡
                            
                              (
                              
                                
                                  i
                                  +
                                  s
                                  +
                                  m
                                
                                ,
                                
                                  j
                                  +
                                  t
                                  +
                                  n
                                
                              
                              )
                            
                          
                        
                      
                    
                  
                
              
            
          
        
      
      
        
          
            if
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            and
            ⁢
            
              
            
            ⁢
            j
            ⁢
            
              
            
            ⁢
            are
            ⁢
            
              
            
            ⁢
            even
          
        
      
      
        
          
            
              
                g
                k
              
              ⁡
              
                (
                
                  i
                  ,
                  j
                
                )
              
            
            -
            
              4
              ⁢
              
                
                  ∑
                  
                    m
                    =
                    
                      {
                      
                        
                          -
                          1
                        
                        ,
                        1
                      
                      }
                    
                  
                
                ⁢
                
                  
                    ∑
                    
                      n
                      =
                      
                        {
                        
                          
                            -
                            2
                          
                          ,
                          0
                          ,
                          2
                        
                        }
                      
                    
                  
                  ⁢
                  
                    
                      w
                      
                        m
                        ,
                        n
                      
                    
                    ⁢
                    
                      
                        ∑
                        
                          s
                          =
                          
                            -
                            2
                          
                        
                        2
                      
                      ⁢
                      
                        
                          ∑
                          
                            t
                            =
                            
                              -
                              2
                            
                          
                          2
                        
                        ⁢
                        
                          
                            w
                            
                              s
                              ,
                              t
                            
                          
                          ⁢
                          
                            
                              g
                              k
                            
                            ⁡
                            
                              (
                              
                                
                                  i
                                  +
                                  s
                                  +
                                  m
                                
                                ,
                                
                                  j
                                  +
                                  t
                                  +
                                  n
                                
                              
                              )
                            
                          
                        
                      
                    
                  
                
              
            
          
        
      
      
        
          
            if
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            is
            ⁢
            
              
            
            ⁢
            odd
            ⁢
            
              
            
            ⁢
            and
            ⁢
            
              
            
            ⁢
            j
            ⁢
            
              
            
            ⁢
            is
            ⁢
            
              
            
            ⁢
            even
          
        
      
      
        
          
            
              
                g
                k
              
              ⁡
              
                (
                
                  i
                  ,
                  j
                
                )
              
            
            -
            
              4
              ⁢
              
                
                  ∑
                  
                    m
                    =
                    
                      {
                      
                        
                          -
                          2
                        
                        ,
                        0
                        ,
                        2
                      
                      }
                    
                  
                
                ⁢
                
                  
                    ∑
                    
                      n
                      =
                      
                        {
                        
                          
                            -
                            1
                          
                          ,
                          1
                        
                        }
                      
                    
                  
                  ⁢
                  
                    
                      w
                      
                        m
                        ,
                        n
                      
                    
                    ⁢
                    
                      
                        ∑
                        
                          s
                          =
                          
                            -
                            2
                          
                        
                        2
                      
                      ⁢
                      
                        
                          ∑
                          
                            t
                            =
                            
                              -
                              2
                            
                          
                          2
                        
                        ⁢
                        
                          
                            w
                            
                              s
                              ,
                              t
                            
                          
                          ⁢
                          
                            
                              g
                              k
                            
                            ⁡
                            
                              (
                              
                                
                                  i
                                  +
                                  s
                                  +
                                  m
                                
                                ,
                                
                                  j
                                  +
                                  t
                                  +
                                  n
                                
                              
                              )
                            
                          
                        
                      
                    
                  
                
              
            
          
        
      
      
        
          
            if
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            is
            ⁢
            
              
            
            ⁢
            even
            ⁢
            
              
            
            ⁢
            and
            ⁢
            
              
            
            ⁢
            j
            ⁢
            
              
            
            ⁢
            is
            ⁢
            
              
            
            ⁢
            odd
          
        
      
      
        
          
            
              
                g
                k
              
              ⁡
              
                (
                
                  i
                  ,
                  j
                
                )
              
            
            -
            
              4
              ⁢
              
                
                  ∑
                  
                    m
                    =
                    
                      {
                      
                        
                          -
                          1
                        
                        ,
                        1
                      
                      }
                    
                  
                
                ⁢
                
                  
                    ∑
                    
                      n
                      =
                      
                        {
                        
                          
                            -
                            1
                          
                          ,
                          1
                        
                        }
                      
                    
                  
                  ⁢
                  
                    
                      w
                      
                        m
                        ,
                        n
                      
                    
                    ⁢
                    
                      
                        ∑
                        
                          s
                          =
                          
                            -
                            2
                          
                        
                        2
                      
                      ⁢
                      
                        
                          ∑
                          
                            t
                            =
                            
                              -
                              2
                            
                          
                          2
                        
                        ⁢
                        
                          
                            w
                            
                              s
                              ,
                              t
                            
                          
                          ⁢
                          
                            
                              g
                              k
                            
                            ⁡
                            
                              (
                              
                                
                                  i
                                  +
                                  s
                                  +
                                  m
                                
                                ,
                                
                                  j
                                  +
                                  t
                                  +
                                  n
                                
                              
                              )
                            
                          
                        
                      
                    
                  
                
              
            
          
        
      
      
        
          
            if
            ⁢
            
              
            
            ⁢
            i
            ⁢
            
              
            
            ⁢
            and
            ⁢
            
              
            
            ⁢
            j
            ⁢
            
              
            
            ⁢
            are
            ⁢
            
              
            
            ⁢
            odd
          
        
      
    
  




Generally, the pixel at position i,j in the detail image dk can be computed as a weighted sum of pixels in the approximation image at the same or smaller scale k, k−1, k−2, . . . :




  
    
      d
      k
    
    ⁡
    
      (
      
        i
        ,
        j
      
      )
    
  
  =
  
    
      
        g
        l
      
      ⁡
      
        (
        
          ri
          ,
          rj
        
        )
      
    
    -
    
      
        ∑
        m
      
      ⁢
      
        
          ∑
          n
        
        ⁢
        
          
            v
            
              m
              ,
              n
            
          
          ⁢
          
            
              g
              l
            
            ⁡
            
              (
              
                
                  ri
                  +
                  m
                
                ,
                
                  rj
                  +
                  n
                
              
              )
            
          
        
      
    
  




with lε(0, . . . , k) and r=subsampling_factor(l−k) 
Because




  
    
      ∑
      m
    
    ⁢
    
      
        ∑
        n
      
      ⁢
      
        v
        
          m
          ,
          n
        
      
    
  
  =
  1




the pixel at position i,j in the detail image dk can be computed as:



  
    
      
        d
        k
      
      ⁡
      
        (
        
          i
          ,
          j
        
        )
      
    
    =
    
      
        
          g
          l
        
        ⁡
        
          (
          
            ri
            ,
            rj
          
          )
        
      
      -
      
        
          ∑
          m
        
        ⁢
        
          
            ∑
            n
          
          ⁢
          
            
              v
              
                m
                ,
                n
              
            
            ⁢
            
              
                g
                l
              
              ⁡
              
                (
                
                  
                    ri
                    +
                    m
                  
                  ,
                  
                    rj
                    +
                    n
                  
                
                )
              
            
          
        
      
    
  




  
    
      
        d
        k
      
      ⁡
      
        (
        
          i
          ,
          j
        
        )
      
    
    =
    
      
        
          ∑
          m
        
        ⁢
        
          
            ∑
            n
          
          ⁢
          
            
              v
              
                m
                ,
                n
              
            
            ⁢
            
              
                g
                l
              
              ⁡
              
                (
                
                  ri
                  ,
                  rj
                
                )
              
            
          
        
      
      -
      
        
          ∑
          m
        
        ⁢
        
          
            ∑
            n
          
          ⁢
          
            
              v
              
                m
                ,
                n
              
            
            ⁢
            
              
                g
                l
              
              ⁡
              
                (
                
                  
                    ri
                    +
                    m
                  
                  ,
                  
                    rj
                    +
                    n
                  
                
                )
              
            
          
        
      
    
  




  
    
      
        d
        k
      
      ⁡
      
        (
        
          i
          ,
          j
        
        )
      
    
    =
    
      
        
          c
          k
        
        ⁡
        
          (
          
            i
            ,
            j
          
          )
        
      
      =
      
        
          ∑
          m
        
        ⁢
        
          
            ∑
            n
          
          ⁢
          
            
              v
              
                m
                ,
                n
              
            
            ⁡
            
              (
              
                
                  
                    g
                    l
                  
                  ⁡
                  
                    (
                    
                      ri
                      ,
                      rj
                    
                    )
                  
                
                -
                
                  
                    g
                    l
                  
                  ⁡
                  
                    (
                    
                      
                        ri
                        +
                        m
                      
                      ,
                      
                        rj
                        +
                        n
                      
                    
                    )
                  
                
              
              )
            
          
        
      
    
  



The term gl(ri,rj)−gl(ri+m,rj+n) is called a translation difference.
It expresses the difference in pixel value between a central pixel and a neighboring pixel in an approximation image. It is a measure of local contrast.
The weighted sum of the translation differences is called a centre difference ck (i,j).
In a similar way it can be proven that the detail images in other multi-scale decomposition methods can also be represented as a combination of translation difference images.
The Conversion Operation
In state-of-the-art methods like the one disclosed in EP 527 525 contrast enhancement is obtained by applying a conversion operator f(x) to the detail image dk or, equivalently:




  
    f
    ⁡
    
      (
      
        
          d
          k
        
        ⁡
        
          (
          
            i
            ,
            j
          
          )
        
      
      )
    
  
  =
  
    f
    (
    
      
        
          g
          l
        
        ⁡
        
          (
          
            ri
            ,
            rj
          
          )
        
      
      -
      
        
          ∑
          m
        
        ⁢
        
          
            ∑
            n
          
          ⁢
          
            
              v
              
                m
                ,
                n
              
            
            ⁢
            
              
                g
                l
              
              ⁡
              
                (
                
                  
                    ri
                    +
                    m
                  
                  ,
                  
                    rj
                    +
                    n
                  
                
                )
              
            
          
        
      
    
    )
  




An example of such a conversion operator is the sigmoid function. Another example of such conversion operator is the contrast enhancement function like the one disclosed in EP 527 525. The shape of the conversion operator depends on the specific requirements of the enhancement which is intended to amplify the low-value detail pixel more than the high-value detail pixels.
The conversion step may cause deformations of the shape of the edge transitions in the reconstructed, contrast enhanced image. The reason is the non-linearity of the conversion function.
Generally, the following applies to non-linear functions:



  
    
      f
      ⁡
      
        (
        
          x
          +
          y
        
        )
      
    
    ≠
    
      
        f
        ⁡
        
          (
          x
          )
        
      
      +
      
        f
        ⁡
        
          (
          y
          )
        
      
    
  




  or




  
    
      f
      (
      
        
          ∑
          i
        
        ⁢
        
          x
          i
        
      
      )
    
    ≠
    
      
        ∑
        i
      
      ⁢
      
        f
        ⁡
        
          (
          
            x
            i
          
          )
        
      
    
  



State-of-the-art algorithms first compute the pixel values in the detail image dk as weighted sums and apply the conversion step afterwards.
By rewriting the pixel values in the detail image dk as a weighted sum of translation differences, it is possible to apply the conversion step before the summation instead of afterwards.
Contrast enhancement is now obtained by applying the conversion step to the translation differences:




  
    f
    ⁡
    
      (
      
        
          d
          k
        
        ⁡
        
          (
          
            i
            ,
            j
          
          )
        
      
      )
    
  
  =
  
    
      ∑
      m
    
    ⁢
    
      
        ∑
        n
      
      ⁢
      
        
          v
          
            m
            ,
            n
          
        
        ⁢
        
          f
          ⁡
          
            (
            
              
                
                  g
                  l
                
                ⁡
                
                  (
                  
                    ri
                    ,
                    rj
                  
                  )
                
              
              -
              
                
                  g
                  l
                
                ⁡
                
                  (
                  
                    
                      ri
                      +
                      m
                    
                    ,
                    
                      rj
                      +
                      n
                    
                  
                  )
                
              
            
            )
          
        
      
    
  




In this way the shape of the edge transitions is better preserved in the contrast enhanced, reconstructed image.
If for every scale k the detail image at that scale is computed out of the full resolution image g0, and enhancement is applied to the center differences, then the shapes of the edge transitions are best preserved after reconstruction.
Different implementations of the present invention are illustrated in FIGS. 1, 3 and 5. Corresponding enhancement steps are shown in FIGS. 2, 4, and 6.
Functional Blocks Ak 
With the functional blocks Ak desired characteristics can be extracted out of the approximation images gk and/or gk+1. These characteristics can be used as control inputs for the LUT operation in the enhancement block E and/or for optional adaptive filtering of the approximation images and/or the enhanced center difference images.
An approximation image can be used as input for determining any useful characteristic (e.g. histogram, filter coefficients, standard deviation image, gradient image, . . . ).
An example of such a characteristic is an averaging filter to compute the average grey value in a specific neighborhood which makes grey value dependent enhancement possible.
Another characteristic can be the local standard deviation which will result in image activity dependent enhancement.
Still another example is the computation of a gradient image out of an approximation image to perform gradient-driven image enhancement for the purpose of noise reduction.
State of the art multi-scale image processing methods can be used to reduce the noise in a digital image by filtering the detail images. A straightforward implementation is local averaging of the detail images so as to reduce differences between detail coefficients that are due to noise.
However, these straightforward methods are not satisfactory with respect to reducing the noise in the image while retaining the edges, e.g. small details with low contrast can become even less visible.
Better results can be achieved by adaptive filtering (e.g. weighted averaging) of the enhanced center difference images steered by the local gradient. The steering block Ak can thus be used to compute gradient images out of approximation images.
Functional Block Ck
This transformation block can be used to extract certain characteristics out of the detail images. These characteristics can be used as optional control input for the LUT operator and the adaptive filters Bg and Kd (as will be explained further on).
An example of such a characteristic is the computation of the local standard deviation in the detail images as a measurement of noise-exceeding signal in the image. This makes noise-dependent image enhancement possible (e.g. to prevent an increase of the noise in the resulting, enhanced image).
The input to this block is a detail image, the output is a useful characteristic such as a histogram, filter coefficients, standard deviation image, gradient image, . . . . These characteristics are used to control the transformation block, described below.
It is one of the most apparent merits of digital image processing, that contrast can be raised to any feasible level. There is another side of the picture however, in that noise is amplified to the same extent. For that reason secondary control mechanisms are introduced to reduce the amount of contrast enhancement in areas where strong contrast enhancement is undesirable.
A suitable technique is to attenuate the enhancement of the translation differences in regions without prominent image features. An image of the local standard deviation can be computed out of a detail image as Ck(dk). This image can be used to attenuate the translation differences in regions with low standard deviation (almost homogeneous regions).

The result is a reduction of noise in the result image while retaining and even enhancing the edges in the image.

Functional Block LUT

This transformation block is used to create an enhanced version of the center difference images by modifying the translation differences d.
As control input a combination can be used of:

    
    
        Ak−m(gk−m, ↑(gk+1−m))
        Bg(gk−m)
        Ck(dk−m, ↑(dk+1−m))
    
    


The LUT operator can be implemented as a n-dimensional look up table or as an analytic function or as an adaptive filter or as any combination of the previous ones.

    
    
        Input: (optionally filtered) translation differences.
        Optional inputs:
        
            Ak−m(gk−m, ↑(gk+1−m))
            Bg(gk−m)
            Ck−m(dk−m, ↑(dk+1−m))
        
        
        Output: enhanced translation differences.
        Application:
        
            Visualization of a digital image is generally improved by amplifying the contrast of subtle image features, and at the same time attenuating the strong components without the risk of omitting information.
            This contrast equalization is done by generating enhanced multi-scale center difference images.
            For this enhancement, the LUT operator is used to generate enhanced translation differences and these are combined to create enhanced center difference images.
            The degree of enhancement can be steered by any characteristic derived from the approximation images or detail images.
            By using the filtered grey value approximation image itself Bg(gk−m), a grey-value dependent enhancement can be applied.
            For example, it can be useful to enhance the subtle contrasts more in the brighter image regions than the ones in the dark regions (e.g. to make the fine image structures of a mammographic image more visible within the fibroglandular tissue).

Functional Block Bg

The functional block Bg is an optional adaptive or non-adaptive filtering of the approximation images at each scale before the center difference images are computed.

The adaptive filter can be based on the characteristics of the approximation images at the same scale and/or coarser scale Ak(gk, ↑(gk+1)) and/or on the characteristics of the detail images at the same scale and/or coarser scale Ck(dk, ↑(dk+1)).

Input: approximation image.

Optional inputs are

        
        
        characteristics of the approximation image at the scale k−m or scale k+1−m

(with m=0multi-scale processing scheme in FIG. 1;

with m>number of scales−1multi-scale processing scheme in FIG. 3; for intermediate values see FIG. 5).

        characteristics of the detail image at the scale k−m and/or scale k+1−m

(with m=0multi-scale processing scheme in FIG. 1,

    
    


with m>number of scales−1multi-scale processing scheme in FIG. 3; for intermediate values see FIG. 5).
Output: Filtered Approximation Image.
This embodiment can be used as an anti-aliasing measure.
Aliasing is a common problem with the conventional image enhancement processes. Aliasing is produced by the downsampling and upsampling of the approximation images.
If the detail images are not modified, these aliasing effects are cancelled out in the reconstruction process. However, if the adaptive filtering and the LUT conversion are applied to the detail images, there is no proper cancellation of the aliasing effects in the reconstruction process. This will generate artefacts in the enhanced digital image.

The appearance of these aliasing artefacts is reduced by computing the enhanced center difference images instead of the direct enhancement of the detail images.

However, even better image enhancement results can be achieved by pre-filtering the approximation images gk before computing the translation differences.

Adaptive Filter Kd 
The functional block Kd is an optional adaptive or non-adaptive filtering of the enhanced center difference images.
This adaptive filter can be based on the characteristics of the approximation images at the same scale and/or coarser scale Ak(gk−m, ↑(gk+1−m)) and/or on the characteristics of the detail images at the same scale and/or coarser scale Ck(dk−m, ↑(dk+1−m)).
An example is adaptive smoothing of the enhanced center difference image where the steering input Ak(gk−m, ↑(gk+1−m)) is e.g. a gradient image of the approximation image at the coarser scale.

    
    
        Input: enhanced center difference image.
        Optional inputs:
        
            characteristics of the approximation image at the scale k−m and/or scale k+1−m (with m=0multi-scale processing scheme in FIG. 1;
            
                with m>number of scales−1multi-scale processing scheme in FIG. 3; for intermediate values see FIG. 5)
            
            
            characteristics of the detail image at the scale k−m and/or scale k+1−m
            
                (with m=0multi-scale processing scheme in FIG. 1, with m>number of scales−1multi-scale processing scheme in FIG. 3, for intermediate values see FIG. 5).
            
            
        
        
        Output: filtered enhanced center difference image.
        Application: It is one of the most apparent merits of digital image processing, that contrast can be raised to any feasible level. However, noise is amplified to the same extent. For that reason secondary control mechanisms are preferably introduced to reduce the amount of contrast enhancement in areas where strong contrast enhancement is undesirable.
        
            For this purpose the enhanced center difference images can be smoothed in a direction perpendicular to the local gradient (derived from the approximation images Ak(gk−m, ↑(gk+1−m))). This reduces the noise in the resulting image while retaining and even enhancing the edges in the result image.

Transformation Block Ld 

The functional block Ld applies an optional pixel-wise transform to the enhanced center difference images.

        
        
        Input: enhanced center difference image.
        Output: transformed, enhanced center difference image.
        Application:
        
            In case an overall increase of the sharpness of the resulting image is preferred, this can be achieved by amplification of the finest, enhanced center difference images.
            Another example of such an optional transform is the Normalization of the amplitudes of the enhanced center difference images.

## Claims

1. A method for enhancing the contrast of an image that is represented by a digital signal wherein
a. said digital signal is decomposed into a multi-scale representation comprising at least two detail images representing detail at multiple scales and approximation images of which the detail images are derived, an approximation image at a scale representing the grey values of said image in which all details at that scale have been omitted,
b. translation difference images are computed by pixel-wise subtracting the values of an approximation image at a scale and the values of translated versions of said approximation image,
c. the values of said translation difference images are non-linearly modified,
d. an amplification image is computed at at least one scale as the ratio of 2 images wherein the first image is computed by combining said modified translation difference images at the same or smaller scale and the second image is created by combining un-enhanced translation difference images at the same or smaller scale, said un-enhanced translation difference images being different from said detail images,
e. an enhanced multi-scale detail representation is computed by modifying at at least one scale the detail image according to the amplification image at that scale,
f. an enhanced image representation is computed by applying a reconstruction algorithm inverting the multi-scale decomposition to the enhanced multi-scale detail representation,
wherein at least one of the following actions is performed:
(1) said non-linear modification of the values of said translation difference images is steered by (a) characteristic(s) computed out of said approximation image(s) at at least one scale;
(2) said non-linear modification of the values of said translation difference images is steered by (a) characteristic(s) computed out of said detail images;
(3) said approximation images at a scale are subjected to an adaptive or non-adaptive filter to generate filtered approximation images;
(4) an adaptive or non-adaptive filter is applied to the enhanced center difference images;
(5) a transform is applied to the enhanced and filtered center difference images.

2. A method according to claim 1 wherein said characteristic computed out of said approximation image is the average grey value in a predefined image area.

3. A method according to claim 1 wherein said characteristic computed out of said approximation image is the local standard deviation.

4. A method according to claim 1 wherein said characteristic computed out of said approximation image is the presence of predefined image structures or abnormal patterns in said approximation image.

5. A method according to claim 1 wherein said characteristic computed out of the detail images is an image of the local standard deviation.

6. A method according to claim 1 wherein said filtering applied to said approximation images is based on the characteristics of said approximation images at said scale or a coarser scale or on the characteristics of detail images at said scale or a coarser scale.

7. A method according to claim 1 wherein said filter applied to said enhanced center difference images is based on the characteristics of the approximation images at the same or a coarser scale or on the characteristics of the detail images at the same or a coarser scale.

8. A method according to claim 1 wherein said transform applied to the enhanced and filtered center difference images is a normalization.

9. A method according to claim 1 wherein a translation difference image at a specific scale is computed out of an approximation image at the same scale.

10. A method according to claim 1 modified in that all of said translation difference images are computed out of the original image.

11. A method according to claim 1 wherein a translation image at a scale k is computed out of an approximation image at scale m, wherein m represents a scale between scale 1 and scale k−1.

12. A method according to claim 1 wherein the center difference images are identical to the multi-scale detail images or a close approximation of the multi-scale detail images.

13. A method according to claim 1 wherein said image is a mammographic image.

14. A method according to claim 1 wherein said image is a CT image.

15. A computer program product embodied on a non-transitory computer readable medium adapted to enhance the contrast of an image that is represented by a digital signal wherein
a. said digital signal is decomposed by the computer program product into a multi-scale representation comprising at least two detail images representing detail at multiple scales and approximation images of which the detail images are derived, an approximation image at a scale representing the grey values of said image in which all details at that scale have been omitted,
b. translation difference images are computed by the computer program product by pixel-wise subtracting the values of an approximation image at a scale and the values of translated versions of said approximation image,
c. the values of said translation difference images are non-linearly modified by the computer program product,
d. an amplification image is computed by the computer program product at at least one scale as the ratio of 2 images wherein the first image is computed by combining said modified translation difference images at the same or smaller scale and the second image is created by combining un-enhanced translation difference images at the same or smaller scale, said un-enhanced translation difference images being different from said detail images,
e. an enhanced multi-scale detail representation is computed by the computer program product by modifying at at least one scale the detail image according to the amplification image at that scale,
f. an enhanced image representation is computed by the computer program product by applying a reconstruction algorithm inverting the multi-scale decomposition to the enhanced multi-scale detail representation,
wherein at least one of the following actions is performed by the computer program product:
(1) said non-linear modification of the values of said translation difference images is steered by (a) characteristic(s) computed out of said approximation image(s) at at least one scale;
(2) said non-linear modification of the values of said translation difference images is steered by (a) characteristic(s) computed out of said detail images;
(3) said approximation images at a scale are subjected to an adaptive or non-adaptive filter to generate filtered approximation images;
(4) an adaptive or non-adaptive filter is applied to the enhanced center difference images;
(5) a transform is applied to the enhanced and filtered center difference images.

16. A non-transitory computer readable medium comprising computer executable program code adapted to carry out a method of enhancing the contrast of an image that is represented by a digital signal, the method comprising:
a. decomposing said digital signal into a multi-scale representation comprising at least two detail images representing detail at multiple scales and approximation images of which the detail images are derived, an approximation image at a scale representing the grey values of said image in which all details at that scale have been omitted,
b. computing translation difference images by pixel-wise subtracting the values of an approximation image at a scale and the values of translated versions of said approximation image,
c. non-linearly modifying the values of said translation difference images,
d. computing an amplification image at at least one scale as the ratio of 2 images wherein the first image is computed by combining said modified translation difference images at the same or smaller scale and the second image is created by combining un-enhanced translation difference images at the same or smaller scale, said un-enhanced translation difference images being different from said detail images,
e. computing an enhanced multi-scale detail representation by modifying at at least one scale the detail image according to the amplification image at that scale,
f. computing an enhanced image representation by applying a reconstruction algorithm inverting the multi-scale decomposition to the enhanced multi-scale detail representation,
wherein at least one of the following actions is performed:
(1) said non-linear modification of the values of said translation difference images is steered by (a) characteristic(s) computed out of said approximation image(s) at at least one scale;
(2) said non-linear modification of the values of said translation difference images is steered by (a) characteristic(s) computed out of said detail images;
(3) said approximation images at a scale are subjected to an adaptive or non-adaptive filter to generate filtered approximation images;
(4) an adaptive or non-adaptive filter is applied to the enhanced center difference images;
(5) a transform is applied to the enhanced and filtered center difference images.

17. The computer program product according to claim 15, wherein said characteristic computed out of said approximation image is the average grey value in a predefined image area.

18. The computer program product according to claim 15, wherein said characteristic computed out of said approximation image is the local standard deviation.

19. The computer program product according to claim 15, wherein said characteristic computed out of said approximation image is the presence of predefined image structures or abnormal patterns in said approximation image.

20. The computer program product according to claim 15, wherein said characteristic computed out of the detail images is an image of the local standard deviation.