JPWO2011034148A1 - Encoding device, decoding device, moving image encoding device, moving image decoding device, and encoded data - Google Patents
Encoding device, decoding device, moving image encoding device, moving image decoding device, and encoded data Download PDFInfo
- Publication number
- JPWO2011034148A1 JPWO2011034148A1 JP2011531972A JP2011531972A JPWO2011034148A1 JP WO2011034148 A1 JPWO2011034148 A1 JP WO2011034148A1 JP 2011531972 A JP2011531972 A JP 2011531972A JP 2011531972 A JP2011531972 A JP 2011531972A JP WO2011034148 A1 JPWO2011034148 A1 JP WO2011034148A1
- Authority
- JP
- Japan
- Prior art keywords
- data
- unit
- candidate
- prediction
- encoding
- 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.)
- Pending
Links
- 230000006870 function Effects 0.000 claims description 90
- 239000013598 vector Substances 0.000 claims description 86
- 238000004364 calculation method Methods 0.000 claims description 77
- 238000006243 chemical reaction Methods 0.000 claims description 18
- 238000013139 quantization Methods 0.000 claims description 18
- 239000000284 extract Substances 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 33
- 238000000034 method Methods 0.000 description 27
- 238000000605 extraction Methods 0.000 description 6
- 238000005315 distribution function Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 241000122133 Panicum mosaic virus Species 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
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/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
-
- 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/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
符号化装置は、複数のPMV候補からどのPMVを選択したかの情報を用いて、仮MV候補の中からMVの存在可能領域にあるMV候補を抽出するMVフラグ決定部(1115)と、MVフラグ決定部(1115)で抽出されたMV候補を特定するMVインデックスが2以上ある場合に各MVインデックスを符号化するMVインデックス符号化部(1153)と、を備えている。The encoding apparatus uses an information indicating which PMV is selected from a plurality of PMV candidates, and extracts an MV candidate in the MV existence area from the temporary MV candidates, and an MV An MV index encoding unit (1153) that encodes each MV index when there are two or more MV indexes specifying the MV candidates extracted by the flag determination unit (1115).
Description
本発明は、主に、動きベクトルを効率的に符号化する動画像符号化装置および動画像復号装置に関する。 The present invention mainly relates to a moving image encoding device and a moving image decoding device that efficiently encode a motion vector.
動画像符号化技術の分野では、一般に画像データを複数のブロックに分割し、分割したブロック単位で符号化が行われる。ブロック単位の符号化では、入力信号の予測信号の生成、入力信号と予測信号の差分である残差信号の算出、算出された残差信号の変換、変換で得られた変換係数の量子化、量子化された変換係数の可変長符号化等の符号化処理がなされる。 In the field of moving image encoding technology, generally, image data is divided into a plurality of blocks, and encoding is performed in units of divided blocks. In block unit coding, prediction signal generation of an input signal, calculation of a residual signal that is a difference between the input signal and the prediction signal, conversion of the calculated residual signal, quantization of a transform coefficient obtained by the conversion, An encoding process such as variable length encoding of the quantized transform coefficient is performed.
予測信号の生成方法には、対象ブロック周囲の再生画像を用いるイントラ予測と既に符号化/復号されたフレームの再生画像を用いるインター予測がある。 As a method for generating a prediction signal, there are intra prediction using a reproduced image around the target block and inter prediction using a reproduced image of an already encoded / decoded frame.
イントラ予測には、DC予測、水平予測、垂直予測など複数のイントラ予測モードがあり、いずれのイントラ予測モードを用いるかを示す情報が符号化される。 Intra prediction includes a plurality of intra prediction modes such as DC prediction, horizontal prediction, and vertical prediction, and information indicating which intra prediction mode is used is encoded.
また、インター予測では、予測に使う参照フレームを特定するためのフレームID、および、動きベクトル(MV)が符号化される。 In inter prediction, a frame ID for specifying a reference frame used for prediction and a motion vector (MV) are encoded.
MVの符号化は、まずMVの予測値である予測動きベクトル(PMV)を算出し、次にPMVとMVの差分を符号化することで行われる。図16は、非特許文献1のMVの符号化データの構成を示す図である。図16に示すように、MVはPMVを示すPMVインデックス、PMVとMVの差分の絶対値(MVD絶対値)、及び差分が正であるか負であるかを示すMVD符号に分けて符号化される。なお、MVD絶対値とMVD符号はX成分、Y成分の順に符号化され、成分毎のMVD絶対値が0の場合にはMVD符号は符号化されない。
MV encoding is performed by first calculating a predicted motion vector (PMV) that is a predicted value of MV, and then encoding the difference between PMV and MV. FIG. 16 is a diagram illustrating a configuration of MV encoded data of Non-Patent
ここで、MVD絶対値は2値化され適応的な確率を用いる算術符号により効率的に符号化される。MVD符号についても2値化され算術符号により符号化されるが、非特許文献1においては2値化された符号の0、1の発生確率は常に0.5であり、符号化された結果、符号量が固定長符号化の場合と同等になる。
Here, the MVD absolute value is binarized and efficiently encoded by an arithmetic code using an adaptive probability. The MVD code is also binarized and encoded by an arithmetic code. However, in
非特許文献2には、MVD絶対値とMVD符号とに分けて符号化することなく、MVをそのまま符号化する方法が開示されている。この方法では、MVの存在確率を、複数のPMVの各々についてPMVとMVとの距離を算出するとともにそれらの距離を用いて一般化ガウス関数を用いた分布関数の和を用いたモデルで推定し、推定したモデルから算出される確率を用いた多値算術符号を用いて符号化する。
Non-Patent
また、非特許文献1には、MotionVectorCompetition(MVCOMP)と呼ばれる技術が開示されている。MVCOMPでは、複数の予測動きベクトル候補(PMV候補)を用いることにより、符号化効率を向上させている。具体的には、PMV候補の中から符号化対象とするMVに近いPMVを選択し、PMV候補を特定するインデックス(PMVインデックス)を符号化する。次いでPMVとMVとの差分を符号化する。MVCOMPでは、複数のPMV候補から好適なPMVを選択することにより、1つのPMVを用いる場合よりもMVとPMVの差分を小さくすることができるため、差分の符号量を削減することができる。
Non-Patent
複数の予測動きベクトル候補(PMV候補)を算出し、PMV候補から1つの予測動きベクトル(PMV)を選択した上で、動きベクトル(MV)とPMVとの差分を符号化する非特許文献1のMV符号化では、MVとPMVの差分の符号化に、選択したPMVの情報を用いていないため、符号量が多くなっていた。
Non-Patent
より具体的には、選択したPMVとPMV候補の関係により、符号化対象MVの存在可能領域が限定されるという性質を用いていないため効率が低下していた。 More specifically, the efficiency is reduced because the relationship between the selected PMV and the PMV candidate does not use the property that the region where the encoding target MV can exist is limited.
さらに、非特許文献1のMV符号化においては、PMVとMVとの差分の絶対値であるMVD絶対値については適応的な確率を用いる算術符号化により効率的に符号化されるが、MV符号等、MVD絶対値以外の部分の符号化については固定的な確率を用いるために効率的な符号化が行われなかった。
Furthermore, in the MV coding of Non-Patent
一方、非特許文献2のMV符号化においては、MVD絶対値を用いないため、MVの存在確率に応じて符号化することができるが、予め分布関数の特性を決定するパラメータ(例えば、一般化ガウス関数の標準偏差および形状パラメータ)を算出しておく必要があるため、非特許文献2のMV符号化を任意の画像に適応することは困難であった。また、累積分布関数の値を繰り返し計算する必要があるため非特許文献2に記載されているテーブル参照を用いても演算量が大きいという課題があった。また、MVD絶対値の大きさは空間的な相関が高い傾向にあるが、MVD絶対値を分離していないため、このような傾向を利用することが困難であった。
On the other hand, in the MV encoding of Non-Patent
上記課題を解決するために、本発明は次の特徴を備えている。すなわち、
本発明の符号化装置は、所定のデータの符号化に際し、既に符号化済みのデータから予測データを生成し、前記前記所定のデータと前記予測データとの差分絶対値を符号化する差分絶対値符号化部と、前記差分絶対値と前記予測データとからデータ候補を算出するデータ候補算出部と、データ候補算出部で算出されたデータ候補の数が2以上である場合に、前記データ候補毎に異なるフラグを設定し、各データ候補に対して設定されたフラグを符号化するデータ候補特定フラグ符号化部と、を備えていることを特徴とする。In order to solve the above problems, the present invention has the following features. That is,
The encoding apparatus according to the present invention generates a prediction data from already encoded data and encodes a difference absolute value between the predetermined data and the prediction data when encoding the predetermined data. When the number of data candidates calculated by the encoding unit, the data candidate calculation unit calculating the data candidate from the difference absolute value and the prediction data, and the data candidate calculation unit is 2 or more, for each data candidate And a data candidate specifying flag encoding unit that encodes the flag set for each data candidate.
本発明の符号化装置は、所定のデータの符号化に際し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から符号化に用いる予測データを選択する予測データ決定部と、前記所定のデータと前記予測データとの差分絶対値を符号化する差分絶対値符号化部と、前記差分絶対値と前記予測データからデータ候補を算出するデータ候補算出部と、前記予測データと前記予測データ候補から、前記差分絶対値と前記予測データから算出されるデータ候補の有効性を判定するデータ候補判定部と、を備え、データ候補判定部で有効とされたデータ候補の数が2以上である場合に、前記データ候補を特定するフラグを符号化する、データ候補特定フラグ符号化部を備えることを特徴とする。 The encoding apparatus of the present invention generates a plurality of prediction data candidates from already encoded data when encoding predetermined data, and selects prediction data to be used for encoding from the prediction data candidates A determination unit; a difference absolute value encoding unit that encodes a difference absolute value between the predetermined data and the prediction data; a data candidate calculation unit that calculates a data candidate from the difference absolute value and the prediction data; A data candidate determination unit that determines the validity of the data candidate calculated from the absolute value of the difference and the prediction data from the prediction data and the prediction data candidate, and the data candidate that has been validated by the data candidate determination unit A data candidate specifying flag encoding unit is provided that encodes a flag that specifies the data candidate when the number is two or more.
本発明の符号化装置は、所定のデータの符号化に際し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から符号化に用いる予測データを選択する予測データ決定部と、前記所定のデータと前記予測データとの差分絶対値をシンボル列とするとともに該シンボル列を算術符号化することにより、前記差分絶対値を符号化する差分絶対値符号化部と、を備え、差分絶対値符号化部は、前記シンボル列を算術符号化するために用いる各シンボルの出現確率を、前記予測データ決定部が選択した予測データに応じて変更することを特徴とする。 The encoding apparatus of the present invention generates a plurality of prediction data candidates from already encoded data when encoding predetermined data, and selects prediction data to be used for encoding from the prediction data candidates A determination unit, and a difference absolute value encoding unit that encodes the difference absolute value by using the difference absolute value between the predetermined data and the prediction data as a symbol string and arithmetically encoding the symbol string; The difference absolute value encoding unit changes the appearance probability of each symbol used for arithmetic encoding of the symbol string according to the prediction data selected by the prediction data determination unit.
また、本発明の復号装置は、所定のデータの復号に際し、符号化されている差分絶対値を復号する差分絶対値復号部と、既に符号化済みのデータから予測データを生成し、前記差分絶対値と前記予測データとからデータ候補を算出するデータ候補算出部と、前記データ候補算出部で生成されたデータ候補の数が2以上である場合に、各データ候補に対してデータ候補毎に異なる値が設定されたフラグを復号するデータ候補特定フラグ復号部と、を備えていることを特徴とする。 The decoding apparatus of the present invention, when decoding predetermined data, generates a difference absolute value decoding unit that decodes an encoded difference absolute value, prediction data from already encoded data, and the difference absolute value When the number of data candidates generated by the data candidate calculation unit and the data candidate calculation unit that calculates data candidates from the value and the prediction data is two or more, each data candidate differs for each data candidate A data candidate specifying flag decoding unit that decodes a flag for which a value is set.
本発明の復号装置は、所定のデータの復号に際し、符号化されている差分絶対値を復号し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から符号化に用いる予測データを選択する予測データ決定部と、前記予測データと前記予測データ候補から、前記差分絶対値と前記予測データから算出されるデータ候補の有効性を判定するデータ候補判定部と、を備え、前記データ候補判定部で有効とされたデータ候補の数が2以上である場合に、前記データ候補を特定するフラグを復号する、データ候補特定フラグ復号部を備えることを特徴とする。 When decoding predetermined data, the decoding device of the present invention decodes an encoded difference absolute value, generates a plurality of prediction data candidates from already encoded data, and generates a code from among the prediction data candidates. A prediction data determination unit that selects prediction data to be used for conversion, a data candidate determination unit that determines the validity of the data candidate calculated from the absolute value of the difference and the prediction data from the prediction data and the prediction data candidate, And a data candidate specifying flag decoding unit for decoding a flag for specifying the data candidate when the number of data candidates validated by the data candidate determining unit is 2 or more.
本発明の復号装置は、所定のデータの復号に際し、既に符号化済みのデータから複数の予測データ候補を生成し、前記予測データ候補の中から復号に用いる予測データを選択する予測データ決定部と、前記所定のデータと前記予測データとの差分絶対値であるシンボル列を算術復号することにより、前記差分絶対値を復号する差分絶対値復号部と、を備え、前記差分絶対値復号部は、前記シンボル列を復号するために用いる各シンボルの出現確率を、前記予測データ決定部が選択した予測データに応じて変更することを特徴とする。 A decoding apparatus according to the present invention, when decoding predetermined data, generates a plurality of prediction data candidates from already encoded data, and selects a prediction data to be used for decoding from the prediction data candidates; A difference absolute value decoding unit that decodes the difference absolute value by arithmetically decoding a symbol string that is a difference absolute value between the predetermined data and the prediction data, and the difference absolute value decoding unit includes: The appearance probability of each symbol used for decoding the symbol string is changed according to the prediction data selected by the prediction data determination unit.
複数の予測動きベクトル候補からどの予測動きベクトルを選択したかの情報を用いて、動きベクトルの存在可能領域を限定した上で、その限定を利用して動きベクトルを符号化もしくは復号することにより、符号化データ中の動きベクトルの符号量を削減することができる。動きベクトルの符号量を削減することで、動画像符号化における符号化効率が向上する。 By using information on which prediction motion vector is selected from a plurality of motion vector predictor candidates, and limiting the motion vector existence possible area, by encoding or decoding the motion vector using the limitation, It is possible to reduce the code amount of the motion vector in the encoded data. By reducing the code amount of the motion vector, the coding efficiency in moving picture coding is improved.
以下、図面を参照して、本発明の各実施形態について説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
(動画像符号化装置)
図1は本発明の第1の実施形態の動画像符号化装置100の構成を示すブロック図である。動画像符号化装置100は、動きベクトル符号化部111、変換部112、量子化部113、可変長符号化部115、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、動き推定部124、予測モード決定部125、減算部101、加算部102から構成される。また図中の符号103は、フレームメモリ118から抽出された局所復号信号である。(Moving picture encoding device)
FIG. 1 is a block diagram showing a configuration of a moving
動画像符号化装置100では、入力された画像データを複数のブロックに分割し、分割したブロック単位で符号化が行われる。ブロック単位の符号化では、予測モード決定部125の出力として得られた予測信号を用いて、減算部101で入力信号と予測信号との差分である残差信号が算出される。残差信号は変換部112でDCTなどにより変換係数に変換され、変換係数はさらに量子化部113で量子化される。量子化変換係数は一方では、可変長符号化部115に入力されて符号化される。量子化変換係数は他方では、逆量子化部116で逆量子化され、逆変換部117で逆DCT変換などがなされ、復号残差信号が得られる。復号残差信号は加算部102で予測信号と加算され、局所復号信号としてフレームメモリ118に格納される。
In the moving
(予測信号の生成)
予測信号の生成は、以下の手順で行われる。イントラ予測部121は入力信号の予測信号であるイントラ予測信号を生成し、イントラ予測信号と入力信号とから予測の良さを評価する符号化コストを算出する。イントラ予測信号と符号化コスト(イントラ予測コスト)は、予測モード決定部125に入力する。(Prediction signal generation)
The generation of the prediction signal is performed according to the following procedure. The
符号化コストには入力信号と予測信号との差分絶対値和を用いても良いし、差分二乗和を用いても良い。さらに、予測パラメータの符号量を考慮しても良い。 For the coding cost, the sum of absolute differences between the input signal and the prediction signal may be used, or the sum of squared differences may be used. Furthermore, the code amount of the prediction parameter may be taken into consideration.
インター予測部123は、動き推定部124から入力された、参照フレームを特定するためのフレームID、参照フレーム上の抽出位置を符号化対象ブロックからの相対位置として示す動きベクトル(MV)に応じてインター予測信号を生成する。生成されたインター予測信号は、動き推定部124及び予測モード決定部125に入力される。
The
動き推定部124は、あらかじめ定められたフレームIDと、あらかじめ定められたMVの範囲内の予測パラメータに対し、インター予測部123で生成したインター予測信号を用いて、予測の良さを評価する符号化コストを算出する。
The
そして、動き推定部124は、前述の予測パラメータの中で、算出された符号化コストを最小化する予測パラメータとそのときのコスト(インター予測コスト)を予測モード決定部125に入力する。
Then, the
予測モード決定部125では、イントラ予測コストとインター予測コストを比較し、コストの小さい方の予測モードを選択する。選択した予測モードと予測パラメータは可変長符号化部115に入力される。また、選択した予測モードに対応する予測信号は減算部101及び加算部102に入力される。
The prediction
(可変長符号化部115)
可変長符号化部115は、量子化変換係数を符号化するだけでなく、予測モード決定部125から出力される予測モードと予測パラメータを符号化する。予測モードがインター予測の場合には予測パラメータのうちフレームIDが可変長符号化部115で符号化される。MVは動きベクトル符号化部111で符号化に必要な処理がなされ、可変長符号化部115で符号化データとして符号化される。(Variable length encoding unit 115)
The variable
(動きベクトル符号化部111)
図3に示すとおり、動きベクトル符号化部111は、MV格納部1111、PMV候補算出部1112、PMV決定部1113、MVD算出部1114、MVフラグ決定部1115から構成される。図中の符号301はPMV候補およびPMV候補数を示し、302は、PMVを示す。(Motion vector encoding unit 111)
As shown in FIG. 3, the motion
MV格納部1111は、動きベクトル符号化部111に入力されたMVを格納する。PMV候補算出部1112は、MV格納部1111に格納されたMVを参照して予測動きベクトル候補(PMV候補)を算出する。算出されたPMV候補およびPMV候補数は、PMV決定部1113及びMVフラグ決定部1115に入力される。またPMV候補数は、可変長符号化部115の内部に備えるPMVインデックス符号化部1151にも入力される。
The
PMV決定部1113では、MVとPMV候補、PMV候補数を入力とし、PMV候補のうちで、MVとPMV候補とから算出されるコスト関数PMVCOST(MV,PMV)を最小化するPMV候補をPMVとして選択する。選択されたPMVを特定するためのフラグ(PMVインデックス)はPMVインデックス符号化部1151に入力され、PMVインデックス符号化部1151では、PMV候補数をもとにPMVインデックスが符号化される(後述)。選択されたPMVは、MVD算出部1114及びMVフラグ決定部1115に入力される。
The
MVD算出部1114は、入力されたMVとPMVとの差分(MVD)の絶対値(MVD絶対値)を算出し、可変長符号化部115内のMVD絶対値符号化部1152及びMVフラグ決定部1115に入力する。MVD絶対値符号化部1152では、MVD絶対値が符号化される。
The
MVフラグ決定部1115では、入力されたMV、PMV、PMV候補、およびPMV候補数から、MV候補およびMV候補数を算出し、さらに算出したMV候補の中からMVを特定するためのフラグ(MVインデックス)を決定する。MV候補数とMVインデックスは可変長符号化部115内のMVインデックス符号化部1153に入力される。MVインデックス符号化部1153では、MV候補数をもとにMVインデックスが符号化される。
The MV
(PMVインデックス及びMVインデックスの符号化)
PMVインデックス及びMVインデックスは、各々、候補数に応じて符号化が行われる。(Encoding of PMV index and MV index)
The PMV index and the MV index are each encoded according to the number of candidates.
具体的には、候補数が1の場合にはインデックスは符号化しない。候補数が2の場合には、2進数で“0”もしくは“1”を符号化する。候補数が3の場合には、“0”、“10”、“11”のいずれかを符号化する。候補数が4の場合には、“00”、“01”、“10”、“11”のいずれかを符号化する。各候補の選択される割合に偏りがある場合には、候補数が4の場合に、“0”、“10”、“110”、“111”のいずれかを符号化するようにしても良い。2進数の符号化は、前述の値をそのまま符号化データとする固定長符号を用いても良いが、0と1の発生確率を適応的に変更する算術符号を用いればより好適である。 Specifically, the index is not encoded when the number of candidates is 1. When the number of candidates is 2, “0” or “1” is encoded in binary. When the number of candidates is 3, “0”, “10”, or “11” is encoded. When the number of candidates is 4, one of “00”, “01”, “10”, and “11” is encoded. If the selection ratio of each candidate is biased, when the number of candidates is 4, any one of “0”, “10”, “110”, and “111” may be encoded. . For binary encoding, a fixed-length code having the above-described value as encoded data as it is may be used, but it is more preferable to use an arithmetic code that adaptively changes the occurrence probability of 0 and 1.
以下、PMV候補の算出方法、関数PMVCOSTを説明し、本発明のポイントであるMVの存在可能領域について説明する。最後にMVフラグ決定部1115の詳細を説明する。
Hereinafter, the PMV candidate calculation method and the function PMVCOST will be described, and the MV existence area, which is the point of the present invention, will be described. Finally, details of the MV
(PMV候補の算出方法)
図10は、PMV候補の算出方法を説明するための図である。符号化対象ブロックの左、上、右上に隣接するブロックのMVを各々mv_a、mv_b、mv_cと表現する。また、符号化対象ブロックと参照画像上で空間的に同じ位置のブロックのMVをmv_colと表現する。また、空間的に隣接するブロックのMVの中央値をmv_medと表現する。具体的には、mv_a、mv_b、mv_cのX成分、Y成分毎に中央値をとることで算出する。(PMV candidate calculation method)
FIG. 10 is a diagram for explaining a PMV candidate calculation method. The MVs of blocks adjacent to the left, top, and top right of the encoding target block are expressed as mv_a, mv_b, and mv_c, respectively. In addition, the MV of the block at the same spatial position on the encoding target block and the reference image is expressed as mv_col. In addition, the median value of MVs of spatially adjacent blocks is expressed as mv_med. Specifically, calculation is performed by taking the median value for each of the X component and Y component of mv_a, mv_b, and mv_c.
PMV候補としては、mv_medとmv_aとを用いるか、もしくはmv_medとmv_colとを用いることが好適であるが、本発明のPMV候補は上記2通りに限定するものではなく、PMV候補数及びPMV候補として他の値を用いることもできる。例えば、PMV候補算出部1112はmv_med、mv_a、mv_colの3つをPMV候補としても良い。
As the PMV candidates, it is preferable to use mv_med and mv_a, or mv_med and mv_col. However, the PMV candidates of the present invention are not limited to the above two types, and the number of PMV candidates and PMV candidates are as follows. Other values can also be used. For example, the PMV
(関数PMVCOST)
関数PMVCOST(MV、PMV)は、MVとPMVを入力し、MVとPMVとの距離に相当するコストを算出する関数である。PMVを用いてMVを符号化する場合、MVに距離が近いPMVを選択する方がMVの符号量を減らすことができる。関数PMVCOSTはこの距離を算出するものである。(Function PMVCOST)
The function PMVCOST (MV, PMV) is a function that inputs MV and PMV and calculates a cost corresponding to the distance between MV and PMV. When encoding MV using PMV, the code amount of MV can be reduced by selecting PMV whose distance is close to MV. The function PMVCOST calculates this distance.
PMVCOSTは、MVとPMVとの差分絶対値であるMVD絶対値から算出される関数とする。すなわち、任意の関数F、Gを用いて、
PMVCOST=F(|MV_X−PMV_X|)+G(|MV_Y−PMV_Y|)
で表現できる関数とする。ここで||は絶対値を示す記号である。この様な関数としてコストを定義することにより、MVとPMVが得られない場合でも、MVとPMVとの差分絶対値であるMVD絶対値が得られればコストを算出することができる。PMVCOST is a function calculated from an MVD absolute value that is a difference absolute value between MV and PMV. That is, using arbitrary functions F and G,
PMVCOST = F (| MV_X−PMV_X |) + G (| MV_Y−PMV_Y |)
A function that can be expressed as Here, || is a symbol indicating an absolute value. By defining the cost as such a function, even if MV and PMV cannot be obtained, the cost can be calculated if an MVD absolute value that is a difference absolute value between MV and PMV is obtained.
例えば、市街値距離
PMVCOST=|MV_X−PMV_X|+|MV_Y−PMV_Y|
あるいは、ユークリッド距離の2乗
PMVCOST=|MV_X−PMV_X|^2+|MV_Y−PMV_Y|^2
を距離として用いることができる。For example, city value distance PMVCOST = | MV_X−PMV_X | + | MV_Y−PMV_Y |
Alternatively, the square of the Euclidean distance PMVCOST = | MV_X−PMV_X | ^ 2 + | MV_Y−PMV_Y | ^ 2
Can be used as a distance.
また、他の距離として、MVの符号量を考慮したコスト関数が考えられる。より具体的には、
PMVCOST=R(|MV_X−PMV_X|)+R(|MV_Y−PMV_Y|)により算出する。ここでR(X)はXとしてMVの差分絶対値を入力し、その符号量もしくは符号量に相当する量を算出する関数である。As another distance, a cost function considering the MV code amount can be considered. More specifically,
PMVCOST = R (| MV_X−PMV_X |) + R (| MV_Y−PMV_Y |). Here, R (X) is a function for inputting an absolute value of the MV as X and calculating a code amount or an amount corresponding to the code amount.
MVD絶対値(=X)の分布は多くの場合X=0の周りに集中する。この場合、符号量はXが大きくなるにつれてその増加度が小さくなるような関数R(X)となるような符号を用いることが好適である。そのため、R(X)としてLOG(X+1)を用いると良い。また、MVD絶対値Xが0である場合には正負を示すための符号化が不要であるため、MVD絶対値Xが0以外の場合よりも1ビット少なくMVDを符号化できる。この性質を考慮して、R(X)=1(Xが0の場合)、R(X)=X+2(Xが0以外の場合)を用いることも好適である。 The distribution of MVD absolute values (= X) is often concentrated around X = 0. In this case, it is preferable to use a code such that the code amount is a function R (X) that increases as X increases. Therefore, LOG (X + 1) is preferably used as R (X). Further, when the MVD absolute value X is 0, encoding for indicating positive / negative is unnecessary, and therefore, the MVD can be encoded by 1 bit less than when the MVD absolute value X is other than 0. In consideration of this property, it is also preferable to use R (X) = 1 (when X is 0) and R (X) = X + 2 (when X is other than 0).
(MVの存在可能領域)
図11は、PMV候補数が2の場合のMVの存在可能領域を説明する図である。PMV候補としてPMV候補算出部1112でPMV1とPMV2が算出され、PMV決定部1113でPMVとしてPMV1が選択された状態を示す。また、PMVCOSTには市街値距離を用いる。PMV決定部1113でPMV1が選択されたということは、PMVCOSTを距離として、MVとPMV1の距離が、MVとPMV2の距離と等しいか、より小さいことを意味する。すなわち、
PMVCOST(MV、PMV1) <= PMVCOST(MV、PMV2)
が成り立つ。よってMVの存在可能領域は上記領域(図11中の斜線領域)に限定される。(Area where MV can exist)
FIG. 11 is a diagram for explaining the MV existence possible area when the number of PMV candidates is two. The PMV
PMVCOST (MV, PMV1) <= PMVCOST (MV, PMV2)
Holds. Therefore, the area where MV can exist is limited to the above-described area (shaded area in FIG. 11).
PMVCOSTが市街値距離の場合、MVの存在可能領域とそれ以外の領域とを分割する線は、PMV1とPMV2の垂直2等分線L1となる。 When PMVCOST is a city value distance, a line dividing the MV-existing area and the other area is a perpendicular bisector L1 of PMV1 and PMV2.
図12は、PMV候補数が3の場合のMVの存在可能領域を説明する図である。この場合もMVの存在可能領域(図12中の斜線領域)は、下記2つの式
PMVCOST(MV、PMV1) <= PMVCOST(MV、PMV2)
PMVCOST(MV、PMV1) <= PMVCOST(MV、PMV3)
の双方が成り立つ領域に限定される。このようにPMV候補の数がm個(mは1以上の整数)である場合、m−1個の不等式からなる連立方程式の解としてMVの存在可能領域は限定される。FIG. 12 is a diagram for explaining a possible MV existence area when the number of PMV candidates is three. Also in this case, the MV can exist area (shaded area in FIG. 12) is expressed by the following two formulas PMVCOST (MV, PMV1) <= PMVCOST (MV, PMV2)
PMVCOST (MV, PMV1) <= PMVCOST (MV, PMV3)
It is limited to the area where both of the above hold. Thus, when the number of PMV candidates is m (m is an integer equal to or greater than 1), the MV existence region is limited as a solution of simultaneous equations composed of m-1 inequalities.
図13は、PMVCOSTが市街値距離ではない場合を示す図である。図に示すとおり、PMVCOSTが市街値距離ではない場合には、MVの存在可能領域とそれ以外の領域とを分割する線は曲線となる場合もある。また、図示しないが線は滑らかな曲線であるとは限らず、折れ線となることもある。 FIG. 13 is a diagram illustrating a case where PMVCOST is not a city value distance. As shown in the figure, when PMVCOST is not the city value distance, the line dividing the MV-existing region and the other region may be a curve. Although not shown, the line is not necessarily a smooth curve, and may be a broken line.
(MVフラグ決定部1115)
図5は、MVフラグ決定部1115の構成を示すブロック図である。MVフラグ決定部1115は、MV候補算出部5001、MV候補判定部5002、MVインデックス決定部5003から構成される。MVフラグ決定部1115では、PMV、PMVとMVとの差分絶対値(MVD絶対値)の情報が既知である。(MV flag determination unit 1115)
FIG. 5 is a block diagram showing a configuration of the MV
図14は、PMV候補数が2の場合(PMV1とPMV2)におけるMV候補とMVの存在可能領域との関係を示す図である。PMVとMVD絶対値のみの情報では、MV候補としては通常(MVD絶対値のX成分、Y成分がともに0以外の場合)、MV1からMV4の4つのMV候補が挙げられる。従ってPMVとMVD絶対値からMVを特定するためには4つのMV候補の中から1つを特定するためのMVインデックスが必要である。このとき、4通りのMV候補からMVを特定するために必要な符号量は2ビットとなる。 FIG. 14 is a diagram showing the relationship between MV candidates and MV existence possible areas when the number of PMV candidates is 2 (PMV1 and PMV2). In the information of only the PMV and the MVD absolute value, the MV candidates usually include four MV candidates from MV1 to MV4 (when both the X component and the Y component of the MVD absolute value are other than 0). Therefore, in order to specify the MV from the PMV and MVD absolute values, an MV index for specifying one of the four MV candidates is necessary. At this time, the code amount necessary for specifying the MV from the four MV candidates is 2 bits.
今、符号化されるPMVがPMV1の場合に、図11と同様にMVの存在可能領域を限定すると、図14においてはMV4はMVの存在可能領域から外れる。MVの存在可能領域外のMV候補を除外すると、有効なMV候補数は3になる。この場合、MVインデックスの符号化に必要な符号量は2ビット以内に減らすことができる。 If the PMV to be encoded is PMV1 and the MV existence area is limited as in FIG. 11, MV4 is out of the MV existence area in FIG. If the MV candidates outside the MV existable area are excluded, the number of valid MV candidates is 3. In this case, the code amount necessary for encoding the MV index can be reduced to within 2 bits.
以下、PMVとMVD絶対値とから定まるMV候補と、前述のMV候補の中でMVの存在可能領域内にあるMV候補と、を区別するために、前者を仮MV候補、後者をMV候補と呼ぶこととする。 Hereinafter, in order to distinguish between MV candidates determined from PMV and MVD absolute values and MV candidates in the MV existence area in the above-mentioned MV candidates, the former is a temporary MV candidate and the latter is an MV candidate. I will call it.
(MV候補算出部5001)
MV候補算出部5001は、PMVとMVD絶対値を入力とし、仮MV候補および仮MV候補の数を算出する。図7はMV候補算出部5001の動作フローを示すフローチャートである。MVD絶対値とPMVのX成分、Y成分は各々(mvd_x、mvd_y)、(pmv_x、pmv_y)と表現されるものとする。(MV candidate calculation unit 5001)
The MV
S701 mvd_x==0かつmvd_y==0の場合にはS702に進み、そうでない場合にはS703に移行する。 S701 If mvd_x == 0 and mvd_y == 0, the process proceeds to S702, and if not, the process proceeds to S703.
S702 仮MV候補数nを1とし、仮MV候補tMV1を以下により算出する。 S702: The temporary MV candidate number n is set to 1, and the temporary MV candidate tMV1 is calculated as follows.
tMV1=(pmv_x、pmv_y)
S703 mvd_x==0の場合にはS704に進み、そうでない場合にはS705に移行する。tMV1 = (pmv_x, pmv_y)
S703 If mvd_x == 0, the process proceeds to S704; otherwise, the process proceeds to S705.
S704 仮MV候補数nを2とし、仮MV候補tMV1、tMV2を以下により算出する。 S704: The temporary MV candidate number n is set to 2, and temporary MV candidates tMV1 and tMV2 are calculated as follows.
tMV1=(pmv_x、pmv_y+mvd_x)
tMV2=(pmv_x、pmv_y―mvd_x)
S705 mvd_y==0の場合にはS706に進み、そうでない場合にはS707に移行する。tMV1 = (pmv_x, pmv_y + mvd_x)
tMV2 = (pmv_x, pmv_y−mvd_x)
S705 If mvd_y == 0, the process proceeds to S706, and if not, the process proceeds to S707.
S706 仮MV候補数nを2とし、仮MV候補tMV1、tMV2を以下により算出する。 S706: The number of temporary MV candidates n is 2, and temporary MV candidates tMV1 and tMV2 are calculated as follows.
tMV1=(pmv_x+mvd_x、pmv_y)
tMV2=(pmv_x―mvd_x、pmv_y)
S707 仮MV候補数nを4とし、仮MV候補tMV1、tMV2、tMV3、tMV4を以下により算出する。tMV1 = (pmv_x + mvd_x, pmv_y)
tMV2 = (pmv_x−mvd_x, pmv_y)
S707: The number of temporary MV candidates n is 4, and the temporary MV candidates tMV1, tMV2, tMV3, and tMV4 are calculated as follows.
tMV1=(pmv_x+mvd_x、pmv_y+mvd_y)
tMV2=(pmv_x+mvd_x、pmv_y―mvd_y)
tMV3=(pmv_x―mvd_x、pmv_y+mvd_y)
tMV4=(pmv_x―mvd_x、pmv_y―mvd_y)
(MV候補判定部5002)
MV候補判定部5002は、PMV、仮MV候補、仮MV候補数、MVD絶対値を入力とし、仮MV候補がMVの存在可能領域にあるか否かの判定を行う。この判定により、MVの存在可能領域外にある仮MV候補を排除することで得られるMV候補とMV候補数をMVインデックス決定部5003に出力する。tMV1 = (pmv_x + mvd_x, pmv_y + mvd_y)
tMV2 = (pmv_x + mvd_x, pmv_y−mvd_y)
tMV3 = (pmv_x−mvd_x, pmv_y + mvd_y)
tMV4 = (pmv_x−mvd_x, pmv_y−mvd_y)
(MV candidate determination unit 5002)
The MV
図8は、MV候補判定部5002の動作フローを示すフローチャートである。
FIG. 8 is a flowchart showing an operation flow of the MV
S801では、PMV決定部1113において用いたコスト関数PMVCOSTを用いてPMVとMVとの間の距離min_distを算出する。MV候補判定部5002にはMVを入力していないが、既に説明したように関数PMVCOSTはPMVとMVの差分絶対値であるMVD絶対値から算出可能である。
In step S <b> 801, the distance min_dist between PMV and MV is calculated using the cost function PMVCOST used in the
仮MV候補とPMV候補の距離は、仮MV候補がMVの存在可能領域にある場合、常にmin_dist以上になる。逆に、仮MV候補とPMV候補の距離がmin_dist未満になる場合、その仮PMV候補は、MV候補ではないとして排除することが可能である。 The distance between the temporary MV candidate and the PMV candidate is always greater than or equal to min_dist when the temporary MV candidate is in the MV existence possible area. Conversely, if the distance between the temporary MV candidate and the PMV candidate is less than min_dist, the temporary PMV candidate can be excluded as not being an MV candidate.
S802 MV候補インデックスを示す変数nnを1に初期化する。 S802: A variable nn indicating an MV candidate index is initialized to 1.
L801 仮MV候補インデックスを示す変数iをループ変数として、iが1から仮MV候補数nと等しくなるまでのn回だけL802からS806の間をループする。 L801 A variable i indicating a temporary MV candidate index is set as a loop variable, and a loop between L802 and S806 is performed n times until i becomes equal to the number of temporary MV candidates n.
L802 PMV候補インデックスを示す変数jをループ変数として、jが1からPMV候補数mと等しくなるまでのm回だけS803からS804の間をループする。 L802 A variable j indicating a PMV candidate index is set as a loop variable, and a loop between S803 and S804 is performed m times until j is equal to the number of PMV candidates m.
S803 仮MV候補インデックスiで示される仮MV候補tMViと、PMV候補インデックスjで示されるPMV候補PMVjとの間の距離dist_ijを、PMV決定部1113で用いたコスト関数PMVCOSTを用いて算出する。
S803: The distance dist_ij between the temporary MV candidate tMVi indicated by the temporary MV candidate index i and the PMV candidate PMVj indicated by the PMV candidate index j is calculated using the cost function PMVCOST used by the
S804 dist_ijがmin_dist未満である場合、PMVインデックスを示す変数jのループ(L802のループ)を抜ける。そうではない場合にはL802のループを継続する。なお、dist_ijがmin_dist未満であるということは、仮MV候補tMViがMVの存在可能領域外にあることを意味する。 S804: When dist_ij is less than min_dist, exit the loop of variable j indicating the PMV index (L802 loop). If not, the L802 loop is continued. Note that dist_ij is less than min_dist means that the provisional MV candidate tMVi is outside the MV existence region.
S805 仮MV候補tMViは、MVの存在可能領域にあると判断されたため、MV候補fMVに追加する。具体的には、fMVnnにtMViを代入する。 S805 Since it is determined that the temporary MV candidate tMVi is in the MV existence possible area, it is added to the MV candidate fMV. Specifically, tMVi is substituted for fMVnn.
S806 MV候補インデックスを示す変数nnを1だけインクリメントする。
以上の動作フローにより、MV候補数nnとMV候補fMVを得る。S806: The variable nn indicating the MV candidate index is incremented by 1.
The number of MV candidates nn and the MV candidate fMV are obtained by the above operation flow.
なお、MV候補算出部5001とMV候補判定部5002を一体とすることにより、全ての仮MV候補を算出することなく、MV候補を算出することも可能である。この場合、仮MV候補の1つ1つを算出する度にL802のループによる判定を行う。
Note that, by integrating the MV
(MVインデックス決定部5003)
MVインデックス決定部5003は、入力されたMV(符号化対象ブロックのMV)とMV候補、MV候補数から、MVがMV候補のうちのいずれであるかを判定し、それを示すMVインデックスを決定する。(MV index determination unit 5003)
The MV
図9はMVインデックス決定部5003の動作フローを示すフローチャートである。
FIG. 9 is a flowchart showing an operation flow of the MV
L901 MV候補のインデックスを示すループ変数iについて1からMV候補数nnまで、S901をループする。 L901 S901 is looped from 1 to the number of MV candidates nn for the loop variable i indicating the index of the MV candidate.
S901 MV候補fMViがMVと一致するかを判定する。一致する場合にはS902に進む。一致しない場合はループの終了条件までループを継続する。 S901: It is determined whether the MV candidate fMVi matches MV. If they match, the process proceeds to S902. If they do not match, the loop continues until the loop end condition.
S902 MVインデックスiiにiを代入する。 S902 Assign i to the MV index ii.
以上の動作フローにより、MVインデックスiiを得る。 The MV index ii is obtained by the above operation flow.
図15は、本発明のMVの符号化データの構成を示す図である。図15に示すように、MVはPMVを示すPMVインデックス、PMVとMVとの差分の絶対値(MVD絶対値)、及びMVインデックスに分けて符号化される。なお、MVD絶対値はX成分、Y成分の順に符号化される。なお、PMV候補数が1の場合にはPMVインデックスは符号化されず、MV候補数が1の場合にはMVインデックスは符号化されない。 FIG. 15 is a diagram showing a structure of MV encoded data according to the present invention. As shown in FIG. 15, the MV is encoded by being divided into a PMV index indicating PMV, an absolute value of a difference between PMV and MV (MVD absolute value), and an MV index. The MVD absolute value is encoded in the order of the X component and the Y component. When the number of PMV candidates is 1, the PMV index is not encoded. When the number of MV candidates is 1, the MV index is not encoded.
以上、説明した動画像符号化装置100では、MVの予測値として複数のPMV候補を算出し、MVの符号化に適したPMVを選択し符号化する動きベクトル符号化方法において、PMV候補とPMVを用いてMVの存在可能領域を限定することでMVを効率的に符号化できる。
As described above, in the motion
より具体的には、MVとPMVの差分絶対値(MVD絶対値)を符号化した上で、PMVとMVD絶対値から定まる仮MV候補から、MVの存在可能領域外にあるものを排除することでMV候補を限定し、限定したMV候補からMVを一意に特定するMVインデックスを符号化する。 More specifically, after encoding the difference absolute value (MVD absolute value) between MV and PMV, the temporary MV candidates determined from the PMV and MVD absolute values are excluded from the MV existing area. The MV candidates are limited by and an MV index that uniquely identifies the MV from the limited MV candidates is encoded.
MVの存在可能領域を限定することにより、MV候補からMVを特定するためのMVインデックスの符号量を削減することができる。 By limiting the MV existence area, it is possible to reduce the code amount of the MV index for identifying the MV from the MV candidates.
(復号装置)
図2は本発明の第2の実施形態の動画像復号装置200の構成を示すブロック図である。動画像復号装置200は、動きベクトル復号部211、可変長符号化復号部201、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、予測モード選択部225、加算部102から構成される。なお、図中の符号203は、予測パラメータのうちのフレームIDを意味する。(Decryption device)
FIG. 2 is a block diagram showing the configuration of the moving picture decoding apparatus 200 according to the second embodiment of the present invention. The moving picture decoding apparatus 200 includes a motion
動画像復号装置200も、動画像符号化装置100同様、入力された画像データを複数のブロックに分割し、分割したブロック単位で復号が行われる。ブロック単位の復号では、可変長符号化復号部201で、予測モード、量子化変換係数が復号される。
Similar to the moving
予測モードは、当該ブロックがイントラ予測であるかインター予測であるかを示すモードである。予測モードがインター予測の場合、予測パラメータであるフレームID及びMVを復号する。フレームIDは可変長符号化復号部201で復号される。MVは可変長符号化復号部201、および動きベクトル復号部211で復号処理がなされる。
The prediction mode is a mode indicating whether the block is intra prediction or inter prediction. When the prediction mode is inter prediction, the frame ID and MV which are prediction parameters are decoded. The frame ID is decoded by the variable length coding /
イントラ予測部121およびインター予測部123は、フレームメモリ118に格納された復号済みの画像(再生画像)から、復号された予測パラメータを用いて、イントラ予測信号およびインター予測信号を生成する。生成された予測信号は予測モード選択部225に入力される。予測モード選択部225は、予測モードに対応する予測信号を選択し、加算部102に出力する。
The
復号された量子化変換係数は、逆量子化部116で逆量子化され、逆変換部117で逆DCTなどの変換がなされて復号残差信号が加算部102に出力される。加算部102では、予測信号と復号残差信号が加算され局所復号信号が生成される。生成された局所復号信号はフレームメモリ118に出力される。フレームメモリ118に出力された再生画像は、イントラ予測部121およびインター予測部123で参照画像として用いられるとともに動画像復号装置200外に出力される。
The decoded quantized transform coefficient is inversely quantized by the
図4は、動きベクトル復号部211の構成を示すブロック図である。動きベクトル復号部211は、MV格納部1111、PMV候補算出部1112、PMV選択部2113、MV選択部2115から構成される。
FIG. 4 is a block diagram showing a configuration of the motion
MV格納部1111は、動きベクトル復号部211で復号したMVを格納する。PMV候補算出部1112はPMV候補を算出する。算出されたPMV候補およびPMV候補数はPMV選択部2113およびMV選択部2115に入力される。PMV候補数は可変長符号化復号部201内のPMVインデックス復号部2011に入力される。PMVインデックス復号部2011は、PMV候補数を用いてPMVインデックスを復号し、PMV選択部2113に入力する。PMV選択部2113は、PMV候補からPMVインデックスで示される候補を選択し、PMVとしてMV選択部2115に入力する。
The
また、可変長符号化復号部201は、PMVインデックスに続き、内部のMVD絶対値復号部2012により、MVD絶対値を復号し、MV選択部2115に入力する。
Further, the variable length coding /
図6は、MV選択部2115の構成を示すブロック図である。MV選択部2115は、MV候補算出部5001、MV候補判定部5002、MV抽出部6004から構成される。MV候補算出部5001、MV候補判定部5002は、実施形態1で説明したため説明は省略するが、これら手段により、PMVとMVD絶対値から算出される仮MV候補のうち、PMVとPMV候補を用いて判定されるMVの存在可能領域にあるもの(=MV候補)が算出される。MV抽出部6004は、MV候補からMVインデックスで示される候補を選択することでMVを復号する。
FIG. 6 is a block diagram illustrating a configuration of the
以上、説明した動画像復号装置200では、MVの予測値として複数のPMV候補を算出し、MVの符号化に適したPMVを選択し復号に用いる動きベクトル復号方法において、PMV候補とPMVを用いてMVの存在可能領域を限定することで効率的に符号化されたMVを復号できる。 As described above, the moving picture decoding apparatus 200 calculates a plurality of PMV candidates as MV prediction values, selects a PMV suitable for MV encoding, and uses the PMV candidate and PMV in the motion vector decoding method used for decoding. Thus, the encoded MV can be efficiently decoded by limiting the MV existence area.
より具体的には、MVとPMVとの差分絶対値(MVD絶対値)を復号した上で、PMVとMVD絶対値とから定まる仮MV候補から、MVの存在可能領域外にあるものを排除することでMV候補を限定し、限定したMV候補からMVを特定するMVインデックスを復号することでMVを復号する。 More specifically, after the absolute difference value (MVD absolute value) between MV and PMV is decoded, the temporary MV candidates determined from the PMV and the MVD absolute value are excluded from the MV existence area. Thus, the MV candidates are limited, and the MV is decoded by decoding the MV index that identifies the MV from the limited MV candidates.
MVの存在可能領域を限定することにより、MV候補からMVを特定するために必要なMVインデックスの符号量を削減した符号化データからMVを復号できる。 By limiting the possible MV areas, it is possible to decode MVs from encoded data in which the code amount of the MV index necessary for specifying MVs from MV candidates is reduced.
(動画像符号化装置100’)
次に、本発明の第3の実施形態の動画像符号化装置100’について図17〜図19、図23を参照しつつ、以下に説明する。図23は、MVの符号化データの構成を示す図である。図23に示すように、MVの符号化データは「MVD」の部分と「MVD以外」の部分から構成されている。(Moving
Next, a moving
本実施形態の動画像符号化装置100’は、MV候補の出現確率を考慮して算術符号化することにより、MV候補の存在確率が高いものほどそのMV候補を特定するためのフラグであるMVインデックスの符号化後の符号長が短くなるという傾向を強め、出現確率を考慮しない場合よりMVインデックスの符号量を削減するものである。
The moving
すなわち、本実施形態の動画像符号化装置100’は、第1の実施形態の動画像符号化装置100に比べて、図23の「MVD以外」の部分の符号量をさらに削減することにより、MV符号化の符号量をさらに削減することができる。そのために、本実施形態に係る動画像符号化装置100’は、MVの存在確率が高いと推定される順序にMV候補を並び替える動作を行う。
That is, the moving
図17は本発明の第3の実施形態の動画像符号化装置100’の構成を示すブロック図である。動画像符号化装置100’は、第1の実施形態の動画像符号化装置100と同様に、変換部112、量子化部113、可変長符号化部115、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、動き推定部124、予測モード決定部125、減算部101、加算部102を備えているが、動きベクトル符号化部111’の構成が第1の実施形態の動きベクトル符号化部111と異なっている。動きベクトル符号化部111’を除く他の部材は、第1の実施形態と同様の動作を行うので、これらの部材についての説明は省略し、動きベクトル符号化部111’について図18、図19を参照して説明していくことにする。
FIG. 17 is a block diagram showing a configuration of a moving
図18に示すとおり、動きベクトル符号化部111’は、動きベクトル符号化部111同様に、MV格納部1111、PMV候補算出部1112、PMV決定部1113、MVD算出部1114を備えているが、MVフラグ決定部1115’が第1の実施形態のMVフラグ決定部1115と異なっている。
As shown in FIG. 18, the motion
図19の(a)に示すように、MVフラグ決定部1115’には、MV候補算出部5001とMV候補判定部5002との間にMV候補ソート部5004が設けられている。MV候補ソート部5004は、図19の(b)に示すように、MV候補コスト算出部5004aとソート部5004bと、を備えている。
As shown in (a) of FIG. 19, the MV
なお、MV候補ソート部5004は、MV候補判定部5002の後に設ける構成としても良い。
Note that the MV
MV候補ソート部5004では、MV候補算出部5001から、仮MV候補および仮MV候補の数を入力値として受け付ける。MV候補ソート部5004のMV候補コスト算出部5004aは、各仮MV候補について、その仮MV候補の座標値を入力としてMVCOSTと呼ぶ関数を適用することにより、その仮MV候補のコストを算出する。MVCOSTは、MV候補の出現確率が高いと推定されるほど、より大きな値(もしくはより小さな値)を与える関数であり様々な関数を適用することが可能である。具体的には、MV候補の座標値と各PMV候補(もしくはPMV)の座標値を入力として、仮MV候補とPMV候補との距離が大きくなるほどコストの値が大きくなるものが適当である。なお、そのような関数の具体例について後述することにする。
The MV
そして、ソート部5004bはコストの小さい順に仮MV候補を並び変える。あるいは、ソート部5004bはコストの大きい順に仮MV候補を並び変えてもよい。
The
MV候補判定部5002は、第1の実施形態と同様の方法で仮MV候補の中からMV候補を決定し、MV候補およびMV候補の数をMVインデックス決定部5003に出力する。
The MV
MVインデックス決定部5003は、MV候補およびMV候補の数を受け付け、各MV候補に割り当てるMVインデックスの2値データの値を決定する。ここで、各MVインデックスに割り当てる2値データの値をどのように決定するかについて、図24を参照しつつ以下に説明する。
The MV
図24の(a)は、PMV候補と選択されやすいMV候補との関係を示した模式図である。図24において、PMV0は、PMV決定部1113により選択されたPMVであることを示している。また、MV1〜MV4は、MV候補判定部5002から出力されたMV候補を示している。
FIG. 24A is a schematic diagram showing a relationship between a PMV candidate and an MV candidate that can be easily selected. In FIG. 24, PMV0 indicates that the PMV is selected by the
一般に、MV候補のうち、選択されたPMV候補以外のPMV候補との距離が小さいものほど、MVに決定される傾向がある。MVインデックス決定部5003は、この傾向を利用して、MVインデックスの2値データの値を決定する。
In general, among MV candidates, the smaller the distance from a PMV candidate other than the selected PMV candidate, the more likely that the MV is determined. The MV
すなわち、後述するように、算術符号化の際は、「0」に高い確率が割り当てられ、「1」に低い確率が割り当てられることとなるが、MVインデックス決定部5003は、MV候補ソート部5004でソートされた順(コストの小さい順)に、MV候補に「00」「01」「10」「11」を割り当てていく。この結果、図24の(b)に示すように、MV1に「00」、MV2に「01」、MV3に「10」、MV4に「11」が割り当てられることになる。
That is, as will be described later, when arithmetic coding is performed, a high probability is assigned to “0” and a low probability is assigned to “1”, but the MV
そして、MVインデックス決定部5003は、決定されたMVインデックスをMVインデックス符号化部1153に出力する。そして、可変長符号化部115は、「0」および「1」に割り当てられた確率に基づいて、各MVインデックスを算術符号化する。
Then, the MV
従って、MVインデックスの符号語は、MV1の符号語の符号長が短くなり、MV4の符号語の符号長が長くなる傾向が強まる。結果として、実施形態1の場合より、MVインデックスの符号語の平均符号長が短くなり、符号量が少なくなることがわかる。なお、MVインデックス符号化部1153は、算術符号化するときに「0」「1」に割り当てる確率を適応的に変更するようにしてもよい。
Therefore, the code word of the MV index has a tendency that the code length of the code word of MV1 becomes short and the code length of the code word of MV4 becomes long. As a result, it can be seen that the average code length of the code word of the MV index becomes shorter and the code amount becomes smaller than in the case of the first embodiment. Note that the MV
また、可変長符号化部115は、固定長符号化を用いて、MV候補ソート部5004でソートされた順(コストの小さい順)に短い符号を割り当てても良い。例えば、「0」「10」「110」「111」を割り当てることで可能である。
In addition, the variable
このように、出現確率が高いMV候補に応じてMVインデックスを割り当てることにより2値化を行った際に、算術符号化される場合の「0」、「1」の確率に偏りを持たせる方法は、MV候補判定部5002を用いない場合にも適用できる。
As described above, when binarization is performed by assigning an MV index according to an MV candidate having a high appearance probability, a method of biasing the probability of “0” and “1” when arithmetic coding is performed. Is applicable even when the MV
なお、MV候補判定部5002を用いる場合には、出現確率が高いMV候補に応じて符号化を行うことはさらに効率的になる。例えば、MV候補判定部5002によりMV候補の数が3となった場合、「0」、「10」、「11」のように、出現確率の高いMV候補に短い符号(もしくは算術符号の場合の2進数列)を割り当てることで符号量を低減することができる。
Note that when the MV
また、MV候補の数が3である場合のような、MV候補の数が2の整数乗でない場合には一般にMV候補に対応する符号もしくは2進数列は不等長になる。この場合、MV候補の出現確率に応じてMVインデックスを割り当てる当該処理の有効性が大きい。この特性を考慮して、最も効果の高い場合のみこの処理を適用する、すなわち、MV候補の数が特定の条件に合致した場合(例えば2の整数乗ではない場合)のみ、MV候補のソートを行うことも可能である。この処理には、有効と判定されたMV候補の数を必要なので、MV候補ソート部5004はMV候補判定部5002の後に設ける。
In addition, when the number of MV candidates is not an integer power of 2, as in the case where the number of MV candidates is 3, generally the codes or binary number sequences corresponding to the MV candidates are unequal. In this case, the effectiveness of the process of assigning the MV index according to the appearance probability of the MV candidate is large. In consideration of this characteristic, this process is applied only when it is most effective. That is, only when the number of MV candidates matches a specific condition (for example, when it is not an integer power of 2), sorting of MV candidates is performed. It is also possible to do this. Since this process requires the number of MV candidates determined to be valid, the MV
なお、出現確率が高いMV候補に応じてMVインデックスの値を割り当てる処理は、MV候補の文字通りのソートを用いる必要はない。高々4個程度のMV候補数であれば、複数の条件分岐を組み合わせることで容易に処理が可能である。 The process of assigning the value of the MV index according to the MV candidate having a high appearance probability does not need to use the MV candidate literal sort. If the number of MV candidates is at most about 4, processing can be easily performed by combining a plurality of conditional branches.
例えば、MV候補コストが、コストA、コストB、コストC、コストDがコストA<=コストB<=コストC<=コストDの順にあるかは、
IF(コストA<=コストB かつ コストB<=コストC かつコストC<=コストD)
という条件分岐文で判定できる。この条件分に該当した場合において、対応するMVインデックス、すなわち、コストA〜コストDのMV候補に、「00」「01」「10」「11」で割り当てる。他の順序であるかどうかも同様の条件分岐文を並べることで容易に実施できる。For example, whether the MV candidate cost is in the order of cost A, cost B, cost C, cost D, cost A <= cost B <= cost C <= cost D,
IF (cost A <= cost B and cost B <= cost C and cost C <= cost D)
Can be determined by the conditional branch statement. When this condition is met, “00”, “01”, “10”, and “11” are assigned to the corresponding MV indexes, that is, MV candidates of cost A to cost D. Whether the order is other can be easily implemented by arranging similar conditional branch statements.
この場合、ソート部5004bは不要になり、MVインデックス決定部5003において上記のようなMV候補コストを用いた条件分岐によるMVインデックス決定を行うことになる。
In this case, the
また、MV候補コストの順に割り振るのではなく、最小の(もしくは最大の)N個のMV候補コストについてMV候補コストの順に割り振るのであればさらに処理が容易になる。例えば、MV候補コスト最小(もしくは最大)のMV候補を算出し特定のMVインデックスを割り振るような処理は、最小値のMV候補を特定する処理だけで実現できることから極めて簡易な構成で実現できる。 Further, if the minimum (or maximum) N MV candidate costs are not allocated in the order of the MV candidate costs but are allocated in the order of the MV candidate costs, the processing becomes easier. For example, the process of calculating the MV candidate with the minimum (or maximum) MV candidate cost and allocating a specific MV index can be realized with only the process of specifying the MV candidate with the minimum value, and thus can be realized with a very simple configuration.
本発明は、MV候補の完全な順序付けを行わないような、このような簡略化された構成も含むものとする。 The present invention is also intended to include such a simplified arrangement that does not provide complete ordering of MV candidates.
(MVCOST関数の具体例)
MVCOST関数の具体例としては、以下の関数1〜関数4が考えられる。
関数1:MV候補コスト=Σ(|mv_x−pmvi_x|+|mv_y−pmvi_y|)(i:1〜N、pmviは選択されなかったPMV候補)
関数1´:MV候補コスト=Σ((mv_x−pmvi_x)^2+(mv_y−pmvi_y)^2)(i:1〜N、pmviは選択されなかったPMV候補、^は2乗を示す)
関数2:MV候補コスト=|mv_x|+|mv_y|
関数3:MV候補コスト=|mv_x−pmv0_x|+|mv_y−pmv0_y|(pmv0は選択されたPMV候補)
関数4:MV候補コスト=MIN(|mv_x−pmvi_x|+|mv_y−pmvi_y|)(i:1〜N、pmviは選択されなかったPMV候補)
使用するMVCOST関数は、関数1であることが望ましいが、関数1´や関数2〜関数4を用いてもよい。また、フレームタイプに応じて、MVCOST関数として使用する関数を変更してもよい。例えば、PフレームではMVCOST関数として関数1を用い、BフレームではMVCOST関数として関数2を用いるようにしてもよい。なお、後述のように、MVインデックス符号化部1153は、MV候補コスト算出部5004aが使用したMVCOST関数を示す情報を符号化して、符号化データのヘッダに記録しておいても良い。(Specific example of MVCOST function)
As specific examples of the MVCOST function, the following
Function 1: MV candidate cost = Σ (| mv_x−pmv i —x | + | mv_y−pmv i —y |) (i: 1 to N, pmv i is a PMV candidate not selected)
Function 2: MV candidate cost = | mv_x | + | mv_y |
Function 3: MV candidate cost = | mv_x−pmv 0 _x | + | mv_y−pmv 0 _y | (where pmv 0 is the selected PMV candidate)
Function 4: MV candidate cost = MIN (| mv_x−pmv i —x | + | mv_y−pmv i —y |) (i: 1 to N, PMv i is not selected PMV candidate)
The MVCOST function to be used is preferably
なお、MV候補コスト算出に用いる(MVCOST関数に入力する)PMVは、PMV候補算出部1112で算出されたPMV候補、すなわち、PMVインデックスで選択対象となるPMV候補に限る必要はない(そのため「MV候補コスト算出に用いるPMV候補」ではなく単に「MV候補コスト算出に用いるPMV」と記載している)。例えば、PMV候補算出部1112において、mv_medとmv_colをPMV候補として算出する場合において、MV候補コスト算出に用いるPMVをmv_medとmv_col、mv_aとしても良い。
Note that the PMV used for calculating the MV candidate cost (input to the MVCOST function) need not be limited to the PMV candidate calculated by the PMV
これは、PMVインデックスの符号量を小さくするためには、PMV候補の数を小さい数(2個が適当)に制限する必要があるが、MV候補の出現確率を推定するためにはそのような制限がないためである。 In order to reduce the code amount of the PMV index, it is necessary to limit the number of PMV candidates to a small number (2 is appropriate), but in order to estimate the appearance probability of the MV candidate, This is because there is no limit.
なお、PMVインデックスで選択対象となるPMV候補とは全く異なるPMV、例えば、mv_aをMV候補コスト算出に用いるPMV候補としても良い。このようにPMVを考えると、関数2はPMVとして{0、0}を用いたのと同一となる。
Note that a PMV that is completely different from the PMV candidate to be selected in the PMV index, for example, mv_a, may be used as a PMV candidate used for MV candidate cost calculation. Considering PMV in this way,
なお、MV候補コスト算出用のPMVは、上述のようにPMV候補算出部1112のPMV候補をそのまま用いる構成にしても良いし、PMV候補算出部1112においてPMV候補とは別にMV候補コスト算出用のPMVを算出する構成としても良い。また、動きベクトル符号化部111’内に、PMV候補算出部1112とは別のPMVを算出する手段を設ける構成にしても良い。
The PMV for calculating the MV candidate cost may be configured to use the PMV candidate of the PMV
この場合、複数のPMV候補を算出しMVの符号化に適したPMVを選択し、MVとPMVの差分を符号化/復号する符号化装置/復号装置ではなく、単一のPMVを算出しMVとPMVの差分を符号化/復号する符号化装置/復号装置にも適用可能である。この場合、PMV候補算出部1112、PMV決定部1113、PMVインデックス符号化部1151、MV候補判定部5002を備えない符号化装置の構成でも実現できる。
In this case, a plurality of PMV candidates are calculated, a PMV suitable for MV encoding is selected, and a single PMV is calculated instead of an encoding / decoding apparatus that encodes / decodes the difference between MV and PMV. The present invention can also be applied to an encoding device / decoding device that encodes / decodes a difference between a signal and a PMV. In this case, the present invention can also be realized by a configuration of an encoding device that does not include the PMV
(PMV決定部1113が使用するPMVCOST関数について)
前述したように、PMV決定部1113では、MVとPMV候補、PMV候補数を入力とし、PMV候補のうちでMVとPMVとから算出されるコスト関数PMVCOST(MV,PMV)を最小化する候補をPMVとして選択するが、PMV決定部1113は、動きベクトル符号化部111の負荷の状況に応じて、PMVCOST関数として使用する関数を動的に変更するようにしてもよい。(PMVCOST function used by the PMV determination unit 1113)
As described above, the
すなわち、前述したようにPMVCOST関数としては様々な関数を適用可能であるが、その中には、PMVCOST=0のように符号化効率も演算量も変わらないもの、PMVCOST=|MV_X−PMV_X|+|MV_Y−PMV_Y|のように符号化効率はあまり改善しないが演算量も少ないもの、PMVCOST=R(|MV_X−PMV_X|)+R(|MV_Y−PMV_Y|)のように、符号化効率が大きく改善するが演算量も大きいもの、など様々なものがある。そこで、PMV決定部1113は、動きベクトル符号化部111の負荷の状況に応じて、負荷が軽い場合には、符号化効率の高い関数を用い、負荷が一定以上である場合には、演算量の小さい関数を用いて、PMVを選択するようにしてもよい。この場合、MVインデックス符号化部1151は、PMV決定部1113が使用したPMVCOST関数を示す情報(フラグ)を符号化して、符号化データのヘッダに記録しておく。なお、記録するヘッダは、シーケンスヘッダ、ピクチャヘッダ、スライスヘッダ、MBヘッダなどであればよい。また、シーケンスやピクチャ毎にヘッダを符号化することなく、シーケンスパラメータ、ピクチャパラメータというデータを先に符号化し、各シーケンス、ピクチャではそのデータをインデックスで指定、参照する方式もあるが、当該発明では、このようなデータもヘッダとして扱うため、これらデータで関数を示すフラグを符号化すれば良い。
That is, as described above, various functions can be applied as the PMVCOST function. Among these functions, the PMVCOST = | MV_X−PMV_X | + | MV_Y-PMV_Y |, which does not improve the coding efficiency so much, but has a small amount of calculation. However, there are various things such as a large amount of calculation. Therefore, the
このように、動きベクトル符号化部111の負荷の状況に応じて、PMVを選択可能にすることにより、符号化効率と演算量とのバランスをとることができる。また、符号化装置の構成を簡略化する場合や符号化の負荷が高い場合には、PMVCOST=0を選択することにより、PMVによる制約を利用しない符号化も可能である、すなわち、動きベクトル符号化部111でPMVの制約を考慮することなく自由にPMVを選択することができる。
Thus, by making PMV selectable according to the load state of the motion
PMVCOST関数を選択する場合には、PMV決定部1113で用いたPMVCOST関数と同じ関数をMV候補判定部5002でも用いることが必要である。なお、符号化装置を簡略化するため、符号化装置では常にPMVCOST=0を選択する場合には、仮MV候補がそのままMV候補となるため、MV候補の判定を行うMV候補判定部5002を備えない構成も可能である。
When selecting the PMVCOST function, the MV
(MV候補ソート部5004が使用するMVCOST関数について)
MV候補ソート部5004で用いるMVCOST関数についても、PMVCOST関数と同様、MVCOST関数を示す情報(フラグ)を符号化して、符号化データのヘッダに記録しておくことにより、符号化効率と演算量とのバランスをとることができる。符号化装置の構成の簡略化及び、符号化装置の高速化の要求が強い場合には、MVCOST=0とすればソート自体が不要になり演算量を削減できる。(About the MVCOST function used by the MV candidate sort unit 5004)
Similarly to the PMVCOST function, the MVCOST function used in the MV
なお、PMVCOST関数やMVCOST関数をフレームタイプによって変更する場合には、フレームタイプ毎のMVCOST関数を示すフラグを符号化することが適当である。 When the PMVCOST function or the MVCOST function is changed depending on the frame type, it is appropriate to encode a flag indicating the MVCOST function for each frame type.
(復号装置200’)
次に、本発明の第4の実施形態の復号装置200’について図20〜図22を参照しつつ、以下に説明する。(Decoding device 200 ')
Next, a decoding device 200 ′ according to the fourth embodiment of the present invention will be described below with reference to FIGS.
図20は本発明の第4の実施形態の復号装置200’の構成を示すブロック図である。復号装置200’は、第2の実施形態の復号装置200と同様に、可変長符号化復号部201、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、予測モード選択部225、加算部102を備えているが、動きベクトル復号部211’が第2の実施形態の動きベクトル復号部211と異なっている。動きベクトル復号部211’を除く他の部材は、第2の実施形態と同様の動作を行うので、これらの部材についての説明は省略し、動きベクトル復号部211’について図21、図22を参照して説明していくことにする。
FIG. 20 is a block diagram showing a configuration of a decoding apparatus 200 'according to the fourth embodiment of the present invention. Similar to the decoding device 200 of the second embodiment, the decoding device 200 ′ includes a variable-length coding /
図21に示すとおり、動きベクトル復号部211’は、動きベクトル復号部211と同様に、MV格納部1111、PMV候補算出部1112、PMV選択部2113を備えているが、MV選択部2115’が第2の実施形態のMV選択部2115と異なっている。
As shown in FIG. 21, the motion
図22に示すように、MV選択部2115’には、MV候補算出部5001とMV候補判定部5002との間にMV候補ソート部5004が設けられている。
As shown in FIG. 22, the MV
MV候補ソート部5004では、MV候補算出部5001から、仮MV候補および仮MV候補の数を入力値として受け付ける。MV候補ソート部5004は、MVフラグ決定部1115’のMV候補ソート部5004と同様のソートを行う。なお、MVフラグ決定部1115’のMV候補ソート部5004が動的にMVCOST関数を変更した場合には、MV候補ソート部5004は、符号化データのヘッダに記録された、MVCOST関数を示す情報を復号して参照することにより、ソートを行う。
The MV
なお、PMV決定部1113及びMV候補判定部5002が動的にPMVCOST関数を変更した場合には、符号化データのヘッダに記録された、PMVCOST関数を示す情報を復号してMV候補判定部5002における判定を行う。
In addition, when the
そして、MV候補判定部5002は、第2の実施形態と同様の方法で仮MV候補の中からMV候補を決定し、MV候補およびMV候補の数をMV抽出部6004に出力する。
Then, the MV
最後に、MV抽出部6004は、MV候補およびMV候補の数を受け付け、MV候補からMVインデックスで示される候補を選択することでMVを復号する。
Finally, the
なお、単一のPMVを算出しMVとPMVの差分を復号する復号装置においては、PMV候補算出部1112、PMV選択部2113、PMVインデックス復号部2011、MV候補判定部5002を備えない復号装置の構成でも実現できる。
Note that in a decoding apparatus that calculates a single PMV and decodes the difference between MV and PMV, a decoding apparatus that does not include the PMV
(動画像符号化装置100”)
最後に、本発明の第5の実施形態の動画像符号化装置100”について図25〜図27を参照しつつ、以下に説明する。(Moving
Finally, a moving
本実施形態の動画像符号化装置100”は、PMVに応じて、MVDの算術符号化に用いる確率(コンテキスト)を適応的に切り替えることにより、MVD絶対値の符号化効率を向上させるものである。
The moving
この切り替えは、MVD絶対値の大きさに、MVDの算出に用いたPMVの種類に応じた傾向があるという観察結果に基づくものである。より具体的には、PMV候補がmv_medとmv_colである場合において、mv_colがPMVの場合には、mv_medがPMVの場合よりもMVD絶対値が小さくなる傾向がある。なお、以下の構成においては、後述する初期値以外は、いずれのPMVがよりMVD絶対値が小さくなる傾向があるかを明示的な処理として組み込まなくても、算術符号において適応的に「0」、「1」の出現確率として学習されるため効果を実現できる。 This switching is based on the observation result that the magnitude of the MVD absolute value has a tendency corresponding to the type of PMV used to calculate the MVD. More specifically, when the PMV candidates are mv_med and mv_col, when mv_col is PMV, the MVD absolute value tends to be smaller than when mv_med is PMV. In the following configuration, except for the initial value to be described later, “0” is adaptively applied to the arithmetic code even if it is not included as an explicit process which PMV tends to have a smaller MVD absolute value. , The effect can be realized because it is learned as the appearance probability of “1”.
図25は本発明の第5の実施形態の動画像符号化装置100”の構成を示すブロック図である。動画像符号化装置100”は、第1の実施形態の動画像符号化装置100と同様に、動きベクトル符号化部111、変換部112、量子化部113、逆量子化部116、逆変換部117、フレームメモリ118、イントラ予測部121、インター予測部123、動き推定部124、予測モード決定部125、減算部101、加算部102を備えているが、可変長符号化部115’の構成が第1の実施形態の可変長符号化部115と異なっている。可変長符号化部115’を除く他の部材は、第1の実施形態と同様の動作を行うので、これらの部材についての説明は省略し、可変長符号化部115’について図26、図27を参照して説明していくことにする。
FIG. 25 is a block diagram showing a configuration of a
図26に示すとおり、可変長符号化部115’は、PMVインデックス符号化部1151、MVD絶対値符号化部1152’、MVインデックス符号化部1153を備えている。PMVインデックス符号化部1151、MVインデックス符号化部1153については、第1の実施形態と同様の動作を行うので、MVD絶対値符号化部1152’について説明する。
As shown in FIG. 26, the variable length encoding unit 115 'includes a PMV
図27に示すように、MVD絶対値符号化部1152’は、コンテキスト決定部1152a、確率保持部1152b、確率更新部1152c、2進化部1152d、算術符号化部1152eを備えている。
As shown in FIG. 27, the MVD absolute value encoding unit 1152 'includes a context determination unit 1152a, a
2進化部1152dは、MVD絶対値を「0」「1」の2進数列にして算術符号化部1152eに出力する。2進化部1152dは、MVD絶対値「n」を、連続するn個の「1」の後ろに1個の「0」が付加された2進数列に変換する。例えば、nが0の場合、2進数列は「0」となり、nが2の場合、2進数列は「110」になる。
The
一方、コンテキスト決定部1152aは、PMV決定部1113から入力されたPMVインデックスの値を用いて定めたコンテキストインデックスを確率保持部1152bに出力する。
On the other hand, the context determination unit 1152a outputs the context index determined using the PMV index value input from the
コンテキストインデックスは、X成分かY成分かを示す値と、既に符号化/復号した隣接するブロックのMVDの大きさを段階的に示す値と、2進数列の何個目付近を処理しているかを段階的に示す値と、PMVインデックスの値と、の組み合わせによって定めるのが好適である。すなわち、コンポーネントが2個、MVDの大きさを段階的に示す値が3段階、2進数列の何個目付近を処理しているかを段階的に示す値が3段階、PMV候補数が2個で有った場合、2×3×3×2の24個のコンテキストインデックスの中から出力すべきコンテキストインデックスを定めることになる。この場合、確率保持部1152bは「1」「0」の確率を24通り保持するように構成される。なお、PMVインデックスの値を用いていれば、他の条件を用いてコンテキストインデックスを定めても構わない。
The context index is a value indicating whether it is an X component or a Y component, a value indicating the size of the MVD of an adjacent block that has already been encoded / decoded, and the number in the vicinity of the binary sequence. Is preferably determined by a combination of a value indicating stepwise and a PMV index value. That is, there are 2 components, 3 values for the MVD size stepwise, 3 steps for the binary sequence, and 2 PMV candidates. In this case, a context index to be output is determined from 24 context indexes of 2 × 3 × 3 × 2. In this case, the
算術符号化部1152eは、確率保持部1152bに入力されたコンテキストインデックスに対応する、確率保持部1152bに保持されている「1」「0」の確率に基づいて2進数列を符号化する。本実施形態は、2進数列(シンボル列)を適応的に符号化する点、すなわち、2進数列を符号化する際に、各ビットを符号化するたびに、「1」「0」の確率を更新していく点に特徴がある。
The
このことについて、算術符号化部1152eに入力される2進数列が「110」である場合を例として2進数列の符号化を説明する。なお、符号化前の「1」の確率はP1であるものとする。With respect to this, the encoding of the binary sequence will be described by taking as an example the case where the binary sequence input to the
算術符号化部1152eは、確率P1を用いて「110」の1ビット目「1」を符号化する。そして、算術符号化部1152eは、符号化ビット「1」を確率更新部1152cに出力する。確率更新部1152cは、符号化ビットが入力されると、「1」の確率をP2に更新する。The
次に、算術符号化部1152eは、確率P2を用いて「110」の2ビット目「1」を符号化する。そして、算術符号化部1152eは、符号化ビット「1」を確率更新部1152cに出力する。確率更新部1152cは、符号化ビットが入力されると、「1」の確率をP3に更新する。Next, the
最後に、算術符号化部1152eは、確率1−P3を用いて「110」の3ビット目「0」を符号化する。そして、算術符号化部1152eは、確率P1、P2、1−P3で「110」を符号化して得られた符号化データを出力する。Finally, the
ところで、確率保持部1152bはシーケンス先頭、フレーム先頭、スライス先頭などで、確率を初期化するための初期値を保持する。この初期値は、「0」、「1」を等確率、すなわち0.5としても良いが、多くのシーケンスで実験的に求めた出現確率の平均値のような適当な値を用いることが適当である。この場合、PMV候補が、同一フレームの既に符号化/復号したブロックのMVから求めた空間的予測ベクトル(例えばmv_med)と参照フレームの既に符号化/復号したブロックのMVも用いて求めた時間的予測ベクトル(例えばmv_col)である場合において、時間的予測ベクトルの方が短いMVD絶対値を小さな符号量で符号化するように初期値を設定すると適切である。上記の例では、「0」の確率の初期値を時間的予測ベクトルの方が空間的予測ベクトルよりも大きく設定する。
Incidentally, the
以上のように、動画像符号化装置100”は、MVD絶対値から変換された2進数列を算術符号化する過程で、「0」「1」の出現確率を切り替えることができるので、MVD絶対値の符号化効率を向上させることができる。
As described above, the moving
(付記事項)
なお、MVD絶対値は、X成分の絶対値とY成分の絶対値とに分けて符号化するのではなく、X成分の絶対値とY成分の絶対値との和を符号化しても構わない。この場合には、PMVCOST=F(|MV_X−PMV_X|+|MV_Y−PMV_Y|)となる。また、PMV仮候補の数は4とは限らず、MVD絶対値の値によって変化する。すなわち、X成分の絶対値とY成分の絶対値との和が1の場合にはMV仮候補の数は8、和が2の場合にはMV仮候補の数は16となり、一般的には、和がNの場合にMV仮候補の数は8Nとなる。(Additional notes)
Note that the MVD absolute value is not encoded separately for the X component absolute value and the Y component absolute value, but the sum of the X component absolute value and the Y component absolute value may be encoded. . In this case, PMVCOST = F (| MV_X−PMV_X | + | MV_Y−PMV_Y |). Further, the number of temporary PMV candidates is not limited to four, and varies depending on the value of the MVD absolute value. That is, when the sum of the absolute value of the X component and the absolute value of the Y component is 1, the number of MV temporary candidates is 8, and when the sum is 2, the number of MV temporary candidates is 16. When the sum is N, the number of MV provisional candidates is 8N.
また、以上説明したそれぞれの実施形態において、動画像符号化装置および動画像復号装置の各機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより動画像符号化装置や動画像復号装置の制御を行っても良い。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。 In each of the embodiments described above, a program for realizing each function of the moving image encoding device and the moving image decoding device is recorded on a computer-readable recording medium, and the program is recorded on the recording medium. May be read by a computer system and executed to control the video encoding device or the video decoding device. Here, the “computer system” includes an OS and hardware such as peripheral devices.
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに、「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるものであっても良い。 The “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM and a CD-ROM, and a hard disk incorporated in a computer system. Furthermore, the “computer-readable recording medium” means that a program is dynamically held for a short time, like a communication line when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. In this case, it is intended to include those that hold a program for a certain period of time, such as a volatile memory inside a computer system serving as a server or a client in that case. The program may be a program for realizing a part of the functions described above, and may be a program capable of realizing the functions described above in combination with a program already recorded in a computer system. .
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も特許請求の範囲に含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and the design and the like within the scope of the present invention are also within the scope of the claims. include.
本発明の符号化装置は、各データ候補のコストを算出するデータ候補コスト算出部を更に備え、前記データ候補特定フラグ符号化部により各データ候補に対して設定されるフラグは、前記データ候補コスト算出部により算出されたそのデータ候補のコストに応じたフラグである、ことが望ましい。例えば、符号化装置は、前記データ候補特定フラグ符号化部が、前記データ候補を特定するフラグの値を該データ候補と前記予測データとの距離が短いほど出現確率の高いシンボルが多く含まれるようなシンボル列にするとともに前記シンボル列を算術符号化することにより、前記フラグを符号化することが望ましい。 The encoding apparatus of the present invention further includes a data candidate cost calculation unit that calculates the cost of each data candidate, and the flag set for each data candidate by the data candidate identification flag encoding unit is the data candidate cost. It is desirable that the flag be in accordance with the cost of the data candidate calculated by the calculation unit. For example, in the encoding apparatus, the data candidate specifying flag encoding unit includes a value of a flag specifying the data candidate so that a symbol having a higher appearance probability is included as the distance between the data candidate and the prediction data is shorter. It is desirable to encode the flag by making the symbol sequence into a simple symbol sequence and arithmetically encoding the symbol sequence.
本発明の符号化装置は、前記差分絶対値符号化部が、前記所定のデータおよび前記予測データが複数の成分からなるデータである場合に、成分毎に前記差分絶対値を符号化するか、または、成分ごとの差分絶対値の和を符号化することを特徴とすることが望ましい。 In the encoding device of the present invention, the difference absolute value encoding unit encodes the difference absolute value for each component when the predetermined data and the prediction data are data composed of a plurality of components, Alternatively, it is desirable to encode the sum of absolute differences for each component.
本発明の符号化装置は、前記データ候補と前記予測データ候補とを入力とする関数により、前記データ候補と前記予測データ候補との距離に応じた値である距離コストを算出する距離コスト算出部であって、前記関数として演算量の異なる複数の関数を選択可能な距離コスト算出部を、さらに備え、前記差分絶対値符号化部は、前記距離コスト算出部が選択した関数を示すインデックスを符号化することが望ましい。 The encoding apparatus according to the present invention includes a distance cost calculation unit that calculates a distance cost that is a value corresponding to a distance between the data candidate and the prediction data candidate, using a function that receives the data candidate and the prediction data candidate. A distance cost calculation unit capable of selecting a plurality of functions having different calculation amounts as the function, and the difference absolute value encoding unit codes an index indicating the function selected by the distance cost calculation unit. It is desirable to make it.
また、本発明の符号化装置は、前記所定のデータが、動きベクトルデータであることが望ましい。 In the encoding device of the present invention, it is preferable that the predetermined data is motion vector data.
また、本発明は、入力画像と既に復号済みの参照画像との間の動きベクトルを推定する動き推定部と、前記動きベクトルを符号化する動きベクトル符号化部と、前記動きベクトルを用いて前記参照画像から予測信号を生成するインター予測部と、前記予測信号と前記入力画像の差分を算出する差分算出部と、前記差分を変換する変換部と、前記変換で得られた変換係数を量子化する量子化部を備える動画像符号化装置であって、前記動きベクトル符号化部での動きベクトルの符号化に前記特徴の符号化装置を用いることが望ましい。 Also, the present invention provides a motion estimation unit that estimates a motion vector between an input image and a reference image that has already been decoded, a motion vector encoding unit that encodes the motion vector, and the motion vector An inter prediction unit that generates a prediction signal from a reference image, a difference calculation unit that calculates a difference between the prediction signal and the input image, a conversion unit that converts the difference, and a quantization coefficient obtained by the conversion It is preferable that the moving picture coding apparatus including the quantizing unit that uses the feature coding apparatus for the motion vector coding in the motion vector coding unit.
また、本発明の復号装置は、各データ候補のコストを算出するデータ候補コスト算出部を更に備え、前記データ候補特定フラグ復号部により復号されるフラグは、前記データ候補コスト算出部により算出されたそのデータ候補のコストに応じたフラグである、ことが望ましい。 The decoding device of the present invention further includes a data candidate cost calculation unit that calculates the cost of each data candidate, and the flag decoded by the data candidate identification flag decoding unit is calculated by the data candidate cost calculation unit. It is desirable that the flag corresponds to the cost of the data candidate.
また、本発明の復号装置では、前記差分絶対値復号部が、前記所定のデータおよび前記予測データが複数の成分からなるデータである場合に、成分毎に前記差分絶対値を復号するか、または、成分ごとの差分絶対値の和を復号することが望ましい。 In the decoding device of the present invention, the difference absolute value decoding unit decodes the difference absolute value for each component when the predetermined data and the prediction data are data composed of a plurality of components, or It is desirable to decode the sum of absolute differences for each component.
また、本発明の復号装置は、前記データ候補と前記予測データ候補とを入力とする関数により、前記データ候補と前記予測データ候補との距離に応じた値である距離コストを算出する距離コスト算出部であって、前記関数として演算量の異なる複数の関数を選択可能な距離コスト算出部を、さらに備え、前記差分絶対値復号部は、前記距離コスト算出部が選択した関数を示すインデックスを復号することが望ましい。 Further, the decoding apparatus of the present invention calculates a distance cost that calculates a distance cost that is a value corresponding to a distance between the data candidate and the prediction data candidate, using a function that receives the data candidate and the prediction data candidate. A distance cost calculation unit capable of selecting a plurality of functions having different calculation amounts as the function, and the difference absolute value decoding unit decodes an index indicating the function selected by the distance cost calculation unit It is desirable to do.
また、本発明の復号装置は、前記所定のデータが、動きベクトルデータであることが望ましい。 In the decoding device of the present invention, it is desirable that the predetermined data is motion vector data.
また、本発明は、動きベクトルを復号する動きベクトル復号部と、既に復号済みの参照画像と、前記動きベクトルから予測信号を生成するインター予測部と、変換係数を逆量子化する逆量子化部と、変換係数を逆変換し差分信号を生成する逆変換部を備え、前記予測信号と前記差分信号を加算し復号信号を再生する動画像復号装置であって、前記動きベクトル復号部での動きベクトルの復号に前記特徴の復号装置を用いることが望ましい。 The present invention also provides a motion vector decoding unit that decodes a motion vector, a reference image that has already been decoded, an inter prediction unit that generates a prediction signal from the motion vector, and an inverse quantization unit that dequantizes transform coefficients. And an inverse transform unit that inversely transforms the transform coefficient to generate a difference signal, adds the predicted signal and the difference signal, and reproduces a decoded signal, wherein a motion in the motion vector decoding unit It is desirable to use the above-described decoding device for decoding vectors.
なお、記載の符号化装置が出力する符号化データであって、データ候補を特定するフラグを含む符号化データも本発明の範疇に含まれる。 Note that encoded data that is output by the described encoding device and includes a flag that specifies a data candidate is also included in the scope of the present invention.
100…動画像符号化装置、101…減算部、102…加算部、103…局所復号信号、111…動きベクトル符号化部、112…変換部、113…量子化部、115…可変長符号化部、116…逆量子化部、117…逆変換部、118…フレームメモリ、121…イントラ予測部、123…インター予測部、124…動き推定部、125…予測モード決定部、200…動画像復号装置、201…可変長符号化復号部、203…予測パラメータ、211…動きベクトル復号部、225…予測モード選択部、301…PMV候補およびPMV候補数、302…PMV、1111…MV格納部、1112…PMV候補算出部、1113…PMV決定部、1114…MVD算出部、1115…MVフラグ決定部、1151…PMVインデックス符号化部、1152…MVD絶対値符号化部、1153…MVインデックス符号化部、2011…PMVインデックス復号部、2012…MVD絶対値復号部、2013…MVインデックス復号部、2113…PMV選択部、2115…MV選択部、5001…MV候補算出部、5002…MV候補判定部、5003…MVインデックス決定部、6004…MV抽出部
DESCRIPTION OF
Claims (17)
前記差分絶対値と前記予測データとからデータ候補を算出するデータ候補算出部と、
データ候補算出部で算出されたデータ候補の数が2以上である場合に、前記データ候補毎に異なるフラグを設定し、各データ候補に対して設定されたフラグを符号化するデータ候補特定フラグ符号化部と、を備えていることを特徴とする符号化装置。When encoding predetermined data, a difference absolute value encoding unit that generates prediction data from already encoded data and encodes a difference absolute value between the predetermined data and the prediction data;
A data candidate calculation unit that calculates data candidates from the difference absolute value and the prediction data;
A data candidate identification flag code that sets a different flag for each data candidate and encodes the flag set for each data candidate when the number of data candidates calculated by the data candidate calculation unit is 2 or more And a coding unit.
各データ候補のコストを算出するデータ候補コスト算出部を更に備え、
前記データ候補特定フラグ符号化部により各データ候補に対して設定されるフラグは、前記データ候補コスト算出部により算出されたそのデータ候補のコストに応じたフラグである、ことを特徴とする符号化装置。The encoding device according to claim 1, comprising:
A data candidate cost calculation unit for calculating the cost of each data candidate;
Coding characterized in that the flag set for each data candidate by the data candidate specifying flag encoding unit is a flag corresponding to the cost of the data candidate calculated by the data candidate cost calculating unit. apparatus.
前記差分絶対値符号化部は、前記所定のデータおよび前記予測データが複数の成分からなるデータである場合に、成分毎に前記差分絶対値を符号化するか、または、成分ごとの差分絶対値の和を符号化することを特徴とする符号化装置。The encoding device according to claim 1 or 2,
The difference absolute value encoding unit encodes the difference absolute value for each component or the difference absolute value for each component when the predetermined data and the prediction data are data composed of a plurality of components. An encoding device that encodes the sum of the two.
前記所定のデータと前記予測データとの差分絶対値を符号化する差分絶対値符号化部と、
前記差分絶対値と前記予測データからデータ候補を算出するデータ候補算出部と、
前記予測データと前記予測データ候補から、前記差分絶対値と前記予測データから算出されるデータ候補の有効性を判定するデータ候補判定部と、を備え、
データ候補判定部で有効とされたデータ候補の数が2以上である場合に、前記データ候補を特定するフラグを符号化する、データ候補特定フラグ符号化部を備えることを特徴とする符号化装置。When encoding predetermined data, a prediction data determination unit that generates a plurality of prediction data candidates from already encoded data and selects prediction data used for encoding from the prediction data candidates;
A difference absolute value encoding unit that encodes a difference absolute value between the predetermined data and the prediction data;
A data candidate calculator that calculates a data candidate from the absolute difference value and the prediction data;
A data candidate determination unit that determines the validity of the data candidate calculated from the difference absolute value and the prediction data from the prediction data and the prediction data candidate;
An encoding apparatus comprising: a data candidate specifying flag encoding unit that encodes a flag for specifying the data candidate when the number of data candidates validated by the data candidate determination unit is 2 or more .
前記データ候補と前記予測データ候補とを入力とする関数により、前記データ候補と前記予測データ候補との距離に応じた値である距離コストを算出する距離コスト算出部であって、前記関数として演算量の異なる複数の関数を選択可能な距離コスト算出部を、さらに備え、
前記差分絶対値符号化部は、前記距離コスト算出部が選択した関数を示すインデックスを符号化することを特徴とする符号化装置。The encoding device according to claim 4,
A distance cost calculation unit that calculates a distance cost that is a value corresponding to a distance between the data candidate and the prediction data candidate by a function having the data candidate and the prediction data candidate as inputs, and calculates the function as the function A distance cost calculation unit capable of selecting a plurality of functions having different amounts is further provided,
The difference absolute value encoding unit encodes an index indicating the function selected by the distance cost calculation unit.
前記所定のデータと前記予測データとの差分絶対値をシンボル列とするとともに該シンボル列を算術符号化することにより、前記差分絶対値を符号化する差分絶対値符号化部と、を備え、
前記差分絶対値符号化部は、前記シンボル列を算術符号化するために用いる各シンボルの出現確率を、前記予測データ決定部が選択した予測データに応じて変更することを特徴とする符号化装置。When encoding predetermined data, a prediction data determination unit that generates a plurality of prediction data candidates from already encoded data and selects prediction data used for encoding from the prediction data candidates;
A difference absolute value encoding unit that encodes the difference absolute value by arithmetically encoding the symbol string while using the difference absolute value between the predetermined data and the prediction data as a symbol string; and
The difference absolute value encoding unit changes an appearance probability of each symbol used for arithmetic encoding of the symbol sequence according to the prediction data selected by the prediction data determination unit. .
既に符号化済みのデータから予測データを生成し、前記差分絶対値と前記予測データとからデータ候補を算出するデータ候補算出部と、
前記データ候補算出部で生成されたデータ候補の数が2以上である場合に、各データ候補に対してデータ候補毎に異なる値が設定されたフラグを復号するデータ候補特定フラグ復号部と、を備えていることを特徴とする復号装置。A difference absolute value decoding unit for decoding the encoded difference absolute value when decoding predetermined data; and
A data candidate calculation unit that generates prediction data from already encoded data, and calculates a data candidate from the difference absolute value and the prediction data;
A data candidate identification flag decoding unit that decodes a flag in which a different value is set for each data candidate for each data candidate when the number of data candidates generated by the data candidate calculation unit is 2 or more; A decoding device comprising:
各データ候補のコストを算出するデータ候補コスト算出部を更に備え、
前記データ候補特定フラグ復号部により復号されるフラグは、前記データ候補コスト算出部により算出されたそのデータ候補のコストに応じたフラグである、ことを特徴とする復号装置。The decoding device according to claim 9, wherein
A data candidate cost calculation unit for calculating the cost of each data candidate;
The decoding device characterized in that the flag decoded by the data candidate identification flag decoding unit is a flag corresponding to the cost of the data candidate calculated by the data candidate cost calculation unit.
前記差分絶対値復号部は、前記所定のデータおよび前記予測データが複数の成分からなるデータである場合に、成分毎に前記差分絶対値を復号するか、または、成分ごとの差分絶対値の和を復号することを特徴とする復号装置。The decoding device according to claim 9 or 10,
The difference absolute value decoding unit decodes the difference absolute value for each component or the sum of the difference absolute values for each component when the predetermined data and the prediction data are data composed of a plurality of components. The decoding apparatus characterized by decoding.
前記予測データと前記予測データ候補から、前記差分絶対値と前記予測データから算出されるデータ候補の有効性を判定するデータ候補判定部と、を備え、
前記データ候補判定部で有効とされたデータ候補の数が2以上である場合に、前記データ候補を特定するフラグを復号する、データ候補特定フラグ復号部を備えることを特徴とする復号装置。When decoding predetermined data, the encoded absolute difference value is decoded, a plurality of prediction data candidates are generated from the already encoded data, and the prediction data used for encoding is selected from the prediction data candidates A prediction data determination unit to
A data candidate determination unit that determines the validity of the data candidate calculated from the difference absolute value and the prediction data from the prediction data and the prediction data candidate;
A decoding apparatus comprising: a data candidate specifying flag decoding unit configured to decode a flag for specifying the data candidate when the number of data candidates validated by the data candidate determination unit is two or more.
前記データ候補と前記予測データ候補とを入力とする関数により、前記データ候補と前記予測データ候補との距離に応じた値である距離コストを算出する距離コスト算出部であって、前記関数として演算量の異なる複数の関数を選択可能な距離コスト算出部を、さらに備え、
前記差分絶対値復号部は、前記距離コスト算出部が選択した関数を示すインデックスを復号することを特徴とする復号装置。The decoding device according to claim 12, comprising:
A distance cost calculation unit that calculates a distance cost that is a value corresponding to a distance between the data candidate and the prediction data candidate by a function having the data candidate and the prediction data candidate as inputs, and calculates the function as the function A distance cost calculation unit capable of selecting a plurality of functions having different amounts is further provided,
The absolute difference decoding unit decodes an index indicating the function selected by the distance cost calculation unit.
前記所定のデータと前記予測データとの差分絶対値であるシンボル列を算術復号することにより、前記差分絶対値を復号する差分絶対値復号部と、を備え、
前記差分絶対値復号部は、前記シンボル列を復号するために用いる各シンボルの出現確率を、前記予測データ決定部が選択した予測データに応じて変更することを特徴とする復号装置。When decoding predetermined data, a prediction data determination unit that generates a plurality of prediction data candidates from already encoded data and selects prediction data used for decoding from the prediction data candidates;
A difference absolute value decoding unit that decodes the difference absolute value by arithmetically decoding a symbol string that is a difference absolute value between the predetermined data and the prediction data; and
The difference absolute value decoding unit changes the appearance probability of each symbol used for decoding the symbol string according to the prediction data selected by the prediction data determination unit.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009217137 | 2009-09-18 | ||
JP2009217137 | 2009-09-18 | ||
JP2009238216 | 2009-10-15 | ||
JP2009238216 | 2009-10-15 | ||
PCT/JP2010/066087 WO2011034148A1 (en) | 2009-09-18 | 2010-09-16 | Encoder apparatus, decoder apparatus, moving image encoder apparatus, moving image decoder apparatus, and encoding data |
Publications (1)
Publication Number | Publication Date |
---|---|
JPWO2011034148A1 true JPWO2011034148A1 (en) | 2013-02-14 |
Family
ID=43758748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011531972A Pending JPWO2011034148A1 (en) | 2009-09-18 | 2010-09-16 | Encoding device, decoding device, moving image encoding device, moving image decoding device, and encoded data |
Country Status (2)
Country | Link |
---|---|
JP (1) | JPWO2011034148A1 (en) |
WO (1) | WO2011034148A1 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101522850B1 (en) * | 2010-01-14 | 2015-05-26 | 삼성전자주식회사 | Method and apparatus for encoding/decoding motion vector |
KR101768207B1 (en) * | 2010-01-19 | 2017-08-16 | 삼성전자주식회사 | Method and apparatus for encoding/decoding motion vector based on reduced motion vector predictor candidates |
JP6523494B2 (en) * | 2010-01-19 | 2019-06-05 | サムスン エレクトロニクス カンパニー リミテッド | Method and apparatus for encoding / decoding motion vector based on reduced predicted motion vector candidate |
US9532066B2 (en) * | 2011-01-21 | 2016-12-27 | Qualcomm Incorporated | Motion vector prediction |
EP3522377A1 (en) * | 2011-06-24 | 2019-08-07 | Velos Media International Limited | Image encoding method, image decoding method, image encoding device, image decoding device, aind image encoding/decoding device |
WO2013001795A1 (en) * | 2011-06-29 | 2013-01-03 | パナソニック株式会社 | Image encoding method, image decoding method, image encoding device, and image decoding device |
US10536701B2 (en) * | 2011-07-01 | 2020-01-14 | Qualcomm Incorporated | Video coding using adaptive motion vector resolution |
WO2013065300A1 (en) * | 2011-10-31 | 2013-05-10 | 株式会社Jvcケンウッド | Moving-image encoding device, moving-image encoding method, moving-image encoding program, transmitter, transmission method and transmission program, and moving-image decoding device, moving-image decoding method, moving-image decoding program, receiver, and reception method and reception program |
CN108235032B (en) * | 2012-01-18 | 2022-01-07 | Jvc 建伍株式会社 | Moving picture decoding device and moving picture decoding method |
WO2019150411A1 (en) * | 2018-01-30 | 2019-08-08 | 富士通株式会社 | Video encoding device, video encoding method, video decoding device, and video decoding method, and video encoding system |
JP7242811B2 (en) * | 2019-10-21 | 2023-03-20 | 株式会社東芝 | Image encoding method and image decoding method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004135251A (en) * | 2002-10-10 | 2004-04-30 | Sony Corp | Method of encoding image information, and method of decoding the image information |
JP2007525100A (en) * | 2003-06-30 | 2007-08-30 | 株式会社エヌ・ティ・ティ・ドコモ | Method and apparatus for encoding motion information |
JP2008211697A (en) * | 2007-02-28 | 2008-09-11 | Sharp Corp | Encoder and decoder |
-
2010
- 2010-09-16 JP JP2011531972A patent/JPWO2011034148A1/en active Pending
- 2010-09-16 WO PCT/JP2010/066087 patent/WO2011034148A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004135251A (en) * | 2002-10-10 | 2004-04-30 | Sony Corp | Method of encoding image information, and method of decoding the image information |
JP2007525100A (en) * | 2003-06-30 | 2007-08-30 | 株式会社エヌ・ティ・ティ・ドコモ | Method and apparatus for encoding motion information |
JP2008211697A (en) * | 2007-02-28 | 2008-09-11 | Sharp Corp | Encoder and decoder |
Non-Patent Citations (3)
Title |
---|
JPN6012065700; Yong Ho Moon et al.: 'A hybrid motion-vector coding scheme based on an estimation of the locality for motion-vector differ' IEEE Transactions on Circuits and Systems for Video Technology Vol.16, No.6, 200606, pp.781-785, IEEE * |
JPN6012065701; Sung Deuk Kim and Jong Beom Ra: 'An efficient motion vector coding scheme based on minimum bitrate prediction' An efficient motion vector coding scheme based on minimum bitrate prediction Vol.8, No.8, 199908, pp.1117-1120, IEEE * |
JPN6012065703; Joel Jung and Guillaume Laroche: 'Competition-Based Scheme for Motion Vector Selection and Coding' ITU - Telecommunications Standardization Sector STUDY GROUP 16 Question 6 Video Coding Experts Group VCEG-AC06, 200607, pp.1-7, 29th Meeting: Klagenfurt, Austria * |
Also Published As
Publication number | Publication date |
---|---|
WO2011034148A1 (en) | 2011-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPWO2011034148A1 (en) | Encoding device, decoding device, moving image encoding device, moving image decoding device, and encoded data | |
US11689740B2 (en) | Motion vector prediction | |
CN108781295B (en) | Method and apparatus for pattern-based motion vector derivation for video coding | |
CN108028939B (en) | Method and apparatus for decoder-side motion derivation for video coding | |
JP5277257B2 (en) | Video decoding method and video encoding method | |
RU2678510C2 (en) | Method and device for coding and decoding motion vector based on reduced predictors-candidates of motion vector | |
KR101128533B1 (en) | Image encoding method and decoding method, their device, their program, and recording medium with the program recorded thereon | |
Kim et al. | An efficient motion vector coding scheme based on minimum bitrate prediction | |
KR101083379B1 (en) | Motion vector searching method and device, and record medium having recorded the program therefor | |
US12081790B2 (en) | Method and apparatus for encoding/decoding images using adaptive motion vector resolution | |
US20140140408A1 (en) | Method and apparatus for encoding motion information and method and apparatus for decoding same | |
KR101314836B1 (en) | Predicted pixel value generation procedure automatic producing method, image encoding method, image decoding method, apparatus therefor, programs therefor, and storage media which store the programs | |
US20120224635A1 (en) | Method and apparatus for encoding/decoding images using adaptive motion vector resolution | |
JP5367097B2 (en) | Motion vector predictive coding method, motion vector predictive decoding method, moving picture coding apparatus, moving picture decoding apparatus, and programs thereof | |
CN111418214A (en) | Syntactic prediction using reconstructed pixel points | |
US20210218977A1 (en) | Methods and systems of exponential partitioning | |
JP5590269B1 (en) | Video encoding method, video encoding apparatus, and video encoding program | |
JP2016154395A (en) | Method and apparatus for encoding/decoding video using motion vector of previous block as motion vector for current block | |
JP2019110530A (en) | Method and device for encoding video data | |
JP2024098086A (en) | Decoding method, coding method, apparatus, device, and storage medium | |
KR20120105412A (en) | Methods for arithmetic coding and decoding | |
CN103959788A (en) | Estimation of motion at the level of the decoder by matching of models | |
WO2019150411A1 (en) | Video encoding device, video encoding method, video decoding device, and video decoding method, and video encoding system | |
JP2012129756A (en) | Encoder, decoder, encoding method, decoding method, encoding program, and decoding program | |
JP2015111774A (en) | Video coding device and video coding program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121218 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130409 |