JP2001298745A - Device and method for retrieving motion vector - Google Patents
Device and method for retrieving motion vectorInfo
- Publication number
- JP2001298745A JP2001298745A JP2000114640A JP2000114640A JP2001298745A JP 2001298745 A JP2001298745 A JP 2001298745A JP 2000114640 A JP2000114640 A JP 2000114640A JP 2000114640 A JP2000114640 A JP 2000114640A JP 2001298745 A JP2001298745 A JP 2001298745A
- Authority
- JP
- Japan
- Prior art keywords
- cluster
- motion vector
- correlation
- block
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、動きベクトル探索
装置および方法に関し、特に、マクロブロックマクロク
ラスタリング法に基づく動きベクトル探索装置および方
法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a motion vector search apparatus and method, and more particularly, to a motion vector search apparatus and method based on a macroblock macro clustering method.
【0002】[0002]
【従来の技術】近年、ISDN(Integrated Services
Digital Network)またはGSTN(General Switched
Telephone Network)を有効に活用するサービスとして
テレビ電話やテレビ会議などの画像通信サービスが有望
視され、このような動画像の効率的な伝送を目的とした
高能率符号化の研究が盛んに行なわれている。この研究
において一般的には、画像の統計的な性質を利用して、
画像に含まれる冗長性を取除くことにより、情報量の削
減が行なわれている。このような符号化方式として動き
補償予測と離散コサイン変換とを組合わせたハイブリッ
ド符号化方式が良く知られている。2. Description of the Related Art In recent years, ISDN (Integrated Services)
Digital Network) or GSTN (General Switched)
Video communication services such as video telephony and video conferencing are promising as services that make effective use of the Telephone Network, and research on high-efficiency coding for efficient transmission of such moving images has been actively conducted. ing. In this study, we generally use the statistical properties of images to
The amount of information is reduced by removing the redundancy included in the image. As such an encoding method, a hybrid encoding method combining motion compensation prediction and discrete cosine transform is well known.
【0003】たとえば、ITU(International Teleco
mmunications Union)−T勧告H.263においては、
以下のような動き補償予測が用いられている。符号化対
象である現フレーム(以下「符号化対象フレーム」とい
う。)がマクロブロックと呼ばれる符号化の処理単位に
分割され、符号化対象フレームよりも時間的に前後する
フレーム(以下「予測参照フレーム」という。)の所定
の探索領域内から、符号化対象ブロックのマクロブロッ
クと相関性の高い位置が検出される。For example, an ITU (International Teleco
mmunications Union) -T Recommendation H. At 263,
The following motion compensated prediction is used. A current frame to be coded (hereinafter referred to as a “frame to be coded”) is divided into coding processing units called macroblocks, and frames that are temporally earlier or later than the frame to be coded (hereinafter “prediction reference frame”). ) Is detected from within the predetermined search area of the macroblock of the encoding target block.
【0004】符号化対象フレームと予測参照フレームと
の間でのマクロブロックの位置的な変化を、動きベクト
ルとして符号化して伝送することにより、情報量の削減
が行なわれる。[0004] The amount of information is reduced by encoding and transmitting a positional change of a macroblock between a current frame and a predicted reference frame as a motion vector.
【0005】動きベクトル探索法として最も一般的なも
のとして、探索領域に含まれるすべての画素についてマ
クロブロックとの相関性を評価する全探索法が知られて
いる。以下、図面を用いて全探索法について説明する。[0005] As the most general motion vector search method, there is known a full search method for evaluating the correlation between all pixels included in a search area and a macroblock. Hereinafter, the full search method will be described with reference to the drawings.
【0006】図8を参照して、符号化対象フレーム10
0が所定のサイズ(たとえば16×16画素)のマクロ
ブロックに分割される。その内の1つのマクロブロック
101が動きベクトルの検出対象ブロックとして選択さ
れる。図9を参照して、符号化対象フレーム100より
も1フレーム前の予測参照フレーム102に、動きベク
トル探索のため、探索領域103が設定される。探索領
域103のサイズは、マクロブロック101よりも大き
く、たとえば、マクロブロック101を中心としてマク
ロブロック101のX軸およびY軸の負方向にそれぞれ
16画素の範囲、ならびに正方向にそれぞれ15画素の
範囲にある、47×47画素であるものとする。Referring to FIG. 8, a frame to be encoded 10
0 is divided into macroblocks of a predetermined size (for example, 16 × 16 pixels). One macro block 101 is selected as a motion vector detection target block. Referring to FIG. 9, search area 103 is set for a motion vector search in prediction reference frame 102 one frame before encoding target frame 100. The size of the search area 103 is larger than that of the macroblock 101. For example, a range of 16 pixels each in the negative direction of the X axis and the Y axis of the macroblock 101 and a range of 15 pixels each in the positive direction around the macroblock 101 , And 47 × 47 pixels.
【0007】探索領域103内で、マクロブロック10
1を水平または垂直方向に1画素ずつずらしながら、重
なり合う画素間での画素値の差分の絶対値の合計を求め
る。合計値が最小となる部分領域104は、マクロブロ
ック101との相関性が最も高い部分である。このた
め、マクロブロック101から部分領域104へ向かう
ベクトル105を求め、ベクトル105をマクロブロッ
ク101の動きベクトルとする。In search area 103, macro block 10
While shifting 1 by one pixel in the horizontal or vertical direction, the sum of absolute values of pixel value differences between overlapping pixels is obtained. The partial area 104 having the minimum total value is a part having the highest correlation with the macroblock 101. Therefore, a vector 105 from the macroblock 101 to the partial area 104 is obtained, and the vector 105 is set as a motion vector of the macroblock 101.
【0008】全探索法による動きベクトル探索処理で
は、探索領域103内のすべての位置において、マクロ
ブロック101内のすべての画素について画素値の差分
を求めている。このため、演算量が膨大であるという問
題がある。これまで演算量を減らす手法がいくつか提案
されているが、演算量を少なくすると動きベクトルの探
索精度が低くなる。このように、演算量と探索精度とは
トレードオフの関係にあるといえる。また、動きベクト
ルの探索精度が低いと圧縮効率が悪くなるという問題も
ある。In the motion vector search processing by the full search method, differences in pixel values are obtained for all pixels in the macro block 101 at all positions in the search area 103. Therefore, there is a problem that the amount of calculation is enormous. Several techniques have been proposed so far to reduce the amount of computation, but when the amount of computation is reduced, the accuracy of motion vector search is reduced. Thus, it can be said that the calculation amount and the search accuracy have a trade-off relationship. In addition, there is a problem that if the search accuracy of the motion vector is low, the compression efficiency deteriorates.
【0009】このような背景の中、演算量を減らし、か
つ精度の高い動きベクトルを求める手法として、「Gen
Fujita et al., "A VLSI Architecture for Motion Est
imation Core Dedicated to H.263 Video Coding", IEI
CE TRANS. ELECTRON.,VOL.E81-C,NO.5,pp.702-707,May
1998」に記載のマクロクラスタリング法が提案されてい
る。In such a background, as a method of obtaining a highly accurate motion vector with a reduced amount of calculation, "Gen
Fujita et al., "A VLSI Architecture for Motion Est
imation Core Dedicated to H.263 Video Coding ", IEI
CE TRANS. ELECTRON., VOL.E81-C, NO.5, pp.702-707, May
1998 "has been proposed.
【0010】図10を参照して、マクロクラスタリング
法を用いて動きベクトルを探索する動きベクトル探索装
置は、符号化対象フレームを受け、符号化対象フレーム
を分割し、動きベクトルの検出対象領域を抽出する検出
対象画像分割部1と、予測参照フレームを受け、予測参
照フレームに探索領域を設定するとともに、探索領域内
から上記検出対象領域と同じサイズの領域を切り出す予
測参照画像分割部2と、検出対象画像分割部1および予
測参照画像分割部2に接続され、切り出された領域間の
誤差(たとえば、各画素の差分の絶対値の合計)を算出
する誤差算出部3と、誤差の最小値および検出対象領域
の動きベクトルを記憶する誤差記憶部5と、誤差算出部
3および誤差記憶部5に接続され、誤差を評価し、誤差
の最小値および誤差が最小となるときの探索領域内での
位置を求める誤差評価部4とを含む。Referring to FIG. 10, a motion vector search apparatus for searching for a motion vector using a macro clustering method receives a frame to be coded, divides the frame to be coded, and extracts a region to be detected of the motion vector. A detection target image dividing unit 1 that receives a prediction reference frame, sets a search area in the prediction reference frame, and cuts out an area of the same size as the detection target area from the search area; An error calculating unit 3 connected to the target image dividing unit 1 and the prediction reference image dividing unit 2 for calculating an error between the cut-out areas (for example, a sum of absolute values of differences between pixels); An error storage unit 5 that stores a motion vector of the detection target area, and is connected to the error calculation unit 3 and the error storage unit 5, evaluates the error, and calculates a minimum error value and an error value. There and an error evaluation unit 4 for determining the position in the search area at which the minimum.
【0011】動きベクトル検出処理について説明する。
図11を参照して、検出対象画像分割部1は、符号化対
象フレーム200を所定のサイズ(たとえば16×16
画素)のマクロブロックに分割し、そのうちのm×n個
のマクロブロックによりクラスタ201を構成する。こ
こでは、m=n=2の場合について説明する。すなわ
ち、クラスタのサイズは32×32画素となる。図4を
参照して、検出対象画像分割部1は、クラスタ201に
含まれる画素を、X方向およびY方向の比率がm:nと
なるように間引く。ここでは、2×2画素の領域の中か
ら左上の画素をその領域の画素とすることにより、32
×32画素のクラスタ201を間引いて16×16画素
の領域(以下「検出対象クラスタ」という。)を作成す
る。The motion vector detection processing will be described.
Referring to FIG. 11, detection target image dividing section 1 converts encoding target frame 200 to a predetermined size (for example, 16 × 16
The pixel 201 is divided into macroblocks (pixels), and a cluster 201 is formed by m × n macroblocks of the macroblocks. Here, the case where m = n = 2 will be described. That is, the size of the cluster is 32 × 32 pixels. Referring to FIG. 4, detection target image division unit 1 thins out the pixels included in cluster 201 such that the ratio in the X direction and the Y direction is m: n. Here, by setting the upper left pixel in the 2 × 2 pixel area as a pixel in that area, 32
An area of 16 × 16 pixels (hereinafter referred to as “cluster to be detected”) is created by thinning out the cluster 201 of × 32 pixels.
【0012】予測参照画像分割部2は、予測参照フレー
ムを検出対象画像分割部1と同様の間引き方法により間
引いて、縮小予測参照フレーム204を作成する。予測
参照画像分割部2は、縮小予測参照フレーム204中
に、探索領域205を設定する。探索領域205は、縮
小対象クラスタ203よりも大きく、たとえば、縮小対
象クラスタ203のX方向およびY方向のそれぞれにつ
いて、正方向および負方向にそれぞれ2i−1(i=
1,2,...)画素を加えた大きさを有する。ここで
は、i=3の場合について説明する。したがって、探索
領域205の大きさは、30×30画素となる。The predicted reference image dividing unit 2 creates a reduced predicted reference frame 204 by thinning out the predicted reference frame by the same thinning method as the detection target image dividing unit 1. The prediction reference image dividing unit 2 sets a search area 205 in the reduced prediction reference frame 204. The search area 205 is larger than the reduction target cluster 203. For example, in the X direction and the Y direction of the reduction target cluster 203, 2 i −1 (i =
1, 2,. . . ) Has a size obtained by adding pixels. Here, the case where i = 3 will be described. Therefore, the size of the search area 205 is 30 × 30 pixels.
【0013】誤差評価部4は、上述の全探索法を用い
て、探索領域205内で縮小対象クラスタ203を水平
または垂直方向に所定画素(一般的には1画素)ずつず
らしながら、重なり合う画素間で画素値の差分の絶対値
を順次求め、縮小対象クラスタ203内の差分の絶対値
の合計を算出する。The error evaluator 4 uses the above-described full search method to shift the cluster 203 to be reduced in the search area 205 in the horizontal or vertical direction by a predetermined pixel (generally, one pixel), and adjusts the distance between overlapping pixels. , The absolute value of the difference between the pixel values is sequentially obtained, and the sum of the absolute values of the differences in the reduction target cluster 203 is calculated.
【0014】図6を参照して、誤差評価部4は、算出さ
れた差分の絶対値の合計と誤差記憶部5に記憶されてい
る差分の絶対値の合計の最小値とを順次比較し、差分の
絶対値の合計が最小となる部分領域クラスタ206を検
出する。誤差評価部4は、差分の絶対値の合計の最小値
を誤差記憶部5に記憶する。誤差評価部4は、縮小対象
クラスタ203の中心から部分領域クラスタ206の中
心へ向かう動きベクトル207を求め、誤差記憶部5に
記憶する。Referring to FIG. 6, error evaluating section 4 sequentially compares the calculated sum of absolute values of the differences with the minimum value of the sum of absolute values of the differences stored in error storing section 5, The partial area cluster 206 that minimizes the sum of the absolute values of the differences is detected. The error evaluator 4 stores the minimum value of the sum of the absolute values of the differences in the error storage 5. The error evaluator 4 obtains a motion vector 207 from the center of the reduction target cluster 203 to the center of the partial area cluster 206, and stores the motion vector 207 in the error storage 5.
【0015】図12を参照して、予測参照画像分割部2
は、動きベクトル207をX方向にm倍、Y方向にn倍
したベクトル209をクラスタ201に含まれるマクロ
ブロック202の初期ベクトルとする。図7を参照し
て、予測参照画像分割部2は、予測参照フレーム208
内で、マクロブロック202をベクトル209に従い移
動させた部分領域マクロブロック210を中心とした探
索領域211を設定する。Referring to FIG. 12, predictive reference image dividing section 2
Is a vector 209 obtained by multiplying the motion vector 207 by m in the X direction and by n in the Y direction as an initial vector of the macroblock 202 included in the cluster 201. With reference to FIG. 7, the prediction reference image dividing unit 2
, A search area 211 centered on a partial area macroblock 210 obtained by moving the macroblock 202 according to the vector 209 is set.
【0016】探索領域211は、部分領域マクロブロッ
ク210のX方向およびY方向のそれぞれについて、正
方向および負方向にそれぞれ(2j−1)画素(j=
1,2,...)加えた大きさを有する。The search area 211 has (2 j -1) pixels (j = j) in the positive and negative directions in the X and Y directions of the partial area macroblock 210, respectively.
1, 2,. . . ) Has the added size.
【0017】探索領域211内で全探索法を用いてマク
ロブロック202に対応する位置を求めることにより、
最終的にマクロブロック202の動きベクトルを求める
ことができる。By finding the position corresponding to the macroblock 202 in the search area 211 using the full search method,
Finally, the motion vector of the macro block 202 can be obtained.
【0018】このように、クラスタの階層において大ま
かな動きベクトルの探索を実施し、次にブロックの階層
において詳細な動きベクトルの探索を実施するという2
段階の探索を行なう。そのため、ブロックの階層のみで
動きベクトルを実施する場合と比較し、同じ大きさの探
索領域を少ない演算量で精度よく探索することができ
る。As described above, a rough motion vector search is performed in the cluster hierarchy, and then a detailed motion vector search is performed in the block hierarchy.
Perform a stage search. Therefore, compared to the case where a motion vector is implemented only in the block hierarchy, a search region of the same size can be searched with high accuracy and with a small amount of calculation.
【0019】[0019]
【発明が解決しようとする課題】マクロブロックマクロ
クラスタリング法では、本来動きベクトルを求める必要
のないマクロブロック、すなわち時間的に前後するフレ
ームと比較して変化が少ないマクロブロックについても
動きベクトル探索を行なっている。このため、探索処理
に必要な演算量が増加し、処理時間を浪費するという問
題がある。In the macroblock macro clustering method, a motion vector search is performed also on a macroblock which does not originally need to obtain a motion vector, that is, a macroblock whose change is small compared with frames preceding and succeeding in time. ing. For this reason, there is a problem that the amount of calculation required for the search processing increases and processing time is wasted.
【0020】また、演算量および処理時間の増加にとも
ない、動きベクトル探索装置の消費電力が増加するとい
う問題もある。There is also a problem that the power consumption of the motion vector search device increases with an increase in the amount of calculation and the processing time.
【0021】本発明は、上述の課題を解決するためにな
されたもので、その目的は、動きベクトルの探索精度を
維持しつつ、動きベクトル探索に必要な演算量および処
理時間を軽減することができる動きベクトル探索装置を
提供することである。SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and an object of the present invention is to reduce the amount of calculation and processing time required for a motion vector search while maintaining the accuracy of motion vector search. It is an object of the present invention to provide a motion vector search device that can perform the motion vector search.
【0022】本発明の他の目的は、低消費電力の動きベ
クトル探索装置を提供することである。Another object of the present invention is to provide a motion vector search apparatus with low power consumption.
【0023】[0023]
【課題を解決するための手段】本発明のある局面に従う
動きベクトル探索装置は、動き補償予測を用いて第1の
フレームに含まれるブロックに対応する位置を第1のフ
レームと所定の関係にある第2のフレームより求め、ブ
ロックの動きベクトルを探索する。動きベクトル探索装
置は、複数のブロックから構成される第1のフレームに
おいて、ブロックを1つ以上含むクラスタを生成するた
めのクラスタ生成手段と、クラスタ生成手段に接続さ
れ、クラスタと、第2のフレームにおけるクラスタと同
位置の領域との相関性を判断するためのクラスタ相関性
判断手段と、クラスタ相関性判断手段に接続され、第2
のフレームにおける対応領域との間に相関性がないと判
断されたクラスタについてのみ、クラスタに対応する位
置を第2のフレームより探索し、クラスタの動きベクト
ルを検出するためのクラスタ動きベクトル検出手段と、
クラスタ相関性判断手段およびクラスタ動きベクトル検
出手段に接続され、クラスタ相関性判断手段の出力およ
びクラスタの動きベクトルに基づき、第2のフレームに
おける、クラスタに含まれるブロックに対応する位置を
求め、ブロックの動きベクトルを検出するための動きベ
クトル検出手段とを含む。A motion vector search apparatus according to an aspect of the present invention uses a motion compensated prediction to set a position corresponding to a block included in a first frame in a predetermined relationship with the first frame. A motion vector of the block is searched for from the second frame. The motion vector search device is connected to a cluster generation unit for generating a cluster including one or more blocks in a first frame including a plurality of blocks, and is connected to the cluster and the second frame. A cluster correlation judging means for judging the correlation between the cluster and the area at the same position in the
Cluster motion vector detecting means for searching the second frame for a position corresponding to the cluster only for a cluster determined to have no correlation with the corresponding region in the frame of ,
The second frame is connected to the cluster correlation determining means and the cluster motion vector detecting means, and based on the output of the cluster correlation determining means and the motion vector of the cluster, a position corresponding to a block included in the cluster in the second frame is obtained. Motion vector detecting means for detecting a motion vector.
【0024】第1および第2のフレームの同位置で、ク
ラスタに相関性があると判断された場合には、クラスタ
に動きがないと判断できる。このため、動きがないと判
断されたクラスタについては、その後のクラスタの動き
ベクトルを探索する処理を省略することが可能となる。
よって、動きベクトルの精度を低下させることなく、動
きベクトル探索に必要な演算量および処理時間を軽減す
ることができる。また、それに伴ない、動きベクトル探
索装置の消費電力を低下させることができる。When it is determined that there is a correlation between the clusters at the same position in the first and second frames, it can be determined that the cluster has no motion. For this reason, for a cluster determined to have no motion, it is possible to omit the subsequent process of searching for a motion vector of the cluster.
Therefore, it is possible to reduce the amount of calculation and the processing time required for the motion vector search without lowering the accuracy of the motion vector. Accordingly, the power consumption of the motion vector search device can be reduced.
【0025】好ましくは、動きベクトル検出手段は、ク
ラスタ相関性判断手段およびクラスタ動きベクトル検出
手段に接続され、クラスタ相関性判断手段の出力および
クラスタの動きベクトルに基づいて、クラスタに含まれ
るブロックの動きベクトルの初期値を表わす初期ベクト
ルを設定するための初期ベクトル設定手段と、初期ベク
トル設定手段に接続され、ブロックと、ブロックを初期
ベクトルに従い移動させた後の第2のフレームにおける
領域との相関性を判断するためのブロック相関性判断手
段と、ブロック相関性判断手段に接続され、第2のフレ
ームにおける対応領域との間に相関性がないと判断され
たブロックについてのみ、ブロックに対応する位置を第
2のフレームより探索し、ブロックの動きベクトルを検
出するためのブロック動きベクトル検出手段とを含む。Preferably, the motion vector detecting means is connected to the cluster correlation determining means and the cluster motion vector detecting means, and based on the output of the cluster correlation determining means and the motion vector of the cluster, the motion of the block included in the cluster is determined. Initial vector setting means for setting an initial vector representing an initial value of the vector, and a correlation between the block and a region in the second frame after the block is moved according to the initial vector, And a block correlation judging unit for judging the position of the second frame, the position corresponding to the block is determined only for the block judged to have no correlation with the corresponding area in the second frame. A block for searching from the second frame and detecting a motion vector of the block. And a click motion vector detecting means.
【0026】第1および第2のフレームの同位置で、ブ
ロックに相関性があると判断された場合には、ブロック
に動きがないと判断できる。このため、動きがないと判
断されたブロックについては、その後のブロックの動き
ベクトルを探索する処理を省略することが可能となる。
よって、動きベクトルの精度を低下させることなく、動
きベクトル探索に必要な演算量および処理時間を軽減す
ることができる。また、それに伴ない、動きベクトル探
索装置の消費電力を低下させることができる。If it is determined that the blocks have correlation at the same position in the first and second frames, it can be determined that the blocks have no motion. Therefore, for a block determined to have no motion, it is possible to omit the process of searching for a motion vector of the subsequent block.
Therefore, it is possible to reduce the amount of calculation and the processing time required for the motion vector search without lowering the accuracy of the motion vector. Accordingly, the power consumption of the motion vector search device can be reduced.
【0027】さらに好ましくは、ブロック動きベクトル
検出手段は、クラスタ相関性判断手段およびブロック相
関性判断手段に接続され、第2のフレームにおける対応
領域との間に相関性がないと判断されたブロックについ
てのみ、ブロックが含まれるクラスタについてのクラス
タ相関性判断手段の出力に基づき、探索領域を第2のフ
レーム中に設定する探索領域設定手段と、探索領域設定
手段に接続され、設定された探索領域内でブロックに対
応する位置を探索し、ブロックの動きベクトルを検出す
るための手段とを含む。More preferably, the block motion vector detecting means is connected to the cluster correlation judging means and the block correlation judging means, and detects a block determined to have no correlation with the corresponding area in the second frame. Only the search area setting means for setting the search area in the second frame based on the output of the cluster correlation judgment means for the cluster including the block, and the search area setting means connected to the search area setting means, and Means for searching for a position corresponding to the block by using the method, and detecting a motion vector of the block.
【0028】さらに好ましくは、探索領域設定手段は、
クラスタとクラスタの対応領域との間に相関性がないと
判断した場合の探索領域を、相関性があると判断した場
合の探索領域よりも大きく設定する。[0028] More preferably, the search area setting means includes:
The search area when it is determined that there is no correlation between the cluster and the corresponding area of the cluster is set to be larger than the search area when it is determined that there is correlation.
【0029】クラスタに相関性があると判断されたにも
関わらず、クラスタを構成するブロックに相関性がない
と判断された場合には、クラスタ階層で大局的な動きベ
クトルが求められていない。このため、探索領域を大き
目に設定することにより、精度良く動きベクトルを求め
ることができる。If it is determined that the clusters have a correlation but the blocks constituting the cluster have no correlation, a global motion vector has not been obtained in the cluster hierarchy. Therefore, by setting the search area to be large, the motion vector can be obtained with high accuracy.
【0030】さらに好ましくは、クラスタ相関性判断手
段は、クラスタと、第2のフレームにおけるクラスタと
同位置の領域との相関性を判断するための第1の相関性
判断手段と、クラスタを構成するブロックの各々につい
て、ブロックと、第2のフレームにおけるブロックと同
位置の領域との相関性を判断するための第2の相関性判
断手段と、第1および第2の相関性判断手段に接続さ
れ、第1の相関性判断手段の出力および第2の相関性判
断手段の出力に基づいて、クラスタと、第2のフレーム
における対応領域との相関性を判断するための手段とを
含む。[0030] More preferably, the cluster correlation judging means comprises a cluster and a first correlation judging means for judging a correlation between the cluster and an area located at the same position as the cluster in the second frame. For each of the blocks, the block is connected to second correlation determining means for determining the correlation between the block and an area at the same position as the block in the second frame, and to the first and second correlation determining means. And means for judging the correlation between the cluster and the corresponding area in the second frame based on the output of the first correlation judging means and the output of the second correlation judging means.
【0031】クラスタに相関性があるか否かを判断する
際に、クラスタを構成するブロックについても相関性が
あるか否かも合わせて判断する。このため、クラスタの
相関性の信頼性が向上する。When determining whether or not there is a correlation between clusters, it is also determined whether or not the blocks constituting the cluster have a correlation. Therefore, the reliability of the correlation between the clusters is improved.
【0032】本発明の他の局面に従う動きベクトル探索
方法は、動き補償予測を用いて第1のフレームに含まれ
るブロックに対応する位置を第1のフレームと所定の関
係にある第2のフレームより求め、ブロックの動きベク
トルを探索する。動きベクトル探索方法は、複数のブロ
ックから構成される第1のフレームにおいて、ブロック
を1つ以上含むクラスタを生成するステップと、クラス
タと、第2のフレームにおけるクラスタと同位置の領域
との相関性を判断するステップと、第2のフレームにお
ける対応領域との間に相関性がないと判断されたクラス
タについてのみ、クラスタに対応する位置を第2のフレ
ームより探索し、クラスタの動きベクトルを検出するス
テップと、第2のフレームにおける対応領域との間に相
関性がないと判断されたクラスタに含まれるブロックに
ついて、第2のフレームにおける対応する位置を求め、
ブロックの動きベクトルを検出するステップとを含む。In a motion vector search method according to another aspect of the present invention, a position corresponding to a block included in a first frame is determined from a second frame having a predetermined relationship with the first frame by using motion compensated prediction. Then, the motion vector of the block is searched. In the motion vector search method, in a first frame including a plurality of blocks, a cluster including one or more blocks is generated, and a correlation between the cluster and an area at the same position as the cluster in the second frame is determined. Is determined, and only for clusters determined to have no correlation with the corresponding area in the second frame, a position corresponding to the cluster is searched from the second frame to detect a motion vector of the cluster. For a block included in the cluster determined to have no correlation between the step and the corresponding region in the second frame, a corresponding position in the second frame is obtained,
Detecting a motion vector of the block.
【0033】第1および第2のフレームの同位置で、ク
ラスタに相関性があると判断された場合には、クラスタ
に動きがないと判断できる。このため、動きがないと判
断されたクラスタについては、その後のクラスタの動き
ベクトルを探索する処理を省略することが可能となる。
よって、動きベクトルの精度を低下させることなく、動
きベクトル探索に必要な演算量および処理時間を軽減す
ることができる。When it is determined that there is a correlation between the clusters at the same position in the first and second frames, it can be determined that the cluster has no motion. For this reason, for a cluster determined to have no motion, it is possible to omit the subsequent process of searching for a motion vector of the cluster.
Therefore, it is possible to reduce the amount of calculation and the processing time required for the motion vector search without lowering the accuracy of the motion vector.
【0034】好ましくは、ブロックの動きベクトルを検
出するステップは、クラスタと第2のフレームにおける
クラスタの対応領域との相関性およびクラスタの動きベ
クトルに基づいて、クラスタに含まれるブロックの動き
ベクトルの初期値を表わす初期ベクトルを設定するステ
ップと、ブロックと、ブロックを初期ベクトルに従い移
動させた後の第2のフレームにおける領域との相関性を
判断するステップと、第2のフレームにおける対応領域
との間に相関性がないと判断されたブロックについての
み、ブロックに対応する位置を第2のフレームより探索
し、ブロックの動きベクトルを抽出するステップとを含
む。Preferably, the step of detecting the motion vector of the block includes the step of initializing the motion vector of the block included in the cluster based on the correlation between the cluster and the corresponding region of the cluster in the second frame and the motion vector of the cluster. Setting an initial vector representing a value; determining a correlation between the block and a region in the second frame after moving the block according to the initial vector; And searching only the position corresponding to the block from the second frame and extracting the motion vector of the block only for the block determined to have no correlation.
【0035】第1および第2のフレームの同位置で、ブ
ロックに相関性があると判断された場合には、ブロック
に動きがないと判断できる。このため、動きがないと判
断されたブロックについては、その後のブロックの動き
ベクトルを探索する処理を省略することが可能となる。
よって、動きベクトルの精度を低下させることなく、動
きベクトル探索に必要な演算量および処理時間を軽減す
ることができる。If it is determined that the blocks have correlation at the same position in the first and second frames, it can be determined that the blocks have no motion. Therefore, for a block determined to have no motion, it is possible to omit the process of searching for a motion vector of the subsequent block.
Therefore, it is possible to reduce the amount of calculation and the processing time required for the motion vector search without lowering the accuracy of the motion vector.
【0036】さらに好ましくは、ブロックの動きベクト
ルを抽出するステップは、第2のフレームにおける対応
領域との間に相関性がないと判断されたブロックについ
てのみ、ブロックが含まれるクラスタについての、当該
クラスタと第2のフレームにおける対応領域との間の相
関性に基づき、探索領域を第2のフレーム中に設定する
ステップと、設定された探索領域内でブロックに対応す
る位置を探索し、ブロックの動きベクトルを検出するス
テップとを含む。[0036] More preferably, the step of extracting a motion vector of a block is performed only for a block including a block that is determined to have no correlation with the corresponding region in the second frame. Setting a search area in the second frame based on the correlation between the search area and the corresponding area in the second frame; searching for a position corresponding to the block in the set search area; Detecting the vector.
【0037】さらに好ましくは、探索領域を第2のフレ
ーム中に設定するステップは、クラスタとクラスタの対
応領域との間に相関性がないと判断した場合の探索領域
を、相関性があると判断した場合の探索領域よりも大き
く設定する。More preferably, the step of setting the search area in the second frame includes the step of determining that the search area when there is no correlation between the cluster and the corresponding area of the cluster has the correlation. Is set to be larger than the search area in the case where the search is performed.
【0038】クラスタに相関性があると判断されたにも
関わらず、クラスタを構成するブロックに相関性がない
と判断された場合には、クラスタ階層で大局的な動きベ
クトルが求められていない。このため、探索領域を大き
目に設定することにより、精度良く動きベクトルを求め
ることができる。When it is determined that the clusters have correlation but the blocks that constitute the cluster have no correlation, a global motion vector has not been obtained in the cluster hierarchy. Therefore, by setting the search area to be large, the motion vector can be obtained with high accuracy.
【0039】さらに好ましくは、クラスタと同位置の領
域との相関性を判断するステップは、クラスタと、第2
のフレームにおけるクラスタと同位置の領域との相関性
を判断するステップと、クラスタを構成するブロックの
各々について、ブロックと、第2のフレームにおけるブ
ロックと同位置の領域との相関性を判断するステップ
と、クラスタに対する相関性およびクラスタを構成する
ブロックに対する相関性に基づいて、クラスタと、第2
のフレームにおける対応領域との相関性を判断するステ
ップとを含む。More preferably, the step of judging the correlation between the cluster and the area located at the same position includes the step of:
Determining the correlation between the cluster and the region at the same position in the frame, and determining, for each of the blocks constituting the cluster, the correlation between the block and the region at the same position as the block in the second frame. Based on the correlation with the cluster and the correlation with the blocks making up the cluster,
And determining the correlation with the corresponding area in the frame of (a).
【0040】クラスタに相関性があるか否かを判断する
際に、クラスタを構成するブロックについても相関性が
あるか否かも合わせて判断する。このため、クラスタの
相関性の信頼性が向上する。When determining whether or not there is a correlation between clusters, it is also determined whether or not the blocks constituting the cluster have a correlation. Therefore, the reliability of the correlation between the clusters is improved.
【0041】[0041]
【発明の実施の形態】図1を参照して、本発明の実施の
形態に係る動きベクトル探索装置は、符号化対象フレー
ムを受け、動きベクトル探索の検出対象領域に分割する
検出対象画像分割部1と、符号化対象フレームと比べ時
間的に1つ前のフレームである予測参照フレームを受
け、動きベクトルの探索領域を設定するとともに、探索
領域内から上記検出対象領域と同じサイズの領域を切り
出す予測参照画像分割部12と、検出対象画像分割部1
および予測参照画像分割部12に接続され、切り出され
た領域間の誤差(たとえば、各画素の差分の絶対値の合
計)を算出する誤差算出部3と、誤差の最小値および検
出対象領域の動きベクトルを記憶する誤差記憶部5と、
誤差算出部3および誤差記憶部5に接続され、誤差を評
価し、誤差の最小値および誤差が最大となるときの探索
領域内での位置を求める誤差評価部4とを含む。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Referring to FIG. 1, a motion vector search device according to an embodiment of the present invention receives a frame to be coded and divides the frame into a detection target region for motion vector search. 1 and a prediction reference frame that is one frame earlier than the encoding target frame in time, set a motion vector search area, and cut out an area of the same size as the detection target area from the search area. Prediction reference image division unit 12 and detection target image division unit 1
And an error calculation unit 3 connected to the prediction reference image division unit 12 and calculating an error between the cut-out regions (for example, a sum of absolute values of differences between pixels); a minimum value of the error and a motion of the detection target region. An error storage unit 5 for storing a vector,
An error evaluation unit 4 is connected to the error calculation unit 3 and the error storage unit 5 and evaluates the error, and obtains a minimum value of the error and a position in the search area when the error is maximum.
【0042】動きベクトル探索装置は、さらに、誤差算
出部3に接続され、クラスタの階層で探索をする際、探
索をスキップするか否かを判定するクラスタ階層スキッ
プ判定部6と、誤差算出部3に接続され、マクロブロッ
クの階層で探索をする際、探索をスキップするか否かを
判定するマクロブロック階層スキップ判定部8と、クラ
スタ階層スキップ判定部6およびマクロブロック階層ス
キップ判定部8に接続され、クラスタ階層スキップ判定
部6およびマクロブロック階層スキップ判定部8の出力
に基づいて、動きベクトルの探索領域を決定する探索領
域決定部7と、探索領域を定めるための初期設定値を記
憶する初期設定値レジスタ9と、初期設定値レジスタ9
に記憶された初期設定値よりも大きな探索領域を設定す
るための拡大設定値を記憶する拡大設定値レジスタ10
と、探索領域決定部7、初期設定値レジスタ9および拡
大設定値レジスタ10に接続され、探索領域決定部7の
出力に従い、初期設定値レジスタ9または拡大設定値レ
ジスタ10のいずれか一方の値を選択し、予測参照画像
分割部12に供給する選択器11とを含む。The motion vector search device is further connected to the error calculation unit 3 and, when searching in the cluster hierarchy, determines whether or not to skip the search. Are connected to a macroblock layer skip determination unit 8, a cluster layer skip determination unit 6, and a macroblock layer skip determination unit 8 that determine whether to skip the search when searching in the macroblock layer. A search area determining section 7 for determining a search area for a motion vector based on the outputs of the cluster layer skip determining section 6 and the macroblock layer skip determining section 8, and an initial setting for storing an initial setting value for defining the search area Value register 9 and initial setting value register 9
Set value register 10 for storing an enlarged set value for setting a search area larger than the initial set value stored in
Is connected to the search area determination unit 7, the initial setting value register 9, and the enlargement setting value register 10, and according to the output of the search area determination unit 7, changes the value of one of the initial setting value register 9 and the enlargement setting value register 10. A selector 11 for selecting and supplying the selected reference image to the prediction reference image dividing unit 12.
【0043】図2および図3を参照して、動きベクトル
探索処理について説明する。検出対象画像分割部1は、
符号化対象フレームをクラスタに分割し、図4に示す縮
小対象クラスタ203を作成する(S1)。縮小対象ク
ラスタ203の作成方法は、従来と同様であるため、そ
の詳細な説明はここでは繰返さない。The motion vector search processing will be described with reference to FIGS. The detection target image dividing unit 1
The encoding target frame is divided into clusters, and a reduction target cluster 203 shown in FIG. 4 is created (S1). Since the method of creating reduction target cluster 203 is the same as the conventional method, detailed description thereof will not be repeated here.
【0044】予測参照画像分割部12は、縮小した参照
予測フレームから、縮小対象クラスタ203と同位置の
領域を抽出する。誤差算出部3は、縮小対象クラスタ2
03と、縮小対象クラスタ203と同位置の参照予測フ
レームの領域との間で重なり合う画素の差分の絶対値の
合計(以下「誤差評価値」という。)SADCLを求める
(S2)。The prediction reference image dividing unit 12 extracts a region at the same position as the cluster 203 to be reduced from the reduced reference prediction frame. The error calculation unit 3 calculates the reduction target cluster 2
The sum of the absolute values of the differences between the pixels overlapping between the target pixel 03 and the region of the reference prediction frame at the same position as the reduction target cluster 203 (hereinafter referred to as “error evaluation value”) SAD CL is obtained (S2).
【0045】図5を参照して、縮小対象クラスタ203
が4つの縮小されたマクロブロックより構成され、マク
ロブロックの誤差情報をそれぞれSADCL1、SA
DCL2、SADCL3およびSADCL4とする。このとき、
以下の式(1)に示すような関係が成り立つ。Referring to FIG. 5, reduction target cluster 203
Is composed of four reduced macroblocks, and the error information of the macroblocks is represented by SAD CL1 and SA, respectively.
Let D CL2 , SAD CL3 and SAD CL4 . At this time,
The relationship shown in the following equation (1) is established.
【0046】 SADCL=SADCL1+SADCL2+SADCL3+SADCL4…(1) クラスタ階層スキップ判定部6は、以下の式(2)〜式
(6)の判定条件がすべて成り立つか否かを調べる(S
3)。SAD CL = SAD CL1 + SAD CL2 + SAD CL3 + SAD CL4 (1) The cluster hierarchy skip determination unit 6 checks whether or not all the determination conditions of the following equations (2) to (6) are satisfied (S
3).
【0047】 SADCL<ThSADCL …(2) SADCL1<ThSADCLq …(3) SADCL2<ThSADCLq …(4) SADCL3<ThSADCLq …(5) SADCL4<ThSADCLq …(6) ここで、ThSADCLおよびThSADCLqはThSA
DCL>ThSADCLqなる関係を満たす所定のしきい値
である。SAD CL <ThSAD CL (2) SAD CL1 <ThSAD CLq (3) SAD CL2 <ThSAD CLq (4) SAD CL3 <ThSAD CLq (5) SAD CL4 <ThSAD CLq (6) , ThSAD CL and ThSAD CLq are ThSA
Satisfy D CL> ThSAD CLq the relationship is a predetermined threshold value.
【0048】式(2)〜式(6)のすべての判定条件を
満たしている場合には、そのクラスタについては、動き
が少ないため、動きベクトルを探索する必要がないと判
断し(S3でYES)、S9へ移行する。When all of the determination conditions of the equations (2) to (6) are satisfied, it is determined that it is not necessary to search for a motion vector for that cluster because the cluster has little motion (YES in S3). ), And proceeds to S9.
【0049】図6を参照して、式(2)〜式(6)の判
定条件のうち1つでも満足しないものがあれば、そのク
ラスタについて動きベクトルを算出するため(S3でN
O)、予測参照画像分割部12は、縮小予測参照フレー
ム204内に、縮小対象クラスタ203の探索領域を設
定する(S4)。探索領域205は、縮小対象クラスタ
203の上下左右にそれぞれ8画素を加えた領域であ
る。8画素という値は予め初期設定値レジスタ9に記憶
されている。Referring to FIG. 6, if at least one of the judgment conditions of equations (2) to (6) does not satisfy the condition, a motion vector is calculated for that cluster (N in S3).
O), the prediction reference image division unit 12 sets a search area of the reduction target cluster 203 in the reduced prediction reference frame 204 (S4). The search area 205 is an area obtained by adding eight pixels to each of the upper, lower, left, and right sides of the reduction target cluster 203. The value of 8 pixels is stored in the initial setting value register 9 in advance.
【0050】予測参照画像分割部12は、探索領域20
5内で探索点を更新し(S5)、探索領域205の中に
部分領域クラスタ206を設定する。誤差算出部3は、
縮小対象クラスタ203と部分領域クラスタ206との
間の誤差評価値を算出する(S6)。それと同時に、誤
差評価部4は、算出した誤差評価値と、誤差記憶部5に
記憶されている、これまでに算出した探索領域205内
での誤差評価値の最小値とを比較し、誤差記憶部5に誤
差評価値の最小値と、誤差評価値が最小となる部分領域
クラスタ206の位置とを記憶する。The predictive reference image dividing unit 12 searches the search area 20
5, the search point is updated (S5), and a partial area cluster 206 is set in the search area 205. The error calculation unit 3
An error evaluation value between the reduction target cluster 203 and the partial area cluster 206 is calculated (S6). At the same time, the error evaluator 4 compares the calculated error evaluation value with the previously calculated minimum value of the error evaluation value in the search area 205 stored in the error storage 5 and stores the error storage value. The unit 5 stores the minimum value of the error evaluation value and the position of the partial area cluster 206 where the error evaluation value is the minimum.
【0051】探索領域205内のすべての探索点につい
て誤差評価値の算出が行なわれたか否かが調べられる
(S7)。未処理の探索点が存在すれば(S7でYE
S)、S5以降の処理が繰返される。It is checked whether or not an error evaluation value has been calculated for all search points in the search area 205 (S7). If an unprocessed search point exists (YE in S7)
S), the processing after S5 is repeated.
【0052】探索領域205内のすべての探索点につい
て誤差評価値が求められていれば(S7でNO)、図6
を参照して、誤差評価部4は、縮小対象クラスタ203
の中心から誤差評価値が最小となる部分領域クラスタ2
06の中心へ向かう動きベクトル207を求め、誤差記
憶部5に記憶する(S8)。If error evaluation values have been obtained for all search points in the search area 205 (NO in S7), FIG.
, The error evaluation unit 4 determines that the cluster to be reduced 203
Region cluster 2 with the smallest error evaluation value from the center of
A motion vector 207 heading to the center of 06 is obtained and stored in the error storage unit 5 (S8).
【0053】検出対象となっているすべての縮小対象ク
ラスタ203について処理が終了しているか否かが判断
される(S9)。未処理の縮小対象クラスタ203が存
在すれば(S9でYES)、縮小対象クラスタ203を
更新した後(S10)、S2以降の処理が繰返される。It is determined whether the processing has been completed for all the reduction target clusters 203 to be detected (S9). If there is an unprocessed reduction target cluster 203 (YES in S9), after updating the reduction target cluster 203 (S10), the processing from S2 onward is repeated.
【0054】すべての縮小対象クラスタ203に対して
処理が終了していれば(S9でNO)、縮小対象クラス
タ203に対応するクラスタに含まれる複数のマクロブ
ロックの各々について、初期ベクトルが設定される(S
11)。S3の処理でクラスタに動きが少ないと判断さ
れた場合には、マクロブロックの初期ベクトルとして
(0,0)が与えられる。それ以外の場合には、S8の
処理で求められた縮小対象クラスタ203に対する動き
ベクトル207をX方向にm倍、Y方向にn倍したもの
がマクロブロックの初期ベクトルとして設定される。こ
こで、mおよびnは、縮小対象クラスタ203を作成す
る際に用いられた間引き間隔である。If the processing has been completed for all the clusters 203 to be reduced (NO in S9), an initial vector is set for each of a plurality of macroblocks included in the cluster corresponding to the cluster 203 to be reduced. (S
11). If it is determined in step S3 that the cluster has little motion, (0, 0) is given as the initial vector of the macroblock. In other cases, the motion vector 207 for the cluster 203 to be reduced obtained in the processing of S8, which is m times in the X direction and n times in the Y direction, is set as the initial vector of the macroblock. Here, m and n are thinning intervals used when creating the reduction target cluster 203.
【0055】図7を参照して、誤差算出部3は、符号化
対象フレームより切り出したマクロブロック202と、
予測参照フレーム208内でマクロブロック202を初
期ベクトルだけ移動させた位置に存在する部分領域マク
ロブロック210との間の誤差評価値SADMBを算出す
る(S12)。Referring to FIG. 7, error calculating section 3 includes macro block 202 cut out from the encoding target frame,
An error evaluation value SAD MB between the macroblock 202 and the partial area macroblock 210 existing at the position where the macroblock 202 is moved by the initial vector in the prediction reference frame 208 is calculated (S12).
【0056】マクロブロック階層スキップ判定部8は、
誤差評価値SADMBを受け、以下の式(7)が成り立つ
か否かを調べる(S13)。The macroblock hierarchy skip determination unit 8
Upon receiving the error evaluation value SAD MB , it is checked whether or not the following equation (7) holds (S13).
【0057】 SADMB<ThSADMB …(7) ここで、ThSADMBは所定のしきい値である。SAD MB <ThSAD MB (7) Here, ThSAD MB is a predetermined threshold value.
【0058】式(7)を満たす場合には(S13でYE
S)、S11で設定された初期ベクトルがマクロブロッ
クの動きベクトルとされ(S14)、S20に進む。When the expression (7) is satisfied, (YE in S13)
S), the initial vector set in S11 is set as the motion vector of the macroblock (S14), and the process proceeds to S20.
【0059】式(7)を満たさない場合には(S13で
NO)、マクロブロックに対する動きベクトルを算出す
るため、予測参照フレーム208内に、マクロブロック
202の探索領域211を設定する(S15)。探索領
域の大きさは、クラスタ階層での動きベクトル探索がス
キップされたか否かによって異なる。すなわち、クラス
タ階層で動きベクトルの探索がスキップされた場合に
は、動きベクトルの探索が十分でないと考えられる。こ
のため、クラスタ階層で動きベクトルの探索が行なわれ
た場合に比べ、大きい探索領域が設定される。探索領域
決定部7は、以下のように選択器11の出力を制御す
る。If the equation (7) is not satisfied (NO in S13), a search area 211 of the macroblock 202 is set in the prediction reference frame 208 to calculate a motion vector for the macroblock (S15). The size of the search area differs depending on whether or not the motion vector search in the cluster hierarchy has been skipped. That is, when the search for the motion vector is skipped in the cluster hierarchy, it is considered that the search for the motion vector is not sufficient. Therefore, a larger search area is set as compared with the case where a search for a motion vector is performed in the cluster hierarchy. The search area determination unit 7 controls the output of the selector 11 as described below.
【0060】(1)クラスタ階層で動きベクトルの探索
がスキップされた場合 クラスタ階層で大局的な動きベクトルが求められてい
る。このため、マクロブロックの階層では通常の大きさ
の探索領域を設定して動きベクトルの探索を行なえばよ
い。したがって探索範囲決定部7は、初期設定値レジス
タ9に保持された値が選択器11から出力されるよう
に、選択器11を制御する。(1) When Search for a Motion Vector is Skipped in the Cluster Layer A global motion vector is obtained in the cluster layer. Therefore, in the macroblock hierarchy, a search area having a normal size may be set to search for a motion vector. Therefore, the search range determining unit 7 controls the selector 11 so that the value held in the initial setting value register 9 is output from the selector 11.
【0061】(2)クラスタ階層で動きベクトルの探索
がスキップされなかった場合 クラスタ階層で大局的な動きベクトルが求められていな
い。このため、通常の大きさの探索領域よりも大きな探
索領域を設定して動きベクトルの探索を行なう必要があ
る。したがって探索範囲決定部7は、拡大設定値レジス
タ10に保持された値が選択器11から出力されるよう
に、選択器11を制御する。(2) When the search for a motion vector is not skipped in the cluster layer A global motion vector is not found in the cluster layer. Therefore, it is necessary to set a search area larger than a search area of a normal size and search for a motion vector. Therefore, the search range determination unit 7 controls the selector 11 so that the value held in the enlargement setting value register 10 is output from the selector 11.
【0062】一例として、クラスタ階層で動きベクトル
の探索がスキップされた場合には、部分領域マクロブロ
ック210の上下左右にそれぞれ6画素を加えた領域が
探索領域211とされる。また、クラスタ階層で動きベ
クトルの探索がスキップされなかった場合には、部分領
域マクロブロック210の上下左右にそれぞれ4画素加
えた領域が探索領域211とされる。As an example, when the search for the motion vector is skipped in the cluster hierarchy, a region obtained by adding six pixels to each of the upper, lower, left, and right sides of the partial region macroblock 210 is set as the search region 211. If the search for the motion vector is not skipped in the cluster hierarchy, an area obtained by adding four pixels to the upper, lower, left, and right sides of the partial area macroblock 210 is set as the search area 211.
【0063】探索領域211が設定された後、探索領域
211内で探索点が更新され、探索領域211の中から
部分領域マクロブロック210が設定される。誤差算出
部3は、マクロブロック202と部分領域マクロブロッ
ク210との間の誤差評価値を算出する(S17)。そ
れと同時に、誤差評価部4は、算出した誤差評価値と、
誤差記憶部5に記憶されている、これまでに算出した探
索領域211内での誤差評価値の最小値とを比較し、誤
差記憶部5に誤差評価値の最小値と、誤差評価値が最小
となる部分領域マクロブロック210の位置とを記憶す
る。After the search area 211 is set, the search points are updated in the search area 211, and a partial area macro block 210 is set from the search area 211. The error calculator 3 calculates an error evaluation value between the macroblock 202 and the partial area macroblock 210 (S17). At the same time, the error evaluation unit 4 calculates the calculated error evaluation value,
The minimum value of the error evaluation value within the search area 211 calculated so far stored in the error storage unit 5 is compared, and the minimum value of the error evaluation value and the minimum value of the error evaluation value are stored in the error storage unit 5. And the position of the partial area macroblock 210 as follows.
【0064】探索領域211内のすべての探索点につい
て誤差評価値の算出が行なわれたか否かが調べられる
(S18)。未処理の探索点が存在すれば(S18でY
ES)、S16以降の処理が繰返される。It is checked whether or not the error evaluation value has been calculated for all the search points in the search area 211 (S18). If an unprocessed search point exists (Y in S18)
ES), and the processes in and after S16 are repeated.
【0065】探索領域211内のすべての探索点につい
て誤差評価値が求められていれば(S18でYES)、
誤差評価部4は、誤差記憶部5に記憶されたデータに基
づき、マクロブロック202の中心から誤差評価値が最
小となる部分領域マクロブロック210の中心へ向かう
動きベクトルを求め、誤差記憶部5に記憶する(S1
9)。If error evaluation values have been obtained for all search points in search area 211 (YES in S18),
The error evaluator 4 obtains a motion vector from the center of the macroblock 202 toward the center of the partial area macroblock 210 having the minimum error evaluation value based on the data stored in the error storage 5, and stores the motion vector in the error storage 5. Remember (S1
9).
【0066】S14またはS19の処理の後、検出対象
となっているすべてのマクロブロック202について動
きベクトルの探索処理が終了しているか否かが判断され
る(S20)。未処理のマクロブロック202が存在す
れば(S20でYES)、マクロブロック202を更新
した後(S21)、S11以降の処理が繰返される。After the processing of S14 or S19, it is determined whether or not the motion vector search processing has been completed for all the macroblocks 202 to be detected (S20). If there is an unprocessed macroblock 202 (YES in S20), after updating the macroblock 202 (S21), the processes in and after S11 are repeated.
【0067】すべてのマクロブロック202に対して処
理が終了していれば(S20でNO)、一連の処理を終
了する。If the processing has been completed for all the macroblocks 202 (NO in S20), a series of processing ends.
【0068】以上説明したように本実施の形態によれ
ば、クラスタ階層およびマクロブロック階層で動きベク
トルを探索する際に、初期位置での誤差評価値が大きい
場合のみ動きベクトル探索処理を行なうようにした。こ
れにより、動きベクトルの精度を低下させることなく、
動きベクトル探索に必要な演算量および処理時間を軽減
することができる。また、それに伴ない、動きベクトル
探索装置の消費電力を低下させることができる。As described above, according to the present embodiment, when searching for a motion vector in the cluster layer and the macroblock layer, the motion vector search processing is performed only when the error evaluation value at the initial position is large. did. As a result, without reducing the accuracy of the motion vector,
It is possible to reduce the amount of calculation and processing time required for a motion vector search. Accordingly, the power consumption of the motion vector search device can be reduced.
【0069】今回開示された実施の形態はすべての点で
例示であって制限的なものではないと考えられるべきで
ある。本発明の範囲は上記した説明ではなくて特許請求
の範囲によって示され、特許請求の範囲と均等の意味お
よび範囲内でのすべての変更が含まれることが意図され
る。The embodiments disclosed this time are to be considered in all respects as illustrative and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
【0070】[0070]
【発明の効果】動きベクトルの精度を低下させることな
く、動きベクトル探索に必要な演算量および処理時間を
軽減することができる。また、それに伴ない、動きベク
トル探索装置の消費電力を低下させることができる。According to the present invention, the amount of calculation and the processing time required for searching for a motion vector can be reduced without lowering the accuracy of the motion vector. Accordingly, the power consumption of the motion vector search device can be reduced.
【図面の簡単な説明】[Brief description of the drawings]
【図1】 本発明の実施の形態に係る動きベクトル探索
装置の構成を示すブロック図である。FIG. 1 is a block diagram showing a configuration of a motion vector search device according to an embodiment of the present invention.
【図2】 動きベクトル探索処理のフローチャートであ
る。FIG. 2 is a flowchart of a motion vector search process.
【図3】 動きベクトル探索処理のフローチャートであ
る。FIG. 3 is a flowchart of a motion vector search process.
【図4】 縮小対象クラスタを説明するための図であ
る。FIG. 4 is a diagram for explaining a cluster to be reduced;
【図5】 クラスタの誤差評価値を説明するための図で
ある。FIG. 5 is a diagram for explaining an error evaluation value of a cluster.
【図6】 クラスタ階層における動きベクトル探索を説
明するための図である。FIG. 6 is a diagram for explaining a motion vector search in a cluster hierarchy.
【図7】 マクロブロック階層における動きベクトル探
索を説明するための図である。FIG. 7 is a diagram for explaining a motion vector search in a macroblock hierarchy.
【図8】 符号化対象フレームを構成するマクロブロッ
クを説明するための図である。FIG. 8 is a diagram for explaining macroblocks constituting a frame to be encoded.
【図9】 全探索法による動きベクトル探索を説明する
ための図である。FIG. 9 is a diagram for explaining a motion vector search by a full search method.
【図10】 従来の動きベクトル探索装置の構成を示す
ブロック図である。FIG. 10 is a block diagram showing a configuration of a conventional motion vector search device.
【図11】 クラスタの構成を示す図である。FIG. 11 is a diagram showing a configuration of a cluster.
【図12】 マクロブロックマクロクラスタリング法に
おける、クラスタの動きベクトルとマクロブロックの初
期ベクトルとの関係を説明するための図である。FIG. 12 is a diagram for explaining a relationship between a motion vector of a cluster and an initial vector of a macroblock in a macroblock macroclustering method.
1 検出対象画像分割部、2,12 予測参照画像分割
部、3 誤差算出部、4 誤差評価部、5 誤差記憶
部、6 クラスタ階層スキップ判定部、7 探索領域決
定部、8 マクロブロック階層スキップ判定部、9 初
期設定値レジスタ、10 拡大設定値レジスタ、11
選択器、100,200 符号化対象フレーム、10
1,202 マクロブロック、102,208 予測参
照フレーム、103,205,211 探索領域、10
4 部分領域、105,207,209 ベクトル、2
01 クラスタ、203 縮小対象クラスタ、204
縮小予測参照フレーム、206 部分領域クラスタ、2
10 部分領域マクロブロック。DESCRIPTION OF REFERENCE NUMERALS 1 detection target image division unit, 2, 12 prediction reference image division unit, 3 error calculation unit, 4 error evaluation unit, 5 error storage unit, 6 cluster layer skip determination unit, 7 search area determination unit, 8 macro block layer skip determination Part, 9 Initial setting value register, 10 Enlarged setting value register, 11
Selector, 100, 200 encoding target frame, 10
1,202 macroblock, 102,208 prediction reference frame, 103,205,211 search area, 10
4 partial areas, 105, 207, 209 vectors, 2
01 cluster, 203 cluster to be reduced, 204
Reduced prediction reference frame, 206 partial area cluster, 2
10 Partial area macroblock.
フロントページの続き Fターム(参考) 5C059 KK19 MA00 MA05 MA23 NN03 NN09 NN24 NN28 NN30 NN34 PP04 SS07 UA02 5J064 AA03 BA01 BB03 BC04 BC25 BC29 BD02 Continued on front page F term (reference) 5C059 KK19 MA00 MA05 MA23 NN03 NN09 NN24 NN28 NN30 NN34 PP04 SS07 UA02 5J064 AA03 BA01 BB03 BC04 BC25 BC29 BD02
Claims (10)
含まれるブロックに対応する位置を前記第1のフレーム
と所定の関係にある第2のフレームより求め、前記ブロ
ックの動きベクトルを探索する動きベクトル探索装置で
あって、 複数のブロックから構成される前記第1のフレームにお
いて、前記ブロックを1つ以上含むクラスタを生成する
ためのクラスタ生成手段と、 前記クラスタ生成手段に接続され、前記クラスタと、前
記第2のフレームにおける前記クラスタと同位置の領域
との相関性を判断するためのクラスタ相関性判断手段
と、 前記クラスタ相関性判断手段に接続され、前記第2のフ
レームにおける対応領域との間に相関性がないと判断さ
れた前記クラスタについてのみ、前記クラスタに対応す
る位置を前記第2のフレームより探索し、前記クラスタ
の動きベクトルを検出するためのクラスタ動きベクトル
検出手段と、 前記クラスタ相関性判断手段および前記クラスタ動きベ
クトル検出手段に接続され、前記クラスタ相関性判断手
段の出力および前記クラスタの動きベクトルに基づき、
前記第2のフレームにおける、前記クラスタに含まれる
ブロックに対応する位置を求め、前記ブロックの動きベ
クトルを検出するための動きベクトル検出手段とを含
む、動きベクトル探索装置。1. A position corresponding to a block included in a first frame is obtained from a second frame having a predetermined relationship with the first frame using motion compensation prediction, and a motion vector of the block is searched. A motion vector search device, comprising: a cluster generating unit for generating a cluster including one or more blocks in the first frame including a plurality of blocks; A cluster correlation determining unit for determining a correlation between the cluster and the region at the same position in the second frame; and a corresponding region in the second frame connected to the cluster correlation determining unit. Only for the clusters determined to be uncorrelated, the position corresponding to the cluster is A cluster motion vector detecting means for searching and detecting a motion vector of the cluster; connected to the cluster correlation determining means and the cluster motion vector detecting means; an output of the cluster correlation determining means and a motion of the cluster; Based on the vector,
A motion vector search device comprising: a position corresponding to a block included in the cluster in the second frame; and a motion vector detecting means for detecting a motion vector of the block.
クトル検出手段に接続され、前記クラスタ相関性判断手
段の出力および前記クラスタの動きベクトルに基づい
て、前記クラスタに含まれるブロックの動きベクトルの
初期値を表わす初期ベクトルを設定するための初期ベク
トル設定手段と、 前記初期ベクトル設定手段に接続され、前記ブロック
と、前記ブロックを前記初期ベクトルに従い移動させた
後の前記第2のフレームにおける領域との相関性を判断
するためのブロック相関性判断手段と、 前記ブロック相関性判断手段に接続され、前記第2のフ
レームにおける対応領域との間に相関性がないと判断さ
れた前記ブロックについてのみ、前記ブロックに対応す
る位置を前記第2のフレームより探索し、前記ブロック
の動きベクトルを検出するためのブロック動きベクトル
検出手段とを含む、請求項1に記載の動きベクトル探索
装置。2. The motion vector detecting means is connected to the cluster correlation judging means and the cluster motion vector detecting means, and based on an output of the cluster correlation judging means and a motion vector of the cluster, Initial vector setting means for setting an initial vector representing an initial value of a motion vector of the included block; connected to the initial vector setting means, and the block and the block after moving the block according to the initial vector. A block correlation determining unit for determining a correlation with a region in the second frame; connected to the block correlation determining unit, and determining that there is no correlation with a corresponding region in the second frame Only for the block that has been set, the position corresponding to the block is set to the second frame. The motion vector search device according to claim 1, further comprising: a block motion vector detecting unit configured to perform a search and detect a motion vector of the block.
判断手段に接続され、前記第2のフレームにおける対応
領域との間に相関性がないと判断された前記ブロックに
ついてのみ、前記ブロックが含まれるクラスタについて
の前記クラスタ相関性判断手段の出力に基づき、探索領
域を前記第2のフレーム中に設定する探索領域設定手段
と、 前記探索領域設定手段に接続され、設定された前記探索
領域内で前記ブロックに対応する位置を探索し、前記ブ
ロックの動きベクトルを検出するための手段とを含む、
請求項2に記載の動きベクトル探索装置。3. The block motion vector detecting means is connected to the cluster correlation determining means and the block correlation determining means, and it is determined that there is no correlation with a corresponding region in the second frame. Only for the block, a search area setting means for setting a search area in the second frame based on an output of the cluster correlation determining means for a cluster including the block, and a search area setting means connected to the search area setting means. Means for searching for a position corresponding to the block in the set search area, and detecting a motion vector of the block.
The motion vector search device according to claim 2.
と前記クラスタの対応領域との間に相関性がないと判断
した場合の探索領域を、前記相関性があると判断した場
合の探索領域よりも大きく設定する、請求項3に記載の
動きベクトル探索装置。4. The search area setting means determines a search area when it is determined that there is no correlation between the cluster and a corresponding area of the cluster from a search area when it is determined that there is correlation. The motion vector search device according to claim 3, wherein is set to be large.
スタと同位置の領域との相関性を判断するための第1の
相関性判断手段と、 前記クラスタを構成するブロックの各々について、前記
ブロックと、前記第2のフレームにおける前記ブロック
と同位置の領域との相関性を判断するための第2の相関
性判断手段と、 前記第1および第2の相関性判断手段に接続され、前記
第1の相関性判断手段の出力および前記第2の相関性判
断手段の出力に基づいて、前記クラスタと、前記第2の
フレームにおける対応領域との相関性を判断するための
手段とを含む、請求項1〜4のいずれかに記載の動きベ
クトル探索装置。5. The cluster correlation determining unit includes: a first correlation determining unit configured to determine a correlation between the cluster and an area at the same position as the cluster in the second frame; For each of the blocks constituting the second frame, a second correlation determining means for determining the correlation between the block and an area at the same position as the block in the second frame; and the first and second correlation determination means Connected to a correlation determining means, and based on an output of the first correlation determining means and an output of the second correlation determining means, determine a correlation between the cluster and a corresponding region in the second frame. The motion vector search device according to any one of claims 1 to 4, further comprising means for determining.
含まれるブロックに対応する位置を前記第1のフレーム
と所定の関係にある第2のフレームより求め、前記ブロ
ックの動きベクトルを探索する動きベクトル探索方法で
あって、 複数のブロックから構成される前記第1のフレームにお
いて、前記ブロックを1つ以上含むクラスタを生成する
ステップと、 前記クラスタと、前記第2のフレームにおける前記クラ
スタと同位置の領域との相関性を判断するステップと、 前記第2のフレームにおける対応領域との間に相関性が
ないと判断された前記クラスタについてのみ、前記クラ
スタに対応する位置を前記第2のフレームより探索し、
前記クラスタの動きベクトルを検出するステップと、 前記第2のフレームにおける対応領域との間に相関性が
ないと判断された前記クラスタに含まれるブロックにつ
いて、前記第2のフレームにおける対応する位置を求
め、前記ブロックの動きベクトルを検出するステップと
を含む、動きベクトル探索方法。6. A position corresponding to a block included in a first frame is obtained from a second frame having a predetermined relationship with the first frame using motion compensation prediction, and a motion vector of the block is searched. A motion vector search method, wherein in the first frame including a plurality of blocks, a cluster including one or more blocks is generated; and the cluster is the same as the cluster in the second frame. Determining the correlation between the position and the region; and determining the position corresponding to the cluster in the second frame only for the cluster determined to have no correlation with the corresponding region in the second frame. Explore more,
Detecting a motion vector of the cluster; and determining a corresponding position in the second frame for a block included in the cluster determined to have no correlation with a corresponding region in the second frame. Detecting a motion vector of the block.
前記ステップは、 前記クラスタと前記第2のフレームにおける前記クラス
タの対応領域との相関性および前記クラスタの動きベク
トルに基づいて、前記クラスタに含まれるブロックの動
きベクトルの初期値を表わす初期ベクトルを設定するス
テップと、 前記ブロックと、前記ブロックを前記初期ベクトルに従
い移動させた後の前記第2のフレームにおける領域との
相関性を判断するステップと、 前記第2のフレームにおける対応領域との間に相関性が
ないと判断された前記ブロックについてのみ、前記ブロ
ックに対応する位置を前記第2のフレームより探索し、
前記ブロックの動きベクトルを抽出するステップとを含
む、請求項6に記載の動きベクトル探索方法。7. The step of detecting a motion vector of the block is included in the cluster based on a correlation between the cluster and a corresponding region of the cluster in the second frame and a motion vector of the cluster. Setting an initial vector representing an initial value of a motion vector of the block; determining a correlation between the block and an area in the second frame after the block is moved according to the initial vector; Only for the block determined to have no correlation with the corresponding region in the second frame, a position corresponding to the block is searched from the second frame,
Extracting the motion vector of the block.
前記ステップは、 前記第2のフレームにおける対応領域との間に相関性が
ないと判断された前記ブロックについてのみ、前記ブロ
ックが含まれるクラスタについての、当該クラスタと前
記第2のフレームにおける対応領域との間の相関性に基
づき、探索領域を前記第2のフレーム中に設定するステ
ップと、 設定された探索領域内で前記ブロックに対応する位置を
探索し、前記ブロックの動きベクトルを検出するステッ
プとを含む、請求項7に記載の動きベクトル探索方法。8. The step of extracting a motion vector of the block, the step of extracting a motion vector of the cluster including the block only for the block determined to have no correlation with the corresponding region in the second frame. Setting a search area in the second frame based on the correlation between the cluster and the corresponding area in the second frame; and determining a position corresponding to the block in the set search area. Searching and detecting a motion vector of the block.
する前記ステップは、 前記クラスタと前記クラスタの対応領域との間に相関性
がないと判断した場合の探索領域を、前記相関性がある
と判断した場合の探索領域よりも大きく設定する、請求
項8に記載の動きベクトル探索方法。9. The step of setting a search area in the second frame includes: determining a search area when it is determined that there is no correlation between the cluster and a corresponding area of the cluster; 9. The motion vector search method according to claim 8, wherein the search area is set to be larger than a search area when it is determined that there is a motion vector.
性を判断する前記ステップは、 前記クラスタと、前記第2のフレームにおける前記クラ
スタと同位置の領域との相関性を判断するステップと、 前記クラスタを構成するブロックの各々について、前記
ブロックと、前記第2のフレームにおける前記ブロック
と同位置の領域との相関性を判断するステップと、 前記クラスタに対する相関性および前記クラスタを構成
する前記ブロックに対する相関性に基づいて、前記クラ
スタと、前記第2のフレームにおける対応領域との相関
性を判断するステップとを含む、請求項6〜9のいずれ
かに記載の動きベクトル探索方法。10. The step of determining the correlation between the cluster and a region located at the same position, the step of determining the correlation between the cluster and the region located at the same position as the cluster in the second frame. Determining, for each of the blocks constituting the cluster, a correlation between the block and an area at the same position as the block in the second frame; and a correlation for the cluster and the block constituting the cluster. 10. The motion vector search method according to claim 6, further comprising: determining a correlation between the cluster and a corresponding region in the second frame based on the correlation with respect to.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000114640A JP2001298745A (en) | 2000-04-17 | 2000-04-17 | Device and method for retrieving motion vector |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000114640A JP2001298745A (en) | 2000-04-17 | 2000-04-17 | Device and method for retrieving motion vector |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001298745A true JP2001298745A (en) | 2001-10-26 |
Family
ID=18626416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000114640A Withdrawn JP2001298745A (en) | 2000-04-17 | 2000-04-17 | Device and method for retrieving motion vector |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001298745A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7728909B2 (en) | 2005-06-13 | 2010-06-01 | Seiko Epson Corporation | Method and system for estimating motion and compensating for perceived motion blur in digital video |
JP2010288110A (en) * | 2009-06-12 | 2010-12-24 | Sony Corp | Image processing apparatus and method |
JP2012019465A (en) * | 2010-07-09 | 2012-01-26 | Canon Inc | Image processing device and image processing method |
JP2017212639A (en) * | 2016-05-26 | 2017-11-30 | 株式会社リコー | Information processing device, conference system and information processing device control method |
-
2000
- 2000-04-17 JP JP2000114640A patent/JP2001298745A/en not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7728909B2 (en) | 2005-06-13 | 2010-06-01 | Seiko Epson Corporation | Method and system for estimating motion and compensating for perceived motion blur in digital video |
JP2010288110A (en) * | 2009-06-12 | 2010-12-24 | Sony Corp | Image processing apparatus and method |
US8542741B2 (en) | 2009-06-12 | 2013-09-24 | Sony Corporation | Image processing device and image processing method |
JP2012019465A (en) * | 2010-07-09 | 2012-01-26 | Canon Inc | Image processing device and image processing method |
JP2017212639A (en) * | 2016-05-26 | 2017-11-30 | 株式会社リコー | Information processing device, conference system and information processing device control method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100446235B1 (en) | Merging search method of motion vector using multi-candidates | |
US6549576B1 (en) | Motion vector detecting method and apparatus | |
JP4004653B2 (en) | Motion vector detection method and apparatus, and recording medium | |
US6275532B1 (en) | Video coding device and video decoding device with a motion compensated interframe prediction | |
US5594504A (en) | Predictive video coding using a motion vector updating routine | |
JP3847827B2 (en) | Motion vector detection method | |
US20040258154A1 (en) | System and method for multi-stage predictive motion estimation | |
US20060198445A1 (en) | Prediction-based directional fractional pixel motion estimation for video coding | |
JPH09179987A (en) | Method and device for detecting motion vector | |
US12015767B2 (en) | Intra-frame predictive coding method and system for 360-degree video and medium | |
CN114286093A (en) | Rapid video coding method based on deep neural network | |
JPH1169359A (en) | Contour line motion estimation method and device | |
US6823012B2 (en) | Method and system for estimating motion vector at high speed for low bit-rate coding | |
US8379712B2 (en) | Image search methods for reducing computational complexity of motion estimation | |
Alkanhal et al. | Correlation based search algorithms for motion estimation | |
JP2011010297A (en) | System and method for estimating sum of absolute differences | |
WO2000034920A1 (en) | Motion vector estimation | |
JP2001298745A (en) | Device and method for retrieving motion vector | |
WO2006050651A1 (en) | Method for performing motion estimation | |
US20100239019A1 (en) | Post processing of motion vectors using sad for low bit rate video compression | |
Li et al. | Efficient search and mode prediction algorithms for motion estimation in H. 264/AVC | |
JP2007067552A (en) | Method, apparatus and program for inter-layer prediction processing and recording medium thereof | |
CN115529459B (en) | Center point searching method, center point searching device, computer equipment and storage medium | |
JP4142600B2 (en) | Motion vector estimation method, motion vector estimation device, motion vector estimation program, and motion vector estimation program recording medium | |
JPH0818974A (en) | Encoder and motion detector for dynamic image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20070703 |