IP Library Granted Patent US 9,681,131
Granted Patent B2
US 9,681,131 · App. 13/807,385 · Granted Jun 13, 2017

Methods and devices for encoding and decoding at least one image implementing an estimation in the transform domain, and corresponding signal and computer program

Inventors: Isabelle Amonou (Cesson Sevigne, FR); Matthieu Moinard (Solna, SE); Pierre Duhamel (Le Plessis Robinson, FR); Patrice Brault (Bures sur Yvette, FR)
Assignee: ORANGE
H04N19/00812H04N19/105H04N19/132H04N19/18H04N19/48H04N19/593H04N19/61H04N19/625H04N19/895
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,681,131
App. No.
13/807,385
Granted
Jun 13, 2017
Kind
B2
Abstract

A method and device are provided for encoding at least one image broken up into blocks. The method includes, for at least one current block, transforming the current block from the spatial domain into a transformed domain, outputting a transformed block including of a set of coefficients representative of the current block, referred to as original coefficients. The method further includes selecting a subset of original coefficients from the set and, for at least one original coefficient of the subset, the following steps: estimating the original coefficient, outputting an estimated coefficient in the transformed domain; determining a residual of a coefficient by comparing the original coefficient and the estimated coefficient; and encoding the residual of a coefficient.

Claims (99)

1. A method for encoding at least one image sub-divided into blocks, the method comprising:

for at least one block to be encoded of said at least one image:

predicting said at least one block to be encoded in a spatial domain, to obtain a predicted block,

comparing said at least one block to be encoded with said predicted block, to obtain a residual block, called a current block, and

transforming said current block from the spatial domain into a transform domain delivering a transform block, by an encoding device, said transform block being formed by a set of coefficients representing said current block, called original coefficients;

selecting a subset of the original coefficients from said set, and

for at least one original coefficient of said subset, performing the following acts with the encoding device:

estimating said original coefficient, delivering an estimated coefficient in said transform domain, by:

assigning a zero value to the original coefficients of said subset, delivering a modified transform block;

restoring the modified transform block by implementing at least one iteration of the following sub-acts:

transforming said modified transform block from the transform domain into the spatial domain, delivering a modified block in the spatial domain;

adding said modified block and the predicted block in the corresponding spatial domain, delivering a rebuilt modified block;

determining, in the spatial domain, a curvature of a rebuilt image comprising said rebuilt modified block; and

updating the original coefficients of said subset, taking account of said curvature, transformed from the spatial domain into the transform domain, and of said modified transform block delivering a new modified transform block;

determining a coefficient residue, by comparison of said original coefficient and of said estimated coefficient; and

encoding said coefficient residue.

2. The method for encoding according to claim 1 , wherein the method comprises inserting, into a signal representing said at least one image, at least one piece of information signaling a position of the original coefficients of said subset.

3. The method for encoding according to claim 1 , wherein said act of restoring processes said original coefficients one after the other according to a rising order of frequency.

4. A device for encoding at least one image sub-divided into blocks, the device comprising:

a processing unit, which is configured to encode the at least one image by:

predicting at least one block to be encoded of said at least one image, in a spatial domain, to obtain a predicted block;

comparing said at least one block to be encoded with said predicted block, to obtain a residual block, called a current block;

transforming said current block from the spatial domain into a transform domain, delivering a transform block, said transform block being formed by a set of coefficients representing said current block, called original coefficients;

selecting a subset of the original coefficients from said set;

estimating at least one of said original coefficients, delivering an estimated coefficient in said transform domain, by:

assigning a zero value to the original coefficients of said subset, delivering a modified transform block;

restoring the modified transform block by implementing at least one iteration of the following sub-acts:

transforming said modified transform block from the transform domain into the spatial domain, delivering a modified block in the spatial domain;

adding said modified block and the predicted block in the corresponding spatial domain, delivering a rebuilt modified block;

determining, in the spatial domain, a curvature of a rebuilt image comprising said rebuilt modified block; and

updating the original coefficients of said subset, taking account of said curvature, transformed from the spatial domain into the transform domain, and of said modified transform block delivering a new modified transform block;

determining a coefficient residue, by comparison of said original coefficient and of said estimated coefficient; and

encoding said coefficient residue.

5. A method for decoding at least one encoded image, wherein the method comprises:

rebuilding at least one transform block formed by a set of original coefficients representing a residual block in a transform domain, to obtain a rebuilt transform block,

said residual block being obtained by comparison of a block to be encoded of an original image subdivided into blocks and a predicted block obtained by prediction of said block to be encoded,

said rebuilding performing the following acts for at least one original coefficient of a subset of original coefficients, selected from said set with a decoding device:

decoding a coefficient residue associated with said original coefficient;

estimating said original coefficient, delivering an estimated coefficient in said transform domain, by:

assigning a zero value to the original coefficients of said subset, delivering a modified transform block;

restoring the modified transform block by implementing at least one iteration of the following sub-acts:

transforming said modified transform block from the transform domain into the spatial domain, delivering a modified block in the spatial domain;

adding said modified block and the predicted block in the corresponding spatial domain, delivering a rebuilt modified block;

determining, in the spatial domain, a curvature of a rebuilt image comprising said rebuilt modified block; and

updating the original coefficients of said subset, taking account of said curvature, transformed from the spatial domain into the transform domain, and of said modified transform block delivering a new modified transform block;

rebuilding said original coefficient from said coefficient residue and said estimated coefficient;

inverse transforming the rebuilt transform block, to obtain an inverse block in the spatial domain, and

predicting and rebuild the original image, from the inverse block.

6. The method for decoding according to claim 5 , wherein the method comprises reading, in a signal representing said at least one encoded image, at least one piece of information signaling a position of the original coefficients of said subset.

7. A device for decoding at least one encoded image, the device comprising:

a processing unit, which is configured to decode the at least one encoded image by:

rebuilding at least one transform block formed by a set of original coefficients representing a residual block in a transform domain, to obtain a rebuilt transform block,

said residual block being obtained by comparison of a block to be encoded of an original image subdivided into blocks and a predicted block obtained by prediction of said block to be encoded;

performing for at least one original coefficient of a subset of original coefficients selected from said set:

decoding a coefficient residue associated with said original coefficient;

estimating said original coefficient, delivering an estimated coefficient in said transform domain, by:

assigning a zero value to the original coefficients of said subset, delivering a modified transform block;

restoring the modified transform block by implementing a technique of regularization in the spatial domain, said act of restoring implementing at least one iteration of the following sub-acts:

transforming said modified transform block from the transform domain into the spatial domain, delivering a modified block in the spatial domain;

adding said modified block and the predicted block in the corresponding spatial domain, delivering a rebuilt modified block;

determining, in the spatial domain, a curvature of a rebuilt image comprising said rebuilt modified block; and

updating the original coefficients of said subset, taking account of said curvature, transformed from the spatial domain into the transform domain, and of said modified transform block delivering a new modified transform block; and

rebuilding said original coefficient from said coefficient residue and said estimated coefficient;

inverse transforming the rebuilt transform block, to obtain an inverse block in the spatial domain; and

predicting and rebuilding the original image, from the inverse block.

8. A non-transitory computer-readable medium comprising a computer program comprising instructions to implement a method for encoding at least one image sub-divided into blocks, when the program is executed by a processor, wherein the instructions comprise:

instructions that configure the processor to predict at least one block to be encoded of said at least one image, in the spatial domain, to obtain a predicted block;

instructions that configure the processor to compare said at least one block to be encoded with said predicted block, to obtain a residual block, called a current block;

instructions that configure the processor to transform said current block from the spatial domain into a transform domain delivering a transform block by an encoding device, said transform block being formed by a set of coefficients representing said current block, called original coefficients; and

instructions that configure the processor to select a subset of the original coefficients from said set, and for at least one original coefficient of said subset, performing the following acts with the encoding device:

estimating said original coefficient, delivering an estimated coefficient in said transform domain, by:

assigning a zero value to the original coefficients of said subset, delivering a modified transform block;

restoring the modified transform block by implementing at least one iteration of the following sub-acts:

transforming said modified transform block from the transform domain into the spatial domain, delivering a modified block in the spatial domain;

adding said modified block and the predicted block in the corresponding spatial domain, delivering a rebuilt modified block;

determining, in the spatial domain, a curvature of a rebuilt image comprising said rebuilt modified block; and

updating the original coefficients of said subset, taking account of said curvature, transformed from the spatial domain into the transform domain, and of said modified transform block delivering a new modified transform block;

determining a coefficient residue, by comparison of said original coefficient and of said estimated coefficient; and

encoding said coefficient residue.

9. A non-transitory computer-readable medium comprising a computer program comprising instructions to implement a method for decoding at least one encoded image, when the program is executed by a processor, wherein the instructions configure the processor to perform acts of:

rebuilding at least one transform block formed by a set of original coefficients representing a residual block in a transform domain, to obtain a rebuilt transform block, said residual block being obtained by comparison of a block to be encoded of an original image subdivided into blocks and a predicted block obtained by prediction of said block to be encoded;

performing the following acts for at least one original coefficient of a subset of original coefficients, selected from said set:

decoding a coefficient residue associated with said original coefficient;

estimating said original coefficient, delivering an estimated coefficient in said transform domain, by:

assigning a zero value to the original coefficients of said subset, delivering a modified transform block;

restoring the modified transform block by implementing at least one iteration of the following sub-acts:

transforming said modified transform block from the transform domain into the spatial domain, delivering a modified block in the spatial domain;

adding said modified block and the predicted block in the corresponding spatial domain, delivering a rebuilt modified block;

determining, in the spatial domain, a curvature of a rebuilt image comprising said rebuilt modified block; and

updating the original coefficients of said subset, taking account of said curvature, transformed from the spatial domain into the transform domain, and of said modified transform block delivering a new modified transform block; and

rebuilding said original coefficient from said coefficient residue and said estimated coefficient;

inverse transforming the rebuilt transform block, to obtain an inverse block in the spatial domain, and

predicting and rebuilding the original image, from the inverse block.

10. The method for encoding according to claim 1 , wherein said act of selecting selects the original coefficients localized at a predetermined position in the transform block.

11. The method for encoding according to claim 1 , wherein said act of selecting selects the original coefficients according to a predetermined criterion of encoding.

12. The method for encoding according to claim 11 , wherein said encoding criterion belongs to the group consisting of:

a transmission bit rate;

a quality of transmission;

a direction of prediction of the current block.

Assignments (2)
CHANGE OF NAME Recorded Jun 9, 2017
From: FRANCE TELECOM
To: ORANGE
Reel/Frame 042663/0464 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2013
From: AMONOU, ISABELLE; MOINARD, MATTHIEU; DUHAMEL, PIERRE; BRAULT, PATRICE
To: FRANCE TELECOM
Reel/Frame 030092/0827 →
Priority Claims (1)
FR 10 55260 · Jun 29, 2010 · national
Continuity (1)
Related Publication 20130101022A1 · Apr 25, 2013