The present invention relates to dynamic contrast improvement (“DCI”) of video data.
There is a strong demand on picture contrast in video displays, but each display has a limited dynamic range. In general, the picture contrast cannot be increased by simply increasing the video signal amplitude because exceeding the display dynamic range causes unwanted effects. Additionally, newer flat panel displays like liquid crystal display (“LCD”) and plasma display panel (“PDP”) types can have a smaller dynamic range than the more traditional cathode ray tube (“CRT”) designs. However, an efficient use of display dynamic range depending on the picture contents can increase picture contrast and quality. Such dynamic contrast improvement (“DCI”) is disclosed in U.S. Pat. No. 6,285,413 B1 to Akbayir (“Akbayir”), which is incorporated herein by reference.
Akbayir teaches how to analyze a picture framewise and adjust the parameters of a dual segment transfer function depending on the analysis results for the best subjective picture quality.
1.0≦Segment1_Gain≦Max_Gain1
The gain of the upper segment of the transfer function is adaptive to the frame peak value. It is computed such that a detected peak value lower than a nominal will be moved to the nominal peak value. If the detected peak value is equal to or higher than the nominal peak value then a gain of 1.0 is used (no change). The computed theoretical gain is limited then to a maximum value in order to avoid unnatural effects:
1.0≦Segment2_Gain≦Max_Gain2
The third parameter of the transfer function is the pivot point. It is adaptive to the average image brightness and allows dark pictures to be made more contrasting and light. Low average brightness moves the pivot point to a lower level and high average brightness moves the pivot point to a higher level. The minimum pivot point value is about 7 IRE and the maximum about 40 IRE, where a 100 IRE (Institute of Radio Engineers units) luminance represents the white level of a standard video signal and a 0 IRE luminance represents the blanking level.
Akbayir teaches that the DCI transfer function is computed within the vertical blanking time (see Akbayir at column 8, lines 43–45). The vertical blanking time or vertical blanking interval (“VBI”) is the time required for the electron beam in a video CRT to be moved from the end of a frame back to the top of the screen. In a software-based video processing system, the microprocessor may need to perform many operations during the VBI. For example, VBI portions of television signals (“VBI signals”) can be used to transmit information other than traditional program video or audio, such as closed-caption text and stock market data. Performing DCI computations during the VBI reduces the amount of time that a microprocessor has to receive and process VBI signals and/or perform other operations during the VBI.
The present invention is directed to overcoming this problem.
A method for dynamic contrast improvement (“DCI”) of video data includes the steps of analyzing a portion (200) of a video frame, and forcing a start of DCI transfer function computations in response to an end of the analysis of the portion (200) of the video frame.
In the drawings:
a and
The characteristics and advantages of the present invention will become more apparent from the following description, given by way of example.
The register FREEZE_ANLY is included for test purposes. It allows a frame synchronous freeze of the image analysis so that the analysis of the currently processed frame is always completed and then the analysis is disabled. This is controlled by the ANALYSIS_RESET signal. The ANALYSIS_RESET signal is generated by microprocessor 250. It is activated (set to high) for a short time (a few clock-periods) after reading the analysis results and then set again to low. There is no fixed time point for the ANALYSIS_RESET signal. However, ANALYSIS_RESET is activated within the proper range (i.e., frame based, within the vertical blanking time, after reading the analysis results) (see
Analysis Window Block 110 also provides the END_ANLY signal to indicate the end of the analysis. For a precision analysis, needed for the Dark Sample Distribution computations, it is necessary to check the remainder data in the register and correct the results. When END_ANLY signal is high then the needed operations can be performed in order to complete the dark sample distribution analysis.
Image Analysis Block 130 (see
The frame average brightness determines the pivot point of the Dual Segment Transfer Function. The value is limited to a suitable range and then filtered with an IIR filter. Depending on the current and previous value the decay or attack time constant is used for filtering. The filtered value is stored with a precision of 5 fraction bits in the frame average brightness register, AVRG_BR. First an internal pivot point value, TF_DPPI, is computed. It is needed in upper segment gain computation part. The value is in unsigned format and contains 3 fraction bits. The internal pivot point value has to be matched to the luma format. The final pivot point value is obtained by converting the internal value to signed format and truncating the least significant bit (“LSB”). The available dynamic range of the pivot point is reduced with user setting PP_LIM (if desired) by limiting the lower value.
The peak counter values from the frame peak analysis part are summed up and normalized by a factor of 2^N. If all counters PKCNT_00 . . . PKCNT15 are completely filled up then the result is 255. Depending on the counter states, the normalized value is between 0 and 255. This value has a precision of 8 bits. The minimum peak value is limited to 185 (for 8-bit luminance signal in unsigned format) in order to limit the gain of the upper segment to a desired maximum value. The maximum peak value is 240. The gain of the upper segment is determined such that the detected peak value is stretched to 240 if it is lower then 240. The value of 55 comes from the difference between the maximum and minimum peak value. It is multiplied by the normalized peak value. With a shift operation of 8 bits the fraction bits are truncated. The result is frame peak value relative to the minimum value of 185. The minimum value is limited by user setting AP_LIM (if desired) so that the gain of the upper segment does not exceed a predefined maximum value. The maximum gain is defined to preserve natural picture quality, as follows:
1.0≦GAIN_SEG2≦1.699
The computed relative peak value is added to the minimum value in order to get the absolute frame peak value. After that the peak value is filtered with an IIR filter. Depending on the current and previous peak value decay or attack time constant is used for filtering. The filtered value is stored with a precision of 5 fraction bits in the frame peak register FR_PEAK. The upper segment gain is determined, as given in the following equation, by the filtered peak value and the pivot point position:
For further computation a precision of 3 fraction bits is enough; therefore, two LSBs are truncated. The pivot point delivered from average brightness analysis (it has the same format and precision) is subtracted from peak value. This is the denominator of the equation determining the segment gain.
The computation of the segment gain includes a divider that is implemented with a look-up table 350 and a multiplier 400. The look-up table 350 contains the results of the computation
The transfer function for luminance signals higher than the pivot point is given by the equation:
Yout=gain_seg2*(Yin−TF—DPP)+TF—DPP Yin>TF—DPP
where Yout indicates: Output luminance signal; and
where Yin indicates: Input luminance signal
The segment gain is split into integer and fraction parts, where the integer part is always 1:
GAIN_SEG2=GAIN_SEG2_INT+GAIN_SEG2_FRC=1+GAIN_SEG2_FRC
Yout=GAIN_SEG2_FRC*(Yin−TF—DPP)+YinYin>TF—DPP
Using only the fraction part saves one bit. Therefore, the integer part is subtracted from the computed gain. The results are written into register GAIN_SEG2.
Since a look-up table does the 1/x approximation, the precisiori of this value is further reduced and freed from offset of 79 for using as Look-Up table address.
The numerator (Y100IRE−TF_DPPI) of the same equation is multiplied with the Look-Up table data and the fraction bits are truncated by a shift operation of 5 bits.
The frame dark sample distribution value determines the gain of the lower segment. It is also filtered in the same way as the other parameters and then converted to the desired format by truncating the 2 LSBs.
The signal to noise ratio, measured outside the DCI by an external device, is also processed in the same way so that it can be used to control the coring value in Adaptive Signal Splitter Block 120 in a known manner.
Thus, in operation (with either look-up table implementation 300 or divider implementation 600), DCI 100 generates the signal END_ANLY to indicate the end of the analysis and interrupts the microprocessor with END_ANLY to read the analysis data as soon as they are available. Depending on the size of analysis window 200, the analysis is finished much earlier than the start of the vertical blanking interval. Consequently, the microprocessor performs the DCI computations during the active video (rather than during the vertical blanking interval) and only needs to write the results into the segment registers of the Dual Segment Transfer Function during vertical blanking. Thereafter, the microprocessor is reliably freed up for other tasks during the vertical blanking time. Additionally, implementing the DCI algorithms of the present invention in software allows for future adjustments to the algorithms by mere reprogramming, as opposed to the more costly and complex steps that are typically required to reconfigure a hardware-based processing system.
This application claims the benefit, under 35 U.S.C. § 365 of International Application PCT/US02/34414, filed Oct. 28, 2002, which was published in accordance with PCT Article 21(2) on May 8, 2003 in English and which claims the benefit of U.S. provisional patent application No. 60/337,634, filed Nov. 1, 2001.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US02/34414 | 10/28/2002 | WO | 00 | 4/30/2004 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO03/039137 | 5/8/2003 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
4628362 | Waehner | Dec 1986 | A |
4654710 | Richard | Mar 1987 | A |
4829381 | Song et al. | May 1989 | A |
4862270 | Nishio | Aug 1989 | A |
5099330 | Fuse et al. | Mar 1992 | A |
5162902 | Bell et al. | Nov 1992 | A |
5191420 | Lagoni et al. | Mar 1993 | A |
5422680 | Lagoni et al. | Jun 1995 | A |
5517333 | Tamura et al. | May 1996 | A |
5550556 | Wu et al. | Aug 1996 | A |
5777590 | Saxena et al. | Jul 1998 | A |
5963665 | Kim et al. | Oct 1999 | A |
6075574 | Callway | Jun 2000 | A |
6111980 | Sano et al. | Aug 2000 | A |
6285413 | Akbayir | Sep 2001 | B1 |
Number | Date | Country |
---|---|---|
0 963 112 | Dec 1999 | EP |
Number | Date | Country | |
---|---|---|---|
20040207760 A1 | Oct 2004 | US |
Number | Date | Country | |
---|---|---|---|
60337634 | Nov 2001 | US |