WO2002093934A1 - Compression et transmission d'images - Google Patents
Compression et transmission d'images Download PDFInfo
- Publication number
- WO2002093934A1 WO2002093934A1 PCT/GB2002/002236 GB0202236W WO02093934A1 WO 2002093934 A1 WO2002093934 A1 WO 2002093934A1 GB 0202236 W GB0202236 W GB 0202236W WO 02093934 A1 WO02093934 A1 WO 02093934A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- motion vectors
- array
- hash values
- frame
- generating
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/008—Vector 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- 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/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
-
- 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/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/94—Vector quantisation
Definitions
- This invention relates to a method and apparatus for compression of images, in particular moving images such as video sequences and the like, for transmission across a communication network.
- Digital video has been developed to a great extent over recent years, and in view of the large range of applications to which it lends itself-, particularly with the very high uptake- and- growth in personal computers and workstations and the popularity of the global Internet, substantial research and development has been dedicated to the development of techniques for compression, decompression and transmission of video. In general, the aim is to improve efficiency of compression as well as the effectiveness of the transport medium.
- the main aim is to reduce both storage and transmission costs, i.e. to improve coding efficiency.
- one of the main concerns is the inherent trade-off between coding efficiency and video fidelity.
- Industry standards such as H.261 and MPEG define standard formats for compressed video data (but not implementations) , such that video fidelity can be improved as better codecs are developed without having to redefine the standard.
- the defined standards enable a range of bitrates to be supported so that the quality of the reproduced video becomes a function of the cost of the hardware that the user can afford.
- MPEG specifies both a syntax and a semantics for a legal video bitstream at the encoder stage, and a definition for synchronisation and demultiplexing of the bitstream into its constituent parts (i.e. video, audio and other data) at the decoder stage, the latter permitting the video playback quality to scale with the abilities of the target hardware.
- the video algorithms defined by MPEG are based on a class of video compression algorithms that aim to maximally reduce the natural spatio-temporal redundancy both within and between video frames in order to deliver compression.
- a key feature to exploit in such redundancy elimination is that of the motion of rigid bodies in a sequence of frames .
- Algorithms which attempt to achieve this effect are known as motion compensation algorithms.
- BMA block-matching algorithms
- the block matching algorithm (BMA) remains the most widely used, primarily for the simplicity of its concept and its hardware realisability.
- the BMA typically begins by partitioning a frame of video pixels into non-overlapping macroblocks of size N x N. Each macroblock in the frame being encoded (the 'current block') is compared with potential matches ('candidate blocks') in the previous, or reference, frame. For a maximum vector displacement of &> pixels, a given macroblock is searched within a search window of size (N+2to)x (N+2&) , as shown in Figure 1 of the drawings. The range of the motion vector is constrained by controlling the size of the search window.
- the displacement is taken to be that comparison which maximises or minimises a function, a distortion measure, representing the matching criterion.
- a function a distortion measure
- Many such functions have been proposed, such as the cross-correlation function (CCF) , the mean square error (MSE) , the mean absolute error (MAE) and the cross-search algorithm (CSA) .
- block matching algorithms represent a tradeoff between block reconstruction accuracy and hardware/computational expense vis a vis pel-recursive techniques.
- the magnitude of the motion vectors generated by means of block-matching can be relatively large, which is counter-productive within a compression strategy, especially in the case where the video data is to be transmitted at a relatively low bitrate, in which case the proportion of the transmission burst assigned to motion vectors can become disproportionate. It is for this reason that residuals from motion estimation are first compressed themselves (by means of a lossy transform encoder and an entropy encoder) before transmission.
- This encoding scheme has been adopted by the MPEG, H.261 and H.263 standards.
- a method of compressing image data comprising the steps of generating a set of motion vectors representative of one or more image frames, generating, by means of a predetermined hash function a set of hash values corresponding to said motion vectors, and storing as a codebook said hash values in the form .of a table or array.
- an apparatus for compressing image data comprising means, for generating a set of motion vectors representative of one or more image frames, means for generating, using a predetermined hash function, a set of hash values corresponding to said motion vectors, and codebook means for storing said hash values in the form of a table or array.
- a method of compressing image data comprising the steps of generating a set of motion vectors representative of one or more image frames, storing as a codebook data representative of said motion vectors in the form of a table or array, and using vector quantisation to index the data stored in said table or array for retrieval of said data by decoding means .
- an apparatus for compressing image data comprising means for generating a set of motion vectors representative of one or more image frames, codebook means for storing data representative of said motion vectors in the form of a table or array, and vector quantisation means for indexing the data stored in said table or array so that it can be retrieved.
- Figure 1 is a schematic diagram illustrating a macroblock and search window used in a BMA compression technique according to the prior art
- Figure 2 Is a schematic diagram illustrating the integration of a vector quantiser codebook with a hash table, the diagram showing a hash table with buckets, each with M slots per bucket ;
- FIG. 3 is a schematic diagram illustrating an exemplary embodiment of hardware for Vector Quantised Hashing (VQH) the name of our proposed algorithm for motion estimation; and
- look-up table The concept of a look-up table is well-known in engineering, and may be defined as a set of (name, attribute) pairings for storing data items. There are three basic operations which may be required to be performed on such a look-up table :
- hash table For the purpose of the present description, assume that the size of the hash table is fixed (i.e. 'static hashing' as opposed to 'dynamic hashing' in which the table size may vary) .
- the address of a data item x stored within the hash table may be computed by evaluating the hash function h (x) .
- VQ vector quantisation
- VQ is essentially the multi-dimensional generalisation of scalar quantisation, as is commonly employed in analog-to- digital conversion processes.
- X is an N-dimensional source vector
- VQ is a mapping such that:
- C is an L-dimensional set, L ⁇ N, such that
- C is usually termed the 'codebook', and the Y ⁇ the 'code vectors'.
- the VQ operator Q partitions £ N into L disjoint and exhaustive regions ⁇ ⁇ l f . . . P ⁇ , each of which has a single coarse-grained representation.
- X may be taken to be a pixel macroblock that is quantised under the operation Q into a finite codebook.
- The. latter is generated once, and a copy is provided to both the encoder and the decoder. It is then sufficient to merely store or transmit the output of the codebook in order to represent any source vector.
- the technique operates as a pattern matching algorithm. It is well-known in engineering literature and is an integral part of MPEG's repertoire of routines.
- a source vector X is mapped by Q into a bucket, and occupies a unique, but arbitary, slot position.
- Each bucket therefore holds all the source vectors that are sufficiently close to the appropriate code vector which is their quantised representation within the source regions P j ,.
- Q is usually a dimensionality-reduction operator.
- the combination of VQ and a hash table loaded in the manner described above provide a way for non-lossy representation of a source frame. This combined structure will be hereinafter referred to as a 'Vector Quantised Hash Table' or VQHT.
- MPEG In order to support motion compensation, MPEG classifies video frames into three categories as follows.
- P (redicted) -frames, which exploit motion compensation in order to improve compression.
- a predicted frame is coded with reference to a preceding I- or P-frame.
- B idirectional -frames which rely upon both preceding and subsequent frames . Such frames use bidirectional interpolation between I- and P-frames, but are not used for coding other frames. They also have the highest compression efficiency.
- MPEG specifies two parameters, N and M, which keep a count of the frame distance (i.e. number of frames) between, respectively, two successive I-frames (also-know -as GOP or 'Group of Pictures') and two successive P-frames.
- N is a function of the number of such cuts in a video.
- M is not defined by MPEG, and is left to the discretion of the encoder.
- the generation of P-frames is crucial for efficient coding, but is also the most expensive part of MPEG, since motion estimation is directly involved.
- the decoding process uses a macroblock and a motion vector to reconstruct a P-frame, based on a closest match search of the preceding frame. Note that the use of the word 'preceding' does not imply frame adjacency, since B-frames typically interleave I- and P-frames.
- MPEG does not specify how a closest match should be implemented; encoders have the task therefore of minimising the difference between a predicted and an actual macroblock.
- both forward-predicted and bidirectionally-predicted frames are referred to as P-frames in the following description.
- the process begins by encoding an I-frame (or a P-frame from which a subsequent P-frame is to be deduced) into a VQHT. As described above, this provides a complete and non-lossy representation of an I-frame. From an implementation perspective, encoding involves a two-stage process:
- Codebook generation in which a decision is made on the number of bucket entries L in the codebook C. Representative code vectors from the I-frame are computed
- Hash Table loading in which the VQHT bucket slots are filled up by feeding every possible source vector (macroblock) from the I-frame through the hash function and storing it (together with its co-ordinates) in its appropriate bucket. Bucket slots are filled up sequentially in this manner.
- a set of motion vectors are required for those macroblocks which will be predicted during the decoding stage.
- the generation of motion vectors using the VQHT involves the simple act of a hash table lookup.
- the P- frame macroblock whose motion vector is required is hashed directly into a bucket entry.
- the corresponding motion vector is then obtained simply by searching all slots for that I-frame macroblock which minimises a distance metric.
- the co-ordinate difference between the P-frame and I-frame macroblock so found defines the motion vector. This can now be DCT-encoded before being transmitted to the decoder in the usual MPEG manner.
- VQH The encoder structures required in a hardware implementation of VQH can be partitioned into pre-processing and postprocessing stages.
- pre-processing all that is required is a vector quantiser (which is normally a part of MPEG anyway) and some local buffer memory which stores the buckets and slots comprising the VQHT. It is possible to construct control logic that will directly fill up the VQHT from the vector quantiser's output when it is given an I-frame to encode. This, however, could also be done in software without incurring a significant performance penalty.
- a shift register array which takes as its input a linearised macroblock from a P-frame that is to be encoded.
- the geometry of this array is arranged such that the outputs are simply equal to the inputs, but with each component staggered by one computational cycle from its predecessor;
- a codebook buffer which contains the code vectors which will be filled in by the hardware vector quantiser
- a VQHT buffer which contains the representation of the I-frame, and is filled in during the pre-processing stage
- a systolic sorter the P-frame macroblock that is to be encoded needs to be hashed into its appropriate bucket, and the corresponding I-frame macroblock with the least distance metric needs to be found. For this reason, a systolic sorter is included, the function of which is two-fold. Firstly, it sorts the output metrics from the codebook array in order to find the corresponding bucket . Secondly, it sorts the output metrics from the bucket in order to find those with the least distortion; An array of comparators: the distortions from the sorter array need not be unique, particularly if the macroblock is representing a region of low spatial gradient (i.e. minimum motion) . Thus it is necessary to compare the sorted outputs with each other in order to tag all those which are equal.
- the comparator performs this task; and A mean absolute differencer: at this stage, there exists a set of bucket entries which have an identical (and minimum) distance metric between the P-frame macroblock to.be encoded and the I-frame. It now remains to find from these entries that unique entry which minimises the co-ordinate metric.
- the 2-dimensional differencer performs this task. It takes as its input the ⁇ x, y) coordinates of the P-frame macroblock to be encoded as well as the outputs from the comparator array. It then performs a metric computation (an L 2 -norm) between this coordinate and the coordinates of all candidate I-frame macroblocks. The resulting calculation tags the coordinates of the best-matching I-frame macroblock.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0111627.6 | 2001-05-14 | ||
GB0111627A GB2375673A (en) | 2001-05-14 | 2001-05-14 | Image compression method using a table of hash values corresponding to motion vectors |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2002093934A1 true WO2002093934A1 (fr) | 2002-11-21 |
Family
ID=9914510
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/GB2002/002236 WO2002093934A1 (fr) | 2001-05-14 | 2002-05-14 | Compression et transmission d'images |
Country Status (2)
Country | Link |
---|---|
GB (1) | GB2375673A (fr) |
WO (1) | WO2002093934A1 (fr) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009143120A2 (fr) * | 2008-05-19 | 2009-11-26 | Citrix Systems, Inc. | Systèmes et procédés de codage d'image amélioré |
WO2015142829A1 (fr) * | 2014-03-17 | 2015-09-24 | Qualcomm Incorporated | Recherche de codeur à base de hachage pour copie de bloc intra |
TWI548266B (zh) * | 2014-06-24 | 2016-09-01 | 愛爾達科技股份有限公司 | 多媒體檔案儲存系統與相關裝置 |
EP3061233A4 (fr) * | 2013-10-25 | 2016-10-12 | Microsoft Technology Licensing Llc | Représentation de blocs à l'aide de valeurs de hachage dans le codage et le décodage vidéo et d'images |
US9786270B2 (en) | 2015-07-09 | 2017-10-10 | Google Inc. | Generating acoustic models |
US9858922B2 (en) | 2014-06-23 | 2018-01-02 | Google Inc. | Caching speech recognition scores |
US10204619B2 (en) | 2014-10-22 | 2019-02-12 | Google Llc | Speech recognition using associative mapping |
US10229672B1 (en) | 2015-12-31 | 2019-03-12 | Google Llc | Training acoustic models using connectionist temporal classification |
US10264290B2 (en) | 2013-10-25 | 2019-04-16 | Microsoft Technology Licensing, Llc | Hash-based block matching in video and image coding |
US10368092B2 (en) | 2014-03-04 | 2019-07-30 | Microsoft Technology Licensing, Llc | Encoder-side decisions for block flipping and skip mode in intra block copy prediction |
US10390039B2 (en) | 2016-08-31 | 2019-08-20 | Microsoft Technology Licensing, Llc | Motion estimation for screen remoting scenarios |
US10403291B2 (en) | 2016-07-15 | 2019-09-03 | Google Llc | Improving speaker verification across locations, languages, and/or dialects |
US10567754B2 (en) | 2014-03-04 | 2020-02-18 | Microsoft Technology Licensing, Llc | Hash table construction and availability checking for hash-based block matching |
US10681372B2 (en) | 2014-06-23 | 2020-06-09 | Microsoft Technology Licensing, Llc | Encoder decisions based on results of hash-based block matching |
US10706840B2 (en) | 2017-08-18 | 2020-07-07 | Google Llc | Encoder-decoder models for sequence to sequence mapping |
EP3613014A4 (fr) * | 2017-04-21 | 2020-07-22 | Zenimax Media Inc. | Compensation de mouvement d'entrée d'un joueur par anticipation de vecteurs de mouvement |
US11025923B2 (en) | 2014-09-30 | 2021-06-01 | Microsoft Technology Licensing, Llc | Hash-based encoder decisions for video coding |
US11095877B2 (en) | 2016-11-30 | 2021-08-17 | Microsoft Technology Licensing, Llc | Local hash-based motion estimation for screen remoting scenarios |
US11202085B1 (en) | 2020-06-12 | 2021-12-14 | Microsoft Technology Licensing, Llc | Low-cost hash table construction and hash-based block matching for variable-size blocks |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0731614A2 (fr) * | 1995-03-10 | 1996-09-11 | Kabushiki Kaisha Toshiba | Codeur et décodeur vidéo |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4979039A (en) * | 1989-01-30 | 1990-12-18 | Information Technologies Research Inc. | Method and apparatus for vector quantization by hashing |
EP0576765A1 (fr) * | 1992-06-30 | 1994-01-05 | International Business Machines Corporation | Méthode pour coder des données digitales à l'aide de techniques de quantification vectorielle et dispositif pour mettre en oeuvre cette méthode |
US5832131A (en) * | 1995-05-03 | 1998-11-03 | National Semiconductor Corporation | Hashing-based vector quantization |
-
2001
- 2001-05-14 GB GB0111627A patent/GB2375673A/en not_active Withdrawn
-
2002
- 2002-05-14 WO PCT/GB2002/002236 patent/WO2002093934A1/fr not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0731614A2 (fr) * | 1995-03-10 | 1996-09-11 | Kabushiki Kaisha Toshiba | Codeur et décodeur vidéo |
Non-Patent Citations (4)
Title |
---|
CHOO C Y ET AL: "A hashing-based scheme for organizing vector quantization codebook", ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, 1995. ICASSP-95., 1995 INTERNATIONAL CONFERENCE ON DETROIT, MI, USA 9-12 MAY 1995, NEW YORK, NY, USA,IEEE, US, 9 May 1995 (1995-05-09), pages 2495 - 2498, XP010151838, ISBN: 0-7803-2431-5 * |
CHOO C Y ET AL: "Interframe hierarchical vector quantization using hashing-based reorganized codebook", CODING AND SIGNAL PROCESSING FOR INFORMATION STORAGE, PHILADELPHIA, PA, USA, 23-24 OCT. 1995, vol. 2605, Proceedings of the SPIE - The International Society for Optical Engineering, 1995, SPIE-Int. Soc. Opt. Eng, USA, pages 151 - 157, XP001089677, ISSN: 0277-786X * |
KRUSE S-M: "SCENE SEGMENTATION FROM DENSE DISPLACEMENT VECTOR FIELDS USING RANDOMIZED HOUGH TRANSFORM", SIGNAL PROCESSING. IMAGE COMMUNICATION, ELSEVIER SCIENCE PUBLISHERS, AMSTERDAM, NL, vol. 9, no. 1, 1 November 1996 (1996-11-01), pages 29 - 41, XP000630907, ISSN: 0923-5965 * |
LEI XU ET AL: "RANDOMIZED HOUGH TRANSFORM (RHT): BASIC MECHANISMS, ALGORITHMS, AND COMPUTATIONAL COMPLEXITIES", CVGIP IMAGE UNDERSTANDING, ACADEMIC PRESS, DULUTH, MA, US, vol. 57, no. 2, 1 March 1993 (1993-03-01), pages 131 - 154, XP000226771, ISSN: 1049-9660 * |
Cited By (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009143120A3 (fr) * | 2008-05-19 | 2010-04-01 | Citrix Systems, Inc. | Systèmes et procédés de codage d'image amélioré |
US8295617B2 (en) | 2008-05-19 | 2012-10-23 | Citrix Systems, Inc. | Systems and methods for enhanced image encoding |
WO2009143120A2 (fr) * | 2008-05-19 | 2009-11-26 | Citrix Systems, Inc. | Systèmes et procédés de codage d'image amélioré |
US10264290B2 (en) | 2013-10-25 | 2019-04-16 | Microsoft Technology Licensing, Llc | Hash-based block matching in video and image coding |
US11076171B2 (en) | 2013-10-25 | 2021-07-27 | Microsoft Technology Licensing, Llc | Representing blocks with hash values in video and image coding and decoding |
EP3061233A4 (fr) * | 2013-10-25 | 2016-10-12 | Microsoft Technology Licensing Llc | Représentation de blocs à l'aide de valeurs de hachage dans le codage et le décodage vidéo et d'images |
US10567754B2 (en) | 2014-03-04 | 2020-02-18 | Microsoft Technology Licensing, Llc | Hash table construction and availability checking for hash-based block matching |
US10368092B2 (en) | 2014-03-04 | 2019-07-30 | Microsoft Technology Licensing, Llc | Encoder-side decisions for block flipping and skip mode in intra block copy prediction |
WO2015142829A1 (fr) * | 2014-03-17 | 2015-09-24 | Qualcomm Incorporated | Recherche de codeur à base de hachage pour copie de bloc intra |
CN106105197A (zh) * | 2014-03-17 | 2016-11-09 | 高通股份有限公司 | 针对帧内块复制的基于散列的编码器搜索 |
US9715559B2 (en) | 2014-03-17 | 2017-07-25 | Qualcomm Incorporated | Hash-based encoder search for intra block copy |
CN106105197B (zh) * | 2014-03-17 | 2019-01-15 | 高通股份有限公司 | 针对帧内块复制的基于散列的编码器搜索 |
US10681372B2 (en) | 2014-06-23 | 2020-06-09 | Microsoft Technology Licensing, Llc | Encoder decisions based on results of hash-based block matching |
US9858922B2 (en) | 2014-06-23 | 2018-01-02 | Google Inc. | Caching speech recognition scores |
TWI548266B (zh) * | 2014-06-24 | 2016-09-01 | 愛爾達科技股份有限公司 | 多媒體檔案儲存系統與相關裝置 |
US11025923B2 (en) | 2014-09-30 | 2021-06-01 | Microsoft Technology Licensing, Llc | Hash-based encoder decisions for video coding |
US10204619B2 (en) | 2014-10-22 | 2019-02-12 | Google Llc | Speech recognition using associative mapping |
US9786270B2 (en) | 2015-07-09 | 2017-10-10 | Google Inc. | Generating acoustic models |
US11341958B2 (en) | 2015-12-31 | 2022-05-24 | Google Llc | Training acoustic models using connectionist temporal classification |
US10229672B1 (en) | 2015-12-31 | 2019-03-12 | Google Llc | Training acoustic models using connectionist temporal classification |
US11769493B2 (en) | 2015-12-31 | 2023-09-26 | Google Llc | Training acoustic models using connectionist temporal classification |
US10803855B1 (en) | 2015-12-31 | 2020-10-13 | Google Llc | Training acoustic models using connectionist temporal classification |
US11594230B2 (en) | 2016-07-15 | 2023-02-28 | Google Llc | Speaker verification |
US11017784B2 (en) | 2016-07-15 | 2021-05-25 | Google Llc | Speaker verification across locations, languages, and/or dialects |
US10403291B2 (en) | 2016-07-15 | 2019-09-03 | Google Llc | Improving speaker verification across locations, languages, and/or dialects |
US10390039B2 (en) | 2016-08-31 | 2019-08-20 | Microsoft Technology Licensing, Llc | Motion estimation for screen remoting scenarios |
US11095877B2 (en) | 2016-11-30 | 2021-08-17 | Microsoft Technology Licensing, Llc | Local hash-based motion estimation for screen remoting scenarios |
EP3723370A1 (fr) * | 2017-04-21 | 2020-10-14 | Zenimax Media Inc. | Compensation de mouvement d'entrée de lecteur par anticipation de vecteurs de mouvement |
US11323740B2 (en) | 2017-04-21 | 2022-05-03 | Zenimax Media Inc. | Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors |
US11330291B2 (en) | 2017-04-21 | 2022-05-10 | Zenimax Media Inc. | Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors |
EP3723045A1 (fr) * | 2017-04-21 | 2020-10-14 | Zenimax Media Inc. | Compensation de mouvement d'entrée d'un joueur par anticipation de vecteurs de mouvement |
US11503332B2 (en) | 2017-04-21 | 2022-11-15 | Zenimax Media Inc. | Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors |
US11533504B2 (en) | 2017-04-21 | 2022-12-20 | Zenimax Media Inc. | Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors |
US11601670B2 (en) | 2017-04-21 | 2023-03-07 | Zenimax Media Inc. | Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors |
US11695951B2 (en) | 2017-04-21 | 2023-07-04 | Zenimax Media Inc. | Systems and methods for player input motion compensation by anticipating motion vectors and/or caching repetitive motion vectors |
EP3613014A4 (fr) * | 2017-04-21 | 2020-07-22 | Zenimax Media Inc. | Compensation de mouvement d'entrée d'un joueur par anticipation de vecteurs de mouvement |
US10706840B2 (en) | 2017-08-18 | 2020-07-07 | Google Llc | Encoder-decoder models for sequence to sequence mapping |
US11776531B2 (en) | 2017-08-18 | 2023-10-03 | Google Llc | Encoder-decoder models for sequence to sequence mapping |
US11202085B1 (en) | 2020-06-12 | 2021-12-14 | Microsoft Technology Licensing, Llc | Low-cost hash table construction and hash-based block matching for variable-size blocks |
Also Published As
Publication number | Publication date |
---|---|
GB0111627D0 (en) | 2001-07-04 |
GB2375673A (en) | 2002-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2002093934A1 (fr) | Compression et transmission d'images | |
JP4662636B2 (ja) | 動き推定とブロックマッチング・パターンの改良 | |
US8761254B2 (en) | Image prediction encoding device, image prediction decoding device, image prediction encoding method, image prediction decoding method, image prediction encoding program, and image prediction decoding program | |
EP0615386B1 (fr) | Processeur employant les vecteurs de mouvement pour comprimer les signaux vidéo | |
CN110809887A (zh) | 用于多参考预测的运动矢量修正 | |
US20110261886A1 (en) | Image prediction encoding device, image prediction encoding method, image prediction encoding program, image prediction decoding device, image prediction decoding method, and image prediction decoding program | |
KR100955396B1 (ko) | 양-예측 부호화 방법 및 장치, 양-예측 복호화 방법 및장치 및 기록매체 | |
US20060039470A1 (en) | Adaptive motion estimation and mode decision apparatus and method for H.264 video codec | |
JP2009510845A (ja) | ビデオエンコードのための多次元近隣ブロック予測 | |
JP2002532027A (ja) | ビデオ圧縮のための効率的な運動ベクトルの符号化 | |
JP2000222587A (ja) | 直交変換―ドメインブロックマッチングを用いる動き推定 | |
EP1119975A1 (fr) | Detection de vecteurs de mouvement a estimateur de mouvements locaux | |
JPH0955945A (ja) | 動きベクトル特定方法及び装置 | |
JPH0795594A (ja) | 半画素精度の動きベクトル検出方法および装置 | |
US5699129A (en) | Method and apparatus for motion vector determination range expansion | |
US20090028241A1 (en) | Device and method of coding moving image and device and method of decoding moving image | |
EP1389875A2 (fr) | Méthode d'éstimation de mouvement adaptatif au contenu d'un bloc DCT | |
KR20090014371A (ko) | 움직임 검출 장치 | |
Bégaint et al. | Deep frame interpolation for video compression | |
US11057637B1 (en) | Efficient video motion estimation by reusing a reference search region | |
US20060104358A1 (en) | Method and apparatus for motion estimation using adaptive search pattern for video sequence compression | |
JP2006191642A (ja) | 非標準化ビデオ量子化コーダを使用するビデオ規格に準拠した残差コーディング | |
EP1683361B1 (fr) | Procede d'estimation de mouvement co-situe a puissance optimisee | |
US6931066B2 (en) | Motion vector selection based on a preferred point | |
RU2701058C1 (ru) | Способ компенсации движения и устройство для его реализации |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 69(1) EPC |
|
122 | Ep: pct application non-entry in european phase | ||
NENP | Non-entry into the national phase |
Ref country code: JP |
|
WWW | Wipo information: withdrawn in national office |
Country of ref document: JP |