JP2003235046A - Method for encoding moving picture, computer-readable recording medium with the encoding method recorded thereon, and encoding apparatus - Google Patents
Method for encoding moving picture, computer-readable recording medium with the encoding method recorded thereon, and encoding apparatusInfo
- Publication number
- JP2003235046A JP2003235046A JP2003007749A JP2003007749A JP2003235046A JP 2003235046 A JP2003235046 A JP 2003235046A JP 2003007749 A JP2003007749 A JP 2003007749A JP 2003007749 A JP2003007749 A JP 2003007749A JP 2003235046 A JP2003235046 A JP 2003235046A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- pixel
- image
- rounding
- information
- 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.)
- Granted
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、フレーム間予測を
行い、輝度または色の強度が量子化された数値として表
される動画像符号化および復号化方法、ならびに動画像
の符号化装置および復号化装置に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a moving picture coding and decoding method for performing inter-frame prediction and expressing luminance or color intensity as a quantized numerical value, and a moving picture coding apparatus and decoding. The present invention relates to a chemical conversion device.
【0002】[0002]
【従来の技術】動画像の高能率符号化において、時間的
に近接するフレーム間の類似性を活用するフレーム間予
測(動き補償)は情報圧縮に大きな効果を示すことが知
られている。現在の画像符号化技術の主流となっている
動き補償方式は、動画像符号化方式の国際標準である
H.263、MPEG1、MPEG2に採用されている
半画素精度のブロックマッチングである。この方式で
は、符号化しようとする画像を多数のブロックに分割
し、ブロックごとにその動きベクトルを水平・垂直方向
に隣接画素間距離の半分の長さを最小単位として求め
る。2. Description of the Related Art In high-efficiency coding of moving images, it is known that inter-frame prediction (motion compensation) utilizing the similarity between temporally adjacent frames has a great effect on information compression. The motion compensation method, which is the mainstream of the current image encoding technology, is H.264, which is an international standard of the moving image encoding method. This is block matching with half-pixel precision adopted in H.263, MPEG1, and MPEG2. In this method, an image to be encoded is divided into a large number of blocks, and the motion vector of each block is calculated in the horizontal and vertical directions with a half length of the distance between adjacent pixels being the minimum unit.
【0003】この処理を数式を用いて表現すると以下の
ようになる。符号化しようとするフレーム(現フレーム
)の予測画像Pの座標(x, y)におけるサンプル値
(輝度または色差の強度のサンプル値)をP(x, y)、
参照画像R(Pと時間的に近接しており、既に符号化が
完了しているフレームの復号画像)の座標(x, y)にお
けるサンプル値をR(x, y)とする。また、xとyは整
数であるとして、PとRでは座標値が整数である点に画
素が存在すると仮定する。また、画素のサンプル値は負
ではない整数として量子化されているとする。このと
き、PとRの関係は、This processing is expressed as follows using mathematical expressions. Let P (x, y) be the sample value (sample value of intensity of luminance or color difference) at the coordinates (x, y) of the predicted image P of the frame (current frame) to be encoded.
A sample value at a coordinate (x, y) of a reference image R (decoded image of a frame which is temporally close to P and has already been encoded) is R (x, y). Further, assuming that x and y are integers, it is assumed that a pixel exists at a point where coordinate values are integers in P and R. It is also assumed that the pixel sample value is quantized as a non-negative integer. At this time, the relationship between P and R is
【0004】[0004]
【数1】 [Equation 1]
【0005】で表される。ただし、画像はN個のブロッ
クに分割されるとして、Biは画像のi番目のブロック
に含まれる画素、(ui, vi)はi番目のブロックの動き
ベクトルを表している。It is represented by However, assuming that the image is divided into N blocks, Bi represents a pixel included in the i-th block of the image, and (ui, vi) represents a motion vector of the i-th block.
【0006】uiとviの値が整数ではないときには、参
照画像において実際には画素が存在しない点の強度値を
求めることが必要となる。この際の処理としては、周辺
4画素を用いた共1次内挿が使われることが多い。この
内挿方式を数式で記述すると、dを正の整数、0≦p,
q<dとして、R(x+p/d, y+q/d)は、When the values of ui and vi are not integers, it is necessary to find the intensity value at the point where no pixel actually exists in the reference image. As processing at this time, co-linear interpolation using four peripheral pixels is often used. When this interpolation method is described by a mathematical expression, d is a positive integer, 0 ≦ p,
With q <d, R (x + p / d, y + q / d) is
【0007】[0007]
【数2】 [Equation 2]
【0008】で表される。ただし「//」は除算の一種
で、通常の除算(実数演算による除算)の結果を近隣の
整数に丸め込むことを特徴としている。It is represented by However, "//" is a kind of division, and is characterized by rounding the result of normal division (division by real number operation) to neighboring integers.
【0009】図1にH.263の符号化器の構成例10
0を示す。H.263は、符号化方式として、ブロック
マッチングとDCT(離散コサイン変換)を組み合わせ
たハイブリッド符号化方式(フレーム間/フレーム内適
応符号化方式)を採用している。In FIG. 263 Encoder Configuration Example 10
Indicates 0. H. The H.263 employs a hybrid coding system (interframe / intraframe adaptive coding system) that combines block matching and DCT (discrete cosine transform) as a coding system.
【0010】減算器102は入力画像(現フレームの原
画像)101とフレーム間/フレーム内符号化切り換え
スイッチ119の出力画像113(後述)との差を計算
し、誤差画像103を出力する。この誤差画像は、DC
T変換器104でDCT係数に変換された後に量子化器
105で量子化され、量子化DCT係数106となる。
この量子化DCT計数は伝送情報として通信路に出力さ
れると同時に、符号化器内でもフレーム間予測画像を合
成するために使用される。The subtractor 102 calculates the difference between the input image (original image of the current frame) 101 and the output image 113 (described later) of the inter-frame / intra-frame coding changeover switch 119 and outputs an error image 103. This error image is DC
After being converted into a DCT coefficient by the T converter 104, it is quantized by a quantizer 105 to be a quantized DCT coefficient 106.
This quantized DCT count is output to the communication path as transmission information, and at the same time, used in the encoder to synthesize the inter-frame predicted image.
【0011】以下に予測画像合成の手順を説明する。上
述の量子化DCT係数106は、逆量子化器108と逆
DCT変換器109を経て復号誤差画像110(受信側
で再生される誤差画像と同じ画像)となる。これに、加
算器111においてフレーム間/フレーム内符号化切り
換えスイッチ119の出力画像113(後述)が加えら
れ、現フレームの復号画像112(受信側で再生される
現フレームの復号画像と同じ画像)を得る。この画像は
一旦フレームメモリ114に蓄えられ、1フレーム分の
時間だけ遅延される。したがって、現時点では、フレー
ムメモリ114は前フレームの復号画像115を出力し
ている。この前フレームの復号画像と現フレームの入力
画像101がブロックマッチング部116に入力され、
ブロックマッチングの処理が行われる。The procedure of predictive image composition will be described below. The above-mentioned quantized DCT coefficient 106 becomes a decoded error image 110 (the same image as the error image reproduced on the receiving side) via the inverse quantizer 108 and the inverse DCT converter 109. An output image 113 (described later) of the inter-frame / intra-frame encoding changeover switch 119 is added to this in the adder 111, and a decoded image 112 of the current frame (the same image as the decoded image of the current frame reproduced on the receiving side). To get This image is temporarily stored in the frame memory 114 and delayed by the time for one frame. Therefore, at present, the frame memory 114 is outputting the decoded image 115 of the previous frame. The decoded image of the previous frame and the input image 101 of the current frame are input to the block matching unit 116,
Block matching processing is performed.
【0012】ブロックマッチングでは、画像を複数のブ
ロックに分割し、各ブロックごとに現フレームの原画像
に最も似た部分を前フレームの復号画像から取り出すこ
とにより、現フレームの予測画像117が合成される。
このときに、各ブロックが前フレームと現フレームの間
でどれだけ移動したかを検出する処理(動き推定処理)
を行う必要がある。動き推定処理によって検出された各
ブロックごとの動きベクトルは、動きベクトル情報12
0として受信側へ伝送される。In block matching, an image is divided into a plurality of blocks, and a portion of the current frame that most resembles the original image of the current frame is extracted from the decoded image of the previous frame to synthesize the predicted image 117 of the current frame. It
At this time, a process of detecting how much each block has moved between the previous frame and the current frame (motion estimation process)
Need to do. The motion vector for each block detected by the motion estimation process is the motion vector information 12
It is transmitted to the receiving side as 0.
【0013】受信側は、この動きベクトル情報と前フレ
ームの復号画像から、独自に送信側で得られるものと同
じ予測画像を合成することができる。予測画像117
は、「0」信号118と共にフレーム間/フレーム内符
号化切り換えスイッチ119に入力される。このスイッ
チは、両入力のいずれかを選択することにより、フレー
ム間符号化とフレーム内符号化を切り換える。予測画像
117が選択された場合(図2はこの場合を表してい
る)には、フレーム間符号化が行われる。一方、「0」
信号が選択された場合には、入力画像がそのままDCT
符号化されて通信路に出力されるため、フレーム内符号
化が行われることになる。受信側が正しく復号化画像を
得るためには、送信側でフレーム間符号化が行われたか
フレーム内符号化が行われたかを知る必要がある。この
ため、識別フラグ121が通信路へ出力される。最終的
なH.263符号化ビットストリーム123は多重化器
122で量子化DCT係数、動きベクトル、フレーム内
/フレーム間識別フラグの情報を多重化することによっ
て得られる。From the motion vector information and the decoded image of the previous frame, the receiving side can independently synthesize the same predicted image as that obtained on the transmitting side. Predicted image 117
Is input to the inter-frame / intra-frame coding changeover switch 119 together with the “0” signal 118. This switch switches between interframe coding and intraframe coding by selecting either of the two inputs. When the predicted image 117 is selected (FIG. 2 shows this case), interframe coding is performed. On the other hand, "0"
When the signal is selected, the input image is the DCT as it is.
Since it is encoded and output to the communication channel, intra-frame encoding is performed. In order for the receiving side to correctly obtain a decoded image, it is necessary for the transmitting side to know whether inter-frame coding or intra-frame coding has been performed. Therefore, the identification flag 121 is output to the communication path. The final H. The H.263 coded bit stream 123 is obtained by multiplexing the information of the quantized DCT coefficient, the motion vector, and the intra-frame / inter-frame identification flag in the multiplexer 122.
【0014】図2に図1の符号化器が出力した符号化ビ
ットストリームを受信する復号化器200の構成例を示
す。受信したH.263ビットストリーム217は、分
離器216で量子化DCT係数201、動きベクトル情
報202、フレーム内/フレーム間識別フラグ203に
分離される。量子化DCT係数201は逆量子化器20
4と逆DCT変換器205を経て復号化された誤差画像
206となる。この誤差画像は加算器207でフレーム
間/フレーム内符号化切り換えスイッチ214の出力画
像215を加算され、復号化画像208として出力され
る。フレーム間/フレーム内符号化切り換えスイッチは
フレーム間/フレーム内符号化識別フラグ203に従っ
て、出力を切り換える。フレーム間符号化を行う場合に
用いる予測画像212は、予測画像合成部211におい
て合成される。ここでは、フレームメモリ209に蓄え
られている前フレームの復号画像210に対して、受信
した動きベクトル情報202に従ってブロックごとに位
置を移動させる処理が行われる。一方フレーム内符号化
の場合、フレーム間/フレーム内符号化切り換えスイッ
チは、「0」信号213をそのまま出力する。FIG. 2 shows an example of the structure of a decoder 200 which receives the coded bit stream output by the encoder of FIG. The received H.264. The 263 bit stream 217 is separated by a separator 216 into a quantized DCT coefficient 201, motion vector information 202, and an intra-frame / inter-frame identification flag 203. The quantized DCT coefficient 201 is the inverse quantizer 20.
4 and the inverse DCT converter 205 to be the decoded error image 206. This error image is added by the adder 207 with the output image 215 of the inter-frame / intra-frame encoding changeover switch 214 and output as a decoded image 208. The inter-frame / intra-frame coding changeover switch switches the output according to the inter-frame / intra-frame coding identification flag 203. The predicted image 212 used when performing inter-frame coding is synthesized in the predicted image synthesis unit 211. Here, the process of moving the position for each block according to the received motion vector information 202 is performed on the decoded image 210 of the previous frame stored in the frame memory 209. On the other hand, in the case of intra-frame coding, the inter-frame / intra-frame coding changeover switch outputs the “0” signal 213 as it is.
【0015】[0015]
【発明が解決すようとする課題】H.263が符号化す
る画像は、輝度情報を持つ1枚の輝度プレーン(Yプレ
ーン)と色情報(色差情報とも言う)を持つ2枚の色差
プレーン(UプレーンとVプレーン)で構成されてい
る。このとき、画像が水平方向に2m画素、垂直方向に
2n画素持っている場合に(mとnは正の整数とす
る)、Yプレーンは水平方向に2m、垂直方向に2n個
の画素を持ち、UおよびVプレーンは水平方向にm、素
直方向にn個の画素を持つことを特徴としている。この
ように色差プレーンの解像度が低いのは、人間の視覚が
色差の空間的な変化に比較的鈍感であるという特徴を持
つためである。このような画像を入力として、H.26
3ではマクロブロックと呼ばれるブロックを単位として
符号図3にマクロブロックの構成を示す。マクロブロッ
クはYブロック、Uブロック、Vブロックの3個のブロ
ックで構成され、輝度値情報を持つYブロック301の
大きさは16×16画素、色差情報をもつUブロック3
02およびVブロック303の大きさは8×8画素とな
っている。[Problems to be Solved by the Invention] The image encoded by the H.263 includes one luminance plane (Y plane) having luminance information and two color difference planes (U plane and V plane) having color information (also referred to as color difference information). At this time, when the image has 2m pixels in the horizontal direction and 2n pixels in the vertical direction (m and n are positive integers), the Y plane has 2m pixels in the horizontal direction and 2n pixels in the vertical direction. , U and V planes are characterized by having m pixels in the horizontal direction and n pixels in the vertical direction. The low resolution of the color difference plane is due to the feature that human vision is relatively insensitive to spatial changes in color difference. With such an image as an input, H.264. 26
In FIG. 3, reference numeral 3 shows the structure of a macro block in units of blocks called macro blocks. The macro block is composed of three blocks of a Y block, a U block, and a V block. The size of the Y block 301 having the luminance value information is 16 × 16 pixels, and the U block 3 having the color difference information.
02 and V block 303 have a size of 8 × 8 pixels.
【0016】H.263では、各マクロブロックに対し
て半画素精度のブロックマッチングが適用される。した
がって、推定された動きベクトルを(u, v)とすると、
uとvはそれぞれ画素間距離の半分、つまり1/2を最
小単位として求められることになる。このときの強度値
(以下では、「輝度値」と色差の強度値を総称して「強
度値」と呼ぶ)の内挿処理の様子を図4に示す。H.2
63では、数2の内挿を行う際に、除算の結果は最も近
い整数に丸め込まれ、かつ除算の結果が整数に0.5を加
えた値となるときには、これを0から遠ざける方向に切
り上げる処理が行われる。H. At 263, half-pixel accurate block matching is applied to each macroblock. Therefore, if the estimated motion vector is (u, v),
u and v are obtained by using half of the inter-pixel distance, that is, 1/2 as the minimum unit. FIG. 4 shows a state of the interpolation processing of the intensity value (hereinafter, the “brightness value” and the intensity value of the color difference are collectively referred to as “intensity value”) at this time. H. Two
In 63, when the interpolation of Equation 2 is performed, the result of the division is rounded to the nearest integer, and when the result of the division becomes a value obtained by adding 0.5 to the integer, the process of rounding it up from 0 is performed. Done.
【0017】つまり、図4において、画素401、40
2、403、404の強度値をそれぞれLa、Lb、L
c、Ldとすると(La、Lb、Lc、Ldは負ではない整
数)、内挿により強度値を求めたい位置405、40
6、407、408の強度値Ia、Ib、Ic、Idは(I
a、Ib、Ic、Idは負ではない整数)、以下の式によっ
て表される。That is, in FIG. 4, pixels 401, 40
The intensity values of 2, 403, and 404 are La, Lb, and L, respectively.
If c and Ld (La, Lb, Lc, and Ld are nonnegative integers), the positions 405 and 40 at which the intensity value is to be obtained by interpolation
The intensity values Ia, Ib, Ic, and Id of 6, 407, and 408 are (I
a, Ib, Ic, and Id are non-negative integers) and are represented by the following formulas.
【0018】[0018]
【数3】 [Equation 3]
【0019】ただし、「[ ]」は小数部分を切り捨てる
処理を表している。However, "[]" represents a process of truncating a decimal part.
【0020】このとき、除算の結果を整数値に丸め込む
処理によって発生する誤差の期待値を計算することを考
える。内挿により強度値を求めたい位置が、図4の位置
405、406、407、408となる確率をそれぞれ
1/4とする。このとき、位置405の強度値Iaを求
める際の誤差は明らかに0である。また、位置406の
強度値Ibを求める際の誤差は、La+Lbが偶数の場合
は0、奇数の場合は切り上げが行われるので1/2とな
る。La+Lbが偶数になる確率と奇数になる確率は共に
1/2であるとすれば、誤差の期待値は、0・1/2+
1/2・1/2=1/4となる。位置407の強度値I
cを求める際も誤差の期待値はIbの場合と同様に1/4
となる。位置408の強度値Icを求める際には、La+
Lb+Lc+Ldを4で割った際のあまりが0、1、2、
3である場合の誤差はそれぞれ0、−1/4、1/2、
1/4となり、あまりが0から3になる確率をそれぞれ
等確率とすれば、誤差の期待値は0・1/4−1/4・
1/4+1/2・1/4+1/4・1/4=1/8とな
る。上で述べた通り、位置405〜408における強度
値が計算される確率は等確率であるとすれば、最終的な
誤差の期待値は、0・1/4+1/4・1/4+1/4
・1/4+1/8・1/4=5/32となる。これは、
一回ブロックマッチングによる動き補償を行う度に、画
素の強度値に5/32の誤差が発生することを意味して
いる。At this time, it is considered to calculate an expected value of an error generated by the process of rounding the result of division into an integer value. The probabilities that the positions where the intensity values are to be obtained by interpolation are the positions 405, 406, 407, and 408 in FIG. 4 are set to 1/4. At this time, the error in obtaining the intensity value Ia of the position 405 is obviously 0. Further, the error in obtaining the intensity value Ib at the position 406 is 0 when La + Lb is an even number, and it is ½ when rounding is performed when it is an odd number. If the probability that La + Lb is even and the probability that it is odd are both 1/2, the expected value of the error is 0 · 1/2 +
1 / 2.1 / 2 = 1/4. Intensity value I at position 407
When obtaining c, the expected value of the error is 1/4 as in the case of Ib.
Becomes When obtaining the intensity value Ic at the position 408, La +
When Lb + Lc + Ld is divided by 4, too much is 0, 1, 2,
When the error is 3, the errors are 0, -1/4, 1/2,
If the probabilities of becoming 1/4 and too much from 0 to 3 are equal probabilities, the expected value of the error is 0 · ¼−1 / 4 ·
1/4 + 1/2 * 1/4 + 1/4 * 1/4 = 1/8. As mentioned above, if the probabilities that the intensity values at positions 405 to 408 are calculated are equal probabilities, the final expected value of the error is 0 · 1/4 + 1/4 · 1/4 + 1/4.
・ 1/4 + 1/8 ・ 1/4 = 5/32. this is,
This means that every time motion compensation is performed by block matching, an error of 5/32 occurs in the pixel intensity value.
【0021】一般的に低レート符号化の場合には、フレ
ーム間予測誤差を符号化するためのビット数を十分に確
保することができないため、DCT係数の量子化ステッ
プサイズを大きくする傾向がある。したがって、動き補
償で発生した誤差を誤差符号化によって修正しにくくな
る。このようなときにフレーム内符号化を行わずにフレ
ーム間符号化をずっと続けた場合には、上記誤差が蓄積
し、再生画像が赤色化するなどの悪い影響を与える場合
がある。In general, in the case of low rate coding, it is not possible to secure a sufficient number of bits for coding the inter-frame prediction error, so that there is a tendency to increase the quantization step size of the DCT coefficient. . Therefore, it is difficult to correct the error generated by the motion compensation by the error coding. In such a case, if the inter-frame coding is continued for a long time without performing the intra-frame coding, the above error may be accumulated, which may adversely affect the reproduced image such that the reproduced image becomes red.
【0022】上で説明した通り、色差プレーンの画素数
は縦方向、横方向共に画素数が半分となっている。した
がって、UブロックとVブロックに対しては、Yブロッ
クの動きベクトルの水平・垂直成分をそれぞれ2で割っ
た値が使用される。このとき、もとのYブロックの動き
ベクトルの水平・垂直成分であるuとvが1/2の整数
倍の値であるため、通常の割り算を実行した場合には、
動きベクトルは1/4の整数倍の値が出現することにな
る。しかし、座標値が1/4の整数倍をとるときの強度
値の内挿演算が複雑となるため、H.263ではUブロ
ックとVブロックの動きベクトルも半画素精度に丸め込
まれる。このときの丸め込みの方法は以下の通りであ
る。As described above, the number of pixels of the color difference plane is half in both the vertical and horizontal directions. Therefore, for the U block and the V block, values obtained by dividing the horizontal and vertical components of the motion vector of the Y block by 2 are used. At this time, since u and v, which are the horizontal and vertical components of the motion vector of the original Y block, are values that are integer multiples of 1/2, when normal division is executed,
As a motion vector, a value that is an integral multiple of 1/4 appears. However, since the interpolation calculation of the intensity value when the coordinate value takes an integer multiple of 1/4 becomes complicated, the H.264 standard is not available. At 263, the motion vectors of the U block and V block are also rounded to half-pixel accuracy. The method of rounding at this time is as follows.
【0023】いま、u/2=r+s/4であるとする。
このとき、rとsは整数であり、さらにsは0以上3以
下の値をとるとする。sが0または2のときはu/2は
1/2の整数倍であるため、丸め込みを行う必要がな
い。しかし、sが1または3のときは、これを2に丸め
込む操作が行われる。これは、sが2となる確率を高く
することにより、強度値の内挿が行われる回数を増や
し、動き補償処理にフィルタリングの作用を持たせるた
めである。Now, assume that u / 2 = r + s / 4.
At this time, r and s are integers, and s has a value of 0 or more and 3 or less. When s is 0 or 2, u / 2 is an integral multiple of 1/2, so rounding is not necessary. However, when s is 1 or 3, the operation of rounding this to 2 is performed. This is because by increasing the probability that s becomes 2, the number of times the intensity value is interpolated is increased, and the motion compensation processing has a filtering effect.
【0024】丸め込みが行われる前のsの値が0〜3の
値をとる確率をそれぞれ1/4とした場合、丸め込みが
終わったあとにsが0、2となる確率はそれぞれ1/4
と3/4となる。以上は動きベクトルの水平成分uに関
する議論であったが、垂直成分であるvに関しても全く
同じ議論が適用できる。When the probability that the value of s before rounding takes a value of 0 to 3 is 1/4, the probability that s becomes 0 and 2 after the rounding is 1/4, respectively.
And 3/4. The above is the discussion on the horizontal component u of the motion vector, but the same discussion can be applied to the vertical component v.
【0025】したがって、UブロックおよびVブロック
において、401の位置の強度値が求められる確率は1
/4・1/4=1/16、402および403の位置の
強度値が求められる確率は共に1/4・3/4=3/1
6、404の位置の強度値が求められる確率は3/4・
3/4=9/16となる。これを用いて上と同様の手法
により、強度値の誤差の期待値を求めると、0・1/1
6+1/4・3/16+1/4・3/16+1/8・9
/16=21/128となり、上で説明したYブロック
の場合と同様にフレーム内符号化を続けた場合の誤差の
蓄積の問題が発生する。Therefore, in the U block and the V block, the probability that the intensity value at the position 401 is obtained is 1
/ 4 · 1/4 = 1/16, and the probabilities that the intensity values at the positions of 402 and 403 are obtained are both ¼ · 3/4 = 3/1.
The probability that the intensity value at the position of 6, 404 is obtained is 3/4.
3/4 = 9/16. When the expected value of the error of the intensity value is obtained by using this and the same method as above, it is 0. 1/1
6 + 1/4 ・ 3/16 + 1/4 ・ 3/16 + 1/8 ・ 9
/ 16 = 21/128, which causes a problem of error accumulation when intra-frame coding is continued as in the case of the Y block described above.
【0026】フレーム間予測を行い、輝度または色の強
度が量子化された数値として表される動画像符号化およ
び復号化方法では、フレーム間予測において輝度または
色の強度を量子化する際の誤差が蓄積する場合がある。
本発明の目的は、上記誤差の蓄積を防ぐことにより、再
生画像の画質を向上させることにある。In the moving picture coding and decoding method in which inter-frame prediction is performed and luminance or color intensity is represented as a quantized numerical value, an error in quantizing luminance or color intensity in inter-frame prediction is used. May accumulate.
An object of the present invention is to improve the quality of reproduced images by preventing the accumulation of the above errors.
【0027】[0027]
【課題を解決するための手段】誤差の発生を抑えるか、
発生した誤差を打ち消す操作を行うことにより、誤差の
蓄積を防ぐ。[Means for solving the problems] Whether to suppress the occurrence of errors,
Accumulation of errors is prevented by performing an operation of canceling the generated errors.
【0028】[0028]
【発明の実施の形態】まず、「従来の技術」で述べた丸
め込み誤差の蓄積がどのような場合に発生するかについ
て考える。BEST MODE FOR CARRYING OUT THE INVENTION First, let us consider when the rounding error accumulation described in "Prior Art" occurs.
【0029】図5にMPEG1、MPEG2、H.26
3などの双方向予測と片方向予測の両方を実行すること
ができる符号化方法により符号化された動画像の例を示
す。画像501はフレーム内符号化によって符号化され
たフレームであり、Iフレームと呼ばれる。これに対
し、画像503、505、507、509はPフレーム
と呼ばれ、直前のIまたはPフレームを参照画像とする
片方向のフレーム間符号化により符号化される。したが
って、例えば画像505を符号化する際には画像503
を参照画像とするフレーム間予測が行われる。画像50
2、504、506、508はBフレームと呼ばれ、直
前と直後のIまたはPフレームを用いた双方向のフレー
ム間予測が行われる。Bフレームは、他のフレームがフ
レーム間予測を行う際に参照画像として利用されないと
いう特徴も持っている。FIG. 5 shows MPEG1, MPEG2, H.264. 26
An example of a moving image coded by a coding method capable of executing both bidirectional prediction and unidirectional prediction such as 3 is shown. The image 501 is a frame coded by intraframe coding and is called an I frame. On the other hand, the images 503, 505, 507, and 509 are called P frames, and are encoded by unidirectional interframe encoding using the immediately preceding I or P frame as a reference image. Thus, for example, when encoding image 505, image 503
The inter-frame prediction is performed with the reference image as. Image 50
2, 504, 506, and 508 are called B frames, and bidirectional inter-frame prediction is performed using immediately preceding and immediately following I or P frames. The B frame also has a feature that other frames are not used as reference images when performing inter-frame prediction.
【0030】まず、Iフレームでは動き補償が行われな
いため、動き補償が原因となる丸め込み誤差は発生しな
い。これに対し、Pフレームでは動き補償が行われる上
に、他のPまたはBフレームの参照画像としても使用さ
れるため、丸め込み誤差の蓄積を引き起こす原因とな
る。一方、Bフレームは動き補償は行われるために丸め
込み誤差の蓄積の影響は現れるが、参照画像としては使
用されないために丸め込み誤差の蓄積の原因とはならな
い。このことから、Pフレームにおける丸め込み誤差の
蓄積を防げば、動画像全体で丸め込み誤差の悪影響を緩
和することができる。なお、H.263ではPフレーム
とBフレームをまとめて符号化するPBフレームと呼ば
れるフレームが存在するが(例えばフレーム503と5
04をPBフレームとしてまとめて符号化することがで
きる)、組み合わされた2枚のフレームを別々の物とし
て考えれば、上と同じ議論を適用することができる。つ
まり、PBフレームの中でPフレームに相当する部分に
対して丸め込み誤差への対策を施せば、誤差の蓄積を防
ぐことができる。First, since motion compensation is not performed in the I frame, a rounding error caused by motion compensation does not occur. On the other hand, in the P frame, motion compensation is performed, and since it is also used as a reference image of another P or B frame, it causes accumulation of a rounding error. On the other hand, since the B frame is subjected to motion compensation, the influence of the accumulation of the rounding error appears, but it is not used as the reference image and therefore does not cause the accumulation of the rounding error. Therefore, by preventing the accumulation of the rounding error in the P frame, the adverse effect of the rounding error can be alleviated in the entire moving image. In addition, H. In H.263, there is a frame called a PB frame that collectively encodes a P frame and a B frame (for example, frames 503 and 5).
04 can be coded together as a PB frame), and the same arguments as above can be applied if the two combined frames are considered as separate ones. That is, if a countermeasure against the rounding error is applied to the portion corresponding to the P frame in the PB frame, the accumulation of the error can be prevented.
【0031】丸め込み誤差は、強度値の内挿を行う際
に、通常の除算(演算結果が実数になる除算)の結果と
して整数値に0.5を加えた値が出るような場合に、これ
を0から遠ざける方向に切り上げているために発生して
いる。例えば内挿された強度値を求めるために4で割る
操作を行うような場合、あまりが1である場合と3であ
る場合は発生する誤差の絶対値が等しくかつ符号が逆に
なるため、誤差の期待値を計算する際に互いに打ち消し
合う働きをする(より一般的には、正の整数d’で割る
場合には、あまりがtである場合とd’−tである場合
が打ち消し合う)。しかし、あまりが2である場合、つ
まり通常の除算の結果が整数に0.5を加えた値が出る場
合には、これを打ち消すことができず、誤差の蓄積につ
ながる。The rounding error is 0 when the intensity value is interpolated and a value obtained by adding 0.5 to the integer value is obtained as a result of normal division (division in which the operation result becomes a real number). It is caused by rounding up in the direction away from. For example, when performing an operation of dividing by 4 in order to obtain the interpolated intensity value, when the remainder is 1 and the absolute value of the error that is 3 is the same and the sign is opposite, the error Act to cancel each other out when computing the expected value of (more generally, when dividing by a positive integer d ', cancel if too much t and d'-t) . However, when too much is 2, that is, when the result of normal division is a value obtained by adding 0.5 to an integer, this cannot be canceled out, and error is accumulated.
【0032】そこで、このように通常の除算の結果、整
数に0.5を加えた値が出た際にに切り上げを行う丸め込
み方法と切り捨てを行う丸め込み方法の両者を選択可能
とし、これらをうまく組み合わせることより、発生した
誤差を打ち消すことを考える。以下では、通常の除算の
結果を最も近い整数に丸め込み、かつ整数に0.5を加え
た値は0から遠ざける方向に切り上げる丸め込み方法を
「プラスの丸め込み」と呼ぶ。また、通常の除算の結果
を最も近い整数に丸め込み、かつ整数に0.5を加えた値
は0に近づける方向に切り捨てる丸め込み方法を「マイ
ナスの丸め込み」と呼ぶこととする。数3は、半画素精
度のブロックマッチングにおいてプラスの丸め込みを行
う場合の処理を示しているが、マイナスの丸め込みを行
う場合には、これは以下のように書き換えることができ
る。Therefore, it is possible to select both the rounding method for rounding up and the rounding method for rounding down when a value obtained by adding 0.5 to an integer comes out as a result of normal division in this way, and combine these well. Let us consider canceling the generated error. In the following, the rounding method in which the result of normal division is rounded to the nearest integer and the value obtained by adding 0.5 to the integer is rounded up in the direction away from 0 is called "plus rounding". A rounding method in which the result of normal division is rounded to the nearest integer, and the value obtained by adding 0.5 to the integer is rounded down toward 0 is called "minus rounding". Formula 3 shows the processing when positive rounding is performed in half-pixel precision block matching, but when negative rounding is performed, this can be rewritten as follows.
【0033】[0033]
【数4】 [Equation 4]
【0034】いま、予測画像の合成における強度値の内
挿の際ににプラスの丸め込みを行う動き補償を、プラス
の丸め込みを用いる動き補償、マイナスの丸め込みを行
う動き補償をマイナスの丸め込みを用いる動き補償とす
る。また、半画素精度のブロックマッチングを行い、か
つプラスの丸め込みを用いる動き補償が適用されるPフ
レームをP+フレーム、逆にマイナスの丸め込みを用い
る動き補償が適用されるPフレームをP−フレームと呼
ぶことする(この場合、H.263のPフレームはすべ
てP+フレームということになる)。P−フレームにお
ける丸め込み誤差の期待値は、P+フレームのそれと絶
対値が等しく、符号が逆となる。したがって、時間軸に
対し、P+フレームとP−フレームが交互に現れるよう
にすれば、丸め込み誤差の蓄積を防ぐことができる。Now, motion compensation for performing positive rounding when interpolating intensity values in synthesis of predicted images, motion compensation using positive rounding, and motion compensation using negative rounding for negative rounding are performed. Compensation. A P frame to which block matching with half-pixel precision is applied and to which motion compensation using positive rounding is applied is called a P + frame, and a P frame to which motion compensation using negative rounding is applied is called a P− frame. (In this case, all P frames of H.263 are P + frames). The expected value of the rounding error in the P-frame has the same absolute value as that of the P + frame and the sign is opposite. Therefore, if P + frames and P− frames appear alternately on the time axis, accumulation of rounding error can be prevented.
【0035】図5の例では、フレーム503、507を
P+フレーム、フレーム505、509をP−フレーム
とすれば、この処理を実現することができる。また、P
+フレームとP−フレームが交互に発生することは、B
フレームにおいて双方向の予測を行う際にP+フレーム
とP−フレームが一枚ずつ参照画像として使用されるこ
とを意味している。一般的にBフレームにおいては順方
向の予測画像(例えば図5のフレーム504を符号化す
る際に、フレーム503を参照画像として合成される予
測画像)と逆方向の予測画像(例えば図5のフレーム5
04を符号化する際に、フレーム505を参照画像とし
て合成される予測画像)の平均が予測画像として使用で
きる場合が多い。したがって、ここでP+フレームとP
−フレームから合成した画像を平均化することは、誤差
の影響を打ち消す意味で有効である。In the example of FIG. 5, if the frames 503 and 507 are P + frames and the frames 505 and 509 are P-frames, this processing can be realized. Also, P
The alternating occurrence of + and P-frames means that B
This means that one P + frame and one P- frame are used as reference images when bidirectional prediction is performed in a frame. Generally, in a B frame, a forward prediction image (for example, a prediction image synthesized using the frame 503 as a reference image when encoding the frame 504 in FIG. 5) and a backward prediction image (for example, the frame in FIG. 5). 5
When encoding 04, the average of the predicted images synthesized using the frame 505 as the reference image can often be used as the predicted image. Therefore, here P + frame and P
-Averaging the images synthesized from the frames is effective in canceling the influence of errors.
【0036】なお、上で述べた通り、Bフレームにおけ
る丸め込み処理は誤差の蓄積の原因とはならない。した
がって、すべてのBフレームに対して同じ丸め込み方法
を適用しても問題は発生しない。例えば、図5のBフレ
ーム502、504、506、508のすべてが正の丸
め込みに基づく動き補償を行ったとしても、特に画質の
劣化の原因とはならない。Bフレームの復号化処理を簡
略化する意味では、Bフレームに関しては1種類の丸め
込み方法のみを用いることが望ましい。As described above, the rounding processing in the B frame does not cause an error accumulation. Therefore, applying the same rounding method to all B frames does not cause any problems. For example, even if all of the B frames 502, 504, 506, and 508 in FIG. 5 perform motion compensation based on positive rounding, they do not cause deterioration in image quality. In order to simplify the decoding processing of B frames, it is desirable to use only one type of rounding method for B frames.
【0037】図16に、上で述べた複数の丸め込み方法
に対応した画像符号化器のブロックマッチング部160
0の例を示す。他の図と同じ番号は、同じものを指して
いる。図1のブロックマッチング部116を1600に
入れ換えることにより、複数の丸め込み方法に対応する
ことができる。動き推定器1601において、入力画像
101と前フレームの復号画像112との間で動き推定
の処理が行われる。この結果、動き情報120が出力さ
れる。この動き情報は、予測画像合成器1603におい
て予測画像を合成する際に利用される。FIG. 16 is a block matching section 160 of the image encoder corresponding to the above-described plural rounding methods.
An example of 0 is shown. The same numbers as in the other figures refer to the same things. By replacing the block matching unit 116 in FIG. 1 with 1600, a plurality of rounding methods can be supported. The motion estimator 1601 performs motion estimation processing between the input image 101 and the decoded image 112 of the previous frame. As a result, the motion information 120 is output. This motion information is used when the predicted image synthesizer 1603 synthesizes the predicted image.
【0038】丸め込み方法決定器1602は、現在符号
化を行っているフレームにおいて使用する丸め込み方法
を正の丸め込みとするか、負の丸め込みとするかを判定
する。決定した丸め込み方法に関する情報1604は、
予測画像合成器1603に入力される。この予測画像合
成器では、1604によって指定された丸め込み方法に
基づいて予測画像117が合成、出力される。なお、図
1のブロックマッチング部116には、図16の160
2、1604に相当する部分が無く、予測画像は、正の
丸め込みによってのみ合成される。また、ブロックマッ
チング部から決定した丸め込み方法1605を出力し、
この情報をさらに多重化して伝送ビットストリームに組
み込んで伝送しても良い。The rounding method determiner 1602 determines whether the rounding method used in the frame currently being encoded is positive rounding or negative rounding. The information 1604 regarding the determined rounding method is
It is input to the predicted image synthesizer 1603. The predicted image synthesizer synthesizes and outputs the predicted image 117 based on the rounding method designated by 1604. It should be noted that the block matching unit 116 of FIG.
There is no part corresponding to 2, 1604, and the predicted image is synthesized only by positive rounding. Also, output the rounding method 1605 determined from the block matching unit,
This information may be further multiplexed and incorporated into a transmission bit stream for transmission.
【0039】図17に、複数の丸め込み方法に対応した
画像復号化器の予測画像合成部1700の例を示す。他
の図と同じ番号は、同じものを指している。図2の予測
画像合成部211を1700に入れ換えることにより、
複数の丸め込み方法に対応することが可能となる。丸め
込み方法決定器1701では、復号化を行う際の予測画
像合成処理に適用される丸め込み方法が決定される。FIG. 17 shows an example of the predictive image synthesizing unit 1700 of the image decoder corresponding to a plurality of rounding methods. The same numbers as in the other figures refer to the same things. By replacing the predicted image synthesis unit 211 in FIG. 2 with 1700,
It is possible to support a plurality of rounding methods. The rounding method determiner 1701 determines the rounding method applied to the predicted image combining process when performing decoding.
【0040】なお、正しい復号化を行うためには、ここ
で決定される丸め込み方法は、符号化の際に適用された
丸め込み方法と同じものでなければならない。例えば、
最後に符号化されたIフレームから数えて奇数番目のP
フレームには正の丸め込み、偶数番目のPフレームに対
しては負の丸め込みが適用されることを原則とし、符号
化側の丸め込み方法決定器(例えば、図16の160
2)と復号化側の丸め込み方法決定器1701の両者が
この原則に従えば、正しい復号化を行うことが可能とな
る。このようにして決定された丸め込み方法に関する情
報1702と、前フレームの復号画像210、動き情報
202から、予測画像合成器1703では、予測画像が
合成される。この予測画像212は出力され、復号画像
の合成に活用される。In order to perform correct decoding, the rounding method determined here must be the same as the rounding method applied at the time of encoding. For example,
Odd P counting from the last encoded I frame
In principle, positive rounding is applied to frames and negative rounding is applied to even-numbered P frames, and a rounding method determiner on the encoding side (for example, 160 in FIG. 16).
If both 2) and the rounding method determiner 1701 on the decoding side follow this principle, correct decoding can be performed. The predicted image synthesizer 1703 synthesizes a predicted image from the information 1702 regarding the rounding method thus determined, the decoded image 210 of the previous frame, and the motion information 202. This predicted image 212 is output and used for combining decoded images.
【0041】なお、ビットストリーム内に丸め込み方法
に関する情報が組み込まれる場合(図16の符号化器
で、丸め込み方法に関する情報1605が出力されるよ
うな場合)も考えることができる。この場合、丸め込み
方法決定器1701は使用されず、符号化ビットストリ
ームから抽出された丸め込み方法に関する情報1704
が予測画像合成器1703に入力される。It is also possible to consider a case where information about a rounding method is incorporated in a bitstream (a case where the encoder about FIG. 16 outputs information 1605 about a rounding method). In this case, the rounding method determiner 1701 is not used, and information 1704 about the rounding method extracted from the encoded bitstream is used.
Is input to the predicted image synthesizer 1703.
【0042】本発明は、図1、2に示されている従来型
の専用回路・専用チップを用いる画像符号化装置、画像
復号化装置の他に、汎用プロセッサを用いるソフトウェ
ア画像符号化装置、ソフトウェア画像復号化装置にも適
用することができる。図6と7にこのソフトウェア画像
符号化装置600とソフトウェア画像復号化装置700
の例を示す。ソフトウェア符号化器600では、まず入
力画像601は入力フレームメモリ602に蓄えられ、
汎用プロセッサ603はここから情報を読み込んで符号
化の処理を行う。この汎用プロセッサを駆動するための
プログラムはハードディスクやフレキシブルディスクな
どによる蓄積デバイス608から読み出されてプログラ
ム用メモリ604に蓄えられる。また、汎用プロセッサ
は処理用メモリ605を活用して符号化の処理を行う。
汎用プロセッサが出力する符号化情報は一旦出力バッフ
ァ606に蓄えられた後に符号化ビットストリーム60
7として出力される。The present invention is applicable to a software image coding apparatus and software using a general-purpose processor in addition to the image coding apparatus and image decoding apparatus using the conventional dedicated circuit and dedicated chip shown in FIGS. It can also be applied to an image decoding device. 6 and 7, the software image encoding device 600 and the software image decoding device 700 are shown.
For example: In the software encoder 600, the input image 601 is first stored in the input frame memory 602,
The general-purpose processor 603 reads information from here and performs encoding processing. A program for driving this general-purpose processor is read from the storage device 608 such as a hard disk or a flexible disk and stored in the program memory 604. In addition, the general-purpose processor utilizes the processing memory 605 to perform encoding processing.
The coded information output by the general-purpose processor is once stored in the output buffer 606, and then the coded bit stream 60 is stored.
It is output as 7.
【0043】図6に示したソフトウェア符号化器上で動
作する符号化ソフトウェア(コンピュータ読み取り可能
な記録媒体)のフローチャートの例を図8に示す。まず
801で処理が開始され、802で変数Nに0が代入さ
れる。続いて803、804でNの値が100である場
合には、0が代入される。Nはフレーム数のカウンタで
あり、1枚のフレームの処理が終了する度に1が加算さ
れ、符号化を行う際には0〜99の値をとることが許さ
れる。Nの値が0であるときには符号化中のフレームは
Iフレームであり、奇数のときにはP+フレーム、0以
外の偶数のときにはP−フレームとなる。Nの値の上限
が99であることは、Pフレーム(P+またはP−フレ
ーム)が99枚符号化された後にIフレームが1枚符号
化されることを意味している。FIG. 8 shows an example of a flowchart of the encoding software (computer-readable recording medium) that operates on the software encoder shown in FIG. First, the processing is started in 801 and 0 is substituted into the variable N in 802. Subsequently, when the value of N is 100 in 803 and 804, 0 is substituted. N is a counter for the number of frames, which is incremented by 1 every time the processing of one frame is completed, and is allowed to take a value of 0 to 99 when performing encoding. When the value of N is 0, the frame being coded is an I frame, when it is an odd number, it is a P + frame, and when it is an even number other than 0, it is a P− frame. The upper limit of the value of N being 99 means that one P frame (P + or P− frame) is encoded and then one I frame is encoded.
【0044】このように、何枚かのフレームの中に必ず
1枚Iフレームを入れることにより、(a)符号化器と
復号化器の処理の不一致(例えば、DCTの演算結果の
不一致)による誤差の蓄積を防止する、(b)符号化デ
ータから任意のフレームの再生画像を得る処理(ランダ
ムアクセス)の処理量を減少させる、などの効果を得る
ことができる。Nの最適な値は符号化器の性能や符号化
器が使用される環境により変化する。この例では100
という値を使用したが、これはNの値が必ず100でな
ければならいことを意味しているわけではない。As described above, by inserting one I-frame among several frames, (a) the processing of the encoder and the decoder does not match (for example, the result of the DCT calculation does not match). It is possible to obtain effects such as preventing the accumulation of errors, and (b) reducing the processing amount of the process (random access) of obtaining the reproduced image of an arbitrary frame from the encoded data. The optimum value of N varies depending on the performance of the encoder and the environment in which the encoder is used. 100 in this example
Value is used, this does not mean that the value of N must be 100.
【0045】フレームごとの符号化モード、丸め込み方
法を決定する処理は805で行われるが、その処理の詳
細を表すフローチャートの例を図9に示す。まず、90
1でNは0であるか否かが判定され、0である場合には
902で予測モードの識別情報として’I’が出力バッ
ファに出力され、これから符号化処理を行うフレームは
Iフレームとなる。なお、ここで「出力バッファに出力
される」とは、出力バッファに蓄えられた後に符号化ビ
ットストリームの一部として符号化装置から外部に出力
されることを意味している。Nが0ではない場合には、
903で予測モードの識別情報として’P’が出力され
る。Nが0ではない場合には、さらに904でNが奇数
か偶数であるかが判定される。Nが奇数の場合には90
5で丸め込み方法の識別情報として’+’が出力され、
これから符号化処理を行うフレームはP+フレームとな
る。一方、Nが偶数の場合には906で丸め込み方法の
識別情報として’−’が出力され、これから符号化処理
を行うフレームはP−フレームとなる。The processing for determining the coding mode and the rounding method for each frame is performed in 805, and an example of a flowchart showing the details of the processing is shown in FIG. First, 90
If it is 1, it is determined whether N is 0. If it is 0, 902 is output to the output buffer as the identification information of the prediction mode in 902, and the frame to be encoded is the I frame. . Here, “output to the output buffer” means that the data is stored in the output buffer and then output from the encoding device to the outside as a part of the encoded bit stream. If N is not 0,
At 903, “P” is output as the identification information of the prediction mode. If N is not 0, it is further determined at 904 whether N is an odd number or an even number. 90 if N is odd
'+' Is output as the identification information of the rounding method in 5,
The frame to be encoded from now on is the P + frame. On the other hand, when N is an even number, 906 is output as the identification information of the rounding method at 906, and the frame to be encoded is a P-frame.
【0046】再び図8に戻る。805で符号化モードを
決定した後、806で入力画像はフレームメモリAに蓄
えられる。なお、ここで述べたフレームメモリAとは、
ソフトウェア符号化器のメモリ領域(例えば、図6の6
05のメモリ内にこのメモリ領域が確保される)の一部
を意味している。807では、現在符号化中のフレーム
がIフレームであるか否かが判定される。そして、Iフ
レームではない場合には808で動き推定・動き補償処
理が行われる。Returning to FIG. 8 again. After determining the coding mode in 805, the input image is stored in the frame memory A in 806. The frame memory A described here is
The memory area of the software encoder (for example, 6 in FIG. 6).
This memory area is secured in the memory 05). At 807, it is determined whether the frame currently being encoded is an I frame. If it is not an I frame, motion estimation / compensation processing is performed at 808.
【0047】この808における処理の詳細を表すフロ
ーチャートの例を図10に示す。まず、1001でフレ
ームメモリAとB(本段落の最後に書かれている通り、
フレームメモリBには前フレームの復号画像が格納され
ている)に蓄えられた画像の間でブロックごとに動き推
定の処理が行われ、各ブロックの動きベクトルが求めら
れ、その動きベクトルは出力バッファに出力される。続
いて1002で現フレームがP+フレームであるか否か
が判定され、P+フレームである場合には1003で正
の丸め込みを用いて予測画像が合成され、この予測画像
はフレームメモリCに蓄えられる。一方、現フレームが
P−フレームである場合には1004で負の丸め込みを
用いて予測画像が合成され、この予測画像がフレームメ
モリCに蓄えられる。そして1005ではフレームメモ
リAとCの差分画像が求められ、これがフレームメモリ
Aに蓄えられる。FIG. 10 shows an example of a flowchart showing details of the processing in 808. First, in 1001, frame memories A and B (as written at the end of this paragraph,
The motion estimation process is performed for each block between the images stored in the frame memory B and the decoded image of the previous frame is stored, and the motion vector of each block is obtained. Is output to. Subsequently, in 1002, it is determined whether or not the current frame is a P + frame, and if it is a P + frame, a predicted image is combined using positive rounding in 1003, and this predicted image is stored in the frame memory C. On the other hand, when the current frame is the P-frame, the predicted image is combined using negative rounding in 1004, and the predicted image is stored in the frame memory C. Then, at 1005, the difference image between the frame memories A and C is obtained and stored in the frame memory A.
【0048】ここで再び図8に戻る。809における処
理が開始される直前、フレームメモリAには、現フレー
ムがIフレームである場合には入力画像が、現フレーム
がPフレーム(P+またはP−フレーム)である場合に
は入力画像と予測画像の差分画像が蓄えられている。8
09では、このフレームメモリAに蓄えられた画像に対
してDCTが適用され、ここで計算されたDCT係数は
量子化された後に出力バッファに出力される。そしてさ
らに810で、この量子化DCT係数には逆量子化さ
れ、逆DCTが適用され、この結果得られた画像はフレ
ームメモリBに格納される。続いて811では、再び現
フレームがIフレームであるか否かが判定され、Iフレ
ームではない場合には812でフレームメモリBとCの
画像が加算され、この結果がフレームメモリBに格納さ
れる。ここで、1フレーム分の符号化処理が終了するこ
とになる。Now, return to FIG. 8 again. Immediately before the processing in 809 is started, the input image is predicted in the frame memory A when the current frame is the I frame, and the input image is predicted when the current frame is the P frame (P + or P− frame). Difference images of images are stored. 8
In 09, DCT is applied to the image stored in the frame memory A, and the DCT coefficient calculated here is quantized and then output to the output buffer. Then, at 810, the quantized DCT coefficients are dequantized and inverse DCT is applied, and the resulting image is stored in frame memory B. Subsequently, in 811 it is again determined whether or not the current frame is an I frame, and if it is not an I frame, the images of the frame memories B and C are added in 812, and the result is stored in the frame memory B. . Here, the encoding process for one frame is completed.
【0049】そして、813の処理が行われる直前にフ
レームメモリBに格納されている画像は、符号化処理が
終了したばかりのフレームの再生画像(復号側で得られ
るものと同じ)である。813では、符号化が終了した
フレームが最後のフレームであるか否かが判定され、最
後のフレームであれば、符号化処理が終了する。最後の
フレームではない場合には、814でNに1が加算さ
れ、再び803に戻って次のフレームの符号化処理が開
始される。The image stored in the frame memory B immediately before the process of 813 is the reproduced image of the frame for which the encoding process has just finished (the same as that obtained on the decoding side). At 813, it is determined whether the frame for which encoding has been completed is the last frame, and if it is the last frame, the encoding process ends. If it is not the last frame, 1 is added to N in 814, the flow returns to 803 again, and the encoding process of the next frame is started.
【0050】図7にソフトウェア復号化器700の例を
示す。入力された符号化ビットストリーム701は一旦
入力バッファ702に蓄えられた後に汎用プロセッサ7
03に読み込まれる。汎用プロセッサはハードディスク
やフレキシブルディスクなどによる蓄積デバイス708
から読み出されたプログラムを蓄えるプログラム用メモ
リ704、および処理用メモリ705を活用して復号化
処理を行う。この結果得られた復号化画像は一旦出力フ
レームメモリ706に蓄えられた後に出力画像707と
して出力される。FIG. 7 shows an example of the software decoder 700. The input coded bit stream 701 is temporarily stored in the input buffer 702 and then stored in the general-purpose processor 7.
It is read in 03. A general-purpose processor is a storage device 708 such as a hard disk or a flexible disk.
Decoding processing is performed by utilizing the program memory 704 that stores the program read from and the processing memory 705. The decoded image obtained as a result is temporarily stored in the output frame memory 706 and then output as the output image 707.
【0051】図7に示したソフトウェア復号化器上で動
作する復号化ソフトウェアのフローチャートの例を図1
1に示す。1101で処理が開始され、まず1102で
入力情報があるか否かが判定される。ここで入力情報が
無ければ1103で復号化の処理を終了する。入力情報
がある場合には、まず、1104で符号化識別情報が入
力される。なお、この「入力される」とは、入力バッフ
ァ(例えば、図7の702)に蓄えられた情報を読み込
むことを意味している。1105では、読み込んだ符号
化モード識別情報が’I’であるか否かが判定される。
そして、’I’ではない場合には、1106で丸め込み
方法の識別情報が入力され、続いて1107で動き補償
処理が行われる。FIG. 1 is an example of a flowchart of the decoding software which operates on the software decoder shown in FIG.
Shown in 1. The process starts at 1101 and first, at 1102, it is determined whether or not there is input information. If there is no input information here, the decoding process ends in 1103. If there is input information, first, the encoded identification information is input at 1104. The term “input” means that the information stored in the input buffer (eg, 702 in FIG. 7) is read. At 1105, it is determined whether or not the read coding mode identification information is'I '.
If it is not'I ', the identification information of the rounding method is input in 1106, and the motion compensation process is performed in 1107.
【0052】この1107で行われる処理の詳細を表し
たフローチャートの例を図12に示す。まず、1201
でブロックごとの動きベクトル情報が入力される。そし
て、1202で1106で読み込まれた丸め込み方法の
識別情報が’+’であるか否かが判定される。これが’
+’である場合には、現在復号化中のフレームがP+フ
レームである。このとき1203で正の丸め込みにより
予測画像が合成され、この予測画像はフレームメモリD
に格納される。FIG. 12 shows an example of a flow chart showing the details of the processing performed in 1107. First, 1201
Inputs motion vector information for each block. Then, in 1202, it is determined whether or not the identification information of the rounding method read in 1106 is “+”. This is'
If it is + ', the frame currently being decoded is a P + frame. At this time, a predicted image is synthesized by positive rounding in 1203, and this predicted image is stored in the frame memory D.
Stored in.
【0053】なお、ここで述べたフレームメモリDと
は、ソフトウェア復号化器のメモリ領域(例えば、図7
の705のメモリ内にこのメモリ領域が確保される)の
一部を意味している。一方、丸め込み方法の識別情報
が’+’ではない場合には、現在復号化中のフレームが
P−フレームであり、1204で負の丸め込みにより予
測画像が合成され、この予測画像はフレームメモリDに
格納される。このとき、もし何らかの誤りにより、P+
フレームがP−フレームとして復号化されたり、逆にP
−フレームがP+フレームとして復号化された場合に
は、符号化器が意図したものとは異なる予測画像が復号
化器において合成されることになり、正しい復号化が行
われずに画質が劣化する。The frame memory D described here is the memory area of the software decoder (for example, FIG. 7).
This memory area is secured in the memory 705 of the above). On the other hand, when the identification information of the rounding method is not “+”, the frame currently being decoded is the P-frame, and the predicted image is synthesized by negative rounding at 1204, and this predicted image is stored in the frame memory D. Is stored. At this time, if something goes wrong, P +
The frame is decoded as a P-frame, and conversely P
-If a frame is decoded as a P + frame, a prediction image different from the one intended by the encoder will be synthesized in the decoder, and correct decoding will not be performed, resulting in deterioration of image quality.
【0054】ここで図11に戻る。1108では量子化
DCT係数が入力され、これに逆量子化、逆DCTを適
用して得られた画像がフレームメモリEに格納される。
1109では、再び現在復号化中のフレームがIフレー
ムであるか否かが判定される。そして、Iフレームでは
ない場合には、1110でフレームメモリDとEに格納
された画像が加算され、この結果の画像がフレームメモ
リEに格納される。1111の処理を行う直前にフレー
ムメモリEに格納されている画像が、再生画像となる。
1111では、このフレームメモリEに格納された画像
が出力フレームメモリ(例えば、図7の706)に出力
され、そのまま出力画像として復号化器から出力され
る。こうして1フレーム分の復号化処理が終了し、処理
は再び1102に戻る。Returning to FIG. At 1108, the quantized DCT coefficient is input, and the image obtained by applying the inverse quantization and the inverse DCT thereto is stored in the frame memory E.
At 1109, it is again determined whether the frame currently being decoded is an I frame. Then, if it is not the I frame, the images stored in the frame memories D and E are added at 1110, and the resulting image is stored in the frame memory E. The image stored in the frame memory E immediately before the processing of 1111 is the reproduced image.
In 1111, the image stored in the frame memory E is output to the output frame memory (for example, 706 in FIG. 7) and is output as it is from the decoder as an output image. In this way, the decoding process for one frame ends, and the process returns to 1102 again.
【0055】図6と7に示したソフトウェア画像符号化
器、ソフトウェア画像復号化器に図8〜12に示したフ
ローチャートに基づくプログラムを実行させると、専用
回路・専用チップを用いる装置を使用した場合と同様の
効果を得ることができる。When the software image encoder and the software image decoder shown in FIGS. 6 and 7 are caused to execute the programs based on the flowcharts shown in FIGS. 8 to 12, when the device using the dedicated circuit and the dedicated chip is used. The same effect as can be obtained.
【0056】図6のソフトウェア符号化器601が図8
〜10のフローチャートに示した処理を行うことにより
生成されたビットストリームを記録した蓄積メディア
(記録媒体)の例を図13に示す。ディジタル情報を記
録することができる記録ディスク(例えば磁気、光ディ
スクなど)1301には、同心円上にディジタル情報が
記録されている。このディスクに記録されているディジ
タル情報の一部1302を取り出すと、符号化されたフ
レームの符号化モード識別情報1303、1305、1
308、1311、1314、丸め込み方法の識別情報
1306、1309、1312、1315、動きベクト
ルやDCT係数等の情報1304、1307、131
0、1313、1316が記録されている。図8〜10
に示した方法に従えば、1303には’I’、130
5、1308、1311、1314には’P’、130
6、1312には’+’、1309、1315には’
−’を意味する情報が記録されることとなる。この場
合、例えば’I’と’+’は1ビットの0、’P’と’
−’は1ビットの1で表せば、復号化器は正しく記録さ
れた情報を解釈し、再生画像を得ることが可能となる。
このようにして蓄積メディアに符号化ビットストリーム
を蓄積することにより、このビットストリームを読み出
して復号化した場合に丸め込み誤差の蓄積が発生するこ
とを防ぐことができる。The software encoder 601 of FIG.
Storage media recording a bitstream generated by performing the processes shown in the flowcharts
FIG. 13 shows an example of (recording medium). A recording disk (for example, a magnetic disk or an optical disk) 1301 capable of recording digital information has digital information recorded on concentric circles. When part 1302 of the digital information recorded on this disc is taken out, the coding mode identification information 1303, 1305, 1 of the coded frame is extracted.
308, 1311, 1314, rounding method identification information 1306, 1309, 1312, 1315, information such as motion vector and DCT coefficient 1304, 1307, 131.
0, 1313, and 1316 are recorded. 8-10
According to the method shown in FIG.
5, 1308, 1311, 1314 have'P ', 130
'+' For 6, 1312 and 'for 1309, 1315
Information that means'- 'will be recorded. In this case, for example, 'I' and '+' are 1-bit 0, 'P' and '
If −'is represented by 1 of 1 bit, the decoder can interpret correctly recorded information and obtain a reproduced image.
By accumulating the encoded bitstream in the accumulating medium in this way, it is possible to prevent accumulation of a rounding error when the bitstream is read and decoded.
【0057】図5に示したP+フレーム、P−フレー
ム、Bフレームが存在する画像系列に関する符号化ビッ
トストリームを記録した蓄積メディアの例を図15に示
す。図13の1301と同様に、ディジタル情報を記録
することができる記録ディスク(例えば磁気、光ディス
クなど)1501には、同心円上にディジタル情報が記
録されている。このディスクに記録されているディジタ
ル情報の一部1502を取り出すと、符号化されたフレ
ームの符号化モード識別情報1503、1505、15
08、1510、1513、丸め込み方法の識別情報1
506、1512、動きベクトルやDCT係数等の情報
1504、1507、1509、1511、1514が
記録されている。FIG. 15 shows an example of a storage medium in which a coded bit stream relating to an image sequence including the P + frame, P- frame and B frame shown in FIG. 5 is recorded. Similar to 1301 in FIG. 13, a recording disk (for example, magnetic or optical disk) 1501 capable of recording digital information has digital information recorded on concentric circles. When a part 1502 of the digital information recorded on this disc is taken out, the coding mode identification information 1503, 1505, 15 of the coded frame is obtained.
08, 1510, 1513, identification information 1 for rounding method
506 and 1512, and information 1504, 1507, 1509, 1511 and 1514 such as motion vectors and DCT coefficients are recorded.
【0058】このとき、1503には’I’、150
5、1510には’P’、1508、1513には’
B’、1505には’+’、1511には’−’を意味
する情報が記録されている。例えば’I’、’P’、’
B’をそれぞれ2ビットの00、01、10、’+’
と’−’はそれぞれ1ビットの0と1で表せば、復号化
器は正しく記録された情報を解釈し、再生画像を得るこ
とが可能となる。At this time, 1503 has'I ', 150
5, 1510 is'P ', 1508, 1513 is'P'
Information indicating “+” is recorded in B ′, 1505, and “−” is recorded in 1511. For example, 'I', 'P', '
B'is 2 bits each of 00, 01, 10, '+'
If "-" and "-" are represented by 1-bit 0 and 1, respectively, the decoder can correctly interpret the recorded information and obtain a reproduced image.
【0059】このとき図5の501(Iフレーム)に関
する情報が1503と1504、502(Bフレーム)
に関する情報が1508と1509、フレーム503
(P+フレーム)に関する情報が1505〜1507、
フレーム504(Bフレーム)に関する情報が1513
と1514、フレーム505(P−フレーム)に関する
情報が1510〜1512である。このように動画像を
Bフレームを含む形で符号化場合、一般的にフレームに
関する情報を伝送する順番と、再生する順番は異なる。
これは、あるBフレームを復号化する前に、このBフレ
ームが予測画像を合成する際に使用する前後の参照画像
を復号化しておかなければならないためである。このた
め、フレーム502はフレーム503の前に再生される
にもかかわらず、フレーム502が参照画像として使用
するフレーム503に関する情報がフレーム502に関
する情報の前に伝送されるる。At this time, information about 501 (I frame) in FIG. 5 is 1503, 1504, and 502 (B frame).
Information about 1508 and 1509, frame 503
Information about (P + frame) is 1505-1507,
Information about the frame 504 (B frame) is 1513
And 1514, and information regarding the frame 505 (P-frame) is 1510 to 1512. In this way, when a moving image is encoded in a form including B frames, the order of transmitting information regarding frames is generally different from the order of reproducing.
This is because before decoding a certain B frame, the reference images before and after the B frame is used when synthesizing the predicted image must be decoded. Therefore, although the frame 502 is reproduced before the frame 503, the information regarding the frame 503 used as a reference image by the frame 502 is transmitted before the information regarding the frame 502.
【0060】上述の通り、Bフレームは丸め込み誤差の
蓄積を引き起こす要員とはならないため、Pフレームの
ように複数の丸め込み方法を適用する必要はない。この
ため、ここに示した例では、Bフレームに関してはは丸
め込み方法を指定する’+’や’−’のような情報は伝
送されていない。こうすることにより、例えばBフレー
ムに関しては常に正の丸め込みのみが適用されるように
したとしても、誤差の蓄積の問題は発生しない。このよ
うにして、蓄積メディアにBフレームに関する情報を含
む符号化ビットストリームを蓄積することにより、この
ビットストリームを読み出して復号化した場合に丸め込
み誤差の蓄積が発生することを防ぐことができる。As described above, since the B frame does not become a person who causes accumulation of rounding error, it is not necessary to apply a plurality of rounding methods like the P frame. Therefore, in the example shown here, information such as' + 'and'-' that specifies the rounding method is not transmitted for the B frame. By doing so, even if only positive rounding is always applied to B frames, for example, the problem of error accumulation does not occur. In this way, by accumulating the encoded bitstream including the information about the B frame in the accumulating medium, it is possible to prevent the accumulation of the rounding error when the bitstream is read and decoded.
【0061】図14に、本明細書で示したP+フレーム
とP−フレームが混在する符号化方法に基づく符号化・
復号化装置の具体例を示す。パソコン1401に画像符
号化・復号化用のソフトウェアを組み込むことにより、
画像符号化・復号化装置として活用することが可能であ
る。このソフトウェアはコンピュータ読み取り可能な記
録媒体である何らかの蓄積メディア(CD−ROM、フ
レキシブルディスク、ハードディスクなど)1412に
記録されており、これをパソコンが読み込んで使用す
る。また、さらに何らかの通信回線にこのパソコンを接
続することにより、映像通信端末として活用することも
可能となる。FIG. 14 shows an encoding method based on the encoding method in which the P + frame and the P- frame are mixed as shown in this specification.
A specific example of the decoding device will be shown. By incorporating the software for image encoding / decoding in the personal computer 1401,
It can be used as an image encoding / decoding device. This software is recorded in a storage medium (CD-ROM, flexible disk, hard disk, etc.) 1412, which is a computer-readable recording medium, and is read and used by a personal computer. Further, by connecting the personal computer to any communication line, it can be utilized as a video communication terminal.
【0062】記録媒体である蓄積メディア1402に記
録した符号化ビットストリームを読み取り、復号化する
再生装置1403にも本明細書に示した復号化方法を実
装することが可能である。この場合、再生された映像信
号はテレビモニタ1404に表示される。また、140
3の装置は符号化ビットストリームを読み取るだけであ
り、テレビモニタ1404内に復号化装置が組み込まれ
ている場合も考えられる。The decoding method shown in the present specification can be implemented in the reproducing device 1403 which reads and decodes the encoded bit stream recorded in the storage medium 1402 which is a recording medium. In this case, the reproduced video signal is displayed on the television monitor 1404. Also, 140
The device of No. 3 only reads the encoded bitstream, and it is conceivable that the decoding device is incorporated in the television monitor 1404.
【0063】最近は衛星、地上波によるディジタル放送
が話題となっているが、ディジタル放送用のテレビ受信
機1405にも復号化装置を組み込むことができる。Recently, digital broadcasting by satellite and terrestrial waves has become a hot topic, but a decoding device can be incorporated in a television receiver 1405 for digital broadcasting.
【0064】また、ケーブルテレビ用のケーブル140
8または衛星/地上波放送のアンテナに接続されたセッ
トトップボックス1409内に復号化装置を実装し、こ
れをテレビモニタ1410で再生する構成も考えられ
る。このときも1404の場合と同様に、セットトップ
ボックスではなく、テレビモニタ内に符号化装置を組み
込んでも良い。Also, the cable 140 for the cable TV
8 or a configuration in which a decoding device is mounted in a set top box 1409 connected to an antenna for satellite / terrestrial broadcasting, and is reproduced on a television monitor 1410 is also conceivable. At this time, as in the case of 1404, the encoding device may be incorporated in the television monitor instead of the set top box.
【0065】1413、1414、1415は、ディジ
タル衛星放送システムの構成例を示したものである。放
送局1413では映像情報の符号化ビットストリームが
電波を介して通信または放送衛星1414に伝送され
る。これを受けた衛星は、放送用の電波を発信し、この
電波を衛星放送受信設備をもつ家庭1415が受信し、
テレビ受信機またはセットトップボックスなどの装置に
より符号化ビットストリームを復号化してこれを再生す
る。Reference numerals 1413, 1414, and 1415 show an example of the configuration of the digital satellite broadcasting system. At the broadcasting station 1413, the coded bit stream of video information is transmitted to a communication or broadcasting satellite 1414 via radio waves. The satellite which receives this transmits a radio wave for broadcasting, and this radio wave is received by the home 1415 having a satellite broadcasting receiving facility,
A device such as a television receiver or a set top box decodes the coded bitstream and reproduces it.
【0066】低い伝送レートでの符号化が可能となった
ことにより、最近はディジタル携帯端末1406による
ディジタル動画像通信も注目されるようになっている。
ディジタル携帯端末の場合、符号器・復号化器を両方持
つ送受信型の端末の他に、符号化器のみの送信端末、復
号化器のみの受信端末の3通りの実装形式が考えられ
る。Due to the possibility of encoding at a low transmission rate, digital moving image communication by the digital portable terminal 1406 has recently been drawing attention.
In the case of a digital mobile terminal, in addition to a transmission / reception type terminal having both an encoder and a decoder, three types of mounting formats are conceivable: a transmission terminal having only an encoder and a reception terminal having only a decoder.
【0067】動画像撮影用のカメラ1407の中に符号
化装置を組み込むことも可能である。この場合撮影用カ
メラは符号化装置と該符号化装置からの出力を記録媒体
に記録する記録装置とを持ち、符号化装置から出力され
た符号化ビットストリームを記録媒体に記録する。ま
た、カメラは映像信号を取り込むのみであり、これを専
用の符号化装置1411に組み込む構成も考えられる。It is also possible to incorporate an encoding device in the camera 1407 for capturing moving images. 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. Further, the camera only captures the video signal, and a configuration in which this is incorporated in the dedicated encoding device 1411 is also conceivable.
【0068】この図に示したいずれの装置・システムに
関しても、本明細書に示した方法を実装することによ
り、従来の技術を活用した場合と比較して、より画質の
高い画像情報を扱うことが可能となる。With respect to any of the devices and systems shown in this figure, by implementing the method shown in this specification, it is possible to handle image information of higher image quality as compared with the case of utilizing the conventional technique. Is possible.
【0069】なお、以下の変形も本発明に含まれること
は明らかである。It is obvious that the following modifications are included in the present invention.
【0070】(1)上の議論では、動き補償方式として
ブロックマッチングが使用されることが前提となってい
た。しかし、本発明は動きベクトルの水平・垂直成分が
水平・垂直方向の画素のサンプリング間隔の整数倍以外
値をとることができ、サンプル値の存在しない位置にお
ける強度値を共1次内挿によって求める動き補償方式を
採用する画像符号化方式および画像復号化方式すべてに
対して適用することができる。たとえば特願平08-06057
2に記載されているグローバル動き補償や、特願平08-24
9601に記載されているワーピング予測に対しても、本発
明は適用可能である。(1) In the above discussion, it was assumed that block matching was used as the motion compensation method. However, according to the present invention, the horizontal / vertical components of the motion vector can take values other than integer multiples of the sampling intervals of pixels in the horizontal / vertical directions, and the intensity value at the position where no sample value exists is obtained by co-linear interpolation. It can be applied to all image encoding methods and image decoding methods that employ the motion compensation method. For example, Japanese Patent Application No. 08-06057
Global motion compensation described in 2 and Japanese Patent Application No. 08-24
The present invention is also applicable to the warping prediction described in 9601.
【0071】(2)これまでの議論では、動きベクトル
の水平・垂直成分が1/2の整数倍の値をとる場合のみ
について議論してきた。しかし、議論を一般化すれば、
本発明は動きベクトルの水平・垂直成分が1/dの整数
倍(dは正の整数、かつ偶数)をとる方式に対して適用
可能である。しかし、dが大きくなった場合には、共1
次内挿の除算の除数(dの2乗、数2参照)が大きくな
るため、相対的に通常の除算の結果が整数に0.5を足し
た値となる確率が低くなる。したがって、プラスの丸め
込みのみを行った場合の、丸め込み誤算の期待値の絶対
値が小さくなり、誤差の蓄積による悪影響が目立ちにく
くなる。そこで、例えばdの値が可変である動き補償方
式などにおいては、dがある一定値より小さい場合には
プラスの丸め込みとマイナスの丸め込みの両方を使用
し、dが上記一定値以上の場合にはプラスまたはマイナ
スの丸め込みのみを用いるという方法も有効である。(2) In the above discussion, only the case where the horizontal / vertical components of the motion vector take an integral multiple of 1/2 has been discussed. But if we generalize the argument,
The present invention can be applied to a system in which the horizontal and vertical components of a motion vector take an integral multiple of 1 / d (d is a positive integer and an even number). However, when d becomes large,
Since the divisor of the division of the next interpolation (the square of d, see the equation 2) becomes large, the probability that the result of the ordinary division becomes a value obtained by adding 0.5 to the integer becomes relatively low. Therefore, when only positive rounding is performed, the absolute value of the expected value of rounding miscalculation becomes small, and the adverse effect of error accumulation is less noticeable. Therefore, for example, in a motion compensation method in which the value of d is variable, both positive rounding and negative rounding are used when d is smaller than a certain value, and when d is equal to or larger than the certain value. It is also effective to use only plus or minus rounding.
【0072】(3)従来の技術で述べた通り、DCTを
誤差符号化方式として利用した場合、丸め込み誤差の蓄
積による悪影響はDCT係数の量子化ステップサイズが
大きい場合に現れやすい。そこで、DCT係数の量子化
ステップサイズがある一定値より大きい場合にはプラス
の丸め込みとマイナスの丸め込みの両方を使用し、DC
T係数の量子化ステップサイズが上記一定値以下の場合
にはプラスまたはマイナスの丸め込みのみを用いるとい
う方法も有効である。(3) As described in the prior art, when the DCT is used as the error coding method, the adverse effect of accumulating the rounding error is likely to appear when the quantization step size of the DCT coefficient is large. Therefore, when the quantization step size of the DCT coefficient is larger than a certain value, both positive rounding and negative rounding are used, and DC
When the quantization step size of the T coefficient is equal to or smaller than the above-mentioned fixed value, a method of using only plus or minus rounding is also effective.
【0073】(4)輝度プレーンで丸め込み誤差の蓄積
が起こった場合と色差プレーンで丸め込み誤差の蓄積が
起こった場合では、一般的に色差プレーンで発生した場
合の方が再生画像に与える影響が深刻である。これは、
画像が全体的にわずかに明るくなったり暗くなったりす
ることよりも、画像の色が全体的に変化した場合の方が
目立ちやすいためである。そこで、色差信号に対しては
プラスの丸め込みとマイナスの丸め込みの両方を使用
し、輝度信号に対してはプラスまたはマイナスの丸め込
みのみを用いるという方法も有効である。(4) In the case where the rounding error is accumulated in the luminance plane and the case where the rounding error is accumulated in the color difference plane, the influence on the reproduced image is generally more serious when it is generated in the color difference plane. Is. this is,
This is because it is more noticeable when the color of the image changes as a whole than when the image becomes slightly brighter or darker as a whole. Therefore, it is also effective to use both positive rounding and negative rounding for the color difference signal and use only positive or negative rounding for the luminance signal.
【0074】また、従来の技術でH.263における1
/4画素精度の動きベクトルの1/2画素精度の動きベ
クトルへの丸め込み方法に関して述べたが、この方法に
多少の変更を加えることにより、丸め込み誤差の期待値
の絶対値を小さくすることが可能である。従来の技術で
とりあげたH.263では、輝度プレーンの動きベクト
ルの水平成分または垂直成分を半分にした値がr+s/
4(rは整数、sは0以上4未満の整数)で表されると
して、sが1または3であるときに、これを2に丸め込
む操作がおこなわれる。これをsが1のときにはこれを
0とし、sが3であるときにはrに1を加えてsを0と
する丸め込みを行うように変更すればよい。こうするこ
とにより、図4の406〜408の位置の強度値を計算
する回数が相対的に減少する(動きベクトルの水平・垂
直成分が整数となる確率が高くなる)ため、丸め込み誤
差の期待値の絶対値が小さくなる。しかし、この方法で
は発生する誤差の大きさを抑えることはできても、誤差
が蓄積することを防ぐことはできない。Further, according to the conventional technique, H. 1 in 263
The method of rounding a motion vector of / 4 pixel precision to a motion vector of 1/2 pixel precision was described, but the absolute value of the expected value of the rounding error can be reduced by making some changes to this method. Is. H.V. In H.263, the value obtained by halving the horizontal or vertical component of the motion vector of the luminance plane is r + s /
Assuming that 4 is represented by 4 (r is an integer and s is an integer of 0 or more and less than 4), when s is 1 or 3, the operation of rounding this to 2 is performed. This may be changed so that when s is 1, it is 0, and when s is 3, 1 is added to r to make s 0. By doing so, the number of times the intensity values at the positions 406 to 408 in FIG. 4 are calculated is relatively reduced (the probability that the horizontal and vertical components of the motion vector are integers is high), so the expected value of the rounding error is The absolute value of becomes smaller. However, although this method can suppress the magnitude of the generated error, it cannot prevent the error from accumulating.
【0075】(5)Pフレームに対して、2種類の動き
補償方式によるフレーム間予測画像の平均を最終的なフ
レーム間予測画像とする方式がある。例えば特願平8-36
16では、縦横16画素のブロックに対して一個の動きベ
クトルを割り当てるブロックマッチングと、縦横16画
素のブロックを4個の縦横8画素のブロックに分割し
て、それぞれに対して動きベクトルを割り当てるブロッ
クマッチングの2種類の方法によって得た2種類のフレ
ーム間予測画像を用意し、これらのフレーム間予測画像
の強度値の平均を求めたものを最終的なフレーム間予測
画像とする方法が述べられている。この方法において2
種類の画像の平均値を求める際にも丸め込みが行われ
る。この平均化の操作でプラスの丸め込みのみを行い続
けると、新たな丸め込み誤差の蓄積の原因を作ることに
なる。この方式では、ブロックマッチングにおいてプラ
スの丸め込みを行うP+フレームに対しては、平均化の
操作ではマイナスの丸め込みを行い、P−フレームに対
しては平均化の操作ではプラスの丸め込みを行うように
すれば、同一フレーム内でブロックマッチングによる丸
め込み誤差と平均化による丸め込み誤差が打ち消し合う
効果を得る
(6)P+フレームとP−フレームを交互に配置する方
法を用いた場合、符号化装置と復号化装置は現在符号化
しているPフレームがP+フレームであるP−フレーム
であるかを判定するために、例えば以下の処理を行なう
ことが考えられる。現在符号化または復号化しているP
フレームが、最も最近に符号化または復号化されたIフ
レームの後の何番目のPフレームであるかを数え、これ
が奇数であるときにはP+フレーム、偶数であるときは
P−フレームとすれば良い(これを暗示的方法と呼
ぶ)。また、符号化装置側が現在符号化しているPフレ
ームがP+フレームであるか、P−フレームであるかを
識別する情報を、例えばフレーム情報のヘッダ部分に書
き込むという方法もある(これを明示的方法と呼ぶ)。
この方法の方が、伝送誤りに対する耐性は強い。(5) For P frames, there is a system in which the average of inter-frame predicted images by two types of motion compensation systems is used as the final inter-frame predicted image. For example, Japanese Patent Application 8-36
In 16, block matching that allocates one motion vector to a block of 16 pixels in the vertical and horizontal directions and block matching that divides a block of 16 pixels in the vertical and horizontal directions into blocks of 8 pixels in the vertical and horizontal directions and allocates a motion vector to each There is described a method of preparing two types of inter-frame prediction images obtained by the two types of methods and determining the average of intensity values of these inter-frame prediction images as a final inter-frame prediction image. . 2 in this way
Rounding is also performed when obtaining the average value of different types of images. If only positive rounding is continued in this averaging operation, a new cause of accumulation of rounding error is created. In this method, a negative rounding is performed in the averaging operation for the P + frame which is positively rounded in the block matching, and a positive rounding is performed in the averaging operation for the P-frame. For example, the rounding error due to block matching and the rounding error due to averaging cancel each other in the same frame. (6) When the method of arranging P + frames and P− frames alternately is used, the encoding device and the decoding device It is conceivable to perform, for example, the following processing in order to determine whether the currently encoded P frame is a P + frame which is a P + frame. P currently encoded or decoded
The number of the P frame after the most recently encoded or decoded I frame is counted, and when it is an odd number, it may be a P + frame, and when it is an even number, it may be a P− frame ( This is called the implicit method). There is also a method of writing information for identifying whether the P frame currently encoded by the encoding device side is a P + frame or a P− frame, for example, in the header portion of the frame information (this is an explicit method. Called).
This method is more resistant to transmission errors.
【0076】また、P+フレームと、P−フレームを識
別する情報をフレーム情報のヘッダ部分に書き込む方法
には、以下の長所がある。「従来の技術」で述べた通
り、過去の符号化標準(例えばMPEG−1やMPEG
−2)では、Pフレームにおいて正の丸め込みのみが行
われる。したがって、例えば既に市場に存在しているM
PEG−1/2用の動き推定・動き補償装置(例えば、
図1の106に相当する部分)は、P+フレームとP−
フレームが混在する符号化には対応できないことにな
る。いま、P+フレームとP−フレームが混在する符号
化に対応した復号化器があるとする。この場合に、もし
この復号化器が上記暗示的方法に基づくものであれば、
MPEG−1/2用の動き推定・動き補償装置を用い
て、この暗示的方法に基づく復号化器が正しく復号化で
きるようなビットストリームを生成する符号化器を作る
ことは困難である。The method of writing the information for identifying the P + frame and the P- frame in the header portion of the frame information has the following advantages. As described in "Prior Art", past coding standards (for example, MPEG-1 and MPEG) are used.
In -2), only positive rounding is performed in the P frame. So, for example, M already in the market
Motion estimation / compensation device for PEG-1 / 2 (for example,
The portion corresponding to 106 in FIG. 1) is a P + frame and a P− frame.
This means that it cannot support encoding in which frames are mixed. Now, it is assumed that there is a decoder compatible with encoding in which P + frames and P− frames are mixed. In this case, if this decoder is based on the implicit method above,
Using a motion estimation / compensation device for MPEG-1 / 2, it is difficult to make an encoder that produces a bitstream that can be correctly decoded by a decoder based on this implicit method.
【0077】しかし、復号化器が上記明示的方法に基づ
くものである場合には、この問題を解決することができ
る。MPEG−1/2用の動き推定・動き補償装置を使
用した符号化器は、常にP+フレームを送り続け、これ
を示す識別情報をフレーム情報のヘッダに書き込み続け
れば良い。こうすれば、明示的方法に基づく復号化器
は、この符号化器が生成したビットストリームを正しく
再生することができる。However, this problem can be solved if the decoder is based on the explicit method above. An encoder using a motion estimation / compensation device for MPEG-1 / 2 may always send P + frames and write identification information indicating the P + frames in the header of frame information. In this way, a decoder based on the explicit method can correctly reproduce the bitstream generated by this encoder.
【0078】もちろん、この場合にはP+フレームのみ
が存在するため、丸め込み誤差の蓄積は発生しやすくな
る。しかし、この符号化器がDCT係数の量子化ステッ
プサイズとして小さい値のみを用いるもの(高レート符
号化専用の符号化器)であるような場合には、誤差の蓄
積は大きな問題とはならない。Of course, in this case, since there are only P + frames, accumulation of rounding error is likely to occur. However, in the case where this encoder uses only a small value as the quantization step size of the DCT coefficient (encoder dedicated to high-rate encoding), error accumulation does not become a big problem.
【0079】この過去の方式との互換性の問題以外に
も、明示的方法にはさらに、(a)高レート符号化専用
の符号化器や、頻繁にIフレームを挿入することにより
丸め込み誤差が発生しにくい符号化器は、正か負のどち
らかの丸め込み方法のみを実装すれば良く、装置のコス
トを抑えることができる、(b)上記の丸め込み誤差が
発生しにくい符号化器は、P+またはP−フレームのど
ちらか一方のみを送り続ければ良いため、現在符号化を
行っているフレームをP+フレームとするか、P−フレ
ームとするかの判定を行う必要がなく、処理を簡略化で
きる、といった長所がある。In addition to the problem of compatibility with the past system, the explicit method further includes (a) an encoder dedicated to high-rate coding and a rounding error due to frequent insertion of I frames. The encoder that is hard to generate only needs to implement either the positive or negative rounding method, and the cost of the device can be suppressed. (B) The encoder that is hard to generate the rounding error is P + Alternatively, since it is sufficient to continue to send only one of the P-frames, it is not necessary to determine whether the frame currently being encoded is the P + frame or the P-frame, and the processing can be simplified. There are advantages such as.
【0080】(7)本発明は、フレーム間予測画像に対
し、丸め込み処理を伴うフィルタリングを行う場合にも
適用することができる。例えば、動画像符号化の国際標
準であるH.261では、フレーム間予測画像において
動きベクトルが0ではなかったブロック内の信号に対し
ては、低域通過型フィルタ(これをループフィルタと呼
ぶ)が適用される。また、H.263では、ブロックの
境界部に発生する不連続(いわゆるブロック歪み)を平
滑化するためのフィルタを使用することができる。これ
らのフィルタでは、画素の強度値に対して重み付け平均
化の処理が行われ、フィルタリング後の強度値に対して
整数への丸め込みの操作が行われる。ここでもプラスの
丸め込みとマイナスの丸め込みを使い分けることによ
り、誤差の蓄積を防ぐことが可能である。(7) The present invention can also be applied to the case where filtering involving rounding processing is performed on an inter-frame predicted image. For example, H.264, which is an international standard for moving image coding, is used. In H.261, a low-pass filter (this is called a loop filter) is applied to the signal in the block whose motion vector is not 0 in the inter-frame predicted image. In addition, H. In H.263, a filter for smoothing discontinuity (so-called block distortion) generated at the boundary of blocks can be used. In these filters, the intensity averaging process is performed on the pixel intensity values, and the filtered intensity values are rounded to an integer. Again, it is possible to prevent the accumulation of errors by using positive rounding and negative rounding properly.
【0081】(8)IP+P−P+P−…の他に、IP
+P+P−P−P+P+…や、IP+P−P−P+P+
…など、P+フレームとP−フレームの混在の仕方には
様々な方法が考えられる。例えば、それぞれ1/2の確
率で0と1が発生する乱数発生器を使用し、0が出れば
P+、1が出ればP−としても良い。いずれにせよ、一
般的にP+とP−フレームが混在し、かつ一定時間内の
それぞれの存在確率の差が小さいほど、丸め混み誤差の
蓄積は発生しにくくなる。また、符号化器に対し、任意
のP+フレームとP−フレームの混在の仕方を許すよう
な場合、符号化器と復号化器は(6)で示した暗示的方
法に基づくものではなく、明示的方法に基づくものでな
ければならない。したがって、符号化器と復号化器に関
してより柔軟な実装形態を許すという観点からは、明示
的方法の方が有利となる。(8) In addition to IP + P-P + P -...
+ P + P-P-P + P + ... or IP + P-P-P + P +
Various methods are conceivable for mixing P + frames and P- frames, such as. For example, a random number generator that generates 0 and 1 with a probability of ½ may be used, and P + may be used when 0 is generated and P− may be used when 1 is generated. In any case, generally, as P + and P− frames are mixed and the difference between the respective existence probabilities within a fixed time is smaller, the accumulation of rounding error is less likely to occur. Also, when allowing the encoder to mix arbitrary P + frames and P- frames, the encoder and the decoder are not based on the implicit method shown in (6), and It must be based on the objective method. Therefore, the explicit method is more advantageous from the perspective of allowing more flexible implementations for the encoder and decoder.
【0082】(9)本発明は、画素の存在しない点の強
度値を求める方法を共1次内挿に限定するものではな
い。強度値の内挿方法は一般化すると、以下の式のよう
に表すことができる。(9) The present invention does not limit the method of obtaining the intensity value of a point where no pixel exists to the bilinear interpolation. When the interpolation method of the intensity value is generalized, it can be expressed as the following equation.
【0083】[0083]
【数5】 [Equation 5]
【0084】ここで、r、sは実数、h(r,s)は内挿
のための実数の関数、T(z)は実数zを整数に丸め込む
関数であり、R(x,y)、x、yの定義は数4と同じ
である。T(z)が、プラスの丸め込みを表す関数であ
る場合にはプラスの丸め込みを用いる動き補償、マイナ
スの丸め込みを表す関数である場合にはマイナスの丸め
込みを用いる動き補償が行われる。この数5の形式で表
すことのできる内挿方法に対しては、本発明を適用する
ことが可能である。例えばh(r,s)を、Here, r and s are real numbers, h (r, s) is a real number function for interpolation, T (z) is a function that rounds the real number z into an integer, and R (x, y), The definitions of x and y are the same as in the equation 4. When T (z) is a function representing positive rounding, motion compensation using positive rounding is performed, and when T (z) is a function representing negative rounding, motion compensation using negative rounding is performed. The present invention can be applied to the interpolation method that can be expressed in the format of the mathematical expression 5. For example, h (r, s)
【0085】[0085]
【数6】 [Equation 6]
【0086】のように定義すれば共1次内挿が行われ
る。しかし、例えばh(r,s)をIf the definition is made as follows, co-linear interpolation is performed. However, for example, h (r, s)
【0087】[0087]
【数7】 [Equation 7]
【0088】のように定義すれば、共1次内挿とは異な
る内挿方法が実施されるが、この場合も本発明を適用す
ることは可能である。If the definition is made as follows, an interpolation method different from the co-linear interpolation is carried out, but the present invention can be applied to this case as well.
【0089】(10)本発明は、誤差画像の符号化方法
をDCTに限定するものではない、例えば、DCTでは
なく、ウェーブレット変換(例えば、M. Antonioni, e
t. al,"Image Coding Using Wavelet Transform
4, IEEE Trans. Image Processing, vol. 1, no.2, Apr
il 1992)や、ウォルシューアダマール変換(Walsh-Had
amardTransform)(例えば、A. N. Netravalli and B.
G. Haskell, "DigitalPictures", Plenum Press,
1998)を使用した場合でも本発明は適用可能である。(10) The present invention does not limit the error image coding method to DCT. For example, not DCT but wavelet transform (eg, M. Antonioni, e.
t.al, &# 34Image Coding Using Wavelet Transform &# 3
4, IEEE Trans. Image Processing, vol. 1, no.2, Apr
il 1992) and Walsh-Had transformation (Walsh-Had
amardTransform) (for example, AN Netravalli and B.
G. Haskell, &# 34DigitalPictures &# 34, Plenum Press,
(1998), the present invention can be applied.
【0090】[0090]
【発明の効果】本発明により、フレーム間予測画像にお
ける丸め込み誤差の蓄積を抑えることが可能となり、再
生画像の画質を向上させることが可能となる。According to the present invention, it is possible to suppress the accumulation of rounding error in the inter-frame predicted image, and it is possible to improve the quality of the reproduced image.
【図1】H.263の画像符号化器の構成例を示した図
である。FIG. 1 H. It is a figure showing the example of composition of the picture encoder of H.263.
【図2】H.263の画像復号化器の構成例を示した図
である。FIG. It is a figure showing the example of composition of the picture decoder of H.263.
【図3】H.263におけるマクロブロックの構成を示
した図である。FIG. It is a figure showing the composition of the macroblock in H.263.
【図4】半画素成度のブロックマッチングにおける輝度
値の内挿処理の様子を示した図である。FIG. 4 is a diagram showing a state of interpolation processing of a luminance value in block matching of half-pixel accuracy.
【図5】符号化された画像系列の様子を示した図であ
る。FIG. 5 is a diagram showing a state of an encoded image sequence.
【図6】ソフトウェア画像符号化装置の構成例を示した
図である。FIG. 6 is a diagram showing a configuration example of a software image encoding device.
【図7】ソフトウェア画像復号化装置の構成例を示した
図である。FIG. 7 is a diagram showing a configuration example of a software image decoding device.
【図8】ソフトウェア画像符号化装置における処理のフ
ローチャートの例を示した図である。FIG. 8 is a diagram showing an example of a flowchart of processing in the software image encoding device.
【図9】ソフトウェア画像符号化装置における符号化モ
ード決定処理のフローチャートの例を示した図である。FIG. 9 is a diagram showing an example of a flowchart of encoding mode determination processing in the software image encoding device.
【図10】ソフトウェア画像符号化装置における動き推
定・動き補償処理のフローチャートの例を示した図であ
る。FIG. 10 is a diagram showing an example of a flowchart of motion estimation / motion compensation processing in the software image encoding device.
【図11】ソフトウェア画像復号化装置における処理の
フローチャートの例を示した図である。FIG. 11 is a diagram showing an example of a flowchart of processing in the software image decoding apparatus.
【図12】ソフトウェア画像復号化装置における動き補
償処理のフローチャートの例を示した図である。FIG. 12 is a diagram showing an example of a flowchart of motion compensation processing in the software image decoding device.
【図13】IフレームとP+フレームとP−フレームを
混在させる符号化方法により符号化されたビットストリ
ームを記録した蓄積メディアの例を示した図である。FIG. 13 is a diagram showing an example of a storage medium in which a bitstream encoded by an encoding method in which I frames, P + frames, and P− frames are mixed is recorded.
【図14】P+フレームとP−フレームを混在させる符
号化方法を使用する装置の具体例を示した図である。FIG. 14 is a diagram showing a specific example of an apparatus using an encoding method in which P + frames and P− frames are mixed.
【図15】IフレームとBフレームとP+フレームとP
−フレームを混在させる符号化方法により符号化された
ビットストリームを記録した蓄積メディアの例を示した
図である。[Fig. 15] I frame, B frame, P + frame, and P
FIG. 6 is a diagram showing an example of a storage medium in which a bitstream encoded by an encoding method in which frames are mixed is recorded.
【図16】P+フレームとP−フレームを混在させる符
号化方法を使用する装置に含まれるブロックマッチング
部の例を示した図である。[Fig. 16] Fig. 16 is a diagram illustrating an example of a block matching unit included in an apparatus using an encoding method in which P + frames and P- frames are mixed.
【図17】P+フレームとP−フレームを混在させる符
号化方法により符号化されたビットストリームを復号化
する装置に含まれる予測画像合成部の例を示した図であ
る。[Fig. 17] Fig. 17 is a diagram illustrating an example of a predictive image combining unit included in an apparatus that decodes a bitstream encoded by an encoding method in which P + frames and P- frames are mixed.
100…画像符号化器、101…入力画像、102…減
算器、103…誤差画像、104…DCT変換器、10
5…DCT係数量子化器、106、201…量子化DC
T係数、108、204…DCT係数逆量子化器、10
9、205…逆DCT変換器、110、206…復号誤
差画像、111、207…加算器、112…現フレーム
の復号画像、113、215…フレーム間/フレーム内
符号化切り換えスイッチの出力画像、114、209…
フレームメモリ、115、210…前フレームの復号画
像、116、1600…ブロックマッチング部、11
7、212…現フレームの予測画像、118、213…
「0」信号、119、214…フレーム間/フレーム内
符号化切り換えスイッチ、120、202…動きベクト
ル情報、121、203…フレーム間/フレーム内識別
フラグ、122…多重化器、123…伝送ビットストリ
ーム、200…画像復号化器、208…出力画像、21
1、1700…予測画像合成部、216…分離器、30
1…Yブロック、302…Uブロック、303…Vブロ
ック、401〜404…画素、405〜408…共1次
内挿により強度値を求める位置、501…Iフレーム、
503、505、507、509…Pフレーム、50
2、504、506、508…Bフレーム、600…ソ
フトウェア画像符号化器、602…入力画像用フレーム
メモリ、603、703…汎用プロセッサ、604、7
04…プログラム用メモリ、605、705…処理用メ
モリ、606…出力バッファ、607、701…符号化
ビットストリーム、608、708…蓄積デバイス、7
00…ソフトウェア画像復号化器、702…入力バッフ
ァ、706…出力画像用フレームメモリ。801〜81
5、901〜906、1001〜1005、1101〜
1111、1201〜1204…フローチャートの処理
項目、1301、1402、1501…蓄積メディア、
1302、1502…ディジタル情報を記録したトラッ
ク、1303〜1316、1503〜1514…ディジ
タル情報、1401…パソコン、1403…蓄積メディ
アの再生装置、1404、1410…テレビモニタ、1
405…テレビ放送受信機、1406…無線携帯端末、
1407…テレビカメラ、1408…ケーブルテレビ用
のケーブル、1409…セットトップボックス、141
1…画像符号化装置、1412…ソフトウェア情報を記
録した蓄積メディア、1413…放送局、1414…通
信または放送衛星、1415…衛星放送受信設備を持つ
家庭、1601…動き推定器、1602、1701…丸
め込み方法決定器、1604、1605、1702、1
704…丸め込み方法に関する情報、1603、170
3…予測画像合成器。100 ... Image encoder, 101 ... Input image, 102 ... Subtractor, 103 ... Error image, 104 ... DCT converter, 10
5 ... DCT coefficient quantizer, 106, 201 ... Quantized DC
T coefficient, 108, 204 ... DCT coefficient inverse quantizer, 10
9, 205 ... Inverse DCT converter, 110, 206 ... Decoding error image, 111, 207 ... Adder, 112 ... Current frame decoded image, 113, 215 ... Inter-frame / intra-frame coding changeover switch output image, 114 209 ...
Frame memory, 115, 210 ... Decoded image of previous frame, 116, 1600 ... Block matching unit, 11
7, 212 ... Predicted image of current frame, 118, 213 ...
"0" signal, 119, 214 ... Inter-frame / intra-frame coding changeover switch, 120, 202 ... Motion vector information, 121, 203 ... Inter-frame / intra-frame identification flag, 122 ... Multiplexer, 123 ... Transmission bit stream , 200 ... Image decoder, 208 ... Output image, 21
1, 1700 ... Predicted image synthesizing unit, 216 ... Separator, 30
1 ... Y block, 302 ... U block, 303 ... V block, 401-404 ... Pixel, 405-408 ... Position where intensity value is obtained by linear interpolation, 501 ... I frame,
503, 505, 507, 509 ... P frame, 50
2, 504, 506, 508 ... B frame, 600 ... Software image encoder, 602 ... Input image frame memory, 603, 703 ... General-purpose processor, 604, 7
04 ... Program memory, 605, 705 ... Processing memory, 606 ... Output buffer, 607, 701 ... Encoded bit stream, 608, 708 ... Storage device, 7
00 ... Software image decoder, 702 ... Input buffer, 706 ... Output image frame memory. 801-81
5, 901 to 906, 1001 to 1005, 1101
1111, 1201 to 1204 ... Flowchart processing items, 1301, 1402, 1501 ... Storage media,
1302, 1502 ... Tracks recording digital information, 1303-1316, 1503-1514 ... Digital information, 1401 ... Personal computer, 1403 ... Storage media playback device, 1404, 1410 ... Television monitor, 1
405 ... Television broadcast receiver, 1406 ... Wireless mobile terminal,
1407 ... TV camera, 1408 ... Cable for cable TV, 1409 ... Set top box, 141
DESCRIPTION OF SYMBOLS 1 ... Image encoding device, 1412 ... Storage medium in which software information is recorded, 1413 ... Broadcasting station, 1414 ... Communication or broadcasting satellite, 1415 ... Home with satellite broadcasting receiving equipment, 1601 ... Motion estimator, 1602, 1701 ... Rounding Method determiner, 1604, 1605, 1702, 1
704 ... Information about rounding method, 1603, 170
3 ... Predictive image synthesizer.
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5C059 KK01 LB11 MA00 MA05 MA23 MC11 NN01 NN15 NN21 PP05 PP06 PP07 PP16 RB09 RC11 RC16 SS02 SS14 SS20 TA08 TB04 TC02 TC27 TC42 TD05 TD16 UA02 UA33 5J064 AA01 BA16 BB01 BB03 BB04 BC01 BC16 BC25 BD03 ─────────────────────────────────────────────────── ─── Continued front page F term (reference) 5C059 KK01 LB11 MA00 MA05 MA23 MC11 NN01 NN15 NN21 PP05 PP06 PP07 PP16 RB09 RC11 RC16 SS02 SS14 SS20 TA08 TB04 TC02 TC27 TC42 TD05 TD16 UA02 UA33 5J064 AA01 BA16 BB01 BB03 BB04 BC01 BC16 BC25 BD03
Claims (12)
して符号化する場合がある動画像の符号化方法であっ
て、入力画像と参照画像との間で動き推定を行い動きベ
クトルを検出し、前記動きベクトルと前記参照画像とを
用いて前記入力画像の予測画像の合成を行う段階と、前
記予測画像と前記入力画像との差分を求め誤差画像を得
る段階と、前記誤差画像に関する情報と前記動きベクト
ルに関する情報を前記入力画像の符号化情報に含めて出
力する段階とを有し、 前記予測画像の合成を行う段階は、前記参照画像で画素
の存在しない点の強度値を内挿演算で求める段階を含
み、 前記入力画像をPフレームとして符号化する場合とBフ
レームとして符号化する場合のうちPフレームとして符
号化する場合は、プラスの丸め込み或いはマイナスの丸
め込みのいずれかの丸め込み方法で前記内挿演算を行
い、該内挿演算に用いた丸め込み方法を特定する情報を
前記Pフレームの符号化情報に含めて出力し、Bフレー
ムとして符号化する場合は、プラスの丸め込み方法或い
はマイナスの丸め込み方法のうち予め固定された一方の
みによって前記内挿演算をすることを特徴とする動画像
の符号化方法。1. A method of encoding a moving image, wherein an input image may be encoded as a P frame or a B frame, wherein motion estimation is performed between an input image and a reference image to detect a motion vector, Combining a predicted image of the input image using a motion vector and the reference image, obtaining an error image by obtaining a difference between the predicted image and the input image, information on the error image, and the motion Outputting the information about the vector included in the coding information of the input image, and the step of synthesizing the predicted image obtains the intensity value of the point where the pixel does not exist in the reference image by the interpolation operation. Including rounding, if the input image is encoded as a P frame and if encoded as a P frame among B frames, a positive rounding or a minor In the case where the interpolation operation is performed by any one of the rounding methods of, the information specifying the rounding method used in the interpolation operation is included in the encoded information of the P frame and output, and encoded as a B frame. Is a moving picture coding method, wherein the interpolation operation is performed by only one of the positive rounding method and the negative rounding method, which is fixed in advance.
いて、前記丸め込み方法を特定する情報は前記Pフレー
ムの符号化情報のヘッダ部に含めて出力されることを特
徴とする請求項1記載の動画像の符号化方法。2. The moving image coding method according to claim 1, wherein the information specifying the rounding method is output by being included in the header portion of the coding information of the P frame. 1. The moving image coding method according to 1.
法において、 前記入力画像をBフレームとして符号化する場合は、プ
ラスの丸め込み方法のみによって前記内挿演算を行うこ
とを特徴とする動画像の符号化方法。3. The moving image coding method according to claim 1, wherein when the input image is coded as a B frame, the interpolation operation is performed only by a positive rounding method. Video coding method.
の符号化方法であって、 前記プラスの丸め込み方法は、前記参照画像中の、強度
Laを有する第1の画素と、前記第1の画素と水平方向に
隣接し強度Lbを有する第2の画素と、前記第1の画素と
垂直方向に隣接し強度Lcを有する第3の画素と、前記第
2の画素と垂直方向に隣接し、かつ前記第3の画素と水
平方向に隣接し強度Ldを有する第4の画素とから、画素
の存在しない前記第1の画素と前記第2の画素の中間点
における強度Ibと、前記第1の画素と前記第3の画素の
中間点における強度Icと、前記第1と第2と第3と第4
の画素とに囲まれ前記第1、第2、第3、および第4の画素
から等距離にある点における強度Idとを求める際に、 Ib=[(La+Lb+1)/2]、Ic=[(La+Lc+1)/2]、Id=[(La+Lb+Lc+
Ld+2)/4] を用いる丸め込み方法であり、 前記マイナスの丸め込み方法は、 Ib=[(La+Lb)/2]、Ic=[(La+Lc)/2]、Id=[(La+Lb+Lc+Ld+
1)/4] を用いる丸め込み方法であることを特徴とする動画像の
符号化方法。4. The moving image encoding method according to claim 1, wherein the positive rounding method is performed by calculating the intensity in the reference image.
A first pixel having La, a second pixel horizontally adjacent to the first pixel and having an intensity Lb, and a third pixel vertically adjacent to the first pixel and having an intensity Lc. , A fourth pixel vertically adjacent to the second pixel and horizontally adjacent to the third pixel and having an intensity Ld from the first pixel and the second pixel in which no pixel exists. The intensity Ib at the midpoint of the pixel, the intensity Ic at the midpoint of the first pixel and the third pixel, and the first, second, third, and fourth
Ib = [(La + Lb + 1) / 2], when obtaining the intensity Id at a point that is surrounded by the pixel and is equidistant from the first, second, third, and fourth pixels, Ic = [(La + Lc + 1) / 2], Id = [(La + Lb + Lc +
Ld + 2) / 4] is used for rounding, and the negative rounding method is Ib = [(La + Lb) / 2], Ic = [(La + Lc) / 2], Id = [(La + Lb + Lc + Ld +
1) / 4] is a rounding method using a moving image encoding method.
して符号化する場合がある動画像の符号化方法が記録さ
れたコンピュータ読みとり可能な記録媒体であって、参
照画像を第1のフレームメモリに蓄える段階と、入力画
像を第2のフレームメモリに蓄える段階と、前記第2の
フレームメモリに蓄えられた前記入力画像と前記第1の
フレームメモリに蓄えられた前記参照画像との間で動き
推定を行い動きベクトルを検出し、前記動きベクトルと
前記参照画像とを用いて前記入力画像の予測画像の合成
を行う段階と、前記予測画像と前記入力画像との差分を
求め誤差画像を得る段階と、前記誤差画像に関する情報
と前記動きベクトルに関する情報を前記入力画像の符号
化情報に含めて出力する段階とを有し、 前記予測画像の合成を行う段階は、前記参照画像で画素
の存在しない点の強度値を内挿演算で求める段階を含
み、 前記入力画像をPフレームとして符号化する場合とBフ
レームとして符号化する場合のうちPフレームとして符
号化する場合は、プラスの丸め込み或いはマイナスの丸
め込みのいずれかの丸め込み方法で前記内挿演算を行
い、該内挿演算に用いた丸め込み方法を特定する情報を
前記Pフレームの符号化情報に含めて出力し、Bフレー
ムとして符号化する場合は、プラスの丸め込み方法或い
はマイナスの丸め込み方法のうち予め固定された一方の
みによって前記内挿演算を行うことを特徴とする動画像
の符号化方法が記録されたコンピュータ読みとり可能な
記録媒体。5. A computer-readable recording medium in which an encoding method of a moving image that may encode an input image as a P frame or a B frame is recorded, and a reference image is stored in a first frame memory. A step of storing an input image in a second frame memory, a motion estimation between the input image stored in the second frame memory and the reference image stored in the first frame memory. Performing a motion vector detection, combining the predicted image of the input image using the motion vector and the reference image, and obtaining a difference image between the predicted image and the input image to obtain an error image, Including the information about the error image and the information about the motion vector included in the coding information of the input image and outputting, and the step of synthesizing the predicted image , A step of obtaining an intensity value of a point where a pixel does not exist in the reference image by an interpolation operation, and the input image is encoded as a P frame among the case of encoding as a P frame and the case of encoding as a B frame In this case, the interpolation operation is performed by any one of the positive rounding method and the negative rounding method, and the information specifying the rounding method used for the interpolation operation is included in the encoding information of the P frame and output. , B-frames are encoded, the interpolation operation is performed by only one of the positive rounding method and the negative rounding method which is fixed in advance. A readable recording medium.
録されたコンピュータ読みとり可能な記録媒体におい
て、 前記丸め込み方法を特定する情報は前記Pフレームの符
号化情報のヘッダ部に含めて出力されることを特徴とす
る動画像の符号化方法が記録されたコンピュータ読みと
り可能な記録媒体。6. A computer-readable recording medium in which the moving picture coding method according to claim 5 is recorded, wherein information for specifying the rounding method is included in a header portion of the coding information of the P frame. A computer-readable recording medium on which a moving image encoding method characterized by being output is recorded.
法が記録されたコンピュータ読みとり可能な記録媒体に
おいて、 前記入力画像をBフレームとして符号化する場合は、プ
ラスの丸め込み方法のみによって前記内挿演算を行うこ
とを特徴とする動画像の符号化方法が記録されたコンピ
ュータ読みとり可能な記録媒体。7. A computer-readable recording medium in which the moving image encoding method according to claim 5 or 6 is recorded, and when the input image is encoded as a B frame, only a plus rounding method is used. A computer-readable recording medium on which a moving image encoding method is recorded, which performs the interpolation calculation.
体において、 前記プラスの丸め込み方法は、前記参照画像中の、強度
Laを有する第1の画素と、前記第1の画素と水平方向に
隣接し強度Lbを有する第2の画素と、前記第1の画素と
垂直方向に隣接し強度Lcを有する第3の画素と、前記第
2の画素と垂直方向に隣接し、かつ前記第3の画素と水
平方向に隣接し強度Ldを有する第4の画素とから、画素
の存在しない前記第1の画素と前記第2の画素の中間点
における強度Ibと、前記第1の画素と前記第3の画素の
中間点における強度Icと、前記第1と第2と第3と第4
の画素とに囲まれ前記第1、第2、第3、および第4の画素
から等距離にある点における強度Idとを求める際に、 Ib=[(La+Lb+1)/2]、Ic=[(La+Lc+1)/2]、Id=[(La+Lb+Lc+
Ld+2)/4] を用いる丸め込み方法であり、 前記マイナスの丸め込み方法は、 Ib=[(La+Lb)/2]、Ic=[(La+Lc)/2]、Id=[(La+Lb+Lc+Ld+
1)/4] を用いる丸め込み方法であることを特徴とする動画像の
符号化方法が記録されたコンピュータ読みとり可能な記
録媒体。8. The recording medium according to any one of claims 5 to 7, wherein the positive rounding method is performed by using the intensity in the reference image.
A first pixel having La, a second pixel horizontally adjacent to the first pixel and having an intensity Lb, and a third pixel vertically adjacent to the first pixel and having an intensity Lc. , A fourth pixel vertically adjacent to the second pixel and horizontally adjacent to the third pixel and having an intensity Ld from the first pixel and the second pixel in which no pixel exists. The intensity Ib at the midpoint of the pixel, the intensity Ic at the midpoint of the first pixel and the third pixel, and the first, second, third, and fourth
Ib = [(La + Lb + 1) / 2], when obtaining the intensity Id at a point that is surrounded by the pixel and is equidistant from the first, second, third, and fourth pixels, Ic = [(La + Lc + 1) / 2], Id = [(La + Lb + Lc +
Ld + 2) / 4] is used for rounding, and the negative rounding method is Ib = [(La + Lb) / 2], Ic = [(La + Lc) / 2], Id = [(La + Lb + Lc + Ld +
1) / 4] is a rounding method using a computer-readable recording medium in which a moving image encoding method is recorded.
して符号化する場合がある動画像の符号化装置であっ
て、入力画像と参照画像との間で動き推定を行い動きベ
クトルの検出を行い、該動きベクトルと前記参照画像と
を用いて前記入力画像の予測画像の合成を行うブロック
マッチング部と、 前記予測画像と前記入力画像との差分をDCT変換して
DCT係数を得るDCT変換器と、 前記DCT係数を量子化して量子化DCT係数を得る量
子化器と、 前記量子化係数と前記動きベクトルに関する情報を多重
化する多重化器とを有し、 前記ブロックマッチング部は、前記Pフレームとして符
号化する場合は、予測画像の合成において前記参照画像
で画素の存在しない点の強度値の内挿演算に、プラスの
丸め込み或いはマイナスの丸め込みのいずれかの丸め込
み方法を用い、該内挿演算に用いた丸め込み方法を特定
する情報を生成して前記多重化器に出力し、前記Bフレ
ームとして符号化する場合は、前記内挿演算に、プラス
の丸め込み方法或いはマイナスの丸め込み方法のうち予
め固定された一方のみを用い、前記丸め込み方法を特定
する情報を生成せず、前記多重化器は、前記丸め込み方
法を特定する情報を前記Pフレームの量子化係数と前記
動きベクトルに関する情報とに多重化することを特徴と
する動画像の符号化装置。9. A moving image coding apparatus which may code an input image as a P frame or a B frame, wherein motion estimation is performed between the input image and a reference image, and a motion vector is detected. A block matching unit that synthesizes a predicted image of the input image using the motion vector and the reference image; a DCT converter that performs DCT conversion of a difference between the predicted image and the input image to obtain a DCT coefficient; The block matching unit includes a quantizer that quantizes the DCT coefficient to obtain a quantized DCT coefficient, and a multiplexer that multiplexes the quantized coefficient and information about the motion vector. In the case of encoding, a positive rounding or a negative rounding is performed in the interpolation calculation of the intensity value of the point where the pixel does not exist in the reference image in the synthesis of the predicted image. When any one of the rounding methods is used to generate information for specifying the rounding method used for the interpolation operation and output the information to the multiplexer for encoding as the B frame, the plus operation is added to the interpolation operation. Of the rounding method or the negative rounding method, only one of which is fixed in advance is used, and the multiplexer does not generate the information that specifies the rounding method. An encoding device for a moving image, wherein the encoding device and the information on the motion vector are multiplexed.
おいて、前記多重化器は、前記丸め込み方法を特定する
情報を前記Pフレームの前記量子化係数と前記動きベク
トルに関する情報を含む符号化情報のヘッダ部に多重化
することを特徴とする動画像の符号化装置。10. The moving picture coding apparatus according to claim 9, wherein the multiplexer includes information specifying the rounding method, the code including information on the quantized coefficient of the P frame and the motion vector. An encoding device for a moving image, which is multiplexed in a header portion of encoded information.
化装置において、 前記入力画像をBフレームとして符号化する場合は、前
記ブロックマッチング部は、予測画像の合成において前
記参照画像で画素の存在しない点の強度値の内挿演算
に、プラスの丸め込み方法のみを用いることを特徴とす
る動画像の符号化装置。11. The moving picture coding apparatus according to claim 9 or 10, wherein when the input image is coded as a B frame, the block matching unit uses pixels in the reference image in combining predicted images. An apparatus for encoding a moving image, characterized in that only a positive rounding method is used for the interpolation calculation of the intensity value of a point where no.
化装置において、 前記プラスの丸め込み方法は、前記参照画像中の、強度
Laを有する第1の画素と、前記第1の画素と水平方向に
隣接し強度Lbを有する第2の画素と、前記第1の画素と
垂直方向に隣接し強度Lcを有する第3の画素と、前記第
2の画素と垂直方向に隣接し、かつ前記第3の画素と水
平方向に隣接し強度Ldを有する第4の画素とから、画素
の存在しない前記第1の画素と前記第2の画素の中間点
における強度Ibと、前記第1の画素と前記第3の画素の
中間点における強度Icと、前記第1と第2と第3と第4
の画素とに囲まれ前記第1、第2、第3、および第4の画素
から等距離にある点における強度Idとを求める際に、 Ib=[(La+Lb+1)/2]、Ic=[(La+Lc+1)/2]、Id=[(La+Lb+Lc+
Ld+2)/4] を用いる丸め込み方法であり、 前記マイナスの丸め込み方法は、 Ib=[(La+Lb)/2]、Ic=[(La+Lc)/2]、Id=[(La+Lb+Lc+Ld+
1)/4] を用いる丸め込み方法であることを特徴とする動画像の
符号化装置。12. The encoding device according to claim 9, wherein the positive rounding method is performed by using the intensity of the reference image.
A first pixel having La, a second pixel horizontally adjacent to the first pixel and having an intensity Lb, and a third pixel vertically adjacent to the first pixel and having an intensity Lc. , A fourth pixel vertically adjacent to the second pixel and horizontally adjacent to the third pixel and having an intensity Ld from the first pixel and the second pixel in which no pixel exists. The intensity Ib at the midpoint of the pixel, the intensity Ic at the midpoint of the first pixel and the third pixel, and the first, second, third, and fourth
Ib = [(La + Lb + 1) / 2], when obtaining the intensity Id at a point that is surrounded by the pixel and is equidistant from the first, second, third, and fourth pixels, Ic = [(La + Lc + 1) / 2], Id = [(La + Lb + Lc +
Ld + 2) / 4] is used for rounding, and the negative rounding method is Ib = [(La + Lb) / 2], Ic = [(La + Lc) / 2], Id = [(La + Lb + Lc + Ld +
1) / 4] is a rounding method using a moving image encoding device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003007749A JP4078212B2 (en) | 1997-06-09 | 2003-01-16 | Encoding method of moving image, computer-readable recording medium on which encoding method is recorded, and encoding apparatus |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9-150656 | 1997-06-09 | ||
JP15065697 | 1997-06-09 | ||
JP2003007749A JP4078212B2 (en) | 1997-06-09 | 2003-01-16 | Encoding method of moving image, computer-readable recording medium on which encoding method is recorded, and encoding apparatus |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03097099A Division JP3410037B2 (en) | 1997-06-09 | 1999-02-09 | Decoding method, decoding device, and computer-readable recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003235046A true JP2003235046A (en) | 2003-08-22 |
JP4078212B2 JP4078212B2 (en) | 2008-04-23 |
Family
ID=27790272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003007749A Expired - Lifetime JP4078212B2 (en) | 1997-06-09 | 2003-01-16 | Encoding method of moving image, computer-readable recording medium on which encoding method is recorded, and encoding apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4078212B2 (en) |
-
2003
- 2003-01-16 JP JP2003007749A patent/JP4078212B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP4078212B2 (en) | 2008-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5713137B2 (en) | Predictive image generation method for moving images | |
JP2998741B2 (en) | Moving picture encoding method, computer-readable recording medium on which the method is recorded, and moving picture encoding apparatus | |
JP3407727B2 (en) | recoding media | |
JP3407726B2 (en) | Encoding method, encoding device, and computer-readable recording medium | |
JP3410037B2 (en) | Decoding method, decoding device, and computer-readable recording medium | |
JP4066817B2 (en) | Encoding method and decoding method of moving picture | |
JP3092614B2 (en) | Digital mobile terminal | |
JP4095762B2 (en) | Moving picture decoding method, decoding apparatus, and computer-readable recording medium on which the decoding method is recorded | |
JP4078212B2 (en) | Encoding method of moving image, computer-readable recording medium on which encoding method is recorded, and encoding apparatus | |
JP3092613B2 (en) | recoding media | |
JPH11317953A (en) | Moving picture encoding method and its device | |
JPH11317954A (en) | Moving picture encoding method and its device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A132 Effective date: 20050426 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050627 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050726 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050926 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050929 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20051021 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060427 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080204 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110208 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110208 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120208 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120208 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130208 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130208 Year of fee payment: 5 |
|
EXPY | Cancellation because of completion of term |