EP3817384A1 - Improved method of bit allocation for image&video compression using perceptual guidance - Google Patents
Improved method of bit allocation for image&video compression using perceptual guidance Download PDFInfo
- Publication number
- EP3817384A1 EP3817384A1 EP20182723.5A EP20182723A EP3817384A1 EP 3817384 A1 EP3817384 A1 EP 3817384A1 EP 20182723 A EP20182723 A EP 20182723A EP 3817384 A1 EP3817384 A1 EP 3817384A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- image
- picture
- weighting map
- noise
- map
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims description 32
- 238000007906 compression Methods 0.000 title abstract description 25
- 230000006835 compression Effects 0.000 title abstract description 25
- 238000012545 processing Methods 0.000 claims abstract description 26
- 230000000007 visual effect Effects 0.000 claims description 29
- 230000002123 temporal effect Effects 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 17
- 239000003638 chemical reducing agent Substances 0.000 claims description 12
- 238000013329 compounding Methods 0.000 claims description 11
- 230000003044 adaptive effect Effects 0.000 claims description 9
- 101100259947 Homo sapiens TBATA gene Proteins 0.000 claims description 8
- 238000013139 quantization Methods 0.000 abstract description 44
- 238000000354 decomposition reaction Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 230000000873 masking effect Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000004321 preservation Methods 0.000 description 7
- 238000004140 cleaning Methods 0.000 description 6
- 238000013144 data compression Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000009467 reduction Effects 0.000 description 5
- 230000004438 eyesight Effects 0.000 description 4
- 241000023320 Luma <angiosperm> Species 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 3
- 210000001525 retina Anatomy 0.000 description 3
- 230000016776 visual perception Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 210000000887 face Anatomy 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- PMAYSDOKQDPBDC-UHFFFAOYSA-N [3-hexadecanoyloxy-2-(2-phenylacetyl)oxypropyl] hexadecanoate Chemical compound CCCCCCCCCCCCCCCC(=O)OCC(COC(=O)CCCCCCCCCCCCCCC)OC(=O)CC1=CC=CC=C1 PMAYSDOKQDPBDC-UHFFFAOYSA-N 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 235000013855 polyvinylpyrrolidone Nutrition 0.000 description 1
- 229920000036 polyvinylpyrrolidone Polymers 0.000 description 1
- 238000005316 response function Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/14—Coding unit complexity, e.g. amount of activity or edge presence estimation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/162—User input
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/196—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
Definitions
- the present invention relates to a method of video data compression to allocate pixels based on human eye attraction to particular areas of the picture.
- the quality of a video image is ultimately determined by a human viewer of the video image pictures. Allocation of pixels during video compression is based on maintaining the quality of the video image as determined by the human viewer. Video images can be enhanced for compression by considering areas of a picture where no motion has occurred, or where the pixels of a large portion of the picture are uniform. It is further desirable to increase the compression of pixels in video images even in portions that include difficult-to-track visual details. However, it is difficult to accurately identify difficult-to-track visual details. If important details in the video image are removed, the end user will perceive a degradation in video quality.
- Embodiments of the present invention provide a system to create quantization parameters based on human eye attraction to provide to an encoder to enable the encoder to compress data taking into account human perceptual guidance.
- the video data is provided directly to the compressor so that cleaning of data prior to encoding is not necessary.
- the system includes a quantization data processor for providing quantization metadata to an encoder to enable the encoder to control compression based on human eye tracking data.
- the quantization data processor can be a perceptual video processor (PVP) that uses human eye tracking information to determine the quantization data.
- PVP perceptual video processor
- the quantization data processor is configured to determine the quantization data by performing the following steps: receiving an original input picture; obtaining a perceptual significance pixel map for the original input picture using predictions of eye tracking; providing an absolute value for numbers in the significance pixel map; performing companding to reduce the determined absolute value of the pixel values to values ranging from zero to one; performing decimation on the companded values to match a spatial resolution of QP values to be encoded; determining quantization parameters for the pixels provided from the decimation from a quantization parameter (QP) look up table (LUT); providing the QP LUT table values as metadata to an encoder to enable compression of the original picture to be performed by the encoder in a manner so that bits are allocated to pixels in a macroblock according to the predictions of eye tracking.
- QP quantization parameter
- an infinite impulse response (IIR) filter is provided to modify the companded pixel values prior to performing decimation.
- the IIR filter looks at a previous picture to the picture being encoded and creates a more gradual change from the previous picture.
- a motion compensation difference operation is provided between a reference picture and an original input picture provided to the decoder.
- a perceptual significance pixel map is provided both for the reference picture and the output of the motion compensated difference picture and a difference is taken between the signals to provide an input to the absolute value portion of the PVP in the process described above.
- the perceptual significance pixel map is provided prior to motion compensation of the reference and input pictures, while in another embodiment the significance map is created after motion compensation.
- Embodiments of the invention provide for use of a human eye attraction mapping to be used to enhance the picture quality for video data being encoded.
- the eye attraction mapping was used to clean pictures for processing in an encoder.
- the eye attraction mapping is performed to enable generation of quantization need metadata that is provided to an encoder to enable encoding of the data in a manner that allocates more bits to areas of a picture where a human eye is naturally attracted, while less bits are provided in other areas.
- any picture can be provided to the encoder, and cleaning is not needed.
- Fig. 1 shows a block diagram of a system 100 for reducing noise in video processing that provides for cleaning of the picture prior to compression in an encoder.
- the system 100 includes an input module 102, a three dimensional noise reducer (3DNR) 110 and an adaptive detail reducer (ADR) 120.
- the input module 102 is configured to receive an original picture 124 in a video sequence.
- the 3DNR performs three dimensional noise reduction on the original picture 124 in two spatial dimensions and a temporal dimension.
- the ADR 120 performs adaptive detail reduction on the original picture 124 on selected difficult-to-track details.
- the systems described in this section A are detailed in U.S. Patent Application Serial No. 12/761,581, filed April 16, 2010 , entitled "System For Reducing Noise In Video Processing" incorporated by reference herein in its entirety.
- the system 100 uses a weighting map 112 to form a processed picture 130 from the original picture 124.
- the weighting map 112 is created by the system 100 using a model of the human visual system that takes into account the statistics of natural images and the response functions of cells in the retina.
- the weighting map 112 is a pixel map of the original picture 124 based on the model of the human visual system.
- the weighting map 112 may include a value or weight for each pixel identifying a level of difficulty for visual perception and/or a level of difficulty for compression.
- the level of difficulty for compression may be a continuous scale measuring the number of bits needed to encode the pixel or area of the image.
- the level of difficulty for visual perception is a continuous scale measuring the number of bits needed to encode the pixel or area of the image.
- Different weighting maps 112 may be used in the 3DNR 110 and the ADR 120.
- the system 100 may be configured to use the weighting map 112 and the 3DNR 110 to reduce noise in the original picture 124 and thereby form the processed picture 130.
- the system 100 may reduce difficult-to-track details in the original picture 124 using the weighting map 112 and the ADR 120 to form the processed picture 130.
- the difficult-to-track details may be determined using a predetermined threshold based on the weighting map 112.
- the processed picture 130 may comprise a cleaned picture 125 after processing by the 3DNR 110 as described below with respect to Fig. 2 , a modified picture after processing by the ADR 120 as described below with respect to Fig. 4 , or a cleaned and modified picture after processing by the 3DNR 110 and the ADR 120.
- the cleaned picture 125 includes reduced amounts of noise while a modified picture includes reduced amounts of adapted details.
- the adapted details are important features, such as faces and edges that are preserved by the ADR 120 and are determined to be useful for perceiving the image.
- the system 100 uses a reference picture 126 to clean or modify the original picture 124.
- the reference picture 126 may include a picture that has previously been processed by the system 100, for instance the cleaned picture 125 from a preceding original picture 124 in the video sequence. Alternately, the reference picture 126 may comprise an unprocessed picture.
- the system 100 uses the information to selectively reduce noise and difficult-to-track details with minimal introduction of noticeable processing artifacts.
- processes used in the system 100 use the weighting map 112 to reduce and/or eliminate artifacts such as motion blur, motion discontinuities, and artificial-looking edges.
- the system 100 reduces perceptual masking and may be used to avoid smearing.
- the 3DNR 110 may be configured to extract a noise layer, thereby performing auto adapting noise reduction for the video sequence, and the ADR 120 may be used to extract a spatial layer, thereby performing adaptive detail reduction for the video sequence.
- the 3DNR 110 and the ADR 120 are fully separable and the system 100 may comprise a single 3DNR 110, the operation of which is described with respect to Fig. 2 below, or a single ADR 120, the operation of which is described with respect to Fig. 4 below.
- Fig. 2 illustrates a data flow diagram 200 for the 3DNR 110.
- the original picture 124 is decomposed using picture decomposition 204 into a noise layer 206 and a weighting map 112.
- the picture decomposition 204 uses the model human visual system 208 to determine a pixel map based on the original picture 124.
- the model of the human visual system 208 may include a model of human spatial perceptibility and a model of human temporal perceptibility.
- the model of the human visual system used in creating the weighting map 112 is an integrated perceptual guide (IPeG) system, described in more detail in U.S. Patent No. 6,014,468 entitled “Apparatus and Methods for Image and Signal Processing," issued January 11, 2000, U.S. Patent No. 6,360,021 entitled “Apparatus and Methods for Image and Signal Processing,” issued March 19, 2002, U.S. Patent No. 7,046,857 entitled “Apparatus and Methods for Image and Signal Processing," a continuation of U.S. Patent No.
- IPEG IPEG
- the IPEG system provides information including a set of signals that organizes visual details into perceptual significance, and a metric that indicates the ability of a viewer to track certain video details.
- the noise layer 206 includes a value for each pixel based on the model of human spatial perceptibility.
- Parameters denoted as lambdas ( ⁇ ) are tuning parameters that are used to change an overall strength of the 3DNR 110 and the ADP 120. For instance, six strength-levels (“strongest”, “strong”, “medium”, “weak”, “weakest”, and “disabled”) may be provided for the 3DNR 110 and the ADP 120, independently. Each strength-level is associated with a set of lambda values and alpha values (which are the on and off rates of the asymmetric IIR). The service provider empirically selects the default lambda values for each strength-level in a way that helps customers meet video quality and bit rate needs. The values associated with 3DNR 110 and ADP 120 may be customized to provide more control.
- Continuously valued functions may be used to generate the P-functions, provide opportunities for customization, and avoid visual distortions that may arise near the boundaries of the "all-or-none" decisions imposed by threshold operations.
- the subscript n for the P-function refers to the noise layer 206.
- the noise layer 206 is recombined with the weighting map 112 to form a modified noise layer 210.
- the modified noise layer 210 is subtracted from the original picture 124 to produce a cleaned picture 125.
- the 3DNR 110 may be used for perceptual masking and preservation, as shown with respect to Fig. 3 .
- Perceptual video identifies parts of vision that human retina sees that are of low impact to perception of image and allows the system 100 to reduce the corresponding low impact parts of image so that there is a reduced amount of data to encode.
- the subscript s for the P-function refers to the spatial detail layer 304.
- the original picture 124 may be provided to the picture decomposition 204 to determine the spatial detail layer 304.
- Luma values represent brightness in an image and are known to be paired with chroma values, which convey color information, to convey an image.
- B(i,j) is a pixel map of basal layer values.
- N refers to a total number of pixels in the pixel map.
- the original picture 124 along with a reference picture 126 may also be provided to a motion compensation engine 302.
- the motion compensation engine 302 thereafter determines a motion compensated difference 306 between the original picture 124 and the reference picture 126.
- the motion compensated difference 306, the spatial detail layer 302, and a reference spatial detail layer 308 of the reference picture 126 may all be provided to a compounding and companding engine 310.
- the result of processing of the picture using the compounding and companding engine 310 may be provided to an Asymmetric (infinite impulse response) IIR 312 with scene-change reset operation.
- the motion compensated difference 306 between the original picture 124 and the reference picture 126 may be determined using motion vectors.
- the motion compensated difference 306 may be determined on a pixel by pixel basis and is used to measure a difference between the original picture 124 and the reference picture 126. Some parts of the difference between the original picture 124 and the reference picture 126 may comprise areas of edges that need to be preserved while other parts may comprise noise that may be removed without affecting perception of the image.
- the spatial detail layer 304 supplied for the original picture 124 and the reference spatial detail layer 308 supplied for the reference picture 126 are used to identify areas that are not perceptually significant.
- the weighting map 112 used by the 3DNR 110 combines the spatial layers to reduce noise while preserving perceptually significant details i.e. details that are important from a feature point of view.
- the original picture 124 is decomposed using the picture decomposition 204 into a spatial detail layer 302 and the weighting map 112.
- the spatial detail layer 406 includes a value for each pixel based on a model of human spatial perceptibility.
- the weighting map 112 includes a value for each pixel based on a model of human temporal perceptibility.
- the spatial detail layer 406 is recombined with the weighting map 112 to form a modified detail layer 410.
- the modified detail layer 410 is subtracted from the original picture 124 to produce a modified picture 426.
- the ADR 120 may also be used for perceptual masking and preservation, as shown with respect to Fig. 5 .
- the original picture 124 may be provided to the picture decomposition 204 to determine the spatial detail layer 304.
- the original picture 124 along with a reference picture 126 may also be provided to the motion compensation engine 302.
- the motion compensation engine 302 thereafter determines a motion compensated difference 306 between the original picture 124 and the reference picture 126.
- the motion compensated difference 306 may be provided to a compounding and companding engine 310.
- the result of processing of the picture using the compounding and companding engine 310 may be provided to an Asymmetric (infinite impulse response) IIR 312 with scene-change reset operation.
- the reference picture 126 may comprise a previous cleaned picture 125 in the video sequence from the 3DNR 110.
- the reference picture 126 may comprise a previous modified picture 426 in the video sequence from the ADR 120.
- a motion mismatch may be introduced that increases spatial detail reduction and adds a second-order temporal dependence.
- the ADR 120 follows the unpredictable difference between the original picture 124 and the reference picture 126 as closely as possible so that unpredictability is reduced for the encoding process.
- Use of the previous modified picture 426 as the reference picture 126 effectively introduces an artificial unpredictability.
- the ADR 120 may process the original picture 124 to selectively attenuate details that are simultaneously difficult-to-perceive and difficult-to-compress, to preserve important features (e.g., faces, edges), and to avoid blurring.
- Increased compression efficiency improvement on high-energy background motion may preferably be obtained.
- the ADR 120 subtracts the unpredictable high-energy detail from the original picture 124. More specifically, the ADR 120 extracts a spatial detail layer, accounts for perceptual masking and may be used to avoid blurring.
- the ADR 120 uses the spatial layers and temporal error layers, which may be created through motion estimation, to perform perceptual masking and preservation.
- the ADR 120 may determine a number from zero to one for each pixel in the layers and overlay the spatial layers and temporal error layers, using different areas to do different types of processing.
- the ADR 120 uses the motion compensated difference 306 in the compounding and companding engine 310 to map an absence of difference in the temporal error layer for each pixel using a weighting function.
- the motion compensated difference 306 at a motion estimation stage may range from one to 255, with a size of difference indicating whether a pixel is a candidate for a poor prediction.
- the weighting function may comprise P-function maps that indicate a range from a relatively good prediction to a relatively bad prediction on a scale of zero to one for the motion compensated difference 306. Small errors map linearly to the P-function maps, while large errors non-linearly to the P-function maps.
- the motion compensated difference 306 is determined in a range of values from zero to one on a compression scale by the compounding and companding engine 310.
- the compounding and companding engine 310 uses a non-linear companding scale and adds to two other P-functions. Each of the P-functions indicates parts of the original picture 124 that tend to be of high significance and easily tracked and parts of the reference picture 126 that tend to be of high significance and easily tracked as still images. The two images are multiplied together and used to map areas of the difference map where there is a higher probability of inaccurate prediction.
- the resulting weighting map 112 is a composite map that ranges from near zero when details are easy to track and easily predicted to one when details are either not easy to track, not easily predicted or a combination of not easy to track and not easily predicted.
- the weighting map 112 may be used to highlight areas which are of low perceptual significance and probably poorly predicted.
- the system 100 receives an original picture 124 at the input module 102 of the system 100.
- the original picture 124 may be a picture in a video sequence processed by a service provider, while the system 100 may compromise an encoding system in a cable head end.
- the system 100 creates a pixel map using a model human visual system and the picture decomposition 204.
- the original picture 124 may be represented in dual form as an IPEG signal using an IPEG system for the model human visual system and performing an IPEG decomposition using the picture decomposition 204.
- the system 100 creates the pixel map in a parallel model.
- the original picture 124 is mapped pixel by pixel as it would be mapped in a human retina.
- the IPEG decomposition stratifies the mapped original picture 124 in terms of high perceptual detail features and low perceptual detail features.
- the system 100 determines a first layer from the pixel map using the picture decomposition 204.
- the first layer is a noise layer 206 determined by the system 100 using the 3DNR 110.
- the noise layer 206 includes a value for each pixel based on the model human visual system. For instance, parts of the mapped original picture 124 that are low perceptual detail features and cannot be predicted to a predetermined level of accuracy through motion compensation become candidates for noise. Parts of the original picture 124 where motion cannot be predicted to the predetermined level of accuracy will be difficult-to-compress.
- the difficult-to-compress may be determined based on a predetermined scale or on a relative basis with regard to other parts of the original picture 124.
- the first layer is a spatial detail layer 406 determined by the system 100 using the ADR 120.
- the spatial detail layer 406 includes a value for each pixel based on a model of human spatial perceptibility.
- the input module 102 receives a reference picture 126.
- the reference picture 126 may include a previously cleaned picture 125 in the video sequence from the 3DNR 110.
- the reference picture 126 may also include a previously modified picture 426 in the sequence from the ADR 120.
- the system 100 determines a motion compensated difference 306 between the original picture 124 and the reference picture 126. For instance, the system 100 may determine the motion compensated difference 306 using a motion compensation engine 302.
- the system 100 determines a weighting map 112 from the motion compensated difference between the original picture 124 and the reference picture 126. For instance, the system 100 may create the weighting map 112 using a scale of zero to one representing whether energy in a part of the picture is likely to be due to noise or something that can be perceived and compressed easily.
- the system 100 determines a processed picture from the original picture 124 using the weighting map 112 and the first layer.
- the determined processed picture is a cleaned picture 125 and the first layer used to determine the cleaned picture 125 is a noise layer.
- the system 100 more particularly the 3DNR 110, forms a modified noise layer 210 using the noise layer 206 and the weighting map 112.
- the 3DNR 110 includes a value for each pixel in the modified noise layer 210 based on a model of human perceptibility.
- the 3DNR 110 determines the cleaned picture 125 by subtracting pixels in the modified noise layer 210 from pixels in the original picture to eliminate data that is difficult-to-compress and difficult-to-perceive.
- Fig. 7 and subsequent figures illustrate a system where quantization parameters are provided to a encoder to enable the encoder to compress data to take into account human perceptual guidance.
- the video data is provided directly to the compressor in these subsequent embodiments and cleaning of the data as in systems described with figures prior to Fig. 7 is not necessary.
- Fig. 7 shows components of a first embodiment of a system to determine quantization need data based on human perceptual guidance to control encoding.
- the system receives an original input picture 124 that will be input to encoder 712 as well as a quantization data control processor 700.
- the quantization data control processor 700 will generate the quantization need data signals that could be used to control compression in the encoder 712.
- the control processor includes a perceptual transform block 701 that receives the input picture.
- the perceptual transform block 701 applies a model of the human visual system 208 that may include a model of human spatial perceptibility and a model of human temporal perceptibility.
- a process performed by the perceptual transform block 701 is the integrated perceptual guide (IPeG) that uses a model of the human visual system in creating the weighting map 112, which is described in more detail in U.S. Patent Nos. 6,014,468 , 6,360,021 , and 7,046,857 referenced previously.
- IPeG system provides information including a set of signals that organizes visual details into perceptual significance, and a metric that indicates the ability of a viewer to track certain video details.
- the IPeG eye tracking map can be generated in a Perceptual Video Processor (PVP) plug-in module.
- PVP Perceptual Video Processor
- An example of such a PVP is the SE6601 manufactured by Motorola Mobility, Inc.
- the PVP uses a spatial temporal "P function" of an Adaptive Detail Preservation process described in U.S. Patent Application No. 12/761,581 (having attorney docket no. BCS05793).
- the PVP can make up a part of the perceptual transform block 701, or be provided from a separate processor from one or more other processors providing functions within the overall quantization data control processor 700.
- One feature in one embodiment of the present invention is that the eye tracking data generated in a PVP can then be transferred to these other processing elements.
- the PVP and other processors can be provided in the present invention with a memory that is included to store code to enable the processors to operate to provide the functions described subsequently to generate quantization data.
- the PVP can be provided with the memory and encoder on a single integrated circuit, or each component can be provided separately.
- the perceptual transform block 702 creates a spatial detail map eY.
- the absolute value block 702 then provides an absolute value of the numbers in the spatial detail map
- the compander block 704 arranges the detail map values with a signal between 0 and 1 in a compressed range.
- the values from the compander 706 are next provided to the decimation block 708.
- the decimation block 708 accumulates the data from the companding signal to fit the parameters of the encoding system. For example, in one embodiment, the encoder selects a single QP value for each 16x16 macroblock of pixels in the input data, the decimator would then convert each corresponding 16x16 block of companded spatial detail values to a quantization-need value so that there would be a one-to-one mapping between quantization-need values and QP values. In one embodiment, the decimator converts values by averaging.
- the values from the decimation block 708 are used to find values from a quantization parameter (QP) look up table (LUT).
- QP LUT values are metadata in one embodiment that are created based on studies of human visual data that can be used to control data compression in an efficient manner where bits are allocated to pixels that the human eye is normally attracted toward. Data compression can then be provided in an efficient manner while high quality pictures are provided according to human visual perception.
- the data from the QP LUT in block 708 are then provided as quantization need-data values using quantization-need data block 710 to the encoder 712.
- the encoder 712 uses the quantization need-data values or metadata to control data compression.
- Fig. 7 differs from previous procedures which provided perceptual transforms based on human visual data to clean up pixel information directly in the picture before the picture was provided to the encoder 712.
- Previous encoders selected QP values (quantization values) for the pictures based on one of several metrics, such as: 1) the sum-of-absolute difference (SAD) between a predicted picture and a reference picture (which is used as an indicator of predictability); 2) the block-by-block Hadamard transform of an input picture (which is used as an indicator of compressibility).
- SAD sum-of-absolute difference
- block-by-block Hadamard transform of an input picture which is used as an indicator of compressibility
- the selection of a QP value occurs within the encoding loop.
- an indicator of eye tracking is created external from the encoding loop but for use within the encoding loop and cleaning of the picture prior to encoding is not required.
- Fig. 8 shows modifications to the system of Fig. 7 to provide an infinite impulse response (IIR) block 802 to modify the companded pixel values from block 704 prior to performing decimation in block 708.
- the IIR block 802 looks at a previous picture to the picture being encoded and creates a more gradual change from the previous picture.
- all of the calculations performed in the perceptual transform block 701, compander 704 and absolute value block 702 can be performed in a PVP.
- Fig. 9 shows modifications to the system of Fig. 7 to provide motion compensation.
- the system of Fig. 9 uses a reference picture 902 that is separate from a quantization data control processor 900.
- the reference picture 902 may be a picture that has previously been processed, or alternatively it can be an unprocessed picture.
- the quantization control processor 900 may be a single PVP, or a PVP in combination with other processors.
- the reference picture from block 902 and input picture from block 124 are provided to a motion compensation determination block 906.
- the motion compensation determination block 906 determines a motion compensated difference between the original input picture from block 124 and reference picture from block 902, and can function similar to the motion compensation engine 302 described with respect to Fig. 3 .
- a perceptual transform block 904 receives the reference picture block 902 output, while another perceptual transform block 908 receives the motion compensated difference output from motion compensation block 906.
- the perceptual transform blocks 904 and 908 applies a model of the human visual system that may include a model of human spatial perceptibility and a model of human temporal perceptibility as described previously for block 701 of Figs. 7 and 8 .
- the output the perceptual transform blocks 904 and 908 are then subtracted and provided to an absolute value block 702.
- the motion compensated output was summed (rather than subtracted) from the reference picture output, as the present system looks for a difference between pictures to determine quantization parameters instead of cleaning a picture.
- Fig. 9 then proceeds after the absolute value block 702 in a manner similar to Fig. 7 to determine quantization data values to provide to encoder 712.
- all of the calculations performed in the perceptual transform block 701, compander 704 and absolute value block 702 can be performed in a PVP.
- Fig. 10 modifies the system of Fig. 9 by adding an infinite impulse response (IIR) block 1002.
- IIR infinite impulse response
- the IIR block 802 looks at a previous picture to the picture being encoded and creates a more gradual change from the previous picture.
- Fig. 11 modifies the system of Fig. 10 by applying a perceptual transform to the reference and original pictures prior to motion compensation.
- a perceptual transform is applied in block 902 to the reference picture from block 902 before motion compensation is performed in block 1106.
- the original input picture from block 124 is provided through a perceptual transform block 1108 before the motion compensation block 1106.
- the motion compensation takes a difference of the transformed inputs and is subtracted from the output of block 1104 to provide to the absolute value block 702.
- IIR infinite impulse response
- Embodiments of the present invention provide a number of improvements over previous systems. These improvements include: (1) Improved compression efficiency. (2) Improved visual quality. (3) Can use existing motion estimation and compensation components, such as those provided in a PVP. (4) Does not require change to a decoder or a set top box. (5) Can be used as a pre-analysis process to generate "hints" for existing compression ASICs used in encoders. (6) The major processing step of generating IPeG spatial detail maps and spatial-temporal perceptual weighting maps is already implement in current PVPs.
- FIG. 13 shows representative images to illustrate operation of components of systems according to embodiments of the present invention.
- a design image 1302 is shown as an input original picture provided to the system.
- a spatial detail image 1306 is shown provided from an IPeG Transform device 1304, wherein the IPeG transform can be provided by a component such as the perceptual transform component 701 shown in Fig. 7 .
- IPeG Transform device 1304 Taking the absolute value of the spatial detail image 1306 provides image 1310, wherein the absolute value can be performed by the component 702 of Fig. 7 .
- An image created from taking the sign of the spatial detail image 1306 is shown as 1308 for comparison with image 1310.
- the absolute value image 1310 is then provided through compander 704 to provide a predicted eye attractor image 1312.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
- The present invention relates to a method of video data compression to allocate pixels based on human eye attraction to particular areas of the picture.
- The quality of a video image is ultimately determined by a human viewer of the video image pictures. Allocation of pixels during video compression is based on maintaining the quality of the video image as determined by the human viewer. Video images can be enhanced for compression by considering areas of a picture where no motion has occurred, or where the pixels of a large portion of the picture are uniform. It is further desirable to increase the compression of pixels in video images even in portions that include difficult-to-track visual details. However, it is difficult to accurately identify difficult-to-track visual details. If important details in the video image are removed, the end user will perceive a degradation in video quality.
- The efficiency of video compression techniques performed by an encoder are limited without an accurate method of allocating bits based on a reliable perceptual mode. Existing image and video compression standards used by encoders rely on ad hoc assumptions about what kinds of details are visually important, and do not model the way in which the visual importance of image and video details are impacted by human eye attraction. In particular, existing encoders do not model the way in which the visual importance of image and video details is impacted by spatial context or temporal factors. Further, existing encoders do not analyze content prior to compression so as to provide data compression to allocate bits more efficiently.
- Embodiments of the present invention provide a system to create quantization parameters based on human eye attraction to provide to an encoder to enable the encoder to compress data taking into account human perceptual guidance. The video data is provided directly to the compressor so that cleaning of data prior to encoding is not necessary.
- According to an embodiment, the system includes a quantization data processor for providing quantization metadata to an encoder to enable the encoder to control compression based on human eye tracking data. The quantization data processor can be a perceptual video processor (PVP) that uses human eye tracking information to determine the quantization data. In one embodiment, the quantization data processor is configured to determine the quantization data by performing the following steps: receiving an original input picture; obtaining a perceptual significance pixel map for the original input picture using predictions of eye tracking; providing an absolute value for numbers in the significance pixel map; performing companding to reduce the determined absolute value of the pixel values to values ranging from zero to one; performing decimation on the companded values to match a spatial resolution of QP values to be encoded; determining quantization parameters for the pixels provided from the decimation from a quantization parameter (QP) look up table (LUT); providing the QP LUT table values as metadata to an encoder to enable compression of the original picture to be performed by the encoder in a manner so that bits are allocated to pixels in a macroblock according to the predictions of eye tracking.
- In further embodiments of the present invention, an infinite impulse response (IIR) filter is provided to modify the companded pixel values prior to performing decimation. The IIR filter looks at a previous picture to the picture being encoded and creates a more gradual change from the previous picture.
- In a further embodiment, a motion compensation difference operation is provided between a reference picture and an original input picture provided to the decoder. A perceptual significance pixel map is provided both for the reference picture and the output of the motion compensated difference picture and a difference is taken between the signals to provide an input to the absolute value portion of the PVP in the process described above. In one embodiment, the perceptual significance pixel map is provided prior to motion compensation of the reference and input pictures, while in another embodiment the significance map is created after motion compensation.
- Further details of the present invention are explained with the help of the attached drawings in which:
-
Fig. 1 illustrates a block diagram for a system for reducing noise in video processing; -
Fig. 2 shows a data flow diagram of a 3D noise reducer; -
Fig. 3 illustrates perceptual masking and preservation using the 3D noise reducer; -
Fig. 4 shows a data flow diagram of an adaptive detail reducer; -
Fig. 5 illustrates perceptual masking and preservation using the adaptive detail reducer; -
Fig. 6 illustrates a flow diagram of a method of reducing noise in video processing; -
Fig. 7 shows components of a first embodiment of a system to determine quantization need data based on human perceptual guidance to control encoding; -
Fig. 8 shows modifications to the system ofFig. 7 to provide an infinite impulse response (IIR); -
Fig. 9 shows modifications to the system ofFig. 7 to provide motion compensation; -
Fig. 10 modifies the system ofFig. 9 by adding an infinite impulse response (IIR; -
Fig. 11 modifies the system ofFig. 10 by applying a perceptual transform to the reference and original pictures prior to motion compensation; -
Fig. 12 modifies the system ofFig. 11 by adding an infinite impulse response (IIR); and -
Fig. 13 shows representative images to illustrate operation of components of systems according to embodiments of the present invention. - Embodiments of the invention provide for use of a human eye attraction mapping to be used to enhance the picture quality for video data being encoded. In previous systems, the eye attraction mapping was used to clean pictures for processing in an encoder. In a second version that are the subject of embodiments of the present invention, the eye attraction mapping is performed to enable generation of quantization need metadata that is provided to an encoder to enable encoding of the data in a manner that allocates more bits to areas of a picture where a human eye is naturally attracted, while less bits are provided in other areas. In the second version any picture can be provided to the encoder, and cleaning is not needed.
-
Fig. 1 shows a block diagram of a system 100 for reducing noise in video processing that provides for cleaning of the picture prior to compression in an encoder. The system 100 includes aninput module 102, a three dimensional noise reducer (3DNR) 110 and an adaptive detail reducer (ADR) 120. Theinput module 102 is configured to receive anoriginal picture 124 in a video sequence. The 3DNR performs three dimensional noise reduction on theoriginal picture 124 in two spatial dimensions and a temporal dimension. The ADR 120 performs adaptive detail reduction on theoriginal picture 124 on selected difficult-to-track details. The systems described in this section A are detailed inU.S. Patent Application Serial No. 12/761,581, filed April 16, 2010 - The system 100 uses a
weighting map 112 to form a processedpicture 130 from theoriginal picture 124. Theweighting map 112 is created by the system 100 using a model of the human visual system that takes into account the statistics of natural images and the response functions of cells in the retina. Theweighting map 112 is a pixel map of theoriginal picture 124 based on the model of the human visual system. Theweighting map 112 may include a value or weight for each pixel identifying a level of difficulty for visual perception and/or a level of difficulty for compression. The level of difficulty for compression may be a continuous scale measuring the number of bits needed to encode the pixel or area of the image. Similarly, the level of difficulty for visual perception is a continuous scale measuring the number of bits needed to encode the pixel or area of the image. -
Different weighting maps 112 may be used in the 3DNR 110 and the ADR 120. For instance, the system 100 may be configured to use theweighting map 112 and the 3DNR 110 to reduce noise in theoriginal picture 124 and thereby form the processedpicture 130. Additionally or alternately, the system 100 may reduce difficult-to-track details in theoriginal picture 124 using theweighting map 112 and theADR 120 to form the processedpicture 130. The difficult-to-track details may be determined using a predetermined threshold based on theweighting map 112. - The processed
picture 130 may comprise a cleanedpicture 125 after processing by the 3DNR 110 as described below with respect toFig. 2 , a modified picture after processing by theADR 120 as described below with respect toFig. 4 , or a cleaned and modified picture after processing by the 3DNR 110 and theADR 120. The cleanedpicture 125 includes reduced amounts of noise while a modified picture includes reduced amounts of adapted details. The adapted details are important features, such as faces and edges that are preserved by theADR 120 and are determined to be useful for perceiving the image. - The system 100 uses a
reference picture 126 to clean or modify theoriginal picture 124. Thereference picture 126 may include a picture that has previously been processed by the system 100, for instance the cleanedpicture 125 from a precedingoriginal picture 124 in the video sequence. Alternately, thereference picture 126 may comprise an unprocessed picture. - The system 100 uses the information to selectively reduce noise and difficult-to-track details with minimal introduction of noticeable processing artifacts. In addition, processes used in the system 100 use the
weighting map 112 to reduce and/or eliminate artifacts such as motion blur, motion discontinuities, and artificial-looking edges. The system 100 reduces perceptual masking and may be used to avoid smearing. The3DNR 110 may be configured to extract a noise layer, thereby performing auto adapting noise reduction for the video sequence, and theADR 120 may be used to extract a spatial layer, thereby performing adaptive detail reduction for the video sequence. The3DNR 110 and theADR 120 are fully separable and the system 100 may comprise asingle 3DNR 110, the operation of which is described with respect toFig. 2 below, or asingle ADR 120, the operation of which is described with respect toFig. 4 below. -
Fig. 2 illustrates a data flow diagram 200 for the3DNR 110. Theoriginal picture 124 is decomposed usingpicture decomposition 204 into anoise layer 206 and aweighting map 112. Thepicture decomposition 204 uses the model humanvisual system 208 to determine a pixel map based on theoriginal picture 124. - The model of the human
visual system 208 may include a model of human spatial perceptibility and a model of human temporal perceptibility. The model of the human visual system used in creating theweighting map 112 is an integrated perceptual guide (IPeG) system, described in more detail inU.S. Patent No. 6,014,468 entitled "Apparatus and Methods for Image and Signal Processing," issued January 11, 2000,U.S. Patent No. 6,360,021 entitled "Apparatus and Methods for Image and Signal Processing," issued March 19, 2002,U.S. Patent No. 7,046,857 entitled "Apparatus and Methods for Image and Signal Processing," a continuation ofU.S. Patent No. 6,360,021 issued May 16, 2006 , andInternational Application PCT/US98/15767 - The
noise layer 206 includes a value for each pixel based on the model of human spatial perceptibility. For instance, thenoise layer 206 may be determined using Equation (1):spatial detail layer 304, and P(i, j) are P-functions that are inputs to calculating the weighting maps 112. A P-function for thenoise layer 206 may be determined using Equation (2): - Parameters denoted as lambdas (λ) are tuning parameters that are used to change an overall strength of the
3DNR 110 and theADP 120. For instance, six strength-levels ("strongest", "strong", "medium", "weak", "weakest", and "disabled") may be provided for the3DNR 110 and theADP 120, independently. Each strength-level is associated with a set of lambda values and alpha values (which are the on and off rates of the asymmetric IIR). The service provider empirically selects the default lambda values for each strength-level in a way that helps customers meet video quality and bit rate needs. The values associated with3DNR 110 andADP 120 may be customized to provide more control. Continuously valued functions may be used to generate the P-functions, provide opportunities for customization, and avoid visual distortions that may arise near the boundaries of the "all-or-none" decisions imposed by threshold operations. The subscript n for the P-function refers to thenoise layer 206. - The
weighting map 112, W(i,j),includes a value for each pixel based on the model of human temporal perceptibility. After decomposition, thenoise layer 206 is recombined with theweighting map 112 to form a modifiednoise layer 210. The modifiednoise layer 210 is subtracted from theoriginal picture 124 to produce a cleanedpicture 125. - The
3DNR 110 may be used for perceptual masking and preservation, as shown with respect toFig. 3 . The P-function for perceptual masking may be determined using Equation (3): PS (i,j)= exp(- |E(i,j)|/λS ). Perceptual video identifies parts of vision that human retina sees that are of low impact to perception of image and allows the system 100 to reduce the corresponding low impact parts of image so that there is a reduced amount of data to encode. The subscript s for the P-function refers to thespatial detail layer 304. - As shown in
Fig. 3 , theoriginal picture 124 may be provided to thepicture decomposition 204 to determine thespatial detail layer 304. For instance, thespatial detail layer 304 may be determined using Equation (4): E(i,j)= (Y(i,j)-Y )-B(i, j), in which Y(i,j) is the pixel map of luma values, andY is a mean value of the pixel map of luma values that may be determined by Equation (5): - The
original picture 124 along with areference picture 126 may also be provided to amotion compensation engine 302. Themotion compensation engine 302 thereafter determines a motion compensateddifference 306 between theoriginal picture 124 and thereference picture 126. For instance, themotion compensation engine 302 may determine motion compensation errors using Equations (7) through (9):3DNR 110 may be determined using Equation (11): - The motion compensated
difference 306, thespatial detail layer 302, and a referencespatial detail layer 308 of thereference picture 126 may all be provided to a compounding andcompanding engine 310. The result of processing of the picture using the compounding andcompanding engine 310 may be provided to an Asymmetric (infinite impulse response)IIR 312 with scene-change reset operation. -
- The motion compensated
difference 306 between theoriginal picture 124 and thereference picture 126 may be determined using motion vectors. The motion compensateddifference 306 may be determined on a pixel by pixel basis and is used to measure a difference between theoriginal picture 124 and thereference picture 126. Some parts of the difference between theoriginal picture 124 and thereference picture 126 may comprise areas of edges that need to be preserved while other parts may comprise noise that may be removed without affecting perception of the image. Thespatial detail layer 304 supplied for theoriginal picture 124 and the referencespatial detail layer 308 supplied for thereference picture 126 are used to identify areas that are not perceptually significant. Theweighting map 112 used by the3DNR 110 combines the spatial layers to reduce noise while preserving perceptually significant details i.e. details that are important from a feature point of view. - For instance, a noise estimate may be determined using Equation (14): N(i, j) = [1- b·(1-W3DNR (i, j))]·N(i, j), in which b is a constant. Thereafter the
3DNR 110 may determine a cleaned 3DNR image using Equation (15): Y3DNR (i,j) = Y(i, j)-N̂(i, j) . - Turning now to
Fig. 5 , the operation of theADR 120 is further illustrated. Theoriginal picture 124 is decomposed using thepicture decomposition 204 into aspatial detail layer 302 and theweighting map 112. Thespatial detail layer 406 includes a value for each pixel based on a model of human spatial perceptibility. Theweighting map 112 includes a value for each pixel based on a model of human temporal perceptibility. After decomposition, thespatial detail layer 406 is recombined with theweighting map 112 to form a modifieddetail layer 410. The modifieddetail layer 410 is subtracted from theoriginal picture 124 to produce a modifiedpicture 426. - The
ADR 120 may also be used for perceptual masking and preservation, as shown with respect toFig. 5 . Theoriginal picture 124 may be provided to thepicture decomposition 204 to determine thespatial detail layer 304. For instance, theADR 120 may determine a P-function for high-energy spatial detail using Equation (16): - The
original picture 124 along with areference picture 126 may also be provided to themotion compensation engine 302. Themotion compensation engine 302 thereafter determines a motion compensateddifference 306 between theoriginal picture 124 and thereference picture 126. The motion compensateddifference 306 may be provided to a compounding andcompanding engine 310. The result of processing of the picture using the compounding andcompanding engine 310 may be provided to an Asymmetric (infinite impulse response)IIR 312 with scene-change reset operation. -
- The
reference picture 126 may comprise a previous cleanedpicture 125 in the video sequence from the3DNR 110. Alternately, thereference picture 126 may comprise a previous modifiedpicture 426 in the video sequence from theADR 120. However, in instances where the previous modifiedpicture 426 is used, a motion mismatch may be introduced that increases spatial detail reduction and adds a second-order temporal dependence. By using the previous cleanedpicture 125 in the video sequence from the3DNR 110, theADR 120 follows the unpredictable difference between theoriginal picture 124 and thereference picture 126 as closely as possible so that unpredictability is reduced for the encoding process. Use of the previous modifiedpicture 426 as thereference picture 126 effectively introduces an artificial unpredictability. - The
ADR 120 may process theoriginal picture 124 to selectively attenuate details that are simultaneously difficult-to-perceive and difficult-to-compress, to preserve important features (e.g., faces, edges), and to avoid blurring. For instance, difficult-to-track high-energy detail may be determined using Equation (20): Ŝ(i,j) = WADP (i,j)·E(i,j). Thereafter theADR 120 may determine an ADP image using Equation (21): YADP (i,j) = Y(i,j) - Ŝ(i,j). - Increased compression efficiency improvement on high-energy background motion, e.g. up to 50%, may preferably be obtained. The
ADR 120 subtracts the unpredictable high-energy detail from theoriginal picture 124. More specifically, theADR 120 extracts a spatial detail layer, accounts for perceptual masking and may be used to avoid blurring. TheADR 120 uses the spatial layers and temporal error layers, which may be created through motion estimation, to perform perceptual masking and preservation. TheADR 120 may determine a number from zero to one for each pixel in the layers and overlay the spatial layers and temporal error layers, using different areas to do different types of processing. - The
ADR 120 uses the motion compensateddifference 306 in the compounding andcompanding engine 310 to map an absence of difference in the temporal error layer for each pixel using a weighting function. The motion compensateddifference 306 at a motion estimation stage may range from one to 255, with a size of difference indicating whether a pixel is a candidate for a poor prediction. The weighting function may comprise P-function maps that indicate a range from a relatively good prediction to a relatively bad prediction on a scale of zero to one for the motion compensateddifference 306. Small errors map linearly to the P-function maps, while large errors non-linearly to the P-function maps. - The motion compensated
difference 306 is determined in a range of values from zero to one on a compression scale by the compounding andcompanding engine 310. The compounding andcompanding engine 310 uses a non-linear companding scale and adds to two other P-functions. Each of the P-functions indicates parts of theoriginal picture 124 that tend to be of high significance and easily tracked and parts of thereference picture 126 that tend to be of high significance and easily tracked as still images. The two images are multiplied together and used to map areas of the difference map where there is a higher probability of inaccurate prediction. The resultingweighting map 112 is a composite map that ranges from near zero when details are easy to track and easily predicted to one when details are either not easy to track, not easily predicted or a combination of not easy to track and not easily predicted. Theweighting map 112 may be used to highlight areas which are of low perceptual significance and probably poorly predicted. - Example of methods in which the system 100 may be employed for reducing noise in video processing will now be described with respect to the following flow diagram depicted in
Fig. 6 . - At
step 601, as shown inFig. 6 , the system 100 receives anoriginal picture 124 at theinput module 102 of the system 100. For instance, theoriginal picture 124 may be a picture in a video sequence processed by a service provider, while the system 100 may compromise an encoding system in a cable head end. - At
step 602, the system 100 creates a pixel map using a model human visual system and thepicture decomposition 204. For instance, theoriginal picture 124 may be represented in dual form as an IPEG signal using an IPEG system for the model human visual system and performing an IPEG decomposition using thepicture decomposition 204. The system 100 creates the pixel map in a parallel model. Theoriginal picture 124 is mapped pixel by pixel as it would be mapped in a human retina. The IPEG decomposition stratifies the mappedoriginal picture 124 in terms of high perceptual detail features and low perceptual detail features. - At
step 603, the system 100 determines a first layer from the pixel map using thepicture decomposition 204. The first layer is anoise layer 206 determined by the system 100 using the3DNR 110. Thenoise layer 206 includes a value for each pixel based on the model human visual system. For instance, parts of the mappedoriginal picture 124 that are low perceptual detail features and cannot be predicted to a predetermined level of accuracy through motion compensation become candidates for noise. Parts of theoriginal picture 124 where motion cannot be predicted to the predetermined level of accuracy will be difficult-to-compress. The difficult-to-compress may be determined based on a predetermined scale or on a relative basis with regard to other parts of theoriginal picture 124. - The first layer is a
spatial detail layer 406 determined by the system 100 using theADR 120. Thespatial detail layer 406 includes a value for each pixel based on a model of human spatial perceptibility. - At
step 604, theinput module 102 receives areference picture 126. Thereference picture 126 may include a previously cleanedpicture 125 in the video sequence from the3DNR 110. Thereference picture 126 may also include a previously modifiedpicture 426 in the sequence from theADR 120. - At
step 605, the system 100 determines a motion compensateddifference 306 between theoriginal picture 124 and thereference picture 126. For instance, the system 100 may determine the motion compensateddifference 306 using amotion compensation engine 302. - At
step 606, the system 100 determines aweighting map 112 from the motion compensated difference between theoriginal picture 124 and thereference picture 126. For instance, the system 100 may create theweighting map 112 using a scale of zero to one representing whether energy in a part of the picture is likely to be due to noise or something that can be perceived and compressed easily. - At
step 607, the system 100 determines a processed picture from theoriginal picture 124 using theweighting map 112 and the first layer. The determined processed picture is a cleanedpicture 125 and the first layer used to determine the cleanedpicture 125 is a noise layer. The system 100, more particularly the3DNR 110, forms a modifiednoise layer 210 using thenoise layer 206 and theweighting map 112. The3DNR 110 includes a value for each pixel in the modifiednoise layer 210 based on a model of human perceptibility. The3DNR 110 determines the cleanedpicture 125 by subtracting pixels in the modifiednoise layer 210 from pixels in the original picture to eliminate data that is difficult-to-compress and difficult-to-perceive. -
Fig. 7 and subsequent figures illustrate a system where quantization parameters are provided to a encoder to enable the encoder to compress data to take into account human perceptual guidance. The video data is provided directly to the compressor in these subsequent embodiments and cleaning of the data as in systems described with figures prior toFig. 7 is not necessary. -
Fig. 7 shows components of a first embodiment of a system to determine quantization need data based on human perceptual guidance to control encoding. The system receives anoriginal input picture 124 that will be input toencoder 712 as well as a quantizationdata control processor 700. The quantizationdata control processor 700 will generate the quantization need data signals that could be used to control compression in theencoder 712. - The control processor includes a
perceptual transform block 701 that receives the input picture. Theperceptual transform block 701 applies a model of the humanvisual system 208 that may include a model of human spatial perceptibility and a model of human temporal perceptibility. One non-limiting example of a process performed by theperceptual transform block 701 is the integrated perceptual guide (IPeG) that uses a model of the human visual system in creating theweighting map 112, which is described in more detail inU.S. Patent Nos. 6,014,468 ,6,360,021 , and7,046,857 referenced previously. The IPeG system provides information including a set of signals that organizes visual details into perceptual significance, and a metric that indicates the ability of a viewer to track certain video details. - In one embodiment the IPeG eye tracking map can be generated in a Perceptual Video Processor (PVP) plug-in module. An example of such a PVP is the SE6601 manufactured by Motorola Mobility, Inc. In one embodiment, the PVP uses a spatial temporal "P function" of an Adaptive Detail Preservation process described in
U.S. Patent Application No. 12/761,581 (having attorney docket no. BCS05793). The PVP can make up a part of theperceptual transform block 701, or be provided from a separate processor from one or more other processors providing functions within the overall quantizationdata control processor 700. One feature in one embodiment of the present invention is that the eye tracking data generated in a PVP can then be transferred to these other processing elements. - The PVP and other processors can be provided in the present invention with a memory that is included to store code to enable the processors to operate to provide the functions described subsequently to generate quantization data. The PVP can be provided with the memory and encoder on a single integrated circuit, or each component can be provided separately.
- With the
original input picture 124 represented as Y pixel values, theperceptual transform block 702 creates a spatial detail map eY. Theabsolute value block 702 then provides an absolute value of the numbers in the spatial detail map |eY|. Next thecompander block 704 arranges the detail map values with a signal between 0 and 1 in a compressed range. In one example, the companded pixel values can be determined as pY as follows: - The values from the
compander 706 are next provided to thedecimation block 708. Thedecimation block 708 accumulates the data from the companding signal to fit the parameters of the encoding system. For example, in one embodiment, the encoder selects a single QP value for each 16x16 macroblock of pixels in the input data, the decimator would then convert each corresponding 16x16 block of companded spatial detail values to a quantization-need value so that there would be a one-to-one mapping between quantization-need values and QP values. In one embodiment, the decimator converts values by averaging. - Next, the values from the
decimation block 708 are used to find values from a quantization parameter (QP) look up table (LUT). The QP LUT values are metadata in one embodiment that are created based on studies of human visual data that can be used to control data compression in an efficient manner where bits are allocated to pixels that the human eye is normally attracted toward. Data compression can then be provided in an efficient manner while high quality pictures are provided according to human visual perception. - The data from the QP LUT in
block 708 are then provided as quantization need-data values using quantization-need data block 710 to theencoder 712. Theencoder 712 uses the quantization need-data values or metadata to control data compression. - The procedure described with respect to
Fig. 7 differs from previous procedures which provided perceptual transforms based on human visual data to clean up pixel information directly in the picture before the picture was provided to theencoder 712. Previous encoders selected QP values (quantization values) for the pictures based on one of several metrics, such as: 1) the sum-of-absolute difference (SAD) between a predicted picture and a reference picture (which is used as an indicator of predictability); 2) the block-by-block Hadamard transform of an input picture (which is used as an indicator of compressibility). In these previous cases, the selection of a QP value occurs within the encoding loop. In embodiments of the invention, an indicator of eye tracking is created external from the encoding loop but for use within the encoding loop and cleaning of the picture prior to encoding is not required. -
Fig. 8 shows modifications to the system ofFig. 7 to provide an infinite impulse response (IIR) block 802 to modify the companded pixel values fromblock 704 prior to performing decimation inblock 708. TheIIR block 802 looks at a previous picture to the picture being encoded and creates a more gradual change from the previous picture. In one embodiment all of the calculations performed in theperceptual transform block 701,compander 704 andabsolute value block 702 can be performed in a PVP. -
Fig. 9 shows modifications to the system ofFig. 7 to provide motion compensation. The system ofFig. 9 uses areference picture 902 that is separate from a quantization data control processor 900. Thereference picture 902, as with previous figures, may be a picture that has previously been processed, or alternatively it can be an unprocessed picture. The quantization control processor 900 may be a single PVP, or a PVP in combination with other processors. - In
Fig. 9 , the reference picture fromblock 902 and input picture fromblock 124 are provided to a motioncompensation determination block 906. The motioncompensation determination block 906 determines a motion compensated difference between the original input picture fromblock 124 and reference picture fromblock 902, and can function similar to themotion compensation engine 302 described with respect toFig. 3 . - A
perceptual transform block 904 receives the reference picture block 902 output, while anotherperceptual transform block 908 receives the motion compensated difference output frommotion compensation block 906. The perceptual transform blocks 904 and 908 applies a model of the human visual system that may include a model of human spatial perceptibility and a model of human temporal perceptibility as described previously forblock 701 ofFigs. 7 and8 . The output the perceptual transform blocks 904 and 908 are then subtracted and provided to anabsolute value block 702. In previous systems where perceptual transforms are performed to clean a picture, the motion compensated output was summed (rather than subtracted) from the reference picture output, as the present system looks for a difference between pictures to determine quantization parameters instead of cleaning a picture. The system ofFig. 9 then proceeds after theabsolute value block 702 in a manner similar toFig. 7 to determine quantization data values to provide toencoder 712. In one embodiment all of the calculations performed in theperceptual transform block 701,compander 704 andabsolute value block 702 can be performed in a PVP. -
Fig. 10 modifies the system ofFig. 9 by adding an infinite impulse response (IIR)block 1002. As described with respect toFig. 8 , theIIR block 802 looks at a previous picture to the picture being encoded and creates a more gradual change from the previous picture. -
Fig. 11 modifies the system ofFig. 10 by applying a perceptual transform to the reference and original pictures prior to motion compensation. As opposed to the system ofFig. 10 , inFig. 11 , a perceptual transform is applied inblock 902 to the reference picture fromblock 902 before motion compensation is performed inblock 1106. Similarly, the original input picture fromblock 124 is provided through aperceptual transform block 1108 before themotion compensation block 1106. The motion compensation takes a difference of the transformed inputs and is subtracted from the output ofblock 1104 to provide to theabsolute value block 702. By transforming prior to motion compensation, human eye attraction patterns can be more discernable.Fig. 12 modifies the system ofFig. 11 by adding an infinite impulse response (IIR) block 1102. - Embodiments of the present invention provide a number of improvements over previous systems. These improvements include: (1) Improved compression efficiency. (2) Improved visual quality. (3) Can use existing motion estimation and compensation components, such as those provided in a PVP. (4) Does not require change to a decoder or a set top box. (5) Can be used as a pre-analysis process to generate "hints" for existing compression ASICs used in encoders. (6) The major processing step of generating IPeG spatial detail maps and spatial-temporal perceptual weighting maps is already implement in current PVPs.
- For reference,
Fig. 13 shows representative images to illustrate operation of components of systems according to embodiments of the present invention. Adesign image 1302 is shown as an input original picture provided to the system. Aspatial detail image 1306 is shown provided from anIPeG Transform device 1304, wherein the IPeG transform can be provided by a component such as theperceptual transform component 701 shown inFig. 7 . Taking the absolute value of thespatial detail image 1306 providesimage 1310, wherein the absolute value can be performed by thecomponent 702 ofFig. 7 . An image created from taking the sign of thespatial detail image 1306 is shown as 1308 for comparison withimage 1310. Theabsolute value image 1310 is then provided throughcompander 704 to provide a predictedeye attractor image 1312. - Although the present invention has been described above with particularity, this was merely to teach one of ordinary skill in the art how to make and use the invention. Many additional modifications will fall within the scope of the invention, as that scope is defined by the following claims.
- Further aspects of the invention are provided by the following numbered clauses:
- 1. A system for allocating bits for video signal processing and compression, the system comprising:
- an input module configured to receive an original picture in a video sequence;
- a control processor configured to:
- receive an original picture from the input module;
- obtain a perceptual significance pixel map for the original picture using predictions of eye tracking;
- provide an absolute value for numbers in the significance pixel map;
- perform companding to reduce the determined absolute value of the pixel values to values ranging from zero to one;
- perform decimation on the companded values to match a spatial resolution of QP values to be encoded;
- determine quantization parameters for the pixels provided from the decimation from a quantization parameter (QP) look up table (LUT);
- provide the QP LUT table values as metadata to enable compression of the original picture in a manner so that bits are allocated to pixels in a macroblock according to the predictions of eye tracking; and
- an encoder having a first input receiving the original video from the input module, and a control input for receiving the quantization metadata and using the quantization metadata to encode the original video.
- 2. The system of clause 1, wherein local quantization strength is adjusted so that the perceptual significance map has pixels within an image identified as perceptually significant receiving preferentially more bits than areas not identified as perceptually significant.
- 3. The system of clause 1, wherein the prediction of eye tracking comprises a prediction of visual attention.
- 4. The system of clause 3, wherein the prediction of visual attention comprises creating an eye attractor map that models both spatial and temporal aspects of the human vision system.
- 5. The system of clause 3, wherein the prediction of visual attention comprises creating an eye attractor map that models either spatial or temporal aspects of the human vision system.
- 6. The system of clause 5, wherein the eye attractor map is generated in a perceptual video processor (PVP).
- 7. The system of clause 6, wherein the eye attractor map is generated using a spatial temporal function of an adaptive preservation process.
- 8. The system of clause 6, wherein the control processor includes the PVP processor to perform the step of obtaining a perceptual significance pixel map that is separate from one or more processors included in the control processor that are used to perform other functions of the control processor.
- 9. The system of clause 1, wherein the decimation is performed by converting each block of the companded spatial detail values to a quantization-need value to provide a one-to-one mapping between quantization-need values and QP LUT values.
- 10. The system of clause 9, wherein the decimation is performed by averaging values for groups of the pixels.
- 11. The system of clause 1, wherein prior to the decimation the control processor is configured to:
perform an input impulse response (IIR) on the companded pixel values to provide a time average gradual change from a previous picture for encoding prior to the pixel values of the current picture. - 12. A system for allocating bits for video signal processing and compression, the system comprising:
- an input module configured to receive an original picture in a video sequence;
- a control processor configured to:
- receive an original picture from the input module;
- obtain a reference picture;
- generate a perceptual significance pixel map for the reference picture using predictions of eye tracking;
- determine a motion compensated picture from a difference between the original picture and the reference picture;
- generate a perceptual significance pixel map of the motion compensated picture using predictions of eye tracking; and
- determine a difference between the perceptual significance pixel map of the reference picture and the perceptual significance pixel map of the motion compensated picture to form a difference map;
- provide an absolute value for numbers in the difference map;
- perform companding to reduce the determined absolute value of the pixel values to values ranging from zero to one;
- perform decimation on the companded values to match a spatial resolution of QP values to be encoded;
- determine quantization parameters for the pixels provided from the decimation from a quantization parameter (QP) look up table (LUT);
- provide the QP LUT table values as metadata to enable compression of the original picture in a manner so that bits are allocated to pixels in a macroblock according to the predictions of eye tracking; and
- an encoder having a first input receiving the original video from the input module, and a control input for receiving the quantization metadata and using the quantization metadata to encode the original video.
- 13. The system of clause 12, wherein prior to the decimation the control processor is configured to:
perform an input impulse response (IIR) on the companded pixel values to provide a time average gradual change from a previous picture for encoding prior to the pixel values of the current picture. - 14. A system for allocating bits for video signal processing and compression, the system comprising:
- an input module configured to receive an original picture in a video sequence;
- a control processor configured to:
- receive an original picture from the input module;
- generate a perceptual significance pixel map for the original picture using predictions of eye tracking;
- obtain a reference picture;
- generate a perceptual significance pixel map for the reference picture using predictions of eye tracking;
- determine a motion compensated picture from a difference between the perceptual significance pixel map for the original picture and perceptual signifance pixel map for the reference picture;
- determine a difference between the motion compensated picture and the perceptual significance map for the reference picture to form a difference map;
- provide an absolute value for numbers in the difference map;
- perform companding to reduce the determined absolute value of the pixel values to values ranging from zero to one;
- perform decimation on the companded values to match a spatial resolution of QP values to be encoded;
- determine quantization parameters for the pixels provided from the decimation from a quantization parameter (QP) look up table (LUT);
- provide the QP LUT table values as metadata to enable compression of the original picture in a manner so that bits are allocated to pixels in a macroblock according to the predictions of eye tracking; and
- an encoder having a first input receiving the original video from the input module, and a control input for receiving the quantization metadata and using the quantization metadata to encode the original video.
- 15. The system of clause 14, wherein prior to the decimation the control processor is configured to:
perform an input impulse response (IIR) on the companded pixel values to provide a time average gradual change from a previous picture for encoding prior to the pixel values of the current picture. - 16. A method for video processing comprising:
- receiving an original picture from the input module;
- obtaining a perceptual significance pixel map for the original picture using predictions of eye tracking;
- providing an absolute value for numbers in the significance pixel map;
- performing companding to reduce the determined absolute value of the pixel values to values ranging from zero to one;
- performing decimation on the companded values to match a spatial resolution of QP values to be encoded;
- determining quantization parameters for the pixels provided from the decimation from a quantization parameter (QP) look up table (LUT);
- providing the QP LUT table values as metadata to an encoder to enable the encoder to perform compression of the original picture in a manner so that bits are allocated to pixels in a macroblock according to the predictions of eye tracking.
- 17. The method of clause 16, wherein the prediction of visual attention comprises creating an eye attractor map that models either spatial or temporal aspects of the human vision system.
- 18. The method of clause 16, further comprising:
performing an input impulse response (IIR) on the companded pixel values to provide a time average gradual change from a previous picture for encoding prior to the pixel values of the current picture.
Claims (15)
- A method for video processing, the method comprising:(a) receiving an input picture of a video sequence;(b) decomposing the input picture into a noise layer and a first weighting map, the noise layer based on a spatial model of the human visual system and the first weighting map based on a temporal model of the human visual system;(c) decomposing the input picture into a spatial layer and a second weighting map, the spatial layer including a value of each pixel of the input picture based on a model of human spatial perceptibility, the second weighting map including a value of each pixel of the input picture based on a model of human temporal perceptibility;(d) reducing noise in the input image to produce a cleaned picture using the noise layer and the first weighting map to produce a cleaned image;(d) reducing details that are both difficult to perceive and difficult to compress using the spatial layer and the second weighting map to produce a modified image; and(e) producing an output image based upon the cleaned image and the modified image.
- The method of claim 1 where the first weighting map is different from the second weighting map.
- The method of claim 1 where the step of reducing noise in the input image uses a reference image.
- The method of claim 3 where the reference image is feedback based on the cleaned image.
- The method of claim 1 where the first weighting map is determined using a motion compensation engine, a compounding and companding engine, and in Infinite Impulse Response (IIR) filter.
- The method of claim 1 where the second weighting map is determined using a motion compensation engine, a compounding and companding engine, and in Infinite Impulse Response (IIR) filter.
- The method of claim 1 where the step of reducing details in the input image uses a reference image.
- The method of claim 7 where the reference image is feedback based on the modified image.
- An apparatus for video processing that receives an input image and produces an output image, the apparatus comprising:(a) a noise reducer that decomposes the input picture into a noise layer and a first weighting map, the noise layer based on a spatial model of the human visual system and the first weighting map based on a temporal model of the human visual system;(c) an adaptive detail reducer that decomposes the input picture into a spatial layer and a second weighting map, the spatial layer including a value of each pixel of the input picture based on a model of human spatial perceptibility, the second weighting map including a value of each pixel of the input picture based on a model of human temporal perceptibility;(d) the noise reducer reducing noise in the input image to produce a cleaned picture using the noise layer and the first weighting map to produce a cleaned image;(d) the adaptive detail reducer reducing details that are both difficult to perceive and difficult to compress using the spatial layer and the second weighting map to produce a modified image; where(e) the output image is based upon the cleaned image and the modified image.
- The apparatus of claim 9 where the first weighting map is different from the second weighting map.
- The apparatus of claim 9 where the step of reducing noise in the input image uses a reference image.
- The apparatus of claim 11 where the reference image is feedback based on the cleaned image.
- The apparatus of claim 9 where the first weighting map is determined using a motion compensation engine, a compounding and companding engine, and in Infinite Impulse Response (IIR) filter.
- The apparatus of claim 9 where the second weighting map is determined using a motion compensation engine, a compounding and companding engine, and in Infinite Impulse Response (IIR) filter.
- The apparatus of claim 9 where the noise reducer is a 3D noise reducer that reduces noise in two spatial dimensions and one temporal dimension.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/841,865 US9661328B2 (en) | 2013-03-15 | 2013-03-15 | Method of bit allocation for image and video compression using perceptual guidance |
PCT/US2014/019722 WO2014149576A1 (en) | 2013-03-15 | 2014-03-01 | Improved method of bit allocation for image & video compression using perceptual guidance |
EP14712847.4A EP2982111A1 (en) | 2013-03-15 | 2014-03-01 | Improved method of bit allocation for image&video compression using perceptual guidance |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP14712847.4A Division EP2982111A1 (en) | 2013-03-15 | 2014-03-01 | Improved method of bit allocation for image&video compression using perceptual guidance |
Publications (1)
Publication Number | Publication Date |
---|---|
EP3817384A1 true EP3817384A1 (en) | 2021-05-05 |
Family
ID=50382587
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP14712847.4A Ceased EP2982111A1 (en) | 2013-03-15 | 2014-03-01 | Improved method of bit allocation for image&video compression using perceptual guidance |
EP20182723.5A Withdrawn EP3817384A1 (en) | 2013-03-15 | 2014-03-01 | Improved method of bit allocation for image&video compression using perceptual guidance |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP14712847.4A Ceased EP2982111A1 (en) | 2013-03-15 | 2014-03-01 | Improved method of bit allocation for image&video compression using perceptual guidance |
Country Status (6)
Country | Link |
---|---|
US (1) | US9661328B2 (en) |
EP (2) | EP2982111A1 (en) |
KR (1) | KR101715547B1 (en) |
CA (1) | CA2904613C (en) |
MX (1) | MX352633B (en) |
WO (1) | WO2014149576A1 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2804093A1 (en) * | 2013-05-13 | 2014-11-19 | Sony Corporation | A method for stabilization and a system thereto |
US10735737B1 (en) * | 2017-03-09 | 2020-08-04 | Google Llc | Bit assignment based on spatio-temporal analysis |
TW201942870A (en) * | 2018-04-03 | 2019-11-01 | 香港商科科串流股份有限公司 | Bitrate optimization system and method |
CN108932707B (en) * | 2018-08-17 | 2022-06-07 | 一艾普有限公司 | An image processing method and device |
CN111200734B (en) * | 2018-11-19 | 2022-03-11 | 浙江宇视科技有限公司 | Video coding method and device |
US10750182B2 (en) | 2018-11-20 | 2020-08-18 | Sony Corporation | Embedded codec circuitry for visual quality based allocation of refinement bits |
EP3713237A1 (en) * | 2019-03-20 | 2020-09-23 | InterDigital VC Holdings, Inc. | A method and apparatus for depth encoding and decoding |
CN112218088B (en) * | 2019-07-09 | 2024-10-22 | 深圳先进技术研究院 | Image and video compression method |
CN110536134B (en) * | 2019-09-27 | 2022-11-04 | 腾讯科技(深圳)有限公司 | Video encoding method, video decoding method, video encoding apparatus, video decoding apparatus, storage medium, and electronic apparatus |
US11638025B2 (en) * | 2021-03-19 | 2023-04-25 | Qualcomm Incorporated | Multi-scale optical flow for learned video compression |
US11930189B2 (en) | 2021-09-30 | 2024-03-12 | Samsung Electronics Co., Ltd. | Parallel metadata generation based on a window of overlapped frames |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6014468A (en) | 1997-07-31 | 2000-01-11 | The Regents Of The University Of California | Apparatus and methods for image and signal processing |
US6360021B1 (en) | 1998-07-30 | 2002-03-19 | The Regents Of The University Of California | Apparatus and methods of image and signal processing |
US7046857B2 (en) | 1997-07-31 | 2006-05-16 | The Regents Of The University Of California | Apparatus and methods for image and signal processing |
US20100265404A1 (en) * | 2009-04-17 | 2010-10-21 | General Instrument Corporation | System for reducing noise in video processing |
US9815767B2 (en) | 2013-01-28 | 2017-11-14 | Exxonmobil Chemical Patents Inc. | Alkyl aromatic hydroalkylation for the production of plasticizers |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5113256A (en) | 1991-02-08 | 1992-05-12 | Zenith Electronics Corporation | Method of perceptually modeling a video image signal |
US6670963B2 (en) | 2001-01-17 | 2003-12-30 | Tektronix, Inc. | Visual attention model |
JP4157484B2 (en) | 2004-03-17 | 2008-10-01 | 株式会社日立製作所 | Semiconductor integrated circuit and magnetic storage device using the same |
US20090074075A1 (en) * | 2007-09-14 | 2009-03-19 | The Hong Kong University Of Science And Technology | Efficient real-time rate control for video compression processes |
US9503756B2 (en) | 2011-12-09 | 2016-11-22 | Arris Enterprises, Inc. | Encoding and decoding using perceptual representations |
US20130195206A1 (en) | 2012-01-31 | 2013-08-01 | General Instrument Corporation | Video coding using eye tracking maps |
-
2013
- 2013-03-15 US US13/841,865 patent/US9661328B2/en active Active
-
2014
- 2014-03-01 EP EP14712847.4A patent/EP2982111A1/en not_active Ceased
- 2014-03-01 WO PCT/US2014/019722 patent/WO2014149576A1/en active Application Filing
- 2014-03-01 CA CA2904613A patent/CA2904613C/en active Active
- 2014-03-01 EP EP20182723.5A patent/EP3817384A1/en not_active Withdrawn
- 2014-03-01 KR KR1020157026581A patent/KR101715547B1/en not_active Expired - Fee Related
- 2014-03-01 MX MX2015012002A patent/MX352633B/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6014468A (en) | 1997-07-31 | 2000-01-11 | The Regents Of The University Of California | Apparatus and methods for image and signal processing |
US7046857B2 (en) | 1997-07-31 | 2006-05-16 | The Regents Of The University Of California | Apparatus and methods for image and signal processing |
US6360021B1 (en) | 1998-07-30 | 2002-03-19 | The Regents Of The University Of California | Apparatus and methods of image and signal processing |
US20100265404A1 (en) * | 2009-04-17 | 2010-10-21 | General Instrument Corporation | System for reducing noise in video processing |
US9815767B2 (en) | 2013-01-28 | 2017-11-14 | Exxonmobil Chemical Patents Inc. | Alkyl aromatic hydroalkylation for the production of plasticizers |
Also Published As
Publication number | Publication date |
---|---|
KR20150122745A (en) | 2015-11-02 |
CA2904613C (en) | 2018-05-01 |
MX2015012002A (en) | 2015-12-01 |
KR101715547B1 (en) | 2017-03-13 |
US9661328B2 (en) | 2017-05-23 |
US20140269903A1 (en) | 2014-09-18 |
MX352633B (en) | 2017-12-01 |
EP2982111A1 (en) | 2016-02-10 |
WO2014149576A1 (en) | 2014-09-25 |
CA2904613A1 (en) | 2014-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9661328B2 (en) | Method of bit allocation for image and video compression using perceptual guidance | |
EP2419878B1 (en) | System for reducing noise in video processing | |
US6493023B1 (en) | Method and apparatus for evaluating the visual quality of processed digital video sequences | |
KR101073535B1 (en) | System and method for encoding and decoding enhancement layer data using technical model parameters | |
EP2207358A1 (en) | Video decoding method and video encoding method | |
EP1654706B1 (en) | Video encoding and decoding methods and corresponding devices | |
US20040012675A1 (en) | Method and apparatus for measuring the quality of video data | |
US8369417B2 (en) | Optimal denoising for video coding | |
EP2603000B1 (en) | Guided prediction-filtering in layered vdr image coding | |
EP3066832B1 (en) | Adaptive prediction of coefficients of a video block | |
EP3375190B1 (en) | High dynamic range color conversion correction | |
Perra et al. | Image blockiness evaluation based on sobel operator | |
US20070092146A1 (en) | System and method for transform coding randomization | |
EP1656644B1 (en) | Video encoding and decoding methods and corresponding devices | |
Zhang et al. | Low bit-rate compression of underwater imagery based on adaptive hybrid wavelets and directional filter banks | |
US10070149B2 (en) | Method and apparatus to perform optimal visually-weighed quantization of time-varying visual sequences in transform space | |
EP1159711A1 (en) | Process, device and use for evaluating coded images | |
US20190089955A1 (en) | Image encoding method, and image encoder and image decoder using same | |
Oh et al. | Film grain noise modeling in advanced video coding | |
Massidda et al. | No reference video quality estimation based on human visual system for 2.5/3G devices | |
Amor et al. | A block artifact distortion measure for no reference video quality evaluation | |
JP2001346208A (en) | Image signal decoder and method | |
Zhang et al. | Visually lossless perceptual image coding based on natural-scene masking models | |
Massidda et al. | A human visual system model for no-reference digital video quality estimation | |
Feyiz | Directional coding of backward compatible high dynamic range (HDR) image coding residues |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN PUBLISHED |
|
AC | Divisional application: reference to earlier application |
Ref document number: 2982111 Country of ref document: EP Kind code of ref document: P |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
17P | Request for examination filed |
Effective date: 20211105 |
|
RBV | Designated contracting states (corrected) |
Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20221001 |