# Patent

## Title
Methods and systems for area adaptive backlight management

## Abstract

Elements of the present invention relate to systems and methods for generating, modifying and applying backlight array driving values.

## Background
FIELD OF THE INVENTION
Embodiments of the present invention comprise methods and systems for generating, modifying and applying backlight driving values for an LED backlight array.
BACKGROUND
Some displays, such as LCD displays, have backlight arrays with individual elements that can be individually addressed and modulated. The displayed image characteristics can be improved by systematically addressing backlight array elements.
SUMMARY
Some embodiments of the present invention comprise methods and systems for generating, modifying and applying backlight driving values for an LED backlight array.
The foregoing and other objectives, features, and advantages of the invention will be more readily understood upon consideration of the following detailed description of the invention taken in conjunction with the accompanying drawings.



BRIEF DESCRIPTION OF THE SEVERAL DRAWINGS
FIG. 1 is a diagram showing a typical LCD display with an LED backlight array;
FIG. 2 is a chart showing an exemplary embodiment of the present invention comprising determination of LED backlight driving values;
FIG. 3 is an image illustrating an exemplary LED point spread function;
FIG. 4 is a chart showing an exemplary pre-processing algorithm;
FIG. 5 is a chart showing an exemplary method for deriving LED driving values;
FIG. 6 is set of images showing exemplary LED backlight driving values and corresponding responses after error diffusion;
FIG. 7 is set of images showing exemplary LED backlight driving values and corresponding responses after post-processing;
FIG. 8 is a graph showing an exemplary inverse gamma correction curve for an LED backlight image; and
FIG. 9 is a graph showing an exemplary inverse gamma correction curve for an exemplary LCD image.
FIG. 10 is a chart showing an exemplary error diffusion post-process.



DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS
Embodiments of the present invention will be best understood by reference to the drawings, wherein like parts are designated by like numerals throughout. The figures listed above are expressly incorporated as part of this detailed description.
It will be readily understood that the components of the present invention, as generally described and illustrated in the figures herein, could be arranged and designed in a wide variety of different configurations. Thus, the following more detailed description of the embodiments of the methods and systems of the present invention is not intended to limit the scope of the invention but it is merely representative of the presently preferred embodiments of the invention.
Elements of embodiments of the present invention may be embodied in hardware, firmware and/or software. While exemplary embodiments revealed herein may only describe one of these forms, it is to be understood that one skilled in the art would be able to effectuate these elements in any of these forms while resting within the scope of the present invention.
In a high dynamic range (HDR) display, comprising an LCD using an LED backlight, an algorithm may be used to convert the input image into a low resolution LED image, for modulating the backlight LED, and a high resolution LCD image. To achieve high contrast and save power, the backlight should contain as much contrast as possible. The higher contrast backlight image combined with the high resolution LCD image can produce much higher dynamic range image than a display using prior art methods. However, one issue with a high contrast backlight is motion-induced flickering. As a moving object crosses the LED boundaries, there is an abrupt change in the backlight: In this process, some LEDs reduce their light output and some increase their output; which causes the corresponding LCD to change rapidly to compensate for this abrupt change in the backlight. Due to the timing difference between the LED driving and LCD driving, or an error in compensation, fluctuation in the display output may occur causing noticeable flickering along the moving objects. The current solution is to use infinite impulse response (IIR) filtering to smooth the temporal transition, however, this is not accurate and also may cause highlight clipping.
An LCD has limited dynamic range due the extinction ratio of polarizers and imperfections in the LC material. In order to display high-dynamic-range images, a low resolution LED backlight system may be used to modulate the light that feeds into the LCD. By the combination of modulated LED backlight and LCD, a very high dynamic range (HDR) display can be achieved. For cost reasons, the LED typically has a much lower spatial resolution than the LCD. Due to the lower resolution LED, the HDR display, based on this technology, can not display high dynamic pattern of high spatial resolution. But, it can display an image with both very bright areas (>2000 cd/m2) and very dark areas (<0.5 cd/m2) simultaneously. Because the human eye has limited dynamic range in a local area, this is not a significant problem in normal use. And, with visual masking, the eye can hardly perceive the limited dynamic range of high spatial frequency content.
Another problem with modulated-LED-backlight LCDs is flickering along the motion trajectory, i.e. the fluctuation of display output. This can be due to the mismatch in LCD and LED temporal response as well as errors in the LED point spread function (PSF). Some embodiments may comprise temporal low-pass filtering to reduce the flickering artifact.
Some embodiments of the present invention may be described with reference to FIG. 1, which shows a schematic of an HDR display with an LED layer 2, comprising individual LEDs 8 in an array, as a backlight for an LCD layer 6. The light from the array of LEDs 2 passes through a diffusion layer 4 and illuminates the LCD layer 6.
In some embodiments, the backlight image is given by

bl(x,y)=LED(i,j)*psf(x,y)  (1)

where LED(i,j) is the LED output level of each individual LED in the backlight array, psf(x,y) is the point spread function of the diffusion layer and * denotes a convolution operation. The backlight image may be further modulated by the LCD.

The displayed image is the product of the LED backlight and the transmittance of the LCD: TLCD(x,y).

img(x,y)=bl(x,y)TLCD(x,y)=(led(i,j)*psf(x,y))TLCD(x,y)  (2)

By combining the LED and LCD, the dynamic range of the display is the product of the dynamic range of LED and LCD. For simplicity, in some embodiments, we use a normalized LCD and LED output between 0 and 1.

Some exemplary embodiments of the present invention may be described with reference to FIG. 2, which shows a flowchart for an algorithm to convert an input image into a low-resolution LED backlight image and a high-resolution LCD image. The LCD resolution is m×n pixels with its range from 0 to 1, with 0 representing black and 1 representing the maximum transmittance. The LED resolution is M×N with M<m and N<n. We assume that the input image has the same resolution as the LCD image. If the input image is a different resolution, a scaling or cropping step may be used to convert the input image to the LCD image resolution. In some embodiments, the input image may be normalized 10 to values between 0 and 1.
In these embodiments, the input image may be low-pass filtered 11 using the point spread function of the diffusion screen of the display to create an LPF image. This LPF image may then be sub-sampled 14 to an intermediate resolution. In some embodiments, the intermediate resolution will be a multiple of the LED array size (aM×aN). In an exemplary embodiment, the intermediate resolution may be 2 times the LED resolution (2M×2N). In some embodiments, the extra resolution may be used to reduce flickering. This subsampled image may be referred to as an LEDlp image.
The HDR input image 10 may also be low pass filtered 12 with a smaller filter kernel, such as a 5×5 kernel, to simulate the size of a specular pattern. This smaller low-pass filtered image (SLPF image) may then be divided 13 into aM×aN blocks with each block corresponding to one LED with some overlap between each block. For example, in an exemplary embodiment, the block size may be (1+k)*(m/M×n/N), where k is the overlap factor. In an exemplary embodiment, k may be set to 0.25. A maximum value may then be determined 15 for each block. These maximum block values may be used to form an LEDmax image with a resolution of M×N.
In some embodiments, a combined LED1 image may be created 16 by selecting between variations of the LEDmax image and the LEDlp image. In an exemplary embodiment, the LED1 image may be determined by selecting the greater of two times the LEDlp image and the LEDmax image as expressed in the following equation:

LED1=max(LEDlp×2,LEDmax).  (3)

In some embodiments, the values in the LED1 image may be constrained to be less than one, for example, through the use of equation 4:

LED1=min(max(LEDlp×2,LEDmax),1).  (4)

By taking into account the local maximum, the specular highlight is preserved. Also, using twice the LED1 image values ensures that the maximum LCD operating range will be used. These embodiments better accommodate images with high dynamic range and high spatial frequency.
The resulting LED1 image will have a size of M×N and a range from 0 to 1. Since the PSF of the diffusion screen is larger than the LED spacing to provide for a more uniform backlight image, there is considerable crosstalk between the LED elements that are located close together.
FIG. 3 shows a typical LED PSF where the black lines 55 within the central circle of illumination indicate the borders between LED array elements. From FIG. 3, it is apparent that the PSF extends beyond the border of the LED element.
Because of the PSF of the LEDs, any LED has contribution from each of its neighboring LEDs. Although Equation 2 can be used to calculate the backlight, given an LED driving signal, deriving the LED driving signal to achieve a target backlight image is an inverse problem. This is an ill-posed de-convolution problem. In one approach, a convolution kernel is used to derive the LED driving signal as shown in Equation 5. The crosstalk correction kernel coefficients (c1 and c2) are negative to compensate for the crosstalk from neighboring LEDs.




  
    
      
        crosstalk
        =
        
          
          
            
              
                
                  c
                  2
                
              
              
                
                  c
                  1
                
              
              
                
                  c
                  2
                
              
            
            
              
                
                  c
                  1
                
              
              
                
                  c
                  0
                
              
              
                
                  c
                  1
                
              
            
            
              
                
                  c
                  2
                
              
              
                
                  c
                  1
                
              
              
                
                  c
                  2
                
              
            
          
          
        
      
    
    
      
        (
        5
        )
      
    
  




The crosstalk correction matrix does reduce the crosstalk effect from its immediate neighbors, but the resulting backlight image is still inaccurate with a too-low contrast. Another problem is that it produces many out of range driving values that have to be truncated and can result in more errors.
Since the LCD output can not be more than 1, the LED driving value must be derived 17 so that backlight is larger than target luminance, e.g.,

led(i,j):{led(i,j)*psf(x,y)≧I(x,y)}  (6)

In Equation 6, “:” is used to denote the constraint to achieve the desired LED values of the function in the curly bracket. Because of the limited contrast ratio (CR), due to leakage, LCD(x,y) can no longer reach 0. The solution is that when a target value is smaller than LCD leakage, the led value may be reduced to reproduce the dark luminance.

led(i,j):{led(i,j){circle around (x)}psf(x,y)<I(x,y)·CR}  (7)

In some embodiments, another goal may be a reduction in power consumption so that the total LED output is reduced or minimized.




  
    
      
        
          led
          ⁡
          
            (
            
              i
              ,
              j
            
            )
          
        
        :
        
          {
          
            min
            ⁢
            
              
                ∑
                
                  i
                  ,
                  j
                
              
              ⁢
              
                led
                ⁡
                
                  (
                  
                    i
                    ,
                    j
                  
                  )
                
              
            
          
          }
        
      
    
    
      
        (
        8
        )
      
    
  




Flickering may be due to the non-stationary response of the LED combined with the mismatch between the LCD and LED. The mismatch can be either spatial or temporal. Flickering can be reduced or minimized 18 by reducing the total and localized led output fluctuation between frames.




  
    
      
        
          led
          ⁡
          
            (
            
              i
              ,
              j
            
            )
          
        
        :
        
          {
          
            min
            ⁡
            
              (
              
                
                  
                    ∑
                    
                      i
                      ,
                      j
                    
                  
                  ⁢
                  
                    led
                    ⁡
                    
                      (
                      
                        i
                        ,
                        j
                      
                      )
                    
                  
                
                -
                
                  
                    ∑
                    
                      i
                      ,
                      j
                    
                  
                  ⁢
                  
                    led
                    ⁡
                    
                      (
                      
                        
                          i
                          -
                          
                            x
                            0
                          
                        
                        ,
                        
                          j
                          -
                          
                            y
                            0
                          
                        
                      
                      )
                    
                  
                
              
              )
            
          
          }
        
      
    
    
      
        (
        9
        )
      
    
  




where x0 and y0 define the distance from the center of the LED. To achieve Equation 9, a series of non-LED grid points or virtual points are introduced to minimize the LED output fluctuation. In some embodiments, one or more virtual points are inserted between two LEDs. Without the virtual point, when an object (bright) moves from one LED to another LED, the first LED decreases and the second LED increases. This occurs suddenly and causes flickering. With the virtual point, the bright object first moves to the virtual point, and then to the second LED. The virtual point causes the first LED to slowly reduce its output and the second LED to increase its output. In some embodiments, the flickering can be further reduced by temporal IIR filtering. Combining Equations 6 and 9 yields Equation 10 below.





  
    
      
        
          led
          ⁡
          
            (
            
              i
              ,
              j
            
            )
          
        
        :
        
          {
          
            
              
                
                  
                    
                      led
                      ⁡
                      
                        (
                        
                          i
                          ,
                          j
                        
                        )
                      
                    
                    *
                    
                      psf
                      ⁡
                      
                        (
                        
                          x
                          ,
                          y
                        
                        )
                      
                    
                  
                  ≥
                  
                    I
                    ⁡
                    
                      (
                      
                        x
                        ,
                        y
                      
                      )
                    
                  
                
              
            
            
              
                
                  
                    
                      led
                      ⁡
                      
                        (
                        
                          i
                          ,
                          j
                        
                        )
                      
                    
                    *
                    
                      psf
                      ⁡
                      
                        (
                        
                          x
                          ,
                          y
                        
                        )
                      
                    
                  
                  <
                  
                    
                      I
                      ⁡
                      
                        (
                        
                          x
                          ,
                          y
                        
                        )
                      
                    
                    ·
                    CR
                  
                
              
            
            
              
                
                  min
                  ⁢
                  
                    
                      ∑
                      
                        i
                        ,
                        j
                      
                    
                    ⁢
                    
                      led
                      ⁡
                      
                        (
                        
                          i
                          ,
                          j
                        
                        )
                      
                    
                  
                
              
            
            
              
                
                  min
                  (
                  
                    
                      
                        ∑
                        
                          i
                          ,
                          j
                        
                      
                      ⁢
                      
                        led
                        ⁡
                        
                          (
                          
                            i
                            ,
                            j
                          
                          )
                        
                      
                    
                    -
                    
                      
                        ∑
                        
                          i
                          ,
                          j
                        
                      
                      ⁢
                      
                        led
                        ⁡
                        
                          (
                          
                            
                              i
                              -
                              
                                x
                                0
                              
                            
                            ,
                            
                              j
                              -
                              
                                y
                                0
                              
                            
                          
                          )
                        
                      
                    
                  
                  )
                
              
            
          
          }
        
      
    
    
      
        (
        10
        )
      
    
  




In some embodiments, the algorithm to derive 17 the backlight driving values that satisfy Eq. 10, or other constraints, comprises the following steps:

    
    
        1. Pre-processing: Distribute the non-LED virtual point to its neighbor. Virtual points are those points with desired backlight values but without an LED (off-grid).
        2. Multiple pass routine to derive the LED driving values with a constraint that led >0.
        3. Post-processing: for those LEDs with a driving value more than 1 (maximum), threshold to 1 and then use anisotropic error diffusion to distribute the error to its neighboring LEDs.
    
    


FIG. 5 shows an exemplary pre-processing algorithm. The LED target image (BL0) is derived for both LED points and virtual points. In this example, the target image consists of two point types: one located on an LED grid, and the other a virtual (off-grid) point.

    
    
        1. The first step is to set the initial LED driving value 40 the same as the target value, BL0, 40. LedMask 42 is 1 if it is an LED grid point and 0 for a virtual point. In some embodiments, the initial LED driving value 45, led0, may be the dot product of the backlight target value, BL0, 40 and the LEDMask, 42

led0=BL0·LEDmask 

        2. The backlight (bl) may be approximated with a convolution 44 of LED driving value 45, led0, with a truncated PSF (psf2) kernel (e.g., 3×3) 43.

bl1=led0*psf2.

        3. The deficiency, bl2, of the backlight may be determined as

bl2=max(0,BL0−bl1).

        4. To compensate for this deficiency, the led driving values of it 4 neighbors may be increased by a deficiency adjustment, bl3, determined by

bl3=k bl2*dk, 

        where k is a constant to compensate for the lower crosstalk value from the LED point to the virtual point and dk is the diffusion matrix. These two terms can be combined in practice.
        5. A modified target value, BL1, may then be determined by adding 52 the deficiency adjustment to the initial target value 40 by

BL1=(BL0+bl3).

    
    


Finding an LED driving value from a target value is an ill-posed problem that requires an iterative algorithm, which is computationally expensive and difficult to implement in hardware. Some aspects of embodiments of the present invention may be described with reference to FIG. 5. In these embodiments, a multi-pass algorithm may be used to derive (some embodiments may comprise part of step 17 of FIG. 2) an LED driving value 66. In some embodiments, the LED driving value may be initialized 60 with a revised target value (BL1) from a pre-processing step, as explained above.
In an iterative approach, the backlight may be calculated by multiplying an LED driving value, e.g., a 1D vector of length MN, where MN is the total number of LEDs, with the crosstalk matrix (MN×MN). This is very computationally expensive and not necessary since the crosstalk between LEDs that far apart is very small.
In some exemplary embodiments, the backlight may be approximated 61 by convolving the LED driving value, Led1, with a truncated PSF 67 of size 7×5. In some embodiments, an iterative method may then be used 62 for a fixed number of iterations. In an exemplary embodiment, four iterations provide good results. A new LED driving value, Ledi+1 may be increased or decreased 63 by the scaled difference between a target value and a predicted value. The scale factor may be 0.28 in an exemplary embodiment and may vary based on the PSF and other factors.
In some embodiments, the intermediate LED driving value, Ledi+1, may then be multiplied by the ledMask and the result may be constrained 64 to be greater than 0 and to be found only on those LED grid points defined by ledMask. The constrained intermediate LED driving value may then be convolved 65 with the truncated PSF 67. The process may repeat for a few iterations to achieve the desired LED driving value 66 and will typically converge after about 4 iterations.
Aspects of some embodiments of the present invention may be described with reference to FIG. 6, which shows a derived LED driving value 70 and the predicted backlight value 71. In an exemplary embodiment, in order to achieve a desired backlight value, e.g., 3, an LED driving value of 1.18 is needed for the 4 neighboring LEDs of a virtual point and a driving value of 2.99 is needed for the LED point. As shown in FIG. 6, the derived LED driving value can be larger than 1, but the LED can only be driven to a maximum of 1. In some embodiments, an anisotropic error diffusion post-process may be used to distribute this truncation error to the neighboring LEDs.
In an exemplary embodiment, illustrated in FIG. 10, the following steps may be used to accomplish this process on a backlight image 90:














1. Find 91 ledi,j > 1



2. Calculate 92 the coefficients for its 4 neighbors,



    Ci−1,j = max(0,1−ledi−1,j)



    Ci+1,j = max(0,1−ledi+1,j)



    Ci,j−1 = max(0,1−ledi,j−1)



    Ci,j+1 = max(0,1−ledi,j+1)



3. Update 93 the LED values,



    ledi,j = 1



    ledi−1,j = ledi−1,j + k(ledi,j−1)* Ci−1,j / Σ(Ci,j)



    ledi+1,j = ledi+1,j + k(ledi,j−1)* Ci−1,j / Σ(Ci,j)



    ledi,j−1 = ledi,j−1 + k(ledi,j−1)* Ci−1,j / Σ(Ci,j)



    ledi,j+1 = ledi,j+1 + k(ledi,j−1)* Ci−1,j / Σ(Ci,j)









In some embodiments, the steps above may be approximated for hardware implementation with the following:












1. Find ledi,j > 1;


2. Sorting the 4 neighboring LEDs in ascending order led1 to led4; and


3. If (led4 − led1 < threshold),


    ledi,j = 1


    ledn = ledn + k(ledi,j−1)>>2; n=1,2,3,4


   else


    ledi,j = 1


    led1 = led1 + k(ledi,j−1)>>3


    led2 = led2 + k(ledi,j−1)>>2


    led3 = led3 + k(ledi,j−1)>>2


    led4 = led4 + k(ledi,j−1)>>1









    
    
        where k>1 is a constant to compensate for the reduced contribution from the neighboring LEDs. In an exemplary embodiment, it is about 25%. In some embodiments, the above anisotropic error diffusion is performed at a larger neighborhood. FIG. 7 illustrates the LED driving value 80 and the predicted backlight 81 after post-processing. The Led driving value is within the physical limit of between 0 and 1 while the backlight is still greater than the target value.
    
    


In some embodiments, since the LED output is non-linear with respect to the driving value and the driving value is an integer, inverse gamma correction 19 and quantization may be performed to determine the LED driving value that will be sent to the LED driver circuit 20.
FIG. 8 illustrates an exemplary inverse gamma correction process for the LEDs. In the overall process, illustrated in FIG. 2, the quantized driving value is again gamma corrected 27 to yield the actual LED output.
In some embodiments, the backlight image may now be predicted from the LED image. The LED image may be upsampled 26 to the LCD resolution (m×n) and convolved with the PSF of the diffusion screen 25 to yield an LED backlight image 24. The LCD transmittance may be calculated 23 with equation 11.

TLCD(x,y)=img(x,y)/bl(x,y)  (11)

Again, inverse gamma correction 22 may be performed, to correct for the non-linear response of the LCD and the resulting LCD image may be sent to an LCD driver circuit 21. FIG. 9 shows an exemplary inverse gamma correction curve.
In some embodiments, to reduce the flickering effect, temporal low-pass filtering 18 may be used to smooth sudden temporal fluctuations. Equation 12 describes an exemplary filtering process.




  
    
      
        
          
            led
            n
          
          ⁡
          
            (
            
              i
              ,
              j
            
            )
          
        
        =
        
          {
          
            
              
                
                  
                    
                      
                        k
                        up
                      
                      ⁢
                      
                        f
                        ⁡
                        
                          (
                          
                            i
                            ,
                            j
                          
                          )
                        
                      
                    
                    +
                    
                      
                        (
                        
                          1
                          -
                          
                            k
                            up
                          
                        
                        )
                      
                      ⁢
                      
                        
                          led
                          
                            n
                            -
                            1
                          
                        
                        ⁡
                        
                          (
                          
                            i
                            ,
                            j
                          
                          )
                        
                      
                      ⁢
                      _if
                      ⁢
                      _f
                      ⁢
                      
                        (
                        
                          i
                          ,
                          j
                        
                        )
                      
                    
                  
                  >
                  
                    
                      led
                      
                        n
                        -
                        1
                      
                    
                    ⁡
                    
                      (
                      
                        i
                        ,
                        j
                      
                      )
                    
                  
                
              
            
            
              
                
                  
                    
                      k
                      down
                    
                    ⁢
                    
                      f
                      ⁡
                      
                        (
                        
                          i
                          ,
                          j
                        
                        )
                      
                    
                  
                  +
                  
                    
                      (
                      
                        1
                        -
                        
                          k
                          down
                        
                      
                      )
                    
                    ⁢
                    
                      
                        led
                        
                          n
                          -
                          1
                        
                      
                      ⁡
                      
                        (
                        
                          i
                          ,
                          j
                        
                        )
                      
                    
                    ⁢
                    _else
                  
                
              
            
          
          }
        
      
    
    
      
        (
        12
        )
      
    
  




wherein kup is typically chosen to be higher than kdown to satisfy Equation 6. In an exemplary embodiment, kup may be set to 0.5 and kdown may be set to 0.75.

The terms and expressions which have been employed in the foregoing specification are used therein as terms of description and not of limitation, and there is no intention in the use of such terms and expressions of excluding equivalence of the features shown and described or portions thereof.

## Claims

1. A method for modifying display backlight target values, said method comprising:
a) receiving an initial backlight target value image, BL0;
b) establishing an initial LED driving value (led0) image comprising on-grid LED points and off-grid virtual points located between said on-grid LED points of said initial backlight target value image by convolving said BL0 image with an LED mask comprising said virtual point off-grid locations;
c) determining an approximated backlight image (bl1) by convolving said led0 image with a truncated point spread function (psf2) kernel;
d) determining a backlight deficiency image (bl2), based on a difference between said BL0 image and said bl1 image;
e) creating a compensated backlight image (bl3) by convolving said bl2image with a diffusion kernel; and
f) determining a modified LED target value image (BL1) by adding said bl3image to said BL0 image.

2. A method as described in claim 1 wherein said truncated point spread function (psf2) is a 3×3 kernel represented by:














0
0.6
0


0.6
1
0.6


0
0.6
0

3. A method as described in claim 1 wherein said diffusion kernel is a 3×3 kernel represented by:














0.25
0
0.25


0
0
0


0.25
0
0.25

4. A method for generating a modified LED target value image for a display backlight array, said method comprising:
a) receiving a target backlight image (BL1);
b) combining said BL1 image with an LED mask, comprising off-grid virtual points interspersed between actual image points, to create an led1 image;
c) convolving said led1 image with a point spread function (PSF) to create an approximated backlight image, BL 2;
d) determining a difference image representing the difference between said target backlight image, BL1, and said approximated backlight image, BL2;
e) determining a scaling factor, β;
f) scaling said difference image with said scaling factor thereby creating a scaled difference image;
g) adding said led1 image to said scaled difference image to create a revised LED image, ledi+1; and
h) setting values in said revised, ledi+1, image to zero when said values are less than zero.

5. A method as described in claim 4 wherein said point spread function is a 5×7 kernel represented by:


















0.04
0.08
0.14
0.19
0.14
0.08
0.04


0.06
0.15
0.4
0.61
0.4
0.15
0.06


0.07
0.2
0.62
1
0.62
0.2
0.07


0.06
0.15
0.4
0.61
0.4
0.15
0.06


0.04
0.08
0.14
0.19
0.14
0.08
0.04

6. A method as described in claim 4 further comprising repeating steps d through h a fixed number of times.

7. A method for post-processing backlight image driving values for a display backlight array, said method comprising:
a) receiving a backlight image comprising backlight image driving values in display hardware;
b) finding a backlight image driving value, ledi,j, in said backlight image, that is greater than one;
c) calculating coefficients for neighbors of said driving value, ledi,j, with said display hardware using the following equations:


Ci−1,j=max(0,1−ledi−1,j)



Ci+1,j=max(0,1−ledi+1,j)



Ci,j−1=max(0,1−ledi,j−1)



Ci,j+1=max(0,1−ledi,j+1)


d) updating said backlight image driving values and the values of said neighbors, with said processor using the following equations:


ledi,j=1



ledi−1,j=ledi−1,j+k(ledi,j−1)*Ci−1,j/Σ(Ci,j)



ledi+1,j=ledi+1,j+k(ledi,j−1)*Ci−1,j/Σ(Ci,j)



ledi,j−1=ledi,j−1+k(ledi,j−1)*Ci−1,j/Σ(Ci,j)



ledi,j+1=ledi,j+1+k(ledi,j−1)*Ci−1,j/Σ(Ci,j);


wherein k is a constant used to compensate for a reduced contribution from neighboring LEDs.

8. A method for generating a backlight image for a display backlight array, said method comprising:
a) receiving an input image comprising an array of pixel values representing an image at an LCD image pixel resolution;
b) low-pass filtering said input image with a point spread function of a display diffusion screen to create a low-pass-filtered (LPF) image;
c) subsampling said LPF image to an intermediate resolution thereby creating a LED 1p image;
d) low-pass filtering said input image with a kernel that is smaller than the kernel used to create said LPF image thereby creating a second low-pass-filtered (SLPF) image;
e) dividing said SLPF image into blocks wherein each block corresponds to a display backlight LED element in said display backlight array with some overlap between array elements;
f) determining a maximum value in each of said blocks of said SLPF image thereby creating LEDmax values in an LEDmax image; and
g) creating an LED1 image comprising values based on one of a corresponding LEDmax image value and a corresponding LED 1p image value.

9. A method as described in claim 8 wherein said LED1 image is created by selecting values from said LED1p image and said LEDmax image such that LED1 image values are the greater of the corresponding LEDmax value and the corresponding LED1p value times two.

10. A method as described in claim 8 wherein said intermediate resolution is a multiple of the resolution of said backlight array.

11. A method as described in claim 8 wherein the size of said blocks in said SLPF image is determined with the following equation:


(1+k)*(m/M×n/N)

wherein k is an overlap factor, M and N are dimensions of the LED backlight array and m and n are the dimensions of an LCD array.

12. A method as described in claim 8 further comprising:
a) deriving an LED backlight image from said LED1 image; and
b) performing inverse gamma correction on said LED image, thereby creating an inverse-gamma-corrected (IGC) LED image for said display backlight array.

13. A method as described in claim 12 further comprising:
a) performing gamma correction on said IGC LED image, thereby creating an LED2 image;
b) upsampling said LED2 image to said LCD resolution;
c) convolving said LED2 image with the point spread function (PSF) of a diffusion layer of said display thereby creating an LED_BL image;
d) dividing said input image by said LED_BL image to create an LCD image; and
e) performing inverse gamma correction on said LCD image, thereby creating an inverse-gamma-corrected (IGC) LCD image.

14. A method as described in claim 12 wherein said deriving an LED backlight image comprises:
a) receiving an initial backlight target value image, BL0;
b) establishing an initial LED driving value (led0) image comprising virtual points located between pixel elements of said input image by convolving said BL0 image with an LED mask comprising said virtual point locations;
c) determining an approximated backlight image (bl1) by convolving said led0 image with a truncated point spread function (psf2) kernel;
d) determining a backlight deficiency image (bl2), which based on a difference between said BL0 image and said bl1 image;
e) creating a compensated backlight image (bl3) by convolving said bl2image with a diffusion kernel; and
f) determining a modified LED target value image (BL1) by adding said bl3image to said BL0 image.

15. A method as described in claim 12 further comprising performing temporal low-pass filtering on said LED1image.

16. A method for generating a backlight image for a display backlight array, said method comprising:
a) receiving an input image comprising an array of pixel values representing an image at an LCD image pixel resolution;
b) low-pass filtering said input image with a point spread function of a display diffusion screen to create a low-pass-filtered (LPF) image;
c) subsampling said LPF image to an intermediate resolution thereby creating a LED 1p image;
d) low-pass filtering said input image with a kernel that is smaller than the kernel used to create said LPF image thereby creating a second low-pass-filtered (SLPF) image;
e) dividing said SLPF image into blocks wherein each block corresponds to a display backlight LED element in said display backlight array with some overlap between array elements;
f) determining a maximum value in each of said blocks of said SLPF image thereby creating LEDmax values in an LEDmax image;
g) creating an LED1image comprising values based on one of a corresponding LEDmax image value and a corresponding LED 1p image value;
h) establishing a target LED driving value (led0) image comprising virtual off-grid points located between on-grid LED elements of said input image by convolving a target backlight image, BL0, with an LED mask comprising said virtual point locations;
i) determining an approximated backlight image (bl1) by convolving said led0 image with a truncated point spread function (psf2) kernel;
j) determining a backlight deficiency image (bl2), which represents a difference between said BL0 image and said bl1 image;
k) creating a compensated LED driving value image (bl3) by convolving said bl2 image with a diffusion kernel; and
l) determining a modified LED target value image (BL1) by adding said BL0 image to said bl3image.

17. A method as described in claim 16 further comprising performing temporal low-pass filtering on said BL1 image.

18. A method as described in claim 16 wherein said BL1 image is created by selecting values from said LED1p image and said LEDmax image such that BL1 image values are the greater of the corresponding LEDmax value and the corresponding LED1p value times two.

19. A method as described in claim 16 wherein said intermediate resolution is a multiple of the resolution of said backlight array.

20. A method as described in claim 16 wherein the size of said blocks in said SLPF image is determined with the following equation:


(1+k)*(m/M×n/N)

wherein k is an overlap factor, M and N are dimensions of the LED backlight array and m and n are the dimensions of an LCD array.