Language selection

Search

Patent 3091657 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent: (11) CA 3091657
(54) English Title: VIDEO ENCODING APPARATUS, VIDEO DECODING APPARATUS AND RELATED METHODS
(54) French Title: APPAREIL DE CODAGE VIDEO, APPAREIL DE DECODAGE VIDEO ET METHODES ASSOCIEES
Status: Granted
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04N 19/52 (2014.01)
  • H04N 19/139 (2014.01)
  • H04N 19/176 (2014.01)
(72) Inventors :
  • ASAKA, SAORI (Japan)
  • CHUJOH, TAKESHI (Japan)
  • TANIZAWA, AKIYUKI (Japan)
  • YASUDA, GOKI (Japan)
  • WADA, NAOFUMI (Japan)
  • WATANABE, TAKASHI (Japan)
(73) Owners :
  • KABUSHIKI KAISHA TOSHIBA (Japan)
(71) Applicants :
  • KABUSHIKI KAISHA TOSHIBA (Japan)
(74) Agent: MARKS & CLERK
(74) Associate agent:
(45) Issued: 2023-03-28
(22) Filed Date: 2009-06-18
(41) Open to Public Inspection: 2010-12-23
Examination requested: 2020-08-31
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data: None

Abstracts

English Abstract

ABSTRACT The present invention provides a video decoding apparatus that improves degrees of freedom for calculating a motion vector by selecting one from enclosed blocks. The video decoding apparatus comprises processing circuitry configured to: acquire one or more available blocks having a motion vector from decoded blocks adjacent to a to-be-decoded block and a number of the available blocks; select a first block from the available blocks; select a plurality of code words based on the number of the available blocks; and decode selection information specifying the first block from the available blocks using a code table corresponding to the first block from the available blocks, the code table including index and code words corresponding to the index, and the to- be-decoded block by using a motion vector of the first block, wherein a number of the index is determined depending on the number of the available blocks. Date Recue/Date Received 2020-08-31


French Abstract

ABRÉGÉ : Il est décrit un appareil de décodage vidéo qui améliore les degrés de latitude pour calculer un vecteur de mouvement en sélectionnant un des blocs encloisonnés. Lappareil de décodage vidéo comprend un circuit de traitement configuré pour : acquérir au moins un bloc disponible ayant un vecteur de mouvement de blocs décodés adjacents à un bloc à être décodé et un nombre des blocs disponibles; sélectionner un premier bloc à partir des blocs disponibles; sélectionner une pluralité de mots-codes daprès le nombre de blocs disponibles; et décoder les données de sélection spécifiant le premier bloc parmi les blocs disponibles en utilisant un tableau de codes correspondants au premier bloc des blocs disponibles, le tableau de codes comprenant un index et les mots-codes correspondants à lindex, et le bloc à être décodé au moyen dun vecteur de mouvement du premier bloc, dans lequel un nombre de lindex est déterminé en fonction du nombre de blocs disponibles. Date reçue / Date Received 2020-08-31

Claims

Note: Claims are shown in the official language in which they were submitted.


23
The embodiments of the invention in which an exclusive
property or privilege is claimed are defined as follows:
1. A video decoding apparatus comprising:
an acquisition module configured to acquire available
blocks having motion vectors and a number of the available
blocks from decoded blocks adjacent to a to-be-decoded block,
wherein when a block size of a decoded block having a motion
vector is a specific size, the decoded block is not determined
as the available block;
a selection information decoding module configured to
decode selection information specifying an available block
using a code table corresponding to the number of the
available blocks;
a selection module configured to select one available
block from the available blocks according to the selection
information; and
an image decoding module configured to subject the to-be-
decoded block to motion compensated prediction decoding using
a motion vector of the selected available block.
2. A video decoding method comprising:
acquiring available blocks having motion vectors and a
number of the available blocks from decoded blocks adjacent to
a to-be-decoded block, wherein when a block size of a decoded
block having a motion vector is a specific size, the decoded
block is not determined as the available block;
decoding selection information specifying an available
block using a code table corresponding to the number of the
available blocks;
Date Recue/Date Received 2022-01-13

2 4
selecting one available block from the available blocks
according to the selection information; and
subjecting the to-be-decoded block to motion compensated
prediction decoding using a motion vector of the selected
available block.
3. A video encoding apparatus comprising:
an acquisition module configured to acquire available
blocks having motion vectors and a number of the available
blocks from encoded blocks adjacent to a to-be-encoded block,
wherein when a block size of an encoded block having a motion
vector is a specific size, the encoded block is not determined
as the available block;
a selection module configured to select one available
block from the available blocks;
a selection information encoding module configured to
encode selection information specifying the available block
using a code table corresponding to the number of the
available blocks; and
an image encoding module configured to subject the to-be-
encoded block to motion compensated prediction encoding using
a motion vector of the selected available block.
4. A video encoding method comprising:
acquiring available blocks having motion vectors and a
number of the available blocks from encoded blocks adjacent to
a to-be-encoded block, wherein when a block size of an encoded
block having a motion vector is a specific size, the encoded
block is not determined as the available block;
selecting one available block from the available blocks;
Date Recue/Date Received 2022-01-13

2 5
encoding selection information specifying the available
block using a code table corresponding to the number of the
available blocks; and
subjecting the to-be-encoded block to motion compensated
prediction encoding using a motion vector of the selected
available block.
Date Recue/Date Received 2022-01-13

Description

Note: Descriptions are shown in the official language in which they were submitted.


1
VIDEO ENCODING APPARATUS, VIDEO DECODING APPARATUS
AND RELATED METHODS
This is a divisional application of Canadian Patent
Application Serial No. 3,048,386, which is a divisional
application of Canadian Patent Application Serial No.
2,969,723 (patent issued on August 27, 2019) which is a
divisional application of Canadian Patent Application Serial
No. 2,929,824 (patent issued on July 18, 2017) which is a
divisional application of Canadian Patent Application Serial
No.2,845,186 (patent issued on August 16, 2016) which is a
divisional application of Canadian Patent Application Serial
No. 2,765,828 filed on June 18, 2009 (patent issued on April
19, 2016).
Technical Field
The present invention relates to a video encoding
apparatus and a video decoding apparatus which derive a motion
vector from an encoded and decoded image and perform a motion
compensated predication. It should be understood that the
expression "the invention" and the like used herein may refer
to subject matter claimed in either the parent or the
divisional applications.
Background Art
There is a motion compensated prediction as one of
techniques used for encoding a video image.
In the motion compensated prediction, a video encoding
apparatus acquires a motion vector using a to-be-encoded image
to be newly encoded and a local decoded image already
Date Recue/Date Received 2020-08-31

la
generated and generates a prediction image by carrying out
motion compensation using this motion vector.
As one of methods for acquiring a motion vector in the
motion compensated prediction, there is a direct mode for
generating a prediction image using a motion vector of a to-
be-encoded block derived from the motion vector of an encoded
block (refer to Japanese Patent No. 4020789 and U.S. Patent
No. 7233621). Because the motion vector is not encoded in the
direct mode, the number of encoded bits of the motion vector
information can be reduced. The direct mode is employed
Date Recue/Date Received 2020-08-31

2
in 11.264/AVC.
Disclosure of Invention
In the direct mode, a motion vector is generated
by a method for calculating a motion vector from a
median value of the motion vector of an encoded block
adjacent to a to-be-encoded block in generating the
motion vector of the to-be-encoded block by prediction_
Therefore, degrees of freedom for calculating the
motion vector calculation are low. In addition, when a
method for calculating a motion vector by selecting one
from a plurality of encoded blocks is used for
improving the degrees of freedom, the position of the
block must be always sent as motion vector selection
information in order to indicate the selected encoded
block. For this reason, the number of encoded bits may
be increased.
It is an object of the present invention to
provide a video encoding apparatus and a video decoding
apparatus which reduce additional information of motion
vector selection information while improving the
degrees of freedom for calculating the motion vector by
selecting one from encoded blocks.
An aspect of the present invention provides a video
encoding apparatus for subjecting a video image to motion
compensated encoding, the apparatus comprising:
an acquisition module to acquire available blocks of
blocks having motion vectors and a number of the available
Date Recue/Date Received 2020-08-31

2a
blocks from encoded blocks adjacent to a to-be-encoded
block;
a selection module to select one selection block from the
available blocks;
a selection information encoding module to select one
selection code table from a plurality of code tables depending
on the number of the available blocks and encode selection
information for specifying the selection block using the
selected code table; and
an image encoding module to subject the to-be-encoded
block to motion compensated prediction coding using a motion
vector of the selection block.
Another aspect of the present invention provides a video
decoding apparatus for subjecting a video image to motion
compensated prediction decoding, the apparatus comprising: an
acquisition module to obtain available blocks being blocks
having motion vectors and a number of the available blocks
from decoded blocks adjacent to a to-be-decoded block; a
selection information decoding module to select one selection
code table from a plurality of code tables having different
numbers of entries depending on the number of the available
blocks and decode selection information for specifying the
selection block using a code table corresponding to the number
of the available blocks; a selection module to select one
selection block from the available blocks according to the
selection information; and a video decoding module to subject
the to-be-decoded block to motion compensated prediction
decoding using a motion vector of the selection block.
Date Recue/Date Received 2020-08-31

3
According to a further aspect of the present invention
there is provided a video decoding apparatus for subjecting a
video image to motion compensated prediction decoding, the
apparatus comprising:
an acquisition module configured to acquire available
blocks having motion vectors and a number of the available
blocks from decoded blocks adjacent to a to-be-decoded block,
wherein the acquisition module is configured to acquire the
available blocks by extracting available blocks from available
block candidates based on at least one of a set of respective
block sizes, a set of their prediction modes and the
prediction mode of the to-be-decoded block, wherein the
available block candidates are decoded neighboring blocks
having a motion vector;
a selection information decoding module to select one
selection code table from a plurality of code tables depending
on the number of the available blocks and decode selection
information for specifying the selection block using the
selected code table;
a selection module to select the selection block from the
available blocks according to the selection information; and
a video decoding module to subject the to-be-decoded
block to motion compensated prediction decoding using a motion
vector of the selection block_
Date Recue/Date Received 2020-08-31

3a
According to an aspect of the present invention there is
provided a video encoding apparatus for subjecting a video
image to motion compensated encoding, the apparatus
comprising:
an acquisition module to acquire available blocks of
blocks having motion vectors from encoded blocks adjacent to a
to-be-encoded block and a number of the available blocks;
a selection module to select one selection block, from
the available blocks;
a selection information encoding module to encode
selection information specifying the selection block using a
code table corresponding to the number of available blocks;
and
an image encoding module to subject the to-be-encoded
block to motion compensated prediction coding using a motion
vector of the selection block.
In some embodiments, the acquisition module acquires as
the available block a block of a specific block size having a
motion vector from the encoded blocks.
In some embodiments, the video encoding apparatus further
comprises a setting module to set a prediction mode of the to-
be-encoded block to any one of
(A) a first unidirectional prediction using only a first
vector,
(B) a second unidirectional prediction using only a
second vector, and
(C) a bidirectional prediction using both the first
vector and the second vector,
Date Recue/Date Received 2020-08-31

3b
wherein the acquisition module acquires as the available
block a block of a specific block size having a motion vector
necessary for subjecting the to-be-encoded block to motion
compensated prediction in the prediction mode.
In some embodiments, the video encoding module subjects
the to-be-encoded block to motion compensated prediction
coding using a quantization parameter of the selection block.
According to a further aspect of the present invention
there is provided a video decoding apparatus for subjecting a
video image to motion compensated prediction decoding, the
apparatus comprising:
an acquisition module to obtain available blocks being
blocks having motion vectors and a number of the available
blocks from decoded blocks adjacent to a to-be-decoded block;
a selection information decoding module to decode
selection information specifying the selection block using a
code table corresponding to the number of the available
blocks;
a selection module to select one selection block from the
available blocks according to the selection information; and
a video decoding module to subject the to-be-decoded
block to motion compensated prediction decoding using a motion
vector of the selection block.
In some embodiments, the acquisition module acquires as
the available block a block of a specific block size having a
motion vector from the encoded block.
Date Recue/Date Received 2020-08-31

3c
In some embodiments, the video decoding apparatus further
comprises a setting module to set a prediction mode of the to-
be-decoded block to any one of
(A) a first unidirectional prediction using only a first
vector,
(B) a second unidirectional prediction using only a
second vector, and
(C) a bidirectional prediction using both the first
vector and the second vector,
wherein the acquisition module acquires as the available
block a block of a specific block size having a motion vector
necessary for subjecting the to-be-decoded block to motion
compensated prediction in the prediction mode.
In some embodiments, the video decoding module subjects
the to-be-decoded block to motion compensated prediction
coding using a quantization parameter of the selection block.
According to another aspect of the present invention
there is provided a video decoding apparatus for subjecting a
video image to motion compensated decoding, the apparatus
comprising:
an acquisition module to acquire one or more available
blocks having a motion vector and a number of the available
blocks from decoded blocks adjacent to a to-be-decoded block;
a selection information decoding module to decode
selection information specifying one of the available blocks
using a code table having the same number of entries as the
number of the available blocks and not to decode the selection
information when the number of the available blocks is 1;
Date Recue/Date Received 2020-08-31

3d
a selection module to select a selected block from the
available blocks according to the selection information; and
an image decoding module to decode the to-be-decoded
block using a motion vector of the selected block.
According to a further aspect of the present invention
there is provided a video decoding method for subjecting a
video image to motion compensated decoding, the method
comprising:
acquiring one or more available blocks having a motion
vector and a number of the available blocks from decoded
blocks adjacent to a to-be-decoded block;
decoding selection information specifying one of the
available blocks using a code table having the same number of
entries as the number of the available blocks and not
Date Recue/Date Received 2020-08-31

3e
decoding the selection information when the number of the
available blocks is 1;
selecting a selected block from the available blocks
according to the selection information; and
decoding the to-be-decoded block by using a motion
vector of the selected block.
According to a further aspect of the present invention
there is provided a computer-readable medium storing
instructions that, when executed, cause a computer to subject
a video image to motion compensated decoding, the
instructions causing the computer to execute;
a step of acquiring one or more available blocks having
a motion vector and a number of the available blocks from
decoded blocks adjacent to a to-be-decoded block;
a step of decoding selection information specifying one
of the available blocks using a code table having the same
number of entries as the number of the available blocks and
not decoding the selection information when the number of the
available blocks is 1;
a step of selecting a selected block from the available
blocks according to the selection information; and
a step of decoding the to-be-decoded block by using a
motion vector of the selected block.
According to a further aspect of the present invention
there is provided a video decoding apparatus for subjecting a
video image to motion compensated decoding, the apparatus
decoding an encoded data by performing:
acquiring one or more available blocks having a motion
vector and a number of the available blocks from decoded
blocks adjacent to a to-be-decoded block;
Date Recue/Date Received 2020-08-31

3f
decoding selection information specifying one of the
available blocks using a code table having the same number of
entries as the number of the available blocks and not
decoding the selection information when the number of the
available blocks is 1;
selecting a selected block from the available blocks
according to the selection information; and
decoding the to-be-decoded block by using a motion
vector of the selected block.
According to a further aspect of the present invention
there is provided a video decoding apparatus comprising:
processing circuitry configured to:
acquire one or more available blocks having a
motion vector from decoded blocks adjacent to a to-be-
decoded block and a number of the available blocks;
select a code table from a plurality of code
tables depending on the number of the available blocks;
decode selection information specifying one of the
available blocks using the selected code table, the
selected code table including indexes and code words
corresponding to the indexes, wherein a number of the
indexes is equal to the number of the available blocks,
and when the number of the available blocks is 1, the
selection information is not decoded;
select a block from the available blocks according
to the selection information; and
decode the to-be-decoded block by using a motion
vector of the selected block.
According to a further aspect of the present invention
there is provided a video decoding method comprising:
Date Recue/Date Received 2020-08-31

3g
acquiring one or more available blocks having a motion
vector from decoded blocks adjacent to a to-be-decoded block
and a number of the available blocks;
selecting a code table from a plurality of code tables
depending on the number of the available blocks:
decoding selection information specifying one of the
available blocks using the selected code table, the selected
code table including indexes and code words corresponding to
the indexes, wherein a number of the indexes is equal to the
number of the available blocks, and when the number of the
available blocks is 1, the selection information is not
decoded;
selecting a block from the available blocks according
to the selection infolmation; and
decoding the to-be-decoded block by using a motion
vector of the selected block.
According to a further aspect of the present invention
there is provided a video decoding apparatus comprising a
computer constructed and arranged to:
acquire one or more available blocks having a motion
vector from decoded blocks adjacent to a to-be-decoded block
and a number of the available blocks;
select a code table from a plurality of code tables
depending on the number of the available blocks;
decode selection information specifying one of the
available blocks using the selected code table, the selected
code table including indexes and code words corresponding to
the indexes, wherein a number of the indexes is equal to the
number of the available blocks, and when the number of the
available blocks is 1, the selection information is not
decoded;
Date Recue/Date Received 2020-08-31

3h
select a block from the available blocks according to the
selection information; and
decode the to-be-decoded block by using a motion vector
of the selected block.
According to an aspect of the present invention there is
provided a video decoding apparatus comprising:
processing circuitry configured to:
acquire one or more available blocks having a motion
vector from decoded blocks adjacent to a to-be-decoded block
and a number of the available blocks;
select a first block from the one or more available
blocks;
select a plurality of code words based on the number of
the available blocks; and
decode selection information specifying the first block
from the one or more available blocks using a code table
corresponding to the first block from the one or more
available blocks, the code table including index and code
words corresponding to the index, and the to-be-decoded block
by using a motion vector of the first block, wherein a number
of the index is determined depending on the number of the
available blocks.
According to another aspect of the present invention
there is provided a video decoding method comprising:
acquiring one or more available blocks having a motion
vector from decoded blocks adjacent to a to-be-decoded block
and a number of the available blocks;
Date Recue/Date Received 2020-08-31

3i
selecting a first block from the one or more available
blocks;
selecting a plurality of code words based on the number
of the available blocks; and
decoding selection information specifying the first block
from the one or more available blocks using a code table
corresponding to the first block from the one or more
available blocks, the code table including index and code
words corresponding to the index, and the to-be-decoded block
by using a motion vector of the first block, wherein a number
of the index is determined depending on the number of the
available blocks.
According to a further aspect of the present invention
there is provided a non-transitory computer readable medium
including computer executable instructions, wherein the
instructions, when executed by a processor, cause the
processor to perform a method comprising:
acquiring one or more available blocks having a motion
vector from decoded blocks adjacent to a to-be-decoded block
and a number of the available blocks;
selecting a first block from the one or more available
blocks;
selecting a plurality of code words based on the number
of the available blocks; and
decoding selection information specifying the first block
from the one or more available blocks using a code table
corresponding to the first block from the one or more
available blocks, the code table including index and code
words corresponding to the index, and the to-be-decoded block
Date Recue/Date Received 2020-08-31

3j
by using a motion vector of the first block, wherein a number
of the index is determined depending on the number of the
available blocks.
According to a further aspect of the present invention
there is provided a video encoding apparatus comprising:
processing circuitry configured to:
acquire one or more available blocks having a motion
vector from encoded blocks adjacent to a to-be-encoded block
and a number of the available blocks;
select a first block from the one or more available
blocks;
select a plurality of code words based on the number of
the available blocks; and
encode selection information specifying the first block
from the one or more available blocks using a code table
corresponding to the first block from the one or more
available blocks, the code table including index and code
words corresponding to the index, and the to-be-encoded block
by using a motion vector of the first block, wherein a number
of the index is determined depending on the number of the
available blocks.
According to a further aspect of the present invention
there is provided a video encoding method comprising:
acquiring one or more available blocks having a motion
vector from encoded blocks adjacent to a to-be-encoded block
and a number of the available blocks;
selecting a first block from the one or more available
blocks;
Date Recue/Date Received 2020-08-31

3k
selecting a plurality of code words based on the number
of the available blocks; and
encoding selection information specifying the first block
from the one or more available blocks using a code table
corresponding to the first block from the one or more
available blocks, the code table including index and code
words corresponding to the index, and the to-be-encoded block
by using a motion vector of the first block, wherein a number
of the index is determined depending on the number of the
available blocks.
According to a further aspect of the present invention
there is provided a non-transitory computer readable medium
including computer executable instructions, wherein the
instructions, when executed by a processor, cause the
processor to perform a method comprising:
acquiring one or more available blocks having a motion
vector from encoded blocks adjacent to a to-be-encoded block
and a number of the available blocks;
selecting a first block from the one or more available
blocks;
selecting a plurality of code words based on the number
of the available blocks; and
encoding selection information specifying the first block
from the one or more available blocks using a code table
corresponding to the first block from the one or more
available blocks, the code table including index and code
words corresponding to the index, and the to-be-encoded block
by using a motion vector of the first block, wherein a number
Date Recue/Date Received 2020-08-31

3/
of the index is determined depending on the number of the
available blocks.
According to a further aspect of the present invention
there is provided a video decoding apparatus comprising:
an acquisition module configured to acquire available
blocks having motion vectors and a number of the available
blocks from decoded blocks adjacent to a to-be-decoded block,
wherein when a block size of a decoded block having a motion
vector is a specific size, the decoded block is not determined
as the available block;
a selection information decoding module configured to
decode selection information specifying an available block
using a code table corresponding to the number of the
available blocks;
a selection module configured to select one available
block from the available blocks according to the selection
information; and
an image decoding module configured to subject the to-be-
decoded block to motion compensated prediction decoding using
a motion vector of the selected available block.
According to a further aspect of the present invention
there is provided a video decoding method comprising:
acquiring available blocks having motion vectors and a
number of the available blocks from decoded blocks adjacent to
a to-be-decoded block, wherein when a block size of a decoded
block having a motion vector is a specific size, the decoded
block is not determined as the available block;
Date Recue/Date Received 2022-01-13

3m
decoding selection information specifying an available
block using a code table corresponding to the number of the
available blocks;
selecting one available block from the available blocks
according to the selection information; and
subjecting the to-be-decoded block to motion compensated
prediction decoding using a motion vector of the selected
available block.
According to a further aspect of the present invention
there is provided a video encoding apparatus comprising:
an acquisition module configured to acquire available
blocks having motion vectors and a number of the available
blocks from encoded blocks adjacent to a to-be-encoded block,
wherein when a block size of an encoded block having a motion
vector is a specific size, the encoded block is not determined
as the available block;
a selection module configured to select one available
block from the available blocks;
a selection information encoding module configured to
encode selection information specifying the available block
using a code table corresponding to the number of the
available blocks; and
an image encoding module configured to subject the to-be-
encoded block to motion compensated prediction encoding using
a motion vector of the selected available block.
According to a further aspect of the present invention
there is provided a video encoding method comprising:
Date Recue/Date Received 2020-08-31

3n
acquiring available blocks having motion vectors and a
number of the available blocks from encoded blocks adjacent to
a to-be-encoded block, wherein when a block size of an encoded
block having a motion vector is a specific size, the encoded
block is not determined as the available block;
selecting one available block from the available blocks;
encoding selection information specifying the available
block using a code table corresponding to the number of the
available blocks; and
subjecting the to-be-encoded block to motion compensated
prediction encoding using a motion vector of the selected
available block.
Brief Description of Drawings
FIG. 1 is a block diagram of a video encoding
Date Recue/Date Received 2020-08-31

4
apparatus related to an embodiment of the present
invention.
FIG. 2 is a flowchart representing a processing
procedure of the video encoding apparatus.
FIG. 3 is a flowchart representing a processing
procedure of an acquisition /selection module.
FIG. 4A is a diagram for describing a
discrimination method based on a block size.
FIG. 45 is a diagram for describing a
discrimination method based on a block size.
FIG. 4C is a diagram for describing a
discrimination method based on a block size.
FIG. 5 is a diagram for describing a
discrimination method by a unidirectional or a
bidirectional.
FIG. 6 is a flowchart representing a processing
procedure of a selection information encoder.
FIG. 7 shows an example of an index of selection
information.
FIG. 8 shows an example of a code table of
selection information.
FIG. 9 is a schematic view of a syntax structure.
FIG. 10 shows a data structure of a macroblock
layer.
FIG. 11 shows a block diagram of a video decoding
apparatus related to the embodiment of the present
invention.
Date Recue/Date Received 2020-08-31

5
FIG. 12 shows a flowchart representing a
processing procedure of the video decoding apparatus.
Mode for Carrying Out the Invention
There will now be explained embodiments of the
present invention referring to drawings.
A video encoding apparatus related to an
embodiment is described with reference to FIG. 1
hereinafter. A subtracter 101 calculates a difference
between an input video signal 11 and a predictive coded
video signal 15, and output a prediction error
signal 12. The output terminal of the subtracter 101
is connected to a variable length encoder 111 through
an orthogonal transformer 102 and a quantizer 103. The
orthogonal transformer 102 orthogonal-transforms a
prediction error signal 12 from the subtracter 101, and
- the quantizer 103 quantizes an orthogonal
transformation coefficient and outputs quantization
orthogonal transformation coefficient information 13.
The variable length encoder 111 performs variable
length encoding on the quantization orthogonal
transformation coefficient information 13 from the
quantizer 103.
The output teiminal of the quantizer 103 is
connected to an adder 106 through a dequantizer 104 and
an inverse orthogonal transformer 105. The dequantizer
104 dequantizes the quantized orthogonal transformation
coefficient information 13, and converts it in an
Date Recue/Date Received 2020-08-31

6
orthogonal transformation coefficient. The inverse orthogonal
transformer 105 converts the orthogonal transformation
coefficient to a prediction error signal. The adder 106 adds
the prediction error signal of the inverse orthogonal
transformer 105 and the predictive coded video signal 15 to
generate a local decoded image signal 14. The output terminal
of the adder 106 is connected to a motion compensated
prediction module 108 through a frame memory 107.
The frame memory 107 accumulates a local decoded image
signal 14. A setting module 114 sets a motion compensated
prediction mode (a prediction mode) of a to-be-encoded
block. The prediction mode includes a unidirectional
prediction using a single reference picture and a
bidirectional prediction using two reference pictures. The
unidirectional prediction includes LO prediction and Li
prediction of AVC. A motion compensated prediction module
108 comprises a prediction module 109 and an
acquisition/selection module 110.
The acquisition/selection module 110 acquires available
blocks having motion vectors and the number of the available
blocks from encoded blocks adjacent to the to-be-encoded
block, and selects a selection block from the available
blocks. The motion compensated prediction module 108
performs a prediction using a local decoded image signal 14
stored in the frame memory 107 as a reference image and
Date Recue/Date Received 2020-08-31

7
generates a predictive coded video signal 15. The
acquisition/selection module 110 selects one block (a
selection block) from the adjacent blocks adjacent to the
to-be-encoded block. For example, the block having an
appropriate motion vector among the adjacent blocks is
selected as the selection block. The acquisition/selection
module 110 selects the motion vector of the selection block
as a motion vector 16 to be used for the motion compensated
prediction, and sends it to the prediction module 109. In
addition, the acquisition/selection module 110 generates
selection information 17 of the selection block and sends it
to the variable length encoder 111.
The variable length encoder 111 has a selection
information encoder 112. The selection information encoder
112 subjects the selection information 17 to variable length
encoding while switching a code table so as to have therein
the same number of entries as the available blocks of
encoded blocks. The available block is a block having a
motion vector among encoded blocks adjacent to the to-be-
encoded block. A multiplexer 113 multiplexes quantized
orthogonal transformation coefficient information and
selection information and output encoded data.
The action of the video encoding apparatus of the above
configuration will be described referring to the flowchart
of FIG. 2.
Date Recue/Date Received 2020-08-31

8
At first a prediction error signal 12 is generated
($11). In generation of this prediction error signal
12, a motion vector is selected, and a prediction image
is generated using the selected motion vector. The
subtracter 101 calculates a difference between the
signal of the prediction image, that is, the prediction
image signal 15 and the input video signal 11 to
generate the prediction error signal 12.
The orthogonal transformer 102 orthogonal-
transforms the prediction error signal 12 to generate
an orthogonal transformed coefficient (S12). The
quantizer 103 quantizes the orthogonal transformed
coefficient (S13). The dequantizer 104 dequantizes the
quantized orthogonal transformed coefficient
information (S14), and then subjects it to inverse
orthogonal transform to provide a reproduced prediction
error signal (S15). The adder 106 adds the reproduced
prediction error signal and the predictive coded video
signal 15 to generate a local decoded image signal 14
(S16). The local decoded image signal 14 is stored in
the frame memory 107 (as a reference picture) (317),
and the local decoded image signal read from the frame
memory 107 is inputted to the motion compensated
prediction module 108.
The prediction module 109 of the motion
compensated prediction module 108 subjects the local
decoded image signal (reference image) to motion
Date Recue/Date Received 2020-08-31

9
compensated prediction using the motion vector 16 to
generate the predictive coded video signal 15. The
predictive coded video signal 15 is sent to the subtracter
101 to calculate a difference with respect to the input
video signal 11, and further is sent to the adder 106 to
generate the local decoded image signal 14.
The acquisition/selection module 110 selects a
selection block from adjacent blocks, generates selection
information 17, and sends a motion vector 16 of the
selection block to the prediction module 109 which performs
the motion compensated prediction using the motion vector of
the selection block. The selection information 17 is sent to
the selection information encoder 112. When the selection
block is selected from the adjacent blocks, the adjacent
block having the appropriate motion vector allowing the
amount of encoded bits to be decreased is selected.
The orthogonal transformation coefficient information
13 quantized with the quantizer 103 also is input to the
variable length encoder 111 and is subjected to variable
length coding (S18). The acquisition/selection module 110
outputs the selection information 16 used for motion
compensated prediction, and inputs it to the selection
infoimation encoder 112. The selection information encoder
112 switches the code table so as to have therein the same
number of entries as the available blocks of the encoded
blocks neighboring the to-be-encoded block and having motion
Date Recue/Date Received 2020-08-31

10
vectors, and the selection information 17 is subjected
to variable length coding. The multiplexer 113
multiplexes the quantized orthogonal transformation
coefficient information from the variable length
encoder 111 and the selection information to output a
bit stream of coded data 18 (S19). The coded data 18
is sent to a storage system (not shown) or a
transmission path.
In the flowchart of FIG. 2, the flow of steps S14
to S17 may be replaced by the flow of steps 318 and
S19.
In other words, the variable length coding step
318 and multiplexing step S19 may be executed following
the quantization step 313, and the dequantizing step
S14 to the storage step S17 may be executed following
the multiplexing step S19.
The action of the acquisition/selection module 110
will be described referring to flowchart shown in
FIG. 3.
At first the available block candidates being the
encoded blocks neighboring the to-be-encoded block and
having motion vectors are searched for (3101). When
the available block candidates are searched for, the
block size for motion compensated prediction of these
available block candidates is deteimined (S102). Next,
it is determined whether the available block candidates
are a unidirectional prediction or a bidirectional
Date Recue/Date Received 2020-08-31

11
prediction (3103). An available block is extracted from the
available block candidates based on the determined result
and the prediction mode of the to-be-encoded block. One
selection block is selected for from the extracted available
blocks, and information specifying the selection block is
acquired as selection information (S104).
There will be described a process for determining a
block size referring to FIGS. 4A to 4C (S102).
The adjacent blocks used in the present embodiment are
assumed to be blocks, which are positioned at the left,
upper left, upper and upper right of the to-be-encoded
block. Therefore, when the to-be-encoded block positions the
most upper left of the frame, this to-be-encoded block
cannot be applied to the present invention because there is
not the available block adjacent to the to-be-encoded block.
When the to-be-encoded block is on the upper end of the
screen, the available block is only a left block, and when
the to-be-encoded block is on the extreme left and not on
the extreme upper end, the two blocks of the to-be-encoded
blocks which position the upper and upper right thereof.
When the block size is a size 16x16, the block
sizes for motion compensated prediction of the adjacent
blocks are four kinds of size 16x16, size 16x8, size
8x16 and size 8x8 as shown in FIGS. 4A to 4C.
Considering these four kinds, the adjacent blocks that
Date Recue/Date Received 2020-08-31

12
may be available blocks are 20 kinds as shown in
FIGS. 4A to 4C. In other words, there are four kinds
for size 16x16 as shown in FIG. 4A, 10 kinds for size
16x8 as shown in FIG. 4B, and six kinds for size 8x8 as
shown in FIG. 4C. In discrimination of the block size
(S102), the available block is searched for according
to the block size from 20 kinds of blocks. For
example, when the size of the available block is
assumed to be only size 16x16, the available blocks
deteLmined by this block size are four kinds of blocks
of size 16x16 as shown in FIG. 4A. In other words, the
available blocks are a block on the upper left side of
the to-be-encoded block, a block on the upper side of
the to-be-encoded block, and a block on the left side
of the to-be-encoded block and a block on the upper
right side of the to-be-encoded block. In addition,
even if the macroblock size was expanded not less than
size 16x16, it can be the available block similarly to
the macroblock size of 16x16. For example, when the
macroblock size is 32x32, the block size for motion
compensated prediction of the adjacent block are
four kinds of size 32x32, size 32x16, size 16x32, and
size 16x16, and the adjacent blocks that may be the
available blocks are 20 kinds.
There will be described the determination of the
unidirectional prediction or bidirectional prediction
which is executed by the acquisition/selection module
Date Recue/Date Received 2020-08-31

13
110 (S103) with reference to FIG. 5.
For example, the block size is limited to 16x16,
and the unidirectional or bidirectional prediction of
the adjacent block with respect to the to-be-encoded
block is assumed to be a case as shown in FIG. 5. In
discrimination of the unidirectional or bidirectional
prediction (S103), the available block is searched for
according to the direction of prediction. For example,
the adjacent block having a prediction direction LO is
assumed to be an available block determined in the
prediction direction. In other words, the upper, left
and upper right blocks of the to-be-encoded blocks
shown in FIG. 5 (a) are available blocks determined in
the prediction direction. In this case, the upper left
block of the to-be-encoded blocks is not employed.
When the adjacent block including the prediction
direction Li is assumed to be the available block
determined in the prediction direction, the upper left
and upper blocks of the to-be-encoded blocks shown in
FIG. 5 (b) are available blocks determined in the
prediction direction. In this case, the left and upper
right blocks of the to-be-encoded blocks are not
employed. When the adjacent block including the
prediction direction LO/L1 is assumed to be the
available block determined in the prediction direction,
only the upper block of the to-be-encoded blocks shown
in FIG. 5 (c) is the available block determined in the
Date Recue/Date Received 2020-08-31

14
prediction direction. In this case, the left, upper
left and upper right blocks of the to-be-encoded blocks
are not employed. In addition, the prediction
direction LO (L1) corresponds to the prediction
direction of the LO prediction (L1 prediction) in AVC.
There will be described the selection information
encoder 112 referring to flowchart shown in FIG. 6.
The available block of the encoded block having a
motion vector is searched for from among adjacent
blocks adjacent to the to-be-encoded block, and the
available block information determined by the block
size and the unidirectional or bidirectional prediction
is acquired (S201). The code tables corresponding to
the number of available blocks as shown in FIG. 8 are
switched using this available block information (S202).
The selection information 17 sent from the
acquisition/selection module 110 is subjected to
variable length coding using a changed code table
(S203).
An example of an index of selection information is
explained referring to FIG. 7 next.
When there is no available block as shown in
FIG. 7 (a), the selection infoLmation is not sent
because the present invention is inapplicable to this
block. When there is one available block as shown in
FIG 7 (b), the selection information is not sent
because a motion vector of an available block used for
Date Recue/Date Received 2020-08-31

15
motion compensation of the to-be-encoded block is
determined in unique. When there are two available
blocks as shown in FIG. 7 (c), the selection
information of an index 0 or 1 is sent. When there are
three available blocks as shown in FIG. 7 (d), the
selection information of an index 0, 1 or 2 is sent.
When there are four available blocks as shown in
FIG. 7 (e), the selection information of an index 0, 1,
2 or 3 is sent.
In addition, as an example of setting an index of
the available block, an example of setting the index to
the available block in order of the left, upper left,
upper and upper right of the to-be-encoded blocks is
shown in FIG. 7. In other words, the index is set to
the block to be used except for the block which is, not
used.
There will be described a code table of the
selection information 17 referring to FIG. 8 next_
The selection information encoder 112 switches the
code table according to the number of available blocks
(S202). As mentioned above, when there are two or more
available blocks, the selection information 17 must be
encoded.
At first when there are two available blocks,
indexes 0 and I are needed, and the code table is
indicated by the table on the left side of FIG. 8.
When there are three available blocks, indexes 0, 1 and
Date Recue/Date Received 2020-08-31

16
2 are needed, and the code table is indicated by the
table on the center of FIG. 8. When there are four
available blocks, indexes 0, 1, 2, 3 are needed,
and the code table is indicated by the table on the
right side of FIG. 8. These code tables are switched
according to the number of available blocks.
There will be explained an encoding method of the
selection information_
FIG. 9 shows a schematic diagram of a structure of
syntax used in this embodiment.
The syntax comprises mainly three parts, wherein
High Level Syntax 801 is filled with syntax information
of the upper layer not less than a slice. Slice Level
Syntax 804 specifies information necessary for every
slice, Macroblock Level Syntax 807 specifies a variable
length coded error Signal or mode information which is
needed for every macroblock.
These syntaxes each comprise more detailed
syntaxes. The High Level Syntax 801 comprises syntaxes
of sequence and picture levels such as Sequence
parameter set syntax 802 and Picture parameter set
syntax 803. Slice Level Syntax 804 comprises Slice
header syntax 405, Slice data syntax 406 and so on.
Further, Macroblock Level Syntax 807 comprises
macroblock layer syntax 808, macroblock prediction
syntax 809 and so on.
The syntax information necessary for this
= =
Date Recue/Date Received 2020-08-31

17
embodiment is macroblock layer syntax 808. The syntax
is described hereinafter.
The "available block num" shown in FIG. 10 (a) and
(b) indicates the number of available blocks. When
this is two or more, it is necessary to encode the
selection information. In addition, the "mvcopy_flag"
indicates a flag representing whether the motion vector
of the available block is used in the motion
compensated prediction. When there are one or more
available blocks and the flag is "1", the motion vector
of the available block can be used in the motion
compensated prediction. Further, the "mv_select_info"
indicates the selection information, and the code table
is as described above.
FIG. 10 (a) shows a syntax when selection
information is encoded after "mb_type." When, for
example, the block size is only size 16x16, the
"mvcopy_flag and my select info" needs not be encoded
if the "mb_type" is other than 16x16. If mb_type is
16x16, mvcopy_flag and mv_select_info are encoded_
FIG. 10 (b) shows a syntax when selection
information is encoded before mb_type. If, for
example, mvcopy_flag is 1, it is not necessary to
encode mb_type. If mv_copy_flag is 0, mb_type is
encoded.
In this embodiment, what order may be employed in
a scan order for encoding. For example, a line scan or
Date Recue/Date Received 2020-08-31

18
a Z scan is applicable to the present invention.
There will be a video decoding apparatus related
to another embodiment with reference to FIG. 11.
The coded data 18 output from the video encoding
apparatus of FIG_ 1 is input to a demultiplexer 201 of
the video decoding apparatus as encoded data 21 to be
decoded through a storage system or a transmission
system. The demultiplexer 201 demultiplexes the
encoded data 21 to separate the encoded data 21 into
quantization orthogonal transformation coefficient
information and selection information. The output
terminal of the demultiplexer 201 is connected to a
variable length decoder 202. The variable length
decoder 202 decodes the quantization orthogonal
transformation coefficient information and the
selection information. The output terminal of the
variable length decoder 202 is connected to an adder
206 via a dequantizer 204 and an inverse orthogonal
transformer 205. The dequantizer 204 dequantizes the
quantized orthogonal transformation coefficient
information to transform it to an orthogonal
transformation coefficient. The inverse orthogonal
transformer 205 subjects the orthogonal transformation
coefficient to inverse orthogonal transform to generate
a prediction error signal. The adder 206 adds the
prediction error signal to the predictive coded video
signal from a prediction image generator 207 to produce
Date Recue/Date Received 2020-08-31

19
a video signal.
The prediction image generator 207 includes a
prediction module 208 and an acquisition/selection module
209. The acquisition/selection module 209 selects a
selection block from available blocks using selection
infoimation 23 decoded by the selection infoimation decoder
203 of the variable length decoder 202 and sends a motion
vector 25 of the selection block to a prediction module 208.
The prediction module 208 motion-compensates a reference
image stored in a frame memory 210 by the motion vector 25
to produce a prediction image.
The action of the video decoding apparatus of the above
configuration will be described referring to flowchart of
FIG. 12.
The demultiplexer 201 demultiplexes the coded data 21
(S31), and the variable length decoder 202 decodes it to
produce quantized orthogonal transfoimation coefficient
information 22 (S32). In addition, the selection information
decoder 203 checks the condition of the adjacent block
adjacent to a to-be-decoded block and decode it by switching
code tables according to the number of the available blocks
of the adjacent encoded blocks having motion vectors as
shown in FIG. 8, similarly to the selection information
encoder 112 of the encoding apparatus, thereby to produce
the selection information 23 (S33).
Date Recue/Date Received 2020-08-31

20
The quantized orthogonal transformation coefficient
information 22 that is information output from the variable
length decoder 202 is sent to the dequantizer 204, and the
selection information 23 which is information output from
selection information decoder 203 is sent to the
acquisition/selection module 209.
The quantization orthogonal transformation coefficient
information 22 is dequantized with the dequantizer 204 (S34),
and then subjected to inverse orthogonal transform with the
inverse orthogonal transformer 205 (S35). As a result, the
prediction error signal 24 is obtained. The adder 206 adds
the prediction image signal to the prediction error signal 24
to reproduce a video signal 26 (S36). The reproduced video
signal 27 is stored in the frame memory 210 (S37).
The prediction image generator 207 generates the
prediction image 26 using the motion vector of the available
block that is the decoded block neighboring the to-be-decoded
block and having a motion vector, the motion vector being a
motion vector of a selection block selected on the basis of
the decoded selection information 23. The
acquisition/selection module 209 selects one motion vector
from the adjacent blocks on the basis of the available block
information of the adjacent block and the selection
information 23 decoded with the selection information decoder
203, similarly to the acquisition/selection module 110 of the
coding apparatus. The prediction module 208 generates the
Date Recue/Date Received 2020-08-31

21
prediction image 26 using this selected motion vector
25, and sends it to the adder 206 to produce a video
signal 27.
According to the present invention, encoding the
selection information according to the number of
available blocks allows the selection information to be
sent using a suitable code table, resulting in that
additional information of the selection information can
be reduced.
In addition, using the motion vector of the
available block for the motion compensated prediction
of the to-be-encoded block allows the additional
information on the motion vector information to be
reduced.
Furthermore, the motion vector calculation method
is not fixed and improves degrees of freedom of motion
vector calculation as compared with a direct mode by
selecting an appropriate one from among the available
blocks.
The technique of the present invention recited in
the embodiment of the present invention may be executed
with a computer and also may be distributed as a
program capable of causing a computer to execute by
storing it in a recording medium such as a magnetic
disk (flexible disk, a hard disk, etc.), an optical
disk (CD-ROM, DVD, etc.), a semiconductor memory, etc.
In addition, the present invention is not limited
Date Recue/Date Received 2020-08-31

22
to the above embodiments and may be modified in
component within a scope without departing from the
subject matter of the invention.
In addition, it is possible to provide various
inventions by combining appropriately a plurality of
components disclosed in the above embodiments. For
example, some components may be deleted from all
components shown in the embodiments. Further, the
components of different embodiments may be combined
appropriately.
Industrial Applicability
The apparatus of the present invention is applied
to an image compression process in a communication, a
storage and a broadcast.
Date Recue/Date Received 2020-08-31

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date 2023-03-28
(22) Filed 2009-06-18
(41) Open to Public Inspection 2010-12-23
Examination Requested 2020-08-31
(45) Issued 2023-03-28

Abandonment History

There is no abandonment history.

Maintenance Fee

Last Payment of $473.65 was received on 2023-12-07


 Upcoming maintenance fee amounts

Description Date Amount
Next Payment if small entity fee 2025-06-18 $253.00
Next Payment if standard fee 2025-06-18 $624.00

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Registration of a document - section 124 2020-08-31 $100.00 2020-08-31
DIVISIONAL - MAINTENANCE FEE AT FILING 2020-08-31 $1,800.00 2020-08-31
Filing fee for Divisional application 2020-08-31 $400.00 2020-08-31
DIVISIONAL - REQUEST FOR EXAMINATION AT FILING 2020-11-30 $800.00 2020-08-31
Maintenance Fee - Application - New Act 12 2021-06-18 $255.00 2021-05-18
Maintenance Fee - Application - New Act 13 2022-06-20 $254.49 2022-05-11
Final Fee 2020-08-31 $306.00 2023-02-14
Maintenance Fee - Patent - New Act 14 2023-06-19 $263.14 2023-05-09
Maintenance Fee - Patent - New Act 15 2024-06-18 $473.65 2023-12-07
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
KABUSHIKI KAISHA TOSHIBA
Past Owners on Record
None
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
New Application 2020-08-31 12 380
Claims 2020-08-31 3 83
Drawings 2020-08-31 13 272
Abstract 2020-08-31 1 25
Description 2020-08-31 38 1,341
Divisional - Filing Certificate 2020-09-18 2 197
Representative Drawing 2021-06-02 1 10
Cover Page 2021-06-02 1 45
Examiner Requisition 2021-09-14 6 313
Amendment 2022-01-13 13 385
Claims 2022-01-13 3 76
Description 2022-01-13 38 1,939
Final Fee 2023-02-14 4 134
Representative Drawing 2023-03-14 1 11
Cover Page 2023-03-14 1 48
Electronic Grant Certificate 2023-03-28 1 2,527
Maintenance Fee Payment 2023-05-09 1 33