METHOD FOR IMAGE COMPRESSION AND APPARATUS FOR IMPLEMENTING THE SAME

Information

  • Patent Application
  • 20230300356
  • Publication Number
    20230300356
  • Date Filed
    February 15, 2023
    a year ago
  • Date Published
    September 21, 2023
    a year ago
Abstract
A method for encoding image data of an image divided into a plurality of pixel blocks using a machine learning algorithm, is proposed, which comprises, by a computing platform comprising a processor configured for implementing the machine learning algorithm, for a block of the pixel blocks: obtaining a block neighborhood set of at least one pixel of the image, wherein the at least one pixel is located outside the block in a spatial neighborhood of a corresponding pixel located on an edge of the pixel block, and generating, by the machine learning algorithm configured for performing end-to-end image compression, a bitstream representing the encoded pixel block, by encoding the pixel block based on input data comprising the pixel block and the block neighborhood set.
Description
Claims
  • 1. A method for encoding image data of an image divided into a plurality of pixel blocks using a machine learning algorithm, the method comprising, by a computing platform comprising a processor configured for implementing the machine learning algorithm, for a block of the pixel blocks: obtaining a block neighborhood set of at least one pixel of the image, wherein the at least one pixel is located outside the block in a spatial neighborhood of a corresponding pixel located on an edge of the block; andgenerating, by the machine learning algorithm, a bitstream representing the encoded block, by encoding the block based on input data comprising the block and the block neighborhood set.
  • 2. The method according to claim 1, wherein the block neighborhood set comprises a plurality of pixels respectively co-located outside the block in respective spatial neighborhoods of corresponding pixels located on respective edges of the block.
  • 3. The method according to claim 1, further comprising; obtaining a block extended neighborhood set of a plurality of pixels located outside the block in a spatial neighborhood of respectively corresponding pixels located on one or more edges of the pixel block; anddetermining the block neighborhood set based on a filtering of pixels of the block extended neighborhood set.
  • 4. The method according to claim 3, wherein the filtering of the pixels uses one or more of a Mean filter and a Gaussian filter.
  • 5. The method according to claim 1, further comprising: performing training of the machine learning algorithm, the training comprising, for encoding training image data of a training image divided into a plurality of training blocks by the machine learning algorithm, for a training block of the pixel blocks: obtaining a training block neighborhood set of at least one pixel of the training image, wherein the at least one pixel is located outside the training block in a spatial neighborhood of a corresponding pixel located on an edge of the training block;generating, by the machine learning algorithm, a bitstream representing the encoded training block, by encoding the training block based on input training data comprising the training block and the training block neighborhood set;generating, by the machine learning algorithm, a reconstructed training block by end-to-end compression of the training block comprising decoding the bitstream; anddetermining a value of a distortion metric between pixels of the pixel blocks and reconstructed pixels of the reconstructed training block, wherein the distortion metric uses a distance between the at least one pixel of the training block neighborhood set and a pixel reconstructed from the corresponding pixel of the training block.
  • 6. The method according to claim 5, wherein the training block neighborhood set comprises a plurality of pixels respectively co-located outside the training block with respective pixels reconstructed from corresponding pixels located on respective edges of the training block, wherein the distortion metric uses respective distances between pixels of the plurality of pixels and respectively corresponding pixels of the training block.
  • 7. The method according to claim 5, wherein the distortion metric further uses respective distances between pixels of the training blocks and corresponding reconstructed pixels output by the machine learning algorithm through coding and decoding the pixels of the training block.
  • 8. The method according to claim 5, further comprising: determining a value of a rate-distortion cost function J based on the value of the distortion metric.
  • 9. The method according to claim 8, wherein the rate-distortion cost function is of the form J = R + λ ▪ D, where D is the value of the distortion metric, λ is a Lagrangian parameter, and R is an overall bitrate measurement.
  • 10. The method of claim 5, wherein the training block forms a M × N matrix of pixels p(x, y), wherein x = 0, ..., N - 1, y = 0, ..., M - 1, wherein the reconstructed training block corresponding to the training block forms a M × N matrix of pixels p̃(x, y), wherein x = 0, ..., N - 1, y = 0, ..., M - 1, and wherein the distortion metric uses one or more of the following distances: ∑y=0M−1p−1,y−p˜0,y2,∑x=0N−1px,−1−p˜x,02,∑y=0M−1pM,y−p˜M−1,y2, and∑x=0N−1px,N−p˜x,N−12,wherein p(-1, y) with y = 0, ..., M - 1 are pixels of a first training block neighborhood subset of the training block neighborhood set, p(x, -1) with x = 0, ..., N - 1 are pixels of a second block neighborhood subset of the training block neighborhood set, p(M, y) with y = 0, ..., M - 1 are pixels of a third block neighborhood subset of the training block neighborhood set, and p(x, N) with x = 0, ..., N - 1 are pixels of a fourth block neighborhood subset of the training block neighborhood set.
  • 11. The method according to claim 5, wherein the training block neighborhood set comprises a plurality of pixels respectively co-located outside the training block in respective spatial neighborhoods of corresponding pixels located on respective edges of the training block, wherein the distortion metric uses respective distances between pixels of the plurality of pixels and respectively corresponding pixels of the training block.
  • 12. The method according to claim 5, further comprising: obtaining a training block extended neighborhood set of a plurality of pixels located outside the training block in a spatial neighborhood of respectively corresponding pixels located on one or more edges of the training block; anddetermining the training block neighborhood set based on a filtering of pixels of the training block extended neighborhood set.
  • 13. A method for encoding image data using a machine learning algorithm, the method comprising, by a computing platform comprising a processor configured for implementing the machine learning algorithm: performing training of the machine learning algorithm to perform encoding of a training image divided into a plurality of training blocks, the training comprising, for a training block of the training blocks: obtaining a training block neighborhood set of at least one pixel of the training image, wherein the at least one pixel is located outside the training block in a spatial neighborhood of a corresponding pixel located on an edge of the training block;generating, by the machine learning algorithm, a bitstream representing the encoded training block, by encoding the training block based on input training data comprising the training block and the training block neighborhood set;generating, by the machine learning algorithm, a reconstructed training block by end-to-end compression of the training block comprising decoding the bitstream; anddetermining a value of a distortion metric between pixels of the pixel blocks and reconstructed pixels of the reconstructed training block, wherein the distortion metric uses a distance between the at least one pixel of the training block neighborhood set and a pixel reconstructed from the corresponding pixel of the training block.
  • 14. An apparatus, the apparatus comprising a processor and a memory operatively coupled to the processor, wherein the processor is configured to perform a method for encoding image data of an image divided into a plurality of pixel blocks using a machine learning algorithm, the method comprising, by a computing platform comprising a processor configured for implementing the machine learning algorithm, for a block of the pixel blocks: obtaining a block neighborhood set of at least one pixel of the image, wherein the at least one pixel is located outside the block in a spatial neighborhood of a corresponding pixel located on an edge of the block; andgenerating, by the machine learning algorithm, a bitstream representing the encoded block, by encoding the block based on input data comprising the block and the block neighborhood set.
  • 15. A non-transitory computer-readable medium encoded with executable instructions which, when executed, causes an apparatus comprising a processor operatively coupled with a memory, to perform a method for encoding image data of an image divided into a plurality of pixel blocks using a machine learning algorithm, the method comprising, by a computing platform comprising a processor configured for implementing the machine learning algorithm, for a block of the pixel blocks: obtaining a block neighborhood set of at least one pixel of the image, wherein the at least one pixel is located outside the block in a spatial neighborhood of a corresponding pixel located on an edge of the block; andgenerating, by the machine learning algorithm, a bitstream representing the encoded block, by encoding the block based on input data comprising the block and the block neighborhood set.
  • 16. The apparatus according to claim 14, wherein the block neighborhood set comprises a plurality of pixels respectively co-located outside the block in respective spatial neighborhoods of corresponding pixels located on respective edges of the block.
  • 17. The apparatus according to claim 14, further comprising; obtaining a block extended neighborhood set of a plurality of pixels located outside the block in a spatial neighborhood of respectively corresponding pixels located on one or more edges of the pixel block; anddetermining the block neighborhood set based on a filtering of pixels of the block extended neighborhood set.
  • 18. The apparatus according to claim 17, wherein the filtering of the pixels uses one or more of a Mean filter and a Gaussian filter.
  • 19. The non-transitory computer-readable medium according to claim 15, wherein the block neighborhood set comprises a plurality of pixels respectively co-located outside the block in respective spatial neighborhoods of corresponding pixels located on respective edges of the block.
  • 20. The non-transitory computer-readable medium according to claim 15, further comprising; obtaining a block extended neighborhood set of a plurality of pixels located outside the block in a spatial neighborhood of respectively corresponding pixels located on one or more edges of the pixel block; anddetermining the block neighborhood set based on a filtering of pixels of the block extended neighborhood set.
Priority Claims (1)
Number Date Country Kind
22305170.7 Feb 2022 EP regional