JPH08172629A - Moving vector detector - Google Patents

Moving vector detector

Info

Publication number
JPH08172629A
JPH08172629A JP31667594A JP31667594A JPH08172629A JP H08172629 A JPH08172629 A JP H08172629A JP 31667594 A JP31667594 A JP 31667594A JP 31667594 A JP31667594 A JP 31667594A JP H08172629 A JPH08172629 A JP H08172629A
Authority
JP
Japan
Prior art keywords
data
mbi
pixel
search range
calculated
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
JP31667594A
Other languages
Japanese (ja)
Inventor
Yasuaki Iwase
泰章 岩瀬
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.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP31667594A priority Critical patent/JPH08172629A/en
Publication of JPH08172629A publication Critical patent/JPH08172629A/en
Pending legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

PURPOSE: To reduce the power consumption and to decrease a waiting time for reading out data by sequentially replacing data calculated and not referenced any more with data required for an image block processed next. CONSTITUTION: A retrieval buffer 14 reads out picture element data for all retrieval range with respect to a 1st micro block MBI prior to processing of the MBI. A control circuit 18 reads out a first element of the MBI and makes arithmetic operation with a prescribed part of the picture element data within the retrieval rage of the MBI. Furthermore, a processor 15 makes arithmetic operation of a difference absolute value between the initial picture element data of the MBI and all data received by the circuit 18. Then elements of the MBI are shifted downward by one row and calculated and the elements are moved to those to the right and stored in an accumulator. Then the arithmetic operation result is obtained as a sum of all differences. The data already calculated and not referenced any more are replaced with data required by an image block processed next.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、ディジタル化した動画
像信号の符号化に関し、より詳しくは動きベクトルを効
率良く検出する動きベクトル検出装置に関するものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to coding of a digitized moving picture signal, and more particularly to a motion vector detecting device for efficiently detecting a motion vector.

【0002】[0002]

【従来の技術】ディジタル化された動画像は膨大な情報
を有する。そのため、従来より動画像信号を高効率で符
号化して圧縮する手法が取られている。その一つに、画
像信号の画像間の相関を利用して、以前または以後の画
像から現在の画像を予測する画像間予測符号化がある。
その際、最適な予測画像を求めるために用いられるのが
動きベクトルである。動きベクトルは符号化中の画素ブ
ロックデータと予測画像データとの画面上の変位である
が、原画像と参照画像の差分値の絶対値和、または差分
値の2乗和を評価値とし、探索範囲内で最も評価値の小
さいものをその画素ブロック(マクロブロック)の動き
ベクトルとする。
2. Description of the Related Art Digitized moving images have a great deal of information. Therefore, conventionally, a method has been adopted in which a moving image signal is highly efficiently encoded and compressed. One of them is inter-picture predictive coding that predicts a current picture from previous or subsequent pictures by utilizing the correlation between pictures of picture signals.
At this time, it is the motion vector that is used to obtain the optimum predicted image. The motion vector is a displacement on the screen between the pixel block data being encoded and the predicted image data, and the sum of absolute values of the difference values between the original image and the reference image or the sum of squares of the difference values is used as the evaluation value, and the search is performed. The motion vector of the pixel block (macro block) having the smallest evaluation value within the range is set.

【0003】図6は、従来技術による動きベクトルを全
探索法により求める方法である。あるマクロブロックの
全てのベクトルに対する探索範囲の画素データの間で、
ベクトル(x、y)とマクロブロックの画素データとの
所定の演算を行っている。そして、ここでの処理はその
演算を可能なベクトルの数だけ繰り返している。処理の
順序は、図6(a)に示すように左上のベクトルから評
価し、以後下方向にベクトルを変化させて順次評価(図
6(b))を行い、左下のベクトルを評価した所で最初
の列の全ての評価が終わる(図6(c))。次に、図6
(d)に示すように図6を一列右にずらしたベクトルを
評価する。以後、評価すべきベクトルを上から下、右方
向に移動を繰り返し、全てのベクトルに対して評価を行
っている。
FIG. 6 shows a method of obtaining a motion vector according to a conventional technique by a full search method. Between pixel data in the search range for all vectors of a macroblock,
A predetermined operation is performed on the vector (x, y) and the pixel data of the macro block. And the processing here repeats the calculation for the number of possible vectors. As shown in FIG. 6A, the processing order is evaluated from the upper left vector, and then the vector is changed downward and sequentially evaluated (FIG. 6B), and the lower left vector is evaluated. All the evaluations in the first column are complete (FIG. 6 (c)). Next, FIG.
As shown in (d), the vector shifted to the right by one column in FIG. 6 is evaluated. After that, the vector to be evaluated is repeatedly moved from top to bottom and rightward to evaluate all the vectors.

【0004】[0004]

【発明が解決しようとする課題】特に対策を施していな
い全探索法による動きベクトル検出では、1つのマクロ
ブロックの処理を終えて次のマクロブロックの処理に移
る時には、そのマクロブロックに対する探索範囲の画素
データを新たに読み出してくる必要がある。しかしなが
ら、一般にあるマクロブロックに対する探索範囲は、隣
合ったマクロブロックに対する探索範囲と重なっている
部分が多い。けれども、従来の方法では同じデータを複
数回にわたって外部のメモリからバスを経由して読み出
す必要があり、特に消費電力の面で無駄が多かった。ま
た、毎回データ読み出しが必要なため、このデータ読み
出し操作のために動作速度が上がらないという問題点が
あった。
In the motion vector detection by the full search method without taking any measures, when the processing of one macroblock is finished and the processing of the next macroblock is started, the search range of the macroblock is changed. It is necessary to newly read pixel data. However, the search range for a certain macroblock generally overlaps with the search ranges for adjacent macroblocks. However, in the conventional method, it is necessary to read the same data a plurality of times from the external memory via the bus, and this is particularly wasteful in terms of power consumption. Further, since it is necessary to read data every time, there is a problem that the operation speed does not increase due to this data reading operation.

【0005】隣接するマクロブロックの参照するデータ
が重なっていることに注目して、マクロブロックを2つ
同時に処理する方法も提案されている。この方法による
動きベクトル検出装置では、2つにマクロブロックに対
して同じデータを使うような構成になっているため、対
象とするマクロブロックを縦方向に処理するときは、デ
ータ読み出し量は半減する。しかし、列が変わるときに
は新たに探索範囲のデータを全て入れ換える必要がある
という問題点があった。
A method of simultaneously processing two macroblocks has been proposed, paying attention to the fact that the data referred to by adjacent macroblocks overlap. Since the motion vector detecting device according to this method is configured to use the same data for two macro blocks, the data read amount is halved when the target macro block is processed in the vertical direction. . However, there is a problem in that when the columns change, it is necessary to newly replace all the data in the search range.

【0006】本発明ではこれらの問題点に鑑み、探査範
囲の画素データの読み出しを効率良く行うことによりシ
ステムとしての消費電力を低減でき、かつデータ読み出
しのための待ち時間を短縮できる装置を提供することを
目的としている。
In view of these problems, the present invention provides an apparatus capable of reducing the power consumption of the system and the waiting time for reading data by efficiently reading the pixel data in the search range. Is intended.

【0007】[0007]

【課題を解決するための手段】上記の目的を達成するた
め本発明の動きベクトル検出装置では、任意の画素ブロ
ックが必要とする探査範囲の画素データを読み出し、該
画素ブロックの処理を行っていくと同時に、該画素ブロ
ックのデータのうち、既に演算が行われ、かつ今後参照
されないデータを順次、次に処理を行う画素ブロックが
必要とするデータに置き換えていくことを特徴とする。
また、前記動きベクトル検出装置において、画素ブロッ
クの1画素ごとの読み出し及び画素ブロックの処理は、
ミヤンダ型で行うことを特徴とする。
In order to achieve the above object, the motion vector detection device of the present invention reads out pixel data of an exploration range required by an arbitrary pixel block and processes the pixel block. At the same time, of the data of the pixel block, data which has already been calculated and is not referred to in the future is sequentially replaced with data required by the pixel block to be processed next.
Further, in the motion vector detecting device, the reading of each pixel of the pixel block and the processing of the pixel block are
The feature is that it is performed in a Miyanda type.

【0008】[0008]

【作用】本発明によれば、隣合ったマクロブロックが参
照する探索範囲の画素データは、その多くが重なってい
ることを利用するため、近隣のマクロブロックを処理す
るときに全てのデータを入れ換える必要がない。さら
に、マクロブロック内の画素は1画素ごとに処理し、マ
クロブロックの処理はミヤンダ型の順序にしている。こ
のため、常に重なっているデータ量は等しく、不要なデ
ータ転送を避けることができ、消費電力を少なくするこ
とができる。また、1つの画面中の最初のマクロブロッ
クに対する演算時は、全てのデータを外部から読み出し
て来る必要があるが、その近隣のマクロブロックの演算
を行うときには、データロードに要する時間が見かけ上
0となるようにデータを読み出すように構成しているた
め、次のマクロブロックの処理に移るとき、データロー
ドのための待ち時間を短縮することができる。
According to the present invention, since the pixel data in the search range referred to by the adjacent macroblocks are mostly overlapped, all the data are exchanged when processing the neighboring macroblocks. No need. Further, the pixels in the macroblock are processed pixel by pixel, and the macroblocks are processed in the order of the meander type. Therefore, the amount of overlapping data is always the same, unnecessary data transfer can be avoided, and power consumption can be reduced. In addition, it is necessary to read all the data from the outside during the operation for the first macroblock in one screen, but when performing the operation for macroblocks in the vicinity, the time required for data loading is apparently 0. Since the data is read so that, the waiting time for data loading can be shortened when the processing of the next macroblock is started.

【0009】[0009]

【実施例】以下、本発明を実施例により詳細に説明す
る。
EXAMPLES The present invention will be described in detail below with reference to examples.

【0010】図1は、本発明による動きベクトル検出装
置の構成を示す。図1において、11はピクチャメモリ
で現画像がディジタル化されたデータとして格納されて
おり、12は現画像が参照する画像が格納されているピ
クチャメモリである。11、12とも1画面分の画像を
格納するため、一般にDRAMなど大容量のメモリがバ
ス等を介して外部に接続されている。13は1画素分の
データを格納するバッファメモリ、14はあるマクロブ
ロックに対する探索範囲の画素データを格納するバッフ
ァメモリであり、マクロブロックの大きさを16×1
6、探索範囲を±iとしたとき、マクロブロックが参照
する全探索範囲、すなわち(2i+16)2画素分のデ
ータを格納する容量を持つ。バッファ13、14は、制
御回路18によりREAD/WRITEの制御が行われ
る。プロセッサ15は、マクロブロックの画素データと
探索範囲の画素データとの間で差分絶対値和、または差
分2乗和などの所定の演算及び累算機能を備える。最小
値検出回路16は、プロセッサ15により演算された
(2i+1)2個のデータの中から最小値を求める回路
であり、その結果からマクロブロックに対する動きベク
トルを求めるという構成になっている。以下、1画面中
のマクロブロックの数はm×n個とする。
FIG. 1 shows the configuration of a motion vector detecting device according to the present invention. In FIG. 1, 11 is a picture memory that stores the current image as digitized data, and 12 is a picture memory that stores the image referred to by the current image. Since both 11 and 12 store an image for one screen, a large-capacity memory such as DRAM is generally connected to the outside via a bus or the like. Reference numeral 13 is a buffer memory that stores data for one pixel, and 14 is a buffer memory that stores pixel data in a search range for a certain macroblock. The size of the macroblock is 16 × 1.
6. When the search range is ± i, it has a capacity for storing the entire search range referred to by the macroblock, that is, (2i + 16) 2 pixel data. The buffers 13 and 14 are READ / WRITE controlled by the control circuit 18. The processor 15 has a predetermined calculation and accumulation function such as a sum of absolute differences or a sum of squared differences between the pixel data of the macroblock and the pixel data of the search range. The minimum value detection circuit 16 is a circuit for calculating the minimum value from the (2i + 1) 2 data calculated by the processor 15, and is configured to calculate the motion vector for the macroblock from the result. Hereinafter, the number of macroblocks in one screen is m × n.

【0011】次に、図1の構成における各々の動作を具
体的に説明する。
Next, each operation in the configuration of FIG. 1 will be specifically described.

【0012】まず、第一のマクロブロック(以下MB1
と呼ぶ)を処理する場合について説明する。探索バッフ
ァ14には、MB1の処理を始める前にMB1に対する
全探索範囲の画素データをピクチャメモリ12より読み
出しておく。そのデータ数は、全探索範囲の画素データ
の個数、すなわち(2i+16)2画素分である。以
下、右方向をx軸方向、下方向をy軸方向とし、要素
(x,y)は処理を行っているマクロブロックの要素の
番号を表すこととする。
First, the first macroblock (hereinafter referred to as MB1
Process) will be described. Pixel data in the entire search range for MB1 is read from the picture memory 12 into the search buffer 14 before the processing of MB1 is started. The number of data is the number of pixel data in the entire search range, that is, (2i + 16) 2 pixels. In the following, the right direction is the x-axis direction and the downward direction is the y-axis direction, and the element (x, y) represents the element number of the macroblock being processed.

【0013】MB1の最初の要素(0,0)が制御回路
18によって読み出され、探索範囲の画素データとの間
で演算が行われる。MB1の全探索範囲のうち、要素
(0,0)について実際に演算が行われる画素データは
図2(a)の斜線部であり、その数は(2i+1)2
である。プロセッサ15では、MB1の要素(0,0)
の画素データと、制御回路18によってプロセッサ15
に入力された図2(a)の斜線部のデータ全てとの間で
差分絶対値などの所定の演算を行い、その演算結果を内
部のアキュムレータなどに蓄えておく。その数は、MB
1の要素(0,0)について演算される探索範囲の画素
データ数(2i+1)2個に等しい。
The first element (0,0) of MB1 is read out by the control circuit 18 and is operated with the pixel data in the search range. Of the entire search range of MB1, the pixel data on which the element (0,0) is actually calculated is the shaded area in FIG. 2A, and the number is (2i + 1) 2 . In the processor 15, the element (0,0) of MB1
Pixel data of the processor 15 and the control circuit 18
A predetermined calculation such as the absolute difference value is performed with all the data in the shaded area in FIG. 2 (a) input to the above, and the calculation result is stored in an internal accumulator or the like. The number is MB
It is equal to the number of pixel data (2i + 1) 2 in the search range calculated for the element (0, 0) of 1.

【0014】次に、MB1の要素(0,1)について、
探索範囲の画素データとの間で同様な演算を行う。この
MB1の要素(0,1)と演算される探索範囲の画素デ
ータは、図2(b)の斜線部に示される範囲で、要素
(0,0)が演算する探索範囲の画素データを1行分下
にずらしたものである。その後、アキュムレータに蓄え
られている一つ前の要素の演算結果と加算処理を行い、
新たにアキュムレータに書き込んでおく。
Next, regarding the element (0, 1) of MB1,
The same calculation is performed with the pixel data in the search range. The pixel data of the search range calculated as the element (0, 1) of MB1 is the range shown by the shaded area in FIG. 2B, and the pixel data of the search range calculated by the element (0, 0) is 1 It is shifted down by a line. After that, the addition result is calculated with the operation result of the previous element stored in the accumulator,
Write it in the accumulator newly.

【0015】以下、同様に要素(0,2)、(0,3)
と順次MB1の要素をy軸に沿って下方向にずらしなが
ら演算を行っていく。図2(c)に示すようにy軸方向
の最大値、すなわちMB1の要素(0,15)を演算し
終わったとき、その次には図2(d)に示すように右隣
の要素(1,15)を演算する。この探索範囲の画素デ
ータは、要素(0,15)の探索範囲を1列分だけ右に
ずらしたものである。以後制御回路18により、図3
(a)の順序に従って最後の要素(15,0)まで演算
を行うと、全てのベクトルに対する差分値の和として合
計(2i+1)2個の演算結果が得られる。そして、最
後に最小値検出回路16によって(2i+1)2個の中
から最小値を検出して動きベクトルを得る。
Similarly, elements (0, 2) and (0, 3)
The calculation is performed while sequentially shifting the elements of MB1 downward along the y-axis. As shown in FIG. 2 (c), when the maximum value in the y-axis direction, that is, the element (0, 15) of MB1 has been calculated, next, as shown in FIG. 1, 15) is calculated. The pixel data of this search range is obtained by shifting the search range of the element (0,15) by one column to the right. After that, by the control circuit 18, FIG.
When the calculation is performed up to the last element (15,0) in the order of (a), a total of (2i + 1) 2 calculation results are obtained as the sum of the difference values for all the vectors. Then, finally, the minimum value detection circuit 16 detects the minimum value from the (2i + 1) 2 pieces to obtain a motion vector.

【0016】続いて、次のマクロブロック(以下MB2
とする)の処理と、その探索範囲の画素データを考え
る。図4にMB1とMB2の参照する全探索範囲の画素
データを示す。実線部の403がMB1の全探索範囲の
画素データであり、破線部の404がMB2の全探索範
囲の画素データである。図に示すように、MB2に対す
る全探索範囲の画素データは、MB1の画素データと多
くが重なっている。上述したように、図3(a)の順序
に従って画素ごとに演算を行わせる方法では、x軸方向
に演算すべき要素が変化したとき、バッファメモリ14
の最左列の画素データ、すなわちMB1の全探索範囲の
xが−i列目の画素データは、MB1のx軸が1以上の
要素、またはMB2の全ての要素によって参照されるこ
とはない。言い換えれば探索範囲の−i列の画素データ
を参照するのは、MB1の要素(0,a)(但しaは0
〜15)のみである。したがって、MB1の要素(0,
15)の演算が終わった後に第2列目の演算、すなわち
要素(1,a)(aは0〜15)の演算を行っている間
に書き換えることができる。新たにバッファ14に書き
込むべき探索範囲の画素データは、MB1は参照しない
がMB2が参照する画素データ、すなわちMB1の探索
範囲の画素データの2i+16列目以後のデータであ
る。つまりMB1の要素(0,15)の処理が終わった
時点で401の領域は不要となるため、制御回路18に
より401に書き込まれていた画素データの部分に、新
たに402の部分の画素データを書き込む操作を行う。
以後制御回路18は、MB1のx軸方向に演算すべき要
素がずれたときに書き換え操作を行う。これによりMB
1の処理が終わってMB2の処理が始まるときには、バ
ッファ14の内容はMB2の探索範囲の画素データに置
きかわっている。
Then, the next macroblock (hereinafter referred to as MB2)
And the pixel data in the search range. FIG. 4 shows pixel data of the entire search range referred to by MB1 and MB2. The solid line part 403 is the pixel data of the entire search range of MB1, and the broken line part 404 is the pixel data of the full search range of MB2. As shown in the figure, the pixel data of the entire search range for MB2 largely overlaps with the pixel data of MB1. As described above, in the method of performing the calculation for each pixel according to the order of FIG. 3A, when the element to be calculated changes in the x-axis direction, the buffer memory 14
The pixel data in the leftmost column, that is, the pixel data in the x-i-th column of the entire search range of MB1 is not referred to by an element whose x axis of MB1 is 1 or more, or all elements of MB2. In other words, the pixel data in the -i column of the search range is referred to by the element (0, a) of MB1 (where a is 0).
~ 15) only. Therefore, the elements of MB1 (0,
It can be rewritten during the calculation of the second column, that is, the calculation of the element (1, a) (a is 0 to 15) after the calculation of 15) is completed. The pixel data of the search range to be newly written in the buffer 14 is the pixel data which is not referred to by MB1 but is referred by MB2, that is, the data after the 2i + 16th column of the pixel data of the search range of MB1. In other words, since the area 401 is no longer needed when the processing of the element (0, 15) of MB1 is completed, the pixel data of the area 402 is newly added to the portion of the pixel data written in 401 by the control circuit 18. Perform the write operation.
After that, the control circuit 18 performs the rewriting operation when the element to be calculated in the x-axis direction of MB1 is deviated. MB
When the process of 1 ends and the process of MB2 starts, the contents of the buffer 14 are replaced with the pixel data of the search range of MB2.

【0017】上記の方法に従い書き換え操作を行ってい
くとき、処理すべきマクロブロックが変わるときに外部
のピクチャメモリ12から探索バッファ14に読み込ま
れる画素データ数は、(2i+16)×16だけであ
る。さらに1画面分で考えると、最初に処理すべきマク
ロブロックの演算を行うときには(2i+16)2画素
必要であるから、合計(2i+16)2+(m×n−
1)×{16×(2i+16)}画素分のデータが読み
込まれる。最も単純な方法で、毎回全探索範囲のデータ
を読み出す場合のデータ転送回数は(2i+16)2×
m×nであるから、m×n=45×30、探索範囲を±
16としたときには約3割、±32としたときには約2
割にまで読み込むデータ量を減らすことができる。従来
の2つのマクロブロックを同時に処理する方法において
も、読み込むデータ量は半減することしかできなかっ
た。従ってその分バスの駆動回数がへるので、消費電力
を減らすことができる。また、MB2の処理を開始する
ときには既に探索バッファ14内のデータはMB2の探
索範囲のデータに置き換わっているので、MB1とMB
2の処理の間のタイムラグもなく、処理速度が落ちるこ
とはない。
When performing a rewriting operation according to the above method, the number of pixel data read from the external picture memory 12 into the search buffer 14 when the macroblock to be processed changes is only (2i + 16) × 16. Considering further one screen, (2i + 16) 2 pixels are required when the macro block to be processed first is calculated, so a total of (2i + 16) 2 + (m × n−
Data for 1) × {16 × (2i + 16)} pixels is read. With the simplest method, the number of data transfers when reading data in the entire search range each time is (2i + 16) 2 ×
Since m × n, m × n = 45 × 30, the search range is ±
When set to 16, about 30%, when set to ± 32, about 2
The amount of data to be read can be reduced. Even in the conventional method of simultaneously processing two macroblocks, the amount of data to be read can only be reduced by half. Therefore, the number of times the bus is driven is reduced accordingly, and power consumption can be reduced. Further, when the processing of MB2 is started, the data in the search buffer 14 has already been replaced with the data in the search range of MB2.
There is no time lag between the two processes and the processing speed does not decrease.

【0018】1画面のすべてのマクロブロックを処理す
る際には、マクロブロックの処理の順序を図5(a)に
示したようなミヤンダ型で行う。前述した方法は、MB
2がMB1に対してx軸方向に右の位置にあった場合で
あるが、左の位置にあった場合は図3(b)に示すよう
な逆の順序で演算を行うことになる。又、画面中で
(k,m−1)(但しkは偶数)の位置にあるマクロブ
ロックは図3(c)、(l,0)(但しlは奇数)の位
置にあるマクロブロックは図3(d)の順序で各要素の
演算を行う。
When processing all the macroblocks of one screen, the order of macroblock processing is performed in the form of a mounder as shown in FIG. 5 (a). The method described above is
2 is at the right position in the x-axis direction with respect to MB1, but when it is at the left position, the calculation is performed in the reverse order as shown in FIG. Also, the macroblock at the position (k, m-1) (where k is an even number) on the screen is shown in FIG. 3C, and the macroblock at the position (l, 0) (where l is an odd number) is shown in the figure. The calculation of each element is performed in the order of 3 (d).

【0019】バッファ14は、読み出し及び書き込みを
同時に行えるデュアルポートメモリを使うことが望まし
い。また、本実施例においては1つの画素と複数の探索
範囲の画素間の演算を行うようにしているため、プロセ
ッサ15はマクロブロックの1画素分のデータをブロー
ドキャストして並列に演算が行える、SIMD型の並列
プロセッサであることが望ましい。
The buffer 14 is preferably a dual port memory capable of reading and writing simultaneously. Further, in the present embodiment, since the calculation between one pixel and the pixels in the plurality of search ranges is performed, the processor 15 broadcasts the data for one pixel of the macroblock and can perform the calculation in parallel. Type parallel processor is preferred.

【0020】尚、本実施例において、マクロブロックの
処理順序は図5(a)として説明したが、図5(b)の
ようにマクロブロックが連続した順でも同様な操作で動
きベクトルを検出することができる。
In this embodiment, the processing order of the macroblocks is described as FIG. 5A, but the motion vector is detected by the same operation even in the order in which the macroblocks are continuous as shown in FIG. 5B. be able to.

【0021】[0021]

【発明の効果】本発明の動きベクトル検出装置によれ
ば、外部のピクチャメモリから読み出す画素データの量
を大幅に削減することができるため、システムとしての
消費電力を低減することができる。同時に、次のマクロ
ブロックに処理を移すときにはすでに必要なデータが読
み込まれているため、データロードのための待ち時間が
短縮でき、高速化が可能となる。
According to the motion vector detecting apparatus of the present invention, the amount of pixel data read from an external picture memory can be significantly reduced, so that the power consumption of the system can be reduced. At the same time, when the processing is moved to the next macroblock, the necessary data has already been read, so the waiting time for data loading can be shortened and the speed can be increased.

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

【図1】本発明に係る動きベクトル検出装置の構成図で
ある。
FIG. 1 is a configuration diagram of a motion vector detection device according to the present invention.

【図2】マクロブロックの各画素が参照する探索範囲の
画素データを示す図である。
FIG. 2 is a diagram showing pixel data in a search range referred to by each pixel of a macroblock.

【図3】マクロブロックの画素の処理の順序を示す図で
ある。
FIG. 3 is a diagram showing an order of processing of pixels of a macro block.

【図4】隣接する2つのマクロブロックが参照する探索
範囲の画素データを示す図である。
FIG. 4 is a diagram showing pixel data in a search range referred to by two adjacent macroblocks.

【図5】マクロブロックの処理の順序を示す図である。FIG. 5 is a diagram showing an order of processing macroblocks.

【図6】従来例による動きベクトルの検出方法を示す図
である。
FIG. 6 is a diagram showing a method of detecting a motion vector according to a conventional example.

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

11、12 ピクチャメモリ 13 マクロブロックの1画素を格納するバッファ 14 探索範囲の画素データを格納するバッファ 15 演算器 16 最小値検出回路 18 制御回路 21、22 バス 11, 12 picture memory 13 buffer for storing one pixel of macroblock 14 buffer for storing pixel data in search range 15 calculator 16 minimum value detection circuit 18 control circuit 21, 22 bus

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 ディジタル化された動画像中の画素ブロ
ックの動きベクトルを検出する動きベクトル検出装置に
おいて、 任意の画素ブロックが必要とする探査範囲の画素データ
を読み出し、該画素ブロックの処理を行っていくと同時
に、該画素ブロックのデータのうち、既に演算が行わ
れ、かつ今後参照されないデータを順次、次に処理を行
う画素ブロックが必要とするデータに置き換えていくこ
とを特徴とする動きベクトル検出装置。
1. A motion vector detecting device for detecting a motion vector of a pixel block in a digitized moving image, reads out pixel data of a search range required by an arbitrary pixel block, and processes the pixel block. At the same time, the motion vector is characterized in that, among the data of the pixel block, data that has already been calculated and is not referenced in the future is sequentially replaced with data required by the pixel block to be processed next. Detection device.
【請求項2】 請求項1記載の動きベクトル検出装置に
おいて、画素ブロックの処理における1画素ごとの読み
出し、及び画素ブロックの処理はミヤンダ型で行うこと
を特徴とする動きベクトル検出装置。
2. The motion vector detection device according to claim 1, wherein the pixel-by-pixel reading in the pixel block processing and the pixel block processing are performed in a meander type.
JP31667594A 1994-12-20 1994-12-20 Moving vector detector Pending JPH08172629A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31667594A JPH08172629A (en) 1994-12-20 1994-12-20 Moving vector detector

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31667594A JPH08172629A (en) 1994-12-20 1994-12-20 Moving vector detector

Publications (1)

Publication Number Publication Date
JPH08172629A true JPH08172629A (en) 1996-07-02

Family

ID=18079664

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31667594A Pending JPH08172629A (en) 1994-12-20 1994-12-20 Moving vector detector

Country Status (1)

Country Link
JP (1) JPH08172629A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8019000B2 (en) 2005-02-24 2011-09-13 Sanyo Electric Co., Ltd. Motion vector detecting device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8019000B2 (en) 2005-02-24 2011-09-13 Sanyo Electric Co., Ltd. Motion vector detecting device

Similar Documents

Publication Publication Date Title
KR100267476B1 (en) Method for reading and setting up macroblock
US20090022223A1 (en) High quality, low memory bandwidth motion estimation processor
US20080133881A1 (en) Array of processing elements with local registers
US20050190976A1 (en) Moving image encoding apparatus and moving image processing apparatus
JPH0568155B2 (en)
EP2063646A2 (en) Method and apparatus for predictive coding
JPH03256485A (en) Motion vector detecting circuit
US20060062480A1 (en) Image processing apparatus
US6263112B1 (en) Motion vector searching apparatus and motion picture coding apparatus
JP4597103B2 (en) Motion vector search method and apparatus
JP4377693B2 (en) Image data search
US20050286637A1 (en) Motion vector detecting apparatus and method for detecting motion vector
US7777751B2 (en) Tiled memory array for full search motion estimation
JPH08172629A (en) Moving vector detector
EP2190206B1 (en) Device for motion search in dynamic image encoding
JP2007096696A5 (en)
JP4419608B2 (en) Video encoding device
JP2000287214A (en) Method and unit for motion detection
JP2000165883A (en) Motion vector detector
JPH10224797A (en) Moving vector detector and moving image coder using it
JP2004206423A (en) Image processor
JPH0779436A (en) Motion vector detector
US20090060048A1 (en) Motion detection circuit and method
JP2004080295A (en) Motion vector detector and motion vector detecting method
JP2007151169A (en) Motion vector detection apparatus and recording medium