JP2006042114A - Motion vector detecting device, and detecting program - Google Patents

Motion vector detecting device, and detecting program Download PDF

Info

Publication number
JP2006042114A
JP2006042114A JP2004221372A JP2004221372A JP2006042114A JP 2006042114 A JP2006042114 A JP 2006042114A JP 2004221372 A JP2004221372 A JP 2004221372A JP 2004221372 A JP2004221372 A JP 2004221372A JP 2006042114 A JP2006042114 A JP 2006042114A
Authority
JP
Japan
Prior art keywords
motion vector
field
frame
search range
target block
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.)
Pending
Application number
JP2004221372A
Other languages
Japanese (ja)
Inventor
Shigeru Fukushima
茂 福島
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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2004221372A priority Critical patent/JP2006042114A/en
Publication of JP2006042114A publication Critical patent/JP2006042114A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a motion vector detecting device which is used for motion compensation prediction encoding to highly efficiently encode animation information of an interlace structure, so as to reduce arithmetic throughput, heighten the speed of a processing, and raise efficiency in encoding, and to provide a motion vector detecting program. <P>SOLUTION: A motion vector search range control means 103 sets a frame motion vector search range to be normally smaller than a field motion vector search range with respect to a field motion vector detecting means 104 and a frame motion vector detecting means 105. The field motion vector detecting means 104 and the frame motion vector detecting means 105 respectively and independently detect a motion vector. A motion vector selecting means 106 compares a field motion vector with a frame motion vector, selects the motion vector with efficiency in encoding, having a small error evaluation value, as the motion vector of a motion vector detection object block, and then, outputs it to a motion vector output means 107. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、フレーム画像を2つのフィールド画像に分けて伝送するインターレース構造の画像の動き補償予測に必要な動きベクトルを検出する動きベクトル検出装置及び動きベクトル検出プログラムに関するものである。   The present invention relates to a motion vector detection apparatus and a motion vector detection program for detecting a motion vector necessary for motion compensation prediction of an interlaced structure image that is transmitted by dividing a frame image into two field images.

MPEGに代表される動画像の圧縮符号化では、連続する画像間の相関を用いて符号量を圧縮する動き補償予測符号化が多く用いられる。動き補償予測符号化は、画像を例えば16×16画素のブロックに分割して、前記各ブロックを順次動き検出対象ブロックとして設定することで行われる。   In compression coding of a moving image typified by MPEG, motion compensation predictive coding that compresses a code amount using a correlation between consecutive images is often used. Motion compensation predictive coding is performed by dividing an image into blocks of 16 × 16 pixels, for example, and sequentially setting each block as a motion detection target block.

動き補償予測符号化には、動き検出対象ブロックに対して、その符号化を行うために使用される参照画像における対応するブロック領域がどの程度ずれた位置に存在するのかを表す動きベクトルが必要である。動き検出対象ブロックと参照画像の対応ブロックとの誤差評価値が最小になる動きベクトルを検出し、動き補償予測に使用すると、符号化効率が最も良好になる。   Motion compensated predictive coding requires a motion vector that indicates how much the corresponding block area in the reference image used for coding the motion detection target block is shifted. is there. When the motion vector that minimizes the error evaluation value between the motion detection target block and the corresponding block of the reference image is detected and used for motion compensation prediction, the coding efficiency becomes the best.

誤差評価値とは、対応するブロック間の相違の度合いを表現したもので、ブロックマッチングにより求められる。
ブロックマッチングは、動き検出対象ブロックを参照画像中の検出範囲内の画像と画素単位で全ての位置毎にマッチングをとり、マッチング評価関数を計算し、誤差評価値を求める手法である。マッチング評価関数としては、例えばブロック内の全画素について、画素毎の画素値の差分の絶対値の和をとったもの(絶対値差分和)、画素毎の画素値の差分値を2乗して和をとったもの(差分二乗和)、 動きベクトルの符号量を計算し前記絶対差分和や前記差分二乗和に加算したもの、 DCT係数の符号量を計算又は予測したもの、等が使われる。
The error evaluation value expresses the degree of difference between corresponding blocks, and is obtained by block matching.
The block matching is a technique for obtaining an error evaluation value by calculating a matching evaluation function by matching a motion detection target block with an image within a detection range in a reference image at every position in pixel units. As a matching evaluation function, for example, for all pixels in a block, a sum of absolute values of pixel value differences for each pixel (absolute value difference sum), and a difference value of pixel values for each pixel is squared. A sum (sum of squares of difference), a code amount of a motion vector calculated and added to the absolute difference sum or the sum of squares of difference, and a code amount of a DCT coefficient calculated or predicted are used.

最も誤差評価値が小さくなる動きベクトルの検出方法の例として、フルサーチ法がある。フルサーチ法は動き検出対象ブロックに対応する参照画像上の所定の探索範囲内全ての位置に対して総当りにブロックマッチングを行い求められる誤差評価値を調べて、最小の誤差評価値を与える動きベクトルを検出するものである。フルサーチ法では、探索範囲内において、必ず最小の誤差評価値を持つ動きベクトルを検出できるが、膨大な演算量が必要という課題がある。   There is a full search method as an example of a motion vector detection method with the smallest error evaluation value. In the full search method, a motion that gives the smallest error evaluation value by checking the error evaluation value obtained by performing block matching on all positions within a predetermined search range on the reference image corresponding to the motion detection target block. A vector is detected. In the full search method, a motion vector having the smallest error evaluation value can be detected within the search range, but there is a problem that a huge amount of calculation is required.

動きベクトル検出の演算量を削減する手法のひとつに、階層型動きベクトル検出法がある。以下に図7を用いて検出方法を説明する。
解像度を低下させた縮小画像701において、縮小画像対応ブロック702の動きベクトル703を求め、その求められた動きベクトル703を縮小画像701の縮小率に基づき伸張することにより、元の画像704に対応させた階層動きベクトル706を求める。そして、元の画像704において、階層動きベクトル706を探索初期点707として、探索初期点707に基づき、動きベクトル探索範囲708を決定し、この動きベクトル探索範囲708で、動きベクトルを探索するものである。
One technique for reducing the amount of calculation for motion vector detection is a hierarchical motion vector detection method. The detection method will be described below with reference to FIG.
In the reduced image 701 with reduced resolution, the motion vector 703 of the reduced image corresponding block 702 is obtained, and the obtained motion vector 703 is expanded based on the reduction ratio of the reduced image 701 so as to correspond to the original image 704. A hierarchical motion vector 706 is obtained. Then, in the original image 704, the hierarchical motion vector 706 is set as the search initial point 707, the motion vector search range 708 is determined based on the search initial point 707, and the motion vector is searched in the motion vector search range 708. is there.

ここで、縮小画像対応ブロック702は、元の画像704における符号化ブロック705を、縮小画像701に対応させたものである。この動きベクトル検出装置は、少ない演算量で探索初期点とする階層動きベクトル706が求まるため、演算量が削減されるが、大局的な動きしかとらえられない階層動きベクトル706が、真の動きとかけ離れていると、探索が追いつかず、符号化効率が低下するという課題がある。   Here, the reduced image corresponding block 702 is obtained by associating the encoded block 705 in the original image 704 with the reduced image 701. Since this motion vector detection apparatus can obtain the hierarchical motion vector 706 as a search initial point with a small amount of computation, the computation amount is reduced, but the hierarchical motion vector 706 that can capture only global motion is the true motion. If they are far apart, there is a problem that the search cannot catch up and the coding efficiency is lowered.

また、動きベクトル検出の演算量を削減するための別の手法として、周辺ブロック参照法がある。周辺ブロック参照法は、周辺ブロックの動きベクトルのうち、少なくとも一つを探索初期点として動きベクトルを探索するものである。周辺ブロックとは、図8示すように、符号化対象となっている符号化ブロック805に隣接するブロック801〜804とブロック806〜809のうち、既に動きベクトルが求められているブロックとする。   Another method for reducing the amount of motion vector detection is a peripheral block reference method. The peripheral block reference method searches for a motion vector using at least one of the motion vectors of the peripheral blocks as a search initial point. As shown in FIG. 8, the peripheral block is a block for which a motion vector has already been obtained among blocks 801 to 804 and blocks 806 to 809 adjacent to the encoding block 805 to be encoded.

一般に、動きベクトルを求める順序はブロック801、802、803、・・・、80
9の順なので、符号化ブロック805の動きベクトルを探索する際に、既に動きベクトルが求められているブロックは801〜804である。この動きベクトル検出装置は、探索初期点を検出する演算量が不要なため、演算量が削減されるが、周辺ブロックにない新たな動きが発生した場合には、探索が追いつかず、符号化効率が低下するという課題がある。
In general, the order in which motion vectors are obtained is blocks 801, 802, 803,.
Since the order is 9, when the motion vector of the coding block 805 is searched, the blocks whose motion vectors have already been obtained are 801 to 804. Since this motion vector detection device does not require the amount of computation for detecting the initial search point, the amount of computation is reduced. However, when a new motion that does not exist in the neighboring blocks occurs, the search cannot catch up and the coding efficiency is increased. There is a problem that decreases.

階層型動きベクトル検出法の課題と、周辺ブロック参照法の課題を解決するために、階層型動きベクトル検出法と周辺ブロック参照法を組み合わせた動きベクトル検出方法がある。この動きベクトル検出方法は、階層型動きベクトル検出法で求めた動きベクトルと、周辺ブロック参照法で求めた動きベクトルのうち、誤差評価値のより小さい方を動きベクトルとするものである。   In order to solve the problems of the hierarchical motion vector detection method and the peripheral block reference method, there is a motion vector detection method that combines the hierarchical motion vector detection method and the peripheral block reference method. This motion vector detection method uses the motion vector obtained by the hierarchical motion vector detection method and the motion vector obtained by the peripheral block reference method as the motion vector, which has a smaller error evaluation value.

この動きベクトル検出方法では、階層型動きベクトル検出法の課題である、縮小画像で間違った動きベクトルを求めてしまった場合には、周辺ブロック参照法で求められた動きベクトルが採用されるため、符号化効率は低下しない。また、周辺ブロック参照法の課題である、周辺ブロックにない新たな動きが発生した場合には、階層型動きベクトルで求められた動きベクトルが採用されるため符号化効率は低下しない。このように階層型動きベクトル検出法と、周辺ブロック参照法を組み合わせることにより、それぞれの動きベクトル検出方法の課題を解決できる。   In this motion vector detection method, when the wrong motion vector is obtained in the reduced image, which is a problem of the hierarchical motion vector detection method, the motion vector obtained by the peripheral block reference method is adopted. Coding efficiency does not decrease. Also, when a new motion that does not exist in the peripheral block, which is a problem of the peripheral block reference method, is generated, the motion vector obtained from the hierarchical motion vector is adopted, so that the encoding efficiency does not decrease. Thus, by combining the hierarchical motion vector detection method and the peripheral block reference method, the problems of the respective motion vector detection methods can be solved.

しかし、この動きベクトル検出方法の演算量は、階層型動きベクトル検出法による演算量と、周辺ブロック参照法による演算量がかかってしまうため、演算量が増加してしまうという課題がある。   However, the calculation amount of this motion vector detection method involves the calculation amount by the hierarchical motion vector detection method and the calculation amount by the peripheral block reference method, which increases the calculation amount.

ところで、2つのフィールド画像を重ね合わせて1つのフレーム画像を構成するインターレース構造の画像においては、符号化効率を向上させるため、符号化対象画像のフレーム/フィールド内で同じ空間座標に位置する2つの動きベクトル検出対象ブロックのそれぞれで動きベクトルを検出し、誤差評価値の小さい方を選択する手法が用いられる。そのため、フレーム/フィールドそれぞれでの動きベクトル検出が必要なため、インターレース画像の動きベクトルの検出処理量は、1画像をそのまま伝送するプログレッシブ構造の画像の動きベクトル検出の処理量に比べて2倍程度を要する。   By the way, in an image having an interlace structure in which two field images are overlapped to form one frame image, two frames located at the same spatial coordinates in the frame / field of the encoding target image are used in order to improve encoding efficiency. A method is used in which a motion vector is detected in each of the motion vector detection target blocks, and a smaller error evaluation value is selected. Therefore, since it is necessary to detect a motion vector in each frame / field, the amount of motion vector detection processing for an interlaced image is about twice that of a progressive structure image that transmits one image as it is. Cost.

従来例1として、階層型動きベクトル検出法と周辺ブロック参照法を組み合わせて使用したインターレース画像の動きベクトル検出装置について図2を用いて説明する。
従来例1の動きベクトル検出装置は、図2に示すように、参照画像メモリ201と、符号化対象画像メモリ202と、フィールド動きベクトル検出手段204と、フレーム動きベクトル検出手段205と、動きベクトル選択手段206と、動きベクトル出力手段207と、周辺ブロックフィールド動きベクトルメモリ208と、周辺ブロックフレーム動きベクトルメモリ209とから構成されている。
As a conventional example 1, an interlaced image motion vector detection device using a combination of a hierarchical motion vector detection method and a peripheral block reference method will be described with reference to FIG.
As shown in FIG. 2, the motion vector detection apparatus of the conventional example 1 includes a reference image memory 201, an encoding target image memory 202, a field motion vector detection means 204, a frame motion vector detection means 205, and a motion vector selection. Means 206, motion vector output means 207, peripheral block field motion vector memory 208, and peripheral block frame motion vector memory 209.

参照画像メモリ201は、参照画像データを記憶しているものである。
符号化対象画像メモリ202は、符号化対象画像データを記憶しているものである。
フィールド動きベクトル検出手段204は、フィールド動きベクトルを検出し、検出したフィールド動きベクトルとそれに対応する誤差評価値を、動きベクトル選択手段206に供給するものである。
The reference image memory 201 stores reference image data.
The encoding target image memory 202 stores encoding target image data.
The field motion vector detection unit 204 detects a field motion vector, and supplies the detected field motion vector and the corresponding error evaluation value to the motion vector selection unit 206.

以下にフィールド動きベクトル検出処理の手順を説明する。
まず前記階層型動きベクトル検出法を用いて、ある固定の範囲(例えば原点を中心として±16画素)を探索してフィールド動きベクトル検出対象ブロックの階層フィールド動きベクトルを求める。
Hereinafter, the procedure of the field motion vector detection process will be described.
First, using the hierarchical motion vector detection method, a certain fixed range (for example, ± 16 pixels centered on the origin) is searched to obtain a hierarchical field motion vector of a field motion vector detection target block.

次に、階層フィールド動きベクトルでの誤差評価値EhFiを求める。
次に周辺ブロックフィールド動きベクトルメモリ108に記憶してある、図8の801〜804に相当する位置のブロックに対応する周辺ブロックフィールド動きベクトルを使用して誤差評価値EsFi1〜EsFi4を求める。
Next, an error evaluation value EhFi in the hierarchical field motion vector is obtained.
Next, error evaluation values EsFi1 to EsFi4 are obtained using peripheral block field motion vectors corresponding to blocks at positions corresponding to 801 to 804 in FIG. 8 stored in the peripheral block field motion vector memory 108.

次に、EhFi、EsFi1〜EsFi4の中で最小誤差評価値を持つ点を探索初期点とする。決定した探索初期点を中心に例えば±2画素の領域で、誤差評価値が最小となるフィールド動きベクトルを検出する。そして、検出したフィールド動きベクトルとそれに対応する誤差評価値を動きベクトル選択手段206に供給する。   Next, a point having a minimum error evaluation value among EhFi and EsFi1 to EsFi4 is set as a search initial point. A field motion vector having a minimum error evaluation value is detected in an area of, for example, ± 2 pixels around the determined initial search point. Then, the detected field motion vector and the corresponding error evaluation value are supplied to the motion vector selection means 206.

フレーム動きベクトル検出手段205は、フレーム動きベクトルを検出し、検出したフレーム動きベクトルとそれに対応する誤差評価値を、動きベクトル選択手段206に供給するものである。   The frame motion vector detection unit 205 detects a frame motion vector and supplies the detected frame motion vector and an error evaluation value corresponding thereto to the motion vector selection unit 206.

まず前記階層型動きベクトル検出法を用いて、ある固定の範囲(例えば原点を中心として±16画素)を探索してフレーム動きベクトル検出対象ブロックの階層フレーム動きベクトルを求める。   First, using the hierarchical motion vector detection method, a fixed range (for example, ± 16 pixels centered on the origin) is searched to obtain a hierarchical frame motion vector of a frame motion vector detection target block.

次に、階層フレーム動きベクトルでの誤差評価値EhFlを求める。
次に周辺ブロックフレーム動きベクトルメモリ109に記憶してある、図8の801〜804に相当する位置のブロックに対応する周辺ブロックフレーム動きベクトルを使用して誤差評価値EsFl1〜EsFl4を求める。
Next, an error evaluation value EhFl in the hierarchical frame motion vector is obtained.
Next, error evaluation values EsFl1 to EsFl4 are obtained using peripheral block frame motion vectors corresponding to blocks at positions corresponding to 801 to 804 in FIG. 8 stored in the peripheral block frame motion vector memory 109.

次に、EhFl、EsFl1〜EsFl4の中で最小誤差評価値を持つ点を探索初期点とする。決定した探索初期点を中心に例えば±2画素の領域で、誤差評価値が最小となるフレーム動きベクトルを検出する。そして、検出したフレーム動きベクトルとそれに対応する誤差評価値を動きベクトル選択手段206に供給する。   Next, a point having the minimum error evaluation value in EhFl and EsFl1 to EsFl4 is set as a search initial point. A frame motion vector that minimizes the error evaluation value is detected in an area of, for example, ± 2 pixels centering on the determined initial search point. Then, the detected frame motion vector and the corresponding error evaluation value are supplied to the motion vector selection means 206.

動きベクトル選択手段206は、フィールド動きベクトル検出手段204からフィールド動きベクトルとそれに対応する誤差評価値が、フレーム動きベクトル検出手段205からフレーム動きベクトルとそれに対応する誤差評価値が入力され、誤差評価値の小さい方の動きベクトルを動きベクトル出力手段207に供給するものである。   The motion vector selection unit 206 receives the field motion vector and the corresponding error evaluation value from the field motion vector detection unit 204, and receives the frame motion vector and the corresponding error evaluation value from the frame motion vector detection unit 205. The smaller motion vector is supplied to the motion vector output means 207.

動きベクトル出力手段207は、決定した動きベクトルを外部に出力するものである。
前記従来例1においては、階層型動きベクトル検出法と周辺ブロック参照法を組み合わせて使用することで、インターレース画像における動きベクトルの処理量を、フルサーチ法を用いた場合の処理量に比較して削減しているものの、フレーム動きベクトル検出とフィールド動きベクトル検出を同一相当の処理で行っているので、フレーム動きベクトル検出の処理量が、フィールド動きベクトル検出の処理量と同程度必要となる。そのため、インターレース画像の動きベクトル検出の処理量は、プログレッシブ画像の動きベクトル検出の処理量に比べて2倍程度要してしまうという課題がある。
The motion vector output means 207 outputs the determined motion vector to the outside.
In the conventional example 1, by using a combination of the hierarchical motion vector detection method and the peripheral block reference method, the processing amount of the motion vector in the interlaced image is compared with the processing amount when the full search method is used. Although reduced, since frame motion vector detection and field motion vector detection are performed by the same equivalent process, the processing amount of frame motion vector detection is required to be approximately the same as the processing amount of field motion vector detection. Therefore, there is a problem that the processing amount of motion vector detection for an interlaced image requires about twice as much as the processing amount of motion vector detection for a progressive image.

インターレース画像の動きベクトル検出の処理量を削減するため、例えば特許文献1のような動きベクトル検出装置が提案されている。この動きベクトル検出装置は、フィールド動きベクトルをフレーム動きベクトルより先に検出し、フレーム動きベクトル検出において、既に検出したフィールド動きベクトルを探索初期点とし、フレーム動きベクトル検出範囲を探索初期点の周辺の狭い領域とすることで、フレーム動きベクトル検出処理量を削減し、結果的に全体のインターレース画像の動きベクトル検出に要する処理量を削減するというものである。   In order to reduce the processing amount of motion vector detection of an interlaced image, for example, a motion vector detection device as in Patent Document 1 has been proposed. This motion vector detection device detects a field motion vector prior to a frame motion vector, and in the frame motion vector detection, an already detected field motion vector is set as a search initial point, and a frame motion vector detection range is set around the search initial point. By making the area narrow, the frame motion vector detection processing amount is reduced, and as a result, the processing amount required for motion vector detection of the entire interlaced image is reduced.

以下従来例2として、特許文献1に記載の動きベクトル検出装置について図3を用いて説明する。
従来例2の動きベクトル検出装置は、図3に示すように、参照画像メモリ301と、符号化対象画像メモリ302と、フィールド動きベクトル検出手段304と、フレーム動きベクトル検出手段305と、動きベクトル選択手段306と、動きベクトル出力手段307とから構成されている。
Hereinafter, as a conventional example 2, a motion vector detection device described in Patent Document 1 will be described with reference to FIG.
As shown in FIG. 3, the motion vector detection device of the conventional example 2 includes a reference image memory 301, an encoding target image memory 302, a field motion vector detection means 304, a frame motion vector detection means 305, and a motion vector selection. It comprises means 306 and motion vector output means 307.

参照画像メモリ301は、参照画像データを記憶しているものである。
符号化対象画像メモリ302は、実際に符号化を行おうとする画像データを記憶しているものである。
The reference image memory 301 stores reference image data.
The encoding target image memory 302 stores image data to be actually encoded.

フィールド動きベクトル検出手段304は、参照画像データを用いて、符号化対象画像データ上の動き検出対象ブロックのフィールド動きベクトルを検出し、検出したフィールド動きベクトルを、フレーム動きベクトル検出手段305に、またフィールド動きベクトルとそれに対応する誤差評価値を、動きベクトル選択手段306に供給するものである。   The field motion vector detection unit 304 detects the field motion vector of the motion detection target block on the encoding target image data using the reference image data, and the detected field motion vector is sent to the frame motion vector detection unit 305 or The field motion vector and the corresponding error evaluation value are supplied to the motion vector selection means 306.

フレーム動きベクトル検出手段305は、フィールド動きベクトル検出手段304から入力されたフィールド動きベクトルを探索初期点として、参照画像データと符号化対象画像データから、フレーム動きベクトルを検出し、検出したフレーム動きベクトルとそれに対応する誤差評価値を動きベクトル選択手段306に供給するものである。フレーム動きベクトルは、前記探索初期点を中心に例えば±2画素の領域で、誤差評価値が最小となるフレーム動きベクトルを検出する。   The frame motion vector detection unit 305 detects a frame motion vector from the reference image data and the encoding target image data using the field motion vector input from the field motion vector detection unit 304 as a search initial point, and detects the detected frame motion vector. And an error evaluation value corresponding thereto are supplied to the motion vector selection means 306. As the frame motion vector, a frame motion vector having a minimum error evaluation value is detected in an area of, for example, ± 2 pixels centering on the search initial point.

ここで、フレーム動きベクトル検出手段305の動作について図4のフローチャートを用いて説明する。
まず、フィールド動きベクトル検出手段304から入力されたフィールド動きベクトルを探索初期点とする(S101)。次に、探索初期点を中心に例えば±2画素の領域で、誤差評価値が最小となるフレーム動きベクトルを検出する(S102)。そして、検出したフレーム動きベクトルとそれに対応する誤差評価値を動きベクトル選択手段306に供給する(S103)。
Here, the operation of the frame motion vector detection means 305 will be described with reference to the flowchart of FIG.
First, the field motion vector input from the field motion vector detection unit 304 is set as a search initial point (S101). Next, a frame motion vector having a minimum error evaluation value is detected in an area of, for example, ± 2 pixels centering on the search initial point (S102). Then, the detected frame motion vector and the corresponding error evaluation value are supplied to the motion vector selection means 306 (S103).

図3の説明に戻る。
動きベクトル選択手段306は、フィールド動きベクトル検出手段304からフィールド動きベクトルとそれに対応する誤差評価値が、フレーム動きベクトル検出手段305からフレーム動きベクトルとそれに対応する誤差評価値が入力され、誤差評価値の小さい方の動きベクトルを動きベクトル出力手段307に供給するものである。
Returning to the description of FIG.
The motion vector selection unit 306 receives the field motion vector and the corresponding error evaluation value from the field motion vector detection unit 304, and receives the frame motion vector and the corresponding error evaluation value from the frame motion vector detection unit 305. The smaller motion vector is supplied to the motion vector output means 307.

動きベクトル出力手段307は、決定した動きベクトルを外部に出力するものである。
前記従来例2においては、フィールド動きベクトルをフレーム動きベクトル検出の探索初期点とすることにより、フレームの探索範囲を狭くすることができるので、フレーム動きベクトルの処理量を削減できる。
The motion vector output means 307 outputs the determined motion vector to the outside.
In the conventional example 2, the field motion vector is used as an initial search point for frame motion vector detection, so that the frame search range can be narrowed, so that the processing amount of the frame motion vector can be reduced.

しかしながら、フィールド動きベクトルを、フレーム動きベクトルを求める際の探索初期点としているため、フィールド動きベクトル検出において誤った動きベクトルを検出してしまった場合、フレーム動きベクトルも誤った動きベクトルを検出してしまうので、誤差評価値が小さくならない。そのため符号化効率が低下してしまうという課題がある。   However, since the field motion vector is used as the initial search point when obtaining the frame motion vector, if an incorrect motion vector is detected in the field motion vector detection, the frame motion vector also detects the incorrect motion vector. Therefore, the error evaluation value does not become small. Therefore, there exists a subject that encoding efficiency will fall.

また、フィールド動きベクトルを検出した後にフレーム動きベクトルを検出しなければならないので、フィールド動きベクトル検出とフレーム動きベクトル検出の並列処理ができないために処理の高速化が図れないという課題がある。
「特開平7−107485号公報」
In addition, since the frame motion vector must be detected after detecting the field motion vector, there is a problem that the processing speed cannot be increased because the parallel processing of the field motion vector detection and the frame motion vector detection cannot be performed.
"JP-A-7-107485"

従来例1で示したようにフレーム動きベクトル検出とフィールド動きベクトル検出を同一相当の処理で行う動きベクトル検出装置では、フレーム動きベクトル検出の処理量が、フィールド動きベクトル検出の処理量と同程度必要となる。そのため、インターレース画像の動きベクトル検出の処理量は、プログレッシブ画像の動きベクトル検出の処理量に比べて2倍程度要してしまうという課題がある。   In the motion vector detection apparatus that performs frame motion vector detection and field motion vector detection by the same processing as shown in the conventional example 1, the processing amount of frame motion vector detection needs to be about the same as the processing amount of field motion vector detection. It becomes. Therefore, there is a problem that the processing amount of motion vector detection for an interlaced image requires about twice as much as the processing amount of motion vector detection for a progressive image.

また、従来例2で示した動きベクトル検出装置を使用すればフレーム動きベクトルの処理量を削減できる。しかしながら、フィールド動きベクトルを、フレーム動きベクトルを求める際の探索初期点としているため、フィールド動きベクトル検出において誤った動きベクトルを検出してしまった場合、フレーム動きベクトルも誤った動きベクトルを検出してしまうので、誤差評価値が小さくならない。そのために符号化効率が低下してしまうという課題がある。   Further, if the motion vector detecting device shown in the conventional example 2 is used, the processing amount of the frame motion vector can be reduced. However, since the field motion vector is used as the initial search point when obtaining the frame motion vector, if an incorrect motion vector is detected in the field motion vector detection, the frame motion vector also detects the incorrect motion vector. Therefore, the error evaluation value does not become small. Therefore, there exists a subject that encoding efficiency will fall.

また、フィールド動きベクトルを検出した後にフレーム動きベクトルを検出しなければならないので、フィールド動きベクトル検出とフレーム動きベクトル検出の並列処理ができないために処理の高速化が図れないという課題がある。   In addition, since the frame motion vector must be detected after detecting the field motion vector, there is a problem that the processing speed cannot be increased because the parallel processing of the field motion vector detection and the frame motion vector detection cannot be performed.

本発明は以上の課題を鑑みてなされたものである。
本発明は、フレーム動きベクトル検出の探索範囲をフィールド動きベクトル検出の探索範囲より常に小さく設定して動きベクトル検出を行うにより、フレーム動きベクトル検出の精度を損なうことなく、フレーム動きベクトル検出処理量を削減し、全体のインターレース画像の動きベクトル検出処理量を削減することを目的とする。
The present invention has been made in view of the above problems.
The present invention sets the frame motion vector detection search range to be always smaller than the field motion vector detection search range and performs motion vector detection, thereby reducing the frame motion vector detection processing amount without impairing the accuracy of frame motion vector detection. The purpose is to reduce the amount of motion vector detection processing of the entire interlaced image.

また、本発明は、フレーム動きベクトル検出とフィールド動きベクトル検出を独立して処理することにより、フィールド動きベクトル検出において誤った動きベクトルを検出してしまった場合においても、フレームの動きベクトル検出は影響をうけずに正確な動きベクトル検出し、誤差評価値を小さくすることで符号化効率を向上することも目的とする。   In addition, the present invention processes the frame motion vector detection and the field motion vector detection independently, so that even if an erroneous motion vector is detected in the field motion vector detection, the frame motion vector detection is not affected. It is another object of the present invention to improve coding efficiency by detecting an accurate motion vector without reducing the error and reducing the error evaluation value.

さらに、本発明はフレーム動きベクトル検出とフィールド動きベクトル検出を独立して処理することにより、動きベクトル検出の並列処理化を可能とし、処理の高速化を実現することも目的とする。   Furthermore, another object of the present invention is to enable parallel processing of motion vector detection by independently processing frame motion vector detection and field motion vector detection, thereby realizing high-speed processing.

そこで上記課題を解決するために本発明は、下記の装置及びプログラムを提供するものである。
(1)時間的に連続する2つのフィールド画像を重ね合わせてひとつのフレーム画像を構成するインターレース構造の画像を符号化するために使用する動きベクトルを検出する動きベクトル検出装置において、
フィールド入力画像を所定数の画素単位毎にブロック化し、前記フィールド入力画像において各ブロックをフィールド動き検出対象ブロックとして順次設定し、フィールド参照画像において前記各フィールド動き検出対象ブロックに応じて探索範囲を設定し、前記各フィールド動き検出対象ブロック内の画素と前記フィールド参照画像における前記探索範囲内の画素とを比較して、ブロックマッチングにより前記各フィールド動き検出対象ブロック毎にフィールド動きベクトルを求めるフィールド動きベクトル検出手段と、
フレーム入力画像を所定数の画素単位毎にブロック化し、前記フレーム入力画像において各ブロックをフレーム動き検出対象ブロックとして順次設定し、フレーム参照画像において前記各フレーム動き検出対象ブロックに応じて探索範囲を設定し、前記各フレーム動き検出対象ブロック内の画素と前記フレーム参照画像における前記探索範囲内の画素とを比較して、ブロックマッチングにより前記各フレーム動き検出対象ブロック毎にフレーム動きベクトルを求めるフレーム動きベクトル検出手段と、
符号化対象画像内で同じ空間座標に位置する前記フィールド動き検出対象ブロックとフレーム動き検出対象ブロックとにおいてそれぞれ検出された、前記フィールド動きベクトルと前記フレーム動きベクトルとを比較して、符号化の効率を示す度合である誤差評価値の小さい方の動きベクトルを選択して出力する動きベクトル選択手段と、
前記フレーム動きベクトルを検出するための前記探索範囲を、前記フィールド動きベクトルを検出するための前記探索範囲よりも常に狭い範囲として設定する探索範囲設定手段を備えることを特徴とする動きベクトル検出装置。
(2)時間的に連続する2つのフィールド画像を重ね合わせてひとつのフレーム画像を構成するインターレース構造の画像を符号化するために使用する動きベクトルを検出する動きベクトル検出プログラムにおいて、
フィールド入力画像を所定数の画素単位毎にブロック化し、前記フィールド入力画像において各ブロックをフィールド動き検出対象ブロックとして順次設定し、フィールド参照画像において前記各フィールド動き検出対象ブロックに応じて探索範囲を設定し、前記各フィールド動き検出対象ブロック内の画素と前記フィールド参照画像における前記探索範囲内の画素とを比較して、ブロックマッチングにより前記各フィールド動き検出対象ブロック毎にフィールド動きベクトルを求めるフィールド動きベクトル検出機能と、
フレーム入力画像を所定数の画素単位毎にブロック化し、前記フレーム入力画像において各ブロックをフレーム動き検出対象ブロックとして順次設定し、フレーム参照画像において前記各フレーム動き検出対象ブロックに応じて探索範囲を設定し、前記各フレーム動き検出対象ブロック内の画素と前記フレーム参照画像における前記探索範囲内の画素とを比較して、ブロックマッチングにより前記各フレーム動き検出対象ブロック毎にフレーム動きベクトルを求めるフレーム動きベクトル検出機能と、
符号化対象画像内で同じ空間座標に位置する前記フィールド動き検出対象ブロックとフレーム動き検出対象ブロックとにおいてそれぞれ検出された、前記フィールド動きベクトルと前記フレーム動きベクトルとを比較して、符号化の効率を示す度合である誤差評価値の小さい方の動きベクトルを選択して出力する動きベクトル選択機能と、
前記フレーム動きベクトルを検出するための前記探索範囲を、前記フィールド動きベクトルを検出するための前記探索範囲よりも常に狭い範囲として設定する探索範囲設定機能とをコンピュータに実現させるための動きベクトル検出プログラム。
Therefore, in order to solve the above problems, the present invention provides the following apparatus and program.
(1) In a motion vector detection device for detecting a motion vector used for encoding an interlaced structure image that constitutes one frame image by superimposing two temporally continuous field images,
The field input image is divided into blocks for a predetermined number of pixel units, each block in the field input image is sequentially set as a field motion detection target block, and a search range is set in the field reference image according to each field motion detection target block A field motion vector that compares a pixel in each field motion detection target block with a pixel in the search range in the field reference image and obtains a field motion vector for each field motion detection target block by block matching Detection means;
A frame input image is divided into blocks of a predetermined number of pixels, each block is sequentially set as a frame motion detection target block in the frame input image, and a search range is set according to each frame motion detection target block in a frame reference image A frame motion vector that compares a pixel in each frame motion detection target block with a pixel in the search range in the frame reference image to obtain a frame motion vector for each frame motion detection target block by block matching Detection means;
The field motion vector and the frame motion vector detected in the field motion detection target block and the frame motion detection target block located at the same spatial coordinates in the encoding target image are respectively compared, and the encoding efficiency is compared. A motion vector selection means for selecting and outputting a motion vector having a smaller error evaluation value, which is a degree indicating
A motion vector detection apparatus comprising: search range setting means for setting the search range for detecting the frame motion vector as a range that is always narrower than the search range for detecting the field motion vector.
(2) In a motion vector detection program for detecting a motion vector used for encoding an interlaced structure image that constitutes one frame image by superimposing two temporally continuous field images,
The field input image is divided into blocks for a predetermined number of pixel units, each block in the field input image is sequentially set as a field motion detection target block, and a search range is set in the field reference image according to each field motion detection target block A field motion vector that compares a pixel in each field motion detection target block with a pixel in the search range in the field reference image and obtains a field motion vector for each field motion detection target block by block matching Detection function,
A frame input image is divided into blocks of a predetermined number of pixels, each block is sequentially set as a frame motion detection target block in the frame input image, and a search range is set according to each frame motion detection target block in a frame reference image A frame motion vector that compares a pixel in each frame motion detection target block with a pixel in the search range in the frame reference image to obtain a frame motion vector for each frame motion detection target block by block matching Detection function,
The field motion vector and the frame motion vector detected in the field motion detection target block and the frame motion detection target block located at the same spatial coordinates in the encoding target image are respectively compared, and the encoding efficiency is compared. A motion vector selection function for selecting and outputting a motion vector with a smaller error evaluation value, which is a degree indicating
A motion vector detection program for causing a computer to realize a search range setting function for setting the search range for detecting the frame motion vector as a range that is always narrower than the search range for detecting the field motion vector .

本発明によれば、フレーム動きベクトル検出の探索範囲をフィールド動きベクトル検出の探索範囲より常に小さく設定して動きベクトル検出を行うことにより、フレーム動きベクトル検出の精度を損なうことなく、フレーム動きベクトル検出処理量を削減でき、全体のインターレース画像の動きベクトル検出処理量を削減できる。   According to the present invention, frame motion vector detection is performed without degrading the accuracy of frame motion vector detection by setting the search range for frame motion vector detection to be always smaller than the search range for field motion vector detection. The processing amount can be reduced, and the motion vector detection processing amount of the entire interlaced image can be reduced.

また、フレーム動きベクトル検出とフィールド動きベクトル検出を独立して処理することにより、フィールド動きベクトル検出において誤った動きベクトルを検出してしまった場合においても、フレームの動きベクトル検出は影響をうけずに、正確な動きベクトル検出が可能となるので、誤差評価値を小さくすることが可能となり、符号化効率を向上させることが可能となる。   Also, by independently processing frame motion vector detection and field motion vector detection, even if an erroneous motion vector is detected in field motion vector detection, frame motion vector detection is not affected. Since accurate motion vector detection is possible, the error evaluation value can be reduced, and the encoding efficiency can be improved.

さらに、フレーム動きベクトル検出とフィールド動きベクトル検出を独立して処理することにより、動きベクトル検出の並列処理化が可能となり、動きベクトル検出処理の高速化を実現することが可能となる。   Furthermore, by independently processing the frame motion vector detection and the field motion vector detection, the motion vector detection can be performed in parallel, and the motion vector detection processing can be speeded up.

本発明では以下に述べるインターレース画像における動きベクトル検出時の特性を利用している。
まず、フィールド動きベクトルの詳細な検出方法を図9を用いて説明する。フィールド画像は図に示すように、トップフィールド、ボトムフィールドの対で構成されている。
In the present invention, characteristics at the time of motion vector detection in an interlaced image described below are used.
First, a detailed method for detecting a field motion vector will be described with reference to FIG. As shown in the figure, the field image is composed of a pair of a top field and a bottom field.

従って動きベクトルは、トップフィールド、ボトムフィールドのそれぞれにおいて検出する必要がある。この検出した2つの動きベクトルの対でフィールド動きベクトルが構成され、以降の動き補償予測処理で使用される。   Therefore, the motion vector needs to be detected in each of the top field and the bottom field. A pair of the detected two motion vectors forms a field motion vector, which is used in subsequent motion compensation prediction processing.

トップフィールド動きベクトルは次の手順で検出される。
符号化対象画像のトップフィールドと、参照画像のトップフィールド、ボトムフィールドとを比較して、それぞれトップ−t、トップ−bとする二つの動きベクトルを検出する。
The top field motion vector is detected by the following procedure.
The top field of the encoding target image is compared with the top field and the bottom field of the reference image to detect two motion vectors of top-t and top-b, respectively.

検出した求めたトップ−t、トップ−bの誤差評価値を比較して、小さいほうをトップフィールド動きベクトルとする。
ボトムフィールド動きベクトルは次の手順で検出される。
The detected top-t and top-b error evaluation values are compared, and the smaller one is used as the top field motion vector.
The bottom field motion vector is detected by the following procedure.

符号化対象画像のボトムフィールドと、参照画像のトップフィールド、ボトムフィールドとを比較して、それぞれボトム−t、ボトム−bとする二つの動きベクトルを検出する。   By comparing the bottom field of the encoding target image with the top field and bottom field of the reference image, two motion vectors of bottom-t and bottom-b are detected.

検出した求めたボトム−t、ボトム−bの誤差評価値を比較して、小さいほうをボトムフィールド動きベクトルとする。
またフレーム動きベクトルと比較する場合の誤差評価値は、上記で検出したトップフィールド動きベクトル、ボトムフィールド動きベクトルの誤差評価値を加算したものが用いられる。
The detected bottom-t and bottom-b error evaluation values are compared, and the smaller one is used as the bottom field motion vector.
The error evaluation value for comparison with the frame motion vector is obtained by adding the error evaluation values of the top field motion vector and the bottom field motion vector detected above.

ここで、大きな動きのある画像の場合を考える。大きな動きのある画像では、わずかな時間でも画像間の相関が小さくなって誤差評価値が大きくなってしまう。従ってフィールド間のわずかな時間でも違いが現れるので、動きベクトル検出に使用する画像間の時間は短い方が誤差評価値が小さくなる。   Here, consider the case of an image with a large movement. In an image with a large movement, the correlation between the images becomes small and the error evaluation value becomes large even in a short time. Therefore, since a difference appears even in a short time between fields, the error evaluation value becomes smaller as the time between images used for motion vector detection is shorter.

トップフィールド動きベクトルを考える。符号化対象画像のトップフィールドと参照画像のボトムフィールド間で検出するトップ−bのほうが、符号化対象画像のトップフィールドと参照画像のトップフィールド間で検出するトップ−tより、動きベクトル検出に使用するフィールド画像間の時間が短い。よってトップフィールド動きベクトルとしては、トップ−b側が選択される可能性が高い。   Consider the top field motion vector. The top-b detected between the top field of the encoding target image and the bottom field of the reference image is used for motion vector detection than the top-t detected between the top field of the encoding target image and the top field of the reference image. The time between field images is short. Therefore, there is a high possibility that the top-b side is selected as the top field motion vector.

ボトムフィールド動きベクトルを考える。符号化対象画像のボトムフィールドと参照画像のボトムフィールド間で検出するボトム−bのほうが、符号化対象画像のボトムフィールドと参照画像のトップフィールド間で検出するボトム−tより、動きベクトル検出に使用するフィールド画像間の時間が短い。よってボトムフィールド動きベクトルとしては、ボトム−b側が選択される可能性が高い。   Consider a bottom field motion vector. The bottom-b detected between the bottom field of the encoding target image and the bottom field of the reference image is used for motion vector detection than the bottom-t detected between the bottom field of the encoding target image and the top field of the reference image. The time between field images is short. Therefore, there is a high possibility that the bottom-b side is selected as the bottom field motion vector.

また同一の符号化対象画像のフィールド動きベクトルとフレーム動きベクトルとを比較した場合を考える。このとき、トップフィールド動きベクトルであるトップ−bは、トップフィールド動きベクトル検出に使用するフィールド画像間の時間が、フレーム動きベクトル検出に使用されるフレーム画像間の時間より短い。また、ボトムフィールド動きベクトルであるボトム−bは、ボトムフィールド動きベクトル検出に使用するフィールド画像間の時間が、フレーム動きベクトル検出に使用されるフレーム画像間の時間と等しい。   Consider a case where the field motion vector and the frame motion vector of the same encoding target image are compared. At this time, in the top-b which is the top field motion vector, the time between the field images used for the top field motion vector detection is shorter than the time between the frame images used for the frame motion vector detection. Also, bottom-b, which is a bottom field motion vector, has a time between field images used for bottom field motion vector detection equal to a time between frame images used for frame motion vector detection.

従ってトータルで比較すると、トップフィールド動きベクトルとボトムフィールド動きベクトルの対で構成されるフィールド動きベクトルの方がフレーム動きベクトルより動きベクトル検出に使用する画像間の時間が短いとみなせる。よって大きな動きの画像では、フィールド動きベクトルの方がフレーム動きベクトルに比較して、誤差評価値が小さくなる可能性が高く、フィールド動きベクトルの方が動き検出対象ブロックの動きベクトルとして選択される確率が高い。   Therefore, when compared in total, it can be considered that the field motion vector composed of a pair of the top field motion vector and the bottom field motion vector has a shorter time between images used for motion vector detection than the frame motion vector. Therefore, in a large motion image, the field motion vector is more likely to have a smaller error evaluation value than the frame motion vector, and the probability that the field motion vector is selected as the motion vector of the motion detection target block is higher. Is expensive.

しかし逆に、あまり大きな動きのない画像の場合は、フィールド間のわずかな時間では、時間の経過による相関の低下は問題にならないレベルであり、むしろ画像の絵柄の特性によって誤差評価値の大きさが決定する。その誤差評価値の一番小さな動きベクトルが最終的な動き検出対象ブロックの動きベクトルとして選択される。よってあまり大きな動きのない画像では、フィールド動きベクトルの方がフレーム動きベクトルに比較して、誤差評価値が小さくなる可能性が高くなると一概にはいえず、動き検出対象ブロックの動きベクトルとして選択される確率は、フィールド動きベクトルとフレーム動きベクトルよりも高くなるとはかならずしも言えない。   On the other hand, in the case of an image that does not move too much, the decrease in correlation over time is not a problem for a short time between fields. Rather, the magnitude of the error evaluation value depends on the characteristics of the picture pattern. Will be determined. The motion vector having the smallest error evaluation value is selected as the motion vector of the final motion detection target block. Therefore, in an image that does not have a very large motion, the field motion vector is generally selected as the motion vector of the motion detection target block if it is more likely that the error evaluation value is smaller than the frame motion vector. It is not necessarily true that the probability that the image is higher than the field motion vector and the frame motion vector.

また、大きな動きのある画像の場合、動き検出対象ブロックでの動きベクトル探索範囲は広く設定してあるほうが、動きベクトルが探索範囲外になって誤検出してしまうのを防止することができるので望ましい。逆に、あまり大きな動きがない画像の場合は、動きベクトル探索範囲は必要以上に広く設定しても、狭く設定した場合と比較して精度は変わらない。また、探索に要する処理量が増加するので、なるべく探索範囲は狭く設定しておいたほうが望ましい。   In addition, in the case of an image with a large motion, if the motion vector search range in the motion detection target block is set wider, it is possible to prevent erroneous detection because the motion vector is outside the search range. desirable. On the other hand, in the case of an image that does not have a very large motion, even if the motion vector search range is set wider than necessary, the accuracy does not change compared to the case where it is set narrower. Further, since the amount of processing required for the search increases, it is desirable to set the search range as narrow as possible.

従って、大きな動きがあるインターレース画像の場合、動きベクトルの探索範囲は広く設定しておく必要があり、またこの場合は、上記で述べたとおりフィールド動きベクトルの方がフレーム動きベクトルより誤差評価値が小さくなる可能性が高く、動き検出対象ブロックの動きベクトルとしてフィールド動きベクトルが選択される確率が高い。   Therefore, in the case of an interlaced image with a large motion, it is necessary to set a wide motion vector search range, and in this case, as described above, the field motion vector has an error evaluation value more than the frame motion vector. There is a high probability that the field motion vector is selected as the motion vector of the motion detection target block.

一方、あまり大きな動きのないインターレース画像の場合は、動きベクトルの探索範囲は狭くてもよい。この場合は、フィールド動きベクトルが選択される確率が高いとはいえず、フィールド動きベクトルとフレーム動きベクトルのうち、誤差評価値が小さい方の動きベクトルが、動き検出対象ブロックの動きベクトルとして選択される。   On the other hand, in the case of an interlaced image that does not move much, the motion vector search range may be narrow. In this case, it cannot be said that the probability that a field motion vector is selected is high, and the motion vector having the smaller error evaluation value is selected as the motion vector of the motion detection target block. The

このようにフレーム動きベクトルは、あまり大きな動きがない画像の場合に選択される可能性があり、大きな動きのある画像の場合には選択される可能性が低い。
従って、大きな動きのある画像に対する動きベクトル選択精度を上げるためにフレーム動きベクトルの探索範囲をフィールド動きベクトルの探索範囲と同じように広く設定していても、動き検出対象ブロックの動きベクトルとして選択される可能性が低いので、ある所定の範囲を超えたフレーム動きベクトルの探索領域は、探索しても効果がない。よってフレーム動きベクトルの探索範囲はフィールド動きベクトルの探索範囲より常に狭く設定していても、フレーム動きベクトルの探索範囲をフィールド動きベクトルの探索範囲と同じ設定にしている場合と比較してほとんど精度の変わらない動きベクトルを検出することができる。
Thus, the frame motion vector may be selected in the case of an image that does not have a large amount of motion, and is unlikely to be selected in the case of an image that has a large amount of motion.
Therefore, even if the frame motion vector search range is set to be as wide as the field motion vector search range in order to increase the motion vector selection accuracy for an image with large motion, it is selected as the motion vector of the motion detection target block. Therefore, searching for a frame motion vector search region exceeding a predetermined range is not effective. Therefore, even if the frame motion vector search range is always set narrower than the field motion vector search range, the frame motion vector search range is almost the same as the field motion vector search range. An unchanging motion vector can be detected.

よって本発明によれば、フレーム動きベクトル検出の探索範囲をフィールド動きベクトル検出の探索範囲より常に小さく設定して動きベクトル検出を行うことにより、フレーム動きベクトル検出の精度を損なうことなく、フレーム動きベクトル検出処理量を削減でき、全体のインターレース画像の動きベクトル検出処理量を削減できる。   Therefore, according to the present invention, the frame motion vector detection search range is always set to be smaller than the field motion vector detection search range and the motion vector detection is performed, so that the frame motion vector detection accuracy is not impaired. The amount of detection processing can be reduced, and the amount of motion vector detection processing for the entire interlaced image can be reduced.

本発明の実施例を図面を参照しながら説明する。
図1は、本発明の動きベクトル検出装置の一実施例のブロック図である。
本実施例は、参照画像メモリ101と、符号化対象画像メモリ102と、動きベクトル探索範囲制御手段103と、フィールド動きベクトル検出手段104と、フレーム動きベクトル検出手段105と、動きベクトル選択手段106と、動きベクトル出力手段107と、周辺ブロックフィールド動きベクトルメモリ108と、周辺ブロックフレーム動きベクトルメモリ109とから構成されている。
Embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram of an embodiment of a motion vector detection apparatus of the present invention.
In this embodiment, the reference image memory 101, the encoding target image memory 102, the motion vector search range control means 103, the field motion vector detection means 104, the frame motion vector detection means 105, and the motion vector selection means 106 , A motion vector output means 107, a peripheral block field motion vector memory 108, and a peripheral block frame motion vector memory 109.

参照画像メモリ101は、参照画像データを記憶しているものである。
符号化対象画像メモリ102は、符号化対象画像データを記憶しているものである。
動きベクトル探索範囲制御手段103は、フレームの動きベクトル探索範囲をフィールドの動きベクトル探索範囲より常に狭く決定し、それぞれの探索範囲をフィールド動きベクトル検出手段104とフレーム動きベクトル検出手段105に供給するものである。例えばフィールドの動きベクトル探索範囲を、原点を中心とした±16画素とした場合、フレームの動きベクトル探索範囲を、原点を中心とした±8画素とする。
The reference image memory 101 stores reference image data.
The encoding target image memory 102 stores encoding target image data.
The motion vector search range control means 103 determines a frame motion vector search range that is always narrower than the field motion vector search range, and supplies each search range to the field motion vector detection means 104 and the frame motion vector detection means 105. It is. For example, when the field motion vector search range is ± 16 pixels centered on the origin, the frame motion vector search range is ± 8 pixels centered on the origin.

フィールド動きベクトル検出手段104は、動きベクトル探索範囲制御手段103で設定された探索範囲内において、フィールドの動きベクトルを検出し、検出したフィールド動きベクトルとそれに対応する誤差評価値を、動きベクトル選択手段106に供給するものである。   The field motion vector detection means 104 detects a field motion vector within the search range set by the motion vector search range control means 103, and detects the detected field motion vector and the corresponding error evaluation value as a motion vector selection means. 106 is supplied.

ここで、フィールド動きベクトル検出手段104の動作について図5のフローチャートを用いて説明する。
まず、動きベクトル探索範囲制御手段103でフィールド動きベクトル検出探索範囲を例えば±16画素に設定する(S201)。
Here, the operation of the field motion vector detection means 104 will be described with reference to the flowchart of FIG.
First, the motion vector search range control means 103 sets the field motion vector detection search range to ± 16 pixels, for example (S201).

次に設定したフィールド動きベクトル検出探索範囲を探索範囲として、階層動きベクトルを求める(S202)。
階層動きベクトルの検出方法について図7を用いて説明する。解像度を低下させた縮小画像701において、縮小画像対応ブロック702の動きベクトル703を求め、縮小画像701の縮小率を考慮して、求まった動きベクトル703を伸張することにより、もとの画像704に対応させた階層動きベクトル706を求める。ここで、縮小画像対応ブロック702は、もとの画像704における符号化ブロック705を、縮小画像701に対応させたものである。
Next, a hierarchical motion vector is obtained using the set field motion vector detection search range as a search range (S202).
A hierarchical motion vector detection method will be described with reference to FIG. In the reduced image 701 with reduced resolution, the motion vector 703 of the reduced image corresponding block 702 is obtained, and the obtained motion vector 703 is expanded in consideration of the reduction rate of the reduced image 701, whereby the original image 704 is restored. A corresponding hierarchical motion vector 706 is obtained. Here, the reduced image corresponding block 702 is obtained by associating the encoded block 705 in the original image 704 with the reduced image 701.

図5のフローチャートの説明に戻る。
次に、階層動きベクトルでの誤差評価値EhFi、周辺動きベクトルでの誤差評価値EsFi1〜EsFi4を求める(S203)。ここで、周辺動きベクトルとは、図8のように、符号化対象となっている符号化ブロック805に隣接する801〜804、806〜809のブロックのうち、既に動きベクトルが決定しているブロックとする。一般に動きベクトルを求める順序は801→809なので、動きベクトルが定まっているブロックは801〜804である。
Returning to the flowchart of FIG.
Next, error evaluation values EhFi with hierarchical motion vectors and error evaluation values EsFi1 to EsFi4 with peripheral motion vectors are obtained (S203). Here, the peripheral motion vector is a block whose motion vector has already been determined among the blocks 801 to 804 and 806 to 809 adjacent to the encoding block 805 to be encoded as shown in FIG. And In general, the order of obtaining the motion vector is 801 → 809, and therefore the blocks having the motion vector are 801 to 804.

次に、EhFi、EsFi1〜EsFi4の中で最小誤差評価値を持つ点を探索初期点とする(S204)。決定した探索初期点を中心に例えば±2画素の領域で、誤差評価値が最小となるフィールド動きベクトルを検出する(S205)。ここで、探索方法を、探索初期点を中心とする±2画素としたが、探索初期点を利用した探索方法ならどのような探索でもよい。   Next, a point having a minimum error evaluation value among EhFi and EsFi1 to EsFi4 is set as a search initial point (S204). A field motion vector having a minimum error evaluation value is detected in an area of, for example, ± 2 pixels around the determined initial search point (S205). Here, the search method is ± 2 pixels centered on the initial search point. However, any search method using the initial search point may be used.

そして、検出したフィールド動きベクトルとそれに対応する誤差評価値を動きベクトル選択手段106に供給する(S206)。
図1のブロック図の説明に戻る。
Then, the detected field motion vector and the corresponding error evaluation value are supplied to the motion vector selection means 106 (S206).
Returning to the description of the block diagram of FIG.

フレーム動きベクトル検出手段105は、動きベクトル探索範囲制御手段103で設定された探索範囲内において、フレームの動きベクトルを検出し、検出したフレーム動きベクトルとそれに対応する誤差評価値を、動きベクトル選択手段106に供給するものである。   The frame motion vector detection means 105 detects a frame motion vector within the search range set by the motion vector search range control means 103, and detects the detected frame motion vector and the corresponding error evaluation value as a motion vector selection means. 106 is supplied.

ここで、フレーム動きベクトル検出手段105の動作について図6のフローチャートを用いて説明する。
まず、動きベクトル探索範囲制御手段103でフレーム動きベクトル検出探索範囲を例えば±8画素に設定する(S301)。ここで、フレーム動きベクトル検出の探索範囲を±8画素としフィールド動きベクトル検出の±16画素としている探索範囲より狭くなっていることに注意する。これによって、フレーム動きベクトル検出の処理量をフィールド動きベクトル検出の処理量より削減できる。
Here, the operation of the frame motion vector detection means 105 will be described with reference to the flowchart of FIG.
First, the motion vector search range control means 103 sets the frame motion vector detection search range to ± 8 pixels, for example (S301). Note that the search range for frame motion vector detection is ± 8 pixels, which is narrower than the search range for ± 16 pixels for field motion vector detection. Thereby, the processing amount of frame motion vector detection can be reduced from the processing amount of field motion vector detection.

次に設定したフレーム動きベクトル検出探索範囲を動きベクトル探索範囲制御手段として、階層動きベクトルを求める(S302)。
続いて、階層動きベクトルでの誤差評価値EhFl、周辺動きベクトルでの誤差評価値EsFl1〜EsFl4を求める(S303)。
Next, using the set frame motion vector detection search range as a motion vector search range control means, a hierarchical motion vector is obtained (S302).
Subsequently, error evaluation values EhFl with hierarchical motion vectors and error evaluation values EsFl1 to EsFl4 with peripheral motion vectors are obtained (S303).

次に、EhFl、EsFl1〜EsFl4の中で最小誤差評価値を持つ点を探索初期点とする(S304)。決定した探索初期点を中心に例えば±2画素の領域で、誤差評価値が最小となるフレーム動きベクトルを検出する(S305)。ここで、探索方法を、探索初期点を中心とする±2画素としたが、探索初期点を利用した探索方法ならどのような探索でもよい。   Next, a point having a minimum error evaluation value among EhFl and EsFl1 to EsFl4 is set as a search initial point (S304). For example, a frame motion vector having a minimum error evaluation value is detected in an area of ± 2 pixels centering on the determined initial search point (S305). Here, the search method is ± 2 pixels centered on the initial search point. However, any search method using the initial search point may be used.

そして、検出したフレーム動きベクトルとそれに対応する誤差評価値を動きベクトル選択手段106に供給する(S306)。
図1のブロック図の説明に戻る。
Then, the detected frame motion vector and the corresponding error evaluation value are supplied to the motion vector selection means 106 (S306).
Returning to the description of the block diagram of FIG.

動きベクトル選択手段106は、フィールド動きベクトル検出手段104からフィールドの動きベクトルとそれに対応する誤差評価値が、フレーム動きベクトル検出手段105からフレームの動きベクトルとそれに対応する誤差評価値が入力され、誤差評価値の小さい動きベクトルを動きベクトル出力手段107に供給するものである。   The motion vector selection unit 106 receives the field motion vector and the corresponding error evaluation value from the field motion vector detection unit 104, and receives the frame motion vector and the corresponding error evaluation value from the frame motion vector detection unit 105. A motion vector having a small evaluation value is supplied to the motion vector output means 107.

動きベクトル出力手段107は、決定した動きベクトルを、外部に出力するものである。
周辺ブロックフィールド動きベクトルメモリ108は、符号化ブロックのフィールドの周辺動きベクトルを記憶しているものである。
The motion vector output means 107 outputs the determined motion vector to the outside.
The peripheral block field motion vector memory 108 stores the peripheral motion vector of the field of the encoded block.

周辺ブロックフレーム動きベクトルメモリ109は、符号化ブロックのフレームの周辺動きベクトルを記憶しているものである。
さらにまた、本発明は、上記した動きベクトル検出装置の機能をコンピュータに実現させるためのプログラムを含むものである。これらのプログラムは、記録媒体から読みとられてコンピュータに取り込まれてもよいし、通信ネットワークを介して伝送されてコンピュータに取り込まれてもよい。
The peripheral block frame motion vector memory 109 stores the peripheral motion vector of the frame of the encoded block.
Furthermore, the present invention includes a program for causing a computer to realize the functions of the motion vector detection device described above. These programs may be read from a recording medium and loaded into a computer, or may be transmitted via a communication network and loaded into a computer.

本発明の動きベクトル検出装置の実施例を示すブロック図である。It is a block diagram which shows the Example of the motion vector detection apparatus of this invention. 従来の動きベクトル検出装置のブロック図である。It is a block diagram of the conventional motion vector detection apparatus. 従来の他の動きベクトル検出装置のブロック図である。It is a block diagram of the other conventional motion vector detection apparatus. 従来のフレーム動きベクトル検出手段204のフローチャートである。10 is a flowchart of conventional frame motion vector detection means 204. 本実施例のフィールド動きベクトル検出手段104のフローチャートである。It is a flowchart of the field motion vector detection means 104 of a present Example. 本実施例のフレーム動きベクトル検出手段105のフローチャートである。It is a flowchart of the frame motion vector detection means 105 of a present Example. 従来の階層動きベクトル検出の図である。It is a figure of the conventional hierarchical motion vector detection. 従来の周辺ブロックの図である。It is a figure of the conventional peripheral block. 従来のフィールド構造の説明図である。It is explanatory drawing of the conventional field structure.

符号の説明Explanation of symbols

101・・・参照画像メモリ
102・・・符号化対象画像メモリ
103・・・動きベクトル探索範囲制御手段
104・・・フィールド動きベクトル検出手段
105・・・フレーム動きベクトル検出手段
106・・・動きベクトル選択手段
107・・・動きベクトル出力手段
108・・・周辺ブロックフィールド動きベクトルメモリ
109・・・周辺ブロックフレーム動きベクトルメモリ



DESCRIPTION OF SYMBOLS 101 ... Reference image memory 102 ... Encoding object image memory 103 ... Motion vector search range control means 104 ... Field motion vector detection means 105 ... Frame motion vector detection means 106 ... Motion vector Selection means 107 ... motion vector output means 108 ... peripheral block field motion vector memory 109 ... peripheral block frame motion vector memory



Claims (2)

時間的に連続する2つのフィールド画像を重ね合わせてひとつのフレーム画像を構成するインターレース構造の画像を符号化するために使用する動きベクトルを検出する動きベクトル検出装置において、
フィールド入力画像を所定数の画素単位毎にブロック化し、前記フィールド入力画像において各ブロックをフィールド動き検出対象ブロックとして順次設定し、フィールド参照画像において前記各フィールド動き検出対象ブロックに応じて探索範囲を設定し、前記各フィールド動き検出対象ブロック内の画素と前記フィールド参照画像における前記探索範囲内の画素とを比較して、ブロックマッチングにより前記各フィールド動き検出対象ブロック毎にフィールド動きベクトルを求めるフィールド動きベクトル検出手段と、
フレーム入力画像を所定数の画素単位毎にブロック化し、前記フレーム入力画像において各ブロックをフレーム動き検出対象ブロックとして順次設定し、フレーム参照画像において前記各フレーム動き検出対象ブロックに応じて探索範囲を設定し、前記各フレーム動き検出対象ブロック内の画素と前記フレーム参照画像における前記探索範囲内の画素とを比較して、ブロックマッチングにより前記各フレーム動き検出対象ブロック毎にフレーム動きベクトルを求めるフレーム動きベクトル検出手段と、
符号化対象画像内で同じ空間座標に位置する前記フィールド動き検出対象ブロックとフレーム動き検出対象ブロックとにおいてそれぞれ検出された、前記フィールド動きベクトルと前記フレーム動きベクトルとを比較して、符号化の効率を示す度合である誤差評価値の小さい方の動きベクトルを選択して出力する動きベクトル選択手段と、
前記フレーム動きベクトルを検出するための前記探索範囲を、前記フィールド動きベクトルを検出するための前記探索範囲よりも常に狭い範囲として設定する探索範囲設定手段を備えることを特徴とする動きベクトル検出装置。
In a motion vector detection device that detects a motion vector used to encode an image of an interlace structure that constitutes one frame image by superimposing two temporally continuous field images,
The field input image is divided into blocks for a predetermined number of pixel units, each block in the field input image is sequentially set as a field motion detection target block, and a search range is set in the field reference image according to each field motion detection target block A field motion vector that compares a pixel in each field motion detection target block with a pixel in the search range in the field reference image and obtains a field motion vector for each field motion detection target block by block matching Detection means;
A frame input image is divided into blocks of a predetermined number of pixels, each block is sequentially set as a frame motion detection target block in the frame input image, and a search range is set according to each frame motion detection target block in a frame reference image A frame motion vector that compares a pixel in each frame motion detection target block with a pixel in the search range in the frame reference image to obtain a frame motion vector for each frame motion detection target block by block matching Detection means;
The field motion vector and the frame motion vector detected in the field motion detection target block and the frame motion detection target block located at the same spatial coordinates in the encoding target image are respectively compared, and the encoding efficiency is compared. A motion vector selection means for selecting and outputting a motion vector having a smaller error evaluation value, which is a degree indicating
A motion vector detection apparatus comprising: search range setting means for setting the search range for detecting the frame motion vector as a range that is always narrower than the search range for detecting the field motion vector.
時間的に連続する2つのフィールド画像を重ね合わせてひとつのフレーム画像を構成するインターレース構造の画像を符号化するために使用する動きベクトルを検出する動きベクトル検出プログラムにおいて、
フィールド入力画像を所定数の画素単位毎にブロック化し、前記フィールド入力画像において各ブロックをフィールド動き検出対象ブロックとして順次設定し、フィールド参照画像において前記各フィールド動き検出対象ブロックに応じて探索範囲を設定し、前記各フィールド動き検出対象ブロック内の画素と前記フィールド参照画像における前記探索範囲内の画素とを比較して、ブロックマッチングにより前記各フィールド動き検出対象ブロック毎にフィールド動きベクトルを求めるフィールド動きベクトル検出機能と、
フレーム入力画像を所定数の画素単位毎にブロック化し、前記フレーム入力画像において各ブロックをフレーム動き検出対象ブロックとして順次設定し、フレーム参照画像において前記各フレーム動き検出対象ブロックに応じて探索範囲を設定し、前記各フレーム動き検出対象ブロック内の画素と前記フレーム参照画像における前記探索範囲内の画素とを比較して、ブロックマッチングにより前記各フレーム動き検出対象ブロック毎にフレーム動きベクトルを求めるフレーム動きベクトル検出機能と、
符号化対象画像内で同じ空間座標に位置する前記フィールド動き検出対象ブロックとフレーム動き検出対象ブロックとにおいてそれぞれ検出された、前記フィールド動きベクトルと前記フレーム動きベクトルとを比較して、符号化の効率を示す度合である誤差評価値の小さい方の動きベクトルを選択して出力する動きベクトル選択機能と、
前記フレーム動きベクトルを検出するための前記探索範囲を、前記フィールド動きベクトルを検出するための前記探索範囲よりも常に狭い範囲として設定する探索範囲設定機能とをコンピュータに実現させるための動きベクトル検出プログラム。










In a motion vector detection program for detecting a motion vector used to encode an image of an interlace structure that constitutes one frame image by superimposing two temporally continuous field images,
The field input image is divided into blocks for a predetermined number of pixel units, each block in the field input image is sequentially set as a field motion detection target block, and a search range is set in the field reference image according to each field motion detection target block A field motion vector that compares a pixel in each field motion detection target block with a pixel in the search range in the field reference image and obtains a field motion vector for each field motion detection target block by block matching Detection function,
A frame input image is divided into blocks of a predetermined number of pixels, each block is sequentially set as a frame motion detection target block in the frame input image, and a search range is set according to each frame motion detection target block in a frame reference image A frame motion vector that compares a pixel in each frame motion detection target block with a pixel in the search range in the frame reference image to obtain a frame motion vector for each frame motion detection target block by block matching Detection function,
The field motion vector and the frame motion vector detected in the field motion detection target block and the frame motion detection target block located at the same spatial coordinates in the encoding target image are respectively compared, and the encoding efficiency is compared. A motion vector selection function for selecting and outputting a motion vector with a smaller error evaluation value, which is a degree indicating
A motion vector detection program for causing a computer to realize a search range setting function for setting the search range for detecting the frame motion vector as a range that is always narrower than the search range for detecting the field motion vector .










JP2004221372A 2004-07-29 2004-07-29 Motion vector detecting device, and detecting program Pending JP2006042114A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004221372A JP2006042114A (en) 2004-07-29 2004-07-29 Motion vector detecting device, and detecting program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004221372A JP2006042114A (en) 2004-07-29 2004-07-29 Motion vector detecting device, and detecting program

Publications (1)

Publication Number Publication Date
JP2006042114A true JP2006042114A (en) 2006-02-09

Family

ID=35906594

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004221372A Pending JP2006042114A (en) 2004-07-29 2004-07-29 Motion vector detecting device, and detecting program

Country Status (1)

Country Link
JP (1) JP2006042114A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572354A (en) * 2015-10-09 2017-04-19 腾讯科技(北京)有限公司 Image block-based search matching method and system and video processing device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106572354A (en) * 2015-10-09 2017-04-19 腾讯科技(北京)有限公司 Image block-based search matching method and system and video processing device
CN106572354B (en) * 2015-10-09 2021-10-15 腾讯科技(北京)有限公司 Image block-based search matching method and system and video processing equipment

Similar Documents

Publication Publication Date Title
US8274602B2 (en) Image processing apparatus and image processing method with redundant frame detection
US20060002470A1 (en) Motion vector detection circuit, image encoding circuit, motion vector detection method and image encoding method
JP2009147807A (en) Image processing apparatus
JP4514203B2 (en) Motion vector detection apparatus and method
JP2007124408A (en) Motion vector detector and motion vector detecting method
JP2008219141A (en) Motion vector detector, image encoder and imaging apparatus employing the same
US7852939B2 (en) Motion vector detection method and device of the same
JP2005167976A (en) Motion vector detecting device and motion vector detecting program
JP4523024B2 (en) Image coding apparatus and image coding method
JP2008263391A (en) Video processing apparatus
JP2007158855A (en) Motion vector detector and motion vector detecting method
JP4622264B2 (en) Motion vector detection apparatus, motion vector detection method, and computer program
JP2007166545A (en) Motion vector detection device and method
JP4622265B2 (en) Motion vector detection device, motion vector detection method, and program
JP2011040808A (en) Information processor, control method and program
JP2007174202A (en) Motion vector detecting device and method therefor
JP4250598B2 (en) Motion compensation IP conversion processing apparatus and motion compensation IP conversion processing method
JP2006042114A (en) Motion vector detecting device, and detecting program
JP4235209B2 (en) Motion vector detection apparatus and motion vector detection method
JP6918661B2 (en) Coding device, coding method and program
JP2008177630A (en) Motion vector detector
JP2000165883A (en) Motion vector detector
JPH10136374A (en) Motion vector prediction device
JP4165447B2 (en) Motion vector detection apparatus and motion vector detection program
US20140341294A1 (en) Video encoding device