Patent Description:
Electronic display devices, such as computer monitors and televisions, are often desired to provide high quality images with an efficient energy consumption. For conserving energy, display devices may use dimming or auto backlight algorithms to reduce the amount of light the display produces. Display devices may use local contrast enhancement algorithms which can improve contrast perception dramatically. However, operating the processes required for these algorithms can have the disadvantage of redundant power consumption in some situations, and thus a lowered energy efficiency for display devices.

A local contrast enhancement algorithm divides an image frame into smaller operation windows, then analyses and applies different curves to each window. The division of the frame into smaller windows increases the total number of operations performed by the algorithm, since the operations are performed on each window.

It is challenging for display devices to determine the quality of video content and then apply appropriate enhancement processes. The resolution of a displayed video is the only indicator of video quality for display devices. However, checking the video resolution can be an unreliable way of determining video quality because the resolution can be changed by upscaling or downscaling the video signal.

If the video content is up-scaled to a resolution that is higher than the native resolution of the video content, applying a local contrast enhancement algorithm that assumes the higher resolution will result in wasted energy.

Known methods of measuring and increasing video quality which perform local processes on regions within a frame have the problem of inefficient energy consumption. <CIT> discloses that the window size of a sharpening filter is dependent on the resolution of the input video. <CIT> discloses a method and a system for adaptive image enhancement that divides a frame into pixel regions and uses luminance histograms and spectral histograms to measure the image quality of each pixel region. <CIT> discloses that the image filtering has to be adapted to the native resolution of the input video and not to the actual resolution of the input video.

<CIT> discloses an image contrast enhancement apparatus and method using histogram adjustment. <CIT> discloses a histogram equalisation process for contrast enhancement during image processing which divides an equalisation image screen into overlapping windows and performs histogram equalisation on each window.

According to a first aspect of the present invention, there is provided a method for video enhancement, the method comprising: receiving an input video; receiving a video container for the input video, wherein the video container comprises at least a first resolution and video content data comprising codec type, bitrate and frame rate of the input video; determine a second resolution from the first resolution and the video content data of the video container; comparing the first resolution to the second resolution; determining a local contrast enhancement operation window size in dependence on the result of the comparison between the first resolution and the second resolution wherein the local contrast enhancement operation window size depends on the lowest of the first resolution and the second resolution; applying a local contrast enhancement algorithm with the determined window size to the input video; wherein the first resolution is the resolution of the input video; and wherein the second resolution is the native resolution of the input video.

The method provides the capability of adaptive sizing of operation windows in response to resolution information of the video. The adaptive window size allows the windows to be optimally sized to minimise the number of operations in a local contrast enhancement operation, which increases the efficiency of the operations in terms of energy consumption.

Basing the operation window size on a lower resolution results in larger windows and thus fewer operations per frame. This minimises the power consumption of the enhancement operation. If a video has been up-scaled, then its resolution is higher than its native resolution. By considering both the video resolution and the native resolution, the operation window size can be optimised. If the native resolution is lower than the video resolution, then the size of the operation window can be larger and so less power is consumed by the fewer operations.

The video content data is used in combination with resolution data to provide a determination of native resolution.

In one example, the method further comprises outputting the input video to an electronic display device after applying the local contrast enhancement algorithm. The enhanced video with improved image quality can be displayed on a computer monitor, television, smartphone, or a wide range of other electronic display devices for a clearer picture and a better viewing experience.

In an example, the method further comprises determining the presence and/or amount of motion in the input video before determining the second resolution. In one example, the second resolution is only determined if a determination of no motion is made. In another example, determining the amount of motion comprises: identifying at least one corresponding object in two or more frames of the input video; and comparing the position of the corresponding object in each of the two or more frames.

Detecting motion enables resolution to be determined more easily and accurately. Bitrate changes according to the presence and amount of mount in a video and it is more difficult to evaluate a relationship between bitrate and resolution if motion is present in a video. By detecting the presence of motion, it can be ensured that only video frames exhibiting no motion or a small amount of motion are used for the determination of resolution.

According to a second aspect of the present invention, there is provided apparatus for video enhancement, the apparatus comprising a receiver and a processor; wherein the receiver is configured to receive an input video and a video container for the input video, wherein the video container comprises at least a first resolution and video content data comprising codec type, bitrate and frame rate of the input video, wherein the first resolution is the resolution of the input video; and wherein the processor is configured to: determine a second resolution from the first resolution and the video content data of the video container; compare the first resolution to the second resolution; determine a local contrast enhancement operation window size in dependence on the result of the comparison between the first resolution and the second resolution, wherein the local contrast enhancement operation window size depends on the lowest of the first resolution and the second resolution; and apply a local contrast enhancement algorithm with the determined window size to the input video; and wherein the second resolution is the native resolution of the input video.

In one example, the processor is configured to output the input video to an electronic display device after applying the local contrast enhancement algorithm.

In an example, the processor is configured to determine the amount of motion in the input video before determining the second resolution. In one example, the processor is configured to determine the second resolution only if the processor has made a determination of no motion. In another example, to determine the amount of motion, the processor is configured to: identify at least one corresponding object in two or more frames of the input video; and compare the position of the corresponding object in each of the two or more frames.

Embodiments of the present invention will now be described in detail with reference to the accompanying drawings, in which:.

The present invention is suitable for enhancing the quality of video images for a video display system <NUM> such as that demonstrated in <FIG>. A video display system <NUM> may comprise at least one electronic display device <NUM> of a wide range of types, including (but not limited to) personal computer (PC) monitors, television sets, tablet computers, smartphones, and devices with screens using display technology such as liquid crystal displays (LCDs), light-emitting diodes (LEDs), organic light-emitting diodes (OLEDs) or plasma.

In an embodiment of the present invention, the video image quality enhancement is be carried out on a video by a processor <NUM> connected to a receiver <NUM> which is able to receive video input. The processor <NUM> can execute image quality improvement operations, such as local contrast enhancement. In some embodiments, the processor <NUM> is connected to at least one electronic display device <NUM> upon which the enhanced video may be displayed.

In an embodiment, the quality of video images is enhanced through the performance of local contrast enhancement operations on a frame <NUM>, <NUM> divided into local contrast enhancement operation windows <NUM>, <NUM>, as demonstrated in <FIG>. The sizes of the operation windows <NUM>, <NUM> depend on provided and determined resolution information.

As demonstrated by the flow chart in <FIG>, the processor <NUM> receives an input video <NUM> to be displayed, including a video container <NUM>. The video container <NUM> provides resolution data and also provides other properties of the input video <NUM>, namely bitrate, codec type and frame rate.

The processor <NUM> uses the resolution data and also the other video container information, namely bitrate, codec type and frame rate, to determine the native resolution <NUM> of the video <NUM>. As shown in <FIG>, the method uses the codec type and the relationships between bitrate, frame rate and resolution to determine the native resolution <NUM>. For example, higher bitrates and higher frame rates generally mean higher resolutions.

<FIG> shows that the processor <NUM> refers to a database storing lookup tables <NUM> in order to determine native resolution. The processor <NUM> receives input parameters from the video container <NUM>, uses the input parameters to identify the corresponding native resolution in the database and selects the identified native resolution <NUM> for the next step in the method.

In embodiments, the database stores a lookup table for each possible codec type, in which stored values can be matched to input values from the video container. In embodiments, for a specific codec type, stored values of native resolution can be matched to various combinations of container resolution, bitrate and frame rate. The table for Codec <NUM> in the embodiment of <FIG> shows columns for frame rates of <NUM>, <NUM>, <NUM>, <NUM> and <NUM> frames per second (fps), and rows for native resolutions of standard definition (SD), high definition (HD), full HD (FHD) and ultra HD (UHD). Bitrates of X<NUM> to X<NUM> are provided at the intersections of the rows and columns. Therefore, in this embodiment, codec, frame rate and bitrate data can be used in the lookup tables to determine native resolution. For example, for Codec <NUM>, a bitrate of X<NUM> and a frame rate of <NUM> fps, the native resolution would be determined to be standard definition (SD).

In embodiments, the presence or lack of motion in the input video <NUM> is detected prior to the determination of native resolution <NUM>, as shown by the video motion detection <NUM> in <FIG>. Motion detection <NUM> is used as a filter or gatekeeper to the continuation of the rest of the method. The processor <NUM> can carry out video motion detection <NUM> on the input video <NUM> in order to determine the presence and/or amount of motion <NUM> in the video <NUM>. Any known method of video motion detection <NUM> may be used, such as determining the positions of objects in frames, for example by segmenting objects using pixel values, colour or depth information, and comparing the positions of objects between frames.

The processor <NUM> can use the video motion detection <NUM> to analyse video frames until no motion is detected between frames, for example between consecutive frames. Bitrate changes according to the presence and amount of mount in a video <NUM>, and it is more difficult to evaluate a relationship between bitrate and resolution if motion is present in a video <NUM>. It is therefore useful to determine whether motion is present and/or how much motion is present between frames of a video <NUM>. The video motion detection <NUM> detects the presence of motion so that only video frames exhibiting no motion or a small amount of motion are used for the determination of native resolution <NUM>. The processor <NUM> can perform the video motion detection <NUM> repeatedly until there is no motion detected between related frames. Once it has been determined that there is no motion, the processor <NUM> can then use the appropriate video container information <NUM> and the lookup tables <NUM> to detect native resolution <NUM>.

Once the native resolution of the video <NUM> has been determined <NUM>, the processor <NUM> compares the resolution data from the video container (container resolution) with the native resolution in order to evaluate the relative levels of resolution <NUM>, <NUM>. The result of the comparison is then used in the determination of the size of the operation windows by the local contrast enhancement algorithm. The resolution comparison <NUM>, <NUM> will ascertain whether the determined native resolution <NUM> is greater than, equal to, or lower than the container resolution.

By comparing the resolutions, it is possible to determine whether it is optimal to base the sizes of the operation windows <NUM>, <NUM> on the container resolution or on the native resolution, and then proceed to determine the operation window size on this basis <NUM>, <NUM>, <NUM>. The local contrast enhancement algorithm with the determined window size is then applied to the video <NUM> to enhance its quality.

The native resolution being greater than the container resolution <NUM> indicates that the video has been down-scaled <NUM>, and the native resolution being lower than the container resolution <NUM> indicates that the video has been up-scaled <NUM>. The difference between the native resolution and container resolution provides the extent by which the video has been scaled. If the native resolution and container resolution are the same <NUM>, then the video has not been scaled <NUM>.

Once the scaling status <NUM>, <NUM>, <NUM> of the video <NUM> has been established, the processor <NUM> determines the appropriate size of the operation windows <NUM>, <NUM> in the local contrast enhancement algorithm <NUM>, <NUM>, <NUM>.

One of the parameters which affects the size of the operation windows determined by the local contrast algorithm is native resolution. Therefore, if the native resolution is lower than the container resolution, it already means that there is a relatively low level of detail in the video, and the non-existent details cannot be clarified or revealed by the local contrast enhancement algorithm. Therefore, the operation window size determined according to the native resolution, rather than the container resolution, will be larger and this will result in fewer operations carried out per frame.

If the video has been down-scaled <NUM> or not scaled at all <NUM> the local contrast enhancement operation window size is determined according to the container resolution <NUM>, <NUM>, but if the video has been up-scaled <NUM>, the local contrast enhancement operation window size is determined according to the native resolution <NUM>.

This means that the size of the operation window <NUM>, <NUM> is adaptive to the resolution of the input video <NUM>. If the native resolution is high, i.e. the same as or higher than the container resolution, the operation window size should be smaller, as illustrated by the smaller operation windows <NUM> in the upper frame <NUM> of <FIG>, to be able to show more details. However, if the native resolution is low, i.e. lower than the container resolution, the operation window size can be larger, as illustrated by the larger operation windows <NUM> in the lower frame <NUM> of <FIG>, without lowering the effectiveness of the contrast enhancement. The operation window size according to the native resolution may be calculated as a proportion of the operation window size according to the container resolution.

Therefore, for an up-scaled video <NUM>, basing the determination on the lower native resolution rather than the higher container resolution means that the size of the operation windows <NUM> can be determined to be larger than for a down-scaled or non-scaled video <NUM>. Dividing a frame <NUM> into larger operation windows <NUM> results in fewer operation windows <NUM> per frame <NUM>, and thus a decreased number of operations to be performed per frame <NUM>. Decreasing the number of operations performed per frame <NUM> has the advantages of reducing power consumption and reducing the bandwidth use. This also provides earnings from memory since the bandwidth is reduced.

If a video <NUM> has been up-scaled such that its native resolution is lower than its container resolution, applying previously known local contrast enhancement methods requires a higher power consumption than the present method because the local contrast enhancement algorithm presumes that the video <NUM> has the higher container resolution. Presuming a higher resolution than is actually present results in the performance of redundant operations and thus wastes energy.

Once the size of the operation windows <NUM>, <NUM> has been determined, the processor <NUM> applies the local contrast enhancement algorithm to the video <NUM>. The present method provides the ability to change the local contrast enhancement algorithm parameters according to native resolution in order to minimise power consumption and improve video quality in terms of local detail enhancement. Any appropriate known algorithm for local contrast enhancement may be used in this method, such as the method of contrast enhancement described in <CIT>.

The processor <NUM> can then cause the enhanced video to be output on an electronic display device <NUM> to which the processor <NUM> is connected.

Enhancing a video in accordance with the above-described embodiments of the present invention can improve image quality, video latency and power consumption through adaptive local contrast enhancement.

Claim 1:
A method for video enhancement, the method comprising:
receiving an input video (<NUM>);
receiving a video container (<NUM>) for the input video, wherein the video container comprises at least a first resolution and video content data comprising codec type, bitrate and frame rate of the input video;
determining a second resolution (<NUM>) from the first resolution and the video content data of the video container;
comparing the first resolution to the second resolution (<NUM>, <NUM>);
determine a local contrast enhancement operation window size in dependence on the result of the comparison between the first resolution and the second resolution (<NUM>, <NUM>, <NUM>) wherein the local contrast enhancement operation window size depends on the lowest of the first resolution and the second resolution;
applying a local contrast enhancement algorithm with the determined window size to the input video;
wherein the first resolution is the resolution of the input video; and
wherein the second resolution is the native resolution of the input video.