Video coding apparatus and video decoding apparatus
US-2024397042-A1 · Nov 28, 2024 · US
US9549205B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9549205-B2 |
| Application number | US-201213655427-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 18, 2012 |
| Priority date | Jul 27, 2012 |
| Publication date | Jan 17, 2017 |
| Grant date | Jan 17, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A video encoding method for a video encoding device is provided. The method includes: obtaining a current image and a reference image, wherein the current image has a first block; obtaining motion vectors, wherein each of the motion vectors points to a reference block in the reference image; for each of the motion vectors, executing a filter calculation according to the pointed reference block and the first block to generate a first filter block, and calculating an difference value according to the pointed reference block and the corresponding first filter block. The method also includes: obtaining a minimum first difference value among the difference values, and obtaining a second filter block corresponding to the first difference value; encoding the first block according to the second filter block. Accordingly, the video quality and the compression ratio are increased.
Opening claim text (preview).
What is claimed is: 1. A video encoding method for a video encoding device, comprising: obtaining a current image and a reference image, wherein the current image comprises a first block to be encoded; obtaining a plurality of motion vectors which are with respect to the first block, wherein each of the motion vectors points to a reference block in the reference image; executing a filter calculation according to the pointed reference block and the first block to generate a first filter block for each of the motion vectors and calculating a difference value between the pointed reference block and the corresponding first filter block; obtaining a minimum first difference value among the difference values and obtaining a second filter block corresponding to the first difference value among the first filter blocks; and encoding the first block according to the second filter block, comprising: obtaining a zero reference block from the reference image, wherein a coordinate of the zero reference block in the reference image is equal to a coordinate of the first block in the current image; executing the filter calculation according to the zero reference block and the first block to obtain a third filter block; executing the filter calculation according to the second filter block and the third filter block to obtain a fourth filter block; and executing one of a first step and a second step, wherein the first step comprises: obtaining a first reference block among the reference blocks, wherein the first reference block corresponds to the second filter block; and encoding a first residual value between the first reference block and the fourth filter block, wherein the second step comprises: obtaining a second block adjacent to the first block in the current image; and estimating the fourth filter block according to the second block to obtain a second residual value and encoding the second residual value. 2. The video encoding method according to claim 1 , wherein the step of calculating the difference value according to the pointed reference block and the corresponding first filter block for each of the motion vectors comprises: executing a detail preservation calculation according to the corresponding first filter block and the first block to obtain a detail preservation block; and calculating the difference value between the detail preservation block and the pointed reference block, wherein the step of encoding the first block according to the second filter block comprises: obtaining a first reference block corresponding to the second filter block among the reference blocks; obtaining the detail preservation block corresponding to the second filter block; and encoding a third residual value between the detail preservation block and the first reference block. 3. The video encoding method according to claim 1 , wherein before the step of obtaining the plurality of motion vectors, the method comprises: obtaining a plurality of coarse motion vectors, wherein each of the coarse motion vectors points to a second reference block in the reference image; calculating a third difference value between the pointed second reference block and the first block for each of the coarse motion vectors; obtaining a minimum fourth difference value among the third difference values and obtaining a first coarse motion vector corresponding to the fourth difference value among the coarse motion vectors; and obtaining a plurality of fined motion vectors and generating the motion vectors according to the fined motion vectors and the first coarse motion vector. 4. The video encoding method according to claim 3 , wherein a horizontal component and a vertical component of each of the coarse motion vectors are integers, and a horizontal component and a vertical component of each of the fined motion vectors are decimals smaller than 1. 5. The video encoding method according to claim 1 , further comprising: obtaining a coarse motion vector and a fourth block in the current image, wherein the coarse motion vector points to a first reference block in the reference image; executing the filter calculation according to the first reference block and the fourth block to obtain a second filter block; executing a detail preservation calculation according to the second filter block and the fourth block to obtain a detail preservation block; generating a plurality of first motion vectors according to the coarse motion vector, wherein each of the first motion vectors points to a second reference block in the reference image; calculating a third difference value between each of the second reference blocks and the detail preservation block; obtaining a minimum fourth difference value among the third difference values and obtaining a first detail preservation block corresponding to the fourth difference value; and encoding the fourth block according to the first detail preservation block. 6. The video encoding method according to claim 1 , wherein the first block belongs to one of multiple block types, and wherein before the step of obtaining the motion vectors, the video encoding method further comprises: obtaining a plurality of first motion vectors belonging to each of the multiple block types, wherein each of the first motion vectors points to a first reference block in the reference image; calculating a first difference value according to the pointed first reference block and the first block for each of the first motion vectors belonging to each of the block types; and obtaining a minimum second difference value among the first difference values and obtaining a second motion vector corresponding to the second difference value among the first motion vectors for each of the block types, wherein the second motion vectors are the motion vectors. 7. A video encoding device, comprising: a motion estimation circuit, configured to obtain a current image and a reference image, wherein the current image comprises a first block to be encoded; a filter calculation circuit, coupled to the motion estimation circuit and configured to execute a filter calculation; and an encoding circuit, coupled to the motion estimation circuit and the filter calculation circuit, wherein the motion estimation circuit is configured to obtain a plurality of motion vectors which are with respect to the first block, wherein each of the motion vectors points to a reference block in the reference image; wherein for each of the motion vectors, the filter calculation circuit is configured to execute the filter calculation between the pointed reference block and the first block to generate a first filter block, and the motion estimation circuit is configured to calculate an difference value according to the pointed reference block and the corresponding first filter block, wherein the motion estimation circuit is configured to obtain a minimum first difference value among the difference values, and the filter calculation circuit is configured to obtain a second filter block corresponding to the first difference value among the first filter blocks; and wherein the encoding circuit is configured to encode the first block according to the second filter block, wherein the filter calculation circuit is further configured to obtain a zero reference block in the reference image, wherein a coordinate of the zero reference block in the reference image is equal to a coordinate of the first block in the current image, wherein the filter calculation circuit is further configured to execute the filter calculation according to the zero reference block and the first block to obtain a third filter block and execute the filter calculation according to the second filter block and the third filter block to obtain a fourth fil
Motion estimation or motion compensation · CPC title
Entropy coding, e.g. variable length coding [VLC] or arithmetic coding · CPC title
involving spatial prediction techniques · CPC title
involving filtering within a prediction loop · CPC title
in combination with predictive coding · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.