JP2998741B2 - Moving picture encoding method, computer-readable recording medium on which the method is recorded, and moving picture encoding apparatus - Google Patents
Moving picture encoding method, computer-readable recording medium on which the method is recorded, and moving picture encoding apparatusInfo
- Publication number
- JP2998741B2 JP2998741B2 JP16020598A JP16020598A JP2998741B2 JP 2998741 B2 JP2998741 B2 JP 2998741B2 JP 16020598 A JP16020598 A JP 16020598A JP 16020598 A JP16020598 A JP 16020598A JP 2998741 B2 JP2998741 B2 JP 2998741B2
- Authority
- JP
- Japan
- Prior art keywords
- frame
- image
- information
- rounding
- pixel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Color Television Systems (AREA)
- Studio Devices (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【0001】[0001]
【発明の属する技術分野】本発明は、フレーム間予測を
行い、輝度または色の強度が量子化された数値として表
される動画像符号化および復号化方法、ならびに動画像
の符号化装置および復号化装置に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a moving picture coding and decoding method in which inter-frame prediction is performed and luminance or color intensity is expressed as a quantized numerical value, and a moving picture coding apparatus and decoding. The present invention relates to a gasifier.
【0002】[0002]
【従来の技術】動画像の高能率符号化において、時間的
に近接するフレーム間の類似性を活用するフレーム間予
測(動き補償)は情報圧縮に大きな効果を示すことが知
られている。現在の画像符号化技術の主流となっている
動き補償方式は、動画像符号化方式の国際標準である
H.263、MPEG1、MPEG2に採用されている
半画素精度のブロックマッチングである。この方式で
は、符号化しようとする画像を多数のブロックに分割
し、ブロックごとにその動きベクトルを水平・垂直方向
に隣接画素間距離の半分の長さを最小単位として求め
る。2. Description of the Related Art In highly efficient coding of moving images, it is known that inter-frame prediction (motion compensation) utilizing similarity between temporally adjacent frames has a great effect on information compression. The motion compensation system which is the mainstream of the current image coding technology is H.264, which is an international standard of the moving image coding system. 263, half-pixel precision block matching adopted in MPEG1 and MPEG2. In this method, an image to be encoded is divided into a large number of blocks, and a motion vector is obtained for each block in the horizontal and vertical directions using a half length of a distance between adjacent pixels as a minimum unit.
【0003】この処理を数式を用いて表現すると以下の
ようになる。符号化しようとするフレーム(現フレーム
)の予測画像Pの座標(x, y)におけるサンプル値
(輝度または色差の強度のサンプル値)をP(x, y)、
参照画像R(Pと時間的に近接しており、既に符号化が
完了しているフレームの復号画像)の座標(x, y)にお
けるサンプル値をR(x, y)とする。また、xとyは整
数であるとして、PとRでは座標値が整数である点に画
素が存在すると仮定する。また、画素のサンプル値は負
ではない整数として量子化されているとする。このと
き、PとRの関係は、[0005] This processing is expressed as follows using mathematical expressions. A sample value (sample value of intensity of luminance or color difference) at a coordinate (x, y) of a predicted image P of a frame to be coded (current frame) is represented by P (x, y),
A sample value at the coordinates (x, y) of the reference image R (a decoded image of a frame which is temporally close to P and has already been encoded) is defined as R (x, y). Further, it is assumed that x and y are integers, and that a pixel exists at a point where the coordinate value is an integer in P and R. It is also assumed that the pixel sample values are quantized as non-negative integers. At this time, the relationship between P and R is
【0004】[0004]
【数1】 (Equation 1)
【0005】で表される。ただし、画像はN個のブロッ
クに分割されるとして、Biは画像のi番目のブロック
に含まれる画素、(ui, vi)はi番目のブロックの動き
ベクトルを表している。[0005] Here, 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 a point where no pixel actually exists in the reference image. In this case, bilinear 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,
Assuming that q <d, R (x + p / d, y + q / d) is
【0007】[0007]
【数2】 (Equation 2)
【0008】で表される。ただし「//」は除算の一種
で、通常の除算(実数演算による除算)の結果を近隣の
整数に丸め込むことを特徴としている。## EQU1 ## However, "//" is a type of division, which is characterized by rounding the result of normal division (division by real number operation) to a nearby integer.
【0009】図1にH.263の符号化器の構成例10
0を示す。H.263は、符号化方式として、ブロック
マッチングとDCT(離散コサイン変換)を組み合わせ
たハイブリッド符号化方式(フレーム間/フレーム内適
応符号化方式)を採用している。FIG. Configuration Example 10 of Encoder of H.263
Indicates 0. H. H.263 adopts a hybrid coding method (inter-frame / intra-frame adaptive coding method) combining block matching and DCT (discrete cosine transform) as a coding method.
【0010】減算器102は入力画像(現フレームの原
画像)101とフレーム間/フレーム内符号化切り換え
スイッチ119の出力画像113(後述)との差を計算
し、誤差画像103を出力する。この誤差画像は、DC
T変換器104でDCT係数に変換された後に量子化器
105で量子化され、量子化DCT係数106となる。
この量子化DCT計数は伝送情報として通信路に出力さ
れると同時に、符号化器内でもフレーム間予測画像を合
成するために使用される。A subtractor 102 calculates a difference between an input image (original image of the current frame) 101 and an output image 113 (described later) of an inter-frame / intra-frame coding changeover switch 119, and outputs an error image 103. This error image is DC
After being converted into DCT coefficients by the T transformer 104, they are quantized by the quantizer 105 to become quantized DCT coefficients 106.
The quantized DCT count is output to the communication path as transmission information, and is also used in the encoder to synthesize an inter-frame predicted image.
【0011】以下に予測画像合成の手順を説明する。上
述の量子化DCT係数106は、逆量子化器108と逆
DCT変換器109を経て復号誤差画像110(受信側
で再生される誤差画像と同じ画像)となる。これに、加
算器111においてフレーム間/フレーム内符号化切り
換えスイッチ119の出力画像113(後述)が加えら
れ、現フレームの復号画像112(受信側で再生される
現フレームの復号画像と同じ画像)を得る。この画像は
一旦フレームメモリ114に蓄えられ、1フレーム分の
時間だけ遅延される。したがって、現時点では、フレー
ムメモリ114は前フレームの復号画像115を出力し
ている。この前フレームの復号画像と現フレームの入力
画像101がブロックマッチング部116に入力され、
ブロックマッチングの処理が行われる。The procedure for synthesizing a predicted image will be described below. The above-described quantized DCT coefficient 106 passes through an inverse quantizer 108 and an inverse DCT transformer 109 to become a decoded error image 110 (the same image as the error image reproduced on the receiving side). The output image 113 (described later) of the inter-frame / intra-frame coding changeover switch 119 is added to the adder 111, and the decoded image 112 of the current frame (the same image as the decoded image of the current frame reproduced on the receiving side) is added. Get. This image is temporarily stored in the frame memory 114 and is delayed by a time corresponding to one frame. Therefore, at present, the frame memory 114 outputs 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 most similar to the original image of the current frame is extracted from the decoded image of the previous frame for each block, whereby the predicted image 117 of the current frame is synthesized. You.
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 processing 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係数、動きベクトル、フレーム内
/フレーム間識別フラグの情報を多重化することによっ
て得られる。The receiving side can independently synthesize the same predicted image as that obtained on the transmitting side from the motion vector information and the decoded image of the previous frame. Predicted image 117
Is input to the inter-frame / intra-frame coding switch 119 together with the “0” signal 118. This switch switches between inter-frame coding and intra-frame coding by selecting one of the two inputs. When the predicted image 117 is selected (FIG. 2 shows this case), inter-frame encoding is performed. On the other hand, "0"
If a signal is selected, the input image is
Since the encoded data is 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 to know whether inter-frame coding or intra-frame coding has been performed on the transmitting side. 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 by 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 configuration of a decoder 200 for receiving an encoded bit stream output from the encoder of FIG. The received H. The 263 bit stream 217 is separated into a quantized DCT coefficient 201, motion vector information 202, and an intra-frame / inter-frame identification flag 203 by a separator 216. The quantized DCT coefficient 201 is calculated by the inverse quantizer 20.
4 and an error image 206 decoded through the inverse DCT transformer 205. This error image is added to the output image 215 of the inter-frame / intra-frame encoding changeover switch 214 by the adder 207 and output as a decoded image 208. The interframe / intraframe coding changeover switch switches the output according to the interframe / intraframe coding identification flag 203. A predicted image 212 used for performing inter-frame encoding is synthesized by a predicted image synthesis unit 211. Here, a process of moving the position for each block in accordance with 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ではマクロブロックと呼ばれるブロックを単位として
符号化・復号化の処理が行われる。Problems to be Solved by the Invention The image encoded by 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, if the image has 2 m pixels in the horizontal direction and 2 n pixels in the vertical direction (m and n are positive integers), the Y plane has 2 m pixels in the horizontal direction and 2 n pixels in the vertical direction. , U and V planes are characterized by having m pixels in the horizontal direction and n pixels in the straight line direction. The reason why the resolution of the color difference plane is low is that human vision is characterized by being relatively insensitive to spatial changes in color difference. When such an image is used as an input, 26
In No. 3, encoding / decoding processing is performed in units of blocks called macroblocks.
【0016】図3にマクロブロックの構成を示す。マク
ロブロックはYブロック、Uブロック、Vブロックの3
個のブロックで構成され、輝度値情報を持つYブロック
301の大きさは16×16画素、色差情報をもつUブ
ロック302およびVブロック303の大きさは8×8
画素となっている。FIG. 3 shows the structure of a macroblock. Macro blocks are Y block, U block, and V block.
The Y block 301 having the luminance value information has a size of 16 × 16 pixels, and the U block 302 and the V block 303 having the color difference information have a size of 8 × 8.
Pixel.
【0017】H.263では、各マクロブロックに対し
て半画素精度のブロックマッチングが適用される。した
がって、推定された動きベクトルを(u, v)とすると、
uとvはそれぞれ画素間距離の半分、つまり1/2を最
小単位として求められることになる。このときの強度値
(以下では、「輝度値」と色差の強度値を総称して「強
度値」と呼ぶ)の内挿処理の様子を図4に示す。H.2
63では、数2の内挿を行う際に、除算の結果は最も近
い整数に丸め込まれ、かつ除算の結果が整数に0.5を加
えた値となるときには、これを0から遠ざける方向に切
り上げる処理が行われる。H. At 263, block matching with half-pixel accuracy is applied to each macroblock. Therefore, assuming that the estimated motion vector is (u, v),
u and v are each obtained using half of the distance between pixels, that is, 1/2 as the minimum unit. FIG. 4 shows a state of the interpolation processing of the intensity values (hereinafter, the “luminance value” and the intensity value of the color difference are collectively referred to as “intensity value”) at this time. H. 2
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 is a value obtained by adding 0.5 to the integer, a process of rounding up the value away from 0 is performed. Done.
【0018】つまり、図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.
The intensity values of 2, 403 and 404 are La, Lb and L, respectively.
Assuming that c and Ld (La, Lb, Lc and Ld are non-negative integers), positions 405 and 40 at which the intensity values are to be obtained by interpolation.
The intensity values Ia, Ib, Ic, Id of 6, 407, 408 are (I
a, Ib, Ic, and Id are non-negative integers), and are represented by the following formulas.
【0019】[0019]
【数3】 (Equation 3)
【0020】ただし、「[ ]」は小数部分を切り捨てる
処理を表している。However, “[]” represents a process of truncating the decimal part.
【0021】このとき、除算の結果を整数値に丸め込む
処理によって発生する誤差の期待値を計算することを考
える。内挿により強度値を求めたい位置が、図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 a process of rounding the result of the division to an integer value. The probability that the position at which the intensity value is to be obtained by interpolation is the position 405, 406, 407, or 408 in FIG. At this time, the error in obtaining the intensity value Ia at the position 405 is clearly zero. In addition, the error in finding the intensity value Ib at the position 406 is 0 when La + Lb is an even number, and is 1/2 when La + Lb is an odd number because rounding is performed. Assuming that both the probability that La + Lb becomes an even number and the probability that La + Lb becomes an odd number are 2, the expected value of the error is 0 · 1/2 +
・ · == 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 calculating 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/2,
If the probabilities that become 1/4 and the excess becomes 0 to 3 are assumed to be equal probabilities, the expected value of the error is 0 · 1 / 4−1 / 4 ·
1 / + / 1/2 ・ +1/4 ・ 1 / = 1/8. As described above, if the probabilities that the intensity values at the positions 405 to 408 are calculated are equal probabilities, the expected value of the final error is 0 · 1 / ++ 1 · ・ · + 1 + /.
1/4 + 1/8 1/4 = 5/32. this is,
This means that every time motion compensation is performed by one block matching, a 5/32 error occurs in the pixel intensity value.
【0022】一般的に低レート符号化の場合には、フレ
ーム間予測誤差を符号化するためのビット数を十分に確
保することができないため、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, and thus the quantization step size of the DCT coefficient tends to increase. . 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 without performing the intra-frame coding, the above-described error may accumulate, which may have a bad influence such as a reddish reproduction image.
【0023】上で説明した通り、色差プレーンの画素数
は縦方向、横方向共に画素数が半分となっている。した
がって、UブロックとVブロックに対しては、Yブロッ
クの動きベクトルの水平・垂直成分をそれぞれ2で割っ
た値が使用される。このとき、もとのYブロックの動き
ベクトルの水平・垂直成分であるuとvが1/2の整数
倍の値であるため、通常の割り算を実行した場合には、
動きベクトルは1/4の整数倍の値が出現することにな
る。しかし、座標値が1/4の整数倍をとるときの強度
値の内挿演算が複雑となるため、H.263ではUブロ
ックとVブロックの動きベクトルも半画素精度に丸め込
まれる。このときの丸め込みの方法は以下の通りであ
る。As described above, the number of pixels in the color difference plane is reduced by half in both the vertical and horizontal directions. Accordingly, 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 the horizontal and vertical components u and v of the motion vector of the original Y block are values that are integral multiples of 1 /, when normal division is performed,
As the motion vector, a value that is an integral multiple of 1/4 will appear. However, since the interpolation of the intensity value when the coordinate value is an integral multiple of 1/4 becomes complicated, H.264 / H. In 263, the motion vectors of the U block and the V block are also rounded to half-pixel accuracy. The rounding method at this time is as follows.
【0024】いま、u/2=r+s/4であるとする。
このとき、rとsは整数であり、さらにsは0以上3以
下の値をとるとする。sが0または2のときはu/2は
1/2の整数倍であるため、丸め込みを行う必要がな
い。しかし、sが1または3のときは、これを2に丸め
込む操作が行われる。これは、sが2となる確率を高く
することにより、強度値の内挿が行われる回数を増や
し、動き補償処理にフィルタリングの作用を持たせるた
めである。Now, it is assumed that u / 2 = r + s / 4.
At this time, r and s are integers, and s takes a value of 0 or more and 3 or less. When s is 0 or 2, since u / 2 is an integral multiple of 1/2, there is no need to perform rounding. However, when s is 1 or 3, an 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.
【0025】丸め込みが行われる前のsの値が0〜3の
値をとる確率をそれぞれ1/4とした場合、丸め込みが
終わったあとにsが0、2となる確率はそれぞれ1/4
と3/4となる。以上は動きベクトルの水平成分uに関
する議論であったが、垂直成分であるvに関しても全く
同じ議論が適用できる。If the probability that the value of s before the rounding takes a value of 0 to 3 is 1/4, the probability that s becomes 0 or 2 after the rounding is 1/4, respectively.
And 3/4. The above is the discussion about the horizontal component u of the motion vector, but the same discussion can be applied to the vertical component v.
【0026】したがって、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
The probability that the intensity value at the position of 4/4 ・ = 1/16, 402 and 403 is obtained is 11 / 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. Using this, the expected value of the error in the intensity value is calculated by the same method as above, and
6 + / · 3/16 + / · 3/16 + / · 8.9
/ 16 = 21/128, which causes a problem of accumulation of errors when intra-frame encoding is continued as in the case of the Y block described above.
【0027】フレーム間予測を行い、輝度または色の強
度が量子化された数値として表される動画像符号化およ
び復号化方法では、フレーム間予測において輝度または
色の強度を量子化する際の誤差が蓄積する場合がある。
本発明の目的は、上記誤差の蓄積を防ぐことにより、再
生画像の画質を向上させることにある。According to the moving picture coding and decoding method in which the inter-frame prediction is performed and the luminance or color intensity is expressed as a quantized numerical value, an error in quantizing the luminance or color intensity in the inter-frame prediction is obtained. May accumulate.
An object of the present invention is to improve the image quality of a reproduced image by preventing the accumulation of the error.
【0028】[0028]
【課題を解決するための手段】誤差の発生を抑えるか、
発生した誤差を打ち消す操作を行うことにより、誤差の
蓄積を防ぐ。[MEANS FOR SOLVING THE PROBLEMS]
By performing an operation to cancel the generated error, accumulation of the error is prevented.
【0029】[0029]
【発明の実施の形態】まず、「従来の技術」で述べた丸
め込み誤差の蓄積がどのような場合に発生するかについ
て考える。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS First, consideration will be given to the case where accumulation of rounding errors described in "Prior Art" occurs.
【0030】図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 and H.264. 26
3 shows an example of a moving image encoded by an encoding method capable of performing both bidirectional prediction and unidirectional prediction such as No. 3. The image 501 is a frame encoded by intra-frame encoding, 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 inter-frame encoding using the immediately preceding I or P frame as a reference image. Therefore, for example, when encoding the image 505, the image 503
Is performed as a reference image. Image 50
2, 504, 506, and 508 are called B frames, and bidirectional inter-frame prediction using the immediately preceding and succeeding I or P frames is performed. The B frame also has a feature that another frame is not used as a reference image when performing inter-frame prediction.
【0031】まず、Iフレームでは動き補償が行われな
いため、動き補償が原因となる丸め込み誤差は発生しな
い。これに対し、Pフレームでは動き補償が行われる上
に、他のPまたはBフレームの参照画像としても使用さ
れるため、丸め込み誤差の蓄積を引き起こす原因とな
る。一方、Bフレームは動き補償は行われるために丸め
込み誤差の蓄積の影響は現れるが、参照画像としては使
用されないために丸め込み誤差の蓄積の原因とはならな
い。このことから、Pフレームにおける丸め込み誤差の
蓄積を防げば、動画像全体で丸め込み誤差の悪影響を緩
和することができる。なお、H.263ではPフレーム
とBフレームをまとめて符号化するPBフレームと呼ば
れるフレームが存在するが(例えばフレーム503と5
04をPBフレームとしてまとめて符号化することがで
きる)、組み合わされた2枚のフレームを別々の物とし
て考えれば、上と同じ議論を適用することができる。つ
まり、PBフレームの中でPフレームに相当する部分に
対して丸め込み誤差への対策を施せば、誤差の蓄積を防
ぐことができる。First, since the motion compensation is not performed in the I frame, no rounding error due to the motion compensation occurs. On the other hand, in the P frame, motion compensation is performed, and the P frame is used as a reference image of another P or B frame, which causes accumulation of a rounding error. On the other hand, although the effect of accumulation of rounding errors appears in the B frame because motion compensation is performed, it does not cause accumulation of rounding errors because it is not used as a reference image. For this reason, by preventing accumulation of rounding errors in the P frame, it is possible to mitigate the adverse effects of the rounding errors 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 collectively encoded as a PB frame), and the same discussion can be applied if the combined two frames are considered as separate objects. In other words, if measures are taken against rounding errors in a portion corresponding to the P frame in the PB frame, accumulation of errors can be prevented.
【0032】丸め込み誤差は、強度値の内挿を行う際
に、通常の除算(演算結果が実数になる除算)の結果と
して整数値に0.5を加えた値が出るような場合に、これ
を0から遠ざける方向に切り上げているために発生して
いる。例えば内挿された強度値を求めるために4で割る
操作を行うような場合、あまりが1である場合と3であ
る場合は発生する誤差の絶対値が等しくかつ符号が逆に
なるため、誤差の期待値を計算する際に互いに打ち消し
合う働きをする(より一般的には、正の整数d’で割る
場合には、あまりがtである場合とd’−tである場合
が打ち消し合う)。しかし、あまりが2である場合、つ
まり通常の除算の結果が整数に0.5を加えた値が出る場
合には、これを打ち消すことができず、誤差の蓄積につ
ながる。The rounding error is set to 0 if the value obtained by adding 0.5 to an integer value as a result of normal division (division in which the operation result is a real number) is obtained when performing interpolation of the intensity value. This is caused by rounding up in the direction away from. For example, when an operation of dividing by 4 is performed to obtain an interpolated intensity value, if the value is too small and if the value is 3, the absolute values of the generated errors are equal and the signs are opposite. Work to cancel each other out when calculating the expected value of (the more general case, when divided by a positive integer d ', the case where too much t and the case where d'-t cancels out) . However, if the number is too large, that is, if the result of the ordinary division is a value obtained by adding 0.5 to an integer, this cannot be canceled, leading to accumulation of errors.
【0033】そこで、このように通常の除算の結果、整
数に0.5を加えた値が出た際にに切り上げを行う丸め込
み方法と切り捨てを行う丸め込み方法の両者を選択可能
とし、これらをうまく組み合わせることより、発生した
誤差を打ち消すことを考える。以下では、通常の除算の
結果を最も近い整数に丸め込み、かつ整数に0.5を加え
た値は0から遠ざける方向に切り上げる丸め込み方法を
「プラスの丸め込み」と呼ぶ。また、通常の除算の結果
を最も近い整数に丸め込み、かつ整数に0.5を加えた値
は0に近づける方向に切り捨てる丸め込み方法を「マイ
ナスの丸め込み」と呼ぶこととする。数3は、半画素精
度のブロックマッチングにおいてプラスの丸め込みを行
う場合の処理を示しているが、マイナスの丸め込みを行
う場合には、これは以下のように書き換えることができ
る。Therefore, as a result of the ordinary division, when a value obtained by adding 0.5 to an integer comes out, both a rounding method for rounding up and a rounding method for rounding down can be selected, and these can be combined well. It is considered that the generated error is canceled. Hereinafter, a method of rounding the result of normal division to the nearest integer and rounding up the value obtained by adding 0.5 to an integer away from 0 is referred to as “plus rounding”. A rounding method of rounding the result of normal division to the nearest integer and rounding off a value obtained by adding 0.5 to an integer close to 0 is referred to as “minus rounding”. Equation 3 shows the processing in the case where plus rounding is performed in block matching with half-pixel accuracy. However, in the case where negative rounding is performed, this can be rewritten as follows.
【0034】[0034]
【数4】 (Equation 4)
【0035】いま、予測画像の合成における強度値の内
挿の際ににプラスの丸め込みを行う動き補償を、プラス
の丸め込みを用いる動き補償、マイナスの丸め込みを行
う動き補償をマイナスの丸め込みを用いる動き補償とす
る。また、半画素精度のブロックマッチングを行い、か
つプラスの丸め込みを用いる動き補償が適用されるPフ
レームをP+フレーム、逆にマイナスの丸め込みを用い
る動き補償が適用されるPフレームをP−フレームと呼
ぶことする(この場合、H.263のPフレームはすべ
てP+フレームということになる)。P−フレームにお
ける丸め込み誤差の期待値は、P+フレームのそれと絶
対値が等しく、符号が逆となる。したがって、時間軸に
対し、P+フレームとP−フレームが交互に現れるよう
にすれば、丸め込み誤差の蓄積を防ぐことができる。Now, motion compensation for performing plus rounding at the time of interpolation of intensity values in the synthesis of a predicted image is performed using motion compensation using plus rounding, and motion compensation performing minus rounding is performed using negative rounding. Compensation. Also, a P frame to which block matching with half-pixel accuracy is performed and to which motion compensation using plus rounding is applied is called a P + frame, and a P frame to which motion compensation using minus rounding is applied is called a P-frame. (In this case, all H.263 P frames 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 has the opposite sign. Therefore, if the P + frame and the P- frame alternately appear on the time axis, accumulation of rounding errors can be prevented.
【0036】図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 shown in FIG. 5, this processing can be realized if the frames 503 and 507 are P + frames and the frames 505 and 509 are P-frames. Also, P
+ Frame and P- frame alternately occur in B
This means that when performing bidirectional prediction in a frame, one P + frame and one P-frame are used as reference images one by one. Generally, in a B frame, a predicted image in the forward direction (for example, a predicted image synthesized using the frame 503 as a reference image when encoding the frame 504 in FIG. 5) and a predicted image in the reverse direction (for example, the frame in FIG. 5) 5
When encoding 04, the average of the predicted image synthesized using the frame 505 as a reference image can often be used as the predicted image. Therefore, here the P + frame and P
-Averaging images synthesized from frames is effective in canceling the effect of errors.
【0037】なお、上で述べた通り、Bフレームにおけ
る丸め込み処理は誤差の蓄積の原因とはならない。した
がって、すべてのBフレームに対して同じ丸め込み方法
を適用しても問題は発生しない。例えば、図5のBフレ
ーム502、504、506、508のすべてが正の丸
め込みに基づく動き補償を行ったとしても、特に画質の
劣化の原因とはならない。Bフレームの復号化処理を簡
略化する意味では、Bフレームに関しては1種類の丸め
込み方法のみを用いることが望ましい。As described above, the rounding process in the B frame does not cause accumulation of errors. Therefore, no problem occurs even if the same rounding method is applied to all B frames. For example, even if all of the B frames 502, 504, 506, and 508 in FIG. 5 perform motion compensation based on positive rounding, this does not cause any particular deterioration in image quality. In order to simplify the decoding process of the B frame, it is desirable to use only one type of rounding method for the B frame.
【0038】図16に、上で述べた複数の丸め込み方法
に対応した画像符号化器のブロックマッチング部160
0の例を示す。他の図と同じ番号は、同じものを指して
いる。図1のブロックマッチング部116を1600に
入れ換えることにより、複数の丸め込み方法に対応する
ことができる。動き推定器1601において、入力画像
101と前フレームの復号画像112との間で動き推定
の処理が行われる。この結果、動き情報120が出力さ
れる。この動き情報は、予測画像合成器1603におい
て予測画像を合成する際に利用される。FIG. 16 shows a block matching unit 160 of an image encoder corresponding to the above-described plurality of rounding methods.
An example of 0 is shown. Like numbers in other figures refer to like parts. By replacing the block matching unit 116 in FIG. 1 with 1600, a plurality of rounding methods can be supported. In the motion estimator 1601, motion estimation processing is performed 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.
【0039】丸め込み方法決定器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 coded is positive rounding or negative rounding. Information 1604 about 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 specified by 1604. The block matching unit 116 in FIG.
There is no portion corresponding to 2, 1604, and the predicted image is synthesized only by positive rounding. Also, the rounding method 1605 determined from the block matching unit is output,
This information may be further multiplexed and incorporated into a transmission bit stream for transmission.
【0040】図17に、複数の丸め込み方法に対応した
画像復号化器の予測画像合成部1700の例を示す。他
の図と同じ番号は、同じものを指している。図2の予測
画像合成部211を1700に入れ換えることにより、
複数の丸め込み方法に対応することが可能となる。丸め
込み方法決定器1701では、復号化を行う際の予測画
像合成処理に適用される丸め込み方法が決定される。FIG. 17 shows an example of a predicted image synthesizing section 1700 of an image decoder corresponding to a plurality of rounding methods. Like numbers in other figures refer to like parts. By replacing the predicted image synthesis unit 211 of FIG.
It is possible to support a plurality of rounding methods. The rounding method determiner 1701 determines a rounding method to be applied to a predicted image synthesis process when decoding.
【0041】なお、正しい復号化を行うためには、ここ
で決定される丸め込み方法は、符号化の際に適用された
丸め込み方法と同じものでなければならない。例えば、
最後に符号化された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-numbered 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. 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 on the rounding method determined in this way, the decoded image 210 of the previous frame, and the motion information 202. The predicted image 212 is output and used for synthesizing the decoded image.
【0042】なお、ビットストリーム内に丸め込み方法
に関する情報が組み込まれる場合(図16の符号化器
で、丸め込み方法に関する情報1605が出力されるよ
うな場合)も考えることができる。この場合、丸め込み
方法決定器1701は使用されず、符号化ビットストリ
ームから抽出された丸め込み方法に関する情報1704
が予測画像合成器1703に入力される。A case where information about the rounding method is incorporated into the bit stream (a case where information about the rounding method 1605 is output by the encoder in FIG. 16) can be considered. In this case, the rounding method determiner 1701 is not used, and information 1704 on the rounding method extracted from the coded bit stream is used.
Is input to the prediction image synthesizer 1703.
【0043】本発明は、図1、2に示されている従来型
の専用回路・専用チップを用いる画像符号化装置、画像
復号化装置の他に、汎用プロセッサを用いるソフトウェ
ア画像符号化装置、ソフトウェア画像復号化装置にも適
用することができる。図6と7にこのソフトウェア画像
符号化装置600とソフトウェア画像復号化装置700
の例を示す。ソフトウェア符号化器600では、まず入
力画像601は入力フレームメモリ602に蓄えられ、
汎用プロセッサ603はここから情報を読み込んで符号
化の処理を行う。この汎用プロセッサを駆動するための
プログラムはハードディスクやフロッピーディスクなど
による蓄積デバイス608から読み出されてプログラム
用メモリ604に蓄えられる。また、汎用プロセッサは
処理用メモリ605を活用して符号化の処理を行う。汎
用プロセッサが出力する符号化情報は一旦出力バッファ
606に蓄えられた後に符号化ビットストリーム607
として出力される。According to the present invention, in addition to the conventional image coding apparatus and image decoding apparatus using the dedicated circuits and dedicated chips shown in FIGS. 1 and 2, a software image coding apparatus using a general-purpose processor and software The present invention can also be applied to an image decoding device. 6 and 7 show the software image encoding device 600 and the software image decoding device 700.
Here is an example. In the software encoder 600, first, the input image 601 is stored in the input frame memory 602,
The general-purpose processor 603 reads the information from here and performs an encoding process. A program for driving the general-purpose processor is read from a storage device 608 such as a hard disk or a floppy disk and stored in the program memory 604. In addition, the general-purpose processor performs the encoding process using the processing memory 605. The encoded information output from the general-purpose processor is temporarily stored in an output buffer 606 and then encoded bit stream 607.
Is output as
【0044】図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) operating on the software encoder shown in FIG. First, the process starts at 801, and 0 is substituted for a variable N at 802. Subsequently, when the value of N is 100 in 803 and 804, 0 is substituted. N is a frame number counter, which is incremented by one every time processing of one frame is completed, and is allowed to take a value of 0 to 99 when encoding is performed. When the value of N is 0, the frame being encoded is an I frame, when it is odd, 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 I frame is encoded after 99 P frames (P + or P− frame) are encoded.
【0045】このように、何枚かのフレームの中に必ず
1枚Iフレームを入れることにより、(a)符号化器と
復号化器の処理の不一致(例えば、DCTの演算結果の
不一致)による誤差の蓄積を防止する、(b)符号化デ
ータから任意のフレームの再生画像を得る処理(ランダ
ムアクセス)の処理量を減少させる、などの効果を得る
ことができる。Nの最適な値は符号化器の性能や符号化
器が使用される環境により変化する。この例では100
という値を使用したが、これはNの値が必ず100でな
ければならいことを意味しているわけではない。As described above, by always including one I frame in several frames, (a) due to a mismatch between the processing of the encoder and the decoder (for example, a mismatch of the calculation result of the DCT) It is possible to obtain effects such as preventing accumulation of errors and (b) reducing the amount of processing (random access) for obtaining a reproduced image of an arbitrary frame from encoded data. The optimal value of N varies depending on the performance of the encoder and the environment in which the encoder is used. In this example, 100
, But this does not mean that the value of N must be 100.
【0046】フレームごとの符号化モード、丸め込み方
法を決定する処理は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−フレームとなる。Processing for determining the encoding mode and rounding method for each frame is performed in 805. FIG. 9 shows an example of a flowchart showing details of the processing. First, 90
At 1, it is determined whether or not N is 0. If it is 0, 'I' is output to the output buffer as identification information of the prediction mode at 902, and the frame on which the encoding process is to be performed is an 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 prediction mode identification information. If N is not 0, it is further determined 904 whether N is odd or even. 90 if N is odd
In step 5, "+" is output as identification information of the rounding method,
The frame to be subjected to the encoding process is a P + frame. On the other hand, if N is an even number, “−” is output as identification information of the rounding method in 906, and the frame on which the encoding process is to be performed is a P-frame.
【0047】再び図8に戻る。805で符号化モードを
決定した後、806で入力画像はフレームメモリAに蓄
えられる。なお、ここで述べたフレームメモリAとは、
ソフトウェア符号化器のメモリ領域(例えば、図6の6
05のメモリ内にこのメモリ領域が確保される)の一部
を意味している。807では、現在符号化中のフレーム
がIフレームであるか否かが判定される。そして、Iフ
レームではない場合には808で動き推定・動き補償処
理が行われる。Returning to FIG. After determining the encoding mode at 805, the input image is stored in the frame memory A at 806. Note that the frame memory A described here is:
The memory area of the software encoder (for example, 6 in FIG. 6)
05 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, a motion estimation / motion compensation process is performed at 808.
【0048】この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 the details of the processing in 808. First, at 1001, frame memories A and B (as written at the end of this paragraph,
A motion estimation process is performed for each block between the images stored in the frame memory B (the decoded image of the previous frame is stored), and a motion vector of each block is obtained. Is output to Subsequently, at 1002, it is determined whether or not the current frame is a P + frame. When the current frame is a P + frame, a predicted image is synthesized by using positive rounding at 1003, and the predicted image is stored in the frame memory C. On the other hand, if the current frame is a P-frame, a predicted image is synthesized using negative rounding at 1004, and the predicted image is stored in the frame memory C. In step 1005, a difference image between the frame memories A and C is obtained, and the difference image is stored in the frame memory A.
【0049】ここで再び図8に戻る。809における処
理が開始される直前、フレームメモリAには、現フレー
ムがIフレームである場合には入力画像が、現フレーム
がPフレーム(P+またはP−フレーム)である場合に
は入力画像と予測画像の差分画像が蓄えられている。8
09では、このフレームメモリAに蓄えられた画像に対
してDCTが適用され、ここで計算されたDCT係数は
量子化された後に出力バッファに出力される。そしてさ
らに810で、この量子化DCT係数には逆量子化さ
れ、逆DCTが適用され、この結果得られた画像はフレ
ームメモリBに格納される。続いて811では、再び現
フレームがIフレームであるか否かが判定され、Iフレ
ームではない場合には812でフレームメモリBとCの
画像が加算され、この結果がフレームメモリBに格納さ
れる。ここで、1フレーム分の符号化処理が終了するこ
とになる。Here, returning to FIG. Immediately before the start of the processing in 809, the frame memory A stores an input image when the current frame is an I frame and an input image when the current frame is a P frame (P + or P− frame). A difference image of the image is stored. 8
At 09, DCT is applied to the image stored in the frame memory A, and the DCT coefficient calculated here is quantized and output to the output buffer. Then, at 810, the quantized DCT coefficients are inversely quantized, inverse DCT is applied, and the resulting image is stored in frame memory B. Subsequently, in step 811, it is determined again whether or not the current frame is an I frame. If the current frame is not an I frame, the images in the frame memories B and C are added in step 812, and the result is stored in the frame memory B. . Here, the encoding process for one frame is completed.
【0050】そして、813の処理が行われる直前にフ
レームメモリBに格納されている画像は、符号化処理が
終了したばかりのフレームの再生画像(復号側で得られ
るものと同じ)である。813では、符号化が終了した
フレームが最後のフレームであるか否かが判定され、最
後のフレームであれば、符号化処理が終了する。最後の
フレームではない場合には、814でNに1が加算さ
れ、再び803に戻って次のフレームの符号化処理が開
始される。The image stored in the frame memory B immediately before the processing of 813 is performed is a reproduced image of the frame whose encoding processing has just been completed (the same as that obtained on the decoding side). At 813, it is determined whether or not the frame for which encoding has been completed is the last frame. If it is the last frame, the encoding process ends. If it is not the last frame, 1 is added to N in 814, and the process returns to 803 again to start the encoding process of the next frame.
【0051】図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 an input buffer 702 and then stored in a general-purpose processor 7.
03 is read. The general-purpose processor performs a decoding process by utilizing a program memory 704 for storing a program read from a storage device 708 such as a hard disk or a floppy disk, and a processing memory 705. The decoded image obtained as a result is temporarily stored in an output frame memory 706 and then output as an output image 707.
【0052】図7に示したソフトウェア復号化器上で動
作する復号化ソフトウェアのフローチャートの例を図1
1に示す。1101で処理が開始され、まず1102で
入力情報があるか否かが判定される。ここで入力情報が
無ければ1103で復号化の処理を終了する。入力情報
がある場合には、まず、1104で符号化識別情報が入
力される。なお、この「入力される」とは、入力バッフ
ァ(例えば、図7の702)に蓄えられた情報を読み込
むことを意味している。1105では、読み込んだ符号
化モード識別情報が’I’であるか否かが判定される。
そして、’I’ではない場合には、1106で丸め込み
方法の識別情報が入力され、続いて1107で動き補償
処理が行われる。FIG. 1 shows an example of a flowchart of the decoding software operating on the software decoder shown in FIG.
It is shown in FIG. The process starts at 1101 and first determines at 1102 whether or not there is input information. If there is no input information, the decoding process ends at 1103. If there is input information, first, at 1104, encoded identification information is input. Note that “input” means reading information stored in an input buffer (for example, 702 in FIG. 7). In 1105, it is determined whether or not the read encoding mode identification information is “I”.
If it is not "I", the identification information of the rounding method is input in 1106, and then the motion compensation processing is performed in 1107.
【0053】この1107で行われる処理の詳細を表し
たフローチャートの例を図12に示す。まず、1201
でブロックごとの動きベクトル情報が入力される。そし
て、1202で1106で読み込まれた丸め込み方法の
識別情報が’+’であるか否かが判定される。これが’
+’である場合には、現在復号化中のフレームがP+フ
レームである。このとき1203で正の丸め込みにより
予測画像が合成され、この予測画像はフレームメモリD
に格納される。FIG. 12 shows an example of a flowchart showing details of the processing performed in step 1107. First, 1201
Inputs the motion vector information for each block. Then, it is determined in step 1202 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 at 1203 by positive rounding, and the predicted image is stored in the frame memory D
Is stored in
【0054】なお、ここで述べたフレームメモリDと
は、ソフトウェア復号化器のメモリ領域(例えば、図7
の705のメモリ内にこのメモリ領域が確保される)の
一部を意味している。一方、丸め込み方法の識別情報
が’+’ではない場合には、現在復号化中のフレームが
P−フレームであり、1204で負の丸め込みにより予
測画像が合成され、この予測画像はフレームメモリDに
格納される。このとき、もし何らかの誤りにより、P+
フレームがP−フレームとして復号化されたり、逆にP
−フレームがP+フレームとして復号化された場合に
は、符号化器が意図したものとは異なる予測画像が復号
化器において合成されることになり、正しい復号化が行
われずに画質が劣化する。The frame memory D described here is a memory area of the software decoder (for example, FIG.
(This memory area is secured in the memory 705). On the other hand, if the identification information of the rounding method is not '+', the frame currently being decoded is a P-frame, and a predicted image is synthesized by negative rounding at 1204, and the predicted image is stored in the frame memory D. Is stored. At this time, if some error occurs, P +
The frame is decoded as a P-frame or vice versa
If the − frame is decoded as a P + frame, a predicted image different from the one intended by the encoder will be synthesized in the decoder, and the image quality will be degraded without correct decoding.
【0055】ここで図11に戻る。1108では量子化
DCT係数が入力され、これに逆量子化、逆DCTを適
用して得られた画像がフレームメモリEに格納される。
1109では、再び現在復号化中のフレームがIフレー
ムであるか否かが判定される。そして、Iフレームでは
ない場合には、1110でフレームメモリDとEに格納
された画像が加算され、この結果の画像がフレームメモ
リEに格納される。1111の処理を行う直前にフレー
ムメモリEに格納されている画像が、再生画像となる。
1111では、このフレームメモリEに格納された画像
が出力フレームメモリ(例えば、図7の706)に出力
され、そのまま出力画像として復号化器から出力され
る。こうして1フレーム分の復号化処理が終了し、処理
は再び1102に戻る。Returning to FIG. In step 1108, a quantized DCT coefficient is input, and an image obtained by applying inverse quantization and inverse DCT thereto is stored in the frame memory E.
At 1109, it is determined again whether the frame currently being decoded is an I frame. If it is not an 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 performing the processing of 1111 is a reproduced image.
At 1111, the image stored in the frame memory E is output to an output frame memory (for example, 706 in FIG. 7), and output as it is from the decoder as an output image. Thus, the decoding process for one frame is completed, and the process returns to 1102 again.
【0056】図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 program based on the flowcharts shown in FIGS. 8 to 12, when a device using a dedicated circuit and a dedicated chip is used. The same effect as described above can be obtained.
【0057】図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 shown in FIG.
Storage media recording a bit stream generated by performing the processing shown in the flowcharts of 10 to 10
FIG. 13 shows an example of (recording medium). Digital information is recorded concentrically on a recording disk (eg, magnetic, optical disk, etc.) 1301 on which digital information can be recorded. When a part 1302 of the digital information recorded on this disc is taken out, the encoding mode identification information 1303, 1305, 1 of the encoded frame is obtained.
308, 1311, 1314, identification information 1306, 1309, 1312, 1315 of the rounding method, information 1304, 1307, 131 such as motion vectors and DCT coefficients
0, 1313, and 1316 are recorded. 8 to 10
According to the method shown in FIG.
5, 1308, 1311, 1314 have 'P', 130
6, 1312 is' + ', 1309, 1315 is'
Information meaning-'will be recorded. In this case, for example, 'I' and '+' are 1-bit 0, 'P' and '
If-'is represented by 1 of one bit, the decoder can correctly interpret the recorded information and obtain a reproduced image.
By storing the encoded bit stream in the storage medium in this manner, it is possible to prevent the occurrence of accumulation of rounding errors when the bit stream is read and decoded.
【0058】図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 on which an encoded bit stream relating to an image sequence including the P + frame, P-frame and B frame shown in FIG. 5 is recorded. As with 1301 in FIG. 13, a recording disk (eg, magnetic, optical disk, etc.) 1501 on which digital information can be recorded has digital information recorded concentrically. When a part 1502 of the digital information recorded on this disc is taken out, the encoding mode identification information 1503, 1505, 15 of the encoded frame is obtained.
08, 1510, 1513, identification information 1 of rounding method
Information 506, 1512, and information 1504, 1507, 1509, 1511, and 1514 such as motion vectors and DCT coefficients are recorded.
【0059】このとき、1503には’I’、150
5、1510には’P’、1508、1513には’
B’、1505には’+’、1511には’−’を意味
する情報が記録されている。例えば’I’、’P’、’
B’をそれぞれ2ビットの00、01、10、’+’
と’−’はそれぞれ1ビットの0と1で表せば、復号化
器は正しく記録された情報を解釈し、再生画像を得るこ
とが可能となる。At this time, “I”, 150
'P' for 5 and 1510, and '1' for 1508 and 1513
B 'and 1505 record information meaning' + 'and 1511 record information meaning'-'. For example, 'I', 'P', '
B ′ is 2 bits 00, 01, 10, and “+”
If "-" and "-" are represented by 1-bit 0 and 1, respectively, the decoder can correctly interpret the recorded information and obtain a reproduced image.
【0060】このとき図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 on 501 (I frame) in FIG. 5 is 1503, 1504, and 502 (B frame).
Information about 1508 and 1509, frame 503
(P + frame) information is 1505-1507,
Information about frame 504 (B frame) is 1513
1515 and information about the frame 505 (P-frame) are 1510 to 1512. As described above, in the case of encoding a moving image including a B frame, the order in which information on frames is generally transmitted is different from the order in which information is reproduced.
This is because before decoding a certain B frame, it is necessary to decode the reference images before and after the B frame is used for synthesizing the predicted image. Therefore, although the frame 502 is reproduced before the frame 503, the information on the frame 503 used by the frame 502 as the reference image is transmitted before the information on the frame 502.
【0061】上述の通り、Bフレームは丸め込み誤差の
蓄積を引き起こす要員とはならないため、Pフレームの
ように複数の丸め込み方法を適用する必要はない。この
ため、ここに示した例では、Bフレームに関してはは丸
め込み方法を指定する’+’や’−’のような情報は伝
送されていない。こうすることにより、例えばBフレー
ムに関しては常に正の丸め込みのみが適用されるように
したとしても、誤差の蓄積の問題は発生しない。このよ
うにして、蓄積メディアにBフレームに関する情報を含
む符号化ビットストリームを蓄積することにより、この
ビットストリームを読み出して復号化した場合に丸め込
み誤差の蓄積が発生することを防ぐことができる。As described above, since the B frame is not a person causing accumulation of rounding errors, it is not necessary to apply a plurality of rounding methods as in the case of the P frame. For this reason, in the example shown here, information such as '+' or '-' for specifying the rounding method is not transmitted for the B frame. By doing so, for example, even if only positive rounding is always applied to the B frame, the problem of accumulation of errors does not occur. In this way, by storing the encoded bit stream including the information on the B frame in the storage medium, it is possible to prevent the occurrence of accumulation of rounding errors when the bit stream is read and decoded.
【0062】図14に、本明細書で示したP+フレーム
とP−フレームが混在する符号化方法に基づく符号化・
復号化装置の具体例を示す。パソコン1401に画像符
号化・復号化用のソフトウェアを組み込むことにより、
画像符号化・復号化装置として活用することが可能であ
る。このソフトウェアはコンピュータ読み取り可能な記
録媒体である何らかの蓄積メディア(CD−ROM、フ
ロッピーディスク、ハードディスクなど)1412に記
録されており、これをパソコンが読み込んで使用する。
また、さらに何らかの通信回線にこのパソコンを接続す
ることにより、映像通信端末として活用することも可能
となる。FIG. 14 shows an encoding method based on an encoding method in which a P + frame and a P-frame are mixed as shown in this specification.
A specific example of the decoding device will be described. By incorporating image encoding / decoding software into the personal computer 1401,
It can be used as an image encoding / decoding device. This software is recorded on a storage medium (CD-ROM, floppy disk, hard disk, etc.) 1412 which is a computer-readable recording medium, and is read and used by a personal computer.
Further, by connecting this personal computer to some kind of communication line, it can be used as a video communication terminal.
【0063】記録媒体である蓄積メディア1402に記
録した符号化ビットストリームを読み取り、復号化する
再生装置1403にも本明細書に示した復号化方法を実
装することが可能である。この場合、再生された映像信
号はテレビモニタ1404に表示される。また、140
3の装置は符号化ビットストリームを読み取るだけであ
り、テレビモニタ1404内に復号化装置が組み込まれ
ている場合も考えられる。The decoding method described in this specification can be implemented in a reproducing apparatus 1403 which reads and decodes an encoded bit stream recorded on a 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 No. 3 only reads the coded bit stream, and a case where a decoding device is incorporated in the television monitor 1404 is also conceivable.
【0064】最近は衛星、地上波によるディジタル放送
が話題となっているが、ディジタル放送用のテレビ受信
機1405にも復号化装置を組み込むことができる。Recently, digital broadcasting using satellites and terrestrial waves has become a hot topic, but a decoding device can also be incorporated in a television receiver 1405 for digital broadcasting.
【0065】また、ケーブルテレビ用のケーブル140
8または衛星/地上波放送のアンテナに接続されたセッ
トトップボックス1409内に復号化装置を実装し、こ
れをテレビモニタ1410で再生する構成も考えられ
る。このときも1404の場合と同様に、セットトップ
ボックスではなく、テレビモニタ内に符号化装置を組み
込んでも良い。In addition, a cable 140 for a cable television
8 or a set-top box 1409 connected to a satellite / terrestrial broadcasting antenna, and a decoding device is mounted on the TV monitor 1410 to reproduce the decoding device. 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.
【0066】1413、1414、1415は、ディジ
タル衛星放送システムの構成例を示したものである。放
送局1413では映像情報の符号化ビットストリームが
電波を介して通信または放送衛星1414に伝送され
る。これを受けた衛星は、放送用の電波を発信し、この
電波を衛星放送受信設備をもつ家庭1415が受信し、
テレビ受信機またはセットトップボックスなどの装置に
より符号化ビットストリームを復号化してこれを再生す
る。Reference numerals 1413, 1414, and 1415 show configuration examples of the digital satellite broadcasting system. In the broadcast station 1413, the encoded bit stream of the video information is transmitted to a communication or broadcast satellite 1414 via radio waves. The satellite receiving the signal transmits a radio wave for broadcasting, and the radio wave is received by the home 1415 having the satellite broadcasting receiving equipment.
The encoded bit stream is decoded by a device such as a television receiver or a set-top box and reproduced.
【0067】低い伝送レートでの符号化が可能となった
ことにより、最近はディジタル携帯端末1406による
ディジタル動画像通信も注目されるようになっている。
ディジタル携帯端末の場合、符号器・復号化器を両方持
つ送受信型の端末の他に、符号化器のみの送信端末、復
号化器のみの受信端末の3通りの実装形式が考えられ
る。With the possibility of encoding at a low transmission rate, digital video communication by the digital portable terminal 1406 has recently attracted attention.
In the case of a digital portable terminal, in addition to a transmission / reception type terminal having both an encoder and a decoder, three types of mounting formats are considered: a transmission terminal having only an encoder and a reception terminal having only a decoder.
【0068】動画像撮影用のカメラ1407の中に符号
化装置を組み込むことも可能である。この場合撮影用カ
メラは符号化装置と該符号化装置からの出力を記録媒体
に記録する記録装置とを持ち、符号化装置から出力され
た符号化ビットストリームを記録媒体に記録する。ま
た、カメラは映像信号を取り込むのみであり、これを専
用の符号化装置1411に組み込む構成も考えられる。It is also possible to incorporate an encoding device into a camera 1407 for capturing a moving image. 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 the video signal is incorporated in the dedicated encoding device 1411 is also conceivable.
【0069】この図に示したいずれの装置・システムに
関しても、本明細書に示した方法を実装することによ
り、従来の技術を活用した場合と比較して、より画質の
高い画像情報を扱うことが可能となる。For any of the apparatuses and systems shown in this figure, by implementing the method shown in this specification, it is possible to handle image information with higher image quality as compared with the case where the conventional technology is utilized. Becomes possible.
【0070】なお、以下の変形も本発明に含まれること
は明らかである。It is apparent that the following modifications are also included in the present invention.
【0071】(1)上の議論では、動き補償方式として
ブロックマッチングが使用されることが前提となってい
た。しかし、本発明は動きベクトルの水平・垂直成分が
水平・垂直方向の画素のサンプリング間隔の整数倍以外
値をとることができ、サンプル値の存在しない位置にお
ける強度値を共1次内挿によって求める動き補償方式を
採用する画像符号化方式および画像復号化方式すべてに
対して適用することができる。たとえば特願平08-06057
2に記載されているグローバル動き補償や、特願平08-24
9601に記載されているワーピング予測に対しても、本発
明は適用可能である。(1) In the above discussion, it was assumed that block matching was used as a motion compensation method. However, according to the present invention, the horizontal and vertical components of the motion vector can take values other than an integral multiple of the sampling interval of the pixels in the horizontal and vertical directions, and the intensity value at a position where no sample value exists is obtained by linear interpolation. The present invention can be applied to all image coding systems and image decoding systems that employ the motion compensation system. 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.
【0072】(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 and vertical components of the motion vector take integral multiples of 1/2 has been discussed. However, generalizing the discussion,
The present invention is applicable to a system in which the horizontal and vertical components of the 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 (the square of d, see Equation 2) in the division of the next interpolation becomes large, the probability that the result of the ordinary division becomes a value obtained by adding 0.5 to an integer becomes relatively low. Therefore, the absolute value of the expected value of the rounding error calculation when only the positive rounding is performed becomes small, and the adverse effect due to the accumulation of errors becomes less noticeable. Therefore, for example, in a motion compensation method in which the value of d is variable, if d is smaller than a certain value, both positive rounding and negative rounding are used, and if d is equal to or more than the above fixed value, It is also effective to use only plus or minus rounding.
【0073】(3)従来の技術で述べた通り、DCTを
誤差符号化方式として利用した場合、丸め込み誤差の蓄
積による悪影響はDCT係数の量子化ステップサイズが
大きい場合に現れやすい。そこで、DCT係数の量子化
ステップサイズがある一定値より大きい場合にはプラス
の丸め込みとマイナスの丸め込みの両方を使用し、DC
T係数の量子化ステップサイズが上記一定値以下の場合
にはプラスまたはマイナスの丸め込みのみを用いるとい
う方法も有効である。(3) As described in the background art, when DCT is used as an error encoding method, an adverse effect due to accumulation of rounding errors tends to appear when the quantization step size of DCT coefficients is large. Therefore, when the quantization step size of the DCT coefficient is larger than a certain value, both the positive rounding and the negative rounding are used, and the DCT coefficient is used.
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.
【0074】(4)輝度プレーンで丸め込み誤差の蓄積
が起こった場合と色差プレーンで丸め込み誤差の蓄積が
起こった場合では、一般的に色差プレーンで発生した場
合の方が再生画像に与える影響が深刻である。これは、
画像が全体的にわずかに明るくなったり暗くなったりす
ることよりも、画像の色が全体的に変化した場合の方が
目立ちやすいためである。そこで、色差信号に対しては
プラスの丸め込みとマイナスの丸め込みの両方を使用
し、輝度信号に対してはプラスまたはマイナスの丸め込
みのみを用いるという方法も有効である。(4) In the case where the accumulation of the rounding error occurs in the luminance plane and the case where the accumulation of the rounding error occurs in the chrominance plane, the influence on the reproduced image is generally more serious when it occurs in the chrominance plane. It is. this is,
This is because, when the color of the image changes overall, the image is more noticeable than when the image becomes slightly brighter or darker as a whole. Therefore, it is also effective to use both the positive rounding and the negative rounding for the color difference signal, and use only the positive or negative rounding for the luminance signal.
【0075】また、従来の技術で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, in the conventional technique, H. 1 in 263
Although the method for rounding a motion vector with a precision of / 4 pixel to a motion vector with a precision of 1/2 pixel has been described, it is possible to reduce the absolute value of the expected value of the rounding error by slightly modifying this method. It is. The H.264 described in the prior art. 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 (r is an integer and s is an integer of 0 or more and less than 4), when s is 1 or 3, an operation of rounding this to 2 is performed. This may be changed so that when s is 1, this is set to 0, and when s is 3, 1 is added to r to perform rounding to make s 0. By doing so, the number of times of calculating the intensity values at the positions 406 to 408 in FIG. 4 relatively decreases (the probability that the horizontal and vertical components of the motion vector become integers increases). Becomes smaller. However, although this method can suppress the magnitude of the generated error, it cannot prevent the accumulation of the error.
【0076】(5)Pフレームに対して、2種類の動き
補償方式によるフレーム間予測画像の平均を最終的なフ
レーム間予測画像とする方式がある。例えば特願平8-36
16では、縦横16画素のブロックに対して一個の動きベ
クトルを割り当てるブロックマッチングと、縦横16画
素のブロックを4個の縦横8画素のブロックに分割し
て、それぞれに対して動きベクトルを割り当てるブロッ
クマッチングの2種類の方法によって得た2種類のフレ
ーム間予測画像を用意し、これらのフレーム間予測画像
の強度値の平均を求めたものを最終的なフレーム間予測
画像とする方法が述べられている。この方法において2
種類の画像の平均値を求める際にも丸め込みが行われ
る。この平均化の操作でプラスの丸め込みのみを行い続
けると、新たな丸め込み誤差の蓄積の原因を作ることに
なる。この方式では、ブロックマッチングにおいてプラ
スの丸め込みを行うP+フレームに対しては、平均化の
操作ではマイナスの丸め込みを行い、P−フレームに対
しては平均化の操作ではプラスの丸め込みを行うように
すれば、同一フレーム内でブロックマッチングによる丸
め込み誤差と平均化による丸め込み誤差が打ち消し合う
効果を得ることができる。(5) There is a method in which an average of inter-frame predicted images by two types of motion compensation methods is used as a final inter-frame predicted image for a P frame. For example, Japanese Patent Application 8-36
In block 16, block matching assigns one motion vector to a block of 16 pixels in length and width, and block matching divides a block of 16 pixels in length and width into 4 blocks of 8 pixels in width and assigns a motion vector to each block. A method is described in which two types of inter-frame predicted images obtained by the two types of methods are prepared, and an average of the intensity values of these inter-frame predicted images is obtained as a final inter-frame predicted image. . In this method 2
Rounding is also performed when calculating the average value of the types of images. Continuing to perform only positive rounding in this averaging operation creates a new cause of accumulation of rounding errors. In this method, a negative rounding is performed in the averaging operation for a P + frame that performs a positive rounding in block matching, and a positive rounding is performed in the averaging operation for a P− frame. For example, the rounding error due to block matching and the rounding error due to averaging can be canceled within the same frame.
【0077】(6)P+フレームとP−フレームを交互
に配置する方法を用いた場合、符号化装置と復号化装置
は現在符号化しているPフレームがP+フレームである
P−フレームであるかを判定するために、例えば以下の
処理を行なうことが考えられる。現在符号化または復号
化しているPフレームが、最も最近に符号化または復号
化されたIフレームの後の何番目のPフレームであるか
を数え、これが奇数であるときにはP+フレーム、偶数
であるときはP−フレームとすれば良い(これを暗示的
方法と呼ぶ)。また、符号化装置側が現在符号化してい
るPフレームがP+フレームであるか、P−フレームで
あるかを識別する情報を、例えばフレーム情報のヘッダ
部分に書き込むという方法もある(これを明示的方法と
呼ぶ)。この方法の方が、伝送誤りに対する耐性は強
い。(6) When a method of alternately arranging P + frames and P-frames is used, the encoding device and the decoding device determine whether the P frame currently encoded is a P-frame that is a P + frame. In order to determine, for example, the following processing may be performed. Count the number of the P-frame currently being encoded or decoded after the most recently encoded or decoded I-frame; if this is odd, then P + frame; if it is even, May be a P-frame (this is called an implicit method). Also, there is a method of writing information identifying whether the P frame currently encoded by the encoding device is a P + frame or a P- frame, for example, in a header portion of frame information (this is an explicit method). ). This method is more resistant to transmission errors.
【0078】また、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 into the header of the frame information has the following advantages. As described in “Prior Art”, past encoding standards (eg, MPEG-1 and MPEG-1)
In -2), only positive rounding is performed in the P frame. Thus, for example, M
A motion estimation / motion compensation device for PEG-1 / 2 (for example,
The portion corresponding to 106 in FIG. 1) is a P + frame and a P− frame.
It is impossible to cope with encoding in which frames are mixed. Now, it is assumed that there is a decoder that supports encoding in which P + frames and P− frames coexist. In this case, if the decoder is based on the above implicit method,
It is difficult to use a motion estimation / motion compensation device for MPEG-1 / 2 to create an encoder that generates a bit stream that can be correctly decoded by a decoder based on this implicit method.
【0079】しかし、復号化器が上記明示的方法に基づ
くものである場合には、この問題を解決することができ
る。MPEG−1/2用の動き推定・動き補償装置を使
用した符号化器は、常にP+フレームを送り続け、これ
を示す識別情報をフレーム情報のヘッダに書き込み続け
れば良い。こうすれば、明示的方法に基づく復号化器
は、この符号化器が生成したビットストリームを正しく
再生することができる。However, if the decoder is based on the explicit method described above, this problem can be solved. An encoder using a motion estimation / motion compensation device for MPEG-1 / 2 only needs to continuously send a P + frame and write identification information indicating this in a header of the frame information. In this way, the decoder based on the explicit method can correctly reproduce the bit stream generated by the encoder.
【0080】もちろん、この場合にはP+フレームのみ
が存在するため、丸め込み誤差の蓄積は発生しやすくな
る。しかし、この符号化器がDCT係数の量子化ステッ
プサイズとして小さい値のみを用いるもの(高レート符
号化専用の符号化器)であるような場合には、誤差の蓄
積は大きな問題とはならない。Of course, in this case, since only the P + frame exists, accumulation of rounding errors is likely to occur. However, if this encoder uses only a small value as the quantization step size of the DCT coefficient (an encoder dedicated to high-rate encoding), accumulation of errors does not become a major problem.
【0081】この過去の方式との互換性の問題以外に
も、明示的方法にはさらに、(a)高レート符号化専用
の符号化器や、頻繁にIフレームを挿入することにより
丸め込み誤差が発生しにくい符号化器は、正か負のどち
らかの丸め込み方法のみを実装すれば良く、装置のコス
トを抑えることができる、(b)上記の丸め込み誤差が
発生しにくい符号化器は、P+またはP−フレームのど
ちらか一方のみを送り続ければ良いため、現在符号化を
行っているフレームをP+フレームとするか、P−フレ
ームとするかの判定を行う必要がなく、処理を簡略化で
きる、といった長所がある。In addition to the compatibility problem with the past method, the explicit method further includes (a) an encoder dedicated to high-rate encoding and a rounding error caused by frequently inserting I frames. An encoder that is unlikely to generate only has to implement either the positive or negative rounding method, and can reduce the cost of the device. (B) The encoder that does not easily generate the rounding error is P + Alternatively, since only one of the P-frames needs to be continuously transmitted, it is not necessary to determine whether the frame currently being encoded is a P + frame or a P-frame, thereby simplifying the processing. There are advantages such as.
【0082】(7)本発明は、フレーム間予測画像に対
し、丸め込み処理を伴うフィルタリングを行う場合にも
適用することができる。例えば、動画像符号化の国際標
準であるH.261では、フレーム間予測画像において
動きベクトルが0ではなかったブロック内の信号に対し
ては、低域通過型フィルタ(これをループフィルタと呼
ぶ)が適用される。また、H.263では、ブロックの
境界部に発生する不連続(いわゆるブロック歪み)を平
滑化するためのフィルタを使用することができる。これ
らのフィルタでは、画素の強度値に対して重み付け平均
化の処理が行われ、フィルタリング後の強度値に対して
整数への丸め込みの操作が行われる。ここでもプラスの
丸め込みとマイナスの丸め込みを使い分けることによ
り、誤差の蓄積を防ぐことが可能である。(7) The present invention can also be applied to a case where filtering involving rounding processing is performed on an inter-frame prediction image. For example, H.264, which is an international standard for video coding, is used. In 261, a low-pass filter (referred to as a loop filter) is applied to a signal in a block whose motion vector is not 0 in the inter-frame prediction image. H. In 263, it is possible to use a filter for smoothing discontinuities (so-called block distortion) occurring at the boundary between blocks. In these filters, a weighted averaging process is performed on the pixel intensity values, and an operation of rounding to an integer is performed on the filtered intensity values. Also in this case, it is possible to prevent accumulation of errors by using positive rounding and negative rounding properly.
【0083】(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. For example, a random number generator that generates 0 and 1 with a probability of 1/2, respectively, may be used. In any case, generally, the more the P + and P- frames are mixed and the difference between the respective existence probabilities within a certain period of time is smaller, the less the accumulation of rounding errors occurs. When the encoder is allowed to mix arbitrary P + frames and P-frames, the encoder and the decoder are not based on the implicit method shown in (6) but are explicitly described. Must be based on strategic methods. Thus, the explicit method is advantageous in terms of allowing more flexible implementations for the encoder and decoder.
【0084】(9)本発明は、画素の存在しない点の強
度値を求める方法を共1次内挿に限定するものではな
い。強度値の内挿方法は一般化すると、以下の式のよう
に表すことができる。(9) The present invention does not limit the method of obtaining the intensity value at a point where no pixel exists to bilinear interpolation. When the interpolation method of the intensity value is generalized, it can be expressed as the following equation.
【0085】[0085]
【数5】 (Equation 5)
【0086】ここで、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 function of a real number for interpolation, T (z) is a function of rounding a real number z to an integer, and R (x, y), The definitions of x and y are the same as Equation 4. If T (z) is a function representing plus rounding, motion compensation using plus rounding is performed, and if T (z) is a function representing minus rounding, motion compensation using minus rounding is performed. The present invention can be applied to an interpolation method that can be expressed in the form of Expression 5. For example, h (r, s)
【0087】[0087]
【数6】 (Equation 6)
【0088】のように定義すれば共1次内挿が行われ
る。しかし、例えばh(r,s)をIf the definition is made as follows, bilinear interpolation is performed. However, for example, h (r, s)
【0089】[0089]
【数7】 (Equation 7)
【0090】のように定義すれば、共1次内挿とは異な
る内挿方法が実施されるが、この場合も本発明を適用す
ることは可能である。With the definition as described above, an interpolation method different from the bilinear interpolation is carried out, but in this case, the present invention can be applied.
【0091】(10)本発明は、誤差画像の符号化方法
をDCTに限定するものではない、例えば、DCTでは
なく、ウェーブレット変換(例えば、M. Antonioni, e
t. al,"Image Coding Using Wavelet Transform", IEEE
Trans. Image Processing, vol. 1, no.2, April 199
2)や、ウォルシューアダマール変換(Walsh-Hadamard
Transform)(例えば、A. N. Netravalli and B. G. Ha
skell, "Digital Pictures", Plenum Press, 1998)を
使用した場合でも本発明は適用可能である。(10) The present invention does not limit the encoding method of the error image to DCT. For example, instead of DCT, wavelet transform (for example, M. Antonioni, e.
t. al, "Image Coding Using Wavelet Transform", IEEE
Trans. Image Processing, vol. 1, no.2, April 199
2) and Walsh-Hadamard transformation
Transform) (eg, AN Netravalli and BG Ha
skell, "Digital Pictures", Plenum Press, 1998).
【0092】[0092]
【発明の効果】本発明により、フレーム間予測画像にお
ける丸め込み誤差の蓄積を抑えることが可能となり、再
生画像の画質を向上させることが可能となる。According to the present invention, accumulation of rounding errors in an inter-frame prediction image can be suppressed, and the image quality of a reproduced image can be improved.
【図1】H.263の画像符号化器の構成例を示した図
である。FIG. FIG. 263 is a diagram illustrating a configuration example of an image encoder of H.263.
【図2】H.263の画像復号化器の構成例を示した図
である。FIG. FIG. 263 is a diagram illustrating a configuration example of an image decoder of H.263.
【図3】H.263におけるマクロブロックの構成を示
した図である。FIG. FIG. 263 is a diagram illustrating a configuration of a macroblock in H.263.
【図4】半画素成度のブロックマッチングにおける輝度
値の内挿処理の様子を示した図である。FIG. 4 is a diagram showing a state of an interpolation process of a luminance value in block matching of half-pixel components.
【図5】符号化された画像系列の様子を示した図であ
る。FIG. 5 is a diagram showing a state of an encoded image sequence.
【図6】ソフトウェア画像符号化装置の構成例を示した
図である。FIG. 6 is a diagram illustrating a configuration example of a software image encoding device.
【図7】ソフトウェア画像復号化装置の構成例を示した
図である。FIG. 7 is a diagram illustrating a configuration example of a software image decoding device.
【図8】ソフトウェア画像符号化装置における処理のフ
ローチャートの例を示した図である。FIG. 8 is a diagram illustrating an example of a flowchart of a process in the software image encoding device.
【図9】ソフトウェア画像符号化装置における符号化モ
ード決定処理のフローチャートの例を示した図である。FIG. 9 is a diagram illustrating an example of a flowchart of a coding mode determination process in the software image coding device.
【図10】ソフトウェア画像符号化装置における動き推
定・動き補償処理のフローチャートの例を示した図であ
る。FIG. 10 is a diagram illustrating an example of a flowchart of a motion estimation / motion compensation process in the software image encoding device.
【図11】ソフトウェア画像復号化装置における処理の
フローチャートの例を示した図である。FIG. 11 is a diagram illustrating an example of a flowchart of a process in the software image decoding device.
【図12】ソフトウェア画像復号化装置における動き補
償処理のフローチャートの例を示した図である。FIG. 12 is a diagram illustrating an example of a flowchart of a motion compensation process in the software image decoding device.
【図13】IフレームとP+フレームとP−フレームを
混在させる符号化方法により符号化されたビットストリ
ームを記録した蓄積メディアの例を示した図である。FIG. 13 is a diagram illustrating an example of a storage medium in which a bit stream encoded by an encoding method that mixes an I frame, a P + frame, and a P− frame is recorded.
【図14】P+フレームとP−フレームを混在させる符
号化方法を使用する装置の具体例を示した図である。FIG. 14 is a diagram illustrating a specific example of an apparatus that uses an encoding method that mixes P + frames and P− frames.
【図15】IフレームとBフレームとP+フレームとP
−フレームを混在させる符号化方法により符号化された
ビットストリームを記録した蓄積メディアの例を示した
図である。FIG. 15 shows an I frame, a B frame, a P + frame and a P frame.
FIG. 2 is a diagram illustrating an example of a storage medium that records a bit stream encoded by an encoding method that mixes frames.
【図16】P+フレームとP−フレームを混在させる符
号化方法を使用する装置に含まれるブロックマッチング
部の例を示した図である。FIG. 16 is a diagram illustrating an example of a block matching unit included in an apparatus that uses an encoding method that mixes P + frames and P− frames.
【図17】P+フレームとP−フレームを混在させる符
号化方法により符号化されたビットストリームを復号化
する装置に含まれる予測画像合成部の例を示した図であ
る。FIG. 17 is a diagram illustrating an example of a predicted image combining unit included in a device that decodes a bit stream encoded by an encoding method that mixes P + frames and P− frames.
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: decoded image of current frame, 113, 215: output image of inter-frame / intra-frame coding changeover switch, 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 ... pixels, 405-408 ... positions for which intensity values are to be obtained by primary interpolation, 501 ... I frames,
503, 505, 507, 509 ... P frame, 50
2, 504, 506, 508: B frame, 600: software image encoder, 602: frame memory for input image, 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: frame memory for output image. 801-81
5, 901 to 906, 1001 to 1005, 1101 to
1111, 1201 to 1204... Processing items in the flowchart, 1301, 1402, 1501.
1302, 1502... Tracks on which digital information is recorded, 1303 to 1316, 1503 to 1514... Digital information, 1401... Personal computer, 1403... Storage media playback device, 1404, 1410.
405: TV broadcast receiver, 1406: Wireless portable terminal,
1407: TV camera, 1408: Cable for cable TV, 1409: Set-top box, 141
DESCRIPTION OF SYMBOLS 1 ... Image coding apparatus, 1412 ... Storage media which recorded software information, 1413 ... Broadcasting station, 1414 ... Communication or broadcast satellite, 1415 ... Household with satellite broadcasting receiving equipment, 1601 ... Motion estimator, 1602, 1701 ... Rounding Method determiner, 1604, 1605, 1702, 1
704: Information on rounding method, 1603, 170
3. Predictive image synthesizer.
フロントページの続き (56)参考文献 中屋雄一郎、他3名、“D−11−44 半画素精度の動き補償における丸め込み 誤差の蓄積防止”、1998年電子情報通信 学会総合大会講演論文集情報・システム 2、1998年3月、p.44 ITU−T Recommendat ion H.263,1998年2月 (58)調査した分野(Int.Cl.7,DB名) H04N 7/24 - 7/68 Continuation of the front page (56) References Yuichiro Nakaya and 3 others, "D-11-44 Prevention of accumulation of rounding error in motion compensation with half-pixel accuracy", Proceedings of the 1998 IEICE General Conference. System 2, March 1998, p. 44 ITU-T Recommendation H. 263, February 1998 (58) Field surveyed (Int. Cl. 7 , DB name) H04N 7/ 24-7/68
Claims (9)
力画像との差分に関する情報と、前記動き補償によって
求められた動きベクトルに関する情報とを多重化する動
画像の符号化方法において、 前記予測画像は、プラスの丸め込みを用いる動き補償に
よって合成される場合と、マイナスの丸め込みを用いる
動き補償によって合成される場合とを有することを特徴
とする動画像の符号化方法。1. A moving picture coding method for multiplexing information on a difference between a predicted picture synthesized using motion compensation and an input picture and information on a motion vector obtained by the motion compensation, A method for encoding a moving image, wherein a predicted image is synthesized by motion compensation using positive rounding and a case is synthesized by motion compensation using negative rounding.
て、 前記予測画像がプラスの丸め込みによる動き補償によっ
て合成されたかマイナスの丸め込みによる動き補償によ
って合成されたかを判別する情報を前記差分に関する情
報と前記動きベクトルに関する情報とに多重化すること
を特徴とする動画像の符号化方法。2. The moving picture coding method according to claim 1, wherein information for determining whether the predicted image is combined by motion compensation by plus rounding or combined by motion compensation by minus rounding is related to the difference. A moving image encoding method, comprising multiplexing information with information on the motion vector.
の動きベクトルを求め予測画像を合成し、前記予測画像
と前記入力画像との差分に関する情報と、前記動きベク
トルに関する情報とを多重化する動画像の符号化方法に
おいて、 前記動き補償は前記参照画像の画素の存在しない点にお
ける輝度又は色差の強度値(以下、強度という)を共1次
内挿によって求める半画素精度の動き補償であって、 前記参照画像中の、強度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] による第1の方法を用いる場合と、 Ib=[(La+Lb)/2]、Ic=[(La+Lc)/2]、Id=[(La+Lb+Lc+Ld+1)/4] による第2の方法を用いる場合とを有することを特徴と
する動画像の符号化方法。3. A motion vector between an input image and a reference image is obtained by using motion compensation, a predicted image is synthesized, and information on a difference between the predicted image and the input image is multiplexed with information on the motion vector. In the encoding method of a moving image to be converted, the motion compensation is a half-pixel accuracy motion compensation in which an intensity value of a luminance or a color difference at a point where no pixel of the reference image exists (hereinafter, referred to as an intensity) is obtained by linear interpolation. A first pixel having an intensity La in the reference image, a second pixel having an intensity Lb adjacent to the first pixel in a horizontal direction, and a second pixel having an intensity Lb in a direction perpendicular to the first pixel. A third pixel adjacent and having an intensity Lc, vertically adjacent to the second pixel,
And a fourth pixel horizontally adjacent to the third pixel and having an intensity Ld, the intensity Ib at an intermediate point between the first pixel and the second pixel having no pixel, and the first pixel An intensity Ic at an intermediate point between a pixel and the third pixel, and the first and second pixels surrounded by the first, second, third, and fourth pixels.
When obtaining the intensity Id at a point equidistant from the second, third, and fourth pixels, Ib = [(La + Lb + 1) / 2], Ic = [(La + Lc + 1) / 2], Id = [(La + Lb + Lc + Ld + 2) / 4], and Ib = [(La + Lb) / 2], Ic = [(La + Lc) / 2], and a second method using Id = [(La + Lb + Lc + Ld + 1) / 4].
て、 前記予測画像が上記第1の方法を用いる動き補償によっ
て合成されたか上記第2の方法を用いる動き補償によっ
て合成されたかを判別する情報を前記差分に関する情報
と前記動きベクトルに関する情報とに多重化することを
特徴とする動画像の符号化方法。4. The moving picture coding method according to claim 3, wherein it is determined whether the predicted picture is combined by the motion compensation using the first method or by the motion compensation using the second method. A moving picture encoding method, wherein information about the difference is multiplexed with information about the difference and information about the motion vector.
きベクトルの検出と予測画像の合成とを行う段階と、 前記動きベクトルに関する情報と前記動き補償における
画素の強度値の内挿に用いられた丸め込み方法を特定す
る情報とを多重化する段階とを有することを特徴とする
動画像の符号化方法。5. A step of storing a reference image, a step of comparing an input image and the reference image to perform motion compensation, and detecting a motion vector and synthesizing a predicted image. Multiplexing information specifying a rounding method used for interpolation of pixel intensity values in motion compensation.
ータ読みとり可能な記録媒体において、第1のフレーム
の復号画像を第1のフレームメモリに蓄える段階と、 第2のフレームの入力画像を第2のフレームメモリに蓄
える段階と、 前記第2のフレームの入力画像と前記第1のフレームの
復号画像との間で動き補償を行う段階と、 前記動き補償において用いられた丸め込み方法に関する
情報を出力する段階を有することを特徴とする符号化方
法が記録されたコンピュータ読みとり可能な記録媒体。6. A computer-readable recording medium on which a moving image encoding method is recorded, wherein a decoded image of a first frame is stored in a first frame memory, and an input image of a second frame is stored in a first frame memory. Storing motion information between the input image of the second frame and the decoded image of the first frame, and outputting information on a rounding method used in the motion compensation. A computer-readable recording medium on which an encoding method is recorded.
前記参照画像とを比較して動き補償を行い予測画像の合
成と、動きベクトルの検出とを行うブロックマッチング
部と、前記動きベクトルに関する情報と前記動き補償に
おける画素の強度値の内挿に用いられる丸め込み方法を
特定する情報とを多重化する多重化器とを有することを
特徴とする動画像の符号化装置。7. A memory for recording a reference image, a block matching unit for comparing an input image and the reference image to perform motion compensation, synthesize a predicted image, and detect a motion vector, and A moving picture encoding apparatus, comprising: a multiplexer that multiplexes information and information that specifies a rounding method used for interpolation of pixel intensity values in the motion compensation.
予測画像と現フレームの入力画像との差分をDCT変換
するDCT変換器と、変換されたDCT係数を量子化す
る量子化器と、参照フレームの復号画像を記録するフレ
ームメモリと、前記参照フレームの復号画像と前記現フ
レームの入力画像との間で動き補償を行い現フレームの
予測画像の合成と動きベクトルの検出を行うブロックマ
ッチング部と、前記量子化されたDCT係数に関する情
報と、前記動きベクトルに関する情報とを多重化する多
重化器とを有する動画像の符号化装置において、 前記ブロックマッチング部は、前記予測画像の合成において、前記参照フレームの復号
画像の画素が存在しない点の強度値を求める際に、整数
に0.5を加えた値が出た際に切り上げを行う丸め込み
方法と、切り捨てを行う丸め込み方法の両者を選択可能
とすることを特徴とする 動画像の符号化装置。8. A DCT converter for DCT-transforming a difference between a predicted image of a current frame synthesized using motion compensation and an input image of the current frame, a quantizer for quantizing the transformed DCT coefficients, A frame memory for recording a decoded image of a reference frame, and a block matching unit for performing motion compensation between the decoded image of the reference frame and the input image of the current frame to synthesize a predicted image of the current frame and detect a motion vector And a multiplexer for multiplexing information on the quantized DCT coefficients and information on the motion vector, wherein the block matching unit includes : Decoding the reference frame
When determining the intensity value of a point where no pixel of the image exists, an integer
Rounds up when a value of 0.5 is added to the value
Method and rounding method with truncation can be selected.
A moving picture coding apparatus characterized in that:
いて、前記現フレームの予測画像の合成に用いた丸め込み方法
を識別する情報を、現フレーム情報のヘッダ部分に書き
込むことを特徴とする動画像の符号化装置。 9. A rounding method according to claim 8, wherein said method is used for synthesizing a predicted image of said current frame.
Is written in the header of the current frame information.
A moving picture encoding apparatus characterized in that:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16020598A JP2998741B2 (en) | 1997-06-09 | 1998-06-09 | Moving picture encoding method, computer-readable recording medium on which the method is recorded, and moving picture encoding apparatus |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9-150656 | 1997-06-09 | ||
JP15065697 | 1997-06-09 | ||
JP16020598A JP2998741B2 (en) | 1997-06-09 | 1998-06-09 | Moving picture encoding method, computer-readable recording medium on which the method is recorded, and moving picture encoding apparatus |
Related Child Applications (6)
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 |
JP3096699A Division JP3092611B2 (en) | 1997-06-09 | 1999-02-09 | Moving picture coding method and moving picture coding apparatus |
JP3096999A Division JP3092614B2 (en) | 1997-06-09 | 1999-02-09 | Digital mobile terminal |
JP3096899A Division JP3092613B2 (en) | 1997-06-09 | 1999-02-09 | recoding media |
JP3096799A Division JP3092612B2 (en) | 1997-06-09 | 1999-02-09 | Moving picture decoding method and moving picture decoding apparatus |
JP3096599A Division JP3092610B2 (en) | 1997-06-09 | 1999-02-09 | Moving picture decoding method, computer-readable recording medium on which the method is recorded, and moving picture decoding apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1169362A JPH1169362A (en) | 1999-03-09 |
JP2998741B2 true JP2998741B2 (en) | 2000-01-11 |
Family
ID=26480191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP16020598A Expired - Lifetime JP2998741B2 (en) | 1997-06-09 | 1998-06-09 | Moving picture encoding method, computer-readable recording medium on which the method is recorded, and moving picture encoding apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2998741B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011120311A (en) * | 1997-06-09 | 2011-06-16 | Hitachi Ltd | Method of encoding moving image |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20070033343A (en) * | 2004-07-13 | 2007-03-26 | 돌비 레버러토리즈 라이쎈싱 코오포레이션 | Unbiased rounding for video compression |
WO2006028088A1 (en) * | 2004-09-08 | 2006-03-16 | Matsushita Electric Industrial Co., Ltd. | Motion image encoding method and motion image decoding method |
JP2008544598A (en) * | 2005-06-10 | 2008-12-04 | エヌエックスピー ビー ヴィ | Alternate up and down motion vectors |
JP4539661B2 (en) * | 2007-02-08 | 2010-09-08 | 日本電気株式会社 | Method and apparatus for re-encoding compressed video |
AU2009240883A1 (en) * | 2008-04-30 | 2009-11-05 | Kabushiki Kaisha Toshiba | Time-varying image encoding and decoding device |
AU2009264603A1 (en) * | 2008-06-30 | 2010-01-07 | Kabushiki Kaisha Toshiba | Dynamic image prediction/encoding device and dynamic image prediction/decoding device |
JP2010161747A (en) * | 2009-01-09 | 2010-07-22 | Toshiba Corp | Apparatus and method for generating sub-pixel, and motion compensating apparatus |
-
1998
- 1998-06-09 JP JP16020598A patent/JP2998741B2/en not_active Expired - Lifetime
Non-Patent Citations (2)
Title |
---|
ITU−T Recommendation H.263,1998年2月 |
中屋雄一郎、他3名、"D−11−44 半画素精度の動き補償における丸め込み誤差の蓄積防止"、1998年電子情報通信学会総合大会講演論文集情報・システム2、1998年3月、p.44 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011120311A (en) * | 1997-06-09 | 2011-06-16 | Hitachi Ltd | Method of encoding moving image |
JP2012178865A (en) * | 1997-06-09 | 2012-09-13 | Hitachi Ltd | Encoding and decoding method for moving image |
JP2013051712A (en) * | 1997-06-09 | 2013-03-14 | Hitachi Ltd | Encoding method and decoding method of moving image |
JP2013158048A (en) * | 1997-06-09 | 2013-08-15 | Hitachi Ltd | Encoding method and decoding method of moving image |
JP2014039300A (en) * | 1997-06-09 | 2014-02-27 | Hitachi Ltd | Encoding method and decoding method of moving image |
JP2014123989A (en) * | 1997-06-09 | 2014-07-03 | Hitachi Ltd | Encoding and decoding method for moving image |
JP2014241631A (en) * | 1997-06-09 | 2014-12-25 | 株式会社日立製作所 | Encoding and decoding method for moving image |
JP2015111892A (en) * | 1997-06-09 | 2015-06-18 | 株式会社日立製作所 | Encoding and decoding method for moving image |
Also Published As
Publication number | Publication date |
---|---|
JPH1169362A (en) | 1999-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3092610B2 (en) | Moving picture decoding method, computer-readable recording medium on which the method is recorded, and moving picture decoding apparatus | |
JP2998741B2 (en) | Moving picture encoding method, computer-readable recording medium on which the method is recorded, and moving picture encoding apparatus | |
JP3092614B2 (en) | Digital mobile terminal | |
JP3407727B2 (en) | recoding media | |
JP3092613B2 (en) | recoding media | |
JP3092612B2 (en) | Moving picture decoding method and moving picture decoding apparatus | |
JP3092611B2 (en) | Moving picture coding method and moving picture coding apparatus | |
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 | |
JP4095762B2 (en) | Moving picture decoding method, decoding apparatus, and computer-readable recording medium on which the decoding method is recorded | |
JP2003235046A (en) | Method for encoding moving picture, computer-readable recording medium with the encoding method recorded thereon, and encoding apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071105 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081105 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081105 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091105 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101105 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101105 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111105 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111105 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121105 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121105 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131105 Year of fee payment: 14 |
|
EXPY | Cancellation because of completion of term |