JP4760551B2 - Motion vector decoding method and decoding apparatus - Google Patents
Motion vector decoding method and decoding apparatus Download PDFInfo
- Publication number
- JP4760551B2 JP4760551B2 JP2006156634A JP2006156634A JP4760551B2 JP 4760551 B2 JP4760551 B2 JP 4760551B2 JP 2006156634 A JP2006156634 A JP 2006156634A JP 2006156634 A JP2006156634 A JP 2006156634A JP 4760551 B2 JP4760551 B2 JP 4760551B2
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- decoding
- information
- predictor
- hybridpred
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
この発明は、離散コサイン変換またはカルーネン・レーベ変換等の直交変換と動き補償によって画像情報を圧縮する画像符号化方法において、符号化された動きベクトルを復号化するのに適用される動きベクトル復号化方法および復号化装置に関する。 The present invention relates to a motion vector decoding applied to decoding an encoded motion vector in an image encoding method for compressing image information by orthogonal transform and motion compensation such as discrete cosine transform or Karhunen-Labe transform. The present invention relates to a method and a decoding device.
近年、画像情報をディジタルとして取り扱い、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEGなどの方式に準拠した画像情報符号化装置や復号化装置が、放送局などの情報配信、および一般家庭における情報受信の双方において普及しつつある。 2. Description of the Related Art Recently, image information encoding devices and decoding devices compliant with a scheme such as MPEG that uses image information as digital and compresses by orthogonal transform such as discrete cosine transform and motion compensation using redundancy unique to image information have been developed. It is becoming popular in both information distribution in broadcasting stations and information reception in general households.
特に、MPEG2(ISO(International Organization for Standardization)/IEC(International Electrotechnical Commition)13818−2)は、汎用画像符号化方式として定義されている。またMPEG2は、飛び越し走査画像および順次走査画像の双方、並びに標準解像度画像および高精細画像を網羅する標準で、現在、プロフェッショナル用途およびコンシューマー用途の広範なアプリケーションに広く用いられている。 In particular, MPEG2 (ISO (International Organization for Standardization) / IEC (International Electrotechnical Commition) 13818-2) is defined as a general-purpose image coding system. MPEG2 is a standard covering both interlaced scanning images and progressive scanning images, as well as standard resolution images and high-definition images, and is currently widely used in a wide range of applications for professional use and consumer use.
MPEG2は、主として放送用に適合する高画質符号化を対象としていたが、MPEG1より小さい符号量(低ビットレート)、つまり、より高い圧縮率の符号化方式には対応していなかった。携帯端末の普及により、今後そのような符号化方式のニーズは高まると思われ、これに対応してMPEG4符号化方式の標準化が行われた。画像符号化方式に関しては、1998年12月にISO/IEC14496−2という規格が国際標準として承認された。 MPEG2 was mainly intended for high-quality encoding suitable for broadcasting, but it did not support a coding amount (low bit rate) smaller than MPEG1, that is, an encoding method with a higher compression rate. With the widespread use of mobile terminals, the need for such an encoding system is expected to increase in the future, and the MPEG4 encoding system has been standardized accordingly. Regarding the image coding system, ISO / IEC14496-2 standard was approved as an international standard in December 1998.
さらに、近年、当初テレビ会議用の画像符号化を目的として策定されたH. 26L(ITU(International Telecommunication Union )−T Q6/16 VCEG)という標準の規格化が進んでいる。H.26Lは、MPEG2やMPEG4といった従来の符号化方式に比べ、その符号化、復号化により多くの演算量が要求されるものの、より高い符号化効率が実現されることが知られている。また、現在、MPEG4の活動の一環として、このH.26Lをベースに、H.26Lではサポートされない機能も取り入れ、より高い符号化効率を実現する標準化がJointModel of Enhanced−Compression Video Codingとして行われ、2003年3月には、H.264/AVC(Advanced Video Coding )という規格が国際標準として認められた。非特許文献1には、この規格に基づく処理の内容が記載されている。
Furthermore, in recent years, the standardization of the standard called H.26L (ITU (International Telecommunication Union) -T Q6 / 16 VCEG), which was originally formulated for the purpose of image coding for video conferencing, has been advanced. H. 26L is known to achieve higher encoding efficiency compared to conventional encoding schemes such as MPEG2 and MPEG4, although a large amount of computation is required for encoding and decoding. In addition, as part of MPEG4 activities, this H.264 Based on H.26L Standardization that realizes higher coding efficiency by incorporating functions not supported by H.26L was performed as Joint Model of Enhanced-Compression Video Coding. The standard called H.264 / AVC (Advanced Video Coding) has been accepted as an international standard. Non-Patent
さらに、2003年9月にマイクロソフトがSMPTE(Society of Motion Picture and Television Engineers)に対してWMV9にインターレス対応のための拡張を追加したものを提出し、2005年10月にSMPTEでの規格化作業が終了し、SMPTE 421Mとして発表された。この規格は、VC−1フォーマットと称される。VC−1フォーマットは、H.264/AVCと共通点と相違点を有しており、二つの方式の比較については、例えば下記の非特許文献2に記載されている。
In September 2003, Microsoft submitted an extension to WMP9 for SMPTE (Society of Motion Picture and Television Engineers) and standardization work at SMPTE in October 2005. Was completed and announced as SMPTE 421M. This standard is referred to as the VC-1 format. The VC-1 format is H.264. H.264 / AVC has similarities and differences, and the comparison of the two methods is described in
図1および図2は、非特許文献2に記載されているVC−1フォーマットの符号化および復号化の流れを示すブロック図である。入力画像データが分割され、イントラ(フレーム内)予測符号化部1およびインター(フレーム間)予測符号化部2にそれぞれ入力される。イントラ予測符号化部1が直交変換部3および量子化部4からなり、量子化部4からの量子化された係数データがエントロピー符号化(可変長符号化)部5に供給される。エントロピー符号化部5から可変長符号化された符号化データが出力される。
1 and 2 are block diagrams showing the flow of encoding and decoding in the VC-1 format described in
インター予測符号化部2は、入力画像データと局部復号化画像データとの差分を得るための加算器6、差分を直交変換する直交変換部7および直交変換部7からの係数データを量子化する量子化部8とからなる。量子化部8からの量子化された係数データがエントロピー符号化部9に供給される。エントロピー符号化部9から可変長符号化された符号化データが出力される。
The inter
局部復号化のために、量子化部4および8のそれぞれの出力が供給される逆量子化部10、直交変換の逆の変換を行う逆変換部11、動き補償部12、動き補償部12の出力と逆変換部11の出力を加算する加算器13、加算器13の出力が供給され、ブロック境界を平滑化するためのデブロックフィルタ14、および入力画像データの動きを検出する動き予測部15が設けられている。動き予測部15で形成された動きベクトルが動き補償部12に供給されると共に、予測符号化され、エントロピー符号化部9に対して供給される。
For local decoding, an
入力画像信号は、イントラ予測で符号化されるものと、インター予測で符号化されるものとに分離され、それぞれイントラ予測符号化部1およびインター予測符号化部2に対して供給される。イントラ予測符号化部1では、単一のフレームを用いて符号化が行われる。イントラ予測符号化部1では、入力画像の画素値と、イントラ予測で生成された画素値の差分情報が直交変換部3に入力され、ここで離散コサイン変換、カルーネン・レーベ変換等の直交変換が施される。直交変換部3の出力(変換係数)が量子化部4に提供され、量子化部4において量子化処理が施される。量子化部4からの量子化された変換係数がエントロピー符号化部5に供給されて可変長符号化が施される。
The input image signal is separated into one encoded by intra prediction and one encoded by inter prediction, and supplied to the intra
インター予測符号化部2では、複数のフレームの画像情報を用いて入力画像信号が符号化される。ローカル復号化によって動き補償部12から得られた参照画像と入力画像との差分が加算器6の出力に得られる。動き補償部12では、入力フレームと異なる他のフレームの画像情報の動き補償処理が行われ、参照画像情報が生成される。動き補償のために動き予測部15からの動きベクトルが使用され、また、動きベクトル情報がエントロピー符号化部9に出力され、動きベクトル情報が可変長符号化され、画像圧縮情報のヘッダ部に挿入される。その他の処理はイントラ符号化に関するものと同様である。
In the inter
次に、図2のブロック図を参照して、画像情報復号化装置について説明する。受け取った符号化データがイントラ予測で復号されるものと、インター予測で復号されるものとに分けられ、イントラ予測復号化部21およびインター予測復号化部22にそれぞれ供給される。
Next, the image information decoding apparatus will be described with reference to the block diagram of FIG. The received encoded data is divided into data to be decoded by intra prediction and data to be decoded by inter prediction, and is supplied to the intra
イントラ予測復号化部21は、エントロピー復号化(可変長符号の復号化)部23と、量子化の逆の処理を行う逆量子化部24と、直交変換の逆の変換を行う逆変換部25と、ブロック歪みの軽減のためのデブロッキング・フィルタ26とからなる。デブロッキング・フィルタ26の出力に復号画像が得られる。
The intra
インター予測復号化部22は、エントロピー復号化部23と、量子化の逆の処理を行う逆量子化部28と、直交変換の逆の変換を行う逆変換部29と、加算器30と、ブロック境界を平滑化するためのデブロッキング・フィルタ31と、動きベクトル復号化部32と、復号された動きベクトルによって動き補償を行う動き補償部33とからなる。動き補償部33において、デブロッキング・フィルタ31から得られる復号画像が動き補償され、復号画像が加算器30に供給される。加算器30において、逆変換部29からの差分信号と復号画像信号とが加算される。
The inter
VC−1フォーマットは、MPEGなどと異なる処理がなされている。非特許文献2によれば、主なものを列挙すると以下の通りである。
The VC-1 format is processed differently from MPEG. According to Non-Patent
1.適応型ブロック・サイズによる直交変換
(複数のサイズの直交変換ブロックを使用して直交変換を行う。)
2.16ビット処理を前提とした直交変換セット
(16ビットの固定小数点演算を使用して逆変換を実装し、復号化時の演算量を抑える。)
3.動き補償
(探索ブロックと、動きベクトルの検出の画素単位と、予測値生成に使用するフィルタの種類との3つのパラメータの組合せによる4つの動き補償のモードを規定する。)
4.量子化と逆量子化
(2つの量子化の方法が切り換えられる。)
5.デブロッキング・フィルタ
(ブロック境界に不連続が生じるのを防止するために、H.264/AVCと同様にデブロッキング・フィルタを導入して、ブロック境界を平滑化している。)
6.2つのインタレース符号化方式
(インタレース符号化方式としてInterlaced fieldピクチャ符号化方式と、Interlaced frameピクチャ符号化方式との2つの方式が可能とされている。)
7.Bピクチャの符号化方式
(参照するピクチャに対するBピクチャの位置関係を明示して符号化する等の特徴を有する。)
1. Orthogonal transformation with adaptive block size (Orthogonal transformation is performed using orthogonal transformation blocks of multiple sizes.)
2. Orthogonal transformation set premised on 16-bit processing (invert transformation is implemented using 16-bit fixed-point arithmetic to reduce the amount of computation at the time of decoding)
3. Motion compensation (specifies four motion compensation modes based on a combination of three parameters: a search block, a pixel unit for detecting a motion vector, and a filter type used to generate a prediction value.)
4). Quantization and inverse quantization (two quantization methods can be switched)
5. Deblocking filter (In order to prevent discontinuity at the block boundary, a deblocking filter is introduced in the same manner as H.264 / AVC to smooth the block boundary.)
6. Two interlaced encoding schemes (two interlaced picture encoding schemes and interlaced frame picture encoding schemes are possible as interlaced encoding schemes)
7). B picture coding method (has features such as coding by explicitly indicating the positional relationship of the B picture with respect to the picture to be referenced)
この発明は、上述したVC−1フォーマットの復号化装置における動きベクトル復号化部32における動きベクトルの予測復号に適用される。動きベクトルの符号量を減らすために、符号化対象のマクロブロック(カレントマクロブロックと称する)の上、右上、および左にそれぞれ隣接するマクロブロックの動きベクトルの中間値(動きベクトルのx成分およびy成分のそれぞれに関する中間値)を予測動きベクトルとし、カレントマクロブロックの動きベクトルと予測動きベクトルとの差分を符号化し、復号化時には、予測動きベクトルを生成し、生成した動きベクトルと差分とを加算して動きベクトルを復号化している。この処理は、第1の予測方法としてのメジアン予測(Median Prediction )と呼ばれる。メジアン予測は、画面全体の動きベクトルの変化が緩やかな場合に、動きベクトルの符号量を大幅に削減することができる。
The present invention is applied to motion vector predictive decoding in the motion
一方、メジアン予測の場合では、局所的に大きさ、方向が大幅に異なる動きベクトルが出現した場合、予測によってかえって差分が大きくなることがある。VC−1フォーマットでは、メジアン予測のみならず、メジアン予測を使用しないで、上または左に隣接するブロックの動きベクトルをそのまま予測値として利用するブロックを指定することが可能とされている。VC−1フォーマットでは、この動きベクトルの第2の予測方法がハイブリッド予測と称される。ハイブリッド予測については、後でより詳細に説明する。 On the other hand, in the case of median prediction, if a motion vector having a significantly different size and direction appears locally, the difference may be increased depending on the prediction. In the VC-1 format, not only median prediction but also median prediction is not used, and it is possible to specify a block that directly uses a motion vector of a block adjacent to the upper or left as a prediction value. In the VC-1 format, this second motion vector prediction method is called hybrid prediction. The hybrid prediction will be described in detail later.
次に、VC−1フォーマットにおいて規定されている動きベクトル予測方式を図面を参照して説明する。予測対象のマクロブロック(以下、カレントマクロブロックと称する)の動きベクトル、または予測対象のブロック(以下、カレントブロックと称する)の動きベクトルは、隣接する複数のマクロブロックまたはブロックの動きベクトルを使用してなされる。この予測に使用される隣接するマクロブロックまたはブロックをプリディクタと称する。また、隣接するマクロブロックまたはブロック中で使用される複数のプリディクタをパターンと称する。 Next, a motion vector prediction method defined in the VC-1 format will be described with reference to the drawings. A motion vector of a macro block to be predicted (hereinafter referred to as a current macro block) or a motion vector of a block to be predicted (hereinafter referred to as a current block) uses a plurality of adjacent macro blocks or motion vectors of blocks. It is done. An adjacent macroblock or block used for this prediction is called a predictor. A plurality of predictors used in adjacent macroblocks or blocks are referred to as patterns.
また、この明細書では、「SMPTE 421M」 "DRAFT SMPTE STANDARD for Television:VC-1 Compressed Video Bitstream Format and Decoding Process" の中で使用さ
れているのと同様の用語を適宜使用する。用語の意味は、下記の通りである。
Further, in this specification, terms similar to those used in “SMPTE 421M” “DRAFT SMPTE STANDARD for Television: VC-1 Compressed Video Bitstream Format and Decoding Process” are appropriately used. The meanings of the terms are as follows.
VLD:可変長復号化部(Variable Length Decoder)
MVP:動きベクトル予測部(Motion Vector Prediction)
MV:動きベクトル(Motion Vector)
MB:マクロブロック(1MVmodeは、1MBに1MVのモードを意味し、4MVmodeは、各ブロック(8×8のサイズ)に1MVのモードを意味する。)
プリディクタMV:周囲のMB/ブロックの中から所定のアルゴリズムで検出される復号済みの動きベクトルであり、プリディクタMVを使用してカレントMB/ブロックの予測動きベクトルが求められる。
イントラMB/ブロック:動きベクトルを持たず、ブロックレイヤの情報のみで復号できるMB/ブロック
インターMB/ブロック:動きベクトルを持ち、復号のために復号済みピクチャの参照が必要なMB/ブロック
DMV:VLDがMVDATA、BLKMVDATAシンタックス要素より復号する差分ベクトル値
PMV:MVPがプリディクタMVから所定のアルゴリズムで計算するベクトル値
MVDATA:1MVmodeのときのDMV情報を表すシンタックス要素(可変長で、0〜1個/1MB)
BLKMVDATA:4MVmodeのときのDMV情報を表すシンタックス要素(可変長で、0〜4個/1MB)
HYBRIDPRED:ハイブリッド予測に使用されるシンタックス要素(1ビットで、0〜4個/1MB)
ビットプレーン:各MBの1ビット情報を1ピクチャ分まとめて符号化したデータ構造で、ビットプレーン中に下記のMVDATABITが含まれている。
MVDATABIT:1MV/4MVmodeを指定するシンタックス要素(1ビットで、1個/1MBまたはビットプレーン)
NUMREF(Number of Reference Pictures):インタレースPフィールドヘッダにのみ存在する1ビットシンタックス要素である。NUMREF=0ならば、カレントインタレースPフィールドピクチャが1フィールドを参照する。NUMREF=1ならば、カレントインタレースPフィールドピクチャがディスプレイ順序において時間的に最も近いIまたはPフィールドピクチャを参照する。NUMREFは、Pフィールドピクチャの復号に使用される。
Predictor flag:Interlaced fieldで且つNUMREF=1のとき1ビット存在するシンタックス要素
VLD: Variable Length Decoder
MVP: Motion Vector Prediction
MV: Motion Vector
MB: Macroblock (1 MVmode means 1 MV mode for 1 MB, and 4 MVmode means 1 MV mode for each block (8 × 8 size))
Predictor MV: a decoded motion vector detected by a predetermined algorithm from surrounding MB / blocks, and a predicted motion vector of the current MB / block is obtained using the predictor MV.
Intra MB / block: MB / block that does not have a motion vector and can be decoded only by block layer information Inter MB / block: MB / block that has a motion vector and needs to reference a decoded picture for decoding DMV: VLD Is the difference vector value that is decoded from the MVDATA and BLKMVDATA syntax elements PMV: the vector value that MVP is calculated from the predictor MV with a predetermined algorithm MVDATA: syntax elements that represent DMV information when MVmode is 1 (0 to 1 in variable length) / 1MB)
BLKMVDATA: A syntax element that represents DMV information in 4MV mode (0-4 variable / 1MB in variable length)
HYBRIDPRED: Syntax elements used for hybrid prediction (0 to 4/1 MB in 1 bit)
Bit plane: A data structure in which 1-bit information of each MB is encoded for one picture, and the following MVDATABIT is included in the bit plane.
MVDATABIT: A syntax element that specifies 1MV / 4MVmode (1 bit per bit / 1MB or bit plane)
NUMREF (Number of Reference Pictures): A 1-bit syntax element that exists only in the interlaced P-field header. If NUMREF = 0, the current interlaced P-field picture refers to one field. If NUMREF = 1, the current interlaced P-field picture refers to the closest I or P field picture in time in display order. NUMREF is used to decode P-field pictures.
Predictor flag: Interlaced field and syntax element with 1 bit when NUMREF = 1
図3は、単一の動きベクトルによってマクロブロック(MB)の全ての6個のブロックが予測ブロックに置換される、Progressive 1−MV Pピクチャにおける動きベクト
ル予測を説明するもので、カレントMB(斜線で示す)と隣接する3個のMBを示している。図3Aは、カレントMBの上のMB(プリディクタA)、カレントMBの右上のMB(プリディクタB)およびカレントMBの左のMB(プリディクタC)を示す。これらのプリディクタのMVの中間値をカレントMBの予測動きベクトル(PMV)とし、カレントMBの差分がPMVと加算され、カレントMBのMVが復号される。
FIG. 3 illustrates motion vector prediction in a Progressive 1-MV P picture in which all six blocks of a macroblock (MB) are replaced with prediction blocks by a single motion vector. And 3 adjacent MBs. FIG. 3A shows the MB above the current MB (Predictor A), the upper right MB (Predictor B) of the current MB, and the left MB of the current MB (Predictor C). The intermediate value of the MVs of these predictors is set as the predicted motion vector (PMV) of the current MB, the difference of the current MB is added to the PMV, and the MV of the current MB is decoded.
マクロブロック配列の行(ロウまたはスライスとも称される)の一番右端の場合には、右上のMBが存在しないので、図3Bに示すように、カレントMBの左上のMBがプリディクタBとして使用される。処理の順序からカレントMBの復号化時では、PMVの生成に必要とされる3個のプリディクタが得られている。なお、隣接ブロックがイントラ符号化ブロックの場合には、プリディクタMVのMVがゼロとされる。 In the rightmost end of a macroblock array row (also referred to as a row or a slice), there is no upper right MB, so the upper left MB of the current MB is used as the predictor B as shown in FIG. 3B. The From the order of processing, at the time of decoding the current MB, three predictors necessary for generating the PMV are obtained. If the adjacent block is an intra-coded block, the MV of the predictor MV is set to zero.
Pピクチャの他のタイプとして、Mixed−MV Pピクチャがある。これは、各MBが
1−MVmodeMBまたは4−MVmodeMBとして復号されるものである。4−MVmodeMBでは、4個の輝度ブロックのそれぞれが動きベクトルを持つ。
Another type of P picture is a Mixed-MV P picture. In this case, each MB is decoded as 1-MVmodeMB or 4-MVmodeMB. In 4-MVmodeMB, each of the four luminance blocks has a motion vector.
図4は、Progressive Mixed−MV Pピクチャにおける1−MVmodeMBの動きベクトルの予測を示す。図4において、大きい矩形が(16×16)のサイズのMBを示し、小さい矩形が(8×8)のサイズの直交変換の単位のブロックを示す。図4では、カレントマクロブロックの周囲の隣接ブロックが4−MVmodeMBと仮定している。この場合では、各MBの中の所定のブロックがプリディクタとして使用される。 FIG. 4 shows prediction of a motion vector of 1-MVmode MB in a Progressive Mixed-MV P picture. In FIG. 4, a large rectangle indicates an MB having a size of (16 × 16), and a small rectangle indicates a block of an orthogonal transform unit having a size of (8 × 8). In FIG. 4, it is assumed that adjacent blocks around the current macroblock are 4-MVmodeMB. In this case, a predetermined block in each MB is used as a predictor.
1MB内の輝度信号の4個のブロックを規定するために、位置に応じてブロック0〜ブロック3が定義されている。すなわち、図面に向かって左上のブロックがブロック0であり、右上のブロックがブロック1であり、左下のブロックがブロック2であり、右下のブロックがブロック3である。図4Aに示すように、右上の隣接ブロックのブロック2をプリディクタBとし、上の隣接ブロックのブロック2をプリディクタAとし、左の隣接ブロックのブロック1をプリディクタCとする。これらのプリディクタA、BおよびCを使用してカレントMBの1個のPMVが計算される。
In order to define four blocks of the luminance signal within 1 MB, block 0 to block 3 are defined according to the position. That is, in the drawing, the upper left block is
カレントMBが行の端の場合には、図4Bに示すように、上、左上、左の3個の隣接MBのそれぞれのブロック2、ブロック3およびブロック1がプリディクタとして使用され、カレントMBの1個のPMVが計算される。
When the current MB is at the end of the row, as shown in FIG. 4B, each of
図5は、Progressive Mixed−MV Pピクチャにおける4−MVmodeMBの動きベクトルの予測を示す。カレントMB内で4個のカレントブロック(ブロック0〜ブロック3)のそれぞれのPMVが計算される。 FIG. 5 shows prediction of a 4-MVmode MB motion vector in a Progressive Mixed-MV P picture. The PMV of each of the four current blocks (block 0 to block 3) in the current MB is calculated.
図5Aに示すように、カレントMBが行中の最初のMBでなければ、カレントMBの上、左上、左のMBが隣接MBとされ、それぞれの中でカレントMBのブロック0の上、左上、左のブロックのそれぞれがプリディクタA、BおよびCとして使用される。 As shown in FIG. 5A, if the current MB is not the first MB in the row, the upper, upper left, and left MBs of the current MB are set as adjacent MBs, and the upper, upper left, Each of the left blocks is used as predictors A, B and C.
図5Bに示すように、カレントMBが行中の最初のMBであれば、カレントMBの上のMBが隣接MBとされ、隣接MBの中でカレントMBのブロック0の上および右上のブロックのそれぞれがプリディクタAおよびBとして使用される。プリディクタCのMVが0に設定される。
As shown in FIG. 5B, if the current MB is the first MB in the row, the MB above the current MB is set as the adjacent MB, and each of the blocks above and right above the
図5Cに示すように、カレントMBが行中の最後のMBでなければ、カレントMBの上および右上のMBが隣接MBとされ、それぞれの中でカレントMBのブロック1の上および右上のブロックがプリディクタAおよびBとして使用される。プリディクタCは、カレントMB内のブロック1の左のブロックが使用される。
As shown in FIG. 5C, if the current MB is not the last MB in the row, the upper and upper right MBs of the current MB are the adjacent MBs, and the upper and upper right blocks of the
図5Dに示すように、カレントMBが行中の最後のMBであれば、カレントMBの上のMBが隣接MBとされ、隣接MBの中でカレントMBのブロック1の上および左上のブロックのそれぞれがプリディクタAおよびBとして使用される。プリディクタCは、カレントMB内のブロック1の左のブロックが使用される。
As shown in FIG. 5D, if the current MB is the last MB in the row, the MB above the current MB is set as the adjacent MB, and each of the blocks above and at the upper left of
図5Eに示すように、カレントMBのブロック2に関しては、同じMB内の上および右上のブロックがプリディクタAおよびBとされ、左の隣接MB内がプリディクタCとして使用される。
As shown in FIG. 5E, for
図5Fに示すように、カレントブロックがカレントMB内のブロック3の場合には、同一のMB内の他の3個のブロックがそれぞれプリディクタA、BおよびCとして使用される。
As shown in FIG. 5F, when the current block is
次に、インタレースの場合の動きベクトル予測について説明する。図6Aは、Interlaced field 1−MV Pピクチャにおける動きベクトル予測を説明するものである。前述したProgressive 1−MV Pピクチャにおける動きベクトル予測(図3A)と同様に
してMVが予測される。また、図6Bに示すように、行の最後の場合には、図3Bの場合と同様に、カレントMBの左上のMBがプリディクタBとして使用される。
Next, motion vector prediction in the case of interlace will be described. FIG. 6A illustrates motion vector prediction in an Interlaced field 1-MV P picture. The MV is predicted in the same manner as the motion vector prediction in the Progressive 1-MV P picture described above (FIG. 3A). Further, as shown in FIG. 6B, in the last case of the row, the upper left MB of the current MB is used as the predictor B as in the case of FIG. 3B.
図7は、Interlaced fieldPピクチャにおける1−MVmodeMBの動きベクトルの予測を示す。図7において、大きい矩形が(16×16)のサイズのMBを示し、小さい矩形が(8×8)のサイズの直交変換の単位のブロックを示す。図7では、隣接MBが4−MVmodeMBと仮定している。この場合では、各隣接MBの中の所定のブロックがプリディクタとして使用される。 FIG. 7 shows prediction of a motion vector of 1-MVmode MB in an Interlaced field P picture. In FIG. 7, a large rectangle indicates an MB having a size of (16 × 16), and a small rectangle indicates a block of an orthogonal transform unit having a size of (8 × 8). In FIG. 7, it is assumed that the adjacent MB is 4-MVmodeMB. In this case, a predetermined block in each adjacent MB is used as a predictor.
図7Aに示すように、右上の隣接MBのブロック2をプリディクタBとし、上の隣接MBのブロック2をプリディクタAとし、左の隣接MBのブロック1をプリディクタCとする。これらのプリディクタA、BおよびCを使用してカレントMBの1個のPMVが計算される。
As shown in FIG. 7A, block 2 in the upper right adjacent MB is designated as predictor B,
カレントMBが行の最後の場合には、図7Bに示すように、上、左上、左の3個の隣接MBのそれぞれのブロック2、ブロック2およびブロック1を使用してカレントMBの1個のPMVが計算される。
If the current MB is at the end of the row, as shown in FIG. 7B, each
図8は、Interlaced field Mixed−MV Pピクチャにおける4−MVmodeの動きベクトルの予測を示す。カレントMB内の4個のカレントブロック(ブロック0〜ブロック3)のそれぞれのPMVが計算される。 FIG. 8 shows prediction of a 4-MV mode motion vector in an Interlaced field Mixed-MV P picture. The PMV of each of the four current blocks (block 0 to block 3) in the current MB is calculated.
図8A、図8Bおよび図8Cは、カレントMBの左上のブロック0の動きベクトルの予測を説明するものである。図8Aに示すように、カレントMBが行の最初のMBでなければ、カレントMBの上のMBのブロック2、左上のMBのブロック3および左のMBのブロック1がプリディクタA、BおよびCとして使用される。
FIG. 8A, FIG. 8B, and FIG. 8C illustrate the prediction of the motion vector of
図8Bに示すように、カレントMBが行中の最初のMBであれば、カレントMBの上のMBのブロック2およびブロック3がプリディクタAおよびBとして使用される。この場合では、プリディクタCのMVが0とされる。
As shown in FIG. 8B, if the current MB is the first MB in the row, the
フレームが1MBワイドである特殊な場合では、図8Cに示すように、プリディクタBおよびCのMVが0とされ、上のMBのブロック2のプリディクタがカレントブロックのPMVとされる。
In the special case where the frame is 1 MB wide, as shown in FIG. 8C, the MVs of the predictors B and C are set to 0, and the predictor of the
図8Dおよび図8Eは、カレントMBのブロック1の動きベクトルの予測を説明するものである。カレントMBが行の最後のMBでなければ、カレントMBの上のMBのブロック2、右上のMBのブロック2および同じMBのブロック0がプリディクタA、BおよびCとして使用される。
8D and 8E illustrate the prediction of the motion vector of
図8Eに示すように、カレントMBが行中の最後のMBであれば、カレントMBの上のMBのブロック2およびブロック3がプリディクタAおよびBとしてそれぞれ使用される。この場合では、同じMBのブロック0がプリディクタCとして使用される。 As shown in FIG. 8E, if the current MB is the last MB in the row, MB blocks 2 and 3 above the current MB are used as predictors A and B, respectively. In this case, block 0 of the same MB is used as predictor C.
図8Fは、カレントMBのブロック2の動きベクトルの予測を説明するものである。同じMBのブロック0およびブロック1がプリディクタAおよびBとして使用され、左の隣接MBのブロック3がプリディクタCとして使用される。カレントMBが行の最初の場合では、プリディクタCのMVが0とされる。
FIG. 8F illustrates the prediction of the motion vector of
カレントMBのブロック3の動きベクトルは、図8Gに示すように、同じMBの他の3個のブロックがプリディクタA、BおよびCとして使用して予測される。
The motion vector of
フレームが1MBワイドである特殊な場合では、図8Hに示すように、プリディクタBおよびCのMVが0とされ、同じMBのブロック0のプリディクタAがカレントブロックのPMVとされる。
In a special case where the frame is 1 MB wide, as shown in FIG. 8H, the MVs of the predictors B and C are set to 0, and the predictor A of the
上述したように、ピクチャレイヤの情報(Progressive/Interlaced、NUMREF=
0または1)と、マクロブロックレイヤの情報(1MV/4MV、Predictor flag=0または1)と、行の端かどうかによって、動きベクトル予測に使用するプリディクタのパターンが相違する。
As described above, picture layer information (Progressive / Interlaced, NUMREF =
0 or 1), macroblock layer information (1MV / 4MV, Predictor flag = 0 or 1), and a predictor pattern used for motion vector prediction differ depending on whether or not the end of a row.
動きベクトル復号化部は、VLD(可変長復号化部)とMVP(動きベクトル予測部)とにより構成される。VC−1フォーマットで圧縮されたビデオのビットストリームを復号する場合、VLDは、直前に復号した情報を利用してシンタックス要素の種類や数を判断する。VLDが復号した現在のシーケンスや、ピクチャや、スライスや、MBの情報は、参照が容易なメモリの領域に保持しておき、その情報をVLDが再帰的に利用することによって下位のレイヤの復号がなされる。 The motion vector decoding unit includes a VLD (variable length decoding unit) and an MVP (motion vector prediction unit). When decoding a video bit stream compressed in the VC-1 format, the VLD determines the type and number of syntax elements using the information decoded immediately before. The current sequence, picture, slice, and MB information decoded by the VLD is held in an easily accessible memory area, and the VLD recursively uses the information to decode lower layers. Is made.
しかしながら、VC−1フォーマットに存在する、ハイブリッド予測に関するHYBRIDPREDシンタックス要素は、MVPの処理結果を用いないと復号することができない。MVPは、上述したように、既に復号が終了し、確定した周囲のMV情報と、VLDが復号した当該MB(カレントマクロブロック)情報を利用して当該MBのMVを確定する。すなわち、MVPは、当該MBに隣接するプリディクタA、プリディクタBおよびプリディクタCの情報を取得し、それぞれのベクトル値(PMV A,PMV B,PMV Cと表記する)をVC−1フォーマットで定められた関数により変換して一つのベクトル値PMVを得る。 However, the HYBRIDPRED syntax element relating to hybrid prediction existing in the VC-1 format cannot be decoded without using the processing result of MVP. As described above, the MVP determines the MV of the MB using the surrounding MV information that has already been decoded and confirmed and the MB (current macroblock) information decoded by the VLD. That is, the MVP acquires information on the predictor A, the predictor B, and the predictor C adjacent to the MB, and obtains each vector value (PMV A, PMV B, PMV C)) is converted by a function defined in the VC-1 format to obtain one vector value PMV.
当該MBの最終的なMVは、このPMVにビットストリームから復号された差分(DMV)を加算し、所定の範囲に収まるようにクリッピング処理して得られる。但し、PMVとPMV Aの差分の絶対値が仕様に定められたしきい値より大きい場合、またはPMVとPMV Cの差分の絶対値が仕様に定められたしきい値より大きい場合では、ビットストリーム中にHYBRIDPREDシンタックス要素が存在することが仕様に規定されている。 The final MV of the MB is obtained by adding a difference (DMV) decoded from the bit stream to this PMV and performing a clipping process so as to be within a predetermined range. However, PMV and PMV When the absolute value of the difference of A is larger than the threshold value specified in the specification, or PMV and PMV When the absolute value of the difference of C is larger than the threshold value defined in the specification, the specification specifies that the HYBRIDPRED syntax element is present in the bitstream.
HYBRIDPREDシンタックス要素は、1ビット固定長であり、これが0(論理的な0)の場合では、PMV=PMV AとPMVの値が設定し直され、これが1(論理的な1)の場合では、PMV=PMV CとPMVの値が設定し直される。このように更新されたPMVにビットストリームから復号された差分(DMV)を加算し、加算結果が所定の範囲に収まるようにクリッピング処理して最終的なMVが得られる。以上の処理がVC−1フォーマット特有のMV予測方式の概要であり、HYBRIDPREDシンタックス要素を利用してPMVを設定し直す機能がハイブリッド予測と呼ばれる。 The HYBRIDPRED syntax element has a fixed length of 1 bit, and when this is 0 (logical 0), PMV = PMV When the values of A and PMV are reset and this is 1 (logical 1), PMV = PMV The values of C and PMV are reset. The difference (DMV) decoded from the bit stream is added to the PMV updated in this way, and a final MV is obtained by performing clipping processing so that the addition result falls within a predetermined range. The above processing is an outline of the MV prediction method specific to the VC-1 format, and the function of resetting the PMV using the HYBRIDPRED syntax element is called hybrid prediction.
ハイブリッド予測は、全てのプロファイルのProgressivePピクチャと、Advanced ProfileのInterlaced fieldPピクチャにおいて行われる。Bピクチャや、Interlaced frame
Pピクチャでは行われない。言うまでもないが、MVのないI/BIピクチャでは行われない。ハイブリッド予測が行われる全てのプロファイルのProgressivePピクチャと、Advanced ProfileのInterlaced fieldPピクチャでは、1MVmodeのとき、HYBRIDP
REDシンタックス要素は、1MB当たりで1つ存在し、Mixed MVmodeのときHYBRIDPREDシンタックス要素は、1MB当たりで4個存在する。
Hybrid prediction is performed in Progressive P pictures of all profiles and Interlaced field P pictures of Advanced Profiles. B picture and Interlaced frame
This is not done for P pictures. Needless to say, this is not done for I / BI pictures without MV. For Progressive P pictures of all profiles for which hybrid prediction is performed and Interlaced field P pictures of Advanced Profile, HYBRIDP in 1MV mode
There is one RED syntax element per 1 MB, and there are four HYBRIDPRED syntax elements per 1 MB in Mixed MVmode.
図9は、規格書に記載のアルゴリズムに沿って実装されたMV復号化部32の構成を示す。MV復号化部32は、VLD41と、MVP42と、SDRAM(Synchronous Dynamic Random Access Memory)等のMV記憶領域43とから構成される。MVP42は、PMV算出部42aとMV算出部42bとを備えている。また、図10は、VLD41とMVP42との間のデータのやりとりを時間順に示す。
FIG. 9 shows a configuration of the
VLD41は、HYBRIDPREDシンタックス要素が存在する可能性のあるビットの手前まで復号を行い、それまでに得たピクチャパラメータをMVP42のPMV算出部42aに伝送し(図10中のステップST1)、さらに、MB情報(イントラ/1MV/4MVmode、DMV情報)をMVP42のMV算出部42bに出力し(ステップST2)、その時点で復号を停止する。
The
PMV算出部42aは、VLD41からのピクチャパラメータおよびMB情報と、MV記憶領域43に蓄積されている隣接MB/ブロックの3個のベクトル値(PMV A,PMV B,PMV C)とを使用してVC−1で定められた関数による変換によってPMVを得る。この方法がメジアン予測である。例えば、3個のベクトル値の中央値が選択される。MVP42は、PMVとPMV Aの差分の絶対値が仕様に定められた値より大きい場合、またはPMVとPMV Cの差分の絶対値が仕様に定められた値より大きい場合では、ビットストリーム中にHYBRIDPREDシンタックス要素がVLDに対する入力ストリーム中に存在すると判定し、判定結果を示す1ビットのフラグUSEDHYBRIDをVLD41に対して出力する(ステップST3)。
The
USEDHYBRIDを受け取ったVLD41は、MVP42がHYBRIDPREDシンタックス要素有りと判定した場合は、ビットストリームの復号停止位置直後の1ビットをHYBRIDPREDシンタックス要素としてMVP42に出力する(ステップST4)。MVP42がHYBRIDPREDシンタックス要素無しと判定した場合は、VLD41は、次のシンタックス要素の復号を再開する(ステップST5,ステップST6,・・・)。
The
USEDHYBRIDによってHYBRIDPREDシンタックス要素が有りと判定された場合には、ステップST4においてMVP42がHYBRIDPREDシンタックス要素を受け取る。MVP42は、HYBRIDPREDシンタックス要素が0の場合は、PMV=PMV AとPMVの値を更新し、HYBRIDPREDシンタックス要素が1の場合は、PMV=PMV CとPMVの値を更新する。更新されたPMVにビットストリームから復号されたDMVを加算し、所定の範囲に加算結果が収まるようにクリッピング処理が行われ、当該MBのMVが決定される。復号されたMVがMV記憶領域43に格納される。また、復号されたMVがMV記憶領域43から読み出され、動き補償のために使用される。
When it is determined by USEDHYBRID that the HYBRIDPRED syntax element is present, the
従来のMV予測装置においては、図10において、W1,W2,W3で示すようなデータ待ち時間が発生する。データ待ち時間W1は、MVP42がピクチャパラメータを受け取ってからMB情報を受け取るまでに発生する。データ待ち時間W2は、MVP42がHYBRIDPREDシンタックス要素の有無を判定し、VLD41が判定結果のフラグUSEDHYBRIDをMVP42から受け取るまでに発生する。データ待ち時間W3は、USEDHYBRIDをMVP42が出力してから次のデータをMVP42がVLD41から受け取るまでに発生する。
In the conventional MV prediction apparatus, data waiting times as indicated by W1, W2, and W3 in FIG. 10 occur. The data waiting time W1 occurs from when the
これらの待ち時間の中で、待ち時間W2は、HYBRIDPREDシンタックス要素の有無を判定するまで、復号を停止する時間であり、復号の相互依存を有するVC−1フォーマット特有のものである。MPEG−4や、H.264/AVCには、MV予測の機能があるが、VLDが復号のためにMVPの予測結果を必要としないので、MV復号において、VLDとMVP間に相互依存が起こることがない。 Among these waiting times, the waiting time W2 is a time for stopping the decoding until the presence / absence of the HYBRIDPRED syntax element is determined, and is specific to the VC-1 format having the interdependency of decoding. MPEG-4 or H.264 H.264 / AVC has a function of MV prediction, but since VLD does not require a prediction result of MVP for decoding, there is no interdependence between VLD and MVP in MV decoding.
したがって、この発明の目的は、可変長復号処理と動きベクトル予測処理の相互依存により発生する待ち時間を低減し、処理時間の短縮化が可能な動きベクトル復号化方法および復号化装置を提供することにある。 Accordingly, an object of the present invention is to provide a motion vector decoding method and a decoding apparatus capable of reducing the waiting time caused by the interdependence between the variable length decoding process and the motion vector prediction process and shortening the processing time. It is in.
上述した課題を解決するために、この発明は、カレントブロックの動きベクトルがカレントブロックに隣接する複数のプリディクタの動きベクトルから予測され、予測動きベクトルとカレントブロックの動きベクトルとの差分がエントロピー符号化され、エントロピー符号化データを含む入力ストリームから動きベクトルが復号化される動きベクトル復号化方法であって、
カレントブロックの予測動きベクトルを生成するために参照される複数のプリディクタがピクチャレイヤの情報(Progressive /Interlaced、NUMREF=0または1)と、マクロブロックレイヤの情報(1MV/4MV、Predictor flag=0または1)とによって規定され、
複数のプリディクタの動きベクトルの中央値を予測動きベクトルとして選択する第1の予測方法と、予測動きベクトルと所定のプリディクタの動きベクトルとの差分の絶対値が予め設定されたしきい値より大きい場合に、複数のプリディクタの動きベクトルの中で所定のプリディクタの動きベクトルを予測動きベクトルとして選択すると共に、HYBRIDPREDシンタックスが存在するようになされる第2の予測方法の何れかによって復号を行う動きベクトル復号化方法において、
マクロブロックレイヤの情報がない状態で、可能性のあるマクロブロックレイヤの情報のそれぞれと対応して予測動きベクトルを生成し、保持すると共に、生成された予測動きベクトルに対応して差分の絶対値が予め設定されたしきい値より大きいか否かを判定し、判定結果からHYBRIDPREDシンタックスの有無を示すフラグ情報USEDHYBRIDを生成し、生成したフラグ情報USEDHYBRIDをエントロピー符号化を復号するエントロピー復号化ステップに与え、
エントロピー復号化ステップにおいて、フラグ情報USEDHYBRIDに対応してHYBRIDPREDシンタックス要素の有無が決定され、エントロピー復号化ステップから、有ると決定された場合のHYBRIDPREDシンタックスと、マクロブロックレイヤの情報とが出力され、
有ると決定された場合のHYBRIDPREDシンタックスと、マクロブロックレイヤの情報とから最終的な予測動きベクトルを選択し、最終的な予測動きベクトルとエントロピー復号化ステップで得られた差分とを加算して動きベクトルを復号化する動きベクトル復号化ステップと
からなる動きベクトル復号化方法である。
In order to solve the above-mentioned problem, the present invention predicts a motion vector of a current block from motion vectors of a plurality of predictors adjacent to the current block, and entropy-encodes a difference between the predicted motion vector and the motion vector of the current block. A motion vector decoding method in which a motion vector is decoded from an input stream including entropy encoded data,
A plurality of Puridiku data is picture layer information referred to for generating the prediction motion vector of the current block (Progressive / Interlaced, NUMREF = 0 or 1), the macroblock layer information (1MV / 4MV, Predictor flag = 0 or 1) and it is defined by,
Threshold greater than the absolute value is set in advance of the difference between the first prediction method is selected as the predicted motion vector, a motion vector of the predicted motion vector and a predetermined Predictor median of motion vectors of a plurality of Puridiku data In this case, a motion to perform decoding by any one of the second prediction methods in which the HYBRIDPRED syntax is selected while selecting a motion vector of a predetermined predictor as a motion vector predictor from among a plurality of motion vectors of the predictor. In vector decoding method,
In the state of no information macroblock layer, possible to correspond to the respective information of the macroblock layer generates a predictive motion vector holds the absolute value of the difference corresponding to the predicted motion vector generated Entropy decoding step of determining whether or not is larger than a preset threshold , generating flag information USEDHYBRID indicating the presence or absence of HYBRIDPRED syntax from the determination result, and decoding the generated flag information USEDHYBRID with entropy coding To
In the entropy decoding step, presence or absence of the HYBRIDPRED syntax element is determined corresponding to the flag information USEDHYBRID , and the HYBRIDPRED syntax when it is determined to be present and the macroblock layer information are output from the entropy decoding step. ,
The final predicted motion vector is selected from the HYBRIDPRED syntax when it is determined to be present and the macroblock layer information, and the final predicted motion vector and the difference obtained in the entropy decoding step are added. A motion vector decoding method comprising: a motion vector decoding step for decoding a motion vector.
この発明は、カレントブロックの動きベクトルがカレントブロックに隣接する複数のプリディクタの動きベクトルから予測され、予測動きベクトルとカレントブロックの動きベクトルとの差分がエントロピー符号化され、エントロピー符号化データを含む入力ストリームから動きベクトルが復号化される動きベクトル復号化装置であって、
カレントブロックの予測動きベクトルを生成するために参照される複数のプリディクタがピクチャレイヤの情報(Progressive /Interlaced、NUMREF=0または1)と、マクロブロックレイヤの情報(1MV/4MV、Predictor flag=0または1)とによって規定され、
複数のプリディクタの動きベクトルの中央値を予測動きベクトルとして選択する第1の予測方法と、予測動きベクトルと所定のプリディクタの動きベクトルとの差分の絶対値が予め設定されたしきい値より大きい場合に、複数のプリディクタの動きベクトルの中で所定のプリディクタの動きベクトルを予測動きベクトルとして選択すると共に、HYBRIDPREDシンタックスが存在するようになされる第2の予測方法の何れかによって復号を行う動きベクトル復号化装置において、
マクロブロックレイヤの情報がない状態で、可能性のあるマクロブロックレイヤの情報のそれぞれと対応して予測動きベクトルを生成し、保持すると共に、生成された予測動きベクトルに対応して差分の絶対値が予め設定されたしきい値より大きいか否かを判定し、判定結果からHYBRIDPREDシンタックスの有無を示すフラグ情報USEDHYBRIDを生成し、生成したフラグ情報USEDHYBRIDをエントロピー符号化を復号するエントロピー復号化部に与え、
エントロピー復号化部において、フラグ情報USEDHYBRIDに対応してHYBRIDPREDシンタックス要素の有無が決定され、エントロピー復号化部から、有ると決定された場合のHYBRIDPREDシンタックスと、マクロブロックレイヤの情報とが出力され、
有ると決定された場合のHYBRIDPREDシンタックスと、マクロブロックレイヤの情報とから最終的な予測動きベクトルを選択し、最終的な予測動きベクトルとエントロピー復号化部で得られた差分とを加算して動きベクトルを復号化する動きベクトル復号化部と
復号化された動きベクトルを蓄積する記憶部と
からなる動きベクトル復号化装置である。
In the present invention, the motion vector of the current block is predicted from the motion vectors of a plurality of predictors adjacent to the current block, the difference between the predicted motion vector and the motion vector of the current block is entropy encoded, and the input includes entropy encoded data A motion vector decoding device for decoding a motion vector from a stream,
A plurality of Puridiku data is picture layer information referred to for generating the prediction motion vector of the current block (Progressive / Interlaced, NUMREF = 0 or 1), the macroblock layer information (1MV / 4MV, Predictor flag = 0 or 1) and it is defined by,
Threshold greater than the absolute value is set in advance of the difference between the first prediction method is selected as the predicted motion vector, a motion vector of the predicted motion vector and a predetermined Predictor median of motion vectors of a plurality of Puridiku data In this case, a motion to perform decoding by any one of the second prediction methods in which the HYBRIDPRED syntax is selected while selecting a motion vector of a predetermined predictor as a motion vector predictor from among a plurality of motion vectors of the predictor. In the vector decoding device,
In the state of no information macroblock layer, possible to correspond to the respective information of the macroblock layer generates a predictive motion vector holds the absolute value of the difference corresponding to the predicted motion vector generated There determines greater or not than a predetermined threshold, the determination result from generating flag information USEDHYBRID indicating the presence or absence of HYBRIDPRED syntax, entropy decoding unit the generated flag information USEDHYBRID decodes the entropy coding To
In the entropy decoding unit, presence / absence of the HYBRIDPRED syntax element is determined corresponding to the flag information USEDHYBRID , and the HYBRIDPRED syntax when it is determined to be present and the macroblock layer information are output from the entropy decoding unit. ,
The final predicted motion vector is selected from the HYBRIDPRED syntax when it is determined to be present and the macroblock layer information, and the final predicted motion vector and the difference obtained by the entropy decoding unit are added. A motion vector decoding device comprising: a motion vector decoding unit for decoding a motion vector; and a storage unit for storing the decoded motion vector.
この発明においては、動きベクトル復号化部において、マクロブロックレイヤの情報をエントロピー復号化部から受け取る前に、可能性のある全てのプリディクタのパターンに関して予測動きベクトルの生成処理を行い、プリディクタのパターンのそれぞれに関してHYBRIDPREDシンタックス要素の有無を示すフラグ情報をエントロピー復号化部に戻すことによって、エントロピー復号化の復号化処理の待ち時間を減らし、動きベクトルの復号に要する時間を短縮化する。 In this invention, before the motion vector decoding unit receives the macroblock layer information from the entropy decoding unit, the motion vector decoding unit performs prediction motion vector generation processing for all possible predictor patterns, and By returning flag information indicating the presence or absence of the HYBRIDPRED syntax element for each to the entropy decoding unit, the waiting time for the decoding process of entropy decoding is reduced, and the time required for decoding the motion vector is reduced.
以下、図面を参照してこの発明の一実施の形態について説明する。この一実施の形態は、VC−1フォーマットに対してこの発明を適用した例である。但し、VC−1フォーマット以外のフォーマットであっても、動きベクトル予測の結果からシンタックス要素の有無を判定し、判定結果に基づいてシンタックス要素を切り出す相互依存性を有する復号化の処理に対して、この発明を適用することができる。 An embodiment of the present invention will be described below with reference to the drawings. This embodiment is an example in which the present invention is applied to the VC-1 format. However, even in a format other than the VC-1 format, it is possible to determine whether or not there is a syntax element from the motion vector prediction result, and to perform a decoding process having interdependency that extracts the syntax element based on the determination result. Thus, the present invention can be applied.
図11に示すように、この発明によるMV(動きベクトル)復号化部50は、VLD(可変長復号化部)51と、MVP(動きベクトル予測部)52と、SDRAM等のMV記憶領域53とから構成される。MVP52は、PMV算出部52aと、セレクタ52bと、MV算出部52cとを備えている。また、図12は、VLD51とMVP52との間のデータのやりとりを時間順に示す。
As shown in FIG. 11, an MV (motion vector)
PMV算出部52aは、MV記憶領域53に蓄積されている復号済みのMVの中から予測に必要とされる隣接MB/ブロック(プリディクタ)のMVのベクトル値をメモリに読み込む。メモリに保持されている3個のベクトル値(PMV A,PMV B,PMV
C)とを使用してVC−1で定められた関数による変換例えば中央値を選択する方法によってPMVを得る。この場合、MB(マクロブロック情報)なしの条件下でPMVの算出がなされる。但し、ピクチャレイヤ以上の復号結果(Progressive,Interlaced field,NUMREF等)は与えられているものとする。例えばVLD51からのピクチャパラメータの情報
からピクチャレイヤの復号結果が分かる。すなわち、PMV算出部52aは、MV記憶領域53に格納されているプリディクタのMVを使用して可能性のある全てのプリディクタパターンに関してPMV(例えば最大で4個存在する)を予め算出し、HYBRIDPREDシンタックス要素の有無を判定する。複数のPMVの算出は、順次(直列)または並列の何れの処理で行っても良い。
The
C) is used to obtain the PMV by the conversion by the function defined by VC-1, for example, the method of selecting the median. In this case, the PMV is calculated under the condition of no MB (macroblock information). However, it is assumed that decoding results (Progressive, Interlaced field, NUMREF, etc.) beyond the picture layer are given. For example, the picture layer decoding result is known from the picture parameter information from the
上述したように、当該MBに隣接するプリディクタA、プリディクタBおよびプリディクタCのベクトル値をVC−1フォーマットで定められた関数により変換して一つのベクトル値PMVを得る。但し、PMVとPMV Aの差分の絶対値が仕様に定められた値より大きい場合、またはPMVとPMV Cの差分の絶対値が仕様に定められた値より大きい場合では、ビットストリーム中にHYBRIDPREDシンタックス要素が存在すると判定される。すなわち、HYBRIDPREDシンタックス要素が0(論理的な0)の場合では、PMV=PMV AとPMVの値が設定し直され、これが1(論理的な1)の場合では、PMV=PMV CとPMVの値が設定し直される。PMV算出部52aは、PMVを算出すると共に、各プリディクタのパターンに関して算出されたPMVに関してHYBRIDPREDシンタックス要素の有無を判定して、フラグを生成する。
As described above, the vector values of the predictor A, the predictor B, and the predictor C adjacent to the MB are converted by a function defined in the VC-1 format to obtain one vector value PMV. However, PMV and PMV When the absolute value of the difference of A is greater than the value specified in the specification, or PMV and PMV When the absolute value of the difference of C is larger than the value defined in the specification, it is determined that the HYBRIDPRED syntax element is present in the bitstream. That is, when the HYBRIDPRED syntax element is 0 (logical 0), PMV = PMV When the values of A and PMV are reset and this is 1 (logical 1), PMV = PMV The values of C and PMV are reset. The
そして、VLD51からMB情報を取得した後に、セレクタ52bによって本当のPMVが選択され、選択されたPMVがMV算出部52cに供給され、PMVにビットストリームから復号されたDMVを加算し、所定の範囲に加算結果が収まるようにクリッピング処理が行われ、当該MBのMVが決定される。復号されたMVがMV記憶領域53に格納される。また、復号されたMVがMV記憶領域53から読み出され、動き補償のために使用される。
Then, after acquiring MB information from the
MB情報には、カレントマクロブロック/ブロックが1MVmodeおよび4MVmodeの何れであるかの情報と、Predictor flag(1ビット)と、動きベクトルの差分DMVとが含まれる。したがって、PMV算出部52aは、MB情報なしでPMVの算出を行うために、PMV算出部52aは、4通りのプリディクタのパターンに関してPMVを算出して、4個のPMVをセレクタ52bに出力する。PMV算出部52aでは、算出された4個のPMVに対応する4ビット(b0,b1,b2,b3)のフラグUSEDHYBRIDが生成され、フラグb0〜b3がVLD51に供給される。算出された4個のPMVおよび4ビットのフラグUSEDHYBRIDは、そのMB/ブロックに関する処理が終了するまでPMV算出部52aが備えるメモリに保持される。
The MB information includes information indicating whether the current macroblock / block is 1 MV mode or 4 MV mode, a predictor flag (1 bit), and a motion vector difference DMV. Therefore, in order for the
フラグの4ビットの各ビットの意味は、下記の通りである。
b0:(1MV,Predictor flag=0)
b1:(4MV,Predictor flag=0)
b2:(1MV,Predictor flag=1)
b3:(4MV,Predictor flag=1)
The meaning of each of the 4 bits of the flag is as follows.
b0: (1MV, Predictor flag = 0)
b1: (4MV, Predictor flag = 0)
b2: (1MV, Predictor flag = 1)
b3: (4MV, Predictor flag = 1)
これらのビットb0〜b3のそれぞれが示す各場合において、HYBRIDPREDシンタックス要素が有りと判定されると、b0〜b3の内の対応するビットの値が1とされ、これが無しと判定されると、b0〜b3の内の対応するビットの値が0の値とされる。フラグUSEDHYBRIDを受け取ったVLD51は、MB情報とフラグとからHYBRIDPREDシンタックス要素を切り出して出力する。
In each case indicated by each of these bits b0 to b3, if it is determined that the HYBRIDPRED syntax element is present, the value of the corresponding bit in b0 to b3 is set to 1, and if it is determined that this is not present, The value of the corresponding bit in b0 to b3 is set to 0. Upon receiving the flag USEDHYBRID, the
セレクタ52bは、VLD51から出力されるMB情報(イントラ/1MV/4MVmode、DMV情報)とHYBRIDPREDシンタックス要素とからPMVの中の本当のPMVを選択してMV算出部52cに供給する。選択されたPMVにVLD51によって復号されたDMVを加算し、所定の範囲に加算結果が収まるようにクリッピング処理が行われ、当該MBのMVが決定される。復号されたMVがPMV算出部52aが備えるメモリに記憶されると共に、MV記憶領域53に格納される。また、復号されたMVがMV記憶領域53から読み出され、動き補償のために使用される。
The selector 52b selects the real PMV in the PMV from the MB information (intra / 1MV / 4MVmode, DMV information) output from the
図12のフローにしたがって説明すると、VLD51は、復号を行い、それまでに得たピクチャパラメータをMVP52のPMV算出部52aに伝送し(図12中のステップST11)。
Describing according to the flow of FIG. 12, the
PMV算出部52aは、想定される全ての条件でMV予測を行い、各条件毎にハイブリッド予測がされるか否かを判定することによって、HYBRIDPREDシンタックス要素の有無を決定して4ビットのフラグUSEDHYBRIDを生成する。ステップST12において、フラグUSEDHYBRIDがVLD51に対して供給される。
The
フラグUSEDHYBRIDを受け取ったVLD51は、入力ビットストリームから抽出したMB情報、Predictor flagで規定される条件に対応するフラグUSEDHYBRID中の1ビットに基づいて、HYBRIDPREDシンタックス要素の有無を決定する。HYBRIDPREDシンタックス要素有りの場合は、VLD51は、ビットストリームのMB情報と1ビットのHYBRIDPREDシンタックス要素とをMVP52に出力し、HYBRIDPREDシンタックス要素無しの場合は、VLD51は、ビットストリームのMB情報をMVP52に出力する(ステップST13)。このように、VLD51は、MB情報とHYBRIDPREDシンタックス要素とを一緒にMVP52に対して出力することができる。
The
MVP52は、ステップST12において、USEDHYBRID(4ビット)を出力してからVLD51からMB情報、HYBRIDPREDシンタックス要素(無い場合もある)を受け取るまでに、データ待ち時間W4が発生する。従来の処理(図9、図10)においては、VLDがMB情報を出力してからMVPからUSEDHYBRIDを入力してもらうまで、VLDが全く復号を行うことができない待ち時間が存在する。この発明は、MB情報とHYBRIDPREDシンタックス要素とを一緒にVLD51が出力することができ、かかる待ち時間を解消することができ、VLD51の処理が止まることがない。
In step ST12, the
MVP52のセレクタ52bは、マクロブロック情報およびHYBRIDPREDシンタックス要素とから一つのPMVを本当のPMVとして選択してMV算出部52cに出力する。この場合、MB情報をPMV算出部52aに供給し、セレクタ52bに対する制御信号をPMV算出部52aが生成しても良い。MV算出部52cは、PMVにDMVを加算し、所定の範囲に加算結果が収まるようにクリッピング処理が行われ、当該MBのMVが決定される。
The selector 52b of the
ここで、上述したPMV算出の処理に関する引数表を図13に示す。すなわち、PMV算出部52aが算出するPMVの種類が図13に示されている。ピクチャレイヤの情報と1MV/4MVの情報とによって、PMV算出処理が規定されている。1回のMV予測が以下のような引数の組で表される。但し、1MVmodeのときはblock=0と表記することにする。
Here, FIG. 13 shows an argument table relating to the above-described PMV calculation processing. That is, the types of PMVs calculated by the
(1MV/4MV,block,Predictor flag) (1MV / 4MV, block, Predictor flag)
上述した説明では、PMVが4個存在するものとして説明したが、ピクチャレイヤの情報が与えられることによって、実際に算出が必要がPMVの数は、最大で4個であり、より少ない1個または2個のPMVを算出すれば良いことが図13から分かる。ピクチャレイヤの情報には、各MBの1MV/4MVを示す1ビットの情報が1ピクチャ分まとめられて圧縮符号化されたビットプレーンが含まれている。したがって、PM算出部52aは、ピクチャパラメータを受け取ると、その中のビットプレーンの情報から各MBが1MV/4MVの何れであるかが分かる。但し、Raw modeの場合は、このことが当てはまらない。
In the above description, it is assumed that there are four PMVs. However, given the information of the picture layer, the number of PMVs that actually needs to be calculated is a maximum of four, and a smaller one or It can be seen from FIG. 13 that it is sufficient to calculate two PMVs. The picture layer information includes a bit plane in which 1-bit information indicating 1 MV / 4 MV of each MB is compressed and encoded for one picture. Therefore, when the
ピクチャレイヤおよびビットプレーンの情報を利用することによって、算出するPMVの数を減少させることができる。例えばProgressiveの場合では、Raw mode以外では、各
MB/ブロック当たり1個のPMVを算出すれば良い。
By using the information of the picture layer and the bit plane, the number of PMVs to be calculated can be reduced. For example, in the case of Progressive, except for Raw mode, one PMV may be calculated for each MB / block.
Interlaced field NUMREF=1の場合には、Predictor flagが0または1と変化する可能性があるので、1MV当たりPMV算出を2回行う必要がある。1MBでは、(1MV,0,0)、(1MV,0,1)の処理である。Interlaced field NUMREF=1で、4MVならば、1ブロック当たり2回ずつPMVの算出処理がなされる。 When Interlaced field NUMREF = 1, the Predictor flag may change to 0 or 1, so it is necessary to calculate PMV twice per MV. In 1 MB, the processing is (1MV, 0, 0), (1MV, 0, 1). If Interlaced field NUMREF = 1 and 4 MV, PMV calculation processing is performed twice per block.
一実施の形態においては、予めピクチャ内の全てのMBが1MV/4MVmodeの何れかであることが分かるので、PMVの種類を減少することができ、その結果、PMV算出の回数を減らすことができる。また、PMV算出を行わなかった場合(プリディクタの組合せ)に対応するUSEDHYBRIDフラグのビットは、VLD51において参照されることがないので、どのような値であっても良い。
In one embodiment, since it is known in advance that all MBs in a picture are either 1MV / 4MVmode, the type of PMV can be reduced, and as a result, the number of times of PMV calculation can be reduced. . Further, the bit of the USEDHYBRID flag corresponding to the case where PMV calculation is not performed (the combination of the predictors) is not referred to in the
最多の4個のPMVを算出する必要があるのは、図14に示すように、MBレイヤの復号をしなければ1MV/MVmodeが確定しないRaw modeのときである。すなわち、1MV/4MVmodeと、Predictor flagの0または1との可能性があるために、4種類のPMVを算出する必要がある。Predictor flagは、各MBを復号するまで確定できない。Predictor flagのビットによって、PMVと乗算する係数の値が変化する。
It is necessary to calculate the maximum number of four PMVs in the Raw mode in which 1 MV / MV mode is not fixed unless the MB layer is decoded as shown in FIG. That is, since there is a possibility of 1MV / 4MVmode and
上述したこの発明の一実施の形態は、予め(先行して)PMVを算出するアルゴリズムであり、PMVの算出処理のために、プリディクタ保持用メモリの容量をなるべく少なくし、また、MV記憶領域53から効率的にMVを読み出す必要がある。以下に、プリディクタを読み込む処理について説明する。 The above-described embodiment of the present invention is an algorithm for calculating the PMV in advance (preceding). For the PMV calculation process, the capacity of the predictor holding memory is reduced as much as possible, and the MV storage area 53 is used. It is necessary to efficiently read MV from Hereinafter, the process of reading the predictor will be described.
図15および図16において、斜線を付したMBがMV記憶領域53から取得済みのMVであり、実線で囲んだMBがカレントMBであり、点線で囲んだMBが復号前のMBを示す。カレントMBが属する行(スライスと呼ばれる場合もある)では、カレントMBの左側のMBがプリディクタCとされる。カレントMBの属する行の上の行に属し、カレントMBの右上のMBがプリディクタAとされ、上の行に属し、カレントMBの右上のMBがプリディクタBとされる。 15 and FIG. 16, the hatched MB is the MV acquired from the MV storage area 53, the MB surrounded by the solid line is the current MB, and the MB surrounded by the dotted line indicates the MB before decoding. In the row to which the current MB belongs (sometimes called a slice), the left MB of the current MB is set as the predictor C. The upper right MB of the current MB belongs to the row above the row to which the current MB belongs, and the predictor A is the upper right MB of the current MB.
右側に1MBシフトした次のカレントMBの処理においては、MV記憶領域53から新たに取得するのは、カレントMBの右上のMB(プリディクタB)のMV情報のみで良い。すなわち、PMVの算出のために、1MB当たり1MB分のMVの読み込みを行えば良い。 In the processing of the next current MB shifted to the right by 1 MB, only the MV information of the upper right MB (predictor B) of the current MB need be acquired from the MV storage area 53. That is, in order to calculate PMV, it is only necessary to read 1 MB of MV per 1 MB.
カレントMBが画面の右端の場合では、右上のMBが存在しないので、上の行の上および左上のMBがプリディクタAおよびBとしてそれぞれ使用され、同じ行の左のMBがプリディクタCとして使用される。これらは、既に取得済みのMBである。また、カレントMBが右端の場合では、図16に示すように、カレントMBと同じ行の左端のMBのMVを読み込む。次に、カレントMBが下の行の左端の位置になった場合に、MV記憶領域53から新たに右上のMB(プリディクタB)のMVを読み込むだけで、PMVの算出のためのプリディクタのMVが得られる。 When the current MB is the right end of the screen, there is no upper right MB, so the upper and upper left MBs are used as predictors A and B, respectively, and the left MB in the same row is used as the predictor C. . These are already acquired MBs. If the current MB is at the right end, as shown in FIG. 16, the MV of the left end MB in the same row as the current MB is read. Next, when the current MB is at the left end position of the lower row, the MV of the predictor for calculating PMV is simply read from the MV storage area 53 by reading the MV of the upper right MB (Predictor B). can get.
図15および図16の処理においては、カレントMBの位置が上の行の右端となってから、カレントMBの位置が同じ行の右端の一つ前の位置となるまでは、カレントMBが含まれる行の上の行のみからMV記憶領域53からMVが読み込まれる。すなわち、一つの行のみからMVが読み込まれるので、アクセスを容易、高速とすることができる。なお、VC−1フォーマットにおいては、ピクチャの最上部の行では、MV予測が行われず、(PMV=0ベクトル)と定められているので、ピクチャの全ての行において、行の境界を越えてMVを取得しなくて良い。 In the processing of FIG. 15 and FIG. 16, the current MB is included from the time when the position of the current MB becomes the right end of the upper line until the position of the current MB becomes the position immediately before the right end of the same line. The MV is read from the MV storage area 53 only from the line above the line. That is, since MV is read from only one line, access can be facilitated and speeded up. In the VC-1 format, MV prediction is not performed in the uppermost row of the picture, and (PMV = 0 vector) is defined. Therefore, in all the rows of the picture, the MV exceeds the row boundary. You don't have to get
以上、この発明の一実施の形態について具体的に説明したが、この発明は、上述した一実施の形態に限定されるものではなく、この発明の技術的思想に基づく各種の変形が可能である。例えばこの発明は、VC−1フォーマットに限らず、動きベクトル予測において、メジアン予測とハイブリッド予測のように、2種類の予測方式が可能とされ、予測方式を判定してシンタックス要素を切り出すために、予測動きベクトルを算出し、算出された予測動きベクトルを使用する方式に対して適用することができる。 Although one embodiment of the present invention has been specifically described above, the present invention is not limited to the above-described embodiment, and various modifications based on the technical idea of the present invention are possible. . For example, the present invention is not limited to the VC-1 format, and in motion vector prediction, two types of prediction methods are possible, such as median prediction and hybrid prediction. In order to determine a prediction method and extract syntax elements This can be applied to a method of calculating a predicted motion vector and using the calculated predicted motion vector.
1 イントラ予測符号化部
2 インター予測符号化部
21 イントラ予測復号化部
22 インター予測復号化部
32,50 動きベクトル復号化部
41,51 VLD
42,52 MVP
42a,52a PMV算出部
42b,52c MV算出部
52b セレクタ
43,53 MV記憶領域
DESCRIPTION OF
42,52 MVP
42a, 52a
Claims (6)
上記カレントブロックの予測動きベクトルを生成するために参照される複数の上記プリディクタがピクチャレイヤの情報(Progressive /Interlaced、NUMREF=0または1)と、マクロブロックレイヤの情報(1MV/4MV、Predictor flag=0または1)とによって規定され、
複数の上記プリディクタの動きベクトルの中央値を予測動きベクトルとして選択する第1の予測方法と、上記予測動きベクトルと所定の上記プリディクタの動きベクトルとの差分の絶対値が予め設定されたしきい値より大きい場合に、複数の上記プリディクタの動きベクトルの中で所定の上記プリディクタの動きベクトルを上記予測動きベクトルとして選択すると共に、HYBRIDPREDシンタックスが存在するようになされる第2の予測方法の何れかによって復号を行う動きベクトル復号化方法において、
上記マクロブロックレイヤの情報がない状態で、可能性のある上記マクロブロックレイヤの情報のそれぞれと対応して上記予測動きベクトルを生成し、保持すると共に、生成された上記予測動きベクトルに対応して上記差分の絶対値が予め設定されたしきい値より大きいか否かを判定し、判定結果から上記HYBRIDPREDシンタックスの有無を示すフラグ情報USEDHYBRIDを生成し、生成した上記フラグ情報USEDHYBRIDを上記エントロピー符号化を復号するエントロピー復号化ステップに与え、
上記エントロピー復号化ステップにおいて、上記フラグ情報USEDHYBRIDに対応して上記HYBRIDPREDシンタックス要素の有無が決定され、上記エントロピー復号化ステップから、有ると決定された場合の上記HYBRIDPREDシンタックスと、上記マクロブロックレイヤの情報とが出力され、
上記有ると決定された場合の上記HYBRIDPREDシンタックスと、上記マクロブロックレイヤの情報とから最終的な予測動きベクトルを選択し、上記最終的な予測動きベクトルと上記エントロピー復号化ステップで得られた差分とを加算して動きベクトルを復号化する動きベクトル復号化ステップと
からなる動きベクトル復号化方法。 An input stream in which a motion vector of the current block is predicted from motion vectors of a plurality of predictors adjacent to the current block, a difference between the predicted motion vector and the motion vector of the current block is entropy encoded, and includes the entropy encoded data A motion vector decoding method in which the motion vector is decoded from:
Information of a plurality of the Puridiku data is the picture layer to be referred for generating a predictive motion vector of the current block (Progressive / Interlaced, NUMREF = 0 or 1) and, in the macroblock layer information (1MV / 4MV, Predictor flag = it is defined by 0 or 1) and,
First prediction methods and the threshold an absolute value of the difference is preset between the motion vector of the prediction motion vector and predetermined the Predictor selecting a median of motion vectors of a plurality of the Puridiku data as the predicted motion vector Any of the second prediction methods in which a predetermined motion vector of the predictor is selected as the predicted motion vector from among the plurality of motion vectors of the predictor and the HYBRIDPRED syntax is present when the value is larger than the value. In a motion vector decoding method for performing decoding by
In the state of no information the macroblock layer, possibly corresponding with each information of the macroblock layer generates the predictive motion vector, and holds, in correspondence with the generated the predicted motion vector It is determined whether or not the absolute value of the difference is larger than a preset threshold value, flag information USEDHYBRID indicating the presence or absence of the HYBRIDPRED syntax is generated from the determination result, and the generated flag information USEDHYBRID is the entropy code. The entropy decoding step for decoding
In the entropy decoding step, the presence or absence of the HYBRIDPRED syntax element is determined corresponding to the flag information USEDHYBRID , and the HYBRIDPRED syntax when determined to be present from the entropy decoding step , and the macroblock layer Is output and
And the HYBRIDPRED syntax when it is determined that the there, select the final prediction motion vector from the information of the macroblock layer, obtained above Symbol final prediction motion vector and the entropy decoding step A motion vector decoding method comprising: a motion vector decoding step of adding a difference and decoding a motion vector.
上記カレントブロックの予測動きベクトルを生成するために参照される複数の上記プリディクタがピクチャレイヤの情報(Progressive /Interlaced、NUMREF=0または1)と、マクロブロックレイヤの情報(1MV/4MV、Predictor flag=0または1)とによって規定され、
複数の上記プリディクタの動きベクトルの中央値を予測動きベクトルとして選択する第1の予測方法と、上記予測動きベクトルと所定の上記プリディクタの動きベクトルとの差分の絶対値が予め設定されたしきい値より大きい場合に、複数の上記プリディクタの動きベクトルの中で所定の上記プリディクタの動きベクトルを上記予測動きベクトルとして選択すると共に、HYBRIDPREDシンタックスが存在するようになされる第2の予測方法の何れかによって復号を行う動きベクトル復号化装置において、
上記マクロブロックレイヤの情報がない状態で、可能性のある上記マクロブロックレイヤの情報のそれぞれと対応して上記予測動きベクトルを生成し、保持すると共に、生成された上記予測動きベクトルに対応して上記差分の絶対値が予め設定されたしきい値より大きいか否かを判定し、判定結果から上記HYBRIDPREDシンタックスの有無を示すフラグ情報USEDHYBRIDを生成し、生成した上記フラグ情報USEDHYBRIDを上記エントロピー符号化を復号するエントロピー復号化部に与え、
上記エントロピー復号化部において、上記フラグ情報USEDHYBRIDに対応して上記HYBRIDPREDシンタックス要素の有無が決定され、上記エントロピー復号化部から、有ると決定された場合の上記HYBRIDPREDシンタックスと、上記マクロブロックレイヤの情報とが出力され、
上記有ると決定された場合の上記HYBRIDPREDシンタックスと、上記マクロブロックレイヤの情報とから最終的な予測動きベクトルを選択し、上記最終的な予測動きベクトルと上記エントロピー復号化部で得られた差分とを加算して動きベクトルを復号化する動きベクトル復号化部と
復号化された動きベクトルを蓄積する記憶部と
からなる動きベクトル復号化装置。 An input stream in which a motion vector of the current block is predicted from motion vectors of a plurality of predictors adjacent to the current block, a difference between the predicted motion vector and the motion vector of the current block is entropy encoded, and includes the entropy encoded data A motion vector decoding device for decoding the motion vector from
Information of a plurality of the Puridiku data is the picture layer to be referred for generating a predictive motion vector of the current block (Progressive / Interlaced, NUMREF = 0 or 1) and, in the macroblock layer information (1MV / 4MV, Predictor flag = it is defined by 0 or 1) and,
First prediction methods and the threshold an absolute value of the difference is preset between the motion vector of the prediction motion vector and predetermined the Predictor selecting a median of motion vectors of a plurality of the Puridiku data as the predicted motion vector Any of the second prediction methods in which a predetermined motion vector of the predictor is selected as the predicted motion vector from among the plurality of motion vectors of the predictor and the HYBRIDPRED syntax is present when the value is larger than the value. In a motion vector decoding device that performs decoding according to
In the state of no information the macroblock layer, possibly corresponding with each information of the macroblock layer generates the predictive motion vector, and holds, in correspondence with the generated the predicted motion vector It is determined whether or not the absolute value of the difference is larger than a preset threshold value, flag information USEDHYBRID indicating the presence or absence of the HYBRIDPRED syntax is generated from the determination result, and the generated flag information USEDHYBRID is the entropy code. To the entropy decoder that decodes
In the entropy decoding unit, the presence or absence of the HYBRIDPRED syntax element is determined corresponding to the flag information USEDHYBRID , and the HYBRIDPRED syntax in the case where it is determined by the entropy decoding unit and the macroblock layer Is output and
And the HYBRIDPRED syntax when it is determined that the there, select the final prediction motion vector from the information of the macroblock layer, obtained above Symbol final prediction motion vector and the entropy decoding unit A motion vector decoding device comprising: a motion vector decoding unit that adds a difference to decode a motion vector; and a storage unit that accumulates the decoded motion vector.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006156634A JP4760551B2 (en) | 2006-06-05 | 2006-06-05 | Motion vector decoding method and decoding apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006156634A JP4760551B2 (en) | 2006-06-05 | 2006-06-05 | Motion vector decoding method and decoding apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007325230A JP2007325230A (en) | 2007-12-13 |
JP4760551B2 true JP4760551B2 (en) | 2011-08-31 |
Family
ID=38857598
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006156634A Expired - Fee Related JP4760551B2 (en) | 2006-06-05 | 2006-06-05 | Motion vector decoding method and decoding apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4760551B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4868539B2 (en) * | 2008-03-03 | 2012-02-01 | Kddi株式会社 | Video encoding apparatus and decoding apparatus |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7567617B2 (en) * | 2003-09-07 | 2009-07-28 | Microsoft Corporation | Predicting motion vectors for fields of forward-predicted interlaced video frames |
US7599438B2 (en) * | 2003-09-07 | 2009-10-06 | Microsoft Corporation | Motion vector block pattern coding and decoding |
-
2006
- 2006-06-05 JP JP2006156634A patent/JP4760551B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2007325230A (en) | 2007-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12132936B2 (en) | Image processing device and image processing method | |
CN105379284B (en) | Moving picture encoding device and method of operating the same | |
JP4325708B2 (en) | Data processing device, data processing method and data processing program, encoding device, encoding method and encoding program, and decoding device, decoding method and decoding program | |
US9338457B2 (en) | Method and apparatus for encoding image information, and method and apparatus for decoding image information | |
US20030095603A1 (en) | Reduced-complexity video decoding using larger pixel-grid motion compensation | |
US20120076203A1 (en) | Video encoding device, video decoding device, video encoding method, and video decoding method | |
JP2004140473A (en) | Image information coding apparatus, decoding apparatus and method for coding image information, method for decoding | |
JP5795525B2 (en) | Image encoding method, image decoding method, image encoding device, image decoding device, image encoding program, and image decoding program | |
JP5560009B2 (en) | Video encoding device | |
US20070133689A1 (en) | Low-cost motion estimation apparatus and method thereof | |
JP4360093B2 (en) | Image processing apparatus and encoding apparatus and methods thereof | |
JP2012080213A (en) | Moving image encoding apparatus, moving image decoding apparatus, moving image encoding method and moving image decoding method | |
JP4760552B2 (en) | Motion vector decoding method and decoding apparatus | |
KR101380460B1 (en) | Image processing apparatus and image processing method | |
JP2008004984A (en) | Image processor and method, program, and recording medium | |
US20090257497A1 (en) | Moving image processing system, encoding device, and decoding device | |
WO2012056924A1 (en) | Image processing device and image processing method | |
JP4760551B2 (en) | Motion vector decoding method and decoding apparatus | |
JP4802928B2 (en) | Image data processing device | |
JP4100067B2 (en) | Image information conversion method and image information conversion apparatus | |
JP2003087797A (en) | Apparatus and method for picture information conversion, picture information conversion program, and recording medium | |
JP3590976B2 (en) | Video compression device | |
JP2000350214A (en) | Method and device for movement compensating predictive encoding | |
KR20090108567A (en) | Moving image processing system, encoding device, encoding method, decoding device, decoding method, and storage medium | |
JP2004056475A (en) | Picture information conversion method and picture information converter |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090430 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100928 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101005 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101206 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110523 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140617 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140617 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |