JP6513847B2 - Video coding method - Google Patents

Video coding method Download PDF

Info

Publication number
JP6513847B2
JP6513847B2 JP2018048977A JP2018048977A JP6513847B2 JP 6513847 B2 JP6513847 B2 JP 6513847B2 JP 2018048977 A JP2018048977 A JP 2018048977A JP 2018048977 A JP2018048977 A JP 2018048977A JP 6513847 B2 JP6513847 B2 JP 6513847B2
Authority
JP
Japan
Prior art keywords
block
prediction
motion vector
frame
picture
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 - Lifetime
Application number
JP2018048977A
Other languages
Japanese (ja)
Other versions
JP2018129835A (en
Inventor
鈴木 芳典
芳典 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Maxell Ltd
Original Assignee
Maxell Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Maxell Ltd filed Critical Maxell Ltd
Publication of JP2018129835A publication Critical patent/JP2018129835A/en
Application granted granted Critical
Publication of JP6513847B2 publication Critical patent/JP6513847B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods 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
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K999/00PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS dummy group
    • H05K999/99PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS dummy group dummy group

Description

本発明は、圧縮動画像データの符号化・復号化技術に係り、特にブロック単位での符号・復号化の技術に関する。   The present invention relates to encoding / decoding techniques for compressed moving image data, and more particularly to techniques for encoding / decoding in block units.

ブロック単位で符号化・復号化処理を行う動画像の符号化・復号化方法の概要について説明する。動画像の1フレームは、図3に示すように、1個の輝度信号(Y信号:61)と2個の色差信号(Cr信号:62,Cb信号:63)にて構成されており、色差信号の画像サイズは縦横とも輝度信号の1/2となる。一般のビデオ規格では、動画像の各フレームを図3に示すような小ブロックに分割し、マクロブロックと呼ばれるブロック単位で再生処理を行う。図5にマクロブロックの構造を示す。マクロブロックは16x16画素の1個のY信号ブロック30と、それと空間的に一致する8x8画素のCr信号ブロック31ならびにCb信号ブロック31にて構成されている。   An outline of a moving image encoding / decoding method for performing encoding / decoding processing in block units will be described. As shown in FIG. 3, one frame of a moving image is composed of one luminance signal (Y signal: 61) and two color difference signals (Cr signal: 62, Cb signal: 63). The image size of the signal is 1/2 of the luminance signal in both vertical and horizontal directions. In a general video standard, each frame of a moving image is divided into small blocks as shown in FIG. 3, and reproduction processing is performed in block units called macroblocks. FIG. 5 shows the structure of the macroblock. The macro block is composed of one Y signal block 30 of 16 × 16 pixels, and a Cr signal block 31 and a Cb signal block 31 of 8 × 8 pixels which spatially coincide with each other.

ビデオの符号化は、上記に示したマクロブロック単位で処理される。符号化方法には、大きく分けて2種類あり、それぞれ、イントラ符号化(イントラモード)、予測符号化(インターモード)と呼ばれている。イントラ符号化は、符号化対象の入力マクロブロック画像に対して、あるいは入力マクロブロック画像に空間予測を施して生成した予測マクロブロック画像と入力マクロブロック画像との間で差分を取った誤差マクロブロック画像に対してDCTを施し、各変換係数を量子化・符号化する空間方向のデータ圧縮方法である。このイントラ符号化は、前フレームに似通った部分がないマクロブロック(第1符号化フレームも含む)や、DCTに伴う蓄積演算誤差を解消したい部分等に配置される。   Video encoding is processed on a macroblock basis as indicated above. The encoding method is roughly divided into two types, which are called intra encoding (intra mode) and predictive encoding (inter mode). Intra coding is an error macroblock obtained by taking a difference between a predicted macroblock image generated by performing spatial prediction on an input macroblock image to be encoded or on the input macroblock image and the input macroblock image. It is a data compression method in the spatial direction that applies DCT to an image and quantizes and encodes each transform coefficient. This intra coding is arranged in a macro block (also including the first coded frame) having no part similar to the previous frame, a part where it is desired to eliminate accumulated operation error accompanying DCT, or the like.

予測符号化のアルゴリズムは、MC−DCT(動き補償−離散コサイン変換)と呼ばれている。動き補償とは、参照フレームから対象マクロブロックの内容と似通った部分を検索し、その動き量(動きベクトル)を符号化する時間方向の圧縮技術である。通常は、マクロブロックを更に小ブロックに分割し、小ブロック毎に動きベクトルを算出する。例えば、MPEG−4 Part 10(Advanced Video Coding)では、動き補償を行う際のマクロブロック分割タイプ(輝度成分)を図7のように考える。基本はタイプ51〜タイプ54の4種類である。タイプ54の場合には、4個の8×8ブロック54−0〜54−3それぞれについて、更にタイプ54a,54b,54c,54dとイントラ符号化の5種類から選択する構造となっている。各小ブロックにおける動きベクトルの検出方法としては、ブロック内の予測誤差信号の絶対値和あるいは2乗誤差和が小さい部分を選択する。演算速度を重要とする場合には絶対値和、符号化効率を追求する場合には2乗誤差和を使用する。さらに、符号化効率を追求する場合には符号量を2乗誤差和の評価値に換算し、予測誤差と符号量の両者を用いて最適な符号化モードと動き量を計算する方法が適用されることもある。   The algorithm of predictive coding is called MC-DCT (Motion Compensated-Discrete Cosine Transform). Motion compensation is a time-direction compression technique that searches for a portion similar to the content of the target macroblock from the reference frame and encodes the amount of motion (motion vector). Usually, a macroblock is further divided into small blocks, and a motion vector is calculated for each small block. For example, in MPEG-4 Part 10 (Advanced Video Coding), a macroblock division type (luminance component) at the time of motion compensation is considered as shown in FIG. The basics are four types of type 51 to type 54. In the case of the type 54, the structure is such that each of the four 8 × 8 blocks 54-0 to 54-3 is further selected from the types 54a, 54b, 54c, 54d and five types of intra coding. As a method of detecting a motion vector in each small block, a portion in which the sum of absolute values or the sum of squared errors of prediction error signals in the block is small is selected. When the calculation speed is important, the sum of absolute values is used, and when the coding efficiency is sought, the sum of squared errors is used. Furthermore, in the case of pursuing coding efficiency, the method of converting the code amount into the evaluation value of the sum of squared errors and calculating the optimal coding mode and motion amount using both the prediction error and the code amount is applied. Sometimes.

図4に1ブロックにおける動き補償の処理構造を示す。図4は、太枠で囲んだ現フレーム71の輝度信号ブロック72について、前フレーム73(参照フレーム)上の予測ブロック75と動きベクトル76を示した図である。動きベクトル76とは、現フレームの太枠ブロックに対して空間的に同位置に相当する前フレーム上のブロック74(破線)から、前フレーム上の予測ブロック75領域までの移動分を示している(色差信号用の動きベクトル長は、輝度信号の半分とし、符号化はしない)。この動き補償の後、複数の予測ブロックから構成される予測マクロブロック画像と入力マクロブロック画像との間で差分を取った誤差マクロブロック画像に対してDCTを施し、各変換係数を量子化・符号化する。さらに検出したマクロブロック内の動きベクトルも符号化される。隣接するブロック間の動きベクトルは近い値を持つため、通常、隣接ブロックの動きベクトルとの差分値を符号化する。   FIG. 4 shows the processing structure of motion compensation in one block. FIG. 4 is a diagram showing the prediction block 75 and the motion vector 76 on the previous frame 73 (reference frame) for the luminance signal block 72 of the current frame 71 surrounded by a thick frame. The motion vector 76 indicates the movement from the block 74 (broken line) on the previous frame corresponding to the same position spatially with respect to the thick frame block of the current frame to the region of the predicted block 75 on the previous frame. (The motion vector length for the color difference signal is half that of the luminance signal and is not encoded.) After this motion compensation, DCT is performed on the error macroblock image obtained by taking the difference between the prediction macroblock image composed of a plurality of prediction blocks and the input macroblock image, and the transform coefficients are quantized and coded. Turn Furthermore, the motion vector in the detected macroblock is also encoded. Since motion vectors between adjacent blocks have close values, normally, a difference value between the motion vector of the adjacent block and that of the adjacent block is encoded.

予測符号化の動き補償方法としては、時間的に過去のフレームを参照フレームとしてMCを行う前方向予測符号化のほかに、時間的に過去と未来のフレームを参照フレームとしてMCを行う双方向予測符号化がある。上記に示した前方向予測符号化の動き補償では、前方予測のみを扱うが、双方向符号化の動き補償では、前方予測(Forward Prediction)の他に、後方予測(Backward Prediction)、前方予測ブロックと後方予測ブロック内の各画素に内挿処理を施して内挿予測ブロックを生成する双方向予測(bi−directional Prediction)、ならびに時間的に未来のフレームから過去のフレームへの動きベクトルを利用して双方向予測を行う直接予測(Direct)を扱う。前方予測、後方予測ならびに双方向予測モードでは、前方向の動きベクトルに対応する動きベクトル、後方向の動きベクトルに対応する動きベクトル、前方向の動きベクトルと後方向の動きベクトルに対応する動きベクトルを、それぞれ符号化するが、このDirectモードでは動きベクトルの符号化は必要としない。図9にDirectモードの予測概念を示す。図に示すように、まず、現フレーム120上の予測対象ブロック121と空間的に同一位置にあたる後方向の参照フレーム130上のブロック(131,collocated−block)の前方向動きベクトル132を時間的なフレーム位置の割合で前方向動きベクトル122と後方向動きベクトル123に換算する。そして、これらの換算動きベクトルを用いて双方向予測と同様の内挿処理を施す。   As a motion compensation method for predictive coding, bidirectional prediction in which MC is performed using temporally past and future frames as a reference frame in addition to forward predictive coding that performs MC using temporally past frames as a reference frame There is coding. In the motion compensation of the forward prediction coding described above, only forward prediction is dealt with, but in the motion compensation of bidirectional coding, in addition to Forward Prediction, Backward Prediction, Forward Prediction Block And bi-directional prediction that interpolates each pixel in the backward prediction block to generate an interpolated prediction block, as well as using a motion vector from a temporally future frame to a past frame Handle direct prediction (Direct) that performs bi-directional prediction. In forward prediction, backward prediction, and bidirectional prediction modes, motion vectors corresponding to forward motion vectors, motion vectors corresponding to backward motion vectors, motion vectors corresponding to forward motion vectors and backward motion vectors , But does not require motion vector coding in this Direct mode. FIG. 9 shows the prediction concept of the Direct mode. As shown in the figure, first, the forward motion vector 132 of the block (131, collocated-block) on the backward reference frame 130 at the same spatial position as the prediction target block 121 on the current frame 120 is temporally The forward motion vector 122 and the backward motion vector 123 are converted at a ratio of the frame position. Then, interpolation processing similar to bidirectional prediction is performed using these converted motion vectors.

全てのマクロブロックに対してイントラ符号化を適用したフレームをI−picture、前方向予測符号化あるいはイントラ符号化にて構成されるフレームをP−picture、双方向符号化あるいはイントラ符号化にて構成されるフレームをB−pictureと呼ぶ。   A frame in which intra coding is applied to all macroblocks is configured by I-picture, a frame configured by forward prediction coding or intra coding is configured by P-picture, bidirectional coding or intra coding The frame to be sent is called B-picture.

ここまでは、一般的な符号化・復号化方法について説明してきたが、近年の符号化・復号化方法では、選択の自由度を広げる機能が適用されている。以下に、新しい機能についていくつか説明する。これらの機能は、MPEG−4 Part 10(Advanced Video Coding)でも検討されている。   So far, general encoding / decoding methods have been described, but in recent encoding / decoding methods, the function of expanding the degree of freedom of selection is applied. Here are some of the new features. These functions are also considered in MPEG-4 Part 10 (Advanced Video Coding).

1.複数参照フレーム
上記では、動き補償に用いる参照フレームの数をP−pictureで1枚、B−pictureで過去フレーム(forward reference picture)と未来フレーム(backward reference picture)の2枚としてきた。しかしながら、過去方向と未来方向の参照フレームとして、それぞれ複数枚を用意し、マクロブロック単位やマクロブロックを分割した小ブロック単位で異なる参照フレームを選択する方法がある。また、従来は、参照フレームは、I−pictureかP−pictureであったが、B−pictureをreference pictureとして選択することも可能とされている。
1. Multiple Reference Frames In the above, the number of reference frames used for motion compensation is one in P-picture, and two in B-picture: forward reference picture and backward reference picture. However, there is a method of preparing a plurality of frames as reference frames in the past direction and in the future direction, and selecting different reference frames in units of macro blocks or small blocks obtained by dividing macro blocks. Also, conventionally, the reference frame is I-picture or P-picture, but it is also possible to select B-picture as a reference picture.

2.2方向参照フレーム予測
複数参照フレームにおけるbackward reference pictureの候補に、時間的に過去方向のフレームを含めることを可能とする。この方法ではbackward reference pictureがすべて時間的に過去方向のフレームであることも許される。そのため、総称としてBi−directionalの替わりに、Bi−predictiveという言葉が用いられる。2個の参照フレーム140,150が共に時間的に過去のフレームまたは共に未来のフレームの場合には、現フレームから遠い参照フレーム150に対する動きベクトル127の符号化方法が変更される。図10に示すように、現フレーム121に近い参照フレーム140に対する動きベクトル124を時間的なフレーム位置の割合で換算した動きベクトル125と動きベクトル127との差分ベクトル126が水平・垂直成分毎に符号化される。
2.2 Direction Reference Frame Prediction It is possible to include temporally past frames as candidates for backward reference picture in multiple reference frames. In this method, it is also permitted that all backward reference pictures are temporally past frames. Therefore, the term Bi-predictive is used in place of Bi-directional as a generic term. When the two reference frames 140 and 150 are both temporally past frames or both future frames, the coding method of the motion vector 127 for the reference frame 150 far from the current frame is changed. As shown in FIG. 10, a difference vector 126 between the motion vector 125 and the motion vector 127 obtained by converting the motion vector 124 with respect to the reference frame 140 close to the current frame 121 at a temporal frame position ratio Be

3.符号化/復号化順序の変更
従来は、各フレームの処理順序はI−pictureとP−pictureは表示順で、時間的に2個のI/P−picture間に位置する連続するB−pictureが後者のI/P−pictureの直後に続くという図11のフォーマットに従っていた。しかしながら、新しい機能では、許容される表示遅延の範囲であれば、この処理順に限定されない。また、Bi−predictiveの概念を使用する場合には、B−pictureは、後方予測のための参照フレームを持たない場合でも発生し得る。なお、上記の表示順序は、ビデオデータのデータヘッダ情報として符号化されるか、あるいはビデオデータの上位概念にあたり、ビデオデータとオーディオ・音声データの同期処理や、データの分割配信を司る通信レイヤやファイルフォーマットが管理しているため、符号化・復号化処理順序の変更に伴う表示ずれの問題は発生しない。
3. Changing the Coding / Decoding Order Conventionally, the processing order of each frame is that I-picture and P-picture are in display order, and consecutive B-pictures located between two I / P-pictures in time are The format of FIG. 11 follows the latter I / P-picture immediately after. However, the new function is not limited to this processing order as long as the display delay range is allowed. Also, when using the concept of Bi-predictive, B-picture may occur even if it does not have a reference frame for backward prediction. Note that the display order described above is encoded as data header information of video data, or corresponds to a superordinate concept of video data, such as a communication layer that performs synchronous processing of video data and audio / audio data, and division and delivery of data. Since the file format is managed, there is no problem of display displacement due to the change of encoding / decoding processing order.

4.フレーム識別
従来は、各フレームについて、表示位置を示す情報が符号化されていた。しかしながら、この表示位置情報は、実際に表示時に適用される通信パケットやファイルフォーマットに含まれる時刻情報と一致しない場合がある。この問題を避けるために、ビデオデータでは、各フレームを処理番号のみで管理する方法も検討されている。
4. Frame Identification Conventionally, information indicating a display position has been encoded for each frame. However, this display position information may not match the time information included in the communication packet or file format that is actually applied at the time of display. In order to avoid this problem, in video data, a method of managing each frame by processing number only is also considered.

しかし、新しい機能を導入した動画像符号化・復号化方式では、directモードに使用する後方向の参照フレームが存在しない場合や、複数の後方向の参照フレームからデフォルトで設定される後方向の参照フレームが未来のフレームでない場合が考えられる。このようなフレームでは、directモードは適応できない。また、各フレームの管理が復号順の番号で管理されている場合には、後方向の参照フレームが利用可能か否かの判断ができない。また、directモードに使用する後方向の参照フレームとしてB−pictureが選択されるような場合には、collocated blockが前方向の動きベクトルを持たない場合が考えられる。このようなブロックでは、directモードは適応できない。   However, in the video encoding / decoding method introduced a new function, backward reference set by default when there is no backward reference frame to be used for the direct mode or from a plurality of backward reference frames It is conceivable that the frame is not a future frame. In such a frame, direct mode can not be applied. In addition, when management of each frame is managed by the number in decoding order, it can not be determined whether or not the backward reference frame is available. When B-picture is selected as a backward reference frame to be used in the direct mode, it may be considered that the collocated block does not have a forward motion vector. In such a block, direct mode can not be applied.

以上の課題に鑑み、本発明の目的は、directモードを効率よく適用できる符号化・復号化方法を提供することである。   In view of the above problems, an object of the present invention is to provide an encoding / decoding method that can apply the direct mode efficiently.

デフォルトで設定される後方向の参照フレームがdirectモードに利用可能であるか否かを示す情報をデコーダに提供する。collocated blockが利用可能な前方向動きベクトルを持たない場合に適用できる代価方式への切り換え手順と代価方式を提供する。   The decoder is provided with information indicating whether a backward reference frame set by default is available for the direct mode. It provides a switching procedure to a price method and a price method that can be applied when the collocated block has no available forward motion vector.

さらに、動きベクトルに関する情報を受け取り、記録される参照画像と該動きベクトルに関す情報とを用いて動き補償を行って予測画像を合成する動画像の符号化及び復号化方法について。動き補償が動きベクトルの復号を伴わないモードを含む複数のブロックモードを有し、予測方向を表す予測モードを選択し、該予測モードにおける各予測方向の予測で参照するフレームを複数の参照フレームの候補から選択し、該予測モードで用いる動きベクトルの情報を選択する方法。特に、上記予測モードを、現在のブロックに隣接するブロックが動きベクトルを有するか否かに基づいて行うこと。   Further, the present invention relates to a moving image encoding and decoding method which receives information on a motion vector, performs motion compensation using the recorded reference image and the information on the motion vector, and synthesizes a predicted image. A motion compensation has a plurality of block modes including a mode in which the motion vector does not accompany decoding, selects a prediction mode representing a prediction direction, and makes reference to a frame to be referred in prediction of each prediction direction in the prediction mode A method of selecting from candidates and selecting motion vector information to be used in the prediction mode. In particular, the prediction mode is performed based on whether or not a block adjacent to the current block has a motion vector.

又、参照するフレームは、index番号にて識別された複数の参照フレームから1個の参照フレームを選択するものであって、複数の上記隣接ブロックが上記予測方向の予測を適用している場合には何れかの上記隣接ブロックの使用する参照フレームを選択し、1個の上記隣接ブロックのみが上記予測方向の予測を適用している場合には該1個の隣接ブロックが適用するindex番号の参照フレームを選択し、上記隣接ブロックが上記選択された予測モードを採用していない場合にはindex番号が0番の参照フレームを選択することを開示する。   Also, the frame to be referred is one for selecting one reference frame from the plurality of reference frames identified by the index number, and when the plurality of adjacent blocks apply the prediction of the prediction direction. Selects a reference frame to be used by any of the adjacent blocks, and when only one of the adjacent blocks applies the prediction of the prediction direction, a reference to the index number applied by the one adjacent block It is disclosed to select a frame and to select a reference frame with index number 0 if the adjacent block does not adopt the selected prediction mode.

又、複数の上記ブロック単位に付されるヘッダに、ブロックモードとして上記動きベクトルの復号を伴わないモードが選択された場合の予測手順を決める情報を含める方法も開示する。   Also disclosed is a method of including, in a header attached to a plurality of block units, information for determining a prediction procedure in the case where a mode without decoding of the motion vector is selected as a block mode.

更に、上記方法を適用した装置等も開示する。   Furthermore, an apparatus to which the above method is applied is also disclosed.

本願の上記構成により、directモードを適用できるか否かの判断が明確となる。又、directモードとその代用モードを有効的に利用することが可能となり、予測効率が向上しデータ量を削減することもできる。   According to the above configuration of the present application, the determination as to whether or not the direct mode can be applied becomes clear. Also, the direct mode and its substitute mode can be effectively used, and the prediction efficiency can be improved and the amount of data can be reduced.

本発明におけるピクチャヘッダデータシンタックスの例を示した図である。It is the figure which showed the example of the picture header data syntax in this invention. 本発明におけるピクチャヘッダデータシンタックスの第2の例を示した図である。It is the figure which showed the 2nd example of the picture header data syntax in this invention. マクロブロック分割を説明する図である。It is a figure explaining macroblock division. 動き補償の原理を説明する図である。It is a figure explaining the principle of motion compensation. マクロブロックに含まれる有意DCT係数の有無を符号化する際に利用するブロック構成を示す図である。It is a figure which shows the block configuration utilized when encoding the presence or absence of the significant DCT coefficient contained in a macroblock. DCT処理ならびに符号化処理を行うブロック単位を示すマクロブロック構成を示す図である。It is a figure which shows the macroblock structure which shows the block unit which performs a DCT process and an encoding process. 動き補償を行うブロック単位を示す輝度ブロックの構成を示す図である。It is a figure which shows the structure of the brightness | luminance block which shows the block unit which performs motion compensation. 予測動きベクトルの生成手段を説明する図である。It is a figure explaining the production | generation means of a prediction motion vector. Directモードにおける双方向予測のための動きベクトル生成方法を示した図である。It is a figure showing the motion vector generation method for bidirectional prediction in Direct mode. 2枚の前方向参照フレームを用いた動きベクトル算出方法を示した図である。It is the figure which showed the motion vector calculation method using two front direction reference frames. 復号順と表示順の比較例を示した図である。It is a figure showing a comparative example of decoding order and display order. 本発明における予測方法の切り換え手順の例を示した図である。It is the figure which showed the example of the switching procedure of the prediction method in this invention. 本発明における予測方法の切り換え手順の第2の例を示した図である。It is a figure showing the 2nd example of a change procedure of a prediction method in the present invention. 本発明における代用モードの全体構成を示した図である。It is the figure which showed the whole structure of the substitute mode in this invention. 本発明における代用モードの予測モード選択処理を示した図である。It is a figure showing prediction mode selection processing of substitution mode in the present invention. 本発明における代用モードの参照フレーム選択処理を示した図である。It is a figure showing reference frame selection processing of substitution mode in the present invention. 本発明における代用モードの動きベクトルの選択処理を示した図である。It is the figure which showed the selection process of the motion vector of the substitute mode in this invention. 予測フレームのデータシンタックスの例を示した図である。It is a figure showing an example of data syntax of a prediction frame. ユニバーサル符号化表の構成例を示した図である。It is a figure showing an example of composition of a universal coding table. P−pictureにおけるマクロブロックタイプの符号表と8×8ブロック分割タイプの符号表の例を示した図である。It is the figure which showed the example of the code table of the macroblock type in P-picture, and the code table of 8x8 block division | segmentation types. B−pictureにおけるマクロブロックタイプの符号表と8×8ブロック分割タイプの符号表の例を示した図である。It is the figure which showed the example of the code table of the macroblock type in B-picture, and the code table of 8x8 block division | segmentation types. 本発明における符号化処理のブロック図の例を示した図である。It is the figure which showed the example of the block diagram of the encoding process in this invention. 本発明における復号化処理のブロック図の例を示した図である。It is the figure which showed the example of the block diagram of the decoding process in this invention. 本発明におけるピクチャヘッダデータシンタックスの第3の例を示した図である。It is the figure which showed the 3rd example of the picture header data syntax in this invention. 本発明における予測方法の切り換え手順の第3の例を示した図である。It is a figure showing the 3rd example of a change procedure of a prediction method in the present invention. 本発明の符号化方法を実施する符号化装置における予測パラメータ算出器の例を示した図である。It is the figure which showed the example of the prediction parameter calculator in the encoding apparatus which enforces the encoding method of this invention. 本発明の復号方法を実施する復号装置における予測パラメータ算出器の例を示した図である。It is the figure which showed the example of the prediction parameter calculator in the decoding apparatus which enforces the decoding method of this invention. 本発明の符号化方法を実施するソフトウェア符号化器の例を示した図である。FIG. 2 illustrates an example of a software encoder implementing the encoding method of the present invention. 本発明の復号方法を実施するソフトウェア復号器の例を示した図である。Fig. 2 shows an example of a software decoder implementing the decoding method of the present invention. 本発明の符号化方法により生成された符号化ビットストリームを記録した光ディスクの例を示した図である。It is the figure which showed the example of the optical disk which recorded the encoding bit stream produced | generated by the encoding method of this invention. 本発明の符号化・復号化方法を使用する装置の具体例を示した図である。It is the figure which showed the example of the apparatus which uses the encoding / decoding method of this invention.

以下、図を用いて本発明の実施の形態を説明する。   Hereinafter, embodiments of the present invention will be described using the drawings.

以下、フレームヘッダからマクロブロックデータに至る処理の流れを順に説明する。   The flow of processing from the frame header to the macroblock data will be sequentially described below.

図1にフレームヘッダ情報の例を示す。また、以下にC言語によるピクチャヘッダデータのデコード処理例を示す。
picture_layer()
{
picture_structure
frame_number
reference_picture_selection_layer()
if(coding_type() == B-picture){
direct_mv_scale_bwd_dir[index]
if(direct_mv_scale_bwd_dir[index]){ // 未来方向
direct_mv_scale_bwd[index]
for(index=0; index<number of forward reference; index++){
direct_mv_scale_fwd_dir[index]
if(direct_mv_scale_fwd_dir[index]) // 過去方向
direct_mv_scale_fwd[index]
}
}
}
}
picture_structure20では、各pictureのスキャン構造(フレーム/フィールド)が示される。frame_number21には、そのフレームの識別番号が示される。このframe_numberの付け方には大きく2種類ある。1つは、時刻情報を含む場合である。この場合には、I,P−pictureでは直前のIまたはP−pictureとのフレーム間隔、B−pictureでは時間的に過去の直前IまたはP−pictureとのフレーム間隔がframe_numberとなる(一般にはTemporal reference;TRと呼ばれている)。2つめは、単純に復号する順番を示す場合である。
FIG. 1 shows an example of frame header information. Also, an example of decoding processing of picture header data in C language will be shown below.
picture_layer ()
{
picture_structure
frame_number
reference_picture_selection_layer ()
if (coding_type () == B-picture) {
direct_mv_scale_bwd_dir [index]
if (direct_mv_scale_bwd_dir [index]) {// Future direction
direct_mv_scale_bwd [index]
for (index = 0; index <number of forward reference; index ++) {
direct_mv_scale_fwd_dir [index]
if (direct_mv_scale_fwd_dir [index]) // past direction
direct_mv_scale_fwd [index]
}
}
}
}
In picture_structure 20, the scan structure (frame / field) of each picture is shown. Frame_number 21 indicates the identification number of the frame. There are two major ways to attach this frame_number. One is the case where time information is included. In this case, in I, P-picture, the frame interval with the immediately preceding I or P-picture, in B-picture, the frame interval with the immediately preceding I or P-picture in the past is frame_number (generally, Temporal reference; called TR)). The second is the case of simply showing the order of decoding.

reference_picture_selection_layer()では、現フレームの動き補償処理に使用可能な複数参照フレームのframe_number(reference picture set)とその識別番号が示される。例えば、参照フレームが5枚の場合には、frame number10の現pictureの対して以下のようにindex0〜index4へのframe_numberが割り当てられる。
Index0:9
Index1:8
Index2:7
Index3:6
Index4:5
なお、ピクチャタイプがP−pictureの場合には、前方向の参照フレーム(forward reference picture set)、B−pictureの場合には、前方向と後方向の参照フレーム(forward reference picture setとbackward reference picture set)のframe_numberが復号される。この際、前方向と後方向の参照フレーム数は個別に設定できるため、異なる場合もある。ピクチャタイプがI−pictureまたはP−pictureの場合には、これらのreference picture set情報に続くバイトアライン情報(データの区切りをバイト単位に併せるための情報)にてピクチャレイヤは終了となる。以降のピクチャヘッダデータは、ピクチャタイプがB−pictureの場合に発生する。なお、本実施例では、上位のネットワーク・通信関連情報が含まれるレイヤに記載されているものと考える。
In reference_picture_selection_layer (), frame_number (reference picture set) of multiple reference frames usable for motion compensation processing of the current frame and their identification numbers are indicated. For example, when there are five reference frames, frame_number to index 0 to index 4 is assigned to the current picture of frame number 10 as follows.
Index 0: 9
Index 1: 8
Index 2: 7
Index 3: 6
Index 4: 5
When the picture type is P-picture, it is a forward reference picture set, and when it is B-picture, it is a forward reference picture set and backward reference picture. frame_number of (set) is decoded. At this time, the number of reference frames in the forward direction and the backward direction can be set separately, which may be different. When the picture type is I-picture or P-picture, the picture layer ends with byte alignment information (information for combining data delimiters into byte units) following the reference picture set information. Subsequent picture header data occurs when the picture type is B-picture. In this embodiment, it is considered that the information is described in a layer including higher-order network / communication related information.

direct_mv_scale_bwd_dir28は、directモード用に指定される後方参照フレームが現フレームに対して未来に位置しているか過去に位置しているかを示す情報である。directモード用に指定される後方参照フレームは、通常、index0に割り当てられたbackward reference pictureである。データ28が後方参照フレーム(ここでは、index0に割り当てられたbackward reference picture)が現フレームに対して過去に位置していることを示している場合にはdirect modeが使用できず、データ28が後方参照フレームに対して現フレームが未来に位置していることを示している場合にはdirect modeが使用できる。したがって、このデータ28にて、index0のbackward reference pictureがdirectモードに使用できるか否かが明確に判断できる。また、directモードが実施できない場合には、後述する代用モードを適用する必要があり、そのためのメモリ配置等の準備面で、復号作業の効率化が促進できる。さらに、frame_numberが時刻情報を持たない場合において、reference pictureとcurrent picture間の関係を示す情報を効率良く送ることが可能となる。directモードに関するピクチャ位置情報には、direct mode以外にも使用されるものと、使用されないものがある。後者に関しては、direct_mv_scale_bwd_dirにより符号化を避けることが可能となる。   direct_mv_scale_bwd_dir 28 is information indicating whether the backward reference frame designated for the direct mode is located in the future or in the past with respect to the current frame. The back reference frame designated for direct mode is usually the backward reference picture assigned to index0. If data 28 indicates that a backward reference frame (here, backward reference picture assigned to index 0) is located in the past with respect to the current frame, direct mode can not be used and data 28 is backward. The direct mode can be used if it indicates that the current frame is located in the future with respect to the reference frame. Therefore, with this data 28, it can be clearly determined whether the backward reference picture of index 0 can be used for the direct mode. Further, when the direct mode can not be implemented, it is necessary to apply a substitute mode to be described later, and in preparation for the memory arrangement for that purpose, it is possible to promote the efficiency of the decoding operation. Furthermore, when frame_number does not have time information, it is possible to efficiently transmit information indicating the relationship between reference picture and current picture. Some picture position information related to the direct mode may be used other than the direct mode, and some may not be used. Regarding the latter, it is possible to avoid encoding by direct_mv_scale_bwd_dir.

具体的には、図1に示すように、direct_mv_scale_bwd_dirがdirectモード使用可能、すなわち現フレームに対して未来方向に位置することを示すときには、データ26,27,29が符号化されるが、directモード使用不可であることを示すときにはこれらのデータは符号化されない。   Specifically, as shown in FIG. 1, when the direct_mv_scale_bwd_dir indicates that the direct mode can be used, that is, it is positioned in the future direction with respect to the current frame, the data 26, 27, 29 is encoded. These data are not encoded when indicating that they are unusable.

direct_mv_scale_bwd29は、current pictureとindex0のbackward reference picture間のフレーム間隔を示す情報である(図9参照)。direct_mv_scale_fwd_dir26は、前方参照フレームが現フレームに対して未来に位置しているか過去に位置しているかを示す情報であり、direct_mv_scale_fwd27は、current pictureとforward reference picture間のピクチャ間隔を示す情報である(図9参照)。direct_mv_scale_fwdについては、reference_picture_selection_layer(22)にて指定されるforward reference pictureの数だけ符号化されている必要がある。但し、directモードを使用するには、前方向の参照フレームは現フレームに対して過去に位置している必要があるため、direct_mv_scale_fwd_dir26が未来方向を示すindexについては、direct_mv_scale_fwd27は省略される。direct_mv_scale_dividerは、index0のbackward reference pictureとforward reference picture間のピクチャ間隔を示す情報である(図9参照)。従って、この情報もforward reference pictureの数だけ符号化されている必要があるが、direct_mv_scale_fwdとdirect_reference_bwdから算出できるため、省略することも可能である。この情報もdirect_mv_scale_fwd_dir26が未来方向を示すindexについては、direct_mv_scale_fwd27は省略される。   direct_mv_scale_bwd29 is information indicating a frame interval between the current picture and the backward reference picture of index 0 (see FIG. 9). direct_mv_scale_fwd_dir26 is information indicating whether the forward reference frame is located in the future or past with respect to the current frame, and direct_mv_scale_fwd 27 is information indicating the picture interval between the current picture and the forward reference picture (see FIG. 9). The direct_mv_scale_fwd needs to be encoded by the number of forward reference pictures specified in the reference_picture_selection_layer (22). However, since the forward reference frame needs to be located in the past with respect to the current frame in order to use the direct mode, direct_mv_scale_fwd 27 is omitted for the index in which direct_mv_scale_fwd_dir 26 indicates the future direction. direct_mv_scale_divider is information indicating the picture interval between the backward reference picture and the forward reference picture of index 0 (see FIG. 9). Therefore, this information also needs to be encoded by the number of forward reference pictures, but since it can be calculated from direct_mv_scale_fwd and direct_reference_bwd, it can be omitted. Also in this information, for the index whose direct_mv_scale_fwd_dir 26 indicates the future direction, the direct_mv_scale_fwd 27 is omitted.

B−pictureの場合においても、バイトアライン情報(データの区切りをバイト単位に併せるための情報)にてピクチャレイヤは終了となる。   Also in the case of B-picture, the picture layer ends with byte alignment information (information for combining data delimiters into byte units).

direct_mv_scale_fwdやdirect_mv_scale_bwdは、図10に示されるpicture_distanceとしても使用できるため、図1を図10の動きベクトル符号化にも拡張したデータシンタックスを図2に示す。
picture_layer()
{
picture_structure
frame_number
reference_picture_selection_layer()
if(coding_type() == B-picture){
for(index=0; index<number of forward reference; index++){
direct_mv_scale_fwd_dir[index]
direct_mv_scale_fwd[index]
}
for(index=0; index<number of backward reference; index++){
direct_mv_scale_bwd_dir[index]
direct_mv_scale_bwd[index]
}
}
}
B−pictureの場合について説明する。この場合には、現フレームで使用可能な全ての参照フレームについて、データ26〜29が符号化/復号化されるが、これらのデータは図10に示した動きベクトルの符号化処理に利用するpicture_distanceの情報としても利用される。この図2でも図1と同じように、direct_mv_scale_bwd_dir[0]がdirectモードの使用可否を示す役割を果たすが、図2では、さらにデータ26と28の組み合わせにより、図10の処理が使用可能であるか否かを示す。
Since direct_mv_scale_fwd and direct_mv_scale_bwd can also be used as picture_distance shown in FIG. 10, FIG. 2 shows a data syntax in which FIG. 1 is extended to motion vector coding of FIG.
picture_layer ()
{
picture_structure
frame_number
reference_picture_selection_layer ()
if (coding_type () == B-picture) {
for (index = 0; index <number of forward reference; index ++) {
direct_mv_scale_fwd_dir [index]
direct_mv_scale_fwd [index]
}
for (index = 0; index <number of backward reference; index ++) {
direct_mv_scale_bwd_dir [index]
direct_mv_scale_bwd [index]
}
}
}
The case of B-picture will be described. In this case, data 26 to 29 are encoded / decoded for all reference frames available in the current frame, but these data are used for the motion vector encoding process shown in FIG. Is also used as In FIG. 2 as well as FIG. 1, although direct_mv_scale_bwd_dir [0] plays a role of indicating whether or not the direct mode can be used, in FIG. 2 the process of FIG. 10 can be used by a combination of data 26 and 28 Indicates whether or not.

図10の動きベクトル符号化は、2本の動きベクトルに対応する2つの参照フレームが現フレームに対して同じ方向である場合に有効となる。そのため、ブロックで選択された2つのreference pictureのindex番号に対応するデータ26と28の値が、現フレームに対して異なる方向に位置する2つの参照フレームの組み合わせである場合には、図10の動きベクトル符号化方法ではなく、各動きベクトルを図8の方法で個別に符号化/復号化する。一方、ブロックで選択された2つのreference pictureのindex番号に対応するデータ26と28の値が、現フレームに対して同じ方向に位置する2つの参照フレームの組み合わせである場合には、現フレームから離れた動きベクトルについては、図10の方法が適用される。   The motion vector coding of FIG. 10 is effective when two reference frames corresponding to two motion vectors have the same direction with respect to the current frame. Therefore, if the values of data 26 and 28 corresponding to the index numbers of the two reference pictures selected in the block are a combination of two reference frames located in different directions with respect to the current frame, FIG. Instead of the motion vector coding method, each motion vector is individually coded / decoded by the method of FIG. On the other hand, if the values of data 26 and 28 corresponding to the index numbers of the two reference pictures selected in the block are a combination of two reference frames located in the same direction with respect to the current frame, from the current frame For distant motion vectors, the method of FIG. 10 is applied.

ここまでは、directモードに使用するBackward reference pictureをindex0として説明してきた。しかしながら、backward reference picture setからindex0以外の番号をdirectモードのbackward reference pictureとして選択することも考えられる。例えば、図1と2のdirect_reference_idx_bwd24のように、directモードに使用するbackward reference pictureのindex番号をピクチャレイヤで示すことにより、フレーム単位でbackward reference pictureを変更することが可能となる。さらに、direct_reference_idx_bwd24をindex番号そのものではなく、index番号に1を足した値とすることにより、値“0”にdirectモードに使用できる後方参照フレームがbackward reference picture setにないという意味を持たせることが可能となる。   So far, the backward reference picture used for the direct mode has been described as index0. However, it is also conceivable to select a number other than the index 0 from the backward reference picture set as the backward reference picture in the direct mode. For example, as in the direct_reference_idx_bwd 24 of FIGS. 1 and 2, it is possible to change the backward reference picture in units of frames by indicating the index number of the backward reference picture used for the direct mode in the picture layer. Furthermore, by setting direct_reference_idx_bwd24 not an index number itself but a value obtained by adding 1 to the index number, it means that the value "0" has the meaning that no backward reference frame can be used for direct mode in the backward reference picture set. It becomes possible.

次に図18のマクロブロックレイヤシンタックス、図20、21のマクロブロックタイプコード表を用いて、マクロブロックデータの構造について説明する。符号化に使用する方法としては、1種類の可変長符号表のみを用いるUniversal VLC(UVLC)、固定長符号化と可変長符号化(各符号化要素に異なる符号表を用意)を組み合わせた符号化方法ならびに、算術符号化(Witten et al.,”Arithmetic Coding for Data Compression”,Comm.of the ACM,30(6),1987,pp.520−541)などが考えられるが、本実施例では、UVLCと算術符号化を例として説明する。図11の表81がUVLCの構成を示しており、Xnの値は‘0’または‘1’となる。表82に、実際の可変長符号表の例を示す。算術符号化の具体的な方法としては、各符号の意味を数ビットのバイナリーデータに置き換え、各ビットを各々の0と1の発生確率を示す生起確率モデルに応じて符号化する方法を考える。この方法は、CABAC(Context−based Adaptive Binary Arithmetic Coding)と呼ばれている。   Next, the structure of macroblock data will be described using the macroblock layer syntax of FIG. 18 and the macroblock type code tables of FIGS. As a method used for encoding, a code combining Universal VLC (UVLC) using only one type of variable length code table, fixed length coding and variable length coding (different code tables are prepared for each coding element) It is possible to use a coding method and arithmetic coding (Witten et al., "Arithmetic Coding for Data Compression", Comm. Of the ACM, 30 (6), 1987, pp. 520-541), etc. , UVLC and arithmetic coding will be described as an example. Table 81 in FIG. 11 shows the configuration of UVLC, and the value of Xn is '0' or '1'. Table 82 shows an example of an actual variable length code table. As a specific method of arithmetic coding, a method is considered in which the meaning of each code is replaced by binary data of several bits, and each bit is coded according to an occurrence probability model indicating the occurrence probability of each 0 and 1. This method is called CABAC (Context-based Adaptive Binary Arithmetic Coding).

図18は、B−pictureにおけるマクロブロックデータのシンタックス構造を示している。この図を用いて、B−pictureならびにP−pictureのマクロブロックデータ構造について説明する。なお、I−pictureについては、本願の特徴に含まれないため説明を省略する。   FIG. 18 shows the syntax structure of macroblock data in B-picture. The macroblock data structure of B-picture and P-picture will be described using this figure. The description of the I-picture is omitted because it is not included in the features of the present application.

mb_skip_run11では、連続するSKIPモード数をランレングス符号化(連続する0の数を符号化、1つ前のマクロブロックのタイプがSKIPモードでない場合には、連続するSKIPモードの数をゼロとする)したデータで、エントロピー符号化の方法としてUVLCを用いる場合にのみ発生する。SKIPモードとは、予測誤差信号を符号化せず、予測ブロック画像をそのまま再生ブロック画像とするマクロブロックタイプである。   In mb_skip_run11, run-length coding is performed for the number of consecutive SKIP modes (coding the number of consecutive 0s, and if the previous macro block type is not SKIP mode, the number of consecutive SKIP modes is zero) Data, which occurs only when using UVLC as a method of entropy coding. The SKIP mode is a macroblock type in which a prediction block image is used as it is as a reproduced block image without encoding a prediction error signal.

予測ブロック画像は、P−pictureではindex0のforward reference pictureから予測ベクトル位置に相当するマクロブロック画像を切り出す方法、B−pictureではdirectモードにて合成される。このSKIPモードは、低レート符号化にて多く選択されるモードであり、特にB−pictureでは選択される確率が高い。従って、directモードの予測性能は、低レートの符号化性能に直接影響する。   The predicted block picture is synthesized in the direct mode in the method of cutting out the macroblock picture corresponding to the predicted vector position from the forward reference picture of index 0 in P-picture. This SKIP mode is a mode that is often selected in low rate coding, and particularly in B-picture, the probability of selection is high. Thus, the prediction performance of the direct mode directly affects the low rate coding performance.

CABACを用いた符号化方法では、mb_skip_run11は使用せず、SKIPモードもmb_type12にて扱う(表91,93のcode number0の欄参照)。mb_type12では、表91(P−picture)または表93(B−picture)に示されるマクロブロックモードからマクロブロック毎に1つのモードが選択され、符号化される。   In the encoding method using CABAC, mb_skip_run11 is not used, and the SKIP mode is also handled as mb_type 12 (see the column of code number 0 in Tables 91 and 93). In mb_type 12, one mode is selected and encoded for each macroblock from the macroblock modes shown in Table 91 (P-picture) or Table 93 (B-picture).

表91では、code number6,7に示されているIntraM×NのM,Nは空間予測を行う際の小ブロックサイズを示しており、M×Nは動き補償を行う際の小ブロックサイズ(図7のモード1〜モード4)を示している。但し、code number5に示されるモードはCABACの場合には使用しない。   In Table 91, M and N of IntraM × N shown in code numbers 6 and 7 indicate small block sizes when performing spatial prediction, and M × N indicate small block sizes when performing motion compensation (see FIG. 7 shows mode 1 to mode 4). However, the mode indicated by code number 5 is not used in the case of CABAC.

表93では、code number23,24に示されているIntraM×NのM,Nは空間予測を行う際の小ブロックサイズ、M×Nは動き補償を行う際の小ブロックサイズ(図7のモード1〜モード4に対応)を示しており、directはdirectモード(Direct(CBP==0)は、CABAC適用時のSKIPモード)を示している。表93のBlock1ならびにBlock2は、図7のモード2またはモード3における2個の小ブロックを識別しており、各小ブロックの予測方向がForward(前方予測)、Backward(後方予測)、Bi−predictive(2方向参照フレーム予測)のいずれであるかを示している。   In Table 93, M and N of IntraM × N shown in code numbers 23 and 24 are small block sizes when performing spatial prediction, and M × N are small block sizes when performing motion compensation (mode 1 in FIG. 7) To <direct mode 4>, and direct indicates direct mode (direct (CBP == 0) indicates SKIP mode when CABAC is applied). Block 1 and Block 2 in Table 93 identify two small blocks in mode 2 or mode 3 in FIG. 7, and the prediction direction of each small block is Forward, Backward, Bi-predictive It indicates which of (two-way reference frame prediction).

ここで、directモードについて説明を加える。mb_skip_run11とmb_type12の選択候補にdirectモードが含まれているが、複数参照フレーム機能や2参照フレームの機能を適用する方式では、directモードが適用できないケースが考えられる。そこで、本発明では図12に示すように、条件に応じて予測方法を切り換える手順を用いる。   Here, the description of the direct mode is added. Although the direct mode is included in the selection candidates of mb_skip_run11 and mb_type 12, there are cases where the direct mode can not be applied in the method of applying the multiple reference frame function and the function of the two reference frames. Therefore, in the present invention, as shown in FIG. 12, a procedure of switching the prediction method in accordance with the condition is used.

最初に、ピクチャヘッダ内のdirect_mv_scale_bwd_dir(図1)またはdirect_mv_scale_bwd_dir[0](図2)にて、current pictureにdirectモードが使用可能か否かをチェックする(301)。処理301にて使用不可と判定された場合には、collocated blockのforward MVを必要としない代用モード(詳細は後述)にて予測マクロブロックを作成する(304)。処理301にて使用可能と判定された場合には、8x8ブロック毎に予測方法の選定を行う。ここで8x8ブロックとしたのは、図7のブロック分割方法では、参照フレームと予測方向選択の最小単位が8x8ブロックとされているためである。具体的には、8x8ブロックに対応するcollocated blockにforward MVを持つ予測モードが適用されているか否かをチェックする(302)。そして、適用されていると判定された場合には、directモードにて予測ブロックを作成し(303)、適用されていないと判定された場合には、代用モードにて予測ブロックを作成する(304)。   First, in direct_mv_scale_bwd_dir (FIG. 1) or direct_mv_scale_bwd_dir [0] (FIG. 2) in the picture header, it is checked whether the direct mode can be used for the current picture (301). If it is determined that the use is not possible in the process 301, a predicted macro block is created in a substitute mode (details will be described later) that does not require the forward MV of the collocated block (304). If it is determined in the process 301 that it can be used, the prediction method is selected for each 8x8 block. The 8 × 8 block is used here because the minimum unit of reference frame and prediction direction selection is 8 × 8 block in the block division method of FIG. 7. Specifically, it is checked whether or not the prediction mode having forward MV is applied to the collocated block corresponding to the 8x8 block (302). Then, if it is determined that it is applied, a prediction block is created in the direct mode (303), and if it is determined that it is not applied, a prediction block is created in the substitute mode (304) ).

処理302では、collocated 8x8 blockについて、予測モードがintraモードの場合、予測方向がbackward predictionの場合、forward reference pictureに対するdirect_mv_scale_fwd_dir[index]の値がcurrent pictureに対して後方向(未来方向)に位置することを示している場合、あるいはforward reference pictureがcurrent pictureのforward reference picture setに含まれていない場合に、directモード使用不可と判定する。   In process 302, for the collocated 8x8 block, when the prediction mode is the backward mode when the prediction mode is the intra mode, the value of direct_mv_scale_fwd_dir [index] for the forward reference picture is located in the backward direction (future direction) with respect to the current picture If the forward reference picture is not included in the forward reference picture set of the current picture, it is determined that the direct mode can not be used.

なお、図12の処理302では、8x8ブロック単位でdirectモードの使用可否判定を実施しているが、これをマクロブロック単位で実施することも可能である。但し、この場合には、マクロブロック内のすべての予測ブロック、図7のブロック分割方法の場合には4個の8x8ブロックのすべてが、directモード使用可能の状態である場合にのみ、directモード使用可能と判定される。   In addition, in the process 302 of FIG. 12, although availability determination of direct mode is implemented in 8x8 block units, it is also possible to implement this in macroblock units. However, in this case, the direct mode is used only when all the prediction blocks in the macro block and all four 8x8 blocks in the case of the block division method of FIG. 7 can be used in the direct mode. It is determined that it is possible.

図13は、ピクチャヘッダの構造にデータ24が追加された場合について、予測方法を切り換える手順を示している。図12と異なる点は、処理301が処理305に変更されている点であり、具体的には、チェックするdirect_mv_scale_bwd_dirのindex番号が図13のデータ24にて設定した値とされている点である。   FIG. 13 shows a procedure of switching the prediction method in the case where data 24 is added to the structure of the picture header. A point different from FIG. 12 is that the process 301 is changed to a process 305. Specifically, the index number of direct_mv_scale_bwd_dir to be checked is a value set in the data 24 of FIG. .

図18の説明に戻る。mb_type12にて8x8(split)が選択された場合には、図7のモード4に示される4個の8×8小ブロック54−0〜54−3について、それぞれ、8x8 Partition13が発生する。具体的には、8x8 Partition18では、表92(P−picture)または表94(B−picture)に示される8x8 partitionモードから各8x8ブロックについて1つのモードが選択され、符号化される。   It returns to the explanation of FIG. When 8x8 (split) is selected in mb_type 12, 8x8 Partition 13 is generated for each of four 8x8 small blocks 54-0 to 54-3 shown in mode 4 of FIG. Specifically, in the 8x8 Partition 18, one mode is selected and encoded for each 8x8 block from the 8x8 partition mode shown in Table 92 (P-picture) or Table 94 (B-picture).

表92では、code number4に示されているIntraは空間予測を示しており、M×Nは動き補償を行う際の小ブロックサイズ(図7の8x8 partition1〜8x8 partition4)を示している。   In Table 92, Intra indicated by code number 4 indicates spatial prediction, and M × N indicates the small block size (8 × 8 partition 1 to 8 × 8 partition 4 in FIG. 7) when performing motion compensation.

表94では、code number13に示されているIntraは空間予測の適用、M×Nは動き補償を行う際の小ブロックサイズ(図7の8x8 partition1〜8x8 partition4)を示しており、directはdirectモードを示している。表94のPredictionは、図7のモード4に属する各小ブロックの予測方向がForward(前方予測)、Backward(後方予測)、Bi−predictive(2参照フレーム予測)のいずれであるかを示している。   In Table 94, Intra indicated by code number 13 indicates application of spatial prediction, M × N indicates small block size (8 × 8 partition 1 to 8 × 8 partition 4 in FIG. 7) when performing motion compensation, and direct indicates direct mode Is shown. Prediction in Table 94 indicates whether the prediction direction of each small block belonging to mode 4 in FIG. 7 is Forward (forward prediction), Backward (bidirectional prediction), or Bi-predictive (two reference frame prediction). .

8x8 Partition 18にてdirectモードが選択された場合においても、図12または図13と同様の予測方法切り換え手順が適応できる。しかしながら、8x8 Partition内のdirectモードの予測性能はdirectモードMBほど重要ではない。そこでより簡単な方法を適用することも可能である。例えば、処理302にてcollocated blockがForward MVを持っていないと判定される場合に、処理304の替わりに、Forward MVを0ベクトル、forward reference pictureならびにbackward reference pictureのindexを0に設定した上でdirectモードにて予測ブロックを生成する方法が考えられる。この際、backward reference pictureが存在しない場合には、forward predictionのみで予測ブロックを生成すればよい。より簡単には、処理302にてcollocated blockがForward MVを持っていないと判定されるケースでは、符号化側にてdirectモードの選択しない方法が考えられる。   Even when the direct mode is selected in 8x8 Partition 18, the prediction method switching procedure similar to FIG. 12 or FIG. 13 can be applied. However, the prediction performance of the direct mode in the 8x8 partition is not as important as the direct mode MB. Therefore, it is also possible to apply a simpler method. For example, if it is determined in process 302 that the collocated block does not have Forward MV, then instead of process 304, Forward MV is set to 0 vector, forward reference picture and index of backward reference picture are set to 0. A method of generating a prediction block in the direct mode can be considered. At this time, when there is no backward reference picture, it is sufficient to generate a prediction block only by forward prediction. More simply, in the case where it is determined in process 302 that the collocated block does not have Forward MV, a method may be considered in which the direct mode is not selected on the encoding side.

mb_type12と8x8 Partition13の符号化方法については、UVLCを利用する場合には、表91〜94のcode numberに対応するコードを表82から選択して符号化する。CABACを利用する場合には、表91〜表94のBinarizationの欄に示されているビット列を各ビットの確率モデルを用いて算術符号化する。   As for the encoding method of mb_type 12 and 8x8 Partition 13, when using UVLC, the code corresponding to the code number of Tables 91 to 94 is selected from Table 82 and encoded. When CABAC is used, the bit sequence shown in the Binarization column of Tables 91 to 94 is arithmetically encoded using a probability model of each bit.

ref_index_fwd14は、動き補償に使用する前方向の参照フレームのindex番号を示しており、当該マクロブロック内の各分割ブロック(図7の51〜54)について必要とされる。Index番号はforward reference picture setから選択される。但し、forward reference picture setに含まれる参照フレームが1枚のみの場合、ブロックタイプあるいはマクロブロックタイプがSkip,directまたはintraのブロックの場合、ならびにblock predictionがbackwardの場合については、このコードは発生しない。   ref_index_fwd14 indicates the index number of the forward reference frame used for motion compensation, and is required for each divided block (51 to 54 in FIG. 7) in the macro block. The index number is selected from the forward reference picture set. However, if the forward reference picture set contains only one reference frame, this code does not occur if the block type or macroblock type is Skip, direct or intra, and if the block prediction is backward. .

また、P−pictureにてmb_typeとして表91のcode number5が選択された場合には、index0のforward reference pictureが参照フレームとして自動的に選択されるため、このコードは発生しない。   Also, when code number 5 in Table 91 is selected as mb_type in P-picture, this code does not occur because the forward reference picture of index 0 is automatically selected as the reference frame.

forward reference picture setがindex0〜index4の値を持つ場合を例として、符号化方法を考える。この例では、index0〜index4がそれぞれ、code number0〜4に割り当てられる。UVLCを利用する場合には、code number0−4に対応するコードを表82から選択して符号化/復号化される。CABACを利用する場合には、code number0−4に対して、それぞれ1’,01’,001’,0001’,00001’のバイナリーデータを割り当て、ビット列と各ビットの確率モデルを用いて算術符号化する。   A coding method will be considered, taking as an example the case where forward reference picture set has values of index 0 to index 4. In this example, index 0 to index 4 are assigned to code numbers 0 to 4, respectively. When using UVLC, codes corresponding to code numbers 0-4 are selected from Table 82 and encoded / decoded. When CABAC is used, binary data of 1 ', 01', 001 ', 0001', 00001 'is allocated to code number 0-4, and arithmetic coding is performed using a bit string and a probability model of each bit. Do.

ref_index_bwd15は、動き補償に使用する後ろ方向の参照フレームのindex番号を示しており、当該マクロブロック内の各分割ブロック(図7の51〜54)について必要とされる。   ref_index_bwd15 indicates the index number of the backward reference frame used for motion compensation, and is required for each divided block (51 to 54 in FIG. 7) in the macroblock.

Index番号はbackward reference picture setから選択される。但し、ピクチャの種類がP−pictureの場合、backward reference picture setに含まれる参照フレームが1枚のみの場合、ブロックタイプあるいはマクロブロックタイプがskip,directまたはintraのブロックの場合、ならびにblock predictionがforwardの場合については、このコードは発生しない。符号化方法については、ref_index_fwdと同じであるため、説明は割愛する。   The index number is selected from the backward reference picture set. However, if the picture type is P-picture, if there is only one reference frame included in the backward reference picture set, if the block type or block type is skip, direct or intra, and the block prediction is forward. For the case of, this code does not occur. The encoding method is the same as ref_index_fwd, so the description will be omitted.

mvd_fwd16は、mb_type12と8x8 Partition13がforward(bi−predictiveも含む)に伴う動きベクトルを伴うマクロブロックであることを示す場合に発生し、マクロブロック内のforward MVの数だけ繰り返される。また、したがって、mb_type12がIntraM×N、SKIP(P−picture)またはdirect(B−picture)の場合や、8x8 Partition13がintraまたはdirect(B−picture)の場合にはこのデータは発生しない。また、block predictionがbackwardの分割ブロックの場合(B−picture)にもこのデータは発生しない。同様にmvd_bwd17は、mb_type12と8x8 Partition13がbackward(bi−predictiveも含む)に伴う動きベクトルを伴うマクロブロックであることを示す場合に発生し、マクロブロック内のbackward MVの数だけ繰り返される。また、したがって、ピクチャタイプがP−pictureの場合、mb_type12がIntraM×N、directの場合や、8x8 Partition13がintraまたはdirectの場合にはこのデータは発生しない。また、block predictionがforwardの分割ブロックの場合にもこのデータは発生しない。CBP18は、図6に示される24個のDCTブロックについて、‘0’以外の量子化DCT係数(有意係数)が16個係数に含まれているか否かを示す符号化データである。   mvd_fwd 16 occurs when mb_type 12 and 8x8 Partition 13 indicate that they are macroblocks with motion vectors accompanying forward (including bi-predictive), and are repeated by the number of forward MVs in the macroblock. Further, therefore, this data does not occur when mb_type 12 is IntraM × N, SKIP (P-picture) or direct (B-picture), or when 8 × 8 Partition 13 is intra or direct (B-picture). Further, this data does not occur even in the case of a divided block where block prediction is backward (B-picture). Similarly, mvd_bwd17 occurs when mb_type 12 and 8x8 Partition 13 indicate that they are macroblocks with motion vectors accompanying backward (including bi-predictive), and are repeated by the number of backward MVs in the macroblock. Therefore, when the picture type is P-picture, this data is not generated when mb_type 12 is IntraM × N, direct or when 8 × 8 Partition 13 is intra or direct. Also, this data does not occur in the case of a divided block whose block prediction is forward. CBP 18 is encoded data indicating whether or not quantized DCT coefficients (significant coefficients) other than '0' are included in 16 coefficients for the 24 DCT blocks shown in FIG.

Residual()19は、有意量子化DCT係数の符号化データを示している。CBPにて有意係数が無いことが示されているブロックについては、符号化処理が省略される。したがって、CBPが0の場合には、Residual()は発生しない。さらに、CBP18とResidual()19は、mb_type12がdirect(CBP==0)のときには発生しない。   Residual () 19 indicates encoded data of significant quantized DCT coefficients. The coding process is omitted for blocks for which CBP indicates no significant coefficient. Therefore, when CBP is 0, Residual () does not occur. Furthermore, CBP 18 and Residual () 19 do not occur when mb_type 12 is direct (CBP == 0).

ここで、図7の分割タイプを例として、上記に示した予測動きベクトルmvd_fwd16ならびにmvd_bwd17の生成方法を図8に説明する。図7のモード1(51)のブロック51−0,モード4(54)の小ブロック54a−0、54b−0、54b−1、54c−0、54c−1ならびに54d−0〜54d−3については、同じ予測方法を用いる。動きベクトルを符号化する対象の小ブロックを50と仮定する。これらの小ブロックでは、動きベクトルの水平・垂直成分それぞれについて、隣接位置A,B,Cに位置する3ブロックの動きベクトルを候補としてその中間値を計算し、中間値の動きベクトルを予測動きベクトルとする。但し、符号化順序やマクロブロック位置の関係で位置Cのブロックが符号化前の場合や画像の外に位置する場合が考えられる。この場合には、位置Cのかわりに位置Dに位置するブロックの動きベクトルを候補動きベクトルの1つとして用いる。   Here, a method of generating the predicted motion vectors mvd_fwd 16 and mvd_bwd 17 shown above will be described with reference to FIG. 8 taking the division type of FIG. 7 as an example. Regarding the small blocks 54a-0, 54b-0, 54b-1, 54c-0, 54c-1 and 54d-0 to 54d-3 of the block 51-0, mode 4 (54) of mode 1 (51) of FIG. Uses the same prediction method. It is assumed that a small block to be encoded with a motion vector is 50. In these small blocks, for each of the horizontal and vertical components of the motion vector, an intermediate value is calculated with the motion vector of three blocks located at adjacent positions A, B and C as candidates, and the motion vector of the intermediate value is predicted motion vector I assume. However, it is conceivable that the block at position C may be located before encoding or outside the image depending on the encoding order and the macroblock position. In this case, the motion vector of the block located at the position D instead of the position C is used as one of the candidate motion vectors.

なお、位置AとDのブロックが画像の外に位置する場合には、その動きベクトルを‘0’ベクトルとして予測処理を行い、位置、DとBとCが画像の外に位置する場合には、位置Aのブロックの動きベクトルとして予測処理を行う。この際、3個の候補ブロックのうち2個が動きベクトルを持たない場合には、残りの1つの候補動きベクトルを予測動きベクトルとする。モード2(52)の2個の小ブロック(52−0,52−1)、モード3(53)の2個の小ブロック(53−0,53−1)については、図8に示す矢印の根元に位置するブロックの動きベクトルを予測値とする。なお、この方法における動きベクトル符号化では、同じ参照フレームの動きベクトルのみが予測に用いられる。したがって、隣接ブロックの動きベクトルが符号化ブロックにて選択された参照フレームと異なる場合には、画像の外に位置するものとして扱う。色差成分用の動きベクトルについては符号化せず、輝度成分の動きベクトルを2で割って使用する。   When the blocks at positions A and D are located outside the image, prediction processing is performed using the motion vector as a '0' vector, and when positions D and B and C are located outside the image, , And performs prediction processing as a motion vector of a block at position A. At this time, when two of the three candidate blocks do not have a motion vector, one remaining candidate motion vector is set as a prediction motion vector. The two small blocks (52-0, 52-1) of mode 2 (52) and the two small blocks (53-0, 53-1) of mode 3 (53) are indicated by arrows shown in FIG. Let the motion vector of the block located at the root be the predicted value. Note that in motion vector coding in this method, only motion vectors of the same reference frame are used for prediction. Therefore, when the motion vector of the adjacent block is different from the reference frame selected in the coding block, it is treated as being located outside the image. The motion vector for the chrominance component is not encoded, and the motion vector of the luminance component is divided by 2 and used.

図14〜17を用いてcollocated blockのForward MVを必要としない代用モード(4x4 bi−predictive)について説明する。DirectモードならびにDirectモードを使用するB−pictureにおけるSkipモードは、選択率が高く符号化性能を高めるために重要な予測方式である。   The substitute mode (4x4 bi-predictive) which does not require Forward MV of a collocated block is demonstrated using FIGS. 14-17. Skip mode in B-picture using Direct mode as well as Direct mode is an important prediction scheme for high selectivity and high coding performance.

しかしながら、MPEG−4 Part10のように、参照フレームの選択や各フレームの符号化手順に自由度を持たせた方式では、図1、2ならびに図12、13の説明で示したように、従来のDirectモードが有効に機能しないフレームやブロックが発生する。   However, in the method of giving freedom in selection of reference frames and coding procedures of each frame as in MPEG-4 Part 10, as shown in the description of FIGS. The frame or block which Direct mode does not function effectively occurs.

この代用モードは、従来のDirectモードが有効に機能しない場合に切り替えて使用することにより、予測性能の低下を抑制したり、予測効率を高める効果がある。また、従来のDirectモードが参照フレームの動きベクトルを使用するのに対して、この代用モードは現フレームの動きベクトルを利用するため、以降のフレームの符号化/復号処理のために動きベクトルをメモリに蓄積する処理が不必要となり、メモリサイズを削減する効果がある。さらに、代用モードでは、図9に示す動きベクトルのスケーリング処理が必要ないため、復号処理が簡易となる。   This substitute mode has the effect of suppressing a drop in prediction performance and enhancing the prediction efficiency by switching and using it when the conventional Direct mode does not function effectively. Also, since the Direct mode uses the motion vector of the reference frame while this substitute mode uses the motion vector of the current frame, the motion vector memory is stored for encoding / decoding processing of subsequent frames. There is no need to store data in the memory, and the memory size can be reduced. Furthermore, in the substitute mode, since the motion vector scaling process shown in FIG. 9 is not necessary, the decoding process is simplified.

この代用モードの予測手順は、図14に示す4パートから構成される。まず、8x8ブロック単位で予測方向をbi−predictive,forward,backwardから選択する(610)。選択には、対象8x8ブロックC81の直上ブロックB83と直左ブロックA82を用いて実施する。次に処理610にて選択した予測モードの実施に必要となる参照フレームの選択を実施する(620)。選択には、対象8x8ブロックC81の直上ブロックB83と直左ブロックA82を用いて実施する。次に4x4ブロック単位で、選択した予測モードと参照フレームに対応する動きベクトルの算出処理を実施する(630)。最後に処理610と620にて選択した予測モードと参照フレームと処理630にて算出した動きベクトルにて4x4予測ブロックを合成する。そして算出した動きベクトルと参照フレームのindexを予測動きベクトル予測用に保存する(640)。   The prediction procedure of this substitute mode is composed of four parts shown in FIG. First, the prediction direction is selected from bi-predictive, forward, backward in units of 8x8 blocks (610). The selection is performed using a block B83 immediately above the object 8x8 block C81 and a block immediately on the left B82. Next, selection of a reference frame necessary for implementation of the prediction mode selected in process 610 is performed (620). The selection is performed using a block B83 immediately above the object 8x8 block C81 and a block immediately on the left B82. Next, calculation processing of motion vectors corresponding to the selected prediction mode and reference frame is performed in 4 × 4 block units (630). Finally, the 4x4 prediction block is synthesized using the prediction mode selected in processing 610 and 620, the reference frame, and the motion vector calculated in processing 630. Then, the calculated motion vector and the index of the reference frame are stored for prediction motion vector prediction (640).

このように、同一フレーム内の周囲ブロックの情報から予測処理に必要とされる各要素データを予測することにより、局所的な特徴に応じた動き予測が可能となり、予測効率が向上する。また、フレーム内の隣接ブロックのデータのみを用いるため、この代用モード実施のために保存するデータ量が削減される。以降に処理の詳細を示す。   As described above, by predicting each element data required for the prediction process from the information of surrounding blocks in the same frame, motion prediction according to the local feature becomes possible, and the prediction efficiency is improved. In addition, since only data of adjacent blocks in a frame is used, the amount of data to be stored for this substitute mode implementation is reduced. Details of the process are shown below.

図15に処理610の予測方向選択処理手順を示す。まず、対象8x8ブロックの直上ならびに直左の8x8ブロックの何れかがForward MVを持っているか否かをチェックする(611)。次に同様に、対象8x8ブロックの直上ならびに直左の8x8ブロックの何れかがBackward MVを持っているか否かをチェックする(612)。そして、直上または直左の8x8ブロックの何れかがforward MVとbackward MVを持っている場合と、直上と直左の8x8ブロックのいずれもforward MVもbackward MVを持っていない場合には、bi−predictiveを選択する(615)。直上ならびに直左の8x8ブロックがforward MVのみを持っている場合にはforward MV(616)、backward MVのみを持っている場合にはbackward MV(617)を選択する。   FIG. 15 shows the procedure of the prediction direction selection process of the process 610. First, it is checked whether any one of the 8x8 blocks immediately above and to the right of the target 8x8 block has Forward MV (611). Next, similarly, it is checked whether any one of the 8x8 blocks immediately above and to the right of the target 8x8 block has Backward MV (612). Then, if either the immediate upper or immediate left 8x8 block has forward MV or backward MV, or if neither the immediate or immediate left 8x8 block has forward MV or backward MV, then bi- Select the predictive (615). If the 8x8 block immediately above and to the left only has forward MV, it selects forward MV (616), and if it has only backward MV, backward MV (617) is selected.

この手順によれば、予測効率が最も高いbi−predictive予測が優先的に選択される。また、bi−predictiveを効率良く実施するために必要な情報が周囲ブロックから得られない場合には、周囲から得られる情報に基づいて最適と推測される予測方向が選択できる。さらに、周囲から情報が十分な得られない場合には、他の予測モードに対してDirectモードを選択する効果が高い状態となるように制御することで、予測効率の向上に貢献する。具体的には、以降に説明する図16と図17の処理と組み合わせることにより、index0(現フレームに最も似通ったフレーム)のforward reference,backward referenceを参照フレームとしたゼロ動きベクトルのbi−predictive予測を選択するような手順となっている。   According to this procedure, bi-predictive prediction with the highest prediction efficiency is preferentially selected. In addition, when the information necessary for efficiently performing bi-predictive can not be obtained from the surrounding blocks, it is possible to select a prediction direction that is estimated to be optimal based on the information obtained from the surroundings. Furthermore, when sufficient information can not be obtained from the surroundings, controlling the direct mode to be highly effective for other prediction modes contributes to an improvement in prediction efficiency. Specifically, bi-predictive prediction of the zero motion vector with the forward reference and backward reference of index 0 (the frame most similar to the current frame) as a reference frame by combining with the processing in FIG. 16 and FIG. 17 described later. The procedure is to select the

図16に処理620の参照フレーム選択処理手順を示す。この処理は、forwardとbackwardについて個別に実施される。図16は、forward reference picture選択の場合を示しているが、backward reference pictureについても手順は同じである。   FIG. 16 shows the reference frame selection processing procedure of the processing 620. This process is performed separately for forward and backward. Although FIG. 16 shows the case of forward reference picture selection, the procedure is the same for backward reference picture.

まず、対象8x8ブロックの直上ならびに直左の8x8ブロックが何れもforward reference pictureを利用しているか否かをチェックする(621)。何れの8x8ブロックともforward reference pictureを利用していると判定された場合には、2個の8x8ブロックで使用されたforward reference pictureのうちindex番号の小さい方を選択する(623)。処理621にて少なくとも何れかの8x8ブロックがforward reference pictureを利用していないと判定された場合には、次に、対象8x8ブロックの直上または直左の8x8ブロックが何れかがforward reference pictureを利用しているか否かをチェックする(622)。処理622にて、何れかの8x8ブロックがforward reference pictureを利用していると判断された場合には、利用したforward reference pictureを選択する(625)。処理622にて、何れの8x8ブロックもforward reference pictureを利用していない場合には、index0を選択する(624)。   First, it is checked whether or not the 8x8 block immediately above the target 8x8 block and the 8x8 block directly to the left are all using the forward reference picture (621). If it is determined that any 8x8 block uses forward reference picture, the smaller index number is selected out of the forward reference pictures used in the two 8x8 blocks (623). If it is determined in process 621 that at least one of the 8x8 blocks does not use the forward reference picture, then either the 8x8 block directly above or to the left of the target 8x8 block is using the forward reference picture It is checked whether or not it is (622). If it is determined in process 622 that any 8x8 block uses the forward reference picture, the used forward reference picture is selected (625). If none of the 8 × 8 blocks use the forward reference picture in process 622, index 0 is selected (624).

このように、隣接ブロックの符号化に適用されたIndex番号のうち、小さい値を選択するように制御する。これは、参照フレーム候補の設定において、現フレームとの相関が高いフレームに小さいindex番号を与えためである。Index番号の設定方法には、自動的に設定される方法と、符号化時に設定する方法がある。前者では、現フレームに近いフレームから順に小さいindex番号が与えられる。後者は、例えばシーンチェンジ時などに適用され、以前に符号化した過去の同じカメラアングルのフレームに小さいindex番号を割り当てる。このように、小さいindex番号を選択することにより、処理対象のフレームに近い画像を選択する可能性が高くなる。   In this way, control is performed to select a smaller value among the Index numbers applied to the coding of the adjacent block. This is because, in the setting of reference frame candidates, a frame having a high correlation with the current frame is given a small index number. There are two methods of setting the index number: a method which is automatically set, and a method which is set at the time of encoding. In the former, smaller index numbers are given in order from the frame closer to the current frame. The latter is applied, for example, at a scene change time, and assigns a small index number to a frame of the same camera angle in the past that has been previously encoded. Thus, by selecting a small index number, the possibility of selecting an image close to the frame to be processed is increased.

図17に処理630の動きベクトル算出処理手順を説明する。この処理は、4x4ブロック単位で、forward,backwardについて個別に実施する。   The motion vector calculation processing procedure of processing 630 will be described with reference to FIG. This process is separately performed for forward and backward in units of 4x4 blocks.

まず、直上または直左の4x4ブロックの何れかが画像の外に位置しているか否かをチェックする(631)。処理631にて、何れかの4x4ブロックが画像の外に位置していると判定される場合には、4x4ブロックの動きベクトルをゼロベクトルとする(625)。処理631にて何れの4x4ブロックも画像内に位置していると判定される場合には、次に、直上または直左の4x4ブロックの何れかが処理620にて選択した参照フレームへの利用可能な動きベクトルを持っているか否かをチェックする(632)。処理632にて何れの4x4ブロックも選択した参照フレームへの利用可能な動きベクトルを持っていないと判定される場合には、4x4ブロックの動きベクトルをゼロベクトルとする(625)。処理632にて何れかの4x4ブロックが選択した参照フレームへの利用可能な動きベクトルを持っていると判定される場合には、直上または直左の4x4ブロックが有する何れかの動きベクトルが、処理620にて選択した参照フレームへのゼロベクトルであるか否かをチェックする(633)。処理633にて何れかの4x4ブロックの動きベクトルが参照フレームへのゼロベクトルと判定された場合には、4x4ブロックの動きベクトルをゼロベクトルとする(625)。処理633にて何れの4x4ブロックの動きベクトルも参照フレームへのゼロベクトルではないと判定された場合には、4x4ブロックに対する中間値予測により動きベクトルを算出する。このように、ゼロベクトルを優先的に選択するのは、Directモードが背景部分で特に効果が高いことに対応するためである。   First, it is checked whether any of the 4x4 block immediately above or right is located outside the image (631). If it is determined in the process 631 that any 4x4 block is located outside the image, the motion vector of the 4x4 block is set as a zero vector (625). If it is determined in process 631 that any 4x4 block is located in the image, then either the 4x4 block immediately above or immediately to the left can be used for the reference frame selected in process 620. It is checked whether or not it has any motion vector (632). If it is determined in process 632, that none of the 4x4 blocks have an available motion vector for the selected reference frame, then the motion vector of the 4x4 block is made zero vector (625). If it is determined at step 632 that any 4x4 block has an available motion vector to the selected reference frame, then any motion vector that the 4x4 block immediately above or immediately left has is processed. It is checked whether it is a zero vector to the reference frame selected at 620 (633). If it is determined in the process 633 that the motion vector of any 4x4 block is a zero vector for the reference frame, then the motion vector of the 4x4 block is set as a zero vector (625). If it is determined in the process 633 that none of the motion vectors of the 4 × 4 block is a zero vector for the reference frame, a motion vector is calculated by median prediction for the 4 × 4 block. Thus, the priority is given to selecting the zero vector because the Direct mode corresponds to being particularly effective in the background portion.

本発明には次のような変形も含まれる。   The present invention also includes the following modifications.

(1)本実施例では、代用モードの使用を図12のようにcollocated blockの状況によって決定しているが、directモードを代用モードに完全に切り換えることも考えられる。この方法では、処理301にてフレーム単位あるいはスライス単位(詳細は変形例(4)に記載)でdirectモードと代用モードの切り替えを制御する。これにより、選択候補が増え、特殊効果を施したシーンへの適用性が向上するため、予測効率も向上する。但し、参照フレームと現フレーム図9の動きベクトルの算出を外挿処理にて行う可能性が生じるため、演算処理量に強い制約がある条件では図12、13に示すように2方式の切り替え制御を実施する方法が有効である。   (1) In the present embodiment, although the use of the substitute mode is determined according to the situation of the collocated block as shown in FIG. 12, it is also conceivable to completely switch the direct mode to the substitute mode. In this method, in step 301, switching between the direct mode and the substitute mode is controlled in frame units or slice units (details will be described in the modification (4)). As a result, the number of selection candidates is increased, and the applicability to a scene subjected to a special effect is improved, so that the prediction efficiency is also improved. However, since there is a possibility that the calculation of the motion vector of the reference frame and the current frame FIG. 9 is performed by extrapolation processing, switching control of the two methods as shown in FIGS. The method to carry out is effective.

(2)図14〜17については、予測方向、参照フレーム、動きベクトルを周囲のブロックから生成するという全体処理が一致していれば細かい条件については限定されない。例えば、処理631にて「直上または直左の4x4ブロックの何れか」という記述を「直上ならびに直左の4x4ブロックの両者が」に変更した方法も本願に含まれる。また、モード選択時に利用するブロックを2個から3個(予測ベクトルの作成に使用する)に変えた方法も本願に含まれる。このモード選択時に利用するブロックを2個から3個に変える方法は、動きベクトル推定との整合性が良く、予測効率の向上にもつながるため、演算処理量に強い制約がない条件では有効である。   (2) As for FIGS. 14 to 17, the detailed conditions are not limited as long as the overall process of generating the prediction direction, the reference frame, and the motion vector from the surrounding blocks is the same. For example, the present application also includes a method in which the description “either of 4 × 4 block immediately above or immediately left” is changed to “both 4 × 4 blocks immediately above and immediately left” in process 631. In addition, a method in which the number of blocks used at the time of mode selection is changed from two to three (used for creating a prediction vector) is included in the present application. The method of changing the number of blocks used in this mode selection from 2 to 3 is good in consistency with the motion vector estimation and leads to the improvement of the prediction efficiency, so it is effective under the condition that there is no strong restriction on the operation processing amount .

(3)図1、2ならびに図12、13ではcollocated blockが現フレームに対して前方向のforward MVを持っていれば、そのforward MVに対するforward reference pictureのindex番号に関わらずdirectモードを適用する方法について示してきた。しかしながら、directモードは、forward MVに対するforward reference pictureが現フレームから離れると効果が低くなる傾向がある。そこで、forward MVに対するforward reference pictureのindex番号が0の場合のみdirectモードを適応する方法も有効と考えられる。図24と図25にてその方法を説明する。図24にピクチャレイヤのデータシンタックスを示す。
picture_layer()
{
picture_structure
frame_number
reference_picture_selection_layer()
if(coding_type() == B-picture){
direct_reference_usable
if(direct_reference_usable){
direct_mv_scale_bwd
direct_mv_scale_fwd
}
for(index=0; index<number of forward reference; index++){
picture_distance_fwd_dir[index]
picture_distance_fwd[index]
}
for(index=0; index<number of backward reference; index++){
picture_distance_bwd_dir[index]
picture_distance_bwd[index]
}
}
}
ピクチャタイプがB−pictureの場合について説明する。direct_reference_usable23は、directモード用に指定される後方参照フレームが現フレームよりも未来に位置しているおり、かつdirectモード用に指定される前方参照フレームが現フレームよりも過去に位置しているかを示す情報である。directモード用に指定される後方参照フレームは、通常、index0に割り当てられたbackward reference pictureであるが、この情報にて、index0のbackward reference pictureがdirectモードに使用できるか否かが明確に判断できる。
(3) In FIGS. 1, 2 and 12 and 13, if the collocated block has forward MV forward with respect to the current frame, the direct mode is applied regardless of the index number of forward reference picture for that forward MV. I have shown you how. However, the direct mode tends to be less effective when the forward reference picture for forward MV moves away from the current frame. Therefore, it is considered effective to apply the direct mode only when the index number of forward reference picture for forward MV is 0. The method will be described with reference to FIGS. 24 and 25. FIG. 24 shows the data syntax of the picture layer.
picture_layer ()
{
picture_structure
frame_number
reference_picture_selection_layer ()
if (coding_type () == B-picture) {
direct_reference_usable
if (direct_reference_usable) {
direct_mv_scale_bwd
direct_mv_scale_fwd
}
for (index = 0; index <number of forward reference; index ++) {
picture_distance_fwd_dir [index]
picture_distance_fwd [index]
}
for (index = 0; index <number of backward reference; index ++) {
picture_distance_bwd_dir [index]
picture_distance_bwd [index]
}
}
}
The case where the picture type is B-picture will be described. direct_reference_usable23 indicates whether the backward reference frame designated for direct mode is located in the future rather than the current frame, and whether the forward reference frame designated for direct mode is in the past before the current frame It is information. The back reference frame specified for direct mode is usually backward reference picture assigned to index 0, but with this information it can be clearly determined whether backward reference picture of index 0 can be used for direct mode .

また、directモード用に指定される前方参照フレームは、通常、index0に割り当てられたforward reference pictureであるが、この情報にて、index0のforward reference pictureがdirectモードに使用できるか否かが明確に判断できる。このデータ23が0、すなわちindex0のbackward reference pictureがcurrent pictureに対して前方向(過去方向)に位置しているが、あるいはindex0のforward reference pictureがcurrent pictureに対して後方向(未来方向)に位置しているピクチャについては、directモードが実施できないため、directモードの適用のために必要とされるピクチャ間隔情報は符号化/復号化する必要はない。従って、この場合には、current pictureとindex0のforward reference pictureの時間間隔を示すdirect_mv_scale_fwd2427とcurrent pictureとindex0のbackward reference pictureの時間間隔を示すdirect_mv_scale_bwd2429の符号化/復号化は省略される。データ26〜29は図10に示すbi−predictiveの動きベクトル符号化に用いるデータである。利用方法については、図2のところで説明したため、ここでは割愛する。   Also, the forward reference frame specified for direct mode is usually the forward reference picture assigned to index 0, but with this information it is clear whether forward reference picture for index 0 can be used for direct mode It can be judged. This data 23 is 0, that is, backward reference picture of index 0 is located forward (past direction) with respect to current picture, or forward reference picture of index 0 is backward (forward direction) with respect to current picture The picture interval information required for applying the direct mode does not need to be encoded / decoded because the direct mode can not be implemented for the located picture. Therefore, in this case, encoding / decoding of direct_mv_scale_fwd 2427 indicating the time interval of forward reference picture of current picture and index 0 and direct_mv_scale_bwd 2429 indicating the time interval of backward reference picture of current picture and index 0 is omitted. Data 26 to 29 are data used for bi-predictive motion vector coding shown in FIG. The method of use has been described in FIG. 2 and will not be described here.

なお、direct_reference_usable23は、directモード用に指定される後方参照フレームが現フレームよりも未来に位置しているか否かだけを示す情報とし、direct_mv_scale_fwdの位置を示す情報(direct_mv_scale_fwd_dir)をデータ2427の前に符号化/復号化する方法も考えられる。図9でforward reference pictureが、current pictureよりも後方にある状態のときには、2つの動きベクトル122と121は、外挿計算にてより算出される。   Note that direct_reference_usable 23 is information indicating only whether or not the backward reference frame designated for direct mode is located in the future relative to the current frame, and information (direct_mv_scale_fwd_dir) indicating the position of direct_mv_scale_fwd is encoded before data 2427. A method of conversion / decoding is also conceivable. When the forward reference picture is behind the current picture in FIG. 9, two motion vectors 122 and 121 are calculated by extrapolation.

図25の場合について、directモードの扱いについて説明する。図12、13の説明で示したように、図18のmb_skip_run11とmb_type12の選択候補にdirectモードが選択された場合でも、複数参照フレーム機能や2参照フレームの機能を適用する方式では、directモードが適用できないケースが考えられる。そこで、本発明では条件に応じて予測方法を切り換える手順を用いる。その手順を図25に示す。   The handling of the direct mode will be described for the case of FIG. As shown in FIGS. 12 and 13, even when the direct mode is selected as the selection candidate for mb_skip_run11 and mb_type12 shown in FIG. 18, the direct mode is the mode that applies the multiple reference frame function and the function of two reference frames. Inapplicable cases may be considered. Therefore, in the present invention, a procedure of switching the prediction method according to the condition is used. The procedure is shown in FIG.

最初に、ピクチャヘッダ内のdirect_reference_usable23にて、current pictureにdirectモードが使用可能か否かをチェックする(306)。処理306にて使用不可、すなわちindex0のforward referenceがcurrent pictureに対して時間的に未来に位置しているかあるいはindex0のbackward referenceがcurrent pictureに対して時間的に過去に位置していると判定された場合には、collocated blockのforward MVを必要としない代用モードにて予測マクロブロックを作成する(304)。処理306にて使用可能と判定された場合には、8x8ブロック毎に予測方法の判定を行う。   First, in direct_reference_usable 23 in the picture header, it is checked whether the direct mode can be used for the current picture (306). In process 306, it is determined that the forward reference of the index0 is not available, that is, the forward reference of the index0 is located in the future in time with respect to the current picture or the backward reference of the index0 is located in the past in time with respect to the current picture. If so, a predicted macroblock is created in a substitute mode that does not require forward MV of the collocated block (304). If it is determined in the process 306 that it can be used, the prediction method is determined for each 8x8 block.

ここで8x8ブロックとしたのは、図7のブロック分割方法では、参照フレームと予測方向選択の最小単位が8x8ブロックとされているためである。具体的には、8x8ブロックに対応するcollocated blockにForward MVを持つ予測モードが適用されているか否かをチェックする(307)。そして、適用されていると判定された場合には、directモードにて予測ブロックを作成し(303)、適用されていないと判定された場合には、代用モードにて予測ブロックを作成する(304)。処理307では、collocated 8x8 blockについて、予測モードがintraモードの場合、予測方向がbackward predictionの場合、あるいはforward reference pictureがcurrent pictureのforward reference picture setに含まれるindex0のreference pictureでない場合に、directモード使用不可と判定する。   The 8 × 8 block is used here because the minimum unit of reference frame and prediction direction selection is 8 × 8 block in the block division method of FIG. 7. Specifically, it is checked whether or not the prediction mode having Forward MV is applied to the collocated block corresponding to the 8x8 block (307). Then, if it is determined that it is applied, a prediction block is created in the direct mode (303), and if it is determined that it is not applied, a prediction block is created in the substitute mode (304) ). In process 307, for the collocated 8x8 block, direct mode if the prediction mode is intra mode, if the prediction direction is backward prediction, or if the forward reference picture is not the reference picture of index 0 included in the forward reference picture set of the current picture Determine that it can not be used.

なお、図12の場合と同様に、処理307のdirectモードの使用可否判定をマクロブロック単位で実施することも可能である。但し、この場合には、マクロブロック内のすべての予測ブロック、図7のブロック分割方法の場合には4個の8x8ブロックのすべてが、directモード使用可能の状態である場合にのみ、directモード使用可能と判定される。   As in the case of FIG. 12, it is also possible to perform the usability determination of the direct mode in the process 307 in units of macroblocks. However, in this case, the direct mode is used only when all the prediction blocks in the macro block and all four 8x8 blocks in the case of the block division method of FIG. 7 can be used in the direct mode. It is determined that it is possible.

なお、図24の説明で示したように、direct_reference_usable23がindex0のforward referenceがcurrent pictureに対して時間的に未来に位置しているか否かという条件のみを示している場合も考えられる。この場合には、図9のdirectモード予測にて図24の説明で示した外挿計算による動きベクトルの算出が実施される可能性がある。   Note that, as shown in the description of FIG. 24, it is also conceivable that only the condition that whether the forward reference of index 0 is located in the future temporally with respect to the current picture as direct_reference_usable 23 is indicated. In this case, there is a possibility that calculation of motion vectors by extrapolation calculation shown in the description of FIG. 24 is performed in the direct mode prediction of FIG.

さらに、上記変形例(1)で示したように、direct_reference_usable23にて、directモードの使用判定条件のみを示している場合も考えられる。この場合も、directモードの使用が指定されており、かつforward referenceが時間的に未来に位置しているか、あるいはbackward referenceが時間的に未来に位置している場合には、図9のdirectモード予測に用いる動きベクトルは外挿計算にて算出する。   Furthermore, as shown in the above-mentioned modified example (1), it is conceivable that only the use determination condition of the direct mode is indicated by direct_reference_usable 23. Also in this case, if the use of the direct mode is specified and the forward reference is temporally located in the future, or if the backward reference is temporally located in the future, the direct mode of FIG. Motion vectors used for prediction are calculated by extrapolation.

(4)図1、2ならびに図24では、ピクチャヘッダのデータ構造に限定して説明しているが、複数のマクロブロックをまとめたグループであるスライスレイヤのヘッダ部にこれらの情報が記載される場合にも本発明のデータ構造は適用できる。   (4) In FIGS. 1, 2 and 24, although the data structure of the picture header is described with a limitation, the information is described in the header portion of the slice layer which is a group of plural macroblocks. In any case, the data structure of the present invention is applicable.

圧縮データをスライス単位でデータパケット化して伝送する方式では、スライスレイヤのヘッダ部の情報でデータの復号手順を決める。そのため、復号化手順に関連する本発明の情報はスライスヘッダ部に必要となる。1つのスライスにどのマクロブロックが属するかを示す情報は、上位の通信・ネットワーク関連情報を司る通信パケットヘッダやファイルフォーマットのヘッダ部にて示される場合や、データ全体の構成を決めるシーケンスヘッダに示される場合などがある。このスライス単位でDirectモードと代用モードを切り替える方法は、フレーム単位で切り替える方法に比較して、選択の自由度が向上し、予測効率が向上する。但し、予測効率向上のためには、スライス単位での選択制御が必要となるため、演算量が増大する。したがって、リアルタイム処理を必要とするアプリケーションでは、フレーム構造によるフレーム単位での切り替え制御が有効と言える。   In the method of data packetizing and transmitting compressed data in slice units, the data decoding procedure is determined by the information in the header portion of the slice layer. Therefore, the information of the present invention related to the decoding procedure is needed in the slice header part. Information indicating which macro block belongs to one slice is indicated in the communication packet header that controls upper communication / network related information, the header part of the file format, or the sequence header that determines the entire data configuration. And so on. The method of switching between the Direct mode and the substitute mode in slice units improves the freedom of selection and prediction efficiency as compared with the method of switching in frame units. However, in order to improve prediction efficiency, selection control in slice units is required, and therefore the amount of computation increases. Therefore, in an application requiring real-time processing, it can be said that switching control in frame units by frame structure is effective.

ここまで説明した本発明の方式は、専用回路・専用チップを用いる画像符号化装置・画像復号化装置や、汎用プロセッサを用いるソフトウェア画像符号化装置・ソフトウェア画像復号化装置に適用できる。   The method of the present invention described so far can be applied to an image coding device / image decoding device using a dedicated circuit / chip and a software image coding device / software image decoding device using a general purpose processor.

図28に組み込み型のソフトウェア符号器・復号器の例として、アプリケーションプロセッサを用いた携帯端末の例を示す。主に無線通信処理を行うホスト部2820、カメラからの入力信号を処理するカメラ入力処理部2830、映像符号化/復号化などのアプリケーション処理を実施するアプリケーションプロセッサ部2800、表示データを処理する出力デバイス2840にて構成されている。符号化時には、カメラにて撮影された画像は、まず、カメラ入力処理部2830にて図3に示すようなYUV信号に変換され、アプリケーションプロセッサ部2800に入力される。   FIG. 28 shows an example of a portable terminal using an application processor as an example of the embedded software encoder / decoder. A host unit 2820 that mainly performs wireless communication processing, a camera input processing unit 2830 that processes an input signal from a camera, an application processor unit 2800 that performs application processing such as video encoding / decoding, and an output device that processes display data It is configured in 2840. At the time of encoding, an image captured by a camera is first converted to a YUV signal as shown in FIG. 3 by the camera input processing unit 2830 and input to the application processor unit 2800.

アプリケーションプロセッサ部2800は、入力画像を図1(または図2または図24)と図18に示すようなストリームデータに符号化する。組み込み型の場合には、汎用プロセッサ2810内の処理部2811にて符号化処理(図14〜17のフローチャートに示す動作を含む)を実施するためのソフトウェア(アセンブラコード)は、内部RAM2812または外部RAM2830に予め格納されている。また、図14〜17のフローチャートに示されるような予測処理に利用されるデータ(複数の参照ピクチャや各マクロブロックの参照ピクチャ番号、予測方向、動きベクトル)も、予め格納する領域が内部RAM2812または外部RAM2830に確保されている。アセンブラコードや各データの格納領域配置は、プロセッサ能力、バス速度、アセンブラコードや各データへの推定アクセス頻度とそれらの容量のバランスで設計される。通常、内部RAMは外部RAMよりもアクセス速度が速く、外部RAMは内部RAMよりも搭載容量が多い。従って、アクセス頻度が高く、容量が少ないデータ格納領域やアセンブラコードを内部RAMに配置する。この際、アセンブラコードは内部RAMと外部RAMに分割されて配置される場合もある。   The application processor unit 2800 encodes the input image into stream data as shown in FIG. 1 (or FIG. 2 or FIG. 24) and FIG. In the case of the embedded type, software (assembler code) for executing encoding processing (including the operations shown in the flowcharts of FIGS. 14 to 17) in the processing unit 2811 in the general-purpose processor 2810 is the internal RAM 2812 or the external RAM 2830. Are stored in advance. The area to be stored in advance with data used for prediction processing as shown in the flowcharts of FIGS. 14 to 17 (reference picture numbers of plural reference pictures and respective macroblocks, prediction direction, motion vector) is the internal RAM 2812 or It is secured in the external RAM 2830. The storage area arrangement of the assembler code and each data is designed with a balance of processor capacity, bus speed, estimated access frequency to assembler code and each data, and their capacity. Usually, the internal RAM has a faster access speed than the external RAM, and the external RAM has a larger mounted capacity than the internal RAM. Therefore, a data storage area or assembler code having a high access frequency and a small capacity is arranged in the internal RAM. At this time, the assembler code may be divided into an internal RAM and an external RAM.

符号化されたビットストリームデータは、外部RAM2830あるいはホスト部2820内のメモリに保存される。何れに保存されるかは、符号化ビットストリームデータの用途など、携帯端末向けのサービスにより異なる。復号時には、ホスト部2820あるいは外部RAM2830からアプリケーションプロセッサ部2800に符号化ビットストリームデータが供給される。アプリケーションプロセッサ部2800は、入力された符号化ビットストリームデータを復号し、YUV再生画像をRGB画像に変換したのち出力デバイス2840に出力する。この際、YUV再生画像は一旦外部RAMあるいは内部RAM内のフレームメモリに蓄積される場合もある。   The encoded bit stream data is stored in the external RAM 2830 or a memory in the host unit 2820. It depends on the service for the portable terminal, such as the use of the encoded bit stream data, as to which is stored. At the time of decoding, encoded bit stream data is supplied from the host unit 2820 or the external RAM 2830 to the application processor unit 2800. The application processor unit 2800 decodes the input encoded bit stream data, converts the YUV reproduction image into an RGB image, and outputs the RGB image to the output device 2840. At this time, the YUV reproduction image may be temporarily stored in a frame memory in the external RAM or the internal RAM.

符号化処理の場合と同様に、復号処理においても、汎用プロセッサ2810内の処理部2811にて復号処理(図14〜17のフローチャートに示す動作を含む)を実施するためのソフトウェア(アセンブラコード)は、内部RAM2812または外部RAM2830に予め格納されている。また、図14〜17のフローチャートに示されるような予測処理に利用されるデータ(複数の参照ピクチャや各マクロブロックの参照ピクチャ番号、予測方向、動きベクトル)も、予め格納する領域が内部RAM2812または外部RAM2830に確保されている。   Similarly to the case of the encoding process, also in the decoding process, software (assembler code) for performing the decoding process (including the operation shown in the flowcharts of FIGS. 14 to 17) in the processing unit 2811 in the general-purpose processor 2810 is , The internal RAM 2812 or the external RAM 2830 in advance. The area to be stored in advance with data used for prediction processing as shown in the flowcharts of FIGS. 14 to 17 (reference picture numbers of plural reference pictures and respective macroblocks, prediction direction, motion vector) is the internal RAM 2812 or It is secured in the external RAM 2830.

図29には、より汎用的な用途で用いられるソフトウェア符号器・復号器の例を示す。   FIG. 29 shows an example of a software encoder / decoder used for more general purpose applications.

符号化時には、入力画像はフレームメモリ2950に蓄えられ、汎用プロセッサ2900はここから情報を読み込んで符号化処理を行う。この汎用プロセッサを駆動するためのプログラム(図14〜17のフローチャートに示す動作を含む)はハードディスクやフロッピー(登録商標)ディスクなどによる蓄積デバイス2930から読み出されてプログラム用メモリ2920に蓄えられている。汎用プロセッサが出力する符号化情報は一旦入出力バッファ2940に蓄えられた後、符号化ビットストリームとして出力される。   At the time of encoding, an input image is stored in a frame memory 2950, and the general-purpose processor 2900 reads information from here and performs encoding processing. The program for driving this general-purpose processor (including the operations shown in the flowcharts of FIGS. 14 to 17) is read from the storage device 2930 such as a hard disk or floppy (registered trademark) disk and stored in the program memory 2920 . The coding information output from the general-purpose processor is temporarily stored in the input / output buffer 2940 and then output as a coding bit stream.

処理メモリ2910には、図14〜17のフローチャートに示されるような予測処理に利用されるデータ(複数の参照ピクチャや各マクロブロックの参照ピクチャ番号、予測方向、動きベクトル)が蓄積されており、プログラムの処理に従って汎用プロセッサにて読み込まれる。また、汎用プロセッサは、プログラムの処理に従ってデータを処理メモリに蓄積する。   The processing memory 2910 stores data used for prediction processing as shown in the flowcharts of FIGS. 14 to 17 (a plurality of reference pictures and reference picture numbers of macroblocks, prediction directions, motion vectors). It is read by the general purpose processor according to the processing of the program. In addition, the general-purpose processor stores data in the processing memory according to the processing of the program.

復号時には、入力された符号化ビットストリームは一旦入出力バッファ2940に蓄えられ、汎用プロセッサ2900はここから読み込んで復号する。この汎用プロセッサを駆動するためのプログラム(図14〜17のフローチャートに示す動作を含む)は、ハードディスクやフロッピー(登録商標)ディスクなどによる蓄積デバイス2930から読み出されてプログラム用メモリ2920に蓄えられている。復号された再生画像は一旦フレームメモリ2950に蓄えられた後、出力処理を実施するデバイスに出力される。処理メモリ2910には、図14〜17のフローチャートに示されるような予測処理に利用されるデータ(複数の参照ピクチャや各マクロブロックの参照ピクチャ番号、予測方向、動きベクトル)が蓄積されており、プログラムの処理に従って汎用プロセッサにて読み込まれる。また、汎用プロセッサは、プログラムの処理に従って生成されたデータを処理メモリに蓄積する。   At the time of decoding, the input coded bit stream is temporarily stored in the input / output buffer 2940, and the general-purpose processor 2900 reads from here and decodes. The program for driving this general-purpose processor (including the operation shown in the flowcharts of FIGS. 14 to 17) is read from the storage device 2930 such as a hard disk or floppy (registered trademark) disk and stored in the program memory 2920 There is. The decoded reproduced image is temporarily stored in a frame memory 2950 and then output to a device that performs output processing. The processing memory 2910 stores data used for prediction processing as shown in the flowcharts of FIGS. 14 to 17 (a plurality of reference pictures and reference picture numbers of macroblocks, prediction directions, motion vectors). It is read by the general purpose processor according to the processing of the program. The general-purpose processor also stores data generated according to the processing of the program in a processing memory.

専用回路・専用チップを用いる画像符号化装置の構成を図22に示す。1個のマクロブロック処理の符号化処理について、処理の流れを説明する。まず、入力マクロブロック画像201とフレームメモリ210に蓄積されている符号化済みフレームの復号画像(参照フレーム)間の動き補償処理が全てのマクロブロックタイプ(8x8 Partitionタイプ)と候補参照フレームの組み合わせについて、動き補償器211にて行われ、最適なマクロブロックタイプと8x8 Partitionタイプが選択される。この際、Directモードの動き補償を行う場合には、MV予測器215から予測方向、参照フレーム番号、動きベクトル情報を取得する必要がある。   The configuration of an image coding apparatus using a dedicated circuit and a dedicated chip is shown in FIG. The process flow of the coding process of one macroblock process will be described. First, the motion compensation process between the input macroblock image 201 and the decoded image (reference frame) of the encoded frame stored in the frame memory 210 is a combination of all macroblock types (8 × 8 Partition type) and candidate reference frames. , And is performed by the motion compensator 211, and the optimal macroblock type and 8x8 Partition type are selected. At this time, in the case of performing motion compensation in the Direct mode, it is necessary to acquire the prediction direction, the reference frame number, and the motion vector information from the MV predictor 215.

図26にMV予測器の内部構造を示す。Directモードを示すマクロブロックタイプ(8x8 Partitionタイプ)、マクロブロック位置情報(ブロック位置情報)ならびにdirectモードのタイプ(direct/alternative、動き補償器にて制御、alternative予測は図14〜図17に示す代用モード)が入力されるとスイッチャ2620を通してスイッチャ2630が起動される。スイッチャ2630は、directモードのタイプにしたがってスイッチを切り替える。   FIG. 26 shows the internal structure of the MV predictor. Macroblock type (8x8 Partition type) indicating Direct mode, macroblock position information (block position information) and direct mode type (direct / alternative, controlled by motion compensator, alternative prediction is the substitution shown in FIGS. 14 to 17 When the mode is input, the switcher 2630 is activated through the switcher 2620. The switcher 2630 switches switches according to the type of direct mode.

directモードのタイプがdirect予測の場合には、動きベクトル計算部2660が起動される。動きベクトル計算部2660は内部メモリ2610に保存されている情報を用いて、図9に示す予測パラメータを算出する。算出されたパラメータは、内部メモリに保存されるとともに動き補償器に通知される。   If the type of the direct mode is direct prediction, the motion vector calculator 2660 is activated. The motion vector calculation unit 2660 uses the information stored in the internal memory 2610 to calculate the prediction parameters shown in FIG. The calculated parameters are stored in the internal memory and notified to the motion compensator.

directモードのタイプがalternative予測の場合には、alternative予測部2640が起動される。alternative予測部は、図14に示す処理を実施する。具体的には、予測モード選択部2641,参照フレーム選択部2642,動きベクトル選択部2643が、内部メモリ2610に保存されている情報を用いて、ぞれぞれ、図15、図16、図17のフローチャートに示す処理を実施し、予測方向、参照フレーム番号ならびに動きベクトルを算出する。これらの予測パラメータは内部メモリに保存されるとともに動き補償器に通知される。   If the type of the direct mode is alternative prediction, the alternative prediction unit 2640 is activated. The alternative prediction unit carries out the process shown in FIG. Specifically, the prediction mode selection unit 2641, the reference frame selection unit 2642, and the motion vector selection unit 2643 use the information stored in the internal memory 2610, respectively, as shown in FIGS. The prediction direction, the reference frame number, and the motion vector are calculated. These prediction parameters are stored in the internal memory and notified to the motion compensator.

動き補償器の説明に戻る。最適なマクロブロックタイプ選択後、検出された動きベクトルは、マクロブロックタイプ、予測方向情報(forward/backward/bi−predictive)、参照フレーム番号と共にMV予測器215に通知され、内部メモリ2610の内容が更新される(directモードが選択された場合には、マクロブロックタイプあるいは8x8 Partitionタイプのみ)。   Return to the description of the motion compensator. After the optimum macroblock type is selected, the detected motion vector is notified to the MV predictor 215 together with the macroblock type, prediction direction information (forward / backward / bi-predictive), and reference frame number, and the contents of the internal memory 2610 are It will be updated (Macroblock type or 8x8 Partition type only if direct mode is selected).

マクロブロックタイプならびに8x8 Partitionタイプがdirectでないブロックについては、動きベクトル予測部2650(スイッチャ2620にて起動)にて図8に示す予測処理を実施し、差分動きベクトルを算出する。算出された差分動きベクトルは、マクロブロックタイプ、8x8 Partitionタイプならびに参照フレーム番号と共に多重化器206に出力される(directモードが選択された場合には、差分動きベクトルと参照フレーム番号は多重化されない)。   The motion vector prediction unit 2650 (activated by the switcher 2620) performs prediction processing shown in FIG. 8 for a block whose macroblock type and 8x8 Partition type are not direct, and calculates a differential motion vector. The calculated differential motion vector is output to the multiplexer 206 together with the macroblock type, 8x8 Partition type and reference frame number (if the direct mode is selected, the differential motion vector and reference frame number are not multiplexed ).

なお、ここでは、差分動きベクトルの算出を最適なマクロブロックタイプ(8x8 Partitionタイプ)についてのみについて行うものとしているが、差分動きベクトルの値やその符号量を最適マクロブロックタイプ(8x8 Partitionタイプ)選択時の評価値として利用する場合も考えられる。この場合には、それぞれのマクロブロックタイプ(8x8 Partitionタイプ)や参照フレームの組み合わせについて、MV予測器にて差分動きベクトルを算出する。   Here, although it is assumed that the calculation of the differential motion vector is performed only for the optimal macroblock type (8x8 Partition type), the value of the differential motion vector and the code amount thereof are selected as the optimal macroblock type (8x8 Partition type) It is also conceivable to use it as an hourly evaluation value. In this case, for each combination of macroblock type (8x8 Partition type) and reference frame, a motion vector difference is calculated by the MV predictor.

動き補償により生成された参照フレームから抜き出された予測マクロブロック画像213は、Intra/Inter判定処理部214に入力される。Intra/Inter判定部では、イントラモードとインターモードのいずれを最終的なマクロブロックタイプとするかを決定し、判定情報218を多重化器206ならびにMV予測器215に通知する。MV予測器215は、判定情報218がイントラモードの場合、内部メモリ内の保存データを更新する。   The predicted macroblock image 213 extracted from the reference frame generated by the motion compensation is input to the Intra / Inter determination processing unit 214. The Intra / Inter determination unit determines which of the intra mode and the inter mode is to be the final macroblock type, and notifies the determination information 218 to the multiplexer 206 and the MV predictor 215. When the determination information 218 is in the intra mode, the MV predictor 215 updates the stored data in the internal memory.

多重化器は、イントラ/インターモード判定結果と、MV予測器から得られたインターモードのマクロブロックタイプ、8x8 Partitionタイプ、参照フレーム番号ならびに差分動きベクトル(directモードが選択された場合には、差分動きベクトルと参照フレーム番号はなし)から図18に示す符号を生成し、符号化ビットストリームに多重化する。   The multiplexer uses the inter / inter mode judgment result, the inter mode macroblock type obtained from the MV predictor, the 8x8 Partition type, the reference frame number, and the differential motion vector (if the direct mode is selected, the differential The code shown in FIG. 18 is generated from the motion vector and the reference frame number) and multiplexed into a coded bit stream.

Intra/Inter判定部にて選択されたマクロブロックタイプがインターモードの場合には、予測マクロブロック画像は、現フレームの入力マクロブロック画像201との間で差分器202にて差分処理され、差分マクロブロック画像が生成される。この際、同時に、予測マクロブロック画像は加算器209に出力される。Intra/Inter判定部にて選択されたマクロブロックタイプがイントラモードの場合には、差分器202ならびに加算器209には予測マクロブロックは出力されない。   When the macroblock type selected by the Intra / Inter determination unit is the inter mode, the predicted macroblock image is differentially processed by the difference unit 202 from the input macroblock image 201 of the current frame, and the difference macro A block image is generated. At this time, the predicted macroblock image is simultaneously output to the adder 209. When the macroblock type selected by the Intra / Inter determination unit is the intra mode, the predicted macroblock is not output to the difference unit 202 and the adder 209.

差分器202から出力される差分マクロブロック画像あるいは入力マクロブロック画像は、まず、DCT変換される。DCTのブロックサイズは従来の符号化方式では8×8画素が一般的であるが、最近では、MPEG−4 Part10(Advanced Video Coding)などで4x4画素サイズによるDCT変換も検討されているため、ここでは、4×4DCTを例に説明する。差分マクロブロック画像は、図6に示すように、24個の4x4画素ブロックに分割され、DCT変換器203にてそれぞれ16個のDCT係数に変換される。各DCT係数は、量子化器204にて量子化され、多重化器206にて符号化される。   The differential macroblock image or input macroblock image output from the difference unit 202 is first DCT-transformed. The block size of the DCT is generally 8 × 8 pixels in the conventional coding method, but recently, since the DCT conversion with the 4 × 4 pixel size is considered in MPEG-4 Part 10 (Advanced Video Coding) etc. The 4 × 4 DCT will be described as an example. The differential macroblock image is divided into 24 4 × 4 pixel blocks as shown in FIG. 6 and converted into 16 DCT coefficients by the DCT transformer 203, respectively. Each DCT coefficient is quantized by a quantizer 204 and encoded by a multiplexer 206.

多重化器206では、図1、図2あるいは図24に示すようなヘッダ情報と共に図18に示すようなマクロブロックデータ情報を多重化し、符号化ビットストリームを生成する。量子化DCT係数は、局部復号器220の逆量子化器207と逆DCT器208にて、差分マクロブロック画像あるいはマクロブロック画像に復号される。そのマクロブロックの予測モードがインターモードの場合には、差分マクロブロック画像が加算器209にて予測マクロブロック画像と加算した後、フレームメモリ201に合成される。そのマクロブロックがイントラモードの場合には、復元されたマクロブロック画像がフレームメモリ201に合成される。   The multiplexer 206 multiplexes the macroblock data information as shown in FIG. 18 together with the header information as shown in FIG. 1, FIG. 2 or FIG. 24 to generate a coded bit stream. The quantized DCT coefficients are decoded into a differential macroblock image or a macroblock image in the inverse quantizer 207 and the inverse DCT unit 208 of the local decoder 220. When the prediction mode of the macro block is the inter mode, the difference macro block image is added to the predicted macro block image by the adder 209 and then synthesized in the frame memory 201. When the macroblock is in the intra mode, the restored macroblock image is synthesized in the frame memory 201.

図22のイントラモードではイントラ予測を実施していないが、イントラ予測を実施する符号化方式でも、本発明は適用できる。この場合、Intra/Inter判定部にてイントラ予測を実施してもよいが、この処理を動き補償部に組み込む場合も考えられる。特にMPEG−4 Part10(Advanced Video Coding)のように複数のイントラ予測タイプを準備している符号化方式では、インター予測タイプと同列にイントラ予測タイプを扱えるため、装置構成が簡易となる。この場合には、動き補償部211から常に差分予測マクロブロック画像213が差分器202と加算器209に供給される。また、マクロブロックタイプ情報に判定情報218が含まれているため、判定情報218は削除でき、判定情報218の入力に伴うMV予測部215での内部メモリ更新処理も省略される。また、DCT係数レベルでイントラ予測を行う場合も考えられる。この場合は、DCT変換部203ならびにIDCT変換部208に予測処理を組み込むことで対応できる。   Although intra prediction is not performed in the intra mode of FIG. 22, the present invention is also applicable to a coding method for performing intra prediction. In this case, intra prediction may be performed in the Intra / Inter determination unit, but it is also possible to incorporate this process into the motion compensation unit. In particular, in a coding method in which a plurality of intra prediction types are prepared, such as MPEG-4 Part 10 (Advanced Video Coding), the intra prediction type can be handled in the same row as the inter prediction types, so the device configuration is simplified. In this case, the motion compensation unit 211 always supplies the difference prediction macroblock image 213 to the difference unit 202 and the adder 209. Further, since the determination information 218 is included in the macro block type information, the determination information 218 can be deleted, and the internal memory updating process in the MV prediction unit 215 accompanying the input of the determination information 218 is also omitted. In addition, intra prediction may be performed at the DCT coefficient level. This case can be coped with by incorporating a prediction process into the DCT transformation unit 203 and the IDCT transformation unit 208.

専用回路・専用チップを用いる画像復号装置の構成を図23に示す。1個のマクロブロック処理の復号処理について、処理の流れを説明する。まず、符号化解読器501にて、入力された符号化データを解析し、動きベクトル関連情報とマクロブロックタイプ情報をMV予測器508に、量子化DCT係数情報を逆量子化器502に振り分ける。   The configuration of an image decoding apparatus using a dedicated circuit and a dedicated chip is shown in FIG. A process flow of the decoding process of one macroblock process will be described. First, the coding / decoding unit 501 analyzes the input coded data, and distributes motion vector related information and macroblock type information to the MV predictor 508 and quantized DCT coefficient information to the dequantizer 502.

マクロブロックの予測モードがインターモードの場合には、MV予測器508に、ブロック位置情報、マクロブロックタイプ、8x8 Partitionタイプ、予測方向情報、参照フレーム番号ならびに差分動きベクトルが入力される(マクロブロックタイプがdirectモードの場合には、マクロブロックタイプとマクロブロック位置情報のみが入力される。また、8x8 Partitionタイプがdirectのときは、その8x8ブロックについては、参照フレーム番号ならびに差分動きベクトルは入力されない)。   When the prediction mode of the macroblock is the inter mode, the block position information, the macroblock type, the 8x8 Partition type, the prediction direction information, the reference frame number, and the differential motion vector are input to the MV predictor 508 (macroblock type When the mode is the direct mode, only the macro block type and the macro block position information are input, and when the 8x8 partition type is direct, the reference frame number and the differential motion vector are not input for the 8x8 block) .

図27にMV予測器の内部構造を示す。マクロブロックタイプあるいは8x8 Partitionタイプがdirectのときには、マクロブロック位置情報あるいはブロック位置情報と共に符号化解読器501で復号されたスライスヘッダ情報内のdirectモードのタイプ(direct/alternative、動き補償器にて制御)が入力される。マクロブロック位置情報(ブロック位置情報)ならびにdirectモードのタイプ(direct/alternative、動き補償器にて制御)が入力されるとスイッチャ2620を通してスイッチャ2630が起動される。スイッチャ2630は、directモードのタイプにしたがってスイッチを切り替える。   FIG. 27 shows the internal structure of the MV predictor. When the macroblock type or 8x8 Partition type is direct, the type of direct mode (direct / alternative, controlled by motion compensator) in slice header information decoded by the decoding / decoding device 501 together with the macroblock position information or block position information Is input. When the macroblock position information (block position information) and the type of direct mode (direct / alternative, controlled by motion compensator) are input, the switcher 2630 is activated through the switcher 2620. The switcher 2630 switches switches according to the type of direct mode.

directモードのタイプがdirect予測の場合には、動きベクトル計算部2660が起動される。動きベクトル計算部2660は内部メモリ2710に保存されている情報を用いて、図9に示す予測パラメータを算出する。算出されたパラメータは、内部メモリに保存されるとともに動き補償器504に通知される。   If the type of the direct mode is direct prediction, the motion vector calculator 2660 is activated. The motion vector calculation unit 2660 uses the information stored in the internal memory 2710 to calculate prediction parameters shown in FIG. The calculated parameters are stored in the internal memory and notified to the motion compensator 504.

directモードのタイプがalternative予測の場合には、alternative予測部2640が起動される。alternative予測部は、図14に示す処理を実施する。具体的には、予測モード選択部2641,参照フレーム選択部2642,動きベクトル選択部2643が、内部メモリ2710に保存されている情報を用いて、ぞれぞれ、図15、図16、図17のフローチャートに示す処理を実施し、予測方向、参照フレーム番号ならびに動きベクトルを算出する。これらの予測パラメータは内部メモリ2710に保存されるとともに動き補償器504に出力される。   If the type of the direct mode is alternative prediction, the alternative prediction unit 2640 is activated. The alternative prediction unit carries out the process shown in FIG. Specifically, the prediction mode selection unit 2641, the reference frame selection unit 2642, and the motion vector selection unit 2643 use the information stored in the internal memory 2710, respectively, as shown in FIGS. The prediction direction, the reference frame number, and the motion vector are calculated. These prediction parameters are stored in the internal memory 2710 and output to the motion compensator 504.

マクロブロックタイプ(8x8 Partitionタイプ)がdirectでない時には、マクロブロックタイプ(8x8 Partitionタイプ)と共に、マクロブロック位置情報(ブロック位置情報)、参照フレーム番号ならびに差分動きベクトルが入力され、スイッチャ2620により動きベクトル予測器2750が起動される。   When the macroblock type (8x8 Partition type) is not direct, together with the macroblock type (8x8 Partition type), the macroblock position information (block position information), the reference frame number and the differential motion vector are input, and the motion vector prediction is performed by the switcher 2620 Vessel 2750 is activated.

動きベクトル予測部2750では、内部メモリ2710の内容と入力データを用いて図8に示す予測処理を実施し、動きベクトルを復元する。復元された動きベクトルは、予測方向情報、参照フレーム番号と共に内部メモリ2710と動き補償器504に出力される。動き補償器504では、入力されたデータとフレームメモリ507内の参照ピクチャを用いて予測マクロブロック画像を生成する。   The motion vector prediction unit 2750 performs the prediction process shown in FIG. 8 using the contents of the internal memory 2710 and the input data to restore the motion vector. The restored motion vector is output to the internal memory 2710 and the motion compensator 504 together with the prediction direction information and the reference frame number. The motion compensator 504 uses the input data and the reference picture in the frame memory 507 to generate a predicted macroblock image.

次に、予測誤差信号に関する符号化データを、逆量子化器502と逆DCT器503において、4×4画素ブロック毎に、逆量子化・逆DCT処理し、差分マクロブロック画像を再生する。そして、予測マクロブロック画像と差分マクロブロック画像を加算器505にて加算処理し、マクロブロック画像を再生する。再生されたマクロブロック画像は、合成器506にて復号フレーム画像に合成される。また、復号フレーム画像は、次フレームの予測用にフレームメモリ507に蓄積される。   Next, the inverse quantizer 502 and the inverse DCT 503 perform inverse quantization / inverse DCT processing on the encoded data relating to the prediction error signal for each 4 × 4 pixel block to reproduce a differential macroblock image. Then, the predicted macroblock image and the difference macroblock image are subjected to addition processing by the adder 505 to reproduce the macroblock image. The reproduced macroblock image is synthesized by the synthesizer 506 into the decoded frame image. Also, the decoded frame image is stored in the frame memory 507 for prediction of the next frame.

マクロブロックタイプがイントラモードであった場合には、復号した量子化DCT係数情報を、逆量子化器502と逆DCT器503において、4×4画素ブロック毎に逆量子化・逆DCT処理し、マクロブロック画像を再生する。この際、図27の内部メモリ2710の内容は、イントラモードとして更新される。この図では、イントラ予測は実施されないが、MPEG−4 Part10(Advanced Video Coding)のように複数のイントラ予測タイプを準備している符号化方式でも、本発明は適用できる。この場合には、動き補償部504がイントラ予測の機能を含まれ、動き補償部からは常に予測マクロブロック画像が出力される。   When the macro block type is the intra mode, the inverse quantization unit 502 and the inverse DCT unit 503 apply inverse quantization / inverse DCT processing to the decoded quantized DCT coefficient information for each 4 × 4 pixel block, Play back a macroblock image. At this time, the contents of the internal memory 2710 of FIG. 27 are updated as the intra mode. Although intra prediction is not performed in this figure, the present invention can also be applied to a coding scheme in which a plurality of intra prediction types are prepared, such as MPEG-4 Part 10 (Advanced Video Coding). In this case, the motion compensation unit 504 includes the function of intra prediction, and the motion compensation unit always outputs a predicted macroblock image.

図28や図29に示すソフトウェア符号化器(図14〜図17)ならびに図22と図26の符号化装置により生成される符号化ビットストリームを記録した蓄積メディア(記録媒体)の例を図30に示す。   Examples of storage media (recording media) on which the software encoders (FIGS. 14 to 17) shown in FIGS. 28 and 29 and the encoded bit stream generated by the encoders in FIGS. 22 and 26 are recorded are shown. Shown in.

デジタル情報を記録することができる記録ディスク(磁気ディスクや光ディスク)3000には、同心円上にデジタル情報が記録されている。このディスクに記録されているデジタル情報の一部3001を取り出すと、directモードと代用モードの選択情報(direct_reference_usable)3011を含むスライスヘッダ情報3010、SKIPモード情報(mb_skip_run)3021、3031、3041、3051、マクロブロックタイプ情報(mb_type,8x8 partition)3022、3032、3052、参照フレームの番号と動きベクトルの情報(ref_index_few,ref_index_bwd,mvd_fwd,mvd_bwd)3023、3053、DCT係数ならびに符号化ブロックパターン情報(CBP,residual())3024、3054が記録されている。以下、スライスヘッダにて、フレームタイプがB−picture、directモードが代用モードとされた場合について、データの構成を説明する。3021〜3024ならびに3051〜3054は、マクロブロックタイプがDirectではないマクロブロックの符号化データを示している。なお、8x8 Partitionにdirectが含まれる場合もこのデータ構成となる。但し、この場合、8x8 Partition typeがdirectとなる8x8ブロックに関する参照フレームの番号と動きベクトルの情報は符号化されないため、これらの情報は3023や3053には含まれず、復号時には、ソフトウェア復号器では図14〜図17、専用復号装置では図27の処理2640にて、予測方向、参照フレーム番号ならびに動きベクトルが算出される。   Digital information is recorded concentrically on a recording disk (magnetic disk or optical disk) 3000 capable of recording digital information. When a part 3001 of digital information recorded on the disc is taken out, slice header information 3010 including selection information (direct_reference_usable) 3011 of direct mode and substitute mode, SKIP mode information (mb_skip_run) 3021, 3031, 3041, 3051, Macroblock type information (mb_type, 8x8 partition) 3022, 3032, 3052, reference frame number and motion vector information (ref_index_few, ref_index_bwd, mvd_fwd, mvd_bwd) 3023, 3053, DCT coefficient and coding block pattern information (CBP, residual ()) 3024 and 3054 are recorded. Hereinafter, the data configuration will be described for the case where the frame type is B-picture and the direct mode is the substitute mode in the slice header. 3021 to 3024 and 3051 to 3054 indicate encoded data of macroblocks whose macroblock type is not Direct. This data configuration also applies when 8x8 Partition includes direct. However, in this case, the reference frame number and motion vector information for the 8x8 block for which the 8x8 Partition type is direct are not encoded, so these pieces of information are not included in 3023 and 3053. The prediction direction, the reference frame number, and the motion vector are calculated in process 2640 of FIG.

3031、3032、3035の組み合わせはマクロブロックタイプがdirectとなるマクロブロックの符号化データを示している。この場合には、参照フレームの番号と動きベクトルの情報は符号化されない。   The combination of 3031, 3032, and 3035 indicates the encoded data of the macroblock whose macroblock type is direct. In this case, reference frame numbers and motion vector information are not encoded.

復号時には、ソフトウェア復号器では図14〜図17、専用復号装置では図27の処理2640にて、予測方向、参照フレーム番号ならびに動きベクトルが算出される。3041は、スキップマクロブロックの例であり、マクロブロックタイプがdirectであり、DCT係数情報は存在しない。   At the time of decoding, the prediction direction, the reference frame number, and the motion vector are calculated by the software decoder in FIG. 14 to FIG. 17 and in the dedicated decoding device in process 2640 in FIG. 3041 is an example of a skip macroblock, a macroblock type is direct, and DCT coefficient information does not exist.

復号時には、ソフトウェア復号器では図14〜図17、専用復号装置では図27の処理2640にて、予測方向、参照フレーム番号ならびに動きベクトルが算出され、これらのデータにて合成された予測マクロブロック画像がそのまま再生マクロブロック画像となる。このように、蓄積メディアにマクロブロックタイプとしてdirectモードを示す符号を効率良く埋め込むことにより、少ない情報で再生マクロブロック画像を合成することが可能となる。   At the time of decoding, the prediction direction, the reference frame number and the motion vector are calculated by the software decoder in FIG. 14 to FIG. 17 in FIG. 14 and FIG. Becomes the reproduction macro block image as it is. As described above, by efficiently embedding a code indicating the direct mode as the macro block type in the storage medium, it is possible to synthesize a reproduction macro block image with a small amount of information.

図31に、本発明の符号化方法・復号方法を実現する装置の具体例を示す。記録媒体である光ディクス3101(DVD−ROM、DVD−R、BD−ROM:Blu−ray(登録商標) Disc ROM、CD−ROM/CD−Rなど)に記録した符号化ビットストリームを読み取り、復号化する再生装置3102にも本発明の復号化方法を実装することが可能である。この場合、再生された映像信号はテレビモニタ3103に表示される。   FIG. 31 shows a specific example of an apparatus for realizing the encoding method / decoding method of the present invention. Reads and decodes encoded bit stream recorded on optical disc 3101 (DVD-ROM, DVD-R, BD-ROM: Blu-ray (registered trademark) Disc ROM, CD-ROM / CD-R, etc.) which is a recording medium It is possible to implement the decoding method of the present invention also in the playback apparatus 3102 that In this case, the reproduced video signal is displayed on the television monitor 3103.

アンテナ3111から受信した地上デジタル放送あるいは衛星デジタル放送を符号化し、光ディスク3113(DVD−RAM、DVD−RW、BD−RAM、CD−RWなど)に符号化ビットストリームを記録する記録/再生装置3112にも本発明の符号化方法を実装することが可能である。また、光ディスク3113に記録した符号化ビットストリームを復号化する記録/再生装置3112にて、本発明の復号化方法も実装することが可能である。この場合、再生された映像信号はテレビモニタ3114に表示される。   A recording / reproducing apparatus 3112 that encodes terrestrial digital broadcasting or satellite digital broadcasting received from an antenna 3111 and records an encoded bit stream on an optical disc 3113 (DVD-RAM, DVD-RW, BD-RAM, CD-RW, etc.) It is also possible to implement the coding method of the present invention. The decoding method of the present invention can also be implemented in the recording / reproducing apparatus 3112 for decoding the coded bit stream recorded on the optical disc 3113. In this case, the reproduced video signal is displayed on the television monitor 3114.

パソコン3121に本発明の画像符号化方法・復号化方法用のソフトウェアを組み込むことにより、画像符号化・復号化装置として活用することが可能である。このソフトウェアはコンピュータ読み取り可能な記録媒体である何らかの蓄積メディア(光ディスク、フロッピー(登録商標)ディスク、ハードディスクなど)3122に記録されており、これをパソコンが読み込んで使用する。また、さらに何らかの通信回線にこのパソコンを接続することにより、映像通信端末として活用することも可能となる。   By incorporating software for the image encoding method / decoding method of the present invention into the personal computer 3121, it can be used as an image encoding / decoding device. This software is recorded on a storage medium (optical disk, floppy (registered trademark) disk, hard disk, etc.) 3122 which is a computer readable recording medium, and read by a personal computer for use. Furthermore, by connecting this personal computer to any communication line, it can be used as a video communication terminal.

ケーブルテレビ用のケーブル3131または衛星デジタル放送あるいは地上デジタル放送のアンテナに接続されたセットトップボックス3132内の復号装置にも本発明の復号方法を実装することが可能であり、デジタル放送をテレビモニタ3133で再生する構成も考えられる。セットトップボックスではなく、テレビモニタ内に本発明の復号方法を含む復号装置を組み込んでも良い。   The decoding method in the present invention can also be implemented in the decoding device in the set top box 3132 connected to the cable 3131 for cable television or the satellite digital broadcast or terrestrial digital broadcast antenna, and the digital broadcast television monitor 3133 It is also conceivable to play on the Instead of the set top box, a decoding apparatus including the decoding method of the present invention may be incorporated in a television monitor.

デジタル携帯端末3141にも本発明の符号化方法・復号方法を含む装置あるいはソフトウェア符号化器・復号器が実装可能である。実装形式としては、符号方法・復号方法を両方持つ送受信型の端末の他に、符号化のみの送信端末、復号化のみの受信端末の3通りの実装形式が考えられる。   An apparatus or software encoder / decoder including the encoding method / decoding method of the present invention can also be implemented in the digital portable terminal 3141. As the implementation format, in addition to the transmission / reception type terminal having both the coding method and the decoding method, three implementation formats of a transmission terminal only for encoding and a reception terminal only for decoding can be considered.

動画像撮影用のカメラ3151の中に本発明の符号化装置・復号装置を組み込むことも可能である。この場合撮影用カメラは符号化装置と該符号化装置からの出力を記録媒体に記録する記録装置とを持ち、符号化装置から出力された符号化ビットストリームを記録媒体に記録する。記録媒体は光ディクスの場合もある。尚、上記携帯端末にカメラがついている場合は撮像したものを符号化してアンテナを介して送出するようにすることもできる。   It is also possible to incorporate the encoding device / decoding device of the present invention into a camera 3151 for moving image shooting. In this case, the photographing camera has an encoding device and a recording device for recording the output from the encoding device on a recording medium, and records the encoded bit stream output from the encoding device on the recording medium. The recording medium may be an optical disc. If a camera is attached to the portable terminal, it is possible to encode the picked up image and send it out through an antenna.

カメラ入力を持つTV会議システム3161の中に本発明の符号化装置・復号装置を組み込むことも可能である。カメラから入力された映像は符号化装置にて符号化ビットストリームに符号化され、ネットワーク3162に配信される。ネットワークから受信した符号化ビットストリームは復号装置にて復号され、モニタに表示される。この場合、本発明の符号化方法ならびに復号方法を実現する手段は、符号化装置・復号装置ではなく、ソフトウェア符号化器・復号器の場合もある。   It is also possible to incorporate the encoding device / decoding device of the present invention into a video conferencing system 3161 with camera input. The video input from the camera is encoded into an encoded bit stream by the encoding device and distributed to the network 3162. The coded bit stream received from the network is decoded by the decoding device and displayed on the monitor. In this case, the means for realizing the encoding method and the decoding method of the present invention may be a software encoder / decoder rather than an encoder / decoder.

これらの装置に本発明の符号化方法ならびに復号方法を組み込むことにより、directモードとその代用モードを有効的に利用することが可能となり、予測性能が向上する。   By incorporating the encoding method and the decoding method of the present invention in these devices, it is possible to effectively use the direct mode and its substitute mode, and the prediction performance is improved.

本発明のヘッダ情報によりdirectモードに使用できるか否かが明確に判断できるようになる。さらに、フレーム番号が時刻情報を持たない場合において、参照フレームと現フレーム間の関係を示す情報を効率良く送ることが可能となる。また、本発明の代用モードとその切り換え手順により、directモードが適用できない場合の予測性能を向上させることが可能となる。   The header information of the present invention makes it possible to clearly determine whether or not the direct mode can be used. Furthermore, when the frame number does not have time information, it is possible to efficiently send information indicating the relationship between the reference frame and the current frame. Further, by the substitution mode of the present invention and its switching procedure, it is possible to improve the prediction performance when the direct mode can not be applied.

Claims (1)

動画像についての符号化ビットストリームを生成する符号化方法であって、
符号化側から復号化側へ復号対象ブロックの動きベクトル情報が伝送されない予測モードであるか否か判別に用いる第1のフラグ情報を生成する第1のステップと、
記符号化側から復号化側へ復号対象ブロックの動きベクトル情報が伝送されない予測モードにおいて、復号側において復号化処理に用いる動きベクトルの算出方法を復号対象ブロックに隣接するブロックの状態と第2のフラグ情報の両者により決定するための、前記第2のフラグ情報を生成する第2のステップとを備え、
前記動きベクトルの算出方法には、
復号側において復号対象ブロックが属するフレームの時間的に後に位置するフレーム内で前記復号対象ブロックと同じ位置にあるブロックが動きベクトルを有さない場合でも、復号対象ブロックに隣接する複数の隣接ブロックが有する動きベクトルから一つの動きベクトルを選択可能な第1の動きベクトル算出方法と、
復号側において復号対象ブロックが属するフレームの時間的に後に位置するフレーム内で前記復号対象ブロックと同じ位置にあるブロックが動きベクトルを有さず、前記復号対象ブロックの上側に位置するブロックおよび前記復号対象ブロックの左側に位置するブロックがいずれも画面外に位置する場合でも、双方向予測のゼロベクトルを選択可能な第2の動きベクトル算出方法と、
復号側において復号対象ブロックが属するフレームの時間的に後に位置するフレーム内で前記復号対象ブロックと同じ位置にあるブロックの動きベクトルに基づいて前記復号対象ブロックの動きベクトルを算出する第3の動きベクトル算出方法が含まれる、ことを特徴とする符号化方法。
A coding method for generating a coded bit stream for a moving image , comprising:
A first step of generating a first flag information used to determine whether the motion vector information of the decoding target block from the encoding side to the decoding side is the prediction mode that is not transmitted,
Prior SL prediction mode motion vector information is not transmitted to the decoding target block from the encoding side to the decoding side, the blocks adjacent to the current block a method of calculating a motion vector used for the decoding process the decoding side state and the second with both to determine the flag information, and a second step of generating the second flag information,
The method of calculating the motion vector includes
Even if the block at the same position as the decoding target block does not have a motion vector in the frame temporally behind the frame to which the decoding target block belongs on the decoding side, a plurality of adjacent blocks adjacent to the decoding target block A first motion vector calculation method capable of selecting one motion vector from the motion vectors it has;
The block located at the same position as the decoding target block in the frame located temporally behind the frame to which the decoding target block belongs on the decoding side has no motion vector, and the block positioned above the decoding target block and the decoding A second motion vector calculation method capable of selecting a zero vector of bi-directional prediction even when all blocks located on the left side of the target block are located outside the screen;
A third motion vector for calculating a motion vector of the block to be decoded based on a motion vector of a block located at the same position as the block to be decoded in a frame temporally behind the frame to which the block to be decoded belongs on the decoding side A coding method characterized in that it includes a calculation method .
JP2018048977A 2002-07-15 2018-03-16 Video coding method Expired - Lifetime JP6513847B2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2002205001 2002-07-15
JP2002205001 2002-07-15

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2016234911A Division JP6336017B2 (en) 2002-07-15 2016-12-02 Video decoding method

Publications (2)

Publication Number Publication Date
JP2018129835A JP2018129835A (en) 2018-08-16
JP6513847B2 true JP6513847B2 (en) 2019-05-15

Family

ID=30112744

Family Applications (12)

Application Number Title Priority Date Filing Date
JP2004521194A Expired - Lifetime JP4363326B2 (en) 2002-07-15 2003-07-11 Video decoding method
JP2011028088A Expired - Lifetime JP5017464B2 (en) 2002-07-15 2011-02-14 Video encoding method and decoding method
JP2011287366A Expired - Lifetime JP5470365B2 (en) 2002-07-15 2011-12-28 Video decoding method
JP2013165746A Expired - Lifetime JP5470494B2 (en) 2002-07-15 2013-08-09 Video decoding method
JP2013165750A Expired - Lifetime JP5470496B2 (en) 2002-07-15 2013-08-09 Video decoding method
JP2013165747A Expired - Lifetime JP5470495B2 (en) 2002-07-15 2013-08-09 Video decoding method
JP2013165748A Expired - Lifetime JP5977718B2 (en) 2002-07-15 2013-08-09 Video decoding method
JP2014162330A Expired - Lifetime JP5869635B2 (en) 2002-07-15 2014-08-08 Video decoding method
JP2015214233A Expired - Lifetime JP6122931B2 (en) 2002-07-15 2015-10-30 Video decoding method
JP2016234911A Expired - Lifetime JP6336017B2 (en) 2002-07-15 2016-12-02 Video decoding method
JP2018048976A Expired - Lifetime JP6336228B1 (en) 2002-07-15 2018-03-16 Video decoding method
JP2018048977A Expired - Lifetime JP6513847B2 (en) 2002-07-15 2018-03-16 Video coding method

Family Applications Before (11)

Application Number Title Priority Date Filing Date
JP2004521194A Expired - Lifetime JP4363326B2 (en) 2002-07-15 2003-07-11 Video decoding method
JP2011028088A Expired - Lifetime JP5017464B2 (en) 2002-07-15 2011-02-14 Video encoding method and decoding method
JP2011287366A Expired - Lifetime JP5470365B2 (en) 2002-07-15 2011-12-28 Video decoding method
JP2013165746A Expired - Lifetime JP5470494B2 (en) 2002-07-15 2013-08-09 Video decoding method
JP2013165750A Expired - Lifetime JP5470496B2 (en) 2002-07-15 2013-08-09 Video decoding method
JP2013165747A Expired - Lifetime JP5470495B2 (en) 2002-07-15 2013-08-09 Video decoding method
JP2013165748A Expired - Lifetime JP5977718B2 (en) 2002-07-15 2013-08-09 Video decoding method
JP2014162330A Expired - Lifetime JP5869635B2 (en) 2002-07-15 2014-08-08 Video decoding method
JP2015214233A Expired - Lifetime JP6122931B2 (en) 2002-07-15 2015-10-30 Video decoding method
JP2016234911A Expired - Lifetime JP6336017B2 (en) 2002-07-15 2016-12-02 Video decoding method
JP2018048976A Expired - Lifetime JP6336228B1 (en) 2002-07-15 2018-03-16 Video decoding method

Country Status (5)

Country Link
US (16) US7970058B2 (en)
JP (12) JP4363326B2 (en)
CN (8) CN101043626B (en)
AU (1) AU2003281133A1 (en)
WO (1) WO2004008775A1 (en)

Families Citing this family (158)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003053066A1 (en) 2001-12-17 2003-06-26 Microsoft Corporation Skip macroblock coding
US7003035B2 (en) * 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
US20040001546A1 (en) 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
US7154952B2 (en) 2002-07-19 2006-12-26 Microsoft Corporation Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures
US8064520B2 (en) * 2003-09-07 2011-11-22 Microsoft Corporation Advanced bi-directional predictive coding of interlaced video
US7590059B2 (en) * 2004-05-21 2009-09-15 Broadcom Corp. Multistandard video decoder
US8649436B2 (en) * 2004-08-20 2014-02-11 Sigma Designs Inc. Methods for efficient implementation of skip/direct modes in digital video compression algorithms
ITTO20040781A1 (en) * 2004-11-09 2005-02-09 St Microelectronics Srl PROCEDURE FOR DYNAMIC ADAPTATION OF THE BIT-RATE OF A DIGITAL SIGNAL TO THE AVAILABLE BAND WIDTH, RELATED DEVICES AND COMPREHENSIVE IT PRODUCT
ITTO20040780A1 (en) 2004-11-09 2005-02-09 St Microelectronics Srl PROCEDURE AND SYSTEM FOR THE TREATMENT OF SIGNALS TO MULTIPLE DESCRIPTIONS, ITS COMPUTER PRODUCT
WO2006088145A1 (en) * 2005-02-18 2006-08-24 Matsushita Electric Industrial Co., Ltd. Stream reproduction device and stream supply device
US8488889B2 (en) * 2005-07-22 2013-07-16 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
EP1909508A4 (en) * 2005-07-22 2011-05-25 Mitsubishi Electric Corp Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein, and computer readable recording medium having image decoding program recorded
US8509551B2 (en) * 2005-07-22 2013-08-13 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recording with image encoding program and computer readable recording medium recorded with image decoding program
KR100714698B1 (en) * 2005-08-29 2007-05-07 삼성전자주식회사 Enhanced motion estimation method, video encoding method and apparatus using the same
CN100362869C (en) * 2005-09-14 2008-01-16 南京大学 Adaptive reference frame selecting method based on mode inheritance in multiframe movement estimation
US20070088633A1 (en) * 2005-10-19 2007-04-19 Mod Systems Method and system for optimal or near-optimal selection of content for broadcast in a commercial environment
JP2007116351A (en) * 2005-10-19 2007-05-10 Ntt Docomo Inc Image prediction coding apparatus, image prediction decoding apparatus, image prediction coding method, image prediction decoding method, image prediction coding program, and image prediction decoding program
US20070088659A1 (en) * 2005-10-19 2007-04-19 Mod Systems Distribution of selected digitally-encoded content to a storage device, user device, or other distribution target with concurrent rendering of selected content
KR100873636B1 (en) 2005-11-14 2008-12-12 삼성전자주식회사 Method and apparatus for encoding/decoding image using single coding mode
CN102036071B (en) * 2005-12-08 2014-04-02 维德约股份有限公司 Systems and methods for error resilience and random access in video communication systems
DE602005021807D1 (en) * 2005-12-22 2010-07-22 Microsoft Corp Optimizations for network encoding and network decoding
US7965774B2 (en) * 2006-01-06 2011-06-21 International Business Machines Corporation Method for visual signal extrapolation or interpolation
US9137537B2 (en) * 2006-02-01 2015-09-15 Flextronics Ap, Llc Dynamic reference frame decision method and system
US8693538B2 (en) 2006-03-03 2014-04-08 Vidyo, Inc. System and method for providing error resilience, random access and rate control in scalable video communications
EP2006314B2 (en) 2006-03-29 2019-07-31 Mitsui Chemicals, Inc. Propylene random block copolymer, resin compositions containing the copolymer, and moldings of both
US20070239722A1 (en) * 2006-03-30 2007-10-11 Phillips Mark E Distributed user-profile data structure
US8270492B2 (en) * 2006-05-12 2012-09-18 Panasonic Corporation Moving picture decoding device
CN101998120B (en) * 2006-05-24 2014-07-30 松下电器产业株式会社 Image coding device, image coding method, and image coding integrated circuit
JP4624321B2 (en) * 2006-08-04 2011-02-02 株式会社メガチップス Transcoder and coded image conversion method
KR100842557B1 (en) * 2006-10-20 2008-07-01 삼성전자주식회사 Method for accessing memory in moving picture processing device
JP4427086B2 (en) 2006-12-27 2010-03-03 パナソニック株式会社 Video decoding device
CN101647279A (en) * 2007-01-24 2010-02-10 Lg电子株式会社 A method and an apparatus for processing a video signal
US20080250120A1 (en) * 2007-02-22 2008-10-09 Colin Kennedy Mick Method and apparatus for distributing a multimedia file to a public kiosk across a network
US20080222155A1 (en) * 2007-03-08 2008-09-11 Phillips Mark E Method and apparatus for partial publication and inventory maintenance of media objects in a region
WO2008127597A2 (en) * 2007-04-12 2008-10-23 Thomson Licensing Method and apparatus for context dependent merging for skip-direct modes for video encoding and decoding
US20080279281A1 (en) * 2007-05-08 2008-11-13 Draper Stark C Method and System for Compound Conditional Source Coding
US8571104B2 (en) * 2007-06-15 2013-10-29 Qualcomm, Incorporated Adaptive coefficient scanning in video coding
US8619853B2 (en) 2007-06-15 2013-12-31 Qualcomm Incorporated Separable directional transforms
US20090003449A1 (en) * 2007-06-28 2009-01-01 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method and image decoding method
CN103281542B (en) * 2007-06-29 2017-07-14 夏普株式会社 Picture coding device, method for encoding images, image decoder, image decoding method
US8254455B2 (en) * 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
US8514939B2 (en) * 2007-10-31 2013-08-20 Broadcom Corporation Method and system for motion compensated picture rate up-conversion of digital video using picture boundary processing
CN101903463B (en) 2007-12-27 2013-03-20 三井化学株式会社 Propylene polymer composition
JP5357898B2 (en) * 2008-01-14 2013-12-04 トムソン ライセンシング Method and apparatus for artifact removal filtering using multi-grid sparsity-based filtering
KR101442608B1 (en) * 2008-02-05 2014-09-25 삼성전자주식회사 Method and apparatus for encoding/decoding image efficiently
KR100939917B1 (en) * 2008-03-07 2010-02-03 에스케이 텔레콤주식회사 Encoding system using motion estimation and encoding method using motion estimation
US20090279614A1 (en) * 2008-05-10 2009-11-12 Samsung Electronics Co., Ltd. Apparatus and method for managing reference frame buffer in layered video coding
BRPI0917456B1 (en) * 2008-08-19 2020-09-15 Contentarmor METHOD FOR SERVICE TO VIDEO FLOW OF ADAPTATIVE BINARY ARITHMETIC CODING WITH CONTEXT BASED (CABAC)
JP5536064B2 (en) * 2008-08-19 2014-07-02 トムソン ライセンシング Propagation map
BRPI0918019B1 (en) * 2008-08-19 2021-05-18 Contentarmor WATERMARK COMPATIBLE WITH CABAC/CVA OF SYNTAX ELEMENTS IN COMPRESSED VIDEO
CN102187673B (en) 2008-08-19 2014-07-30 汤姆森特许公司 Luminance evaluation
US8824727B2 (en) * 2008-08-20 2014-09-02 Thomson Licensing Selection of watermarks for the watermarking of compressed video
JP5680283B2 (en) * 2008-09-19 2015-03-04 株式会社Nttドコモ Moving picture encoding apparatus, moving picture decoding apparatus, moving picture encoding method, moving picture decoding method, moving picture encoding program, and moving picture decoding program
CN102210153A (en) 2008-10-06 2011-10-05 Lg电子株式会社 A method and an apparatus for processing a video signal
EP2392142B1 (en) * 2009-01-28 2018-10-24 Orange Method for encoding and decoding an image sequence implementing a movement compensation, and corresponding encoding and decoding devices, signal, and computer programs
TWI383688B (en) * 2009-03-11 2013-01-21 Quanta Comp Inc Video compression circuit and method thereof
US20100232511A1 (en) * 2009-03-12 2010-09-16 Himax Media Soltuions, Inc. Motion compensator, motion compensating method, and motion-compensated video decoder implementing the same
CA2756419C (en) 2009-03-23 2016-05-17 Ntt Docomo, Inc. Image predictive encoding device, image predictive encoding method, image predictive encoding program, image predictive decoding device, image predictive decoding method, and image predictive decoding program
KR101379185B1 (en) * 2009-04-14 2014-03-31 에스케이 텔레콤주식회사 Prediction Mode Selection Method and Apparatus and Video Enoding/Decoding Method and Apparatus Using Same
JP5468604B2 (en) * 2009-05-13 2014-04-09 パナソニック株式会社 Image decoding apparatus, integrated circuit, image decoding method, and image decoding system
US8861879B2 (en) * 2009-09-17 2014-10-14 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image based on skip mode
KR101611437B1 (en) * 2009-10-28 2016-04-26 삼성전자주식회사 Method and apparatus for encoding/decoding image by referencing to a plurality of frames
CN101729898B (en) * 2009-11-16 2011-06-15 中国人民解放军国防科学技术大学 Video coding and decoding methods and devices
KR20110068792A (en) 2009-12-16 2011-06-22 한국전자통신연구원 Adaptive image coding apparatus and method
US9105091B2 (en) 2010-02-09 2015-08-11 Thomson Licensing Watermark detection using a propagation map
US20110206132A1 (en) * 2010-02-19 2011-08-25 Lazar Bivolarsky Data Compression for Video
US9313526B2 (en) 2010-02-19 2016-04-12 Skype Data compression for video
US9819358B2 (en) * 2010-02-19 2017-11-14 Skype Entropy encoding based on observed frequency
US20110206118A1 (en) * 2010-02-19 2011-08-25 Lazar Bivolarsky Data Compression for Video
US9609342B2 (en) * 2010-02-19 2017-03-28 Skype Compression for frames of a video signal using selected candidate blocks
JP5095033B2 (en) * 2010-03-03 2012-12-12 三菱電機株式会社 Data compression apparatus, data compression method, and program
JP5583439B2 (en) * 2010-03-17 2014-09-03 パナソニック株式会社 Image encoding apparatus and camera system
KR101750495B1 (en) * 2010-04-16 2017-06-27 에스케이텔레콤 주식회사 Inter Prediction method and Decoding/Encoding Method using Inter Prediction
US9491483B2 (en) * 2010-04-16 2016-11-08 Sk Telecom Co., Ltd. Inter-prediction method and video encoding/decoding method using the inter-prediction method
WO2011146451A1 (en) 2010-05-20 2011-11-24 Thomson Licensing Methods and apparatus for adaptive motion vector candidate ordering for video encoding and decoding
JP2011259204A (en) * 2010-06-09 2011-12-22 Sony Corp Image decoding device, image encoding device, and method and program thereof
US9456111B2 (en) * 2010-06-15 2016-09-27 Mediatek Inc. System and method for content adaptive clipping
RU2580073C2 (en) * 2010-07-15 2016-04-10 Мицубиси Электрик Корпорейшн Device for coding of moving images, device for decoding of moving images, method for coding of moving images and method for decoding of moving images
PT3661211T (en) 2010-07-20 2021-09-24 Ntt Docomo Inc Image prediction encoding device, image prediction encoding method, image prediction encoding program, image prediction decoding device, image prediction decoding method, and image prediction decoding program
KR101815723B1 (en) 2010-09-24 2018-01-05 선 페이턴트 트러스트 Image encoding method, image decoding method, image encoding apparatus, and image decoding apparatus
KR101583199B1 (en) * 2010-09-27 2016-01-07 엘지전자 주식회사 Method for partitioning block and decoding device
PT3001686T (en) * 2010-10-06 2020-03-26 Ntt Docomo Inc Image predictive encoding device, image predictive encoding method, image predictive encoding program, image predictive decoding device, image predictive decoding method, and image predictive decoding program
US9300961B2 (en) * 2010-11-24 2016-03-29 Panasonic Intellectual Property Corporation Of America Motion vector calculation method, picture coding method, picture decoding method, motion vector calculation apparatus, and picture coding and decoding apparatus
EP2661080A4 (en) * 2010-12-31 2016-06-29 Korea Electronics Telecomm Method for encoding video information and method for decoding video information, and apparatus using same
KR101820997B1 (en) 2011-01-12 2018-01-22 선 페이턴트 트러스트 Video encoding method and video decoding method
US10362327B2 (en) * 2011-01-14 2019-07-23 Sony Corporation B-picture syntax change for generalized bi-prediction in high efficiency video coding (HEVC)
KR20120088103A (en) * 2011-01-31 2012-08-08 삼성전자주식회사 Image processing device
WO2012114694A1 (en) 2011-02-22 2012-08-30 パナソニック株式会社 Moving image coding method, moving image coding device, moving image decoding method, and moving image decoding device
MX2013009864A (en) 2011-03-03 2013-10-25 Panasonic Corp Video image encoding method, video image decoding method, video image encoding device, video image decoding device, and video image encoding/decoding device.
GB2488816A (en) * 2011-03-09 2012-09-12 Canon Kk Mapping motion vectors from a plurality of reference frames to a single reference frame
EP4184918B1 (en) * 2011-03-21 2024-02-07 LG Electronics Inc. Video decoding method, video encoding method, computer-readable digital storage medium and transmission method of data for a video
RU2719308C2 (en) 2011-04-12 2020-04-17 Сан Пэтент Траст Method of encoding motion images, a motion image encoding device, a method of decoding motion images, a motion image decoding device and a motion image encoding and decoding device
WO2012160803A1 (en) 2011-05-24 2012-11-29 パナソニック株式会社 Image encoding method, image encoding apparatus, image decoding method, image decoding apparatus, and image encoding/decoding apparatus
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
PL2717575T3 (en) 2011-05-27 2019-03-29 Sun Patent Trust Image decoding method and image decoding device
CN103548351B (en) 2011-05-31 2017-07-11 太阳专利托管公司 Dynamic image decoding method and moving image decoding apparatus
SG194746A1 (en) 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
JPWO2012172668A1 (en) * 2011-06-15 2015-02-23 株式会社東芝 Moving picture encoding method and apparatus, and moving picture decoding method and apparatus
HUE052897T2 (en) * 2011-06-27 2021-05-28 Samsung Electronics Co Ltd Encoding and decoding motion information
JP5786499B2 (en) * 2011-06-30 2015-09-30 株式会社Jvcケンウッド Image decoding apparatus, image decoding method, and image decoding program
MX2013013029A (en) 2011-06-30 2013-12-02 Panasonic Corp Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device.
JP5786498B2 (en) * 2011-06-30 2015-09-30 株式会社Jvcケンウッド Image coding apparatus, image coding method, and image coding program
MX2014000159A (en) * 2011-07-02 2014-02-19 Samsung Electronics Co Ltd Sas-based semiconductor storage device memory disk unit.
GB2493212B (en) * 2011-07-29 2015-03-11 Canon Kk Method and device for error concealment in motion estimation of video data
EP3487178A1 (en) 2011-08-03 2019-05-22 Sun Patent Trust Video encoding method, video encoding apparatus, video decoding method, video decoding apparatus, and video encoding/decoding apparatus
KR101887424B1 (en) * 2011-08-22 2018-08-10 한국전자통신연구원 Apparatus and method for simulcast transmitting/receiving based on adaptive coding modulation
CN107580220B (en) 2011-09-09 2020-06-19 株式会社Kt Method for decoding video signal
US9131245B2 (en) 2011-09-23 2015-09-08 Qualcomm Incorporated Reference picture list construction for video coding
KR101809880B1 (en) * 2011-09-28 2017-12-15 가부시키가이샤 제이브이씨 켄우드 Video decoding device, video decoding method and recording medium storing video decoding program
US20140240472A1 (en) * 2011-10-11 2014-08-28 Panasonic Corporation 3d subtitle process device and 3d subtitle process method
KR101999869B1 (en) 2011-10-19 2019-07-12 선 페이턴트 트러스트 Image encoding method, image encoding device, image decoding method, and image decoding device
WO2013058363A1 (en) * 2011-10-20 2013-04-25 ソニー株式会社 Image processing device and method
US9264717B2 (en) 2011-10-31 2016-02-16 Qualcomm Incorporated Random access with advanced decoded picture buffer (DPB) management in video coding
US9451287B2 (en) 2011-11-08 2016-09-20 Qualcomm Incorporated Context reduction for context adaptive binary arithmetic coding
US9185408B2 (en) 2011-11-18 2015-11-10 Google Technology Holdings LLC Efficient storage of motion information for high efficiency video coding
US9392235B2 (en) * 2011-11-18 2016-07-12 Google Technology Holdings LLC Explicit way for signaling a collocated reference picture for video coding
US9386309B2 (en) * 2011-11-18 2016-07-05 Google Technology Holdings LLC Explicit way for signaling a collocated picture for high efficiency video coding (HEVC) using a single reference list
WO2013078248A1 (en) * 2011-11-21 2013-05-30 General Instrument Corporation Implicit determination and combined implicit and explicit determination of collocated picture for temporal prediction
EP2797325A4 (en) 2011-12-23 2015-09-16 Korea Electronics Telecomm Method and apparatus for setting reference picture index of temporal merging candidate
US9300959B2 (en) 2011-12-26 2016-03-29 Google Technology Holdings LLC Implicit determination of collocated picture for temporal prediction
CN104025587B (en) * 2011-12-28 2017-08-29 Jvc建伍株式会社 Moving image decoding device and moving picture decoding method
WO2013099244A1 (en) * 2011-12-28 2013-07-04 株式会社Jvcケンウッド Video encoding device, video encoding method, video encoding program, video decoding device, video decoding method, video decoding program
JP6078927B2 (en) * 2012-01-10 2017-02-15 サン パテント トラスト Moving picture coding method, moving picture coding apparatus, moving picture decoding method, and moving picture decoding apparatus
TWI580261B (en) * 2012-01-18 2017-04-21 Jvc Kenwood Corp Dynamic image decoding device, dynamic image decoding method, and dynamic image decoding program
US8693793B2 (en) * 2012-01-19 2014-04-08 Sharp Laboratories Of America, Inc. Reducing reference picture set signal overhead on an electronic device
US8867852B2 (en) 2012-01-19 2014-10-21 Sharp Kabushiki Kaisha Decoding a picture based on a reference picture set on an electronic device
KR20130085088A (en) * 2012-01-19 2013-07-29 한국전자통신연구원 Method for fast mode decision in scalable video coding and apparatus thereof
PL3917140T3 (en) * 2012-01-19 2023-12-04 Vid Scale, Inc. Method and apparatus for signaling and construction of video coding reference picture lists
RU2679551C2 (en) 2012-01-20 2019-02-11 ДжиИ Видео Компрешн, ЭлЭлСи Coding concept allowing parallel processing, transport demultiplexer and video bitstream
US9549177B2 (en) 2012-04-11 2017-01-17 Google Technology Holdings LLC Evaluation of signaling of collocated reference picture for temporal prediction
EP2837190A1 (en) 2012-04-11 2015-02-18 Motorola Mobility LLC Signaling of temporal motion vector predictor (mvp) flag for temporal prediction
WO2013158125A1 (en) * 2012-04-20 2013-10-24 Intel Corporation Performance and bandwidth efficient fractional motion estimation
US9319681B2 (en) 2012-07-18 2016-04-19 Google Technology Holdings LLC Signaling of temporal motion vector predictor (MVP) enable flag
US9106793B2 (en) * 2013-01-03 2015-08-11 Cisco Technology, Inc. Method and apparatus for motion based participant switching in multipoint video conferences
CN103200408B (en) * 2013-04-23 2016-03-30 华录出版传媒有限公司 A kind of video coding-decoding method
WO2014196206A1 (en) 2013-06-07 2014-12-11 三井化学株式会社 OLEFIN-BASED PAINT CONTAINING PROPYLENE/α-OLEFIN COPOLYMER
US9609338B2 (en) * 2013-10-25 2017-03-28 Microsoft Technology Licensing, Llc Layered video encoding and decoding
US20150117515A1 (en) * 2013-10-25 2015-04-30 Microsoft Corporation Layered Encoding Using Spatial and Temporal Analysis
CN111193930B (en) * 2013-12-16 2021-11-30 浙江大学 Method and device for coding and decoding forward double-hypothesis coding image block
JP2015128252A (en) * 2013-12-27 2015-07-09 日本電信電話株式会社 Prediction image generating method, prediction image generating device, prediction image generating program, and recording medium
US20150208082A1 (en) * 2014-01-21 2015-07-23 Vixs Systems, Inc. Video encoder with reference picture prediction and methods for use therewith
EP3103259A4 (en) * 2014-03-13 2017-11-01 Huawei Technologies Co., Ltd. Improved method for screen content coding
US10306229B2 (en) 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
CN106303544B (en) * 2015-05-26 2019-06-11 华为技术有限公司 A kind of video coding-decoding method, encoder and decoder
US10623774B2 (en) 2016-03-22 2020-04-14 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools
JP6918661B2 (en) * 2017-09-22 2021-08-11 キヤノン株式会社 Coding device, coding method and program
US11558633B2 (en) * 2017-11-01 2023-01-17 Vid Scale, Inc. Sub-block motion derivation and decoder-side motion vector refinement for merge mode
US10368071B2 (en) * 2017-11-03 2019-07-30 Arm Limited Encoding data arrays
US20190364295A1 (en) * 2018-05-25 2019-11-28 Tencent America LLC Method and apparatus for video coding
CN110536135B (en) * 2018-05-25 2021-11-05 腾讯美国有限责任公司 Method and apparatus for video encoding and decoding
MX2021000192A (en) * 2018-07-06 2021-05-31 Mitsubishi Electric Corp Bi-prediction with adaptive weights.
JP6958499B2 (en) 2018-07-09 2021-11-02 三菱電機株式会社 Semiconductor devices and power converters
MX2021002396A (en) 2018-08-28 2021-05-12 Huawei Tech Co Ltd Picture partition method and device.
US11665365B2 (en) * 2018-09-14 2023-05-30 Google Llc Motion prediction coding with coframe motion vectors
US11412225B2 (en) * 2018-09-27 2022-08-09 Electronics And Telecommunications Research Institute Method and apparatus for image processing using context-adaptive entropy model
US11323748B2 (en) 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
CN112135127B (en) * 2019-11-05 2021-09-21 杭州海康威视数字技术股份有限公司 Encoding and decoding method, device, equipment and machine readable storage medium
CN113079376B (en) * 2021-04-02 2022-08-19 北京数码视讯软件技术发展有限公司 Video coding method and device for static area

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5210005A (en) * 1988-08-16 1993-05-11 Fuji Photo Film Co., Ltd. Method and apparatus for developing photosensitive lithographic plate
JPH0738722B2 (en) * 1988-11-15 1995-04-26 国際電信電話株式会社 Motion compensation coding method
JP2519113B2 (en) * 1990-01-23 1996-07-31 日本ビクター株式会社 Method of transmitting motion vector information, transmitter and receiver thereof
GB2248361B (en) * 1990-09-28 1994-06-01 Sony Broadcast & Communication Motion dependent video signal processing
US5467136A (en) * 1991-05-31 1995-11-14 Kabushiki Kaisha Toshiba Video decoder for determining a motion vector from a scaled vector and a difference vector
US5210605A (en) * 1991-06-11 1993-05-11 Trustees Of Princeton University Method and apparatus for determining motion vectors for image sequences
JPH05336510A (en) 1992-06-03 1993-12-17 Matsushita Electric Ind Co Ltd Motion compensation encoding device and decoding device
US5737022A (en) * 1993-02-26 1998-04-07 Kabushiki Kaisha Toshiba Motion picture error concealment using simplified motion compensation
US5398068A (en) * 1993-09-02 1995-03-14 Trustees Of Princeton University Method and apparatus for determining motion vectors for image sequences
US6275532B1 (en) 1995-03-18 2001-08-14 Sharp Kabushiki Kaisha Video coding device and video decoding device with a motion compensated interframe prediction
JP3347954B2 (en) * 1995-11-02 2002-11-20 三菱電機株式会社 Video encoding device and video decoding device
US6957350B1 (en) * 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
US5796434A (en) * 1996-06-07 1998-08-18 Lsi Logic Corporation System and method for performing motion estimation in the DCT domain with improved efficiency
US6535558B1 (en) * 1997-01-24 2003-03-18 Sony Corporation Picture signal encoding method and apparatus, picture signal decoding method and apparatus and recording medium
CN1297147C (en) * 1997-03-07 2007-01-24 通用仪器公司 Prediction and coding of BI-directionally predicted video object planes for interlaced digital video
US6005980A (en) * 1997-03-07 1999-12-21 General Instrument Corporation Motion estimation and compensation of video object planes for interlaced digital video
US5991447A (en) 1997-03-07 1999-11-23 General Instrument Corporation Prediction and coding of bi-directionally predicted video object planes for interlaced digital video
GB2333656B (en) 1998-01-22 2002-08-14 British Broadcasting Corp Compressed signals
US6195389B1 (en) * 1998-04-16 2001-02-27 Scientific-Atlanta, Inc. Motion estimation system and methods
US6591015B1 (en) * 1998-07-29 2003-07-08 Matsushita Electric Industrial Co., Ltd. Video coding method and apparatus with motion compensation and motion vector estimator
US6983018B1 (en) 1998-11-30 2006-01-03 Microsoft Corporation Efficient motion vector coding for video compression
JP2001016595A (en) * 1999-04-30 2001-01-19 Fujitsu Ltd Moving picture encoder and decoder
KR20010101329A (en) * 1999-10-29 2001-11-14 요트.게.아. 롤페즈 Video encoding-method
KR100875781B1 (en) * 2000-03-13 2008-12-24 소니 가부시끼 가이샤 Content supply apparatus and method, and recording medium
JP4348851B2 (en) 2000-09-21 2009-10-21 ソニー株式会社 Recording medium, disk recording apparatus and method, and disk reproducing apparatus and method
JP2002148218A (en) 2000-11-08 2002-05-22 Mac Science Co Ltd X-ray diffractometer
CN1156168C (en) * 2001-01-12 2004-06-30 北京航空航天大学 Quick video motion estimating method
US6782052B2 (en) * 2001-03-16 2004-08-24 Sharp Laboratories Of America, Inc. Reference frame prediction and block mode prediction for fast motion searching in advanced video coding
US6721362B2 (en) * 2001-03-30 2004-04-13 Redrock Semiconductor, Ltd. Constrained discrete-cosine-transform coefficients for better error detection in a corrupted MPEG-4 bitstreams
EP1294194B8 (en) * 2001-09-10 2010-08-04 Texas Instruments Incorporated Apparatus and method for motion vector estimation
KR100642043B1 (en) 2001-09-14 2006-11-03 가부시키가이샤 엔티티 도코모 Coding method, decoding method, coding apparatus, decoding apparatus, image processing system, coding program, and decoding program
US20030123738A1 (en) * 2001-11-30 2003-07-03 Per Frojdh Global motion compensation for video pictures
WO2003053066A1 (en) * 2001-12-17 2003-06-26 Microsoft Corporation Skip macroblock coding
JP2004007379A (en) 2002-04-10 2004-01-08 Toshiba Corp Method for encoding moving image and method for decoding moving image
US7003035B2 (en) * 2002-01-25 2006-02-21 Microsoft Corporation Video coding methods and apparatuses
AU2003213360A1 (en) * 2002-03-14 2003-09-22 Matsushita Electric Industrial Co., Ltd. Motion vector detection method
EP1347649A1 (en) * 2002-03-18 2003-09-24 Lg Electronics Inc. B picture mode determining method and apparatus in video coding system
KR100931750B1 (en) 2002-04-19 2009-12-14 파나소닉 주식회사 Motion vector calculating method
EP3324624B1 (en) 2002-04-19 2019-06-12 Panasonic Intellectual Property Corporation of America Motion vector calculating method
JP2004208259A (en) 2002-04-19 2004-07-22 Matsushita Electric Ind Co Ltd Motion vector calculating method
EP1418762A1 (en) 2002-05-22 2004-05-12 Matsushita Electric Industrial Co., Ltd. Moving image encoding method, moving image decoding method, and data recording medium
JP2004048711A (en) 2002-05-22 2004-02-12 Matsushita Electric Ind Co Ltd Method for coding and decoding moving picture and data recording medium
US20040001546A1 (en) 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
US7154952B2 (en) * 2002-07-19 2006-12-26 Microsoft Corporation Timestamp-independent motion vector prediction for predictive (P) and bidirectionally predictive (B) pictures
JP2006501760A (en) * 2002-10-01 2006-01-12 トムソン ライセンシング Weighting of reference images by implicit method in video decoder
US20060093038A1 (en) 2002-12-04 2006-05-04 Boyce Jill M Encoding of video cross-fades using weighted prediction
JP3671965B2 (en) 2002-12-27 2005-07-13 ユーハ味覚糖株式会社 Sugar-coated candy and method for producing the same
US7269836B2 (en) * 2003-03-24 2007-09-11 International Business Machines Corporation System and method for providing multiplexing and remultiplexing of MPEG-2 streams
US7349490B2 (en) * 2003-04-16 2008-03-25 Powerwave Technologies, Inc. Additive digital predistortion system employing parallel path coordinate conversion

Also Published As

Publication number Publication date
JP6336017B2 (en) 2018-06-06
US8571107B2 (en) 2013-10-29
US20080063071A1 (en) 2008-03-13
JP5470495B2 (en) 2014-04-16
JP6336228B1 (en) 2018-06-06
US8036272B2 (en) 2011-10-11
JP4363326B2 (en) 2009-11-11
CN101039427A (en) 2007-09-19
CN100566420C (en) 2009-12-02
US8325816B2 (en) 2012-12-04
US10327004B2 (en) 2019-06-18
JP5470494B2 (en) 2014-04-16
CN101039426A (en) 2007-09-19
CN1640135A (en) 2005-07-13
US10349062B2 (en) 2019-07-09
CN101039428B (en) 2013-04-10
JP2014225921A (en) 2014-12-04
JP2018129834A (en) 2018-08-16
JP5017464B2 (en) 2012-09-05
JP6122931B2 (en) 2017-04-26
JP2012090331A (en) 2012-05-10
CN100553338C (en) 2009-10-21
JP2014003663A (en) 2014-01-09
JP2014003661A (en) 2014-01-09
JP5470496B2 (en) 2014-04-16
US20180048899A1 (en) 2018-02-15
JP2016034142A (en) 2016-03-10
CN101039427B (en) 2010-06-16
JPWO2004008775A1 (en) 2005-11-17
CN101039423A (en) 2007-09-19
JP5470365B2 (en) 2014-04-16
JP2017085590A (en) 2017-05-18
US8837594B2 (en) 2014-09-16
US7936821B2 (en) 2011-05-03
JP2011097651A (en) 2011-05-12
US20110299600A1 (en) 2011-12-08
US7970058B2 (en) 2011-06-28
US10110906B2 (en) 2018-10-23
US20120281763A1 (en) 2012-11-08
US8340190B2 (en) 2012-12-25
US20190028715A1 (en) 2019-01-24
JP2014003662A (en) 2014-01-09
CN100553339C (en) 2009-10-21
CN101039424A (en) 2007-09-19
CN101039425A (en) 2007-09-19
US20110293017A1 (en) 2011-12-01
US8571108B2 (en) 2013-10-29
US20110293016A1 (en) 2011-12-01
US20180048898A1 (en) 2018-02-15
US20080075171A1 (en) 2008-03-27
JP5977718B2 (en) 2016-08-24
JP2014003664A (en) 2014-01-09
JP5869635B2 (en) 2016-02-24
US20110280310A1 (en) 2011-11-17
US20050152452A1 (en) 2005-07-14
AU2003281133A1 (en) 2004-02-02
US9832473B2 (en) 2017-11-28
US20110293008A1 (en) 2011-12-01
US10104383B2 (en) 2018-10-16
US8320459B2 (en) 2012-11-27
US7936823B2 (en) 2011-05-03
CN1312927C (en) 2007-04-25
US20080063072A1 (en) 2008-03-13
CN101039424B (en) 2010-05-26
US20190028716A1 (en) 2019-01-24
JP2018129835A (en) 2018-08-16
WO2004008775A1 (en) 2004-01-22
US20150003533A1 (en) 2015-01-01
US7936822B2 (en) 2011-05-03
CN101039428A (en) 2007-09-19
US20080069225A1 (en) 2008-03-20
CN101043626B (en) 2010-06-09
CN101043626A (en) 2007-09-26

Similar Documents

Publication Publication Date Title
JP6513847B2 (en) Video coding method
JP4895995B2 (en) Video decoding method
JP5017086B2 (en) Video decoding method
JP4363484B2 (en) Video decoding method
JP5017087B2 (en) Video decoding method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190108

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190308

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190326

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190410

R150 Certificate of patent or registration of utility model

Ref document number: 6513847

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term