WO2016119104A1 - Motion vector regularization - Google Patents
Motion vector regularization Download PDFInfo
- Publication number
- WO2016119104A1 WO2016119104A1 PCT/CN2015/071553 CN2015071553W WO2016119104A1 WO 2016119104 A1 WO2016119104 A1 WO 2016119104A1 CN 2015071553 W CN2015071553 W CN 2015071553W WO 2016119104 A1 WO2016119104 A1 WO 2016119104A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- integer
- flag
- current slice
- mvs
- tmvp
- 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.)
- Ceased
Links
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/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
-
- 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/174—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 slice, e.g. a line of blocks or a group of blocks
-
- 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
- H04N19/52—Processing of motion vectors by encoding by predictive 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/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/523—Motion estimation or motion compensation with sub-pixel accuracy
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Definitions
- the invention relates generally to video/image coding/processing. Particularly, it is related adaptive motion vector resolution.
- Adaptive motion vector resolution (JCTVC-S0085) is described as follows.
- an adaptive_mv_resolution_enabled_flag is signaled to indicate whether adaptive motion vector resolution is applied.
- MV is parsed and decoded in the same way no matter use_integer_mv_flag is 0 or 1 in the current slice.
- MV is scaled based on use_integer_mv_flag as below recited from JCTVC-S1005;
- Fig. 1 shows an example.
- use_integer_mv_flag in the current picture is 0, but use_integer_mv_flag in the collocated picture is 1, and the collocated MV is equal to (4, 4) .
- (4, 4) will be treated as MVP for the current picture directly if TMVP is used.
- (4, 4) in the collocated picture represents (16, 16) when MV is expressed in the quarter-pixel resolution.
- use_integer_mv_flag in the current picture is 1, but use_integer_mv_flag in the collocated picture is 0, and the collocated MV is still equal to (4, 4) .
- (4, 4) will be treated as MVP for the current picture directly if TMVP is used.
- (4, 4) in the collocated picture represents (1, 1) when MV is expressed in the integer pixel resolution.
- mvLX [0] and mvLX [1] can be expressed in two bytes.
- use_integer_mv_flag in the current picture is 1, but use_integer_mv_flag in the collocated picture is 0 and and the collocated MV is equal to (2 15 –1, 2 15 –1) .
- Fig. 1 is a diagram illustrating an example of TMVP
- Fig. 2 is a diagram illustrating an example the scaling of TMVP when use_integer_mv_flag of the current slice is 1;
- Fig. 3 is a diagram illustrating an example the scaling of MVs before storing when use_integer_mv_flag of the current slice is 1.
- offx and offy are offsets in shift. They can be any value such as -3, -2, -1, 0, 1, 2, 3, etc.
- Fig. 2 demonstrates an example of scaling the TMVP when use_integer_mv_flag of the current slice is equal to 1.
- MVs of the current slice are stored to be used as TMVP for following pictures. For example, if a MV in a block B of the current slice is decoded as (x, y) , then (x ⁇ 2, y ⁇ 2) will be stored into the MV buffer for block B. And (x ⁇ 2, y ⁇ 2) will be treated as TMVP for a following picture if B is the collocated block.
- Fig. 3 demonstrates the scaling of MV to be stored when use_integer_mv_flag of the current slice is equal to 1.
- use_integer_mv_flag is stored so that it can be read by following pictures.
- TMVP is conducted differently according to use_integer_mv_flag of the current slice and that of the collocated picture.
- offx and offy are offsets in shift. They can be any value such as -3, -2, -1, 0, 1, 2, 3, etc.
- Fig. 2 demonstrates an example of scaling the TMVP when use_integer_mv_flag of the current slice is equal to 1.
- TMVP (x, y)
- TMVP (x ⁇ 2, y ⁇ 2)
- MVs of the current slice and MVs of the collocated picture must have the same resolution.
- use_integer_mv_flag of the current slice and use_integer_mv_flag of the collocated must be the same.
- TMVP should be disabled if MVs of the current slice and MVs of the collocated picture have different resolutions. In other words, use_integer_mv_flag of the current slice and use_integer_mv_flag of the collocated picture are different.
- a reference picture cannot be used as the coolocated picture of the current slice, if use_integer_mv_flag of the current slice and use_integer_mv_flag of the reference picture are different.
- all slices in a sequence should have the same MV pixel resolution.
- use_integer_mv_flag of all the slices in a sequence should be the same.
- use_integer_mv_flag is not transmitted at slice level, but at sequence level. For example, it should be transmitted in SPS.
- MVL0 and MVL1 should be clipped to [-2 15 , 2 15 –1] after being shifted left by 2.
- MVL0 Max (-2 15 , Min (MVL0 ⁇ 2, 2 15 –1)
- MVL1 Max (-2 15 , Min (MVL1 ⁇ 2, 2 15 –1) .
- this clip should be done for the statements recited from JCTVC-S1005 as below.
- the range can be specified as:
- the range can be specified as:
- an embodiment of the present invention can be a circuit integrated into a video compression chip or program codes integrated into video compression software to perform the processing described herein.
- An embodiment of the present invention may also be program codes to be executed on a Digital Signal Processor (DSP) to perform the processing described herein.
- DSP Digital Signal Processor
- the invention may also involve a number of functions to be performed by a computer processor, a digital signal processor, a microprocessor, or field programmable gate array (FPGA) .
- processors can be configured to perform particular tasks according to the invention, by executing machine-readable software code or firmware code that defines the particular methods embodied by the invention.
- the software code or firmware codes may be developed in different programming languages and different format or style.
- the software code may also be compiled for different target platform.
- different code formats, styles and languages of software codes and other means of configuring code to perform the tasks in accordance with the invention will not depart from the spirit and scope of the invention.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Methods are proposed to regularize motion vectors when adaptive motion vector resolution is applied.
Description
FIELD OF INVENTION
The invention relates generally to video/image coding/processing. Particularly, it is related adaptive motion vector resolution.
Adaptive motion vector resolution (JCTVC-S0085) is described as follows.
In SPS, an adaptive_mv_resolution_enabled_flag is signaled to indicate whether adaptive motion vector resolution is applied.
In slice header, a use_integer_mv_flag is signaled to indicate whether a motion vector (MV) in the current slice uses integer pixel resolution (use_integer_mv_flag=1) or quarter pixel resolution (use_integer_mv_flag=0) .
| if (adaptive_mv_resolution_enabled_flag ) | |
| use_integer_mv_flag | u (1) |
MV is parsed and decoded in the same way no matter use_integer_mv_flag is 0 or 1 in the current slice.
Before the interpolating process, MV is scaled based on use_integer_mv_flag as below recited from JCTVC-S1005;
When use_integer_mv_flag is equal to 1, mvLX and mvCLX (where X equals to 0 or 1) are modified as mvLX <<=2, mvCLX <<=2.
There are several problems in the current slice level MV adaptive resolution approach.
First, when temporal motion vector prediction (TMVP) is applied and the use_integer_mv_flag in the collocated picture and in the current picture are different, the MV resolution of the motion vector prediction (MVP) and the resulting MV will be mismatched.
Fig. 1 shows an example. When use_integer_mv_flag in the current picture is 0, but use_integer_mv_flag in the collocated picture is 1, and the collocated MV is equal to (4, 4) . In the current design, (4, 4) will be treated as MVP for the current picture directly if TMVP is used. However, (4, 4) in the collocated picture represents (16, 16) when MV is expressed in the quarter-pixel resolution.
In another example, use_integer_mv_flag in the current picture is 1, but use_integer_mv_flag in the collocated picture is 0, and the collocated MV is still equal to (4, 4) . In the current design, (4, 4) will be treated as MVP for the current picture directly if TMVP is
used. However, (4, 4) in the collocated picture represents (1, 1) when MV is expressed in the integer pixel resolution.
Both in the above two examples, the resolution of MVP does not match with the resolution of MV. This will deteriorate the efficiency of TMVP.
Another problem rises due to the bit width limitation. In JCTVC-S1005, it specifies that:
The resulting values of mvLX [0] and mvLX [1] as specified above will always be in the range of-215 to 215-1, inclusive.
With this limitation, it is guaranteed that mvLX [0] and mvLX [1] can be expressed in two bytes. However, if use_integer_mv_flag in the current picture is 1, but use_integer_mv_flag in the collocated picture is 0 and and the collocated MV is equal to (215–1, 215–1) . If TMVP merging candidate is selected, then mvLX will exceed the two bytes limitation after the calculation mvLX<<=2.
SUMMARY OF THE INVENTION
In light of the previously described problems, methods are proposed to regularize motion vectors when adaptive motion vector resolution is applied.
Other aspects and features of the invention will become apparent to those with ordinary skill in the art upon review of the following descriptions of specific embodiments.
The invention can be more fully understood by reading the subsequent detailed description and examples with references made to the accompanying drawings, wherein:
Fig. 1 is a diagram illustrating an example of TMVP;
Fig. 2 is a diagram illustrating an example the scaling of TMVP when use_integer_mv_flag of the current slice is 1;
Fig. 3 is a diagram illustrating an example the scaling of MVs before storing when use_integer_mv_flag of the current slice is 1.
The following description is of the best-contemplated mode of carrying out the invention. This description is made for the purpose of illustrating the general principles of the invention and should not be taken in a limiting sense. The scope of the invention is best determined by reference to the appended claims.
In order to regularize MVs when adaptive MV resolution is applied, several methods are
proposed.
In one embodiment, TMVP should be right shifted before it is used as MVP for the current block, when MVs of the current slice have the integer pixel resolution (use_integer_mv_flag=1) . For example, if TMVP= (x, y) , then ( (x+offx) >>2, (x+offy) >>2) should be used as MVP when TMVP is applied. offx and offy are offsets in shift. They can be any value such as -3, -2, -1, 0, 1, 2, 3, etc. Fig. 2 demonstrates an example of scaling the TMVP when use_integer_mv_flag of the current slice is equal to 1.
In one embodiment, a decoded MV of the current slice should be shifted left before it stored when MVs of the current slice have the integer pixel resolution (use_integer_mv_flag=1) . MVs of the current slice are stored to be used as TMVP for following pictures. For example, if a MV in a block B of the current slice is decoded as (x, y) , then (x<<2, y<<2) will be stored into the MV buffer for block B. And (x<<2, y<<2) will be treated as TMVP for a following picture if B is the collocated block.
Fig. 3 demonstrates the scaling of MV to be stored when use_integer_mv_flag of the current slice is equal to 1.
In another embodiment, use_integer_mv_flag is stored so that it can be read by following pictures.
In still another embodiment, TMVP is conducted differently according to use_integer_mv_flag of the current slice and that of the collocated picture.
In still another embodiment, TMVP should be right shifted before it is used as MVP for the current block, when MVs of the current slice have the integer pixel resolution (use_integer_mv_flag=1) but MVs of the collocated picture have the quarter pixel resolution (use_integer_mv_flag=0) . For example, if TMVP= (x, y) , then ( (x+offx) >>2, (x+offy) >>2) should be used as MVP when TMVP is applied. offx and offy are offsets in shift. They can be any value such as -3, -2, -1, 0, 1, 2, 3, etc. Fig. 2 demonstrates an example of scaling the TMVP when use_integer_mv_flag of the current slice is equal to 1.
In still another embodiment, TMVP should be left shifted before it is used as MVP for the current block, when MVs of the current slice have the quarter pixel resolution (use_integer_mv_flag=0) but MVs of the collocated picture have the integer pixel resolution (use_integer_mv_flag=1) . For example, if TMVP = (x, y) , then (x<<2, y<<2) should be used as MVP when TMVP is applied.
In still another embodiment, MVs of the current slice and MVs of the collocated picture must have the same resolution. In other words, use_integer_mv_flag of the current slice and use_integer_mv_flag of the collocated must be the same.
In still another embodiment, TMVP should be disabled if MVs of the current slice and MVs of the collocated picture have different resolutions. In other words, use_integer_mv_flag of the current slice and use_integer_mv_flag of the collocated picture are different.
In still another embodiment, a reference picture cannot be used as the coolocated picture of the current slice, if use_integer_mv_flag of the current slice and use_integer_mv_flag of the reference picture are different.
In still another embodiment, all slices in a sequence should have the same MV pixel resolution. In other words, use_integer_mv_flag of all the slices in a sequence should be the same.
In still another embodiment, use_integer_mv_flag is not transmitted at slice level, but at sequence level. For example, it should be transmitted in SPS. When use_integer_mv_flag=1, MV resulotions in all slices in the sequence are integer pixel; Otherwise, MV resulotions in all slices in the sequence are quarter pixel.
In one embodiment, MV= (MVL0, MVL1 ) should be clipped after scaling based on MV pixel resolution. For example, MVL0 and MVL1 should be clipped to [-215, 215–1] after being shifted left by 2. In other words, MVL0=Max (-215, Min (MVL0 << 2, 215–1) and MVL1=Max (-215, Min (MVL1 << 2, 215–1) . Especially, this clip should be done for the statements recited from JCTVC-S1005 as below.
When use_integer_mv_flag is equal to 1, mvLX and mvCLX (where X equals to 0 or 1) are modified as mvLX <<=2, mvCLX <<=2.
In another embodiment, the decoded MV= (MVL0, MVL1) should be constrained in different ranges depending on whether use_integer_mv_flag of the current slice is 0 or 1. The range when use_integer_mv_flag=1 should be tigher than the range when use_integer_mv_flag=0. For example, the range can be specified as:
If use_integer_mv_flag is equal to 0, the resulting values of mvLX [0] and mvLX [1] as specified above will always be in the range of-215 to 215-1, inclusive.
Otherwise (use_integer_mv_flag is equal to 1) , the resulting values of mvLX [0] and mvLX [1] as specified above will always be in the range of-213 to 213, inclusive.
In another embodiment, the range can be specified as:
If use_integer_mv_flag is equal to 0, the resulting values of mvLX [0] and mvLX [1] as specified above will always be in the range of-215 to 215-1, inclusive.
Otherwise (use_integer_mv_flag is equal to 1) , the resulting values of mvLX [0] and mvLX [1] as specified above will always be in the range of-213 to 213-1, inclusive.
The methods described above can be used in a video encoder as well as in a video decoder.
Embodiments of disparity vector derivation methods according to the present invention as described above may be implemented in various hardware, software codes, or a combination of both. For example, an embodiment of the present invention can be a circuit integrated into a video compression chip or program codes integrated into video compression software to perform the processing described herein. An embodiment of the present invention may also be program codes to be executed on a Digital Signal Processor (DSP) to perform the processing described herein. The invention may also involve a number of functions to be performed by a computer processor, a digital signal processor, a microprocessor, or field programmable gate array (FPGA) . These processors can be configured to perform particular tasks according to the invention, by executing machine-readable software code or firmware code that defines the particular methods embodied by the invention. The software code or firmware codes may be developed in different programming languages and different format or style. The software code may also be compiled for different target platform. However, different code formats, styles and languages of software codes and other means of configuring code to perform the tasks in accordance with the invention will not depart from the spirit and scope of the invention.
The invention may be embodied in other specific forms without departing from its spirit or essential characteristics. The described examples are to be considered in all respects only as illustrative and not restrictive. To the contrary, it is intended to cover various modifications and similar arrangements (as would be apparent to those skilled in the art) . Therefore, the scope of the appended claims should be accorded the broadest interpretation so as to encompass all such modifications and similar arrangements.
Claims (14)
- A method of motion vector regularization, comprising:·TMVP should be conducted according to the motion vector pixel resolution;·Motion vector should be constrained and clipped according to the motion vector pixel resolution.
- The method as claimed in claim 1, wherein TMVP should be right shifted before it is used as MVP for the current block, when MVs of the current slice have the integer pixel resolution (use_integer_mv_flag = 1) .
- The method as claimed in claim 1, wherein a decoded MV of the current slice should be shifted left before it stored when MVs of the current slice have the integer pixel resolution (use_integer_mv_flag = 1) , MVs of the current slice are stored to be used as TMVP for following pictures.
- The method as claimed in claim 1, wherein use_integer_mv_flag is stored so that it can be read by following pictures.
- The method as claimed in claim 1, wherein TMVP is conducted differently according to use_integer_mv_flag of the current slice and that of the collocated picture.
- The method as claimed in claim 5, wherein TMVP should be right shifted before it is used as MVP for the current block, when MVs of the current slice have the integer pixel resolution (use_integer_mv_flag = 1) but MVs of the collocated picture have the quarter pixel resolution (use_integer_mv_flag = 0) .
- The method as claimed in claim 5, wherein TMVP should be left shifted before it is used as MVP for the current block, when MVs of the current slice have the quarter pixel resolution (use_integer_mv_flag = 0) but MVs of the collocated picture have the integer pixel resolution (use_integer_mv_flag = 1) .
- The method as claimed in claim 1, wherein MVs of the current slice and MVs of the collocated picture must have the same resolution; In other words, use_integer_mv_flag of the current slice and use_integer_mv_flag of the collocated must be the same.
- The method as claimed in claim 1, wherein TMVP should be disabled if MVs of the current slice and MVs of the collocated picture have different resolutions; In other words, use_integer_mv_flag of the current slice and use_integer_mv_flag of the collocated picture are different.
- The method as claimed in claim 1, wherein a reference picture cannot be used as the coolocated picture of the current slice, if use_integer_mv_flag of the current slice and use_integer_mv_flag of the reference picture are different.
- The method as claimed in claim 1, wherein all slices in a sequence should have the same MV pixel resolution; In other words, use_integer_mv_flag of all the slices in a sequence should be the same.
- The method as claimed in claim 1, wherein use_integer_mv_flag is not transmitted at slice level, but at sequence level; For example, it should be transmitted in SPS; When use_integer_mv_flag = 1, MV resulotions in all slices in the sequence are integer pixel; Otherwise, MV resulotions in all slices in the sequence are quarter pixel.
- The method as claimed in claim 1, wherein MV = (MVL0, MVL1) should be clipped after scaling based on MV pixel resolution.
- The method as claimed in claim 1, wherein the decoded MV = (MVL0, MVL1) should be constrained in different ranges depending on whether use_integer_mv_flag of the current slice is 0 or 1.
Priority Applications (11)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2015/071553 WO2016119104A1 (en) | 2015-01-26 | 2015-01-26 | Motion vector regularization |
| CN202111509061.7A CN114554199B (en) | 2014-09-30 | 2015-09-30 | Method for adaptive motion vector resolution for video coding |
| CA2961681A CA2961681C (en) | 2014-09-30 | 2015-09-30 | Method of adaptive motion vetor resolution for video coding |
| KR1020207001441A KR102115715B1 (en) | 2014-09-30 | 2015-09-30 | Method of adaptive motion vector resolution for video coding |
| CN202010541786.3A CN111818334B (en) | 2014-09-30 | 2015-09-30 | Method for adaptive motion vector resolution for video coding |
| CN201580052679.1A CN107079164B (en) | 2014-09-30 | 2015-09-30 | Method for adaptive motion vector resolution for video coding |
| KR1020177010070A KR102068828B1 (en) | 2014-09-30 | 2015-09-30 | Method of adaptive motion vector resolution for video coding |
| US15/514,129 US10455231B2 (en) | 2014-09-30 | 2015-09-30 | Method of adaptive motion vector resolution for video coding |
| EP15847504.6A EP3189660B1 (en) | 2014-09-30 | 2015-09-30 | Method of adaptive motion vector resolution for video coding |
| PCT/CN2015/091275 WO2016050219A1 (en) | 2014-09-30 | 2015-09-30 | Method of adaptive motion vetor resolution for video coding |
| US16/564,042 US10880547B2 (en) | 2014-09-30 | 2019-09-09 | Method of adaptive motion vector resolution for video coding |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2015/071553 WO2016119104A1 (en) | 2015-01-26 | 2015-01-26 | Motion vector regularization |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2016119104A1 true WO2016119104A1 (en) | 2016-08-04 |
Family
ID=56542108
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2015/071553 Ceased WO2016119104A1 (en) | 2014-09-30 | 2015-01-26 | Motion vector regularization |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2016119104A1 (en) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2019109955A1 (en) * | 2017-12-08 | 2019-06-13 | 华为技术有限公司 | Interframe prediction method and apparatus, and terminal device |
| WO2019154417A1 (en) * | 2018-02-12 | 2019-08-15 | Mediatek Inc. | Method and apparatus of current picture referencing for video coding using adaptive motion vector resolution and sub-block prediction mode |
| WO2021027862A1 (en) * | 2019-08-13 | 2021-02-18 | Beijing Bytedance Network Technology Co., Ltd. | Motion precision in sub-block based inter prediction |
| US11140386B2 (en) | 2018-11-22 | 2021-10-05 | Beijing Bytedance Network Technology Co., Ltd. | Coordination method for sub-block based inter prediction |
| US11695946B2 (en) | 2019-09-22 | 2023-07-04 | Beijing Bytedance Network Technology Co., Ltd | Reference picture resampling in video processing |
| US11871025B2 (en) | 2019-08-13 | 2024-01-09 | Beijing Bytedance Network Technology Co., Ltd | Motion precision in sub-block based inter prediction |
| US12537938B2 (en) | 2018-11-22 | 2026-01-27 | Beijing Bytedance Network Technology Co., Ltd. | Sub-block based motion candidate selection and signaling |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102783149A (en) * | 2010-02-19 | 2012-11-14 | 高通股份有限公司 | Adaptive motion resolution for video coding |
| US20130272410A1 (en) * | 2012-04-11 | 2013-10-17 | Qualcomm Incorporated | Motion vector rounding |
| US20140056361A1 (en) * | 2012-08-21 | 2014-02-27 | Qualcomm Incorporated | Alternative transform in scalable video coding |
| US20140133567A1 (en) * | 2012-04-16 | 2014-05-15 | Nokia Corporation | Apparatus, a method and a computer program for video coding and decoding |
| CN103843347A (en) * | 2011-10-04 | 2014-06-04 | 高通股份有限公司 | Motion vector predictor candidate clipping removal for video coding |
-
2015
- 2015-01-26 WO PCT/CN2015/071553 patent/WO2016119104A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN102783149A (en) * | 2010-02-19 | 2012-11-14 | 高通股份有限公司 | Adaptive motion resolution for video coding |
| CN103843347A (en) * | 2011-10-04 | 2014-06-04 | 高通股份有限公司 | Motion vector predictor candidate clipping removal for video coding |
| US20130272410A1 (en) * | 2012-04-11 | 2013-10-17 | Qualcomm Incorporated | Motion vector rounding |
| US20140133567A1 (en) * | 2012-04-16 | 2014-05-15 | Nokia Corporation | Apparatus, a method and a computer program for video coding and decoding |
| US20140056361A1 (en) * | 2012-08-21 | 2014-02-27 | Qualcomm Incorporated | Alternative transform in scalable video coding |
Cited By (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11290724B2 (en) | 2017-12-08 | 2022-03-29 | Huawei Technologies Co., Ltd. | Inter prediction method and apparatus, and terminal device |
| WO2019109955A1 (en) * | 2017-12-08 | 2019-06-13 | 华为技术有限公司 | Interframe prediction method and apparatus, and terminal device |
| WO2019154417A1 (en) * | 2018-02-12 | 2019-08-15 | Mediatek Inc. | Method and apparatus of current picture referencing for video coding using adaptive motion vector resolution and sub-block prediction mode |
| GB2585304A (en) * | 2018-02-12 | 2021-01-06 | Mediatek Inc | Method and apparatus of current picture referencing for video coding using adaptive motion vector resolution and sub-block prediction mode |
| US11109056B2 (en) | 2018-02-12 | 2021-08-31 | Mediatek Inc. | Method and apparatus of current picture referencing for video coding using adaptive motion vector resolution and sub-block prediction mode |
| GB2585304B (en) * | 2018-02-12 | 2023-03-08 | Mediatek Inc | Method and apparatus of current picture referencing for video coding using adaptive motion vector resolution and sub-block prediction mode |
| US11632541B2 (en) | 2018-11-22 | 2023-04-18 | Beijing Bytedance Network Technology Co., Ltd. | Using collocated blocks in sub-block temporal motion vector prediction mode |
| US11431964B2 (en) | 2018-11-22 | 2022-08-30 | Beijing Bytedance Network Technology Co., Ltd. | Coordination method for sub-block based inter prediction |
| US11140386B2 (en) | 2018-11-22 | 2021-10-05 | Beijing Bytedance Network Technology Co., Ltd. | Coordination method for sub-block based inter prediction |
| US11671587B2 (en) | 2018-11-22 | 2023-06-06 | Beijing Bytedance Network Technology Co., Ltd | Coordination method for sub-block based inter prediction |
| US12069239B2 (en) | 2018-11-22 | 2024-08-20 | Beijing Bytedance Network Technology Co., Ltd | Sub-block based motion candidate selection and signaling |
| US12537938B2 (en) | 2018-11-22 | 2026-01-27 | Beijing Bytedance Network Technology Co., Ltd. | Sub-block based motion candidate selection and signaling |
| WO2021027862A1 (en) * | 2019-08-13 | 2021-02-18 | Beijing Bytedance Network Technology Co., Ltd. | Motion precision in sub-block based inter prediction |
| US11871025B2 (en) | 2019-08-13 | 2024-01-09 | Beijing Bytedance Network Technology Co., Ltd | Motion precision in sub-block based inter prediction |
| US11695946B2 (en) | 2019-09-22 | 2023-07-04 | Beijing Bytedance Network Technology Co., Ltd | Reference picture resampling in video processing |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10511835B2 (en) | Method and apparatus of decoder side motion derivation for video coding | |
| US11856218B2 (en) | Motion candidate derivation based on spatial neighboring block in sub-block motion vector prediction | |
| WO2016165069A1 (en) | Advanced temporal motion vector prediction in video coding | |
| WO2016119104A1 (en) | Motion vector regularization | |
| US10075712B2 (en) | Method of motion vector and block vector resolution control | |
| US10271048B2 (en) | Method of background residual prediction for video coding | |
| US10750203B2 (en) | Method and apparatus of adaptive bi-prediction for video coding | |
| WO2017156669A1 (en) | Methods for motion vector storage in video coding | |
| EP3130147B1 (en) | Methods of block vector prediction and decoding for intra block copy mode coding | |
| US10257536B2 (en) | Method of temporal derived bi-directional motion vector for motion vector prediciton | |
| WO2017035831A1 (en) | Adaptive inter prediction | |
| WO2016008157A1 (en) | Methods for motion compensation using high order motion model | |
| WO2015109598A1 (en) | Methods for motion parameter hole filling | |
| WO2016070808A1 (en) | Method and apparatus of video coding with prediction offset | |
| WO2016123749A1 (en) | Deblocking filtering with adaptive motion vector resolution | |
| US20110013853A1 (en) | Approach for determining motion vector in frame rate up conversion | |
| WO2017035833A1 (en) | Neighboring-derived prediction offset (npo) | |
| US9300977B2 (en) | Methods for encoding motion vectors | |
| WO2016165122A1 (en) | Inter prediction offset | |
| WO2015196364A1 (en) | Methods for inter-view advanced residual prediction | |
| WO2016070363A1 (en) | Merge with inter prediction offset | |
| WO2015135137A1 (en) | A method of motion information sharing in multi-view and 3d video coding | |
| WO2015100712A1 (en) | The method to perform the deblocking on sub-pu edge |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15879316 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 15879316 Country of ref document: EP Kind code of ref document: A1 |