JPH07203443A - Moving image coder - Google Patents
Moving image coderInfo
- Publication number
- JPH07203443A JPH07203443A JP34888693A JP34888693A JPH07203443A JP H07203443 A JPH07203443 A JP H07203443A JP 34888693 A JP34888693 A JP 34888693A JP 34888693 A JP34888693 A JP 34888693A JP H07203443 A JPH07203443 A JP H07203443A
- Authority
- JP
- Japan
- Prior art keywords
- block
- frame
- image
- input
- motion vector
- 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.)
- Withdrawn
Links
Landscapes
- Image Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、デジタル動画像データ
を圧縮するための圧縮符号化装置に関し、特に超音波診
断画像等の画面内の動領域および移動方向が制限される
動画像に好適する動画像符号化装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a compression encoding device for compressing digital moving image data, and is particularly suitable for a moving image within a screen such as an ultrasonic diagnostic image and a moving image whose moving direction is limited. The present invention relates to a moving picture coding device.
【0002】[0002]
【従来の技術】従来の動画像符号化装置による動画像の
圧縮符号化は、フレーム内符号化を行なうフレームとフ
レーム間符号化を行なうフレームとを混在させるものが
主流である。このフレーム内符号化は、入力画像フレー
ムを独立して、例えば、8×8画素のブロック単位にD
CT変換を行ない変換係数を量子化後、その量子化値に
対して可変長符号化を行なうものである。2. Description of the Related Art The conventional compression encoding of moving images by a conventional moving image encoding apparatus is a mixture of a frame for intra-frame encoding and a frame for inter-frame encoding. This intra-frame encoding is performed by independently inputting the input image frame, for example, in D by 8 × 8 pixel block units.
After CT transformation is performed and the transform coefficient is quantized, variable length coding is performed on the quantized value.
【0003】一方、フレーム間符号化は、入力画像フレ
ームと前フレーム復号画像との間での動きによる時間方
向の冗長性の低下を低減させるために、n×m画素(1
6×16画素など)単位のブロックの動ベクトルを検出
し、このブロック単位に動きを補償する。この動き補償
予測画像と入力画像とで差分を取り、生成された動き補
償予測誤差データに対して、例えば、8×8画素のブロ
ック単位にDCT変換を行ない変換係数を量子化後、そ
の量子化値に対して可変長符号化を行なうというもので
ある。On the other hand, the inter-frame coding is performed in order to reduce the deterioration of the redundancy in the time direction due to the motion between the input image frame and the decoded image of the previous frame.
A motion vector of a block in units of 6 × 16 pixels) is detected, and motion is compensated in units of blocks. The difference between the motion-compensated prediction image and the input image is calculated, the generated motion-compensated prediction error data is subjected to DCT transform in block units of 8 × 8 pixels, the transform coefficient is quantized, and the quantization is performed. The variable length coding is performed on the value.
【0004】このような圧縮符号化は効率の良い圧縮が
可能なため、テレビ電波用国際標準であるH.261や
蓄積メディア用国際標準であるMPEGで採用されてい
る。Since such compression encoding enables efficient compression, the H.264 standard, which is an international standard for television radio waves, is used. 261 and MPEG which is an international standard for storage media.
【0005】[0005]
【発明が解決しようとする課題】しかし、前述した動画
像符号化装置による圧縮符号化は、基本的にブロック単
位のDCTを用いている。このため、高圧縮を行なうと
DCT変換係数の量子化ステップ幅を粗くする様に制御
しているために、量子化誤差が増大し、その結果復号画
像はブロック境界での不連続が目に付くようになる。こ
の劣化はブロック歪と一般に呼ばれている。However, the compression coding by the moving picture coding apparatus described above basically uses the DCT in block units. For this reason, when the high compression is performed, the quantization step width of the DCT transform coefficient is controlled to be coarse, so that the quantization error increases, and as a result, the decoded image has a discontinuity at the block boundary noticeable. Like This deterioration is generally called block distortion.
【0006】特に、超音波診断装置から得られる画像を
このようなDCTを用いた圧縮方式で圧縮すると、一般
画像に比べてブロック歪が顕著に現れるという性質を有
している。そこで本発明は、ブロック歪が顕著に現れる
画像に対してもブロック歪の発生を抑制する動画像符号
化装置を提供することを目的とする。In particular, when an image obtained from an ultrasonic diagnostic apparatus is compressed by such a compression method using DCT, block distortion appears more noticeably than a general image. Therefore, it is an object of the present invention to provide a moving picture coding apparatus that suppresses the occurrence of block distortion even in an image in which block distortion is prominent.
【0007】[0007]
【課題を解決するための手段】上記の目的を達成するた
めに、時間的に連続して入力する入力画像信号に対し
て、現フレーム入力画像と前フレーム復号画像との間で
予測を行ない、画像ごとに減算しフレーム間予測誤差信
号を生成する手段と、予測誤差信号あるいは入力画像信
号をn×m画素のブロックに分割し、ブロック単位に直
交変換を行ない変換係数を量子化して可変長符号化を行
なう手段と、量子化された変換係数を逆量子化し逆直交
変換を行ない、前フレーム復号画像からの予測画像と加
算し、現フレーム復号画像を生成する手段を具備する動
画像符号化装置において、前記各ブロック毎の変換係数
または、この変換係数に係る情報をパラメータとして、
複数種のローパスフィルタの中から1つのフィルタを選
択するフィルタ選択手段と、前記選択手段により選択さ
れたフィルタを逆直交変換を施した後の信号に掛けるフ
ィルタリング手段とで構成された動画像符号化装置を提
供する。In order to achieve the above-mentioned object, prediction is performed between an input image signal of a current frame and a decoded image of a previous frame with respect to an input image signal continuously input in time, A means for generating an inter-frame prediction error signal by subtracting each image, a prediction error signal or an input image signal is divided into blocks of n × m pixels, orthogonal transformation is performed in block units, and transform coefficients are quantized to obtain a variable length code. And a means for performing quantization, and means for performing inverse quantization on the quantized transform coefficient, performing inverse orthogonal transform, adding the result to the predicted image from the decoded image of the previous frame, and generating the decoded image of the current frame. In, the conversion coefficient of each of the blocks, or the information related to this conversion coefficient as a parameter,
A moving image coding including a filter selecting means for selecting one filter from a plurality of types of low-pass filters, and a filtering means for applying a signal after the filter selected by the selecting means is subjected to inverse orthogonal transform. Provide a device.
【0008】また、時間的に連続して入力する入力画像
信号に対して、現フレーム入力画像と前フレーム復号画
像との間で予測を行ない画像ごとに減算し、フレーム間
予測誤差信号を生成する手段と、予測誤差信号あるいは
入力画像信号をn×m画素のブロックに分割し、ブロッ
ク単位に直交変換を行ない変換係数を量子化して可変長
符号化を行なう手段と、量子化された変換係数を逆量子
化し、逆直交変換を行ない前フレーム復号画像から生成
した予測画像と加算し、現フレーム復号画像を生成する
手段を具備する動画像符号化装置において、前記ブロッ
ク毎の動ベクトルを検出する動ベクトル検出手段と、前
記各ブロックを1ライン分まとめてブロックラインと
し、該ブロックライン単位に動ベクトルの発生頻度を求
めるブロックライン内動ベクトル頻度算出手段と、前記
ブロックライン内動ベクトル頻度算出手段により求めら
れた頻度に基づき、ブロックライン内代表動ベクトルを
生成する代表動ベクトル生成手段と、前記ブロックライ
ンを複数個に分割し、この分割ブロックライン毎の動ベ
クトル発生頻度分布により分割ブロックライン内の動き
補償を施すことを許可若しくは禁止する判定を行う動き
補償判定手段と、前記動き補償判定手段により、動き補
償を許可された分割ブロックライン内のブロック毎に前
記代表動ベクトルを用いて、動き補償予測を行なうか否
か判定し制御する手段とで構成された動画像符号化装置
を提供する。Further, with respect to an input image signal continuously input in time, prediction is performed between the current frame input image and the previous frame decoded image and subtraction is performed for each image to generate an inter-frame prediction error signal. Means, means for dividing the prediction error signal or the input image signal into blocks of n × m pixels, performing orthogonal transform in block units, quantizing transform coefficients to perform variable length coding, and means for quantizing transform coefficients. In a moving picture coding apparatus having means for generating a current frame decoded image by performing dequantization, performing inverse orthogonal transform and adding with a predicted image generated from a preceding frame decoded image, a motion vector for detecting a motion vector for each block is detected. Vector detection means and one block for each block are combined into a block line, and a block line for obtaining the frequency of occurrence of a motion vector in units of the block line Motion vector frequency calculation means, based on the frequency obtained by the motion vector frequency calculation means in the block line, representative motion vector generation means for generating a representative motion vector in the block line, the block line is divided into a plurality of, Motion compensation determination means for determining whether to permit or prohibit motion compensation in the divided block line based on the motion vector generation frequency distribution for each divided block line, and division for which motion compensation is permitted by the motion compensation determination means. There is provided a moving picture coding apparatus configured by means for determining and controlling whether or not to perform motion compensation prediction using the representative motion vector for each block in a block line.
【0009】[0009]
【作用】以上のような構成の動画像符号化装置において
は、例えば、ブロック内のDCT係数位置により最高空
間周波数を決定し、これにより複数種の特性のローパス
フィルタが選択され、逆DCT後のデータへ作用させる
ため、量子化誤差により発生するブロック歪が消され、
且つボケが極力抑制される。ただし、前記フィルタは量
子化誤差以外のブロック境界の不連続(特に、各ブロッ
クごとに独立して動き補償を行なった場合に発生する)
においては、逆に不連続のままにする必要がありフィル
タを作用させない。In the moving picture coding apparatus having the above-described structure, for example, the highest spatial frequency is determined by the DCT coefficient position in the block, and a low-pass filter having a plurality of types of characteristics is selected by the DCT coefficient position. To affect the data, the block distortion caused by the quantization error is erased,
Moreover, blurring is suppressed as much as possible. However, the filter has discontinuity in block boundaries other than quantization error (especially, when motion compensation is performed independently for each block)
At, on the contrary, it must remain discontinuous and the filter will not work.
【0010】さらに、この不具合を抑制するために、ブ
ロックライン内で1つの代表動ベクトルが求められ、こ
の代表動ベクトルを使った動き補償を許可するか否かが
分割ブロックライン(例えば2分割)単位で判定され、
許可された場合のみ極力動き補償をブロック単位で行な
う様に作用させ、逆に禁止時にはフレーム間差分(動ベ
クトル=0とする)を行う。これにより、動き補償予測
画像にブロック境界での不連続を極力避けることがで
き、また、ブロック境界で動き補償予測により不連続が
発生した場合には、その境界に対してフィルタを作用さ
せないため量子化誤差によるブロック歪を効果的に押え
られる。Further, in order to suppress this inconvenience, one representative motion vector is obtained within the block line, and whether or not motion compensation using this representative motion vector is permitted is determined by a divided block line (for example, divided into two). Judged in units,
Only when it is permitted, the motion compensation is performed as much as possible on a block-by-block basis. On the contrary, when it is prohibited, the inter-frame difference (movement vector = 0) is performed. This makes it possible to avoid discontinuity at the block boundary in the motion-compensated prediction image as much as possible, and when discontinuity occurs due to motion-compensated prediction at the block boundary, the filter is not applied to the boundary and the quantum is discontinued. Block distortion due to digitization error can be effectively suppressed.
【0011】[0011]
【実施例】以下、図面を参照して本発明の実施例を詳細
に説明する。図1は、本発明による第1実施例としての
動画像符号化装置の構成を示し説明する。この動画像符
号化装置は、入力画像がブロック単位(例えば8×8画
素)にスイッチ2へ直接および減算器1を経由して差分
データの形で入力される。Embodiments of the present invention will now be described in detail with reference to the drawings. FIG. 1 shows and describes a configuration of a moving picture coding apparatus as a first embodiment according to the present invention. In this moving image encoding apparatus, an input image is input in block units (for example, 8 × 8 pixels) to a switch 2 directly and in the form of difference data via a subtractor 1.
【0012】この減算器1には、もう1つの入力として
スイッチ17を経由してフレームメモリ15に蓄積され
た前フレームの復号画像あるいはフレームメモリ16に
蓄積された前フレーム原画像の内のどちらか一方が、有
効,無効フレーム判定部22の制御により選択される。
(有効フレームと判定された時には前フレームの復号画
像が無効フレームと判定された時には前フレームの原画
像が選択される)The subtractor 1 receives either the decoded image of the previous frame stored in the frame memory 15 or the original image of the previous frame stored in the frame memory 16 via the switch 17 as another input. One of them is selected by the control of the valid / invalid frame determination unit 22.
(When it is judged as a valid frame, the decoded image of the previous frame is selected as the original image of the previous frame when it is judged as an invalid frame)
【0013】フレーム内,間判定部4では、時間的に決
められた期間(例えば、1/2秒間)の最初のフレーム
若しくは、有効,無効フレーム判定部22からの信号が
無効フレームを意味している場合にフレーム内符号化を
行うように、スイッチ2から入力画像信号が出力される
ように制御し、それ以外では、減算器1から差分データ
がスイッチ2から出力されるように制御する。In the in-frame / inter-frame determination section 4, the first frame of a time-determined period (for example, 1/2 second) or the signal from the valid / invalid frame determination section 22 means an invalid frame. If so, the input image signal is controlled to be output from the switch 2 so as to perform intra-frame encoding, and otherwise, the subtracter 1 is controlled to output the difference data from the switch 2.
【0014】前記減算器1の出力である差分データは、
またブロック内差分絶対値和算出部20へ入力され差分
データの絶対値和が算出される。この差分絶対値和は、
有効,無効ブロック判定部5および有効,無効フレーム
判定部22に入力される。The difference data output from the subtractor 1 is
Also, the sum of absolute differences of the difference data is calculated by inputting to the sum of absolute differences between blocks 20. This sum of absolute differences is
It is input to the valid / invalid block determination unit 5 and the valid / invalid frame determination unit 22.
【0015】有効,無効ブロック判定部5では入力され
たブロック内差分絶対値和と予め決定しておいた闘値1
を比較し、闘値1以上の時にはスイッチ2の出力がDC
T6に入力されるようにスイッチ3を制御し闘値1より
小さい時には、スイッチ2の出力がDCT6に入力され
ないようにスイッチ3を制御する。また有効,無効フレ
ーム判定部22はブロック内差分絶対値和を1フレーム
分加算し、このフレーム内差分絶対値和が予め決定され
た闘値2以上の時、あるいはバッファ19に格納された
符号量が闘値3以上の時、さらにレートコントロール部
24より伝送バッファ25がオーバーフローすると判定
された時に、無効フレームとしてスイッチ21を切り離
すように制御し、それ以外では無効フレームとしてスイ
ッチ21を接続するように制御する。In the valid / invalid block judgment section 5, the sum of the absolute value of the difference in the input block and the threshold value 1 determined in advance are set.
The output of switch 2 is DC when the threshold value is 1 or more.
The switch 3 is controlled so as to be input to T6, and when the threshold value is smaller than 1, the switch 3 is controlled so that the output of the switch 2 is not input to the DCT6. In addition, the valid / invalid frame determination unit 22 adds the sum of absolute differences between blocks for one frame, and when the sum of absolute differences between frames is equal to or more than a predetermined threshold value 2, or the code amount stored in the buffer 19. Is a threshold value of 3 or more, and when the rate control unit 24 further determines that the transmission buffer 25 overflows, the switch 21 is controlled to be disconnected as an invalid frame, and otherwise the switch 21 is connected as an invalid frame. Control.
【0016】また、前記有効,無効ブロック判定部5で
判定された有効ブロックか無効ブロックかというブロッ
ク当り1ビットの情報をMPX部23へ出力する。さら
に、有効,無効フレーム判定部22では、判定された有
効フレームか無効フレームかというフレーム当り1ビッ
トの情報をMPX部23へ出力する。Also, 1-bit information per block, which is the valid block or invalid block determined by the valid / invalid block determining section 5, is output to the MPX section 23. Further, the valid / invalid frame determination unit 22 outputs 1-bit information per frame indicating the determined valid frame or invalid frame to the MPX unit 23.
【0017】スイッチ3の出力である8×8画素の原画
像もしくはフレーム間差分画像は、DCT6に入力され
離散コサイン変換が行われ、量子化器Q7に入力され
る。この量子化器Q7には、フレーム内,間判定部4で
の判定(フレーム内符号化とするかフレーム間符号化と
するか)により、量子化テーブル10に予め記憶された
2種類の量子化マトリックス(各変換係数に対する重み
をマトリックス状に配列したもの)を選択し入力され、
さらにレートコントロール部24からの量子化スケール
が入力される。前記量子化マトリックスに前記量子化ス
ケールを乗算し、各変換係数の量子化ステップ幅を算出
し、この量子化ステップ幅を用いて前記DCT6の出力
である変換係数を量子化する。The 8 × 8 pixel original image or the inter-frame difference image output from the switch 3 is input to the DCT 6, subjected to discrete cosine transform, and input to the quantizer Q7. In the quantizer Q7, two types of quantization stored in advance in the quantization table 10 are determined by the intra-frame / inter-frame determination unit 4 (whether intra-frame coding or inter-frame coding is used). Select a matrix (the weights for each transform coefficient are arranged in a matrix) and input.
Further, the quantization scale from the rate control unit 24 is input. The quantization matrix is multiplied by the quantization scale, the quantization step width of each transform coefficient is calculated, and the transform coefficient which is the output of the DCT 6 is quantized using this quantization step width.
【0018】そして、量子化された変換係数は、可変長
符号化器VLC8と逆量子化器Q-19に入力される。可
変長符号化器VLC8では変換係数のDC成分に対して
前ブロックとの差分値に対応するハフマン符号が出力さ
れ、またAC成分に対しては、低周波成分から高周波成
分に向けてジグザグスキャンを行ない1次元化したデー
タに対しゼロラインとその直後のゼロでない値に対する
2次元ハフマン符号が出力される。さらにブロックの最
後までゼロが続いた時点でEOB(End of Bl
ock)符号を出力する。逆量子化器Q-19では、量子
化器Q7と同じ量子化マトリックスおよび量子化スケー
ルが入力され、量子化ステップ幅の生成を行ないこの量
子化ステップ幅を量子化値に乗ずることで逆量子化を行
った変換係数を生成し、IDCT11およびSVF(S
pace Valiant Filter)12に出力
する。Then, the quantized transform coefficient is input to the variable length coder VLC8 and the inverse quantizer Q -1 9. The variable length encoder VLC8 outputs a Huffman code corresponding to the difference value between the DC component of the transform coefficient and the preceding block, and performs zigzag scanning from the low frequency component to the high frequency component for the AC component. A zero line and a two-dimensional Huffman code for a non-zero value immediately after the zero line are output for the one-dimensionalized data. Further, when zero continues to the end of the block, EOB (End of Bl
ock) code is output. The inverse quantizer Q -1 9 receives the same quantization matrix and quantization scale as those of the quantizer Q7, generates a quantization step width, and multiplies this quantization step width by the inverse quantization value. The transformed conversion coefficient is generated, and IDCT11 and SVF (S
Pace Variant Filter) 12.
【0019】前記IDCT11では、この逆量子化を行
った変換係数に対して逆離散コサイン変換を行ない復号
データブロックを生成する。この復号データブロックは
SVF12に入力される。In the IDCT 11, the inverse discrete cosine transform is performed on the inversely quantized transform coefficient to generate a decoded data block. This decoded data block is input to the SVF 12.
【0020】前記SVF12では、図2に示すように逆
量子化器Q-19からの入力である逆量子化された変換係
数値の水平および垂直方向のゼロでない最高周波数成分
の位置MHPとMVPを検出し、図3に示すようなMH
P,MVPをそれぞれパラメータとして水平,垂直方向
に複数種用意された特性の異なるローパスフィルタを選
択し、この選択番号をメモリに記録する。[0020] The In SVF12, position MHP and MVP of the highest frequency component not horizontal and vertical zero inversely quantized transform coefficient values are input from the inverse quantizer Q -1 9 as shown in FIG. 2 Is detected and MH as shown in FIG.
A plurality of low-pass filters having different characteristics are prepared in the horizontal and vertical directions using P and MVP as parameters, and the selected numbers are recorded in the memory.
【0021】前記IDCT11から入力された復号画像
ブロックがSVF12内(図示せず)のバッファメモリ
に格納され、この注目ブロックに隣接する上下左右の4
つのブロックが、前記バッファメモリにそれぞれ格納さ
れた時点で前記選択された水平,垂直方向のローパスフ
ィルタをそれぞれ、この注目ブロック境界およびその内
部に掛ける。The decoded image block input from the IDCT 11 is stored in the buffer memory in the SVF 12 (not shown), and the four adjacent upper, lower, left, and right blocks are provided.
When one block is stored in the buffer memory, the selected horizontal and vertical low-pass filters are respectively applied to the target block boundary and the inside thereof.
【0022】このフィルタは、超音波診断画像の場合
は、水平方向のみで十分効果的である。また、ブロック
境界から中央にいくにしたがって、フィルタの特性を変
更してよいのは勿論である。In the case of ultrasonic diagnostic images, this filter is sufficiently effective only in the horizontal direction. Further, it goes without saying that the characteristics of the filter may be changed from the block boundary toward the center.
【0023】このローパスフィルタ処理が終った復号デ
ータブロックは、スイッチ13に入力され有効,無効ブ
ロック判定部5で有効ブロックと判定された時のみ加算
器14に入力される。この加算器14には、フレーム
内,間判定部4によりフレーム内符号化が選択された場
合はゼロが、そしてフレーム間符号化が選択された場合
は、前フレームの復号画像がスイッチ18を制御するこ
とで入力される。The decoded data block after the low-pass filter processing is input to the switch 13 and is input to the adder 14 only when the valid / invalid block determination unit 5 determines that the block is a valid block. In the adder 14, zero is selected when intraframe coding is selected by the intraframe / interframe determination unit 4, and a decoded image of the previous frame controls the switch 18 when interframe coding is selected. It is input by doing.
【0024】前記加算器14に入力されたデータは加算
され、現在符号化された画像の復号画像が生成されてフ
レームメモリ15に記憶される。また、フレームメモリ
16には、原画像データがそのまま格納される。The data input to the adder 14 are added, a decoded image of the currently encoded image is generated and stored in the frame memory 15. The original image data is stored in the frame memory 16 as it is.
【0025】前記有効,無効フレーム判定部22からの
判定により有効フレームと判定された場合は、フレーム
メモリ15に格納された復号画像を減算器1とスイッチ
18に出力するようにスイッチ17を制御し、また無効
フレームと判定された場合は、フレームメモリ16に格
納された原画像を減算器1とスイッチ18に出力するよ
うにスイッチ17を切換える。When the valid / invalid frame determining unit 22 determines that the frame is a valid frame, the switch 17 is controlled so that the decoded image stored in the frame memory 15 is output to the subtracter 1 and the switch 18. If it is determined that the frame is invalid, the switch 17 is switched to output the original image stored in the frame memory 16 to the subtractor 1 and the switch 18.
【0026】またバッファ19は1フレーム分の可変長
符号化データを蓄積し、蓄積された符号のデータ量を有
効,無効フレーム判定部22へ出力する。前記MPX部
23には、レートコントロール部24からの量子化スケ
ール、有効,無効フレーム判定部22からの有効,無効
フレーム情報、有効,無効ブロック判定部5からの有
効,無効ブロック情報、さらには、バッファ19に格納
された圧縮データがスイッチ21を経由して入力され、
予め決定されたビットストリームにデータを並べ替え
て、伝送バッファ25とレートコントロール部24へ出
力される。The buffer 19 also stores variable-length coded data for one frame and outputs the data amount of the stored code to the valid / invalid frame determination section 22. The MPX unit 23 includes a quantization scale from the rate control unit 24, valid / invalid frame information from the valid / invalid frame determination unit 22, valid / invalid block information from the valid / invalid block determination unit 5, and The compressed data stored in the buffer 19 is input via the switch 21,
The data is rearranged into a predetermined bit stream and output to the transmission buffer 25 and the rate control unit 24.
【0027】そして、前記伝送バッファ25に蓄積され
たビットストリームは、一定レートで出力される。ま
た、レートコントロール部24では、MPX部23から
の出力であるビットストリームの符号量がカウントされ
設定ビットレート以下に発生符号量が収まるように、次
に符号化フレームの量子化スケール(量子化ステップ
幅)を予測する。この予測は、フレーム内符号化時と、
フレーム間符号化時で独立に行なわれる。The bit stream accumulated in the transmission buffer 25 is output at a constant rate. Further, the rate control unit 24 counts the code amount of the bit stream output from the MPX unit 23, and the quantization scale (quantization step of the next encoding frame is set so that the generated code amount falls within the set bit rate. Width). This prediction is
It is performed independently during interframe coding.
【0028】予測式は次の通り Qs (I) =(次フレーム割り当て符号量(I) /現フレー
ム発生符号量(I))1/2×Qs ′(I) Qs (P) =(次フレーム割り当て符号量(P) /現フレー
ム発生符号量(P))1/2×Qs ′(P)The prediction formula is as follows: Q s (I) = (Next frame allocation code amount (I) / Current frame generated code amount (I)) 1/2 × Q s ′ (I) Q s (P) = (Next frame allocation code amount (P) / Current frame generation code amount (P)) 1/2 × Q s ′ (P)
【0029】ここで、Qs ′(I) ,Qs ′(P) は現フレ
ーム内符号化フレーム、現フレーム間符号化フレームで
用いた量子化スケール、Qs (I) ,Qs (P) は、次フレ
ーム内符号化フレーム、次フレーム間符号化フレームで
用いる量子化スケールを表わす。この量子化スケールが
量子化器Q7と逆量子化器Q-19へ入力され、次のフレ
ームに使用する量子化ステップ幅が生成される。Here, Q s ′ (I) and Q s ′ (P) are the quantization scales used in the current intra-coded frame and the current inter-frame coded frame, and Q s (I) and Q s (P ) Represents the quantization scale used in the next intra-frame coded frame and the next inter-frame coded frame. The quantization scale is input quantizer Q7 to the inverse quantizer Q -1 9, the quantization step width used in the next frame is generated.
【0030】以上説明したような1フレームに対する処
理を繰り返し行なうことにより、動画像の圧縮を行なわ
れる。本実施例により、IDCT11の出力結果である
復号データブロックの隣接境界で発生する不連続な歪
(ブロック歪)を消すことができるため、加算器14の
出力での復号画像にブロック歪の発生を抑制することが
できる。この第1実施例は、フレーム間予測を単純なフ
レーム間差分とした場合のものである。By repeating the processing for one frame as described above, the moving image is compressed. According to the present embodiment, the discontinuous distortion (block distortion) generated at the adjacent boundary of the decoded data block, which is the output result of the IDCT 11, can be eliminated, so that the decoded image at the output of the adder 14 is prevented from generating the block distortion. Can be suppressed. The first embodiment is a case where the inter-frame prediction is a simple inter-frame difference.
【0031】次に、図4には本発明による第2実施例と
しての動画像符号化装置の構成を示す。この動画像符号
化装置においては、入力画像がバッファ30に書き込ま
れ所定時間経過後、ブロック単位(例えば8×8画素)
毎に、直接及び減算器31を経由してスイッチ32へ差
分データが入力される。Next, FIG. 4 shows the configuration of a moving picture coding apparatus as a second embodiment according to the present invention. In this moving image coding apparatus, after the input image is written in the buffer 30 and a predetermined time has elapsed, the input image is written in block units (eg 8 × 8 pixels).
Each time, the difference data is input to the switch 32 directly and via the subtractor 31.
【0032】この減算器31には、もう1つの入力とし
てスイッチ54を経由してフレームメモリ47に格納さ
れた前フレームの復号画像、若しくはフレームメモリ5
3に格納された前フレーム入力原画像の内のどちらか一
方が有効,無効フレーム判定部60の制御により選択さ
れる。但し、有効フレームと判定された時には、前フレ
ームの復号画像が選択され、無効フレームと判定された
時には前フレームの原画像が選択される。The subtractor 31 receives the decoded image of the previous frame stored in the frame memory 47 via the switch 54 as another input, or the frame memory 5
Either one of the previous frame input original images stored in No. 3 is selected by the control of the valid / invalid frame determination unit 60. However, when it is determined that the frame is valid, the decoded image of the previous frame is selected, and when it is determined that the frame is invalid, the original image of the previous frame is selected.
【0033】そして、フレーム内,間判定部34では、
時間的に決められた期間(例えば、1/2秒間)の最初
のフレーム若しくは、有効,無効フレーム判定部60か
らの信号が無効フレームを意味している場合に、フレー
ム内符号化を行うようスイッチ32から入力画像信号が
出力されるように制御し、これ以外では、減算器31か
らの差分データがスイッチ32から出力されるように切
換える。Then, the in-frame / inter-frame determination unit 34
A switch for performing intra-frame encoding when the first frame in a time-determined period (for example, 1/2 second) or the signal from the valid / invalid frame determination unit 60 means an invalid frame. The input image signal is controlled to be output from 32, and in other cases, the difference data from the subtractor 31 is switched to be output from the switch 32.
【0034】減算器31の出力である差分データは、ま
たブロック内差分絶対値和算出部59へ入力され差分デ
ータの絶対値和が算出される。この差分絶対値和は、有
効,無効ブロック判定部35および有効,無効フレーム
判定部60に入力される。The difference data output from the subtractor 31 is also input to the intra-block difference absolute value sum calculation unit 59, and the absolute value sum of the difference data is calculated. This sum of absolute differences is input to the valid / invalid block determination unit 35 and the valid / invalid frame determination unit 60.
【0035】有効,無効ブロック判定部35では入力さ
れたブロック内差分絶対値和と予め決定しておいた闘値
とを比較し、闘値1以上の時にはスイッチ32の出力が
DCT36に入力されるようにスイッチ33を制御し、
闘値1より小さい時にはスイッチ32の出力がDCT3
6に入力されないようにスイッチ33を制御する。また
有効,無効フレーム判定部60はブロック内差分絶対値
和を1フレーム分加算し、このフレーム内差分絶対値和
が予め設定された闘値2以上の時、若しくはバッファ5
7に格納された符号量が闘値3以上の時、さらにレート
コントロール62より伝送バッファ63がオーバーフロ
ーすると判定された時に、無効フレームとしてスイッチ
58を切り離し、それ以外の時には、スイッチ58が導
通するように切換える。The valid / invalid block judgment unit 35 compares the input sum of absolute differences in blocks with a predetermined threshold value, and when the threshold value is 1 or more, the output of the switch 32 is input to the DCT 36. Control the switch 33 to
When the threshold value is smaller than 1, the output of the switch 32 is DCT3.
The switch 33 is controlled so as not to be input to the switch 6. Further, the valid / invalid frame determination unit 60 adds the sum of absolute differences between blocks for one frame, and when the sum of absolute differences between frames is equal to or greater than a preset threshold value 2, or the buffer 5
When the code amount stored in 7 is a threshold value of 3 or more, and when the rate control 62 determines that the transmission buffer 63 overflows, the switch 58 is disconnected as an invalid frame, and in other cases, the switch 58 is turned on. Switch to.
【0036】また、前記有効,無効ブロック判定部35
で判定された有効ブロックか無効ブロックかというブロ
ック当り1ビットの情報をMPX61へ出力する。さら
に、有効,無効フレーム判定部60では、判定された有
効フレームか無効フレームかというフレーム当り1ビッ
トの情報をMPX61へ出力する。Further, the valid / invalid block determining section 35.
The 1-bit information per block, which is the valid block or the invalid block determined in step S1, is output to the MPX 61. Further, the valid / invalid frame determination unit 60 outputs to the MPX 61 1-bit information per frame indicating the determined valid frame or invalid frame.
【0037】前記スイッチ33の出力である8×8画素
の原画像もしくはフレーム間差分画像は、DCT36に
入力され離散コサイン変換が行われ、量子化器Q37に
入力される。この量子化器Q37には、フレーム内,間
判定部34での判定(フレーム内符号化とするかフレー
ム間符号化とするか)により量子化テーブル40に予め
記憶された2種類の量子化マトリックス(各変換係数に
対する重みをマトリックス状に配列したもの)を選択し
入力され、さらにレートコントロール62からの量子化
スケールが入力される。前記量子化マトリックスに前記
量子化スケールを乗算し、各変換係数の量子化ステップ
幅を算出し、この量子化ステップ幅を用いて前記DCT
36の出力である変換係数を量子化する。The 8 × 8 pixel original image or the inter-frame difference image output from the switch 33 is input to the DCT 36, subjected to discrete cosine transform, and input to the quantizer Q37. The quantizer Q37 has two types of quantization matrices stored in advance in the quantization table 40 according to the determination in the intra-frame / inter-frame determination unit 34 (whether intraframe coding or interframe coding is performed). (The weight for each transform coefficient is arranged in a matrix) is selected and input, and the quantization scale from the rate control 62 is further input. The quantization matrix is multiplied by the quantization scale to calculate the quantization step width of each transform coefficient, and the DCT is calculated using this quantization step width.
The transform coefficient which is the output of 36 is quantized.
【0038】量子化された変換係数は可変長符号化器V
LC38と逆量子化器Q-139に入力される。可変長符
号化器VLC38では変換係数のDC成分に対して、前
ブロックとの差分値に対応するハフマン符号がバッファ
57へ出力され、またAC成分に対しては、低周波成分
から高周波成分に向けてジグザグスキャンを行ない1次
元化したデータに対しゼロラインと、その直後のゼロで
ない値に対する2次元ハフマン符号がバッファ57へ出
力される。さらにブロックの最後までゼロが続いた時点
でEOB(End of Block)符号を出力す
る。逆量子化器Q-139では、量子化器Q37と同じ量
子化マトリックスおよび量子化スケールが入力され量子
化ステップ幅の生成を行ない、この量子化ステップ幅を
量子化値に乗ずることで、逆量子化を行った変換係数を
生成し、IDCT41およびSVF(Space Va
liant Filter)44に出力する。The quantized transform coefficient is the variable length coder V.
It is input to the LC 38 and the inverse quantizer Q -1 39. The variable length encoder VLC38 outputs the Huffman code corresponding to the difference value from the preceding block to the DC component of the transform coefficient to the buffer 57, and the AC component from the low frequency component to the high frequency component. Zigzag scanning is performed to output a zero line for the one-dimensionalized data and a two-dimensional Huffman code for the non-zero value immediately after that are output to the buffer 57. Furthermore, when zero continues to the end of the block, an EOB (End of Block) code is output. The inverse quantizer Q -1 39 receives the same quantization matrix and quantization scale as those of the quantizer Q37, generates a quantization step width, and multiplies the quantization step width by the quantization value to obtain the inverse value. The quantized transform coefficient is generated, and the IDCT 41 and the SVF (Space Va) are generated.
(Liant Filter) 44.
【0039】前記IDCT41では、入力された前記変
換係数を逆離散コサイン変換し、復号データブロックが
生成される。このデータはバッファ42に設定ブロック
数分蓄えられる。この設定ブロック数はSVF44で必
要なブロックデータ数のことである。例えば、SVF4
4で、水平方向のみのフィルタリングを行なう場合は水
平方向に連続3ブロックの蓄積で良く、水平,垂直方向
のフィルタリングを行なう場合は2ブロックライン+1
ブロック分の蓄積を必要とする。(無効ブロック位置に
は“0”をブロック画素数分フィルタ格納する。)In the IDCT 41, the input transform coefficient is subjected to inverse discrete cosine transform to generate a decoded data block. This data is stored in the buffer 42 for the set number of blocks. The number of set blocks is the number of block data required by the SVF 44. For example, SVF4
In case of filtering only in the horizontal direction at 4, it is sufficient to store three consecutive blocks in the horizontal direction, and in case of filtering in the horizontal and vertical directions, 2 block lines + 1
It requires the accumulation of blocks. (“0” is stored as a filter in the invalid block position by the number of block pixels.)
【0040】そして、バッファ42に蓄積された復号デ
ータから、処理ブロックがスイッチ43に入力され、フ
ィルタON/OFF判定部56の制御によりフィルタO
Nと判定された場合には、SVF44にこのデータが出
力される。またフィルタOFFと判定された場合には、
スイッチ45に直接出力される。Then, the processing block is input to the switch 43 from the decoded data accumulated in the buffer 42, and the filter O is controlled by the filter ON / OFF determination unit 56.
If it is determined to be N, this data is output to the SVF 44. When it is determined that the filter is off,
It is directly output to the switch 45.
【0041】前記SVF44では逆量子化器Q-139か
らの入力である逆量子化された変換係数値の水平および
垂直方向のゼロでない最高周波数成分の位置MHPとM
VPを検出し(図2に示す)、MHP,MVPをそれぞ
れパラメータとして水平,垂直方向に複数種用意された
特性の異なるローパスフィルタ(図3に示す)を選択
し、この選択番号をメモリに記録する。但し、無効ブロ
ックに対しては最高周波数成分位置をDC成分として
(MHP=MVP=0)を選択する。In the SVF 44, the positions MHP and M of the highest frequency component in the horizontal and vertical directions of the inversely quantized transform coefficient value which is the input from the inverse quantizer Q -1 39.
VP is detected (shown in FIG. 2), a plurality of low-pass filters (shown in FIG. 3) with different characteristics prepared in the horizontal and vertical directions are selected using MHP and MVP as parameters, and this selection number is recorded in memory. To do. However, for the invalid block, (MHP = MVP = 0) is selected with the highest frequency component position as the DC component.
【0042】次に、バッファ42からスイッチ43を経
由して入力された復号データブロックに対し、前記フィ
ルタの選択番号に従ったローパスフィルタをブロック境
界およびその内部に作用させる。このフィルタ処理が終
った復号データブロックはスイッチ45へ出力され、有
効,無効ブロック判定部35で有効ブロックを判定され
た時のみ加算器46に入力される。この加算器46に
は、フレーム内,間判定部34によりフレーム内符号化
が選択された場合は“0”が、そしてフレーム間符号化
が選択された場合は、前フレームの復号画像がスイッチ
55を制御することで入力される。前記加算器46に入
力されたデータは加算され、現在符号化された画像の復
号画像が生成されてフレームメモリ47の所定の位置の
内容(前フレームの復号画像データ)を書き換えてい
く。また、フレームメモリ53には原画像データがその
まま格納される。Next, for the decoded data block input from the buffer 42 via the switch 43, the low pass filter according to the selection number of the filter is applied to the block boundary and the inside thereof. The decoded data block after this filter processing is output to the switch 45, and is input to the adder 46 only when the valid / invalid block determination unit 35 determines a valid block. In the adder 46, “0” is selected when the intra-frame coding is selected by the intra-frame / inter-frame determining unit 34, and the decoded image of the previous frame is switched by the switch 55 when the inter-frame coding is selected. It is input by controlling. The data input to the adder 46 is added, a decoded image of the currently encoded image is generated, and the contents at a predetermined position of the frame memory 47 (decoded image data of the previous frame) are rewritten. The original image data is stored in the frame memory 53 as it is.
【0043】図7には、動き検出及び、動き補償につい
てのフローチャートを示し、説明する。まず、ME48
には、原画像データとフレームメモリ47に格納されて
いる前フレームの復号画像データが入力され動き検出が
行われる(ステップS1)。動き検出は、原画像データ
がn×m画素ブロック(例えば8×8画素)に対して前
フレーム復号画像データの原画像データブロックと同位
置の周囲±d画素の範囲をサーチエリア(超音波診断画
像に用いる場合は、水平方向±d画素の範囲とする)に
ついて行なう。FIG. 7 shows a flow chart for motion detection and motion compensation, which will be described. First, ME48
Is input with the original image data and the decoded image data of the previous frame stored in the frame memory 47, and motion detection is performed (step S1). For motion detection, the original image data is within a search area (ultrasound diagnosis) within a range of ± d pixels around the same position as the original image data block of the decoded image data of the previous frame with respect to the n × m pixel block (for example, 8 × 8 pixels). When used for an image, the range is ± d pixels in the horizontal direction).
【0044】求める動ベクトルの判定規準は、原画像と
前フレーム復号画像との間の差分絶対値和が最小とな
り、且つ、この差分絶対値和が(動ベクトル0位置での
差分絶対値和)×αより小さい時の位置とし、この条件
を満足しない場合は(NO)、動ベクトル0とする(ス
テップS2,3)。1画素精度以下の位置まで求める時
には前フレーム復号画像より、その位置に対する補間画
像を作成し差分絶対値和を同様に計算する。ここで、図
5に示すように、αは1より大きな定数であり、各ブロ
ックの動ベクトルに対して1ブロックライン内で頻度を
求め、ゼロ以外の最大頻度の動ベクトルをブロックライ
ン内代表動ベクトルとする(ステップS4〜S8)。The criterion for determining the motion vector to be obtained is that the sum of absolute differences between the original image and the decoded image of the previous frame is minimum, and this sum of absolute differences is (sum of absolute differences at position 0 of motion vector). If the condition is not satisfied (NO), the motion vector is set to 0 (step S2, 3). When obtaining a position with an accuracy of one pixel or less, an interpolation image for that position is created from the decoded image of the previous frame, and the sum of absolute differences is calculated in the same manner. Here, as shown in FIG. 5, α is a constant greater than 1, and the frequency is calculated within one block line for the motion vector of each block, and the motion vector with the maximum frequency other than zero is represented in the block line. Vector (steps S4 to S8).
【0045】すなわち、この代表動ベクトルは、MC5
0とMPX部61に出力される。また、差分絶対値和格
納メモリ49には、ME48より出力される動ベクトル
0での差分絶対値和が格納される。That is, this representative motion vector is MC5
0 and output to the MPX unit 61. Further, the difference absolute value sum storage memory 49 stores the difference absolute value sum at the motion vector 0 output from the ME 48.
【0046】さらに、ブロックラインを複数分割(超音
波診断画像に対しては2分割する。)し、この分割ブロ
ックライン毎の動ベクトル頻度を求め(ステップS4〜
S6)、さらに、この頻度分布に対して[−Δ,Δ],
[代表,動ベクトル−Δ,代表動ベクトル+Δ]の範囲
でそれぞれ頻度を再度求め直す。ここで、Δ≦|代表動
ベクトル/2|とした定数であり、[−a,b]は−a
を含み、bを含まない領域を表わす(ステップS9〜S
11)。Further, the block line is divided into a plurality of parts (for ultrasonic diagnostic images, it is divided into two), and the motion vector frequency is calculated for each of the divided block lines (steps S4 to
S6), and for this frequency distribution, [-Δ, Δ],
Recalculate the frequencies in the range of [representative, motion vector −Δ, representative motion vector + Δ]. Here, Δ ≦ | representative motion vector / 2 | is a constant and [-a, b] is -a
Represents an area that includes and does not include b (steps S9 to S
11).
【0047】そして、各分割ブロックライン領域におけ
る前記2つの頻度をHo (n) ,Hmv(n) とする。ここ
で、nは図6に示す分割ブロックラインの位置を表わす
インデックスである(ステップS12)。これらの頻度
が、Ho (n) <Hmv(n) を満足する時に、この分割ブロ
ックライン内の動き補償を許可し、それ以外は禁止す
る。この信号をMC判定部51へ出力する。The two frequencies in each divided block line area are defined as H o (n) and H mv (n). Here, n is an index representing the position of the divided block line shown in FIG. 6 (step S12). When these frequencies satisfy H o (n) <H mv (n), motion compensation in this divided block line is permitted, and the others are prohibited. This signal is output to the MC determination section 51.
【0048】そして前記MC50ではME48からの代
表動ベクトルに従って、フレームメモリ47の前フレー
ム復号画像を読み取り、動き補償予測画像ブロックを生
成しスイッチ52に出力する。また原画像と動き補償予
測画像ブロックとの間で差分絶対値和(MC誤差絶対値
和)を算出し、MC判定部51に出力する。さらに、差
分絶対値和格納メモリ49から同じブロック位置での差
分絶対値和(0)がMC判定部51へ出力される(ステ
ップS13,S14)。Then, the MC 50 reads the previous frame decoded image in the frame memory 47 according to the representative motion vector from the ME 48, generates a motion compensation predicted image block, and outputs it to the switch 52. In addition, the sum of absolute differences (sum of absolute MC errors) between the original image and the motion-compensated prediction image block is calculated and output to the MC determination unit 51. Further, the difference absolute value sum (0) at the same block position is output from the difference absolute value sum storage memory 49 to the MC determination unit 51 (steps S13 and S14).
【0049】前記MC判定部51では、ME48から前
記分割ブロックライン内の動き補償を許可する信号が来
た時のみ、MC誤差絶対値和<差分絶対値和(0)×β
となるブロックを動き補償すると判定し、この動き補償
あり,なしの信号がスイッチ52の制御として、およ
び、フィルタON/OFF判定部56、MPX部61へ
出力される。In the MC determining section 51, only when a signal for permitting motion compensation in the divided block line is received from the ME 48, the sum of MC error absolute values <sum of absolute difference values (0) × β
It is determined that the block to be subjected to the motion compensation is subjected to the motion compensation, and the signal with or without the motion compensation is output to the filter ON / OFF determination unit 56 and the MPX unit 61 as the control of the switch 52.
【0050】前記スイッチ52にはフレームメモリ47
の前フレーム復号画像と、MC50からの動き補償予測
画像とが入力されMC判定部51で動き補償ありと判定
された場合にはMC50からの動き補償予測画像がスイ
ッチ54へ出力され、MC判定部51で動き補償なしと
判定された場合には、フレームメモリ47の前フレーム
復号画像がスイッチ54へ出力される(ステップS1
6,S17)。The switch 52 includes a frame memory 47.
If the previous frame decoded image of the above and the motion compensation prediction image from the MC 50 are input and the MC determination unit 51 determines that there is motion compensation, the motion compensation prediction image from the MC 50 is output to the switch 54, and the MC determination unit If it is determined in step 51 that there is no motion compensation, the previous frame decoded image in the frame memory 47 is output to the switch 54 (step S1).
6, S17).
【0051】そしてスイッチ54のもう一方の入力に
は、フレームメモリ53に格納された前フレームの原画
像データが入り、有効,無効フレーム判定部60からの
制御信号が有効フレーム(前フレームに対して)であっ
た場合は、スイッチ52からの入力が出力され無効フレ
ーム(前フレームに対して)であった場合は、フレーム
メモリ53からの入力が出力される。この出力は、減算
器31及びスイッチ55へ入る(ステップS18,S1
9)。The other input of the switch 54 contains the original image data of the previous frame stored in the frame memory 53, and the control signal from the valid / invalid frame determination unit 60 is a valid frame (for the previous frame). ), The input from the switch 52 is output, and when the frame is an invalid frame (relative to the previous frame), the input from the frame memory 53 is output. This output enters the subtractor 31 and the switch 55 (steps S18 and S1).
9).
【0052】前記フィルタON/OFF判定部56で
は、MC判定部51からの出力が数ブロック分格納でき
るようになっており、格納されている1ブロック前のブ
ロックのMC判定と現ブロックのMC判定との状態が同
じ時には、その2つのブロック境界でフィルタをかける
ようにスイッチ43を制御する。前ブロックのMC判定
と現ブロックのMC判定との状態が異なる場合は、フィ
ルタをかけないようにスイッチ43を制御する。The filter ON / OFF judging unit 56 can store the output from the MC judging unit 51 for several blocks. The MC judgment of the block one block before and the MC judgment of the current block are stored. When the states of and are the same, the switch 43 is controlled so as to filter at the two block boundaries. When the MC determination of the previous block and the MC determination of the current block are different, the switch 43 is controlled so as not to apply the filter.
【0053】またバッファ57は1フレーム分の可変長
符号化データを蓄積し、蓄積された符号のデータ量を有
効,無効フレーム判定部60へ出力する。そしてMPX
部61には、レートコントロール部62からの量子化ス
ケール、有効,無効フレーム判定部60からの有効,無
効フレーム情報、有効,無効ブロック判定部35からの
有効,無効ブロック情報、さらには、スイッチ58を経
由するバッファ57に格納された圧縮データ、そして、
ME48からのブロックライン代表動ベクトル、MC判
定部51からのMCあり,なしブロック情報が入力され
予め決定されたビットストリームシンタックスにこれら
のデータを並べ替えて伝送バッファ63とレートコント
ロール部62へ出力する。The buffer 57 also stores the variable-length coded data for one frame and outputs the data amount of the stored code to the valid / invalid frame determination section 60. And MPX
The unit 61 includes a quantizer scale from the rate control unit 62, valid / invalid frame information from the valid / invalid frame determination unit 60, valid / invalid block information from the valid / invalid block determination unit 35, and a switch 58. Compressed data stored in the buffer 57 via
The block line representative motion vector from the ME 48 and the MC presence / absence block information from the MC determination unit 51 are input, and these data are rearranged in a predetermined bit stream syntax and output to the transmission buffer 63 and the rate control unit 62. To do.
【0054】伝送バッファ63に溜められたビットスト
リームは、一定レートで出力される。また、レートコン
トロール部62では、MPX部61からの出力であるビ
ットストリームの符号量がカウントされ設定ビットレー
ト以下に発生符号量が収まるように次に符号化フレーム
の量子化スケール(量子化ステップ幅)を予測する。こ
の予測は、フレーム内符号化時とフレーム間符号化時で
独立に行なわれる。The bit stream stored in the transmission buffer 63 is output at a constant rate. Further, the rate control unit 62 counts the code amount of the bit stream output from the MPX unit 61, and the quantization scale (quantization step width) of the next encoded frame is adjusted so that the generated code amount falls below the set bit rate. ) Predict. This prediction is performed independently during intraframe coding and interframe coding.
【0055】予測式は次の通り。 Qs (I) =(次フレーム割り当て符号量(I) /現フレー
ム発生符号量(I))1/2×Qs ′(I) Qs (P) =(次フレーム割り当て符号量(P) /現フレー
ム発生符号量(P))1/2×Qs ′(P)The prediction formula is as follows. Q s (I) = (Next frame assigned code amount (I) / Current frame generated code amount (I)) 1/2 × Q s ′ (I) Q s (P) = (Next frame assigned code amount (P) / Current frame generated code amount (P)) 1/2 × Q s ′ (P)
【0056】ここで、Qs ′(I) ,Qs ′(P) は現フレ
ーム内符号化フレーム、現フレーム間符号化フレームで
用いた量子化スケール、Qs (I) ,Qs (P) は次フレー
ム内符号化フレーム、、次フレーム間符号化フレームで
用いる量子化スケールを表わす。Here, Q s ′ (I) and Q s ′ (P) are the quantization scales used in the current intra-frame coded frame and the current inter-frame coded frame, and Q s (I) and Q s (P ) Represents the quantization scale used in the next intra-frame coded frame and the next inter-frame coded frame.
【0057】この量子化スケールが量子化器Q37と逆
量子化器Q-139へ入力され次のフレームに使用する量
子化ステップ幅が生成される。また、この実施例ではS
VF44を作用させるかどうかはスイッチ43で制御し
ていたがフィルタON/OFF判定部56の信号を直
接、SVF44に入力させ、フィルタOFFの時、フィ
ルタの特性を強制的に、図3に示すようなMHP=MV
P=7の状態にすることで同じ効果は得られる。This quantization scale is input to the quantizer Q37 and the inverse quantizer Q -1 39 to generate the quantization step width used for the next frame. Also, in this embodiment, S
Whether or not to operate the VF44 was controlled by the switch 43, but the signal of the filter ON / OFF determination unit 56 is directly input to the SVF44, and when the filter is OFF, the characteristics of the filter are forcibly set as shown in FIG. MHP = MV
The same effect can be obtained by setting P = 7.
【0058】以上の1フレームに対する処理を繰り返し
行なうことで動画像の圧縮を行なう。この実施例によ
り、例えば超音波診断画像で良く見られる水平方向に一
様に移動するグラフ部分の動きを効率的に補償すること
ができ、圧縮効率が向上する。The moving image is compressed by repeating the above-described processing for one frame. According to this embodiment, it is possible to efficiently compensate for the movement of the graph portion that moves uniformly in the horizontal direction, which is often seen in, for example, an ultrasonic diagnostic image, and compression efficiency is improved.
【0059】またSVF44は、ブロック境界がもとも
と不連続である場合(量子化誤差によるものではない)
には、その不連続を消してしまう場合があり、ブロック
単位で独立して動き補償を行なうと、その動き補償予測
誤差のブロック境界は不連続なものとなる可能性が非常
に大であるため、SVFと並用すると逆にブロック境界
での劣化が発生する。この欠点をブロックライン代表動
ベクトル、および分割ブロックライン内での動き補償許
可禁止判定、さらにはブロックの動き補償状態(あり/
なし)が異なる隣接ブロック境界では、フィルタを作用
させないという処理を行なうことで、前述した問題点を
大幅に減少させることができる。In the SVF 44, the block boundary is originally discontinuous (not due to quantization error).
, The discontinuity may be erased, and if motion compensation is independently performed in block units, the block boundary of the motion compensation prediction error is very likely to be discontinuous. , SVF also causes deterioration at block boundaries. This defect is caused by the block line representative motion vector, the motion compensation permission / prohibition determination in the divided block line, and the motion compensation state of the block
At the boundary of adjacent blocks with different (none), the above-mentioned problem can be greatly reduced by performing the process of not applying the filter.
【0060】なお、この実施例では、有効無効ブロック
判定と動き補償予測あり・なし判定を別々の構成で行っ
ているが、有効無効ブロック判定部35及びブロック内
差分絶対値和算出部59の機能をMC判定部51にもた
せることも可能である。その場合、MC判定部51で
は、さらに有効無効ブロック情報とブロック内差分絶対
値和の出力がなされることになる。In this embodiment, the valid / invalid block determination and the motion compensation prediction presence / absence determination are performed separately, but the functions of the valid / invalid block determination unit 35 and the intra-block difference absolute value sum calculation unit 59 are provided. It is also possible to cause the MC determination unit 51 to carry. In that case, the MC determination unit 51 further outputs the valid / invalid block information and the intra-block difference absolute value sum.
【0061】次に図8には、本発明による第3実施例と
しての動画像符号化装置の構成を示し説明する。この動
画像符号化装置においては、入力原画像がバッファ70
に書き込まれ所定時間経過後、ブロック単位(例えば8
×8画素)で直接及び、減算器71を経由して、スイッ
チ72に差分データの形で入力される。Next, FIG. 8 shows a configuration of a moving picture coding apparatus as a third embodiment according to the present invention and will be described. In this moving image encoding apparatus, the input original image is stored in the buffer 70.
Is written in a block, and after a predetermined time has passed,
X8 pixels), and is input to the switch 72 in the form of difference data via the subtractor 71.
【0062】前記減算器71には、もう1つの入力とし
てスイッチ92を経由した前フレームの復号画像ブロッ
ク若しくは前フレームの入力原画像ブロック若しくはこ
れらの画像を参照画像とした動き補償予測画像ブロック
が入り差分データが算出される。この差分データは、ブ
ロック内差分絶対値和算出99とスイッチ72へ出力さ
れる。The subtractor 71 receives, as another input, the decoded image block of the previous frame or the input original image block of the previous frame via the switch 92 or the motion-compensated prediction image block using these images as reference images. Difference data is calculated. The difference data is output to the block difference absolute value sum calculation 99 and the switch 72.
【0063】次にフレーム内,間判定部74では予め決
められた期間(例えば1/2時間)の最初のフレーム若
しくは、有効,無効フレーム判定部100からの信号が
無効フレームを意味している場合に、フレーム内符号化
を行なうようスイッチ72から入力原画像ブロックが出
力されるように制御し、それ以外では減算器71からの
差分データブロックがスイッチ72から出力されるよう
に制御する。Next, in the in-frame / inter-frame determination section 74, when the first frame of a predetermined period (for example, 1/2 hour) or the signal from the valid / invalid frame determination section 100 means an invalid frame The input original image block is controlled to be output from the switch 72 so that the intra-frame encoding is performed, and the difference data block from the subtracter 71 is controlled to be output from the switch 72 in other cases.
【0064】そして、ブロック内差分絶対値和算出99
では、入力された差分データの絶対値和が算出され、こ
のブロック内差分絶対値和が有効,無効ブロック判定部
75さらに有効,無効フレーム判定部100へ出力され
る。また、ブロック内差分絶対値の最大値が有効,無効
ブロック判定部75へ出力される。前記有効,無効ブロ
ック判定部75では、入力されたブロック内差分絶対値
和とブロック内最大差分絶対値が、それぞれ闘値1及び
闘値2と比較される。Then, the sum of absolute differences between blocks is calculated 99
Then, the absolute value sum of the input difference data is calculated, and this in-block difference absolute value sum is output to the valid / invalid block determination unit 75 and the valid / invalid frame determination unit 100. Further, the maximum absolute value of the difference within the block is output to the valid / invalid block determination unit 75. In the valid / invalid block determination unit 75, the input sum of absolute differences in block and maximum absolute difference in block are compared with the threshold 1 and the threshold 2, respectively.
【0065】すなわち、ブロック内差分絶対値和>闘値
1、あるいは、ブロック内最大差分絶対値>闘値2の時
にスイッチ72の出力がDCT76に入力されるよう
に、スイッチ73を切換えて、前記条件以外の時には、
スイッチ72の出力がDCT76に入力されないように
スイッチ73を切換える。That is, the switch 73 is switched so that the output of the switch 72 is input to the DCT 76 when the sum of absolute differences in block> tolerance 1 or the maximum absolute difference in block> tolerance 2 is set. At times other than the conditions,
The switch 73 is switched so that the output of the switch 72 is not input to the DCT 76.
【0066】また有効,無効フレーム判定部100は、
ブロック内差分絶対値和を1フレーム分加算し、このフ
レーム内差分絶対値和が予め設定された闘値3以上の
時、若しくは入力時バッファ97に格納された符号量が
闘値4以上の時、さらにレートコントロール部102よ
り伝送バッファ103がオーバーフローすると判定され
た時に無効フレームとしてスイッチ98を切り離すよう
に制御し、それ以外の時にはスイッチ98を接続するよ
うに制御する。Further, the valid / invalid frame determining section 100 is
When the sum of absolute differences between blocks is added for one frame and the sum of absolute differences between frames is equal to or greater than a preset threshold value 3 or when the code amount stored in the input buffer 97 is equal to or greater than 4 threshold values. Further, when the rate control unit 102 determines that the transmission buffer 103 overflows, the switch 98 is controlled to be disconnected as an invalid frame, and in other cases, the switch 98 is controlled to be connected.
【0067】また、前記有効,無効ブロック判定部75
で判定されたブロックが、有効ブロックか無効ブロック
かというブロック当り1ビットの情報をMPX部101
へ出力する。さらに有効,無効フレーム判定部100で
は判定された有効フレームか無効フレームかというフレ
ーム当り1ビットの情報をMPX部101へ出力する。Further, the valid / invalid block judging section 75
The MPX unit 101 provides 1-bit information per block indicating whether the block determined by
Output to. Further, the valid / invalid frame determination unit 100 outputs 1-bit information per frame, which is the determined valid frame or invalid frame, to the MPX unit 101.
【0068】そしてスイッチ73の出力である8×8画
素の原画像、若しくはフレーム間予測誤差画像(前記差
分データ)は、DCT76に入力され、離散コサイン変
換が行われ、量子化器Q77に入力される。この量子化
器Q77にはフレーム内,間判定部74での判定(フレ
ーム内符号化とするかフレーム間符号化とするか)によ
り量子化テーブル80に予め記憶された2種類の量子化
マトリックス(各変換係数に対する重みをマトリックス
状に配列したもの)を選択し、入力され、さらにレート
コントロール部102からの量子化スケールが入力され
る。前記量子化マトリックスに前記量子化スケールを乗
算し、各変換係数の量子化ステップ幅を算出し、この量
子化ステップ幅を用いて、前記DCT76の出力である
変換係数を量子化する。The 8 × 8 pixel original image output from the switch 73 or the inter-frame prediction error image (the difference data) is input to the DCT 76, subjected to discrete cosine transform, and input to the quantizer Q77. It The quantizer Q77 has two types of quantization matrices (previously stored in the quantization table 80 according to the determination by the intra-frame / inter-frame determination unit 74 (whether intraframe coding or interframe coding is performed)). Weights for each transform coefficient are arranged in a matrix) are selected and input, and the quantization scale from the rate control unit 102 is also input. The quantization matrix is multiplied by the quantization scale, the quantization step width of each transform coefficient is calculated, and the transform coefficient which is the output of the DCT 76 is quantized using this quantization step width.
【0069】量子化された変換係数は可変長符号化器V
LC78と逆量子化器Q-179に入力される。この可変
長符号化器VLC78では変換係数のDC成分に対し
て、前ブロックとの差分値に対応するハフマン符号がバ
ッファ97へ出力され、またAC成分に対しては、低周
波成分から高周波成分に向けてジグザグスキャンを行な
い1次元化したデータに対し、ゼロランとその直後のゼ
ロでない値に対する2次元ハフマン符号がバッファ97
へ出力される。さらにブロックの最後までゼロが続いた
時点でEOB(End of Block)符号をバッ
ファ97へ出力する。The quantized transform coefficient is the variable length encoder V
It is input to the LC 78 and the inverse quantizer Q -1 79. In the variable length encoder VLC78, the Huffman code corresponding to the difference value from the previous block is output to the buffer 97 for the DC component of the transform coefficient, and the AC component is changed from the low frequency component to the high frequency component. For one-dimensionalized data by performing zigzag scanning toward the two-dimensional Huffman code for zero run and non-zero value immediately after that, the buffer 97
Is output to. Further, when zero continues to the end of the block, an EOB (End of Block) code is output to the buffer 97.
【0070】また逆量子化器Q-179では、量子化器Q
77と同じ量子化マトリックス及び量子化スケールが入
力され、逆量子化を行った変換係数を生成し、IDCT
81及びSVF(Space Valiant Fil
ter)84に出力する。前記IDCT81では、入力
された前記変換係数を逆離散コサイン変換し、復号デー
タブロックが生成される。このデータはバッファ82に
設定ブロック数分蓄える。この設定ブロック数とはSV
F84で必要なブロックデータ数のことである。例え
ば、SVF84で、水平方向のみのフィルタリングを行
なう場合は水平方向に連続3ブロックの蓄積で良く、水
平,垂直方向のフィルタリングを行なう場合は2ブロッ
クライン+1ブロック分の蓄積を必要とする。有効,無
効ブロック判定部75から無効ブロックという記号が送
られてきた場合は、そのブロック位置には0をブロック
画素数分格納する。In the inverse quantizer Q -1 79, the quantizer Q
The same quantization matrix and quantization scale as in 77 are input, and inversely quantized transform coefficients are generated, and IDCT
81 and SVF (Space Variant Fil)
ter) 84. In the IDCT 81, the input transform coefficient is inverse discrete cosine transformed to generate a decoded data block. This data is stored in the buffer 82 for the set number of blocks. This set block number is SV
It is the number of block data required in F84. For example, when the SVF 84 filters only in the horizontal direction, it is sufficient to store 3 consecutive blocks in the horizontal direction, and when filtering in the horizontal and vertical directions, it is necessary to store 2 block lines + 1 block. When the valid / invalid block determination unit 75 sends a symbol of invalid block, 0 is stored in the block position for the number of block pixels.
【0071】そしてバッファ82に蓄積された復号デー
タから、処理ブロックがスイッチ83に入力され、フィ
ルタON/OFF判定部96の制御によりフィルタON
と判定された場合にはSVF84にこのデータが出力さ
れる。またフィルタOFFと判定された場合には、スイ
ッチ85に直接出力される。Then, the processing block is input to the switch 83 from the decoded data accumulated in the buffer 82, and the filter is turned on by the control of the filter ON / OFF determination unit 96.
If it is determined that this is the case, this data is output to the SVF 84. If it is determined that the filter is off, the output is directly output to the switch 85.
【0072】SVF84では逆量子化器Q-179からの
入力である逆量子化された変換係数値の水平方向及び垂
直方向のゼロでない最高周波数成分位置MHPとMVP
を検出し(図2に示す)、MHP,MVPをそれぞれパ
ラメータとして水平,垂直方向に複数種用意された特性
の異なるローパスフィルタ(図3に示す)を選択し、こ
の選択番号をメモリ(図示せず)に記憶する。In the SVF 84, the non-zero highest frequency component positions MHP and MVP in the horizontal and vertical directions of the inversely quantized transform coefficient value which is the input from the inverse quantizer Q -1 79.
Is detected (shown in FIG. 2), a plurality of low-pass filters (shown in FIG. 3) having different characteristics are selected in the horizontal and vertical directions using MHP and MVP as parameters, and this selection number is stored in a memory (not shown). )).
【0073】また、無効ブロックに対しては、最高周波
数成分位置をDC成分としてフィルタを選択する。バッ
ファ82からスイッチ83を経由して入力された復号デ
ータブロックに対し、前記フィルタの選択番号に従った
ローパスフィルタをブロック境界及びその内部に作用さ
せる。ここで、ブロック境界とブロック内部の画素に対
して使用するフィルタ特性を変更してもよいことは勿論
である。。For the invalid block, the filter is selected with the highest frequency component position as the DC component. For the decoded data block input from the buffer 82 via the switch 83, the low-pass filter according to the selection number of the filter is applied to the block boundary and the inside thereof. Here, it goes without saying that the filter characteristics used for the block boundary and the pixels inside the block may be changed. .
【0074】このフィルタ処理が終った復号データブロ
ックは、スイッチ85へ出力され、有効,無効ブロック
判定部75で有効ブロックと判定された時のみ加算器8
6に入力される。この加算器86には、フレーム内,間
判定部74によりフレーム内符号化が選択された場合は
ゼロが、そしてフレーム間符号化が選択された場合は、
前フレームのフレーム間予測された復号画像がスイッチ
95を制御することで入力される。前記加算器86に入
力されたデータは加算され、現在符号化された画像の復
号画像が生成されてフレームメモリ87の所定の位置の
内容(前フレームの復号画像データ)を書き換えてい
く。また、フレームメモリ93には原画像データがその
まま格納される。The decoded data block for which this filter processing has been completed is output to the switch 85, and the adder 8 is provided only when the valid / invalid block determination unit 75 determines that the block is a valid block.
6 is input. In the adder 86, zero is selected when intraframe coding is selected by the intraframe / interframe determination unit 74, and when interframe coding is selected,
The decoded image predicted between frames of the previous frame is input by controlling the switch 95. The data input to the adder 86 are added, a decoded image of the currently encoded image is generated, and the contents at a predetermined position of the frame memory 87 (decoded image data of the previous frame) are rewritten. The original image data is stored in the frame memory 93 as it is.
【0075】これらのフレームメモリ87及び93に格
納されたデータは、スイッチ94を介して出力される。
このスイッチ94の制御は、有効,無効フレーム判定部
100が無効フレームと判定された時に、フレームメモ
リ93と接続するようにし、有効フレームと判定された
時にフレームメモリ87と接続するようにする。このス
イッチ94の出力はスイッチ92,ME88,MC90
に入力される。The data stored in the frame memories 87 and 93 is output via the switch 94.
The control of the switch 94 is such that the valid / invalid frame determination unit 100 is connected to the frame memory 93 when it is determined to be an invalid frame, and is connected to the frame memory 87 when it is determined to be a valid frame. The output of this switch 94 is the switch 92, ME88, MC90.
Entered in.
【0076】前記ME88には、入力原画像データとス
イッチ94の出力であるフレームメモリ87若しくはフ
レームメモリ93に格納された前フレーム復号画像若し
くは前フレーム入力原画像とが入力されて動き検出が行
われる。ここで動き検出は、原画像データがn×m画素
ブロック(例えば8×8画素)に対して、前フレーム復
号画像データ、若しくは前フレームの原画像データの原
画像データブロックと同位置の周囲±d画素の範囲をサ
ーチエリア(超音波診断画像に用いる場合は水平方向±
d画素の範囲とする。)について行なう。The ME 88 receives the input original image data and the previous frame decoded image or the previous frame input original image stored in the frame memory 87 or the frame memory 93, which is the output of the switch 94, and performs motion detection. . Here, in the motion detection, with respect to the n × m pixel block (for example, 8 × 8 pixels) of the original image data, the decoded image data of the previous frame or the surrounding image of the same position as the original image data block of the original image data of the previous frame is determined. The range of d pixels is the search area (horizontal direction ± when used for ultrasonic diagnostic images.
The range is d pixels. ) About.
【0077】そして、求める動ベクトルの判定規準は原
画像と前フレーム復号画像との間の差分絶対値和が最小
となり、且つ、この差分絶対値和が(動ベクトル0位置
での差分絶対値和)×αより小さい時の位置とし、この
条件を満足しない場合は動ベクトル0とする。ここで、
αは定数である。また、1画素精度以下位置まで求める
時には、前フレーム復号画像あるいは前フレーム原画像
で、その位置に対する補間画像を作成し、差分絶対値和
を同様に計算する。The criterion for determining the motion vector to be obtained is that the sum of absolute differences between the original image and the decoded image of the previous frame is minimum, and this sum of absolute differences is (sum of absolute differences at position 0 of motion vector). ) × α, and the motion vector is 0 if this condition is not satisfied. here,
α is a constant. Further, when obtaining up to a position of one pixel precision or less, an interpolation image for the position is created from the decoded image of the previous frame or the original image of the previous frame, and the sum of absolute differences is calculated in the same manner.
【0078】さらに各ブロックの動ベクトルに対して1
ブロックライン内で頻度を求め、ゼロ以外の最大頻度の
動ベクトルをブロックライン内代表動ベクトルとする
(図5に示す)。この代表動ベクトルは、MC90とM
PX部101に出力される。また、差分絶対値和格納メ
モリ89には、ME88より出力される動ベクトル0で
の差分絶対値和が格納される。Furthermore, 1 is set for the motion vector of each block.
The frequency is calculated in the block line, and the motion vector having the maximum frequency other than zero is set as the representative motion vector in the block line (shown in FIG. 5). This representative motion vector is MC90 and M
It is output to the PX unit 101. Further, the difference absolute value sum storage memory 89 stores the difference absolute value sum at the motion vector 0 output from the ME 88.
【0079】次に、前記ブロックラインを複数分割(た
だし、超音波診断画像に対しては2分割する。)し、こ
の分割ブロックライン毎の動ベクトル頻度を求め、さら
に、この頻度分布に対して[−Δ,Δ],[代表,動ベ
クトル−Δ,代表動ベクトル+Δ]の範囲でそれぞれ頻
度を再度求め直す。ここで、Δ≦|代表動ベクトル/2
|とした定数で、[−a,b]は−aを含み、bを含ま
ない領域を表わす。Next, the block line is divided into a plurality of parts (however, the ultrasonic diagnosis image is divided into two), the motion vector frequency is obtained for each of the divided block lines, and the frequency distribution is further calculated. Recalculate the frequency again within the range of [−Δ, Δ], [representative, motion vector −Δ, representative motion vector + Δ]. Where Δ ≦ | representative motion vector / 2
Is a constant defined as |, and [-a, b] represents a region that includes -a and does not include b.
【0080】前記各分割ブロックライン領域のこの2つ
の頻度をHo (n) ,Hmv(n) とする。ここでnは分割ブ
ロックラインの位置を表わすインデックス(図5に示
す)。これらの頻度がHo (n) <Hmv(n) を満足する時
にこの分割ブロックライン内の動き補償を許可し、それ
以外は禁止する。この信号をMC判定部91へ出力す
る。These two frequencies of each divided block line area are defined as H o (n) and H mv (n). Here, n is an index indicating the position of the divided block line (shown in FIG. 5). When these frequencies satisfy H o (n) <H mv (n), motion compensation in this divided block line is permitted, and the others are prohibited. This signal is output to the MC determination unit 91.
【0081】前記MC90では、ME88からの代表動
ベクトルに従って、フレームメモリ87の前フレーム復
号画像、若しくはフレームメモリ93の前フレーム入力
原画像を読み取り、動き補償予測画像ブロックを生成し
スイッチ92に出力する。また、原画像と動き補償予測
画像ブロックとの間で差分絶対値和(MC誤差絶対値
和)を算出しMC判定部91に出力する。さらに、差分
絶対値和格納メモリ89から同じブロック位置での差分
絶対値和(0)がMC判定部91へ出力される。In the MC 90, according to the representative motion vector from the ME 88, the previous frame decoded image in the frame memory 87 or the previous frame input original image in the frame memory 93 is read, a motion compensation prediction image block is generated and output to the switch 92. . Also, the sum of absolute differences (MC error absolute sum) is calculated between the original image and the motion-compensated prediction image block, and is output to the MC determination unit 91. Further, the sum of absolute difference values (0) at the same block position is output from the sum of absolute difference value storage memory 89 to the MC determination unit 91.
【0082】前記MC判定部91では、ME88からの
前記分割ブロックライン内の動き補償を許可する信号が
来た時のみ、MC誤差絶対値和<差分絶対値和(0)×
βとなるブロックを動き補償すると判定し、この動き補
償あり,なしの信号がスイッチ92を制御し、及びフィ
ルタON/OFF判定部96、MPX部101へ出力さ
れる。ここでβは定数である。In the MC judgment section 91, only when a signal from the ME 88 for permitting motion compensation in the divided block line is received, the sum of MC error absolute values <sum of difference absolute values (0) ×
It is determined that the block to be β is subjected to motion compensation, and the signals with and without motion compensation control the switch 92 and are output to the filter ON / OFF determination unit 96 and the MPX unit 101. Where β is a constant.
【0083】前記スイッチ92には、スイッチ94から
出力されるフレームメモリ87の前フレーム復号画像、
またはフレームメモリ93の前フレーム入力原画像と、
MC90からの動き補償予測画像とが入力され、MC判
定部91で動き補償ありと判定された場合には、MC9
0からの動き補償予測画像が減算器71とスイッチ95
へ出力され、動き保証なしと判定された場合は、スイッ
チ94の出力が減算器71とスイッチ95へ出力され
る。The switch 92 has the previous frame decoded image of the frame memory 87 output from the switch 94,
Or the previous frame input original image of the frame memory 93,
When the motion compensation prediction image from the MC 90 is input and the MC determination unit 91 determines that there is motion compensation, the MC 9
The motion compensation prediction image from 0 is the subtractor 71 and the switch 95.
When it is determined that there is no motion guarantee, the output of the switch 94 is output to the subtractor 71 and the switch 95.
【0084】次にフィルタON/OFF判定部96で
は、MC判定部91からの出力が数ブロック分格納でき
るようになっており、格納されている1ブロック前のブ
ロックのMC判定と現ブロックのMC判定との状態が同
じ時には、その2つのブロック境界でフィルタをかける
ようにスイッチ83を切換える。前ブロックのMC判定
と現ブロックのMC判定との状態が異なる場合は、フィ
ルタをかけないようにスイッチ83を切換える。Next, the filter ON / OFF judgment unit 96 can store the output from the MC judgment unit 91 for several blocks. The MC judgment of the block one block before and the MC of the current block are stored. When the condition is the same as the judgment, the switch 83 is switched so as to filter at the boundary between the two blocks. When the MC determination of the previous block and the MC determination of the current block are different, the switch 83 is switched so as not to apply the filter.
【0085】またバッファ97は1フレーム分の可変長
符号化データを蓄積し、蓄積された符号のデータ量を有
効,無効フレーム判定部100へ出力する。次にMPX
部101には、レートコントロール部102からの量子
化スケール、有効,無効フレーム判定部75からの有
効,無効ブロック情報、さらには、スイッチ98を経由
するバッファ97に格納された圧縮データ、そして、M
E88からのブロックライン代表動ベクトル、MC判定
部91からのMCであり,なしブロック情報が入力され
予め決定されたビットストリームシンタックスにこれら
のデータを並べ換えて伝送バッファ103とレートコン
トロール部102へ出力する。The buffer 97 also stores the variable-length coded data for one frame and outputs the data amount of the stored code to the valid / invalid frame determination section 100. Next MPX
In the unit 101, the quantization scale from the rate control unit 102, the valid / invalid block information from the valid / invalid frame determination unit 75, the compressed data stored in the buffer 97 via the switch 98, and M
The block line representative motion vector from E88 and the MC from the MC determination unit 91. None block information is input and these data are rearranged in a predetermined bit stream syntax and output to the transmission buffer 103 and the rate control unit 102. To do.
【0086】前記伝送バッファ103に蓄積されたビッ
トストリームは、一定レートで出力される。また、レー
トコントロール部102では、MPX部101からの出
力であるビットストリームの符号量がカウントされ、設
定ビットレート以下に発生符号量が収まるように次に符
号化フレームの量子化スケールを予測する。この予測
は、フレーム内符号化時とフレーム間符号化時で独立に
行なわれる。The bit stream accumulated in the transmission buffer 103 is output at a constant rate. Further, the rate control unit 102 counts the code amount of the bit stream output from the MPX unit 101, and predicts the quantization scale of the encoded frame next so that the generated code amount falls within the set bit rate. This prediction is performed independently during intraframe coding and interframe coding.
【0087】予測式は次の通り。 Qs (I) =(次フレーム割り当て符号量(I) /現フレー
ム発生符号量(I))1/2×Qs ′(I) Qs (P) =(次フレーム割り当て符号量(P) /現フレー
ム発生符号量(P))1/2×Qs ′(P)The prediction formula is as follows. Q s (I) = (Next frame assigned code amount (I) / Current frame generated code amount (I)) 1/2 × Q s ′ (I) Q s (P) = (Next frame assigned code amount (P) / Current frame generated code amount (P)) 1/2 × Q s ′ (P)
【0088】ここで、Qs ′(I) ,Qs ′(P) は現フレ
ーム内符号化フレーム、現フレーム間符号化フレームで
用いた量子化スケール、Qs (I) ,Qs (P) は次フレー
ム内符号化フレーム、、次フレーム間符号化フレームで
用いる量子化スケールを表わす。Here, Q s ′ (I) and Q s ′ (P) are the quantization scales used in the current intra-frame coded frame and the current inter-frame coded frame, and Q s (I) and Q s (P ) Represents the quantization scale used in the next intra-frame coded frame and the next inter-frame coded frame.
【0089】この量子化スケールが量子化器Q77と逆
量子化器Q-179へ入力され、次のフレームに使用する
量子化ステップ幅が生成される。以上の1フレームに対
する処理を繰り返し行なうことで動画像の圧縮を行な
う。この実施例では無効フレーム直後若しくは一定時間
周期で発生するフレーム内符号化時に前フレーム入力原
画像と現フレーム入力画像との間で動き補償予測を行な
うため、動領域の大きな画像の場合でもこのフレーム間
差分絶対値を(つまりは動き補間予測誤差絶対値和)が
大きくなってしまうことを防止できるという効果を有
し、不意に無効フレームとなるのを防ぐことができる。This quantization scale is input to the quantizer Q77 and the inverse quantizer Q -1 79, and the quantization step width used for the next frame is generated. The moving image is compressed by repeating the above processing for one frame. In this embodiment, since motion compensation prediction is performed between the input original image of the previous frame and the input image of the current frame immediately after the invalid frame or at the time of intra-frame encoding that occurs at a constant time period, this frame is used even in the case of an image having a large moving area. This has the effect of preventing the absolute value of the inter-difference difference (that is, the sum of the absolute values of the motion interpolation prediction errors) from increasing, and prevents the frame from becoming an invalid frame unexpectedly.
【0090】次に図9には、本発明による第4実施例と
しての動画像符号化装置の構成を示し説明する。ここ
で、第4実施例は、第3実施例の構成に似ており、特徴
部分のみを説明する。この動画像符号化装置において、
バッファ132に蓄えられたIDCT131から出力さ
れた復号データがフィルタON/OFF判定部146に
よりフィルタONと判定された時にスイッチ133を介
してSVF134へ入力される。Next, FIG. 9 shows the configuration of a moving picture coding apparatus as a fourth embodiment according to the present invention. Here, the fourth embodiment is similar to the configuration of the third embodiment, and only the characteristic part will be described. In this video encoding device,
The decoded data output from the IDCT 131 stored in the buffer 132 is input to the SVF 134 via the switch 133 when the filter ON / OFF determination unit 146 determines that the filter is ON.
【0091】また、SVF134では逆量子化器Q-11
29からの出力である変換係数とME138からの出力
である動ベクトルとMC判定部141からの出力である
動き補償ON/OFF情報が入力される。Further, in the SVF 134, the inverse quantizer Q -1 1
The conversion coefficient output from 29, the motion vector output from the ME 138, and the motion compensation ON / OFF information output from the MC determination unit 141 are input.
【0092】前記SVF134では、まず逆量子化器Q
-1129からの出力である変換係数の水平及び垂直方向
のゼロでない最高周波数MHPとMVP(図2に示す)
を算出する。このMHP及びMVPをパラメータとして
復号データに作用させるローパスフィルタを複数種類の
中から選択する(図3に示す)。つまり、MHPが大き
い(最高周波数が高い)場合には、水平方向の周波数帯
域の広いローパスフィルタを選択し、その逆にMHPが
小さい(最高周波数が低い)場合には水平方向の周波数
帯域の狭いローパスフィルタを選択する。In the SVF134, first, the inverse quantizer Q
-1 Maximum non-zero frequencies MHP and MVP in the horizontal and vertical directions of the transform coefficient output from 129 (shown in FIG. 2)
To calculate. A low-pass filter that acts on the decoded data using the MHP and MVP as parameters is selected from a plurality of types (shown in FIG. 3). That is, when the MHP is large (the maximum frequency is high), a low-pass filter having a wide horizontal frequency band is selected, and conversely, when the MHP is small (the maximum frequency is low), the horizontal frequency band is narrow. Select a low pass filter.
【0093】前記MVPに対しては、垂直方向に同様に
選択する。さらに、ME138からの動ベクトルの大き
さにより前記選択したローパスフィルタよりも周波数帯
域の狭いフィルタの選択を行なうかどうかを判定する。
これは、動き補償されるブロックの動ベクトルの絶対値
が闘値Xよりも大きい場合には選択されたフィルタより
も周波数帯域の狭いローパスフィルタに切り換える(こ
れは水平、垂直共に同様な処理を行なう)。The MVPs are similarly selected in the vertical direction. Further, it is determined whether to select a filter having a narrower frequency band than the selected low pass filter based on the magnitude of the motion vector from the ME 138.
When the absolute value of the motion vector of the block to be motion-compensated is larger than the threshold value X, it is switched to a low-pass filter having a narrower frequency band than the selected filter (this performs the same processing both horizontally and vertically). ).
【0094】これにより、より大きな符号化歪の発生す
る動き量の大きなブロックに対してより大きな帯域制限
を得ることで歪を減少させられる。また、動き量の大き
な部分は多少ボケが多くても目立ちにくいという特性を
利用している。以上説明したように、本実施例の動画像
符号化装置によれば、ブロック歪みを助長させると判定
された場合には、ブロック境界(ブロックライン)に
は、フィルタを掛けずに、生じた歪みをさらに悪化させ
ることがない。As a result, the distortion can be reduced by obtaining a larger band limitation for a block having a large amount of motion in which a larger coding distortion occurs. Moreover, the characteristic that a portion with a large amount of movement is less noticeable even if there is a little blur is used. As described above, according to the moving picture coding apparatus of the present embodiment, when it is determined that the block distortion is promoted, the block boundary (block line) is not filtered and the generated distortion is generated. Does not get worse.
【0095】また、動き補償による予測画像のブロック
境界の多くを連続なものにするための動き補償が実現さ
れ、逆直交変換直後にローパスフィルタを掛けられるブ
ロック境界を大幅に増やし、符号化に伴うブロック歪み
を減少させることができる。そして、大きな動ベクトル
で動き補償されたブロック境界では、フィルタ特性をよ
り暈す方向に処理し、歪みを抑制する。なお、、動き量
が大きいと多少ぼけが増加しても、視覚上の問題は少な
い。Further, motion compensation is realized by motion compensation to make many of the block boundaries of the predicted image continuous, and the number of block boundaries that can be low-pass filtered immediately after the inverse orthogonal transform is greatly increased. Block distortion can be reduced. Then, at the block boundary that has been motion-compensated with a large motion vector, the filter characteristic is processed in a direction that further impairs the distortion. It should be noted that if the amount of movement is large, even if the blurring increases a little, there are few visual problems.
【0096】さらに、無効フレーム直後の有効,無効フ
レーム判定の参照画像を前フレーム原画像の動き補償予
測画像としたため、大きな動きに対して、差分誤差を小
さくでき、不用意に無効フレームと判定されることを防
止できる。従って、本発明の動画像符号化装置は、ブロ
ック歪の発生を押え、効率の良い圧縮を行なう。また本
発明は、前述した実施例に限定されるものではなく、他
にも発明の要旨を逸脱しない範囲で種々の変形や応用が
可能であることは勿論である。Furthermore, since the reference image for valid / invalid frame determination immediately after the invalid frame is the motion-compensated predicted image of the original image of the previous frame, the difference error can be reduced for a large motion, and it is inadvertently determined to be an invalid frame. Can be prevented. Therefore, the moving picture coding apparatus of the present invention suppresses the occurrence of block distortion and performs efficient compression. Further, the present invention is not limited to the above-described embodiments, and it goes without saying that various modifications and applications can be made without departing from the scope of the invention.
【0097】[0097]
【発明の効果】以上詳述したように本発明によれば、ブ
ロック歪が顕著に現れる画像に対してもブロック歪の発
生を抑制する動画像符号化装置を提供することができ
る。As described in detail above, according to the present invention, it is possible to provide a moving picture coding apparatus that suppresses the occurrence of block distortion even in an image in which block distortion is prominent.
【図1】本発明による第1実施例としての動画像符号化
装置の構成を示す図である。FIG. 1 is a diagram showing a configuration of a moving picture coding apparatus as a first embodiment according to the present invention.
【図2】逆量子化された変換係数値の最高周波数成分の
位置MHPとMVPの関係を示す図である。FIG. 2 is a diagram showing the relationship between the positions MHP and MVP of the highest frequency component of the inversely quantized transform coefficient value.
【図3】ローパスフィルタのフィルタ特性を示す図であ
る。FIG. 3 is a diagram showing filter characteristics of a low-pass filter.
【図4】本発明による第2実施例としての動画像符号化
装置の構成を示す図である。FIG. 4 is a diagram showing a configuration of a moving picture coding apparatus as a second embodiment according to the present invention.
【図5】ブロックライン内で頻度と動ベクトルとの関係
を示す図である。FIG. 5 is a diagram showing a relationship between a frequency and a motion vector within a block line.
【図6】2分割のブロックライン内で頻度と動ベクトル
との関係を示す図である。FIG. 6 is a diagram showing a relationship between a frequency and a motion vector within a block line divided into two.
【図7】動き検出及び、動き補償について説明するため
のフローチャートである。FIG. 7 is a flowchart for explaining motion detection and motion compensation.
【図8】本発明による第3実施例としての動画像符号化
装置の構成を示す図である。FIG. 8 is a diagram showing the structure of a moving picture coding apparatus as a third embodiment according to the present invention.
【図9】本発明による第4実施例としての動画像符号化
装置の構成を示す図である。FIG. 9 is a diagram showing the structure of a moving picture coding apparatus as a fourth embodiment according to the present invention.
1…減算器、2,3,13,17,18,21…スイッ
チ、4…フレーム内,間判定部、5…有効,無効ブロッ
ク判定部、6…DCT、7…量子化器Q、8…可変長符
号化器VLC、9…逆量子化器Q-1、10…量子化テー
ブル、11…IDCT、12…SVF(Space V
aliant Filter)、14…加算器、15,
16…フレームメモリ、19…バッファ、20…ブロッ
ク内差分絶対値和算出部、22…有効,無効フレーム判
定部、23…MPX部、24…レートコントロール部、
25…伝送バッファ。DESCRIPTION OF SYMBOLS 1 ... Subtractor, 2, 3, 13, 17, 18, 21 ... Switch, 4 ... In-frame inter-frame determination section, 5 ... Valid / invalid block determination section, 6 ... DCT, 7 ... Quantizer Q, 8 ... Variable-length encoder VLC, 9 ... Inverse quantizer Q -1 , 10 ... Quantization table, 11 ... IDCT, 12 ... SVF (Space V)
aliant filter), 14 ... Adder, 15,
16 ... Frame memory, 19 ... Buffer, 20 ... In-block difference absolute value sum calculation unit, 22 ... Valid / invalid frame determination unit, 23 ... MPX unit, 24 ... Rate control unit,
25 ... Transmission buffer.
Claims (5)
に対して、現フレーム入力画像と前フレーム復号画像と
の間で予測を行ない、画像ごとに減算しフレーム間予測
誤差信号を生成する手段と、予測誤差信号あるいは入力
画像信号をn×m画素のブロックに分割し、ブロック単
位に直交変換を行ない変換係数を量子化して可変長符号
化を行なう手段と、量子化された変換係数を逆量子化し
逆直交変換を行ない、前フレーム復号画像からの予測画
像と加算し、現フレーム復号画像を生成する手段を具備
する動画像符号化装置において、 前記各ブロック毎の変換係数または、この変換係数に係
る情報をパラメータとして、複数種のローパスフィルタ
の中から1つのフィルタを選択するフィルタ選択手段
と、 前記選択手段により選択されたフィルタを逆直交変換を
施した後の信号に掛けるフィルタリング手段と、を具備
することを特徴とする動画像符号化装置。1. An input image signal continuously input in time is predicted between an input image of a current frame and a decoded image of a previous frame and subtracted for each image to generate an inter-frame prediction error signal. Means, means for dividing the prediction error signal or the input image signal into blocks of n × m pixels, performing orthogonal transform in block units, quantizing transform coefficients to perform variable length coding, and means for quantizing transform coefficients. In a moving picture coding apparatus comprising means for performing inverse quantization and inverse orthogonal transformation, adding with a predicted image from a previous frame decoded image, and generating a current frame decoded image, the transform coefficient for each block or this transform A filter selecting unit that selects one filter from a plurality of types of low-pass filters, using the information related to the coefficient as a parameter, and a filter selected by the selecting unit. Video encoding apparatus characterized by comprising a filtering means for applying a signal after inverse orthogonal transform, the.
おいて、 現フレーム入力画像と前フレーム復号画像との間での予
測情報に従って、前記フィルタ選択手段によって選択さ
れたフィルタを特性の異なるフィルタに変更させるフィ
ルタ変更手段と、 前記予測情報に従って、逆直交変換を施した後の信号に
選択されたフィルタを掛けるか否かを判定する判定手段
と、を具備することを特徴とする動画像符号化装置。2. The moving picture coding apparatus according to claim 1, wherein the filter selected by the filter selecting means has different characteristics according to prediction information between a current frame input image and a previous frame decoded image. And a filter changing unit for changing the signal, and a determining unit for determining whether or not to apply the selected filter to the signal after the inverse orthogonal transform according to the prediction information. Device.
に対して、現フレーム入力画像と前フレーム復号画像と
の間で予測を行ない画像ごとに減算し、フレーム間予測
誤差信号を生成する手段と、 予測誤差信号あるいは入力画像信号をn×m画素のブロ
ックに分割し、ブロック単位に直交変換を行ない変換係
数を量子化して可変長符号化を行なう手段と、量子化さ
れた変換係数を逆量子化し、逆直交変換を行ない前フレ
ーム復号画像から生成した予測画像と加算し、現フレー
ム復号画像を生成する手段を具備する動画像符号化装置
において、 前記ブロック毎の動ベクトルを検出する動ベクトル検出
手段と、 前記各ブロックを1ライン分まとめてブロックラインと
し、該ブロックライン単位に動ベクトルの発生頻度を求
めるブロックライン内動ベクトル頻度算出手段と、 前記ブロックライン内動ベクトル頻度算出手段により求
められた頻度に基づき、ブロックライン内代表動ベクト
ルを生成する代表動ベクトル生成手段と、 前記ブロックラインを複数個に分割し、この分割ブロッ
クライン毎の動ベクトル発生頻度分布により分割ブロッ
クライン内の動き補償を施すことを許可若しくは禁止す
る判定を行う動き補償判定手段と、 前記動き補償判定手段により、動き補償を許可された分
割ブロックライン内のブロック毎に前記代表動ベクトル
を用いて、動き補償予測を行なうか否か判定し制御する
手段と、 を具備することを特徴とする動画像符号化装置。3. An inter-frame prediction error signal is generated by performing prediction between an input image signal of a current frame and a decoded image of a previous frame with respect to an input image signal input continuously in time, and subtracting each image. Means for dividing the prediction error signal or the input image signal into blocks of n × m pixels, performing orthogonal transform in block units, quantizing the transform coefficient to perform variable length coding, and means for quantizing the transform coefficient. In a moving picture coding apparatus including means for generating a current frame decoded image by performing dequantization, performing inverse orthogonal transform and adding with a predicted image generated from a preceding frame decoded image, a motion vector for detecting a motion vector for each block is detected. Vector detection means and block line internal motion for obtaining the frequency of occurrence of a motion vector for each block line, by combining each block for one line into a block line Cuttle frequency calculating means, representative motion vector generating means for generating a representative motion vector in the block line based on the frequency obtained by the motion vector frequency calculating means in the block line, the block line is divided into a plurality of, Motion compensation determination means for determining whether to permit or prohibit motion compensation in the divided block line based on the motion vector generation frequency distribution for each divided block line, and a divided block for which motion compensation is permitted by the motion compensation determination means A moving picture coding apparatus, comprising: means for judging and controlling whether or not to perform motion compensation prediction using the representative motion vector for each block in a line.
て、 前記動き補償予測の情報は、隣接ブロックでの動き補償
予測のオン/オフ情報とすることを特徴とする動画像符
号化装置。4. The moving picture coding apparatus according to claim 2, wherein the information of the motion compensation prediction is ON / OFF information of motion compensation prediction in an adjacent block.
て、 前フレーム原画像の動き補償予測画像が、無効フレーム
直後の有効無効フレーム判定の参照画像となることを特
徴とする動画像符号化装置。5. The moving picture coding apparatus according to claim 2, wherein the motion-compensated predicted picture of the original picture of the previous frame serves as a reference picture for valid / invalid frame determination immediately after the invalid frame. apparatus.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34888693A JPH07203443A (en) | 1993-12-27 | 1993-12-27 | Moving image coder |
US08/213,973 US5565921A (en) | 1993-03-16 | 1994-03-15 | Motion-adaptive image signal processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34888693A JPH07203443A (en) | 1993-12-27 | 1993-12-27 | Moving image coder |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07203443A true JPH07203443A (en) | 1995-08-04 |
Family
ID=18400056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34888693A Withdrawn JPH07203443A (en) | 1993-03-16 | 1993-12-27 | Moving image coder |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07203443A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0771118A2 (en) * | 1995-10-23 | 1997-05-02 | AT&T Corp. | Video encoder with feedback control |
JP2008048408A (en) * | 2006-08-17 | 2008-02-28 | Samsung Electronics Co Ltd | Deblocking filtering method and image processing device using the method |
US7526030B2 (en) | 1997-11-05 | 2009-04-28 | Sony Corporation | Digital signal conversion method and digital signal conversion device |
-
1993
- 1993-12-27 JP JP34888693A patent/JPH07203443A/en not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0771118A2 (en) * | 1995-10-23 | 1997-05-02 | AT&T Corp. | Video encoder with feedback control |
EP0771118A3 (en) * | 1995-10-23 | 1999-04-14 | AT&T Corp. | Video encoder with feedback control |
US7526030B2 (en) | 1997-11-05 | 2009-04-28 | Sony Corporation | Digital signal conversion method and digital signal conversion device |
US7593464B2 (en) | 1997-11-05 | 2009-09-22 | Sony Corporation | Information processing apparatus and method, and program storage medium |
JP2008048408A (en) * | 2006-08-17 | 2008-02-28 | Samsung Electronics Co Ltd | Deblocking filtering method and image processing device using the method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5565921A (en) | Motion-adaptive image signal processing system | |
KR100945985B1 (en) | Moving picture encoding method, device using the same, and computer program | |
USRE46400E1 (en) | Method for eliminating blocking effect in compressed video signal | |
EP1455536B1 (en) | Video coding apparatus and decoding apparatus | |
US20070140574A1 (en) | Decoding apparatus and decoding method | |
CA2218865A1 (en) | Hybrid hierarchical/full-search mpeg encoder motion estimation | |
JPH03127580A (en) | Movement compensation inter-frame coder | |
JPH11313322A (en) | Image signal processing unit and its method | |
Srinivasan et al. | An overview of VC-1 | |
EP0982951B1 (en) | Picture compression process | |
JPH0813145B2 (en) | Video coding method using region segmentation | |
KR19990063464A (en) | Moving picture decoding apparatus and moving picture decoding method | |
JPH07203443A (en) | Moving image coder | |
JPH07240926A (en) | Inter-image predictive encoder | |
JP2003348595A (en) | Image processor and image processing method, recording medium and program | |
JPH08154250A (en) | Moving image coder | |
JP4359273B2 (en) | Coding mode selection method | |
JP2021517402A (en) | Inter-predictors and methods for video coding | |
JP3274696B2 (en) | Image encoding method and apparatus | |
JP3416505B2 (en) | Video decoding method | |
JP4353928B2 (en) | Data compression method, recording method, and transmission method | |
JP4429516B2 (en) | Image encoding device | |
JPH07131789A (en) | Picture coding system | |
JP3311312B2 (en) | Encoding control method, encoding control device, and recording medium recording encoding control program | |
JP4359274B2 (en) | Video compression encoding device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20010306 |