[go: up one dir, main page]

JP3152765B2 - Image coding device - Google Patents

Image coding device

Info

Publication number
JP3152765B2
JP3152765B2 JP28354392A JP28354392A JP3152765B2 JP 3152765 B2 JP3152765 B2 JP 3152765B2 JP 28354392 A JP28354392 A JP 28354392A JP 28354392 A JP28354392 A JP 28354392A JP 3152765 B2 JP3152765 B2 JP 3152765B2
Authority
JP
Japan
Prior art keywords
motion vector
search range
block
search
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP28354392A
Other languages
Japanese (ja)
Other versions
JPH05227525A (en
Inventor
忠昭 増田
義治 上谷
敏則 尾高
朋夫 山影
忠宏 奥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP28354392A priority Critical patent/JP3152765B2/en
Priority to US07/969,351 priority patent/US5398078A/en
Publication of JPH05227525A publication Critical patent/JPH05227525A/en
Application granted granted Critical
Publication of JP3152765B2 publication Critical patent/JP3152765B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Image Processing (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、静止画像または動画像
のための画像符号化装置に関する。方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image coding apparatus for a still image or a moving image. About the method.

【0002】[0002]

【従来の技術】TVや写真の様な多階調の画像信号は情
報量が膨大であるため、ディジタル化してテープやディ
スクなどの記録媒体に記録したり伝送する場合、媒体の
記録容量や伝送路の帯域の問題からデータレートを削減
する必要がある。この目的のために、画像データの冗長
性を利用して符号量削減を行なう高能率符号化に関する
研究が各種行われている。
2. Description of the Related Art Multi-tone image signals such as TVs and photographs have an enormous amount of information. Therefore, when digitized and recorded or transmitted on a recording medium such as a tape or a disk, the recording capacity and transmission capacity of the medium are increased. It is necessary to reduce the data rate due to the problem of the bandwidth of the road. For this purpose, various studies have been made on high-efficiency coding for reducing the code amount by using the redundancy of image data.

【0003】このような画像の符号化方式としてよく使
われているものに、直交変換符号化方式がある。この方
式では入力ディジタル画像データをm×n画素からなる
ブロックに分割し、ブロック毎に2次元離散的コサイン
変換(DCT)のような直交変換を行い、この変換によ
り得られた各係数(変換係数という)に対して、予め定
められた量子化幅により量子化処理を行なう。その後、
量子化された各変換係数を1次元データ列に並べ替え、
ランレングス符号化し、さらに可変長符号化等を併用す
ることにより、符号量の削減を行なう。
[0003] An orthogonal transform encoding method is often used as such an image encoding method. In this method, input digital image data is divided into blocks of m × n pixels, and orthogonal transform such as two-dimensional discrete cosine transform (DCT) is performed for each block, and each coefficient (transform coefficient) obtained by this transform is performed. ) Is performed with a predetermined quantization width. afterwards,
Sort each quantized transform coefficient into a one-dimensional data sequence,
The code amount is reduced by using run-length coding and variable-length coding.

【0004】以上の基本的な構成に加えて、量子化幅を
ブロック毎に適応的に切替え、符号化の際の量子化歪が
目立ち易いブロックに関しては量子化幅を小さくして量
子化歪の発生を抑えることで、視覚的な画質特性の改善
を行なうこともある。この際、符号量増加を抑えるため
に、量子化歪が目立ち難いブロックに対しては逆に量子
化幅を粗く設定することが行われる。
[0004] In addition to the above basic configuration, the quantization width is adaptively switched for each block, and the quantization width is reduced by reducing the quantization width for blocks in which the quantization distortion during coding is conspicuous. By suppressing the occurrence, visual image quality characteristics may be improved. At this time, in order to suppress an increase in the code amount, a quantization width is set to be coarse for a block in which quantization distortion is not conspicuous.

【0005】このように各ブロック毎に適応的に量子化
幅の設定を行うためには、ブロックを視覚的に画質劣化
が目立ち易いブロックとそうでないブロックとに分類す
る必要がある。従来においては、量子化の対象となって
いるブロックだけに注目し、その内の画素の値、あるい
は変換係数の値から計算されるパラメータを用いて、量
子化モードの設定を行っていた。例えば、1990年テ
レビジョン学会年次大会7−1「ディジタルVTR用高
能率符号化方式の検討」においては、量子化の対象とす
るブロックをさらにサブブロックに分割し、各サブブロ
ックが平坦部であるか変化が激しいかを検知し、その結
果に従って量子化特性を決定する、ということが行われ
ている。これは、画質劣化の目立つブロックは1ブロッ
クの中に平坦部と変化の激しい部分が混在するようなブ
ロックであり、ブロック全体にわたって変化が激しく、
平坦部がほとんど無いようなブロックにおいては、粗く
量子化しても画質劣化が目立たない、という考え方に基
づいている。
In order to adaptively set the quantization width for each block as described above, it is necessary to classify the blocks into blocks in which image quality deterioration is easily noticeable and blocks in which the image quality deterioration is not so noticeable. In the related art, attention has been paid to only a block to be quantized, and a quantization mode is set using a parameter calculated from a pixel value or a transform coefficient value in the block. For example, in the 1990 Television Society Annual Meeting 7-1, “Study of High Efficiency Coding for Digital VTR,” the block to be quantized is further divided into sub-blocks, and each sub-block is It is performed to detect whether or not there is a drastic change, and determine a quantization characteristic according to the result. This is a block in which the image quality deterioration is conspicuous is a block in which a flat portion and a rapidly changing portion are mixed in one block.
This is based on the idea that in a block having almost no flat part, the image quality degradation is not conspicuous even when coarsely quantized.

【0006】この方法は、ブロック内にエッジが存在す
るような場合において、そのブロックで得られた直交変
換係数を粗く量子化することによるリンギングの発生が
ブロック内の平坦部に著しい悪影響を及ぼすことを軽減
するためには、比較的有効な方法である。
According to this method, when an edge exists in a block, ringing caused by coarsely quantizing the orthogonal transform coefficient obtained in the block has a significant adverse effect on a flat portion in the block. This is a relatively effective way to reduce

【0007】一方、TV電話、TV会議、光ディスク装
置、VTRおよびCATV等の装置では、動画像信号を
高能率符号化する技術が必要となる。このような動画像
の符号化方式として、符号化しようとする入力画像(符
号化対象画像)の画素値を動きベクトルで指定される符
号化済みの参照画像の画素値を用いて予測し、その予測
誤差と動きベクトルを符号化する、いわゆる動き補償予
測符号化が知られている。
On the other hand, devices such as a TV phone, a TV conference, an optical disk device, a VTR, and a CATV require a technology for efficiently encoding a moving image signal. As such a moving image encoding method, a pixel value of an input image to be encoded (encoding target image) is predicted using a pixel value of an encoded reference image specified by a motion vector, and So-called motion-compensated prediction coding, which codes a prediction error and a motion vector, is known.

【0008】この動き補償予測符号化方式においては、
符号化対象画像を複数画素からなる小領域(ブロック)
に分割して動き補償を行うため、符号化済みの参照画像
に対する符号化対象画像のずれ、換言すれば符号化対象
画像のブロックが参照画像のどのブロックから動いたも
のかを表す情報である動きベクトルをブロック毎に求め
ることを行う。動きベクトルを求める際は、予め定めら
れた動きベクトルの探索範囲内で順番に少しずつ位置を
変えて参照画像からブロックを切り出し、切り出した参
照画像のブロックと、動きベクトル検出の対象ブロック
の対応する位置にある画素値の差分の絶対値和を求め、
この絶対値和が最小となる位置の対象ブロックに対する
変位を対象ブロックの動きベクトルとする。動きベクト
ルを画素の大きさを単位として求めるだけではなく、周
囲の画素値から補間して参照ブロックを作り、画素の大
きさよりも小さな動きの精度まで求めることにより、さ
らに符号化効率が上がる場合もある。
[0008] In this motion compensation predictive coding system,
A small area (block) consisting of multiple pixels for the image to be encoded
In order to perform motion compensation by dividing the reference image, the shift of the encoding target image with respect to the encoded reference image, in other words, the motion which is information indicating from which block of the reference image the block of the encoding target image has moved. A vector is obtained for each block. When obtaining a motion vector, a block is cut out from the reference image by changing the position little by little within the search range of the predetermined motion vector in order, and the block of the cut-out reference image and the corresponding block of the target block for motion vector detection are extracted. Find the sum of the absolute values of the differences between the pixel values at the position,
The displacement of the position at which the sum of absolute values is minimum relative to the target block is defined as the motion vector of the target block. In addition to obtaining the motion vector using the pixel size as a unit, the coding efficiency may be further increased by creating a reference block by interpolating from the surrounding pixel values and obtaining the motion accuracy smaller than the pixel size. is there.

【0009】また、動画像符号化方式においては、例え
ばVTRにおける特殊再生などの場合、参照画像として
1フレーム前つまり時間的に直前の画像のみでなく、数
フレーム前の画像や数フレーム後の画像を参照画像とす
る場合もある。この場合、符号化対象画像と参照画像が
時間的に離れているため、隣接画像を参照する場合より
一般的に動きが大きく、動きベクトルの探索範囲を広く
する必要がある。符号化対象画像と参照画像の時間的な
距離に応じて探索範囲を広げ、その領域内のすべての候
補に対して前記絶対値和を計算して動きベクトルを求め
る方法をフルサーチと呼ぶ。
In the moving picture coding method, for example, in the case of special reproduction in a VTR, not only an image one frame before, that is, a temporally immediately preceding image, but also an image several frames earlier or several frames later as a reference image. May be used as a reference image. In this case, since the encoding target image and the reference image are temporally separated from each other, the motion is generally larger than in the case of referring to the adjacent image, and the search range for the motion vector needs to be widened. A method of expanding the search range according to the temporal distance between the image to be encoded and the reference image and calculating the sum of absolute values for all the candidates in the region to obtain a motion vector is called a full search.

【0010】さらに、時間的に離れている参照画像から
の動きベクトルを求める際に、符号化対象画像に時間的
に隣接する画像に対してある探索範囲で動きベクトルを
求め、その動きベクトルを探索の中心として、さらに隣
の画像に対して動きベクトルを求めることを順次行って
いくことにより、参照画像からの動きベクトルを求める
テレスコーピックサーチという手法が用いられることも
ある。
Further, when obtaining a motion vector from a reference image which is temporally distant, a motion vector is obtained within a certain search range for an image temporally adjacent to the image to be encoded, and the motion vector is searched for. As a center, a method called a telescopic search for obtaining a motion vector from a reference image may be used by sequentially obtaining a motion vector for an adjacent image.

【0011】また、動きベクトルの探索を符号化済み画
像全体について行うと、その演算量が膨大になるので、
時間的に隣接した画像から動きベクトルを求める場合、
動きベクトルの探索範囲を符号化済み画像の入力画像デ
ータの符号化対象ブロックと画面上で同位置にあるブロ
ックの近傍に制限し、該ブロックの中心を探索中心とす
ることにより、効率よく探索を行う手法もある。
Further, if a search for a motion vector is performed for the entire encoded image, the amount of calculation becomes enormous.
When calculating a motion vector from temporally adjacent images,
The search range of the motion vector is limited to the vicinity of a block located at the same position on the screen as the encoding target block of the input image data of the encoded image, and the center of the block is set as the search center, so that the search can be performed efficiently. There are also ways to do it.

【0012】さらに、入力画像および符号化済み画像を
図19に示すようなピラミッド構造として、画素数の少
ない上位層で予測信号として最適と思われるブロックを
検出し、検出したブロックの位置を画素数の多い下位層
の探索領域の中心に用いて、階層的に探索画素単位を細
かくして探索する方法も知られている。しかし、この方
法でも図20に示すように上位層での探索範囲をある程
度制限するため、動きが大きく上位層で得られたブロッ
クが探索範囲の周辺部Aであり、Bを中心とした最適な
ブロックに近い検出ができていない場合にも、相関のそ
れ程高くないAを中心としたブロックを細かい画素単位
で探索することになる。従って、装置が持つ演算能力を
有効に使用できず、下位層でもBを中心とした最適なブ
ロックが検出されない。
Further, the input image and the coded image are formed into a pyramid structure as shown in FIG. 19, a block which is considered to be optimal as a prediction signal in an upper layer having a small number of pixels is detected, and the position of the detected block is determined by the number of pixels. A method is also known in which a search pixel unit is hierarchically refined using the center of a search region in a lower layer, which is often used. However, even in this method, the search range in the upper layer is limited to some extent as shown in FIG. 20, so that a block having a large motion and obtained in the upper layer is the peripheral portion A of the search range, Even when detection close to a block has not been performed, a block centered on A, whose correlation is not so high, is searched for in fine pixel units. Therefore, the arithmetic capability of the device cannot be used effectively, and an optimum block centered on B is not detected in the lower layer.

【0013】そのため、動きが大きな場合には入力画像
の符号化対象ブロックと最も相関の高いブロックが符号
化済み画像中に存在しているにも拘らず、そのブロック
を検出することが出来ずに、それよりも相関の低いブロ
ックとの差分あるいは入力画像の部分領域の画素値その
ものを符号化することになる。この結果、符号量が非常
に多くなったり、また符号量を所定値以下に制限する場
合には量子化幅を大きくする必要があり、再生画質が著
しく劣化する。
For this reason, when the motion is large, the block having the highest correlation with the encoding target block of the input image exists in the encoded image, but the block cannot be detected. , The difference from the block having a lower correlation or the pixel value itself of the partial area of the input image is encoded. As a result, when the code amount becomes very large or when the code amount is limited to a predetermined value or less, it is necessary to increase the quantization width, and the reproduction image quality is significantly deteriorated.

【0014】[0014]

【発明が解決しようとする課題】従来の動き補償予測符
号化方式では、入力画像中の動きの大きな領域に対して
は、動きベクトルを探索しても余り効果の望めないよう
な狭い領域についても、高い探索精度で動きベクトルを
探索しているため、装置の処理能力を充分に活用でき
ず、最適な予測信号が得られないという問題があった。
In the conventional motion-compensated predictive coding method, a large area in an input image having a large amount of motion is searched for a narrow area in which a motion vector search is not effective. In addition, since the motion vector is searched with high search accuracy, there is a problem that the processing capability of the apparatus cannot be fully utilized and an optimal prediction signal cannot be obtained.

【0015】従って、本発明の目的は、最適な予測信号
が得られるような効果的な動きベクトル検出を行うこと
ができる画像符号化装置を提供することにある。
Accordingly, it is an object of the present invention to provide an image coding apparatus capable of performing effective motion vector detection so that an optimal prediction signal can be obtained.

【0016】[0016]

【課題を解決するための手段】本発明は上記の課題を解
決するため、画像データに対して解像度を低下させる処
理を施す信号処理手段と、この信号処理手段により処理
された後の入力画像データ中の符号化対象ブロックにつ
いて、前記信号処理手段により処理された後の符号化済
み画像データ中の参照画像ブロックを参照して第1の探
索範囲にわたり一次動きベクトルを検出する第1の動き
ベクトル検出手段と、前記信号処理手段により処理され
ない入力画像データ中の符号化対象ブロックについて、
前記信号処理手段により処理されない符号化済み画像デ
ータ中の参照画像ブロックを参照して第2の探索範囲に
わたり所定の探索精度で二次動きベクトルを求める第2
の動きベクトル検出手段と、前記第1の動きベクトル検
出手段により検出された一次動きベクトルが前記第1の
探索範囲内の中央部分及び外周部分のうちのいずれの部
から検出されたかに応じて、前記第2の動きベクトル
検出手段における第2の探索範囲の大きさと中心位置お
よび探索精度の少なくとも一つを制御する制御手段と、
前記第2の動きベクトル検出手段により検出された二次
動きベクトルにより指定される前記参照画像ブロックと
前記符号化対象ブロックとの差分を符号化する符号化手
段とを有することを特徴とする。
SUMMARY OF THE INVENTION In order to solve the above-mentioned problems, the present invention provides a signal processing means for performing a process for lowering the resolution of image data, and an input image data which has been processed by the signal processing means. First motion vector detection for detecting a primary motion vector over a first search range with reference to a reference image block in encoded image data processed by the signal processing means for a current block to be encoded Means, for the encoding target block in the input image data not processed by the signal processing means,
A second motion vector for obtaining a secondary motion vector with a predetermined search accuracy over a second search range with reference to a reference image block in encoded image data not processed by the signal processing means.
And the primary motion vector detected by the first motion vector detecting means is any one of a central portion and an outer peripheral portion within the first search range.
Depending on whether detected from minute, our size and the center position of the second search range in the second motion vector detection means
And control means for controlling at least one of the search accuracy ,
Encoding means for encoding a difference between the reference image block specified by the secondary motion vector detected by the second motion vector detection means and the encoding target block.

【0017】また、前記信号処理手段は、画像データに
対してサブサンプル処理を含む処理を行うことにより解
像度を低下させることを特徴とする。
Further, the signal processing means reduces the resolution by performing processing including sub-sampling processing on the image data.

【0018】前記制御手段は、一つの態様によると、前
記一次動きベクトルが前記第1の探索範囲の中央部分か
ら得られた場合には、前記第2の動きベクトル検出手段
の探索精度をより細かくして前記第2の探索範囲の大き
をより狭くし、前記一次動きベクトルが前記第1の探
索範囲の外周部分から得られた場合には、前記第2の動
きベクトル検出手段の探索精度をより粗くして前記第2
の探索範囲の大きさをより広くすることを特徴とする。
According to one aspect, when the primary motion vector is obtained from a central portion of the first search range, the control means can further refine the search accuracy of the second motion vector detection means. And the size of the second search range
When the primary motion vector is obtained from the outer peripheral portion of the first search range, the search accuracy of the second motion vector detecting means is further coarsened to reduce the second motion vector.
Is characterized by making the size of the search range wider.

【0019】前記制御手段は、他の態様によると、前記
一次動きベクトルが前記第1の探索範囲の外周部分から
得られた場合には、前記第2の探索範囲の中心位置を前
記第1の探索範囲の中心位置からより離すことを特徴と
する。
According to another aspect, when the primary motion vector is obtained from an outer peripheral portion of the first search range, the control means sets the center position of the second search range to the first search range. It is characterized by being further away from the center position of the search range.

【0020】前記制御手段は、さらに別の態様による
と、前記一次動きベクトルが前記第1の探索範囲の中央
部分から得られた場合には、前記第2の探索範囲の中心
位置を前記第1の動きベクトルで示される位置とし、か
つ前記第2の動きベクトル検出手段の探索精度をより細
かくして前記第2の探索範囲の大きさをより狭くし、前
記一次動きベクトルが前記第1の探索範囲の外周部分か
ら得られた場合には、前記第2の探索範囲の中心位置を
前記第1の探索範囲の中心からより離れるようにし、前
記第2の動きベクトル検出手段の探索精度をより粗くし
て前記第2の探索範囲の大きさをより広くすることを特
徴とする。
According to still another aspect, when the primary motion vector is obtained from a central portion of the first search range, the control means sets the center position of the second search range to the first search range. And the size of the second search range is further narrowed by making the search accuracy of the second motion vector detection means finer, and the primary motion vector is set to the position indicated by the first search vector. When the position is obtained from the outer peripheral portion of the range, the center position of the second search range is made farther away from the center of the first search range, and the search accuracy of the second motion vector detecting means is made coarser. Then, the size of the second search range is made wider.

【0021】[0021]

【0022】[0022]

【0023】[0023]

【0024】[0024]

【0025】[0025]

【0026】[0026]

【0027】[0027]

【0028】[0028]

【0029】[0029]

【0030】[0030]

【0031】[0031]

【0032】[0032]

【0033】[0033]

【0034】[0034]

【0035】[0035]

【作用】このように本発明では、第1の動きベクトル検
出手段により検出された一次動きベクトルが動きベクト
ル探索範囲内のどの領域から検出されたかに応じて、第
2の動きベクトル検出手段における二次動きベクトルの
探索範囲および探索精度の少なくとも一方を制御する。
As described above, according to the present invention, the second motion vector detecting means determines whether the primary motion vector detected by the first motion vector detecting means has been detected from which region in the motion vector search range. At least one of the search range and search accuracy of the next motion vector is controlled.

【0036】[0036]

【0037】[0037]

【0038】[0038]

【0039】[0039]

【0040】[0040]

【0041】[0041]

【0042】具体的には、第1の動きベクトル検出手段
により得た一次動きベクトルがその探索領域の中央部分
から得られた場合には、第2の動きベクトル検出手段の
探索精度(探索の画素単位)を細かくして、狭い探索範
囲から動きの小さなブロックに最適な二次動きベクトル
を探索し、一次動きベクトルがその探索範囲の外周部分
から得られた場合には、第2の動きベクトル検出手段の
探索精度を粗くして、広い探索範囲から動きの大きなブ
ロックに最適な二次動きベクトルを探索する。
More specifically, when the primary motion vector obtained by the first motion vector detecting means is obtained from the central part of the search area, the search accuracy of the second motion vector detecting means (the search pixel (Unit), and a secondary motion vector optimal for a small motion block is searched from a narrow search range. If a primary motion vector is obtained from an outer peripheral portion of the search range, a second motion vector is detected. The search accuracy of the means is coarsened, and a secondary motion vector optimal for a block with large motion is searched from a wide search range.

【0043】また、第1の動きベクトル検出手段により
得られた一次動きベクトルがその探索範囲の外周部分か
ら得られた場合には、第2の動きベクトル検出手段での
探索範囲が第1の動きベクトル検出手段での探索範囲と
重なる部分が少なくなるように、第2の動きベクトル検
出手段での探索範囲の中心位置を第1の動きベクトル検
出手段での探索範囲の中心から更に離れるように制御
し、動きの大きなブロックに最適な二次動きベクトルが
得られるようにする。
When the primary motion vector obtained by the first motion vector detecting means is obtained from the outer peripheral portion of the search range, the search range of the second motion vector detecting means is changed to the first motion vector. The center position of the search range of the second motion vector detecting means is controlled to be further away from the center of the search range of the first motion vector detecting means so that the portion overlapping the search range of the vector detecting means is reduced. Then, a secondary motion vector optimal for a block having a large motion is obtained.

【0044】さらに、第1の動きベクトル検出手段によ
り得た一次動きベクトルがその探索範囲の中央部分から
得られた場合には、第2の動きベクトル検出手段の探索
範囲の中心位置を第1の動きベクトルに相当する位置と
して探索精度を細かくして、狭い探索範囲から動きの小
さなブロックに最適な二次動きベクトルを探索し、一次
動きベクトルがその探索範囲の外周部分から得られた場
合には、第2の動きベクトル検出手段での探索範囲が第
1の動きベクトルでの探索範囲と重なる部分が少なくな
るように、第2の動きベクトル検出手段での探索範囲の
中心位置を第1の探索範囲の中心から更に離れるように
制御し、第2の動きベクトル検出手段の探索精度を粗く
して、広い探索範囲から動きの大きなブロックに最適な
二次動きベクトルを探索する。
Further, when the primary motion vector obtained by the first motion vector detecting means is obtained from the center of the search range, the center position of the search range of the second motion vector detecting means is set to the first position. If the search accuracy is refined as the position corresponding to the motion vector, the optimal secondary motion vector for the small motion block is searched from the narrow search range, and if the primary motion vector is obtained from the outer peripheral portion of the search range, The center position of the search range in the second motion vector detecting means is set so as to reduce the portion where the search range in the second motion vector detecting means overlaps the search range in the first motion vector. The second motion vector detecting means is controlled so as to be further away from the center of the range, the search accuracy of the second motion vector detecting means is reduced, and the optimal secondary motion vector Search for.

【0045】このように、本発明によれば一次動きベク
トルが探索範囲内のどの領域から検出されたかに応じ
て、二次動きベクトルの探索範囲および探索精度の少な
くとも一方を制御することにより、最適な動きベクトル
を二次動きベクトルとして検出でき、それにより画像の
動きの大きさによらず常に最適な予測信号を得ることが
できるので、符号化効率が向上する。
As described above, according to the present invention, by controlling at least one of the search range and the search accuracy of the secondary motion vector according to the region within the search range from which the primary motion vector has been detected, the optimum Since a suitable motion vector can be detected as a secondary motion vector and an optimal prediction signal can always be obtained regardless of the magnitude of the motion of the image, the coding efficiency is improved.

【0046】この場合、第1の動きベクトル検出手段は
探索範囲のどの領域から一次動きベクトルを検出したか
を大まかに知ることができればよいことに着目して、解
像度を低下させた画像データに対して動きベクトル検出
を行うため、一次動きベクトルの検出に必要な処理量や
ハードウェア量は少なくて済む。
In this case, the first motion vector detecting means should pay attention to the area of the search range from which the primary motion vector has been detected, and focus on the image data whose resolution has been reduced. Therefore, the amount of processing and the amount of hardware required for detecting the primary motion vector can be reduced.

【0047】[0047]

【実施例】以下、図面を参照して本発明の実施例を説明
する。
Embodiments of the present invention will be described below with reference to the drawings.

【0048】図1は、第1の実施例として本発明を離散
的直交変換による画像圧縮に適用した画像符号化装置の
構成例である。
FIG. 1 shows an example of the configuration of an image encoding apparatus in which the present invention is applied to image compression by discrete orthogonal transformation as a first embodiment.

【0049】図1において、入力信号であるディジタル
画像データはブロック切り出し部101で例えば8×8
画素のサイズのブロックに切り出された後、2次元離散
的直交変換部102に入力され、各ブロック毎に2次元
離散的直交変換、例えば2次元DCTがなされる。この
2次元離散的直交変換部102の出力は変換係数のデー
タであり、量子化器103において後述する量子化幅設
定方法により計算された量子化幅で量子化され、情報量
の削減が行われる。量子化器103の出力は、可変長符
号化部104に入力されて例えばハフマン符号化のよう
な可変長符号化がなされることにより、符号量の削減が
行なわれる。可変長符号化部104から出力される符号
化データは、バッファ105に蓄えられる。
In FIG. 1, digital image data as an input signal is, for example, 8 × 8
After being cut out into blocks of the size of a pixel, they are input to the two-dimensional discrete orthogonal transform unit 102, where two-dimensional discrete orthogonal transform, for example, two-dimensional DCT, is performed for each block. The output of the two-dimensional discrete orthogonal transform unit 102 is data of a transform coefficient, and is quantized by the quantizer 103 using a quantization width calculated by a quantization width setting method described later, thereby reducing the amount of information. . The output of the quantizer 103 is input to a variable-length coding unit 104 and subjected to variable-length coding such as Huffman coding, so that the code amount is reduced. The encoded data output from the variable length encoding unit 104 is stored in the buffer 105.

【0050】量子化器103における量子化幅は、乗算
器131,132において、基本量子化テーブル107
に収められている、各変換係数に対する量子化幅の比率
を決定する値に対して、量子化幅制御パラメータ計算部
109で計算される、量子化スケールの基準値と、本発
明に基づき新たに設けられた適応量子化制御部108に
よって計算された、上記量子化スケールの基準値からの
変化量を乗じた値が設定される。
The multipliers 131 and 132 determine the quantization width of the quantizer 103 by using the basic quantization table 107.
The reference value of the quantization scale calculated by the quantization width control parameter calculation unit 109 for the value that determines the ratio of the quantization width to each transform coefficient contained in A value multiplied by the amount of change from the reference value of the quantization scale calculated by the provided adaptive quantization control unit 108 is set.

【0051】量子化幅制御パラメータ計算部109で
は、バッファ105から出力される符号量が設定符号レ
ートに収まるように、可変長符号化部104で発生した
符号のバッファ105での占有状態によってモニタし、
それに応じて量子化スケールを制御する。すなわち、発
生符号量がある設定値よりも多ければ、量子化幅制御パ
ラメータ計算部109で量子化スケールを大きくするこ
とにより、量子化幅を粗くして発生符号量を抑える。逆
に、発生符号量が設定値よりも少ない場合には、量子化
スケールを小さくすることにより量子化幅を細かくして
画質の向上を図り、設定符号レートまで発生符号量を増
加させる。
The quantization width control parameter calculation unit 109 monitors the occupation state of the code generated by the variable length coding unit 104 in the buffer 105 so that the code amount output from the buffer 105 falls within the set code rate. ,
Control the quantization scale accordingly. That is, if the generated code amount is larger than a certain set value, the quantization scale is increased by the quantization width control parameter calculation unit 109, thereby coarsening the quantization width and suppressing the generated code amount. Conversely, when the generated code amount is smaller than the set value, the quantization scale is reduced to reduce the quantization width to improve the image quality, and increase the generated code amount up to the set code rate.

【0052】この様に量子化幅制御パラメータ計算部1
09の計算結果に従い、入力される画像データの性質に
応じて量子化幅を変化させることにより、適正な符号レ
ートになるように制御を行なう。しかし、このような量
子化幅制御では視覚的な画質劣化感を考慮せずに量子化
幅を変えることになるため、画像内の符号量配分におい
て無駄が生じる。すなわち、劣化があまり気にならない
ような画像部分に対しては、さらに量子化幅を粗くして
符号量を減らし、その分劣化が目立つような画像部分に
対しては、量子化幅を細かくすることにより、主観的な
画質の改善を行なうことが望まれる。この制御を行なう
のが適応量子化制御部108である。
As described above, the quantization width control parameter calculation unit 1
According to the result of the calculation in step 09, the quantization width is changed in accordance with the property of the input image data, thereby controlling the code rate to be appropriate. However, in such quantization width control, since the quantization width is changed without considering the visual sense of image quality deterioration, there is waste in code amount distribution in the image. In other words, for image portions where deterioration is not so noticeable, the quantization width is further reduced to reduce the code amount, and for image portions where deterioration is conspicuous, the quantization width is reduced. Therefore, it is desired to improve subjective image quality. The adaptive quantization control unit 108 performs this control.

【0053】以下、適応量子化制御部108による制御
方法を図2を用いて説明する。図2(a)に示した9個
のブロックで中心のブロックの量子化幅を決定すること
を考える。まず、各ブロック毎に、そのブロックが画像
の変化の少ない平坦な画像ブロックであるか、あるいは
変化の激しい画像ブロックであるかを示すパラメータ
(これをブロックアクティビティと呼ぶ)をブロックア
クティビティ計算部106においてそれぞれ計算する。
換言すれば、ブロックアクティビティは符号化の難しさ
の度合いであり、この値が大きいほど符号化が難しいこ
とを意味する。このブロックアクティビティとして、本
実施例においては(1) ブロック内の画素の値の平均値と
各画素の値の差分の絶対値和を用いているが、(2) ブロ
ック内の画素の値の平均値と各画素の値の差分の2乗
和、(3) 隣接画素との差分値の絶対値和、あるいは(4)
DCT変換係数の直流成分を除く係数の絶対値和、とい
った値を用いることも可能である。
Hereinafter, the control method by the adaptive quantization control unit 108 will be described with reference to FIG. Consider that the quantization width of the central block is determined by the nine blocks shown in FIG. First, for each block, the block activity calculation unit 106 calculates a parameter indicating whether the block is a flat image block with little change in image or a rapidly changing image block (this is called block activity) in the block activity calculation unit 106. Calculate each.
In other words, the block activity is a level of difficulty of encoding, and the larger the value, the more difficult it is to encode. As the block activity, in this embodiment, (1) the average value of the pixel values in the block and the absolute value sum of the difference between the pixel values are used, but (2) the average value of the pixel values in the block is used. The sum of squares of the difference between the value and the value of each pixel, (3) the sum of the absolute values of the difference values between adjacent pixels, or (4)
It is also possible to use a value such as the sum of absolute values of coefficients excluding the DC component of the DCT transform coefficient.

【0054】本実施例においては、量子化サイズを4段
階に変化させる適応量子化を行なっている。そこで、適
応量子化制御部108では以下に示すステップにより量
子化の変化幅の設定を行なう。
In this embodiment, adaptive quantization for changing the quantization size in four stages is performed. Therefore, the adaptive quantization control unit 108 sets the change width of the quantization by the following steps.

【0055】まず、第1のステップとして、クラス化部
114で各ブロックをブロックアクティビティの大きさ
に応じて4つのクラスに分類する。この4つのクラス
は、ブロックアクティビティが小さい方から順にA,
B,C,Dとする。そして、各ブロックのクラス情報を
メモリ111に記憶する。
First, as a first step, the classifying unit 114 classifies each block into four classes according to the size of the block activity. The four classes are A,
B, C, and D. Then, the class information of each block is stored in the memory 111.

【0056】次に、第2ステップとして、これから量子
化幅を決定しようとしている中心のブロックが図2
(b)(c)のようにDクラスに分類された場合、周辺
の8ブロックのクラスを見て、その中でDクラスに分類
されたブロックの個数がある規定値(例えば3個)以下
かどうかを調べる。そして、周辺8ブロックのDクラス
のブロック数が図2(b)のように規定値を越える場合
はそのままとし、このブロック数が図2(c)のように
規定値以下の場合には、中心のブロックをAクラスに変
更する、という操作を画像内の全てのブロックに関して
行なう。
Next, as a second step, the central block for which the quantization width is to be determined is shown in FIG.
(B) When classified into the D class as in (c), look at the classes of the surrounding eight blocks and find out if the number of blocks classified into the D class is less than a certain specified value (for example, three). Find out if. If the number of blocks in the D class of the eight peripheral blocks exceeds the specified value as shown in FIG. 2B, the number of blocks is kept as it is, and if the number of blocks is smaller than the specified value as shown in FIG. Is performed for all blocks in the image.

【0057】その後、第3ステップとして、各クラスに
対する量子化幅の変化を図3のように決定する。図3
は、ブロックアクティビティの各クラスA〜Dに対応し
た量子化幅の基準値からの変化量を示したものであり、
この例ではCクラスに対応する量子化幅を量子化幅制御
パラメータ計算部109により得られた基準の量子化幅
に一致させている。
Thereafter, as a third step, a change in the quantization width for each class is determined as shown in FIG. FIG.
Indicates the amount of change from the reference value of the quantization width corresponding to each of the classes A to D of the block activity.
In this example, the quantization width corresponding to the C class is made to match the reference quantization width obtained by the quantization width control parameter calculation unit 109.

【0058】すなわち、アクティビティの高いブロック
が集中している画像領域は、視覚的な画質劣化が比較的
目立たない部分であると判断して量子化を粗くし、逆に
アクティビティが比較的小さい画像領域は劣化が目立ち
やすいため、量子化幅を小さくすることにより画質の向
上を図る。これに加えて、比較的平坦な画像領域の中に
アクティビティが高いブロックが弧立しているような状
態の場合には、そのブロックの劣化が目立ちやすくなる
ため、量子化幅を細かくして劣化が少なくなるようにし
ている。
That is, an image area where blocks with high activity are concentrated is determined to be a part where visual image quality deterioration is relatively inconspicuous, and quantization is made coarse, and conversely, an image area where activity is relatively small. Since the deterioration is conspicuous, the image quality is improved by reducing the quantization width. In addition, when a high activity block is in a relatively flat image area in a state where the block is high, the deterioration of the block becomes more conspicuous. Is to be reduced.

【0059】第1ステップで初めからAクラスに分類さ
れているブロックは、画像の平坦な領域に対応する。こ
のような領域では量子化幅を粗くするとブロック歪みに
よる劣化が生じるため、量子化サイズを細かくしている
が、このブロック内の情報量はもともと少ないため、量
子化幅を細かくすることによる符号量増大はそれほど多
くはない。従って、第1ステップではDクラスに分類さ
れていた歪みの目立ちやすいブロックに対する符号量配
分を多くすることができ、画質改善効果が高くなる。
The blocks classified into the A class from the beginning in the first step correspond to flat areas of the image. In such a region, if the quantization width is made coarse, deterioration due to block distortion occurs, so the quantization size is made small.However, since the amount of information in this block is originally small, the code amount by making the quantization width small is used. The increase is not so great. Therefore, in the first step, it is possible to increase the amount of code distribution to the blocks in which the distortion is categorized into the D class, in which the distortion is conspicuous, and the image quality improving effect is enhanced.

【0060】図3において、各クラスA〜Dに属するブ
ロックの量子化幅の基準値から変化量は、1画面内の各
クラスに分類されたブロックの数に応じて決定される。
すなわち、ある量子化幅に設定した時の発生符号量を予
測し、A及びBクラスに属するブロックの量子化幅につ
いては、Dクラスに属するブロックの量子化幅ΔQを視
覚上許容し得る程度まで基準値より粗くした時に、基準
値を用いた場合よりも減少する1画面の符号量と同程度
の符号量増大となるような量子化幅に下げて設定する。
In FIG. 3, the amount of change from the reference value of the quantization width of blocks belonging to each of the classes A to D is determined according to the number of blocks classified into each class in one screen.
That is, the code amount generated when a certain quantization width is set is predicted, and the quantization widths of the blocks belonging to the A and B classes are set to such an extent that the quantization width ΔQ of the blocks belonging to the D class is visually permissible. When the value is made coarser than the reference value, the quantization width is set to be lower than the quantization width so as to increase the code amount of one screen, which is smaller than the case where the reference value is used.

【0061】この際、クラスDに属するブロックの視覚
上許容できる量子化幅は、画面全体のアクティビティに
応じて変化し、画面全体のアクティビティが高いほどそ
の許容できる量子化幅の変化量は小さくなる。この様子
を示したのが図4であり、横軸に画面全体のアクティビ
ティ(全アクティビティ)、縦軸にDクラスに属するブ
ロックの量子化幅ΔQをそれぞれとっている。
At this time, the visually permissible quantization width of the block belonging to class D changes according to the activity of the entire screen, and the higher the activity of the entire screen, the smaller the amount of change of the permissible quantization width. . FIG. 4 shows this state, in which the horizontal axis represents the activity of the entire screen (all activities), and the vertical axis represents the quantization width ΔQ of the block belonging to the D class.

【0062】なお、こうして量子化幅制御パラメータ計
算部109および適応量子化制御部108において得ら
れる量子化パラメータは、符号化された画像データと多
重化部120で多重化されて出力される。
The quantization parameters obtained in the quantization width control parameter calculation section 109 and the adaptive quantization control section 108 are multiplexed with the coded image data by the multiplexing section 120 and output.

【0063】上述した第1の実施例において、適応量子
化制御部108における第3ステップまでによる量子化
幅の設定でも良好な結果が得られるが、さらに多くのク
ラスに分類することが可能な場合には、画面内で量子化
幅が急激に変化することにより生じる画質の不連続的な
変化が引き起こす画像の不自然感を低減するために、さ
らなる改良を行なうことができる。
In the above-described first embodiment, good results can be obtained by setting the quantization width up to the third step in the adaptive quantization control unit 108, but it is possible to classify into more classes. In order to reduce the unnaturalness of an image caused by a discontinuous change in image quality caused by a sudden change in the quantization width in a screen, further improvements can be made.

【0064】図6は、この改良された第2の実施例であ
り、図1に示した第1の実施例の構成に加えて、適応量
子化制御部108内に2次元ローパスフィルタ113が
新たに追加されている。この実施例では、第1の実施例
における第3ステップで得られた各ブロックの量子化の
変化幅からなる2次元配列を考え、この2次元配列に2
次元ローパスフィルタ113を作用させることにより、
画像の各領域において急激な量子化幅の変化が生じるの
を避けている。
FIG. 6 shows the improved second embodiment. In addition to the configuration of the first embodiment shown in FIG. 1, a two-dimensional low-pass filter 113 is newly provided in the adaptive quantization control unit 108. Has been added to In this embodiment, a two-dimensional array consisting of the variation width of quantization of each block obtained in the third step in the first embodiment is considered.
By operating the dimensional low-pass filter 113,
A sharp change in the quantization width in each region of the image is avoided.

【0065】本発明は、フレーム間予測を用いる画像符
号化装置にも適用できる。フレーム間予測では、図6に
示すように時間方向に隣接した複数のフレームの画像を
用いるため、適応量子化を行なう際、時間方向に隣接す
るブロックからの情報をも用いることができ、これによ
り画質が時間的に急激に変化することに対する不自然さ
を防止することができることになる。
The present invention can be applied to an image coding apparatus using inter-frame prediction. In the inter-frame prediction, as shown in FIG. 6, since images of a plurality of frames adjacent in the time direction are used, when performing adaptive quantization, information from blocks adjacent in the time direction can also be used. Thus, it is possible to prevent the image quality from suddenly changing over time.

【0066】図7は、本発明をフレーム間予測を用いる
画像符号化に適用した第3の実施例を示している。この
実施例では、量子化器103の出力を逆量子化器11
5、2次元離散的逆直交変換部116、加算器133お
よびフレームメモリ117を経て局所復号された1フレ
ーム前の画像信号を動き補償部118により動き補償し
た信号と、入力画像信号との差分を減算器134でと
り、その差分である予測残差信号に対して2次元離散直
交変換部102でDCT等の直交変換を行ない、得られ
た変換係数を量子化器103で量子化し、可変長符号化
器104で可変長符号化を行なう。
FIG. 7 shows a third embodiment in which the present invention is applied to image coding using inter-frame prediction. In this embodiment, the output of the quantizer 103 is
5, a difference between a signal obtained by motion-compensating an image signal of one frame before locally decoded via a two-dimensional discrete inverse orthogonal transformation unit 116, an adder 133 and a frame memory 117 by a motion compensation unit 118 and an input image signal; The orthogonal transform such as DCT is performed by the two-dimensional discrete orthogonal transform unit 102 on the prediction residual signal, which is the difference, by the subtractor 134, and the obtained transform coefficient is quantized by the quantizer 103 to obtain a variable-length code. The variable length coding is performed by the transformer 104.

【0067】この実施例における量子化幅の設定は、第
1の実施例と同様に量子化幅制御パラメータ計算部10
9でバッファ105に蓄積された可変長符号の符号量に
応じて求めた係数に、本発明による適応量子化による修
正を行ない、その値を基本量子化テーブル107の各量
子化スケールに対応した値に乗じることにより設定す
る。
The setting of the quantization width in this embodiment is performed in the same manner as in the first embodiment.
9, the coefficient obtained according to the code amount of the variable length code stored in the buffer 105 is corrected by adaptive quantization according to the present invention, and the value is changed to a value corresponding to each quantization scale of the basic quantization table 107. Set by multiplying by.

【0068】そして、本実施例では適応量子化制御部1
08において現在符号化の対象としているフレームにつ
いてクラス化部114で分類されたクラス情報が第1の
メモリ111に記憶され、前フレームの最終的に求めら
れたクラスの情報が第2のメモリ121に記憶されてい
る。量子化幅の修正値は、その各値とシーンチェンジ検
出部119の出力とを用いて求める。
In this embodiment, the adaptive quantization controller 1
In step 08, the class information classified by the classifying unit 114 for the frame to be currently encoded is stored in the first memory 111, and the finally obtained class information of the previous frame is stored in the second memory 121. It is remembered. The correction value of the quantization width is obtained using each value and the output of the scene change detection unit 119.

【0069】ここでは、図6の中心のブロックにおいて
量子化幅の変化を求める際に、このブロックに空間的に
隣接する8ブロックと、時間的に先行して空間的には同
一位置にあるブロックの情報を用いている。
Here, when determining the change in the quantization width in the center block in FIG. 6, the block which is spatially adjacent to this block and which is spatially at the same position as the preceding eight blocks Information is used.

【0070】まず、空間内で隣接するブロックの情報を
用いて第1の実施例における第1ステップ、第2ステッ
プの操作を同様に行ない、クラス化部114で得られた
クラスへの分類の修正を行なう。
First, the operations of the first step and the second step in the first embodiment are performed in the same manner using the information of the blocks adjacent in the space, and the classification into the class obtained by the classifying unit 114 is corrected. Perform

【0071】次に、前フレームのブロックのクラスと比
較して、それらが予め設定された値以上の差を持つ場
合、例えば2クラス以上の差を生じるような場合には、
その差を1段階減らす方向にクラスの修正を行なう。例
えば、第2ステップの結果、当該ブロックがDクラスに
分類された場合に、前フレームの同一位置のブロックが
AクラスあるいはBクラスであった場合には、当該ブロ
ックのクラスをさらにCクラスに修正することを行な
う。このようにして最終的に求められたクラス情報をメ
モリ121に書き込み、その次のフレームの量子化幅の
修正値を決定するために備える。但し、シーンチェンジ
検出部119でシーンチェンジがあったと判定された場
合には、時間的に隣接するブロックからの情報による修
正は行なわないことにする。
Next, if they differ from the class of the block of the previous frame by more than a preset value, for example, if a difference of more than two classes occurs,
The class is corrected so as to reduce the difference by one step. For example, as a result of the second step, if the block is classified into the D class, and if the block at the same position in the previous frame is the A class or the B class, the class of the block is further corrected to the C class. Do what you want. The class information finally obtained in this manner is written into the memory 121, and the class information is prepared for determining the correction value of the quantization width of the next frame. However, if the scene change detection unit 119 determines that a scene change has occurred, the correction based on information from temporally adjacent blocks is not performed.

【0072】最後に、最終的に決定された各ブロックの
クラスに従って図3に示した量子化幅の変化値を決定す
る。
Finally, the change value of the quantization width shown in FIG. 3 is determined according to the class of each block finally determined.

【0073】なお、上述した各実施例では、計算を容易
にするために、ブロックアクティビティから、まず最初
に各ブロックを4クラスに分類して、分類されたクラス
を周囲のブロックのクラスに応じて修正するという方式
を用いているが、周囲のブロックのアクティビティを直
接用いて、中心ブロックの量子化幅を決定する方法も当
然可能である。
In each of the embodiments described above, each block is first classified into four classes based on the block activity, and the classified classes are classified according to the classes of the surrounding blocks in order to facilitate the calculation. Although the correction method is used, a method of directly determining the quantization width of the center block by directly using the activity of the surrounding blocks is also possible.

【0074】また、上述の各実施例では、量子化幅の設
定において適応量子化制御部108と量子化幅制御パラ
メータ計算部109を説明の都合上分けて記述したが、
実際にはこれら適応量子化制御部108および量子化幅
制御パラメータ計算部109の機能を統合して適応量子
化制御を行なうのが有利である場合もある。
In each of the above embodiments, the adaptive quantization control unit 108 and the quantization width control parameter calculation unit 109 are separately described for setting the quantization width for the sake of explanation.
In practice, it may be advantageous to perform the adaptive quantization control by integrating the functions of the adaptive quantization control unit 108 and the quantization width control parameter calculation unit 109.

【0075】次に、本発明を動き補償予測符号化方式を
用いた動画像符号化装置に適用した実施例について説明
する。
Next, a description will be given of an embodiment in which the present invention is applied to a moving picture coding apparatus using a motion compensation predictive coding method.

【0076】まず、本実施例の原理について説明する。
動きベクトルの探索は分割されたブロック毎に独立して
行われ、画像内の各領域毎に動きの方向や大きさは異な
るにも関わらず、従来の技術では各ブロックに対して一
律の動きベクトル探索範囲を設定していた。
First, the principle of the present embodiment will be described.
The search for the motion vector is performed independently for each of the divided blocks, and despite the fact that the direction and magnitude of the motion are different for each region in the image, in the conventional technology, a uniform motion vector is used for each block. The search range was set.

【0077】これに対し、本実施例では各ブロック毎に
適切な動きベクトル探索範囲を設定し、動きが小さいと
予想されるブロックに対しては探索範囲を小さく設定す
ることにより、少ない演算量で最適な動きベクトルを求
める。逆に、動きが大きいと予想されるブロックに対し
ては十分な探索範囲を設立することにより、符号化効率
の低下を来たすことのない最適な動きベクトルを求め
る。
On the other hand, in the present embodiment, an appropriate motion vector search range is set for each block, and the search range is set small for a block expected to have a small motion. Find the optimal motion vector. Conversely, by establishing a sufficient search range for a block that is expected to have a large motion, an optimal motion vector that does not cause a decrease in coding efficiency is obtained.

【0078】また、動きによる変形が少なく、解像度の
高いパターンを有する画像領域においては、より高い精
度で動きベクトルを求めて参照画像ブロックを生成する
ことにより、符号化しなければならない予測誤差を大き
く減らすことができる。逆に、動きによる変形が大きな
図形、あるいは、解像度があまり高くなく平坦な画像領
域においては、高い精度で動きベクトルを求めても、符
号化効率の向上にはつながらない。そこで、各ブロック
毎に動きベクトル探索領域の設定と動きベクトルを求め
る際の精度を適切にコントロールすることにより、演算
の無駄を省き、符号化時間の短縮を図ることが可能とな
る。
Further, in an image area having a pattern with high resolution and little deformation due to motion, a motion vector is obtained with higher accuracy to generate a reference image block, thereby greatly reducing a prediction error to be encoded. be able to. Conversely, for a figure that is greatly deformed due to motion or a flat image area having a very low resolution, obtaining a motion vector with high accuracy does not improve coding efficiency. Therefore, by setting the motion vector search area for each block and appropriately controlling the accuracy in obtaining the motion vector, it is possible to reduce the waste of calculation and shorten the encoding time.

【0079】さらに、動画像では時間的に連続したそれ
ぞれの画像の絵柄は、シーンチェンジが無い場合には、
空間的に連続して移動を行っていると考えて良い。従っ
て、画像内にある特定の絵柄に着目した場合、その位置
の時間的な変化もある程度連続していると考えられる。
すなわち、あるブロックの動きベクトルを求める際、そ
のブロックに生じた過去の動き(あるいは未来から遡っ
てみたときの動き)を知ることにより、そのブロックが
その後(あるいはそれ以前に)どのような動きを行うか
ということを、大まかに予測することが可能である。
Further, in the case of a moving image, the pattern of each image that is temporally continuous is determined when there is no scene change.
It can be considered that they are moving continuously in space. Therefore, when attention is paid to a specific pattern in the image, it is considered that the temporal change of the position is somewhat continuous.
In other words, when obtaining the motion vector of a block, knowing the past motion (or the motion when looking back from the future) that occurred in the block allows the block to determine what motion after (or before) It is possible to roughly predict what to do.

【0080】このことを利用して、本実施例ではある符
号化対象ブロックの参照画像からの動きベクトルを求め
る際に、その符号化対象ブロックに対応する位置にある
参照画像ブロックを符号化した際に用いた最適な動きベ
クトルで示される位置を探索中心に設定する。これを示
したものが図10である。符号化対象画像403内のブ
ロック405に対する動きベクトルを求める際に、既に
符号化を終えた参照画像402の同位置にあるブロック
に対して求めた動きベクトル406と同じベクトル40
7を考えて、そのベクトルで定められる位置408を探
索中心として設定する。
By utilizing this fact, in the present embodiment, when a motion vector from a reference image of a certain encoding target block is obtained, a reference image block located at a position corresponding to the encoding target block is encoded. Is set as the search center at the position indicated by the optimum motion vector used for the search. FIG. 10 shows this. When obtaining a motion vector for the block 405 in the encoding target image 403, the same vector 40 as the motion vector 406 obtained for the block at the same position of the reference image 402 which has already been encoded.
7, the position 408 defined by the vector is set as the search center.

【0081】この方法では、ある物体の動きに追随して
動きベクトルを追跡しているのではなく、予め定められ
た位置のブロックにおける物体の動きを予測している。
つまり、図10において例えば410の位置に存在して
いた物体が画面403上での予想される位置が411に
なる、という関係を直接用いるのではなく、この物体の
周囲も同様な動きをするであろう、という予測のもとに
ブロック405における動きの予測を行っている。その
ため、二つの異なる動きをしている領域の境界の部分、
例えば背景と前景の境界領域においては、このような探
索中心の設定方法で通常の探索範囲の大きさを設定して
しまうと、正確な動きベクトルを求めることができなく
なってしまう場合がある。
In this method, the motion vector is not tracked following the motion of a certain object, but the motion of the object in a block at a predetermined position is predicted.
That is, in FIG. 10, for example, the relationship that the object existing at the position of 410 on the screen 403 becomes the expected position 411 on the screen 403 is not directly used. The motion in block 405 is predicted based on the prediction that there will be. Therefore, at the border of the two different moving areas,
For example, in the boundary region between the background and the foreground, if the size of the normal search range is set by such a method of setting the search center, an accurate motion vector may not be obtained.

【0082】そこで、本実施例においては、符号化対象
である入力画像の直前の画像において求めた各ブロック
の動きベクトルを調べて、周囲のブロックの動きベクト
ルと大きく異なるような動きベクトルを持つ領域に有る
ブロックに対しては、図10のベクトル407で与えら
れるような探索範囲の中心の移動は行わず、さらに通常
のブロックに対する探索範囲よりも広い領域を探索の範
囲として設定することを行う。
Therefore, in the present embodiment, the motion vector of each block obtained in the image immediately before the input image to be coded is examined, and an area having a motion vector that is significantly different from the motion vectors of the surrounding blocks is examined. The center of the search range as given by the vector 407 in FIG. 10 is not moved for the block located in, and an area wider than the search range for the normal block is set as the search range.

【0083】さらに、本実施例では動きベクトル候補
と、それに対する予測誤差の大きさを表す指標の挙動に
着目して、より効果的な動きベクトルの探索を行うよう
にしている。予測誤差の大きさを表す指標は、例えば動
きベクトル候補で指定される参照ブロックの候補と、符
号化対象ブロックのブロック内の対応する位置にある画
素の差分値の絶対値和あるいは差分値の2乗和を求め
て、それが最小となるような動きベクトルが最適な動き
ベクトルであるとの判断によって求めることができる。
Further, in the present embodiment, a more effective search for a motion vector is performed by focusing on the behavior of a motion vector candidate and an index indicating the magnitude of a prediction error for the motion vector candidate. The index indicating the magnitude of the prediction error is, for example, the sum of the absolute value of the difference value of the reference block candidate designated by the motion vector candidate and the difference value of the pixel at the corresponding position in the block of the encoding target block or the difference value. The sum of squares can be obtained, and it can be obtained by judging that the motion vector that minimizes the sum is the optimal motion vector.

【0084】ここで、動きベクトル候補とそれに対する
予測誤差の大きさの指標の挙動を調べると、図11に示
すような典型的な振る舞いをする場合が多い。図11に
おいて、横軸はある方向の直線上に位置する動きベクト
ル候補を空間的な位置関係の順に並べたもので、縦軸は
予測誤差の大きさとなる指標である。図11Aは、比較
的複雑な絵柄があまり動きによる変形等を起こさずに平
行移動している画像の場合で、適切な動きベクトルの推
定を行うことにより予測誤差を小さくすることができ
る。図11Bは、平坦な画像の場合で、あまり正確な動
き補償を行わなくても符号化効率の低下は少ない領域に
対応する。図11Cは、動きによる変形が大きい画像
で、動き補償による符号化効率の向上があまり得られな
い領域である。図11Dは、図11Aと同様な振る舞い
であるが、図の横軸に示した範囲ではまだ適切な動きベ
クトルは求められていない状況となっている。
Here, when the behavior of the motion vector candidate and the index of the magnitude of the prediction error for the motion vector candidate are examined, a typical behavior as shown in FIG. 11 is often obtained. In FIG. 11, the horizontal axis is a list of motion vector candidates located on a straight line in a certain direction in the order of spatial positional relationship, and the vertical axis is an index indicating the magnitude of the prediction error. FIG. 11A is a case of an image in which a relatively complicated pattern moves in parallel without much deformation due to movement, and the prediction error can be reduced by estimating an appropriate motion vector. FIG. 11B shows a case of a flat image, which corresponds to a region in which the coding efficiency is less reduced even if less accurate motion compensation is performed. FIG. 11C is an image in which the deformation due to motion is large and the coding efficiency is not significantly improved by motion compensation. FIG. 11D shows the same behavior as FIG. 11A, but in a range indicated by the horizontal axis in the figure, an appropriate motion vector has not yet been obtained.

【0085】動きベクトル候補を発生する順序として、
図12に示すように動きベクトル探索範囲の中心から始
めて内周上から順次外周上に動きベクトル候補が位置す
るように設定し、しかも外周に移行するにつれて動きベ
クトル候補の設定点間隔が広くなるようにする。このよ
うに設定した動きベクトル候補に対して前記の指標値を
計算し、予め設定した数の候補に対して計算を終えた段
階で、図13に示した縦方向、横方向および斜め方向の
直線上に位置する動きベクトル候補に対する指標値が図
11に示したような傾向を持つかどうかを各方向毎に調
べる。
The order of generating motion vector candidates is as follows.
As shown in FIG. 12, starting from the center of the motion vector search range, the motion vector candidates are set so as to be located sequentially from the inner periphery to the outer periphery, and the set point interval of the motion vector candidates becomes wider as moving to the outer periphery. To The index values are calculated for the motion vector candidates set in this way, and when the calculation is completed for a predetermined number of candidates, the vertical, horizontal, and diagonal straight lines shown in FIG. It is checked for each direction whether or not the index value for the motion vector candidate located above has the tendency as shown in FIG.

【0086】その結果、ある方向で図11Aのような傾
向があれば、その方向に対しては最適な動きベクトルを
既に探索した範囲内に含むと判断して、それ以上広い領
域に存在する動きベクトル候補の指標値を計算すること
を停止し、既に計算を終えた指標値の中で最低の値をと
る位置の動きベクトル候補の近傍に対してさらに探索精
度を高くして指標値の計算を続行する。
As a result, if there is a tendency as shown in FIG. 11A in a certain direction, it is determined that an optimum motion vector is included in the range already searched for that direction, and a motion existing in a wider area is determined. Stop calculating the index value of the vector candidate and calculate the index value by further increasing the search accuracy in the vicinity of the motion vector candidate at the position that takes the lowest value among the index values that have already been calculated. continue.

【0087】図11Bや図11Cのような傾向があれ
ば、動きベクトルの精度の高い推定を行っても符号化効
率の向上はあまり見込めないので、動きベクトル候補の
間隔を広げるか、指標値の計算を停止する。
If there is such a tendency as shown in FIG. 11B or FIG. 11C, even if estimation of the motion vector is performed with high accuracy, the coding efficiency cannot be expected to be much improved. Stop the calculation.

【0088】図11Dのような傾向を示す場合には、指
標値が上昇する方向に対する計算を停止する。このよう
な処理を行うことにより、無駄な指標値の計算を減らす
ことが可能となり、符号化処理全体の時間を低減できる
ことになる。
When the tendency shown in FIG. 11D is shown, the calculation in the direction in which the index value increases is stopped. By performing such processing, it is possible to reduce the useless calculation of the index value, and it is possible to reduce the time of the entire encoding processing.

【0089】また、予め設定した探索範囲内の動きベク
トル候補に対して全て計算を終えた後に、同様の傾向を
調べて、図11Dのような傾向がまだ検出できるようで
あれば、図12に示すように指標値が小さくなる方向に
さらに探索範囲を広げて同様な処理を行う。このことに
より、探索範囲が不十分であることに起因する符号化効
率の低下を避けることが可能となる。
After the calculation is completed for all the motion vector candidates within the preset search range, the same tendency is checked. If the tendency as shown in FIG. 11D can still be detected, FIG. As shown, similar processing is performed by further expanding the search range in the direction in which the index value decreases. As a result, it is possible to avoid a decrease in coding efficiency due to an insufficient search range.

【0090】このような動きベクトル候補の位置とそれ
に対する指標値の組から得られる傾向は、図11A〜D
のようなカテゴリに分類されて各ブロック毎に1画面分
記憶され、引き続き処理を行う画像の動きベクトルの求
める際の動きベクトル探索範囲の探索中心の初期値と探
索精度を設定するのに用いられる。
The tendency obtained from a set of such a position of a motion vector candidate and an index value corresponding to the position is shown in FIGS.
And is stored for one screen for each block, and is used to set the initial value of the search center of the motion vector search range and the search accuracy when obtaining the motion vector of the image to be subsequently processed. .

【0091】以上説明したような動きベクトルを探索す
る際の探索範囲、探索中心および探索精度といったパラ
メータの初期設定や再設定に要する計算量は、動きベク
トル候補に対する指標値を計算するのに比べてはるかに
少ない計算量で行えるので、結果として処理時間の大幅
な削減ができることになる。
The amount of calculation required for initial setting and resetting of parameters such as the search range, the search center, and the search accuracy when searching for a motion vector as described above is smaller than that for calculating an index value for a motion vector candidate. Since the calculation can be performed with a much smaller calculation amount, the processing time can be greatly reduced as a result.

【0092】次に、本実施例に係る動画像符号化装置の
構成を図8を参照して説明する。
Next, the configuration of the moving picture coding apparatus according to the present embodiment will be described with reference to FIG.

【0093】図8において、入力画像データ313はブ
ロック切り出し部201により複数画素からなる複数ブ
ロックに分割され、符号化対象となる8×8画素のブロ
ックに切り出される。切り出された符号化対象ブロック
の画像信号は、動きベクトル探索部204内の後述する
動き補償部により動き補償された参照画像ブロックの画
像信号301と共に符号化部202に入力され、符号化
対象ブロックと参照画像ブロックの各画素毎の差分であ
る予測誤差信号に対して符号化が行われる。
In FIG. 8, the input image data 313 is divided into a plurality of blocks composed of a plurality of pixels by the block cutout unit 201, and cut out into 8 × 8 pixel blocks to be encoded. The extracted image signal of the encoding target block is input to the encoding unit 202 together with an image signal 301 of a reference image block motion-compensated by a motion compensation unit in the motion vector search unit 204, which will be described later. Encoding is performed on a prediction error signal that is a difference for each pixel of the reference image block.

【0094】符号化部202では符号化処理の典型的な
処理として、予測誤差信号に対して2次元離散的コサイ
ン変換を施し、各変換係数に対して量子化処理を行い、
その量子化結果についてゼロランとそれに続く変換係数
の値の組に対してハフマンコード等を用いて高能率符号
化を行う。符号化部202からの符号化出力315は、
参照画像ブロックを生成するために用いた動きベクトル
302と共に多重化部207により多重化され、最終的
な符号化出力314として出力される。
The encoding unit 202 performs a two-dimensional discrete cosine transform on the prediction error signal as a typical process of the encoding process, and performs a quantization process on each transform coefficient.
For the quantization result, a high-efficiency encoding is performed on a set of a zero run and a value of a transform coefficient following the zero run using a Huffman code or the like. The encoded output 315 from the encoding unit 202 is
The multiplexed signal is multiplexed by the multiplexing unit 207 together with the motion vector 302 used to generate the reference image block, and is output as a final encoded output 314.

【0095】さらに、この符号化出力315は符号化部
202と逆の操作を行う局部復号部206で復号されて
符号化済み画像データとなり、次の入力画像データの符
号化を行う際の参照画像データとして画像バッファ20
5に記憶される。
Further, the encoded output 315 is decoded by a local decoding unit 206 which performs the reverse operation of the encoding unit 202 to become encoded image data, and is used as a reference image for encoding the next input image data. Image buffer 20 as data
5 is stored.

【0096】動きベクトル探索部204では、探索パラ
メータ設定部203で初期設定された動きベクトルの探
索中心と探索範囲および探索の細かさなどのパラメータ
に従って、複数の動きベクトル候補に対して定められた
順序で前記指標値の計算を行う。この複数の動きベクト
ル候補に対して指標値を計算している課程で、動きベク
トル候補の位置とその指標値の組等のデータを探索パラ
メータ設定部203に戻して、探索範囲や探索の細かさ
の再設定を行う。
The motion vector search unit 204 determines the order determined for a plurality of motion vector candidates according to parameters such as the search center, search range, and search fineness of the motion vector initially set by the search parameter setting unit 203. Is used to calculate the index value. In the process of calculating index values for the plurality of motion vector candidates, data such as a set of the position of the motion vector candidate and the index value is returned to the search parameter setting unit 203, and the search range and the fineness of the search are returned. Set again.

【0097】動きベクトル探索部204では、複数の動
きベクトル候補から最終的にその指標値が最小となる動
きベクトル302を求めて、この動きベクトル302と
共に、符号化対象ブロックから動きベクトル302で示
される位置だけずらせた位置の参照画像ブロック301
を画像バッファ205から取り出して出力する。
The motion vector search section 204 finally obtains a motion vector 302 having the minimum index value from a plurality of motion vector candidates, and the motion vector 302 is indicated by the motion vector 302 from the current block together with the motion vector 302. Reference image block 301 shifted by the position
From the image buffer 205 and output.

【0098】図9は、動きベクトル探索部204および
探索パラメータ設定部203の詳細な構成例を示すブロ
ック図である。まず、動きベクトル探索部204につい
て説明する。
FIG. 9 is a block diagram showing a detailed configuration example of the motion vector search section 204 and search parameter setting section 203. First, the motion vector search unit 204 will be described.

【0099】図8のブロック切り出し部201からの入
力画像データ中の符号化対象ブロック311に対して最
適に動き補償された参照画像ブロックを求めるために、
ベクトル候補発生部210により順次出力される動きベ
クトル候補310に従って、参照候補ブロック切り出し
部209により画像バッファ205に入っている参照画
像データ312から参照候補ブロック315が出力され
る。
In order to obtain a reference image block optimally motion-compensated for the encoding target block 311 in the input image data from the block extracting unit 201 in FIG.
In accordance with the motion vector candidates 310 sequentially output by the vector candidate generation unit 210, the reference candidate block extraction unit 209 outputs the reference candidate block 315 from the reference image data 312 stored in the image buffer 205.

【0100】この参照候補ブロック315と符号化対象
ブロック311は指標計算部216に入力され、ここで
両ブロック315,311の対応する位置にある各画素
の差分値の絶対値が計算され、この絶対値のブロック内
の全ての画素に対する和が、与えられた動きベクトル候
補310に対する指標値306として最適ベクトル検出
部208に入力される。
The reference candidate block 315 and the encoding target block 311 are input to the index calculation unit 216, where the absolute value of the difference value of each pixel at the corresponding position between the two blocks 315 and 311 is calculated. The sum of all the pixels in the value block is input to the optimal vector detecting unit 208 as an index value 306 for the given motion vector candidate 310.

【0101】動きベクトル探索部204では最初は粗い
探索を行っているので、その中で最適な動きベクトルを
最適ベクトル検出部208により求めた後、その周囲の
小領域に対して細かい探索を行い、最終的な動きベクト
ルを求める。
Since the motion vector search section 204 initially performs a coarse search, the optimum motion vector is obtained by the optimum vector detection section 208, and then a fine search is performed on a small area around the optimum motion vector. Find the final motion vector.

【0102】最適ベクトル検出部208では、順次入力
される動きベクトル候補310とそれに対する指標値3
06に対して、既に入力された指標値よりも小さな指標
値が入力された場合に、最適動きベクトルの候補として
保持し、全ての動きベクトル候補に対する指標値の計算
が終了した段階で、最適動きベクトル302と対応する
参照画像ブロック301を出力する。
In the optimum vector detecting section 208, the motion vector candidates 310 sequentially inputted and the index value 3
06, when an index value smaller than the already input index value is input, it is held as a candidate for an optimal motion vector, and when the calculation of index values for all motion vector candidates is completed, The reference image block 301 corresponding to the vector 302 is output.

【0103】なお、図9では動きベクトル探索部204
より参照画像ブロック301が出力され、図8の符号化
部202において符号化対象ブロックとの差分(予測誤
差信号)を再び生成しているが、指標計算部216で生
成した差分を最適ベクトル検出部208から符号化部2
02に出力する構成としてもよい。
In FIG. 9, the motion vector search section 204
The reference image block 301 is output, and the difference (prediction error signal) from the current block is generated again in the coding unit 202 in FIG. 8. The difference generated in the index calculation unit 216 is used as the optimum vector detection unit. 208 to the encoding unit 2
02 may be output.

【0104】次に、探索パラメータ設定部203につい
て説明する。
Next, the search parameter setting section 203 will be described.

【0105】ある符号化対象ブロックに対する動きベク
トルを求める最初の段階として、探索パラメータ初期設
定部211により探索パラメータとして動きベクトルの
探索中心、探索範囲および探索精度の初期値を決定す
る。これらの初期値を決定する際に、直前の符号化済み
画像中の各ブロックに対する動きベクトルおよび後述す
る判定モードを用いる。これらの動きベクトルおよび判
定モードの情報は、それぞれベクトルメモリ212およ
び判定モードメモリ215に記憶されている。
As a first step of obtaining a motion vector for a certain block to be coded, the search parameter initial setting unit 211 determines a search center, a search range, and an initial value of search accuracy of a motion vector as search parameters. When determining these initial values, a motion vector for each block in the immediately preceding encoded image and a determination mode described later are used. The information on the motion vector and the determination mode is stored in the vector memory 212 and the determination mode memory 215, respectively.

【0106】動きベクトルの探索中心は、ベクトルメモ
リ212に記憶されている直前の符号化済み画像の、符
号化対象ブロックと同位置のブロックに対するベクトル
で指定される値を通常はそのまま使用する。しかし、ベ
クトルメモリ212に記憶されている計算対象のブロッ
クのベクトルと、その周囲の8ブロックに対するベクト
ルとの差分ベクトルの大きさの和が予め設定した値より
も大きければ、その領域は異なる動きをしている2つの
物体の境界になっているか、あるいは動きが激しい部分
であると判断して、例外的に探索中心の前記ベクトルに
よるシフトは行わない。
As the search center of the motion vector, the value specified by the vector for the block at the same position as the block to be encoded in the immediately preceding encoded image stored in the vector memory 212 is normally used as it is. However, if the sum of the magnitudes of the difference vectors between the vector of the calculation target block stored in the vector memory 212 and the vectors for the eight surrounding blocks is larger than a preset value, the region performs a different motion. It is determined that it is a boundary between two objects that are moving or a part where the movement is rapid, and the shift of the search center by the vector is not performed exceptionally.

【0107】図12における動きベクトルの探索範囲5
02の初期設定範囲は、通常は予め定められた範囲に設
定するが、上述した探索中心の設定において説明した例
外の判定がなされた場合には、通常よりも広く設定す
る。また、判定モード305が図11Cに示すような傾
向を示す場合にも、動きが激しい領域であると判定して
探索範囲を通常よりも広く設定する。
Search range 5 of motion vector in FIG.
The initial setting range of 02 is normally set to a predetermined range, but is set wider than usual when an exception described in the above-described setting of the search center is made. Also, when the determination mode 305 shows a tendency as shown in FIG. 11C, it is determined that the region is a region where the movement is sharp, and the search range is set wider than usual.

【0108】動きベクトル探索の細かさの初期設定は、
図12に示すように探索中心501付近は細かく設定
し、中心から離れるに従って動きベクトルの候補点が少
しずつ粗くなるように設定する。ただし、判定モードが
図11Bあるいは図11Cのような場合には、図11A
のモードの場合よりも若干粗くなるように初期設定を行
う。
The initial setting of the fineness of the motion vector search is as follows.
As shown in FIG. 12, the vicinity of the search center 501 is set finely, and the setting is made such that the candidate points of the motion vector gradually become coarser as the distance from the center increases. However, when the determination mode is as shown in FIG. 11B or FIG.
The initial setting is made so that it is slightly coarser than in the case of the mode.

【0109】次に、動きベクトル探索範囲の再設定につ
いて説明する。
Next, resetting of the motion vector search range will be described.

【0110】本実施例においては、前述した探索パラメ
ータの初期設定に従って探索中心に近い候補点から動き
ベクトル候補を発生し、さらにそれらの動きベクトル候
補に対する指標値を計算して、順に探索中心から遠い候
補点の指標値を計算するようにしている。動きベクトル
探索範囲の再設定は、探索範囲内の初期設定で定めた領
域内の候補点に対する全ての指標値を計算する前に、あ
る一定数の候補に対する指標値、すなわち探索中心から
ある範囲内に存在する候補に対する指標値を計算した段
階で、探索パラメータの初期設定の見直しを行い、必要
ならばその再設定をする。
In this embodiment, motion vector candidates are generated from candidate points close to the search center in accordance with the above-described initial setting of the search parameters, and index values for the motion vector candidates are calculated. The index value of the candidate point is calculated. Before resetting the motion vector search range, all index values for the candidate points in the area defined by the initial setting in the search range are calculated before the index values for a certain number of candidates, that is, within a certain range from the search center. When the index value for the candidate existing in is calculated, the initial setting of the search parameter is reviewed, and if necessary, the search parameter is reset.

【0111】この段階で求められている候補点とその評
価値の組に対して、図13で示す縦方向602、横方向
604および斜め方向603,605の4つの直線上に
あるものを抽出し、横軸に候補点の位置関係を保存して
並べ、縦軸にその候補点に対する指標値をプロットした
ときのグラフ形状の傾向を調べることを行う。実際に
は、平均値および分散を求め、さらにスムージング処理
を行った後に4点の評価値を調べてグラフの傾きを判定
する。その結果により、図11に従ってA,B,C,D
およびそれ以外という5つのカテゴリに分類する。
With respect to the set of candidate points and their evaluation values obtained at this stage, those on four straight lines of a vertical direction 602, a horizontal direction 604, and oblique directions 603 and 605 shown in FIG. 13 are extracted. Then, the positional relationship between the candidate points is stored and arranged on the horizontal axis, and the tendency of the graph shape when the index value for the candidate point is plotted on the vertical axis is examined. Actually, the average value and the variance are obtained, and after performing the smoothing process, the evaluation values of the four points are examined to determine the inclination of the graph. According to the result, A, B, C, D according to FIG.
And the other five categories.

【0112】そして、ある方向でカテゴリがAの場合に
は、その方向に対しては最適な動きベクトルの値を既に
探索した範囲内に含むと判断して、それ以上広い領域に
存在する動きベクトル候補の指標値を計算することを停
止し、既に計算を終えた指標値の中で最低の値をとる位
置の動きベクトル候補の近傍に対してさらに探索精度を
高くして計算を続行する。
If the category is A in a certain direction, it is determined that the value of the optimum motion vector for the direction is included in the range already searched, and the motion vector existing in a wider area is determined. The calculation of the index values of the candidates is stopped, and the calculation is continued with the search accuracy further increased in the vicinity of the motion vector candidate at the position having the lowest value among the already calculated index values.

【0113】また、カテゴリがBあるいはCの場合に
は、動きベクトルの精度の高い推定を行っても符号化効
率の向上はあまり見込めないので、候補点の間隔を広げ
るか、指標値の計算を停止する。カテゴリがDの場合に
は、指標値が上昇する方向に対する計算を停止する。
When the category is B or C, even if estimation of the motion vector is performed with high accuracy, the coding efficiency cannot be expected to be much improved. Therefore, the interval between the candidate points should be increased or the index value should be calculated. Stop. When the category is D, the calculation in the direction in which the index value increases is stopped.

【0114】さらに、探索範囲内の候補に対して全て計
算を終えた後に、同様の分類を行ってカテゴリDに分類
できる場合には、図13に示すように指標値が小さくな
る方向にさらに探索範囲を広げて同様な処理を行う。図
13では斜め方向603および横方向604において探
索範囲を広げる場合の例を示している。斜線で示した6
06の領域が拡張した探索範囲である。
Further, when the same classification is performed after all the candidates within the search range have been calculated and classification into the category D is possible, the search is further performed in the direction in which the index value decreases as shown in FIG. The same processing is performed by expanding the range. FIG. 13 shows an example in which the search range is expanded in the oblique direction 603 and the horizontal direction 604. 6 shaded
The area 06 is the expanded search range.

【0115】この分類した結果は各ブロック毎に判定モ
ードメモリ215に記憶され、次の画像を符号化する際
に、既に説明したように探索パラメータの初期設定をす
るために参考とされる。
The classified result is stored in the determination mode memory 215 for each block, and is used as a reference for initial setting of the search parameters as described above when encoding the next image.

【0116】次に、本発明を動き補償予測方式を用いた
動画像符号化装置に適用した他の実施例について図14
を参照して説明する。
Next, another embodiment in which the present invention is applied to a moving picture coding apparatus using a motion compensation prediction method will be described with reference to FIG.
This will be described with reference to FIG.

【0117】図14において、低域通過フィルタ処理部
1010は入力端子1001より順次入力される画像デ
ータの空間的高周波数成分を抑圧する、低域通過フィル
タ処理を施して出力する。サブサンプル処理部1020
は、低域通過フィルタ処理部1010によりフィルタ処
理を施された画像データから所定画素間隔で一部の画素
信号を取り出すサブサンプル処理を施して出力する。こ
のように、低域通過フィルタ処理部1010およびサブ
サンプル処理部1020によって、入力画像データの解
像度を低下させる処理が行われる。
In FIG. 14, a low-pass filter processing unit 1010 performs low-pass filter processing for suppressing spatially high-frequency components of image data sequentially input from an input terminal 1001, and outputs the processed image data. Sub-sample processing unit 1020
Performs a sub-sampling process of extracting some pixel signals at predetermined pixel intervals from the image data that has been subjected to the filtering process by the low-pass filtering unit 1010, and outputs the result. As described above, the processing for reducing the resolution of the input image data is performed by the low-pass filter processing unit 1010 and the sub-sampling processing unit 1020.

【0118】参照画像メモリ部1030は、サブサンプ
ル処理部1020により作成される図19に示すような
上位層の画像を記憶し、符号化済み画像の上位層画像を
出力する。
The reference image memory unit 1030 stores an upper layer image as shown in FIG. 19 created by the sub-sample processing unit 1020, and outputs an upper layer image of the coded image.

【0119】第1のブロックスキャン変換処理部104
0は、サブサンプル処理部1020により作成される、
符号化対象画像の上位層画像を複数画素で構成されるブ
ロック単位で出力する。
First block scan conversion processing unit 104
0 is created by the sub-sample processing unit 1020.
An upper layer image of the image to be encoded is output in units of blocks composed of a plurality of pixels.

【0120】第1の動きベクトル検出部1050は、参
照画像メモリ部1030に記憶された符号化済み画像の
上位層画像から、動きベクトル記憶部1060に予め記
憶された動きベクトルで指定される点を中心にした所定
の探索範囲について、入力画像データの上位層画像のブ
ロックと出来るだけ相関の高い一次検出ブロックを探索
し、その一次ブロックの位置を示す一次動きベクトルを
出力する。
The first motion vector detection unit 1050 determines a point specified by a motion vector stored in the motion vector storage unit 1060 from the upper layer image of the encoded image stored in the reference image memory unit 1030. A primary detection block having a correlation as high as possible with the block of the upper layer image of the input image data is searched for a centered predetermined search range, and a primary motion vector indicating the position of the primary block is output.

【0121】第2のブロックスキャン変換処理部107
0は、入力端子1001より順次入力される画像データ
を複数画素で構成されるブロック単位で出力する。
Second block scan conversion processing section 107
A value of 0 outputs image data sequentially input from the input terminal 1001 in units of blocks composed of a plurality of pixels.

【0122】第2の動きベクトル検出/動き補償誤差計
算部1080は、第1の動きベクトル検出部1050よ
り出力され動きベクトル記憶部1060を介して入力さ
れる一次動きベクトルの種類、つまりその一次動きベク
トルが探索範囲のどの領域から検出されたかに応じて、
探索範囲の中心位置と探索精度(探索する画素単位)の
何れか一方または両方が制御される。そして、第2の動
きベクトル検出/動き補償誤差計算部1080では、再
生参照画像メモリ部1090に記憶された参照用の局部
復号画像から、入力画面のブロックと最も相関の高い二
次検出ブロックを探索する。この二次検出ブロックの画
素デ−タは局部復号用加算部1140へ入力され、入力
画面のブロックとその二次検出ブロックとの差分デ−タ
がDCT処理部1100へ、その二次検出ブロックの位
置を示す二次動きベクトルが符号化処理部1150と動
きベクトル記憶部1060へそれぞれ出力される。
The second motion vector detection / motion compensation error calculation section 1080 calculates the type of the primary motion vector output from the first motion vector detection section 1050 and input via the motion vector storage section 1060, that is, the primary motion vector. Depending on where in the search range the vector was found,
Either or both of the center position of the search range and the search accuracy (pixel unit to be searched) are controlled. Then, the second motion vector detection / motion compensation error calculation unit 1080 searches the reference local decoded image stored in the reproduction reference image memory unit 1090 for a secondary detection block having the highest correlation with the block of the input screen. I do. The pixel data of this secondary detection block is input to the local decoding addition unit 1140, and the difference data between the block of the input screen and the secondary detection block is sent to the DCT processing unit 1100, and the secondary detection block The secondary motion vector indicating the position is output to the encoding processing unit 1150 and the motion vector storage unit 1060, respectively.

【0123】動きベクトル記憶部1060は、第1の動
きベクトル検出部1050からの一次動きベクトルを記
憶し、第2の動きベクトル検出/動き補償誤差計算部1
080における探索範囲と探索精度を制御すると共に、
第2の動きベクトル検出/動き補償誤差計算部1080
からの二次動きベクトルを一次動きベクトル検出の探索
精度と同じ画素単位のデ−タに変換して記憶し、次の符
号化対象画像の一次動きベクトル探索に使用する。
The motion vector storage unit 1060 stores the primary motion vector from the first motion vector detection unit 1050, and stores the primary motion vector in the second motion vector detection / motion compensation error calculation unit 1
In addition to controlling the search range and search accuracy in 080,
Second motion vector detection / motion compensation error calculator 1080
Is converted into data in the same pixel unit as the search accuracy of the primary motion vector detection and stored, and used for the primary motion vector search of the next image to be encoded.

【0124】DCT処理部1100は、第2の動きベク
トル検出/動き補償誤差計算部1080から出力される
ブロック単位の差分デ−タに対して離散的コサイン変換
処理を行って出力する。量子化処理部1110は、DC
T処理部1100から出力されるデ−タに対して所定の
量子化幅による除算処理によって再量子化を行う。符号
化処理部1150は、動きベクトル検出/動き補償誤差
計算部1080から出力される動きベクトルと量子化処
理部1110から出力される量子化されたDCTデ−タ
を符号化して出力する。
The DCT processing section 1100 performs a discrete cosine transform process on the block-based difference data output from the second motion vector detection / motion compensation error calculation section 1080 and outputs the result. The quantization processing unit 1110 has a DC
The data output from the T processing unit 1100 is requantized by a division process using a predetermined quantization width. The encoding processing unit 1150 encodes and outputs the motion vector output from the motion vector detection / motion compensation error calculation unit 1080 and the quantized DCT data output from the quantization processing unit 1110.

【0125】逆量子化処理部1120は、将来に参照用
画像として使用される画像の符号化の時に、量子化処理
部1110から出力されるデ−タに対して、符号化時に
使用した量子化幅による乗算処理によって逆量子化を行
う。逆DCT処理部1130は、逆量子化処理部112
0から出力されるブロック単位のデ−タに対して逆離散
的コサイン変換を行い、差分デ−タを復元する。
[0125] The inverse quantization processing unit 1120 applies, to the data output from the quantization processing unit 1110 when encoding an image to be used as a reference image in the future, the quantization used in encoding. Inverse quantization is performed by multiplication processing by the width. The inverse DCT processing unit 1130 includes an inverse quantization processing unit 112
An inverse discrete cosine transform is performed on the data in block units output from 0 to restore the difference data.

【0126】局部復号用加算部1140は、第2のベク
トル検出/動き補償誤差計算部1080から出力される
二次検出ブロックの画素デ−タと逆DCT処理部113
0から出力される復元された差分デ−タとを加算して、
再生参照画像メモリ部1090に出力する。
The local decoding adder 1140 outputs the pixel data of the secondary detection block output from the second vector detection / motion compensation error calculator 1080 and the inverse DCT processor 113.
0 and the restored difference data output from
The data is output to the reproduction reference image memory unit 1090.

【0127】このようにして符号化されたデ−タ100
2は、通信装置又は記録装置2000を介して局部復元
処理部3010に入力され、前記動きベクトル情報と量
子化されたDCTデ−タが復号される。そして、量子化
されたDCTデ−タを逆量子化処理部3020に出力す
ると共に、動きベクトル情報を用いて参照用再生画像メ
モリ部3050から二次検出ブロックの画素デ−タを読
み出す。
Data 100 encoded in this way
2 is input to the local restoration processing unit 3010 via the communication device or the recording device 2000, and the motion vector information and the quantized DCT data are decoded. Then, the quantized DCT data is output to the inverse quantization processing unit 3020, and the pixel data of the secondary detection block is read from the reference reproduction image memory unit 3050 using the motion vector information.

【0128】逆量子化処理部3020は、前記の量子化
されたDCTデ−タに対して、符号化時に使用した量子
化幅による乗算処理によって逆量子化を行う。逆DCT
処理部3030は、前記逆量子化処理部3020から出
力されるブロック単位のデ−タに対して、逆離散的コサ
イン変換を行い、差分デ−タを復元する。局部復号用加
算部3040は、参照用再生画像メモリ部3050から
出力される二次検出ブロックの画素デ−タと逆DCT処
理部3030から出力される復元された差分デ−タとを
加算して出力する。再生参照画像メモリ部3050は、
再生画面が将来の参照用画面として使用する画面の時
に、局部復号用加算部3040から出力される再生画素
デ−タを記憶する。ラインスキャン変換処理部3060
は、局部復号用加算部3040からブロック単位で出力
される再生画素デ−タを画面表示のためにライン単位の
画素デ−タにして出力する。
The inverse quantization processing unit 3020 performs inverse quantization on the quantized DCT data by a multiplication process using the quantization width used at the time of encoding. Inverse DCT
The processing unit 3030 performs an inverse discrete cosine transform on the data in block units output from the inverse quantization processing unit 3020 to restore the difference data. The local decoding addition unit 3040 adds the pixel data of the secondary detection block output from the reference reproduction image memory unit 3050 and the restored difference data output from the inverse DCT processing unit 3030. Output. The reproduction reference image memory unit 3050 includes:
When the playback screen is a screen to be used as a reference screen for the future, the playback pixel data output from the local decoding addition unit 3040 is stored. Line scan conversion processing unit 3060
Outputs the reproduced pixel data output from the local decoding adder 3040 in block units as pixel data in line units for screen display.

【0129】図15に、本実施例における動きベクトル
検出方法の第1の例を示す。
FIG. 15 shows a first example of the motion vector detecting method according to the present embodiment.

【0130】ここでは、符号化する画面の上位層画面R
u及び下位層画面Rlのブロックサイズをそれぞれ4画
素及び8画素とし、参照用画面の上位層画面Su及び下
位層画面Slの探索範囲をともに±2画素として説明す
る。図15(b−1)、(b−5)に示すように、第1
の動きベクトル検出部1050により得た一次検出動き
ベクトルがその探索範囲の外周の場合には、第2の動き
ベクトル検出/動き補償誤差計算部1080での探索領
域が第1の動きベクトル検出部1050で探索した領域
と重なる部分が少なくなるように、第2の動きベクトル
検出/動き補償誤差計算部1080での探索範囲の中心
位置を第1の動きベクトル検出部1050での探索範囲
の中心から更に離れるように制御し、動きの大きな部分
領域に最適な予測信号を得られるようにする。これによ
り、図20に示した従来の動きベクトル検出方法では見
逃していた最適な探索位置Bも、従来と同じ処理量で検
出できるようになる。
Here, the upper layer screen R of the screen to be encoded
The description will be made assuming that the block sizes of u and the lower layer screen Rl are 4 pixels and 8 pixels, respectively, and the search range of the upper layer screen Su and the lower layer screen Sl of the reference screen is both ± 2 pixels. As shown in FIGS. 15 (b-1) and (b-5), the first
When the primary detection motion vector obtained by the motion vector detection unit 1050 is the outer periphery of the search range, the search area in the second motion vector detection / motion compensation error calculation unit 1080 is changed to the first motion vector detection unit 1050. The center position of the search range in the second motion vector detection / motion compensation error calculation unit 1080 is further shifted from the center of the search range in the first motion vector detection unit 1050 so that the portion overlapping with the area searched in step 1 is reduced. It is controlled so as to be separated, so that an optimal prediction signal can be obtained for a partial area having a large motion. As a result, the optimum search position B, which was missed in the conventional motion vector detection method shown in FIG.

【0131】図16に、本実施例における動きベクトル
検出方法の第2の例を示す。この例においても、符号化
する画面の上位層画面Ruおよび下位層画面Rlのブロ
ックサイズをそれぞれ4画素および8画素とし、参照用
画面の上位層画面Suおよび下位層画面Slの探索範囲
をともに±2画素として説明する。図16の(b−2)
や(b−4)に示すように、前記第1の動きベクトル検
出部1050により得た動きベクトルが、その探索範囲
の内周の場合には、第2の動きベクトル検出/動き補償
誤差計算部1080での探索精度を半画素単位に細かく
して、狭い範囲から探索するように制御し、動きの小さ
な部分領域に最適な予測信号を得られるようにする。こ
れにより、図20に示した従来の動きベクトル検出方法
では検出出来なかった微妙な探索位置も、従来と同じ処
理量で検出できるようになる。
FIG. 16 shows a second example of the motion vector detecting method according to the present embodiment. Also in this example, the block sizes of the upper layer screen Ru and the lower layer screen Rl of the screen to be encoded are set to 4 pixels and 8 pixels, respectively, and the search ranges of the upper layer screen Su and the lower layer screen Sl of the reference screen are both ±. The description will be made with two pixels. (B-2) of FIG.
As shown in (b-4), when the motion vector obtained by the first motion vector detection unit 1050 is the inner circumference of the search range, the second motion vector detection / motion compensation error calculation unit The search accuracy in 1080 is made fine in half-pixel units, and control is performed so as to search from a narrow range, so that an optimal prediction signal can be obtained for a partial area with small motion. As a result, a delicate search position that could not be detected by the conventional motion vector detection method shown in FIG. 20 can be detected with the same processing amount as in the related art.

【0132】図17に、本実施例における動きベクトル
検出方法の第3の例を示す。この例においても、符号化
する画面の上位層画面Ruおよび下位層画面Rlのブロ
ックサイズをそれぞれ4画素および8画素とし、参照用
画面の上位層画面Suおよび下位層画面Slの探索範囲
をともに±2画素として説明する。図17の(b−1)
や(b−5)に示すように、第1の動きベクトル検出部
1050により得た動きベクトルがその探索範囲の外周
の場合には、第2の動きベクトル検出/動き補償誤差計
算部1080での探索した領域が第1の動きベクトル検
出部1050で探索した領域と重なる部分が少なくなる
ように、第2の動きベクトル検出/動き補償誤差計算部
1080での探索範囲の中心位置を第1の動きベクトル
検出部1050での探索範囲の中心から更に離れるよう
に制御し、動きの大きな部分領域に最適な予測信号を得
られるようにする。
FIG. 17 shows a third example of the motion vector detecting method according to the present embodiment. Also in this example, the block sizes of the upper layer screen Ru and the lower layer screen Rl of the screen to be encoded are set to 4 pixels and 8 pixels, respectively, and the search ranges of the upper layer screen Su and the lower layer screen Sl of the reference screen are both ±. The description will be made with two pixels. (B-1) of FIG.
As shown in (b-5) or (b-5), when the motion vector obtained by the first motion vector detection unit 1050 is the outer periphery of the search range, the second motion vector detection / motion compensation error calculation unit 1080 The center position of the search range in the second motion vector detection / motion compensation error calculator 1080 is set to the first motion so that the searched area has less overlap with the area searched by the first motion vector detector 1050. Control is performed so as to be further away from the center of the search range in the vector detection unit 1050 so that an optimal prediction signal can be obtained for a partial area having a large motion.

【0133】また、図17の(b−2)や(b−4)に
示すように、第1の動きベクトル検出部1050により
得た動きベクトルがその探索範囲の内周の場合には、第
2の動きベクトル検出/動き補償誤差計算部1080で
探索する領域の中心位置を一次検出動きベクトルで示さ
れる位置にするように制御し、通常の動きの部分領域に
最適な予測信号を得られるようにする。
As shown in (b-2) and (b-4) of FIG. 17, when the motion vector obtained by the first motion vector detection unit 1050 is the inner circumference of the search range, the The motion vector detection / motion compensation error calculation unit 1080 controls the center position of the search area to be the position indicated by the primary detection motion vector, so that an optimal prediction signal can be obtained for a normal motion partial area. To

【0134】また、図17の(b−3)に示すように、
第1の動きベクトル検出部1050により得た動きベク
トルが、その探索範囲の中心に位置する場合には、第2
の動きベクトル検出/動き補償誤差計算部1080での
探索範囲の中心位置を一次検出動きベクトルで示される
位置になるように制御し、通常の動きの部分領域に最適
な予測信号を得られるようにする。これにより、図20
に示した従来の動きベクトル検出方法では検出出来なか
った微妙な探索位置も、従来と同じ処理量で検出できる
ようになる。
Further, as shown in FIG. 17 (b-3),
If the motion vector obtained by the first motion vector detection unit 1050 is located at the center of the search range, the second
Is controlled so that the center position of the search range in the motion vector detection / motion compensation error calculation unit 1080 becomes the position indicated by the primary detection motion vector, so that an optimal prediction signal can be obtained for a partial region of normal motion. I do. As a result, FIG.
The subtle search position that could not be detected by the conventional motion vector detection method shown in (1) can be detected with the same processing amount as before.

【0135】さらに、第2の動きベクトル検出/動き補
償誤差計算部1080で探索する画素単位半画素単位に
細かくして、狭い範囲から探索するように制御し、動き
の小さな部分領域に最適な予測信号を得られるようにす
る。これにより、図20に示した従来の動きベクトル検
出方法では見逃していた最適な探索位置や検出出来なか
った微妙な探索位置も、従来と同じ処理量で検出できる
ようになる。
Further, the second motion vector detection / motion compensation error calculation section 1080 controls the search so that the search is performed in a narrow range by making the search in a pixel unit and a half pixel unit, so that the optimum prediction is performed in a small motion partial area. Get a signal. As a result, an optimal search position that has been missed by the conventional motion vector detection method shown in FIG. 20 or a delicate search position that cannot be detected can be detected with the same processing amount as before.

【0136】図18に、本実施例における動きベクトル
検出方法の第4の例を示す。この例では、符号化する画
面の上位層画面Ruおよび下位層画面Rlのブロックサ
イズをそれぞれ4画素および8画素とし、参照用画面の
上位層画面Suおよび下位層画面Slの探索範囲をとも
に偶数である8画素として説明する。
FIG. 18 shows a fourth example of the motion vector detecting method according to the present embodiment. In this example, the upper layer screen Ru and the lower layer screen Rl of the screen to be encoded have block sizes of 4 pixels and 8 pixels, respectively, and the search range of the upper layer screen Su and the lower layer screen Sl of the reference screen is an even number. Description will be given assuming that there are certain eight pixels.

【0137】図18の(a)に示すように、符号化する
画面の上位層画面のサンプル点の位置と参照用画面の上
位層画面のサンプル点の位置を互いに逆位相となるよう
にすることにより、上位層での探索を左右対象にするこ
とができる。従って、所有する探索範囲が偶数であって
も、第1の例や第3の例を利用することにより、下位層
画面の探索範囲を左右対象にすることができ、所有する
処理能力を有効に利用することができる。
As shown in FIG. 18A, the positions of the sample points on the upper layer screen of the screen to be coded and the positions of the sample points on the upper layer screen of the reference screen are in opposite phases to each other. Thus, the search in the upper layer can be symmetrical. Therefore, even if the possessed search range is an even number, the search range of the lower layer screen can be symmetrical by using the first and third examples, and the possessed processing capacity can be effectively reduced. Can be used.

【0138】[0138]

【発明の効果】本発明によれば、より効率的で、かつ視
覚的に画質劣化の少ない画像符号化装置を提供すること
ができる。
According to the present invention, it is possible to provide an image coding apparatus which is more efficient and has less visual deterioration in image quality.

【0139】また、本発明によればより少ない演算量で
動き補償予測を行って符号化を行うことができると同時
に、画像の動きが少なく動きベクトルの探索範囲が十分
でない場合にも符号化効率が低下しない動画像のための
画像符号化装置を提供することができる。
Further, according to the present invention, coding can be performed by performing motion compensation prediction with a smaller amount of operation, and at the same time, the coding efficiency can be improved even when the motion of the image is small and the search range of the motion vector is not sufficient. It is possible to provide an image encoding device for a moving image in which the image quality does not decrease.

【0140】さらに、本発明によれば一次動きベクトル
が探索範囲内のどの領域から検出されたかに応じて、最
終的な二次動きベクトルの探索範囲および探索精度の少
なくとも一方を制御することにより、画像の動きの大き
さによらず常に最適な予測信号を得ることができ、符号
化効率の高い動画像のための画像符号化装置を提供する
ことができる。
Furthermore, according to the present invention, by controlling at least one of the search range and the search accuracy of the final secondary motion vector in accordance with the region in the search range from which the primary motion vector is detected, An optimal prediction signal can always be obtained irrespective of the magnitude of image motion, and an image encoding device for a moving image with high encoding efficiency can be provided.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の画像符号化装置の一実施例を示すブロ
ック図
FIG. 1 is a block diagram showing an embodiment of an image encoding apparatus according to the present invention.

【図2】本発明による適応量子化の説明図FIG. 2 is an explanatory diagram of adaptive quantization according to the present invention.

【図3】適応量子化による量子化幅の変化の一例を示す
FIG. 3 is a diagram showing an example of a change in quantization width due to adaptive quantization.

【図4】アクティビティに対する量子化幅の変化の特性
を示す図
FIG. 4 is a diagram showing characteristics of a change in a quantization width with respect to an activity;

【図5】本発明における適応量子化方法の説明図FIG. 5 is an explanatory diagram of an adaptive quantization method according to the present invention.

【図6】本発明の画像符号化装置の他の実施例を示すブ
ロック図
FIG. 6 is a block diagram showing another embodiment of the image encoding apparatus of the present invention.

【図7】本発明をフレーム間予測を用いる画像符号化装
置に適用した実施例を示すブロック図
FIG. 7 is a block diagram showing an embodiment in which the present invention is applied to an image coding apparatus using inter-frame prediction.

【図8】本発明を動き補償予測符号化を用いる動画像符
号化装置に適用した実施例を示すブロック図
FIG. 8 is a block diagram showing an embodiment in which the present invention is applied to a moving picture coding apparatus using motion compensated prediction coding.

【図9】図8における動きベクトル探索部と探索範囲設
定部の構成を示すブロック図
9 is a block diagram showing a configuration of a motion vector search unit and a search range setting unit in FIG.

【図10】同実施例における動きベクトル探索中心の設
定の説明図
FIG. 10 is an explanatory diagram of setting of a motion vector search center in the embodiment.

【図11】同実施例における動きベクトル候補とその指
標値の特性を示す図
FIG. 11 is a view showing characteristics of motion vector candidates and their index values in the embodiment.

【図12】同実施例における動きベクトル探索範囲と動
きベクトル候補の設定図
FIG. 12 is a diagram illustrating a setting range of a motion vector search range and a motion vector candidate in the embodiment.

【図13】同実施例における探索パラメ−タの再設定の
説明図
FIG. 13 is an explanatory diagram of resetting of search parameters in the embodiment.

【図14】本発明を動き補償予測符号化を用いる動画像
符号化装置に適用した他の実施例を示すブロック図
FIG. 14 is a block diagram showing another embodiment in which the present invention is applied to a moving picture coding apparatus using motion compensated predictive coding.

【図15】同実施例における動きベクトル検出方法の第
1の例を示す図
FIG. 15 is a diagram showing a first example of a motion vector detection method in the embodiment.

【図16】同実施例における動きベクトル検出方法の第
1の例を示す図
FIG. 16 is a diagram showing a first example of a motion vector detection method in the embodiment.

【図17】同実施例における動きベクトル検出方法の第
1の例を示す図
FIG. 17 is a diagram showing a first example of a motion vector detection method in the embodiment.

【図18】同実施例における動きベクトル検出方法の第
1の例を示す図
FIG. 18 is a diagram showing a first example of a motion vector detection method in the embodiment.

【図19】ピラミッド構造を示す図FIG. 19 shows a pyramid structure.

【図20】従来の動きベクトル検出方法の説明図FIG. 20 is an explanatory diagram of a conventional motion vector detection method.

【符号の説明】[Explanation of symbols]

101…ブロック切り出し部 102…2次元離散的直交変換部 103…量子化器 104…可変長符号化部 105…バッファ 106…ブロックアクティビティ計算部 107…基本量子化テーブル 108…適応量子化制御部 109…量子化幅制御パラメータ計算部 110…全アクティビティ計算部 111…メモリ 112…量子化変化幅計算部 113…2次元ローパスフィルタ 114…クラス化部 115…逆量子化器 116…2次元離散的直交逆変換部 117…フレームメモリ 118…動き補償部 119…シーンチェンジ検出部 120…多重化部 121…メモリ 201…ブロック切り出し部 202…符号化部 203…探索パラメ−タ設定部 204…動きベクトル探索部 205…画像バッファ 206…局部復号部 207…多重化部 208…最適ベクトル検出部 209…参照候補ブロック切り出し部 210…ベクトル候補発生部 211…探索パラメ−タ初期設定部 212…ベクトルメモリ 214…探索パラメ−タ再設定部 215…判定モ−ドメモリ 216…指標計算部 1020…サブサンプル処理部 1030…参照画像メモリ部 1040,1070…ブロックスキャン変換処理部 1050…第1の動きベクトル検出部 1080…第2の動きベクトル検出/動き補償誤差計算
部 1090…参照用再生画像メモリ部
DESCRIPTION OF SYMBOLS 101 ... Block extraction part 102 ... Two-dimensional discrete orthogonal transformation part 103 ... Quantizer 104 ... Variable length coding part 105 ... Buffer 106 ... Block activity calculation part 107 ... Basic quantization table 108 ... Adaptive quantization control part 109 ... Quantization width control parameter calculation unit 110: total activity calculation unit 111: memory 112: quantization change width calculation unit 113: two-dimensional low-pass filter 114: classifying unit 115: inverse quantizer 116: two-dimensional discrete orthogonal inverse transformation Unit 117 Frame memory 118 Motion compensation unit 119 Scene change detection unit 120 Multiplexing unit 121 Memory 201 Block cutout unit 202 Encoding unit 203 Search parameter setting unit 204 Motion vector search unit 205 Image buffer 206: Local decoding unit 207: Multiplexing unit 208 ... Optimal vector detection unit 209 ... Reference candidate block cutout unit 210 ... Vector candidate generation unit 211 ... Search parameter initial setting unit 212 ... Vector memory 214 ... Search parameter resetting unit 215 ... Judgment mode memory 216 ... Index Calculation unit 1020: Sub-sample processing unit 1030: Reference image memory unit 1040, 1070: Block scan conversion processing unit 1050: First motion vector detection unit 1080: Second motion vector detection / motion compensation error calculation unit 1090: For reference Playback image memory

───────────────────────────────────────────────────── フロントページの続き (72)発明者 山影 朋夫 神奈川県川崎市幸区小向東芝町1番地 株式会社東芝総合研究所内 (72)発明者 奥 忠宏 神奈川県川崎市幸区小向東芝町1番地 株式会社東芝総合研究所内 (56)参考文献 特開 平3−117991(JP,A) 特開 平2−33286(JP,A) 特開 平1−233893(JP,A) 特開 平3−4686(JP,A) 特開 平2−145079(JP,A) 特開 昭60−177782(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04N 7/24 - 7/68 ──────────────────────────────────────────────────続 き Continuing from the front page (72) Inventor Tomoo Yamakage 1 Toshiba-cho, Komukai-shi, Kawasaki-shi, Kanagawa Prefecture Within Toshiba Research Institute, Inc. (72) Inventor Tadahiro Oku 1 Toshiba-cho, Komukai-shi, Kawasaki-shi, Kanagawa Address Toshiba Research Laboratory Co., Ltd. (56) References JP-A-3-117991 (JP, A) JP-A-2-33286 (JP, A) JP-A-1-2333893 (JP, A) JP-A-3-233 4686 (JP, A) JP-A-2-145079 (JP, A) JP-A-60-177782 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) H04N 7/ 24-7 / 68

Claims (5)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】画像データに対して解像度を低下させる処
理を施す信号処理手段と、 この信号処理手段により処理された後の入力画像データ
中の符号化対象ブロックについて、前記信号処理手段に
より処理された後の符号化済み画像データ中の参照画像
ブロックを参照して第1の探索範囲にわたり一次動きベ
クトルを検出する第1の動きベクトル検出手段と、 前記信号処理手段により処理されない入力画像データ中
の符号化対象ブロックについて、前記信号処理手段によ
り処理されない符号化済み画像データ中の参照画像ブロ
ックを参照して第2の探索範囲にわたり所定の探索精度
で二次動きベクトルを求める第2の動きベクトル検出手
段と、 前記第1の動きベクトル検出手段により検出された一次
動きベクトルが前記第1の探索範囲内の中央部分及び外
周部分のうちのいずれの部分から検出されたかに応じ
て、前記第2の動きベクトル検出手段における第2の探
索範囲の大きさと中心位置および探索精度の少なくとも
一つを制御する制御手段と、 前記第2の動きベクトル検出手段により検出された二次
動きベクトルにより指定される前記参照画像ブロックと
前記符号化対象ブロックとの差分を符号化する符号化手
段とを有することを特徴とする画像符号化装置。
1. A signal processing means for performing processing for lowering resolution on image data, and a block to be coded in input image data processed by the signal processing means is processed by the signal processing means. First motion vector detecting means for detecting a primary motion vector over a first search range with reference to a reference image block in the encoded image data after the decoding, and input image data not processed by the signal processing means. Second motion vector detection for obtaining a secondary motion vector with a predetermined search accuracy over a second search range with reference to a reference image block in the coded image data which is not processed by the signal processing means, for the block to be coded. means and said primary motion vector detected by the first motion vector detecting means in within the first search range Portion and the outer
At least one of the size, the center position, and the search accuracy of the second search range in the second motion vector detection means depends on which part of the peripheral portion is detected.
Control means for controlling one ; coding means for coding a difference between the reference image block specified by the secondary motion vector detected by the second motion vector detection means and the coding target block; An image encoding device comprising:
【請求項2】前記信号処理手段は、画像データに対して
サブサンプル処理を含む処理を行うことにより解像度を
低下させることを特徴とする請求項1記載の画像符号化
装置。
2. The image encoding apparatus according to claim 1, wherein said signal processing means performs processing including sub-sampling processing on the image data to reduce the resolution.
【請求項3】前記制御手段は、前記一次動きベクトルが
前記第1の探索範囲の中央部分から得られた場合には、
前記第2の動きベクトル検出手段の探索精度をより細か
くして前記第2の探索範囲の大きさをより狭くし、前記
一次動きベクトルが前記第1の探索範囲の外周部分から
得られた場合には、前記第2の動きベクトル検出手段の
探索精度をより粗くして前記第2の探索範囲の大きさ
より広くすることを特徴とする請求項1記載の画像符号
化装置。
3. The control means according to claim 1, wherein said primary motion vector is obtained from a central portion of said first search range.
When the search accuracy of the second motion vector detecting means is made finer and the size of the second search range is made narrower, and the primary motion vector is obtained from the outer peripheral portion of the first search range, 2. The image encoding apparatus according to claim 1, wherein the search accuracy of the second motion vector detecting means is made coarser and the size of the second search range is made wider.
【請求項4】前記制御手段は、前記一次動きベクトルが
前記第1の探索範囲の外周部分から得られた場合には、
前記第2の探索範囲の中心位置を前記第1の探索範囲の
中心位置からより離すことを特徴とする請求項1記載の
画像符号化装置。
4. The control means according to claim 1, wherein said primary motion vector is obtained from an outer peripheral portion of said first search range.
2. The image coding apparatus according to claim 1, wherein a center position of the second search range is further away from a center position of the first search range.
【請求項5】前記制御手段は、前記一次動きベクトルが
前記第1の探索範囲の中央部分から得られた場合には、
前記第2の探索範囲の中心位置を前記第1の動きベクト
で示される位置とし、かつ前記第2の動きベクトル検
出手段の探索精度をより細かくして前記第2の探索範囲
の大きさをより狭くし、前記一次動きベクトルが前記第
1の探索範囲の外周部分から得られた場合には、前記第
2の探索範囲の中心位置を前記第1の探索範囲の中心か
らより離れるようにし、前記第2の動きベクトル検出手
段の探索精度をより粗くして前記第2の探索範囲の大き
をより広くすることを特徴とする請求項1記載の画像
符号化装置。
5. The control means according to claim 1, wherein said primary motion vector is obtained from a central portion of said first search range.
The center position of the second search range is set as the position indicated by the first motion vector, and the search accuracy of the second motion vector detecting means is made finer to obtain the second search range.
More narrowly the size of, when the primary motion vector obtained from the outer peripheral portion of said first search range, from the center position of the second search range from the center of the first search range So that the search accuracy of the second motion vector detection means is coarser and the size of the second search range is larger.
2. The image coding apparatus according to claim 1, wherein the image coding apparatus further increases the width.
JP28354392A 1991-10-31 1992-09-30 Image coding device Expired - Fee Related JP3152765B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP28354392A JP3152765B2 (en) 1991-10-31 1992-09-30 Image coding device
US07/969,351 US5398078A (en) 1991-10-31 1992-10-30 Method of detecting a motion vector in an image coding apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP3-286842 1991-10-31
JP28684291 1991-10-31
JP28354392A JP3152765B2 (en) 1991-10-31 1992-09-30 Image coding device

Publications (2)

Publication Number Publication Date
JPH05227525A JPH05227525A (en) 1993-09-03
JP3152765B2 true JP3152765B2 (en) 2001-04-03

Family

ID=26555079

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28354392A Expired - Fee Related JP3152765B2 (en) 1991-10-31 1992-09-30 Image coding device

Country Status (1)

Country Link
JP (1) JP3152765B2 (en)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4636159B2 (en) * 1995-05-02 2011-02-23 ソニー株式会社 Encoding apparatus and method
JP3612918B2 (en) 1996-11-08 2005-01-26 松下電器産業株式会社 Image coding apparatus and image decoding apparatus
JP3943333B2 (en) * 1998-03-05 2007-07-11 松下電器産業株式会社 Image encoding method, image encoding / decoding method, image encoding apparatus, and image recording / reproducing apparatus
JP2001251632A (en) 1999-12-27 2001-09-14 Toshiba Corp Motion vector detection method and apparatus, and motion vector detection program
US7995649B2 (en) * 2006-04-07 2011-08-09 Microsoft Corporation Quantization adjustment based on texture level
US8711925B2 (en) 2006-05-05 2014-04-29 Microsoft Corporation Flexible quantization
JP4942208B2 (en) * 2008-02-22 2012-05-30 キヤノン株式会社 Encoder
US8897359B2 (en) 2008-06-03 2014-11-25 Microsoft Corporation Adaptive quantization for enhancement layer video coding
JP5363302B2 (en) 2009-12-24 2013-12-11 株式会社メガチップス Image coding apparatus and image conversion apparatus
JP6123691B2 (en) * 2014-01-31 2017-05-10 株式会社ソシオネクスト Image processing apparatus, image processing method, and imaging apparatus
US9930346B2 (en) * 2014-04-15 2018-03-27 Qualcomm Incorporated System and method for flatness detection for display stream compression (DSC)
US9936203B2 (en) * 2015-04-13 2018-04-03 Qualcomm Incorporated Complex region detection for display stream compression
US10284849B2 (en) 2015-04-13 2019-05-07 Qualcomm Incorporated Quantization parameter (QP) calculation for display stream compression (DSC) based on complexity measure
US10244255B2 (en) 2015-04-13 2019-03-26 Qualcomm Incorporated Rate-constrained fallback mode for display stream compression
US10356428B2 (en) 2015-04-13 2019-07-16 Qualcomm Incorporated Quantization parameter (QP) update classification for display stream compression (DSC)
WO2017037228A1 (en) * 2015-09-02 2017-03-09 Thomson Licensing Method and apparatus for quantization in video encoding and decoding
CN113498609B (en) * 2018-12-31 2023-06-20 北京达佳互联信息技术有限公司 Image resolution-dependent configuration for video codecs

Also Published As

Publication number Publication date
JPH05227525A (en) 1993-09-03

Similar Documents

Publication Publication Date Title
JP3152765B2 (en) Image coding device
JP3753578B2 (en) Motion vector search apparatus and method
US5398078A (en) Method of detecting a motion vector in an image coding apparatus
US6983079B2 (en) Reducing blocking and ringing artifacts in low-bit-rate coding
JP3466032B2 (en) Video encoding device and decoding device
US5610729A (en) Noise reduction apparatus for reducing noise in decoding of moving picture sequence
JP4186242B2 (en) Image signal processing apparatus and image signal processing method
US6226050B1 (en) Signal adaptive filtering method for reducing ringing noise and signal adaptive filter
JP2744871B2 (en) Image signal encoding method and image signal encoding device
JP4528441B2 (en) Hierarchical motion estimation processing and apparatus using block matching method and integrated projection method
JP4180666B2 (en) Video signal encoding method
US6507615B1 (en) Video signal processing apparatus and video signal processing method
JP3495766B2 (en) Image processing method
US5689306A (en) Method and apparatus for encoding a video signal using pixel-by-pixel motion prediction
JP3529432B2 (en) Video encoding / decoding device
EP0734177A2 (en) Method and apparatus for encoding/decoding a video signal
EP0838953A2 (en) Image signal padding method for coding/decoding purposes
KR20040069210A (en) Sharpness enhancement in post-processing of digital video signals using coding information and local spatial features
JP3067607B2 (en) Video signal encoding device
US6480543B1 (en) Detection of a change of scene in a motion estimator of a video encoder
US5555029A (en) Method and apparatus for post-processing decoded image data
US7953154B2 (en) Image coding device and image coding method
US6020925A (en) Method and apparatus for encoding a video signal using pixel-by-pixel motion prediction
RU2154917C2 (en) Improved final processing method and device for image signal decoding system
US20050100239A1 (en) Image signal processing method, image signal processing apparatus, and image signal processing program

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080126

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090126

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100126

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees