JP2009272765A - Motion vector detection apparatus and motion vector detection method - Google Patents

Motion vector detection apparatus and motion vector detection method Download PDF

Info

Publication number
JP2009272765A
JP2009272765A JP2008119899A JP2008119899A JP2009272765A JP 2009272765 A JP2009272765 A JP 2009272765A JP 2008119899 A JP2008119899 A JP 2008119899A JP 2008119899 A JP2008119899 A JP 2008119899A JP 2009272765 A JP2009272765 A JP 2009272765A
Authority
JP
Japan
Prior art keywords
search
block
hierarchy
motion vector
units
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.)
Granted
Application number
JP2008119899A
Other languages
Japanese (ja)
Other versions
JP4973591B2 (en
Inventor
Hideo Nakaya
秀雄 中屋
Tetsujiro Kondo
哲二郎 近藤
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2008119899A priority Critical patent/JP4973591B2/en
Publication of JP2009272765A publication Critical patent/JP2009272765A/en
Application granted granted Critical
Publication of JP4973591B2 publication Critical patent/JP4973591B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a motion vector detection apparatus and a motion vector detection method, for detecting a motion vector at high speed. <P>SOLUTION: The motion vector detection apparatus is provided with: a plurality of hierarchy search parts for searching for a motion vector in a target hierarchy; and an operation part for operating a sum of motion vectors in respective hierarchies searched for by the plurality of hierarchy search parts as a motion vector to obtain. In one or more hierarchy search part having all the plurality of hierarchy search parts or hierarchies other than the lowest hierarchy as a target, a frame image is binarized with a threshold which is set higher the greater a block size is with respect to the degree of pattern complication in the search block as a reference by having a search block larger than a lower hierarchy as a unit and a motion vector in the target hierarchy is searched for with the binarized search block as a unit. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は動きベクトル検出装置及び動きベクトル検出方法に関し、画像分野に好適なものである。   The present invention relates to a motion vector detection device and a motion vector detection method, and is suitable for the image field.

従来、対象画像を、複数の階層ごとに異なる分解能で動きベクトルを探索し、探索された各階層における動きベクトルの和を、求めるべき動きベクトルとした動きベクトル検出装置が本出願人により提案されている(例えば特許文献1参照)。   Conventionally, the present applicant has proposed a motion vector detection apparatus that searches for a motion vector in a target image with different resolutions for each of a plurality of hierarchies, and uses the sum of the searched motion vectors in each hierarchy as a motion vector to be obtained. (For example, refer to Patent Document 1).

具体的に上位階層の処理系では、所定サイズの探索ブロックごとに、該探索ブロックの各画素値を、その探索ブロックにおける輝度の最大値及び最小値の和の1/2の値と比較して「1」又は「0」の2値のコードに変換し、その後にブロックマッチングが行われる。   Specifically, in a higher-level processing system, for each search block of a predetermined size, each pixel value of the search block is compared with a value that is 1/2 of the sum of the maximum value and the minimum value of the brightness in the search block. The code is converted into a binary code of “1” or “0”, and then block matching is performed.

また、中位階層の処理系では、上位階層の探索ブロックよりも小さい探索ブロックごとに、該探索ブロックの各画素値を、上位階層と同様にして2値のコードに変換し、その後にブロックマッチングが行われる。
特開平08−088855号公報
Further, in the processing system of the middle hierarchy, for each search block smaller than the search block of the upper hierarchy, each pixel value of the search block is converted into a binary code in the same manner as the upper hierarchy, and then block matching is performed. Is done.
Japanese Patent Laid-Open No. 08-088855

ところでかかる動きベクトル検出装置では、探索ブロックを画素単位で2値のパターンに変換しているため、該探索ブロックにおけるデータ量が小さくなっており、その分だけブロックマッチングの演算量を抑えることができ、この結果、求めるべき動きベクトル(各階層における動きベクトルの和)を高速に求めることができる。   By the way, in such a motion vector detection device, since the search block is converted into a binary pattern in units of pixels, the amount of data in the search block is small, and the amount of calculation of block matching can be suppressed accordingly. As a result, the motion vector to be obtained (the sum of motion vectors in each layer) can be obtained at high speed.

しかしながら、さらに演算の高速化を狙ったり、大きな動きベクトルに対応させるために階層数を増やしたり、探索範囲を広げたりするためには、まだまだ演算量が増大となる傾向にあり、さらなる簡略化が望まれている。   However, in order to further increase the calculation speed, increase the number of hierarchies to cope with a large motion vector, or expand the search range, the amount of calculation tends to increase, and further simplification It is desired.

本発明は以上の点を考慮してなされたもので、高速に動きベクトルを検出し得る動きベクトル検出装置及び動きベクトル検出方法を提案しようとするものである。   The present invention has been made in consideration of the above points, and intends to propose a motion vector detection device and a motion vector detection method capable of detecting a motion vector at high speed.

かかる課題を解決するため本発明は、動きベクトル検出装置であって、対象とすべき階層の動きベクトルを探索する複数の階層探索部と、複数の階層探索部で探索された各階層の動きベクトルの和を、求めるべき動きベクトルとして演算する演算部とを有し、複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部では、フレーム画像を、下位層よりも大きい探索ブロックを単位として、該探索ブロックにおける絵柄の複雑度に対してブロックサイズが大きいほど高く設定される閾値を基準に2値化し、2値化された探索ブロックを単位として、対象とすべき階層の動きベクトルを探索する。   In order to solve such a problem, the present invention is a motion vector detection device, and includes a plurality of hierarchical search units that search for a motion vector of a target hierarchy, and a motion vector of each hierarchy searched by the plurality of hierarchical search units An arithmetic unit that calculates a sum of the motion vectors to be obtained, and one or more hierarchical search units that target all layers other than the lowest layer or a hierarchy other than the lowest layer, Using a search block larger than the lower layer as a unit, binarization based on a threshold set higher as the block size is larger with respect to the complexity of the pattern in the search block, and using a binarized search block as a unit, Search for a motion vector of the hierarchy to be targeted.

また本発明は、動きベクトル検出方法であって、複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部に対して、フレーム画像を入力させる入力ステップと、複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部において、フレーム画像を、下位層よりも大きい探索ブロックを単位として、該探索ブロックにおける絵柄の複雑度に対してブロックサイズが大きいほど高く設定される閾値を基準に2値化し、2値化された探索ブロックを単位として、対象とすべき階層の動きベクトルを探索する探索ステップと、複数の階層探索部で探索された各階層の動きベクトルの和を、求めるべき動きベクトルとして演算する演算ステップとを経るようにする。   The present invention is also a motion vector detection method, wherein an input step of inputting a frame image to one or two or more hierarchical search units targeted for all of a plurality of hierarchical search units or a layer other than the lowest layer In one or more hierarchical search units targeting all or a plurality of hierarchical search units other than the lowest layer, a frame image is a picture in the search block in units of search blocks larger than the lower layer. A search step for searching for a motion vector of a hierarchy to be processed in units of a binarized search block, with a threshold set higher as the block size is larger with respect to the complexity of The sum of the motion vectors of each hierarchy searched by the hierarchy search unit is calculated as a motion vector to be obtained.

以上のように本発明によれば、フレーム画像を、比較的広範囲をカバーする低い分解能(ブロックサイズ)の探索ブロックごとにその探索ブロックの絵柄の複雑度に応じて2値化し、該2値の探索ブロック単位で対象とすべき階層の動きベクトルを探索するようにしたことにより、該探索ブロックにおける各画素を2値化する場合に比して探索ブロックに要するデータ量を小さくできる。したがって、探索ブロックにおける各画素を2値化する場合に比して、対象とすべき階層の動きベクトルの探索に要する演算量を抑えることができ、かくして、高速に動きベクトルを検出し得る動きベクトル検出装置及び動きベクトル検出方法を実現できる。   As described above, according to the present invention, a frame image is binarized for each search block with a low resolution (block size) covering a relatively wide range according to the complexity of the design of the search block, By searching for the motion vector of the target hierarchy for each search block, the amount of data required for the search block can be reduced as compared with the case where each pixel in the search block is binarized. Therefore, compared with the case where each pixel in the search block is binarized, the amount of calculation required for searching for a motion vector of the target hierarchy can be suppressed, and thus a motion vector that can detect a motion vector at high speed. A detection apparatus and a motion vector detection method can be realized.

以下図面について、本発明を適用した一実施の形態を詳述する。   Hereinafter, an embodiment to which the present invention is applied will be described in detail with reference to the drawings.

(1)動きベクトル検出装置の全体構成
図1において、本実施の形態による動きベクトル検出装置1の全体構成を示す。この動きベクトル検出装置1には、フレーム画像を示すデータが時系順に入力される。
(1) Overall Configuration of Motion Vector Detection Device FIG. 1 shows the overall configuration of a motion vector detection device 1 according to this embodiment. Data indicating the frame image is input to the motion vector detection device 1 in order of time series.

分割部2は、図2に示すように、フレーム画像を例えば縦横8画素×8画素のブロック(以下、これを基準ブロックとも呼ぶ)に分割し、これら基準ブロックのデータを、複雑度検出部3及び第3階層処理部30にそれぞれ与える。   As shown in FIG. 2, the dividing unit 2 divides the frame image into, for example, vertical and horizontal 8 pixels × 8 pixel blocks (hereinafter also referred to as reference blocks), and the data of these reference blocks is converted into the complexity detection unit 3. And the third hierarchy processing unit 30.

複雑度算出部3は、分割部2から与えられるデータを用いて基準ブロックごとに輝度の最小値と最大値との差分(以下、これをダイナミックレンジとも呼ぶ)を算出し、当該算出結果を示すデータを第1階層処理部10及び第2階層処理部20にそれぞれ与える。ダイナミックレンジが大きいほど、その基準ブロックにはエッジやディテール等の複雑な絵柄が含まれる傾向にある。   The complexity calculation unit 3 calculates the difference between the minimum value and the maximum value (hereinafter also referred to as a dynamic range) for each reference block using the data given from the dividing unit 2, and indicates the calculation result. Data is given to the first hierarchical processing unit 10 and the second hierarchical processing unit 20, respectively. As the dynamic range is larger, the reference block tends to include complex patterns such as edges and details.

第1階層処理部10は、図3に示すように、基準ブロックよりも大きい例えば縦横32画素×32画素のブロック(以下、これを第1階層ブロックとも呼ぶ)を単位として、動きベクトル(以下、これを第1階層動きベクトルとも呼ぶ)を算出する処理部である。具体的にこの第1階層処理部10は、第1階層複雑度計算部11、2値化部12、フレーム遅延部13及びブロックマッチング演算部14によって構成される。   As shown in FIG. 3, the first hierarchical processing unit 10 has a motion vector (hereinafter, referred to as a first hierarchical block) in units of a block of 32 pixels × 32 pixels (hereinafter, also referred to as a first hierarchical block) that is larger than the reference block. This is a processing unit for calculating (also referred to as a first layer motion vector). Specifically, the first layer processing unit 10 includes a first layer complexity calculation unit 11, a binarization unit 12, a frame delay unit 13, and a block matching calculation unit 14.

第1階層複雑度計算部11は、複雑度算出部3から与えられるデータ(各基準ブロックにおける輝度の最大値と最小値、またはその差分であるダイナミックレンジ)を用いて、第1階層ブロックごとにダイナミックレンジを計算し、当該計算結果を示すデータを2値化部12に与える。   The first hierarchy complexity calculation unit 11 uses the data (the maximum and minimum luminance values in each reference block or the dynamic range that is the difference) provided from the complexity calculation unit 3 for each first hierarchy block. The dynamic range is calculated, and data indicating the calculation result is given to the binarization unit 12.

この第1階層複雑度計算部11は、複雑度算出部3によって既に求められた基準ブロック(縦横8画素×8画素)における輝度の最大値と最小値、またはその差分であるダイナミックレンジを用いるため、これを用いずに最初から計算する場合に比して簡易な演算で計算可能となる。   The first hierarchy complexity calculator 11 uses the maximum and minimum luminance values in the reference block (8 pixels × 8 pixels) already obtained by the complexity calculator 3 or the dynamic range that is the difference between them. As compared with the case of calculating from the beginning without using this, the calculation can be performed with a simple calculation.

ちなみに、この演算として、例えば、第1階層ブロックに対応する16個の基準ブロックに対して複雑度算出部3がそれぞれ算出した16個の最大値のなかでの最大値と、16個の最小値のなかでの最小値とを比較演算により求め、それらの差分から新たなダイナミックレンジを求めるといった手法がある。また例えば、第1階層ブロックに対応する16個の基準ブロックに対して複雑度算出部3がそれぞれ算出した16個のダイナミックレンジの最大値を求めるといった手法もある。   Incidentally, as this calculation, for example, the maximum value among the 16 maximum values respectively calculated by the complexity calculation unit 3 for the 16 reference blocks corresponding to the first hierarchical block, and the 16 minimum values There is a method of obtaining a minimum value in the above by a comparison operation and obtaining a new dynamic range from the difference between them. Further, for example, there is a method of obtaining the maximum value of the 16 dynamic ranges calculated by the complexity calculation unit 3 for the 16 reference blocks corresponding to the first hierarchical block.

2値化部12は、分割部2及び第1階層複雑度計算部11からそれぞれ与えられるデータを用いて、フレーム画像を、閾値設定部により設定される閾値TH1を基準に第1階層ブロック単位で2値化し、該2値化した各第1階層ブロックのデータをフレーム遅延部13及びブロックマッチング演算部14にそれぞれ与える。   The binarizing unit 12 uses the data respectively given from the dividing unit 2 and the first layer complexity calculating unit 11 to generate a frame image in units of first layer blocks based on the threshold value TH1 set by the threshold setting unit. The binarization is performed, and the binarized data of each first layer block is supplied to the frame delay unit 13 and the block matching calculation unit 14, respectively.

したがって2値化部12は、図4に示すように、フレーム画像における複雑な絵柄部分と、簡単な絵柄部分とを大雑把に表現することができる。具体的には、第1階層ブロック(縦横32画素×32画素)ごとに1ビットのデータで示すことができる。   Therefore, as shown in FIG. 4, the binarizing unit 12 can roughly represent a complicated pattern portion and a simple pattern portion in the frame image. Specifically, it can be represented by 1-bit data for each first hierarchical block (vertical and horizontal 32 pixels × 32 pixels).

フレーム遅延部13は、2値化部12から与えられるデータをメモリ一時的に記憶し、該データを1フレームに相当する時間だけ遅延させた後に、ブロックマッチング演算部14に与える。このフレーム遅延部13では、2値化部12から与えられるデータが1ビットで示されるため、2値化しない場合に比べるとメモリ容量を大幅に削減することができる。   The frame delay unit 13 temporarily stores the data supplied from the binarization unit 12 and delays the data by a time corresponding to one frame, and then supplies the data to the block matching calculation unit 14. In this frame delay unit 13, the data provided from the binarization unit 12 is represented by 1 bit, so that the memory capacity can be greatly reduced as compared to the case where binarization is not performed.

ブロックマッチング演算部14は、2値化部12から与えられるデータと、フレーム遅延部13から与えられるデータを用いて、図5に示すように、現在及び過去のフレーム画像における各第1階層ブロックを、基準ブロックに対応する大きさにそれぞれ縮小する。   The block matching calculation unit 14 uses the data given from the binarization unit 12 and the data given from the frame delay unit 13 to calculate each first layer block in the current and past frame images as shown in FIG. , Each size is reduced to a size corresponding to the reference block.

そしてブロックマッチング演算部14は、過去のフレーム画像に対する現在のフレーム画像における動的対象の第1階層動きベクトル(動き量及び方向)を、縮小した第1階層ブロックを単位として算出し、該算出結果を示すデータを第2階層処理部20及びベクトル加算部4に与える。   Then, the block matching calculation unit 14 calculates the first layer motion vector (motion amount and direction) of the dynamic target in the current frame image with respect to the past frame image in units of the reduced first layer block, and the calculation result Is provided to the second hierarchical processing unit 20 and the vector addition unit 4.

ここで、この実施の形態における第1階層動きベクトルの具体的な演算手法を説明する。すなわちブロックマッチング演算部14は、現在のフレーム画像における各第1階層ブロックのうち、閾値TH1以上のダイナミックレンジ(複雑な絵柄)をもつ第1階層ブロック(図5では白ブロック)の全部又は一部を所定順に候補ブロックとして決定する。   Here, a specific calculation method of the first layer motion vector in this embodiment will be described. That is, the block matching calculation unit 14 includes all or part of the first layer blocks (white blocks in FIG. 5) having a dynamic range (complex picture) equal to or higher than the threshold TH1 among the first layer blocks in the current frame image. Are determined as candidate blocks in a predetermined order.

またブロックマッチング演算部14は、候補ブロックとして決定した場合、図6に示すように、過去のフレーム画像のうち、候補ブロックNBに対応する部分を基準とする探索範囲AR1のなかから、該候補ブロックNBとの輝度差の絶対値総和が最小となる部分(図6では一点差線で示す)を探索する。   When the block matching calculation unit 14 determines the candidate block, as shown in FIG. 6, the candidate block is searched from the search range AR1 based on the portion corresponding to the candidate block NB in the past frame image. A portion (indicated by a one-dot difference line in FIG. 6) where the absolute value sum of luminance differences from NB is minimum is searched.

そしてブロックマッチング演算部14は、探索した部分と、候補ブロックNBに対応する部分との動き量及びその方向を第1階層動きベクトル(図6では矢印で示す)として算出する。   Then, the block matching calculation unit 14 calculates the motion amount and the direction between the searched portion and the portion corresponding to the candidate block NB as a first layer motion vector (indicated by an arrow in FIG. 6).

このブロックマッチング演算部14は、候補対象となる第1階層ブロック(縦横32画素×32画素)が1ビットであるため、ビット単位で簡易な演算(排他的論理和演算)を行うことでマッチング部分を得ることができ、この結果、その演算量を大幅に削減することが可能となる。   Since the first hierarchical block (vertical and horizontal 32 pixels × 32 pixels) as a candidate target is 1 bit, the block matching calculation unit 14 performs a simple calculation (exclusive OR operation) on a bit-by-bit basis. As a result, the amount of calculation can be greatly reduced.

これに加えて、このブロックマッチング演算部14は、現在のフレーム画像で候補とすべき候補ブロック数を一部に限る点で、また過去のフレーム画像での候補範囲を一部に限る点で、より一段と演算量を削減することができる。   In addition to this, the block matching calculation unit 14 is limited to a part of the number of candidate blocks that should be candidates in the current frame image, and limited to a part of the candidate range in the past frame image. Further, the amount of calculation can be further reduced.

一方、第2階層処理部20は、図7に示すように、基準ブロックよりも大きく第1階層ブロックよりも小さい例えば縦横16画素×16画素のブロック(以下、これを第2階層ブロックとも呼ぶ)を単位として、動きベクトル(以下、これを第2階層動きベクトルとも呼ぶ)を算出する処理部である。具体的にこの第2階層処理部20は、第2階層複雑度計算部21、2値化部22、フレーム遅延部23及びブロックマッチング演算部24によって構成される。   On the other hand, as shown in FIG. 7, the second hierarchy processing unit 20 is a block of 16 pixels × 16 pixels, for example, which is larger than the reference block and smaller than the first hierarchy block (hereinafter also referred to as a second hierarchy block). Is a processing unit that calculates a motion vector (hereinafter also referred to as a second layer motion vector). Specifically, the second hierarchy processing unit 20 includes a second hierarchy complexity calculation unit 21, a binarization unit 22, a frame delay unit 23, and a block matching calculation unit 24.

第2階層複雑度計算部21は、複雑度算出部3から与えられるデータ(各基準ブロックにおける輝度の最大値と最小値、またはその差分であるダイナミックレンジ)を用いて、第2階層ブロックごとにダイナミックレンジを計算し、当該計算結果を示すデータを2値化部22に与える。   The second hierarchy complexity calculation unit 21 uses the data (the maximum and minimum luminance values in each reference block, or the dynamic range that is the difference between them) given from the complexity calculation unit 3 for each second hierarchy block. The dynamic range is calculated, and data indicating the calculation result is given to the binarization unit 22.

この第2階層複雑度計算部21は、第1階層複雑度計算部11と同様に、複雑度算出部3によって既に求められた基準ブロック(縦横8画素×8画素)のダイナミックレンジを用いない場合に比して、該基準ブロックよりも大きい第2階層ブロック(縦横16画素×16画素)のダイナミックレンジを、簡易な演算で算出可能となる。ちなみに、この演算は、第1階層複雑度計算部11と同一であっても別であってもよい。   In the same way as the first hierarchy complexity calculator 11, the second hierarchy complexity calculator 21 does not use the dynamic range of the reference block (vertical and horizontal 8 pixels × 8 pixels) already obtained by the complexity calculator 3. Compared to the above, the dynamic range of the second hierarchical block (vertical and horizontal 16 pixels × 16 pixels) larger than the reference block can be calculated by a simple calculation. Incidentally, this calculation may be the same as or different from the first hierarchy complexity calculation unit 11.

2値化部22は、分割部2及び第2階層複雑度計算部21からそれぞれ与えられるデータを用いて、フレーム画像を、閾値設定部により設定される閾値TH2を基準に第2階層ブロック単位で2値化し、該2値化した各第2階層ブロックのデータをフレーム遅延部23及びブロックマッチング演算部24にそれぞれ与える。   The binarizing unit 22 uses the data respectively given from the dividing unit 2 and the second hierarchical complexity calculating unit 21 to generate a frame image in units of second hierarchical blocks based on the threshold TH2 set by the threshold setting unit. The data is binarized, and the binarized data of each second layer block is supplied to the frame delay unit 23 and the block matching calculation unit 24, respectively.

この閾値TH2は、第1階層ブロック(縦横32画素×32画素)よりも細かい第2階層ブロック(縦横16画素×16画素)を単位として動きベクトルを探索することから、第1階層処理部10で設定される閾値TH1よりも低い値として設定される。   The threshold TH2 is searched for a motion vector in units of a second hierarchical block (vertical and horizontal 16 pixels × 16 pixels) finer than the first hierarchical block (vertical and horizontal 32 pixels × 32 pixels). It is set as a value lower than the set threshold value TH1.

したがって2値化部22は、図8に示すように、フレーム画像における複雑な絵柄部分と、簡単な絵柄部分とを、第1階層より細かいながらも大雑把に表現することができる。具体的には、第1階層ブロック(縦横32画素×32画素)に対して第2階層ブロック(縦横16画素×16画素)は縦2倍かつ横2倍の計4倍となるので、第2階層ブロックごとに4ビットのデータで示すことができる。   Therefore, as shown in FIG. 8, the binarizing unit 22 can roughly express a complicated pattern portion and a simple pattern portion in the frame image although they are finer than the first layer. Specifically, the second hierarchical block (vertical 16 pixels × 16 pixels) is doubled vertically and doubled twice in total with respect to the first hierarchical block (vertical 32 pixels × 32 pixels). Each hierarchical block can be represented by 4-bit data.

フレーム遅延部23は、フレーム遅延部13と同様に、2値化部22から与えられるデータをメモリ一時的に記憶し、該データを1フレームに相当する時間だけ遅延させた後に、ブロックマッチング演算部24に与える。このフレーム遅延部23では、2値化部22から与えられるデータが4ビットであるため、2値化しない場合に比べるとメモリ容量を大幅に削減することができる。   Similar to the frame delay unit 13, the frame delay unit 23 temporarily stores the data supplied from the binarization unit 22, delays the data by a time corresponding to one frame, and then performs a block matching operation unit. 24. In this frame delay unit 23, the data provided from the binarization unit 22 is 4 bits, so that the memory capacity can be greatly reduced as compared with the case where the binarization is not performed.

ブロックマッチング演算部24は、2値化部22から与えられるデータと、フレーム遅延部23から与えられるデータを用いて、図9に示すように、現在及び過去のフレーム画像における各第2階層ブロックを、基準ブロックに対応する大きさにそれぞれ縮小する。   The block matching calculation unit 24 uses the data given from the binarization unit 22 and the data given from the frame delay unit 23 to calculate each second hierarchical block in the current and past frame images as shown in FIG. , Each size is reduced to a size corresponding to the reference block.

そしてブロックマッチング演算部24は、過去のフレーム画像に対する現在のフレーム画像における動的対象の第2階層動きベクトル(動き量及び方向)を、縮小した第2階層ブロックを単位として算出し、該算出結果を示すデータを第3階層処理部30及びベクトル加算部4に与える。   Then, the block matching calculation unit 24 calculates the second layer motion vector (motion amount and direction) of the dynamic target in the current frame image with respect to the past frame image in units of the reduced second layer block, and the calculation result Is provided to the third hierarchical processing unit 30 and the vector addition unit 4.

ここで、この実施の形態における第2階層動きベクトルの具体的な演算手法を説明する。すなわちブロックマッチング演算部24は、現在のフレーム画像における各第2階層ブロックのうち、閾値TH2以上のダイナミックレンジ(複雑な絵柄)をもつ第2階層ブロック(図9では白ブロック)の全部又は一部を所定順に候補ブロックとして決定する。   Here, a specific calculation method of the second layer motion vector in this embodiment will be described. In other words, the block matching calculation unit 24 adds all or a part of the second layer block (white block in FIG. 9) having a dynamic range (complex picture) equal to or higher than the threshold TH2 among the second layer blocks in the current frame image. Are determined as candidate blocks in a predetermined order.

またブロックマッチング演算部24は、候補ブロックを決定した場合、第1階層処理部10のブロックマッチング演算部14から与えられるデータを用いて、過去のフレーム画像のうち、その候補ブロックに対応する部分から第1階層動きベクトル分だけずれた位置を認識する。   In addition, when the candidate block is determined, the block matching calculation unit 24 uses the data provided from the block matching calculation unit 14 of the first hierarchical processing unit 10 to start from the portion corresponding to the candidate block in the past frame image. A position shifted by the first layer motion vector is recognized.

そしてブロックマッチング演算部24は、認識した位置を基準として、ブロックマッチング演算部14で用いられる探索範囲よりも小さい探索範囲のなかから、候補ブロックとの輝度差の絶対値総和が最小となる部分を探索して第2階層動きベクトルを算出する。   Then, the block matching calculation unit 24 uses the recognized position as a reference and selects a portion in which the absolute value sum of the luminance difference from the candidate block is minimum from the search range smaller than the search range used by the block matching calculation unit 14. A second layer motion vector is calculated by searching.

このブロックマッチング演算部24は、候補対象となる第2階層ブロック(縦横16画素×16画素)が4ビットであるため、ビット単位で簡易な演算(排他的論理和演算)を行うことでマッチング部分を得ることができ、この結果、その演算量を大幅に削減することが可能となる。   Since the second hierarchical block (vertical and horizontal 16 pixels × 16 pixels) as a candidate target is 4 bits, the block matching calculation unit 24 performs a simple calculation (exclusive OR operation) on a bit-by-bit basis. As a result, the amount of calculation can be greatly reduced.

これに加えて、このブロックマッチング演算部24は、現在のフレーム画像で候補とすべき候補ブロック数を一部に限る点で、また過去のフレーム画像での候補範囲を第1階層よりも狭い範囲に限る点で、より一段と演算量を削減することができる。   In addition to this, the block matching calculation unit 24 limits the number of candidate blocks to be candidates in the current frame image to a part, and sets the candidate range in the past frame image to be narrower than the first hierarchy. The amount of computation can be further reduced in terms of the point.

他方、第3階層処理部30は、図2に示したように、基準ブロック(縦横8画素×8画素)を単位として、動きベクトル(以下、これを第3階層動きベクトルとも呼ぶ)を算出する処理部である。具体的にこの第3階層処理部30は、補償部31、フレーム遅延部32及びブロックマッチング演算部33によって構成される。   On the other hand, as shown in FIG. 2, the third hierarchy processing unit 30 calculates a motion vector (hereinafter also referred to as a third hierarchy motion vector) in units of reference blocks (vertical and horizontal 8 pixels × 8 pixels). It is a processing unit. Specifically, the third layer processing unit 30 includes a compensation unit 31, a frame delay unit 32, and a block matching calculation unit 33.

補償部31は、分割部2から与えられるデータを一時的に記憶して、第1階層処理部10又は第2階層処理部20での処理に要する時間遅延を補償した後に、フレーム遅延部32及びブロックマッチング演算部33にそれぞれ与える。   The compensation unit 31 temporarily stores the data given from the division unit 2 and compensates for the time delay required for the processing in the first hierarchical processing unit 10 or the second hierarchical processing unit 20, and then the frame delay unit 32 and Each is given to the block matching calculation unit 33.

フレーム遅延部32は、フレーム遅延部13、23と同様に、補償部31から与えられるデータをメモリ一時的に記憶し、該データを1フレームに相当する時間だけ遅延させた後に、ブロックマッチング演算部33に与える。   Similar to the frame delay units 13 and 23, the frame delay unit 32 temporarily stores the data supplied from the compensation unit 31 and delays the data by a time corresponding to one frame, and then the block matching calculation unit. 33.

ブロックマッチング演算部33は、過去のフレーム画像に対する現在のフレーム画像における動的対象の第3階層動きベクトル(動き量及び方向)を、基準ブロックを単位として算出し、該算出結果を示すデータをベクトル加算部4に与える。   The block matching calculation unit 33 calculates the third-layer motion vector (motion amount and direction) of the dynamic target in the current frame image with respect to the past frame image, using the reference block as a unit, and data indicating the calculation result as a vector This is given to the adder 4.

ここで、この実施の形態における第3階層動きベクトルの具体的な演算手法を説明する。すなわちブロックマッチング演算部33は、現在のフレーム画像における各第3階層ブロックの全部又は一部を所定順に候補ブロックとして決定する。   Here, a specific calculation method of the third layer motion vector in this embodiment will be described. That is, the block matching calculation unit 33 determines all or part of the third hierarchical blocks in the current frame image as candidate blocks in a predetermined order.

またブロックマッチング演算部33は、候補ブロックを決定した場合、第1階層処理部10のブロックマッチング演算部14から与えられるデータと、第2階層処理部20のブロックマッチング演算部24から与えられるデータとを用いて、過去のフレーム画像のうち、その候補ブロックに対応する部分から第1階層動きベクトル及び第2階層動きベクトル分だけずれた位置を認識する。   In addition, when the block matching calculation unit 33 determines a candidate block, the data provided from the block matching calculation unit 14 of the first hierarchy processing unit 10 and the data provided from the block matching calculation unit 24 of the second hierarchy processing unit 20 Is used to recognize a position shifted from the portion corresponding to the candidate block in the past frame image by the first layer motion vector and the second layer motion vector.

そしてブロックマッチング演算部24は、認識した位置を基準として、ブロックマッチング演算部24で用いられる探索範囲よりも小さい探索範囲のなかから、候補ブロックとの輝度差の絶対値総和が最小となる部分を探索して第3階層動きベクトルを算出する。   Then, the block matching calculation unit 24 uses the recognized position as a reference, and selects a portion in which the absolute value sum of the luminance difference from the candidate block is minimum from the search range smaller than the search range used by the block matching calculation unit 24. A third layer motion vector is calculated by searching.

このブロックマッチング演算部33は、過去のフレーム画像での候補範囲を第2階層よりも狭い範囲に限る点で、演算量を削減することができる。   The block matching calculation unit 33 can reduce the calculation amount in that the candidate range in the past frame image is limited to a range narrower than the second hierarchy.

ベクトル加算部4は、第1階層処理部10のブロックマッチング演算部14から与えられるデータ、第2階層処理部20のブロックマッチング演算部24から与えられるデータ及び第3階層処理部30のブロックマッチング演算部33から与えられるデータを用いて、図10に示すように、各階層で算出された動きベクトルV1〜V3を加算し、加算結果を示すデータを出力する。   The vector addition unit 4 includes data provided from the block matching calculation unit 14 of the first hierarchy processing unit 10, data provided from the block matching calculation unit 24 of the second hierarchy processing unit 20, and block matching calculation of the third hierarchy processing unit 30. Using the data provided from the unit 33, as shown in FIG. 10, the motion vectors V1 to V3 calculated in the respective layers are added, and data indicating the addition result is output.

このデータは、各階層で算出された低分解能の動きベクトル(第1階層動きベクトル〜第3階層動きベクトル)の和を示すものであるため、当該フレーム画像における画素レベル単位でみたときの動きベクトルと同等であり、求めるべき真の動きベクトルとなる。   Since this data indicates the sum of low-resolution motion vectors (first-layer motion vector to third-layer motion vector) calculated in each layer, the motion vector when viewed in units of pixel levels in the frame image Is the true motion vector to be obtained.

このようにしてこの動きベクトル検出装置1は、画素よりも大きい最上位階層(第1階層)、中位階層(第2階層)及び最下位階層(第3階層)の各探索レベルで動きベクトルを探索することで、該画素レベルでの動きベクトルの探索を高速化するようになされている。   In this way, the motion vector detection device 1 detects motion vectors at the search levels of the highest hierarchy (first hierarchy), middle hierarchy (second hierarchy), and lowest hierarchy (third hierarchy) that are larger than the pixels. By searching, the search for the motion vector at the pixel level is speeded up.

(2)動きベクトル検出処理手順
次に、この動きベクトル検出装置1における動きベクトル検出処理手順を説明する。図11に示すように、動きベクトル検出装置1は、ステップSP1において、最初のフレーム画像を待ち受け、該フレーム画像を受けた場合、次のステップSP2に進んで、その第1階層〜第3階層の各処理部10、20、30に入力させる。
(2) Motion Vector Detection Processing Procedure Next, a motion vector detection processing procedure in the motion vector detection device 1 will be described. As shown in FIG. 11, the motion vector detection device 1 waits for the first frame image in step SP1, and when receiving the frame image, proceeds to the next step SP2 and proceeds to the first to third layers. Each processing unit 10, 20, 30 is input.

そして動きベクトル検出装置1は、ステップSP3に進んで、各処理部10、20、30に対して対象層の動きベクトルを探索させる。すなわち第1階層処理部10には、最低の分解能に相当するブロック(縦横32画素×32画素)を単位として(図3)、2値レベル(図4)で動きベクトルを探索させる。   Then, the motion vector detection apparatus 1 proceeds to step SP3 and causes the processing units 10, 20, and 30 to search for the motion vector of the target layer. That is, the first hierarchical processing unit 10 searches for a motion vector at a binary level (FIG. 4) in units of blocks (32 pixels × 32 pixels) corresponding to the lowest resolution (FIG. 3).

一方、第2階層処理部20には、中間分解能に相当するブロック(縦横16画素×16画素)を単位として(図7)、2値レベル(図8)で動きベクトルを探索させる。他方、第3階層処理部30には、最高の分解能に相当するブロック(縦横8画素×8画素)を単位として(図3)、多値レベルで動きベクトルを探索させる。   On the other hand, the second hierarchical processing unit 20 searches for a motion vector at a binary level (FIG. 8) in units of blocks (vertical and horizontal 16 pixels × 16 pixels) corresponding to intermediate resolution (FIG. 7). On the other hand, the third layer processing unit 30 is caused to search for a motion vector at a multi-value level in units of blocks (vertical and horizontal 8 pixels × 8 pixels) corresponding to the highest resolution (FIG. 3).

また動きベクトル検出装置1は、各処理部10、20、30で対象層の動きベクトルが探索された場合、次のステップSP4に進んで、これら動きベクトルの和を、当該フレーム画像に対して求めるべき動きベクトルとして演算する。   In addition, when the motion vectors of the target layer are searched for by the processing units 10, 20, and 30, the motion vector detection device 1 proceeds to the next step SP4, and obtains the sum of these motion vectors for the frame image. Calculated as a power vector.

この後、動きベクトル検出装置1は、ステップSP5において、未探索対象のフレーム画像が残っている場合にはステップSP2に戻り、残っていない場合にはこの動きベクトル検出処理手順を終了する。   Thereafter, in step SP5, the motion vector detection device 1 returns to step SP2 if an unsearched frame image remains, and ends the motion vector detection processing procedure if it does not remain.

このようにして動きベクトル検出装置1は、時系順に与えられるフレーム画像の動きベクトルを検出していくようになされている。   In this way, the motion vector detection device 1 is adapted to detect the motion vector of the frame image given in chronological order.

(3)動作及び効果
以上の構成において、動きベクトル検出装置1は、第1階層処理部10では、下位層のブロック(縦横16画素×16画素)よりも大きいブロック(縦横32画素×32画素)を単位として、閾値TH1を基準にフレーム画像を2値化し(図4)、該フレーム画像に対する最上位層(低分解能)の動きベクトルを探索する。
(3) Operation and Effect In the above configuration, the motion vector detection device 1 in the first layer processing unit 10 is a block (vertical and horizontal 32 pixels × 32 pixels) larger than the lower layer block (vertical and horizontal 16 pixels × 16 pixels). The frame image is binarized on the basis of the threshold TH1 (FIG. 4), and the motion vector of the highest layer (low resolution) for the frame image is searched.

一方、動きベクトル検出装置1は、第2階層処理部20では、下位層のブロック(縦横8画素×8画素)よりも大きいブロック(縦横16画素×16画素)を単位として、上位層の閾値TH1よりも低く設定される閾値TH2を基準にフレーム画像を2値化し(図8)、該フレーム画像のうち、第1階層で探索された動きベクトルに応じた位置から、その第1階層よりも小さい探索範囲で第2階層(中分解能)の動きベクトルを探索する。   On the other hand, in the second layer processing unit 20, the motion vector detection device 1 uses the upper layer threshold TH <b> 1 in units of blocks (vertical and horizontal 16 pixels × 16 pixels) larger than the lower layer blocks (vertical and horizontal 8 pixels × 8 pixels). The frame image is binarized based on a threshold TH2 set lower than that (FIG. 8), and the frame image is smaller than the first layer from the position corresponding to the motion vector searched in the first layer. A motion vector in the second layer (medium resolution) is searched in the search range.

他方、動きベクトル検出装置1は、第3階層処理部30では、最小ブロック(縦横8画素×8画素)を単位として(図2)、第1階層及び第2階層で探索された動きベクトルに応じた位置から、第2階層よりも小さい探索範囲で第3階層(高分解能)の動きベクトルを探索する。   On the other hand, in the third layer processing unit 30, the motion vector detection device 1 responds to the motion vector searched in the first layer and the second layer with the minimum block (vertical and horizontal 8 pixels × 8 pixels) as a unit (FIG. 2). The motion vector of the third layer (high resolution) is searched from the determined position within the search range smaller than the second layer.

そしてこの動きベクトル検出装置1は、各階層で探索された動きベクトルの和を、求めるべき動きベクトルとして演算する(図10)。   Then, the motion vector detection device 1 calculates the sum of motion vectors searched in each layer as a motion vector to be obtained (FIG. 10).

したがってこの動きベクトル検出装置1は、第1階層では1ビットのブロック単位で、第2階層では4ビットのブロック単位で、簡易な演算(排他的論理和演算)で動きベクトルを(ブロックマッチングにより)探索でき、その演算量を大幅に削減することが可能となる。   Therefore, this motion vector detection device 1 is a unit of 1 bit in the first layer and a unit of 4 bits in the second layer, and the motion vector is obtained by a simple operation (exclusive OR operation) (by block matching). It is possible to search and to greatly reduce the amount of calculation.

ここで、この手法による階層型動きベクトルと、引用文献1に記載された手法による階層型動きベクトルとでのデータ量の相違を図12に示す。この図12からも明らかなように、本手法では、第1階層ブロック及び第2階層ブロックが単位として2値化されるので、該第1階層ブロック及び第2階層ブロックにおける画素単位で2値のコードに変換した従来手法に比べるとデータ量が大幅に小さくなり、簡易な演算(排他的論理和演算)で動きベクトルを探索可能となることが分かる。   Here, FIG. 12 shows a difference in data amount between the hierarchical motion vector by this technique and the hierarchical motion vector by the technique described in the cited document 1. As is clear from FIG. 12, in this method, the first hierarchical block and the second hierarchical block are binarized as a unit, so that binary values are obtained in units of pixels in the first hierarchical block and the second hierarchical block. It can be seen that the amount of data is greatly reduced compared to the conventional method converted into a code, and the motion vector can be searched by a simple operation (exclusive OR operation).

なお、従来手法では、ブロックにおける最大値及び最小値の和の1/2を基準に、該ブロックが画素単位でコード変換される。つまり、ブロックにおける絵柄の複雑度に応じて決まる可変値を基準として、画素が2値化されるため、該絵柄に応じてブロックを高精度でパターン化できることになる。   In the conventional method, the block is code-converted in units of pixels on the basis of 1/2 of the sum of the maximum value and the minimum value in the block. In other words, since the pixels are binarized based on the variable value determined according to the complexity of the picture in the block, the block can be patterned with high accuracy according to the picture.

しかしながら、本手法のように、ブロックに対する2値の割当基準(閾値TH1,TH2)を固定として、該ブロックを2値化した場合であっても、従来手法とおおよそ同程度の精度を保てることが本出願人により確認されている。この確認での閾値TH1,TH2は、図13に示すように、ブロックサイズと線形関係にある閾値とした。   However, as in the present method, even when the binary assignment criterion (threshold values TH1 and TH2) for the block is fixed and the block is binarized, it is possible to maintain approximately the same accuracy as the conventional method. Confirmed by the applicant. The thresholds TH1 and TH2 in this confirmation are thresholds that are linearly related to the block size as shown in FIG.

ブロック全体における画素値(絵柄)の変化量は、ブロックサイズを大きくするほど(低分解能で動きベクトルを探索するほど)、そのブロックにおける絵柄にかかわらず収束する傾向にある。したがって、従来手法では、ブロックにおいて2値化単位を小さくすることや、その2値化基準を絵柄の複雑度に応じて可変とすることが精度に反映されず、かえって、無駄な演算の要因となる。これに対し本手法は、この要因を回避しながらも、従来手法とおおよそ同程度の精度を保てる点で有用である。   The amount of change in the pixel value (picture) in the entire block tends to converge regardless of the picture in the block as the block size is increased (the motion vector is searched at a lower resolution). Therefore, in the conventional method, reducing the binarization unit in the block and making the binarization standard variable according to the complexity of the picture are not reflected in the accuracy, but rather are a factor of useless calculation. Become. On the other hand, this method is useful in that it can maintain approximately the same accuracy as the conventional method while avoiding this factor.

以上の構成によれば、比較的広範囲をカバーする低い分解能に相当するブロックを単位として、2値レベルで動きベクトルを探索するようにしたことにより、該ブロックに対する2値の割当基準(閾値TH1,TH2)を固定とした場合であっても、所定の精度を保ちつつも簡易な演算で動きベクトルを探索することができ、かくして高速に動きベクトルを検出することができる。   According to the above configuration, since a motion vector is searched at a binary level with a block corresponding to a low resolution covering a relatively wide range as a unit, a binary allocation criterion (threshold TH1, TH1, Even when TH2) is fixed, a motion vector can be searched by a simple calculation while maintaining a predetermined accuracy, and thus a motion vector can be detected at high speed.

(4)他の実施の形態
上述の実施の形態における複雑度算出部3では、対象ブロックにおける輝度の最大値と最小値との差分(ダイナミックレンジ)が算出された。しかしながら、この算出対象はこの実施の形態に限定されるものではない。
(4) Other Embodiments In the complexity calculation unit 3 in the above-described embodiment, the difference (dynamic range) between the maximum value and the minimum value of the luminance in the target block is calculated. However, this calculation target is not limited to this embodiment.

例えば、輝度の最大値と最小値との比等のように、対象ブロックにおける最大値と最小値との隔たりの程度を算出対象とすることが可能である。また、対象ブロックにおける隣接画素間における輝度差の絶対値等を算出対象とすることも可能である。要は、その対象ブロックにおける変化の程度(絵柄の複雑度)を示すものであれば、算出対象として適用可能である。   For example, the degree of separation between the maximum value and the minimum value in the target block, such as the ratio between the maximum value and the minimum value of luminance, can be set as the calculation target. Also, the absolute value of the luminance difference between adjacent pixels in the target block can be calculated. In short, any object that indicates the degree of change (complexity of a pattern) in the target block can be applied as a calculation target.

また上述の実施の形態における閾値設定部は、2値化部12,22に設定すべき閾値TH1,TH2を固定でよいと上述したが、可変とすることも可能である。   Moreover, although the threshold value setting unit in the above-described embodiment has been described above that the threshold values TH1 and TH2 to be set in the binarization units 12 and 22 may be fixed, it may be variable.

具体例として、フレーム画像の各基準ブロックにおけるダイナミックレンジの頻度分布と、その平均とに応じて閾値TH1,TH2を可変するといった態様がある。これらパラメータは、絵柄の複雑度との関係では、図14に示すように、フレーム画像全体に含まれる絵柄がエッジやディテール等を多くもつ複雑なものであるほど、ダイナミックレンジの頻度分布幅は広がり、該頻度分布の平均は高い値を呈する。   As a specific example, there is an aspect in which the thresholds TH1 and TH2 are varied according to the frequency distribution of the dynamic range in each reference block of the frame image and the average thereof. As these parameters are related to the complexity of the pattern, as shown in FIG. 14, the frequency distribution width of the dynamic range becomes wider as the pattern included in the entire frame image has more edges and details. The average of the frequency distribution exhibits a high value.

したがって、各基準ブロックにおけるダイナミックレンジの頻度分布幅と、その平均との双方又はいずれか一方が大きいほど、閾値TH1,TH2を高く設定すれば、複雑な絵柄部分と、簡単な絵柄部分とを大雑把ながらもより正確に表現することが可能となる。このようにすれば、真にエッジやディテール等を含むブロックと、含まないブロックとを高精度で分けることが可能となる。   Therefore, if the threshold values TH1 and TH2 are set higher as the frequency distribution width of the dynamic range in each reference block and / or the average thereof are larger, the complex picture portion and the simple picture portion are roughly divided. However, it becomes possible to express more accurately. In this way, it is possible to separate a block that truly includes edges and details from a block that does not include edges with high accuracy.

また別の具体例として、各階層で対象となる第1階層ブロック、第2階層ブロック、第3階層ブロック(基準ブロック)のブロックサイズを入力する入力部を設け、該入力部から入力されるブロックサイズに応じて閾値TH1,H2を可変するといった態様がある。このようにすれば、適用すべきフレーム画像に応じて、その動きベクトルの検出精度をユーザが任意に指定するといったことも可能となる。ちなみに、このようにする場合、図13に示したように、ブロックサイズと閾値とが線形関係にあるテーブルと、入力部から入力されるブロックサイズとに応じて閾値TH1,H2を決定することも可能である。   As another specific example, an input unit for inputting the block size of the first hierarchical block, the second hierarchical block, and the third hierarchical block (reference block) that is a target in each layer is provided, and the block is input from the input unit There is an aspect in which the thresholds TH1 and H2 are varied according to the size. In this way, according to the frame image to be applied, the user can arbitrarily specify the detection accuracy of the motion vector. Incidentally, in this case, as shown in FIG. 13, the thresholds TH1 and H2 may be determined according to the table in which the block size and the threshold are in a linear relationship and the block size input from the input unit. Is possible.

また上述の実施の形態における2値化部12,22は、1つの2値化手法を用いたが、2つの2値化手法から選択した一方の2値化手法を用いることも可能である。   In addition, although the binarization units 12 and 22 in the above-described embodiment use one binarization method, it is also possible to use one binarization method selected from the two binarization methods.

例えば、2値化部12,22は、対象とすべきフレーム画像における基準ブロック単位のダイナミックレンジの頻度分布幅及びその平均と、該頻度分布幅及びその平均に対して設けられる各閾値を取得する。   For example, the binarization units 12 and 22 acquire the frequency distribution width and average of the dynamic range of the reference block unit in the frame image to be processed, and the thresholds provided for the frequency distribution width and the average. .

ここで、当該頻度分布幅及びその平均の双方が対応する閾値未満となる場合、2値化部12,22は、対象とすべきフレーム画像の絵柄の複雑度がそれほど高くないものとして、この実施の形態における2値化手法を用いる。すなわち、対象ブロック(第1階層ブロック,第2階層ブロック)を、基準値(閾値TH1,TH2)に対する当該対象ブロックにおけるダイナミックレンジ等の大小に応じて2値化する。   Here, when both the frequency distribution width and the average thereof are less than the corresponding threshold values, the binarizing units 12 and 22 assume that the complexity of the pattern of the frame image to be processed is not so high, The binarization method in the form is used. That is, the target block (first hierarchical block, second hierarchical block) is binarized according to the magnitude of the dynamic range or the like in the target block with respect to the reference values (threshold values TH1 and TH2).

これに対して、当該頻度分布及びその平均の一方又は双方が対応する閾値以上となる場合、2値化部12,22は、対象とすべきフレーム画像の絵柄の複雑度が高いものとして、ADRC変換による2値化手法(引用文献1の手法)を用いる。すなわち、対象ブロック(第1階層ブロック,第2階層ブロック)における各画素を、基準値(閾値TH1,TH2)に対する当該対象ブロックにおけるダイナミックレンジ等に応じて「0」又は「1」のコード又はnビットのコードに符号化する。   On the other hand, when one or both of the frequency distribution and the average thereof are equal to or higher than the corresponding threshold values, the binarization units 12 and 22 assume that the complexity of the pattern of the frame image to be processed is high, and the ADRC A binarization method by conversion (the method of Cited Document 1) is used. That is, each pixel in the target block (first hierarchical block, second hierarchical block) is represented by a code of “0” or “1” or n depending on the dynamic range in the target block with respect to the reference values (threshold values TH1, TH2). Encodes a bit code.

このようにフレーム画像全体における絵柄の複雑度に応じて、この実施の形態における2値化手法と、該2値化手法よりも高精度であるが負荷が大きいADRC変換による2値化手法とを切り換えるようにすれば、処理付加を極力抑えながら、絵柄部分の動きをより正確に把握することが可能となる。   In this way, according to the complexity of the pattern in the entire frame image, the binarization method in this embodiment and the binarization method by ADRC conversion that is more accurate than the binarization method but has a large load are used. By switching, it is possible to grasp the movement of the pattern portion more accurately while suppressing processing addition as much as possible.

また上述の実施の形態におけるブロックマッチング演算部14,24は、対象階層の動きベクトルを求める前に、各階層のブロック単位で2値化されたフレーム画像(図4,図8)を、基準ブロックに対応する大きさに縮小したが(図5,図9)、当該縮小処理を省略するようにしてもよい。   In addition, the block matching calculation units 14 and 24 in the above-described embodiment convert the frame image (FIGS. 4 and 8) binarized in units of blocks of each layer into the reference block before obtaining the motion vector of the target layer. (FIGS. 5 and 9), the reduction process may be omitted.

また上述の実施の形態では、3つの層の簡易的な動きベクトルが求められた。しかしながら、この層数は3つの層に限定されるものではなく、2以上の層であればいかなる数であってもよい。   In the above embodiment, simple motion vectors of three layers are obtained. However, the number of layers is not limited to three, and may be any number as long as it is two or more layers.

また上述の実施の形態では、最下位層の動きベクトルが、最小ブロック(縦横8画素×8画素)を単位として、多値レベルで探索された。しかしながら、この最下位層の動きベクトルも、2値レベルで探索するようにしてもよい。   Further, in the above-described embodiment, the motion vector of the lowest layer is searched at the multi-value level in units of the minimum block (vertical and horizontal 8 pixels × 8 pixels). However, this lowest layer motion vector may also be searched at the binary level.

本発明は、画像処理分野において利用可能である。   The present invention can be used in the field of image processing.

本実施の形態による動き検出装置の全体構成を示すブロック図である。It is a block diagram which shows the whole structure of the motion detection apparatus by this Embodiment. 基準ブロックの分割例を示す写真である。It is a photograph which shows the example of a division | segmentation of a reference | standard block. 第1階層の動きベクトルを算出する際の単位とされるブロック例を示す写真である。It is a photograph which shows the example of a block used as the unit at the time of calculating the motion vector of a 1st hierarchy. 第1階層ブロックの2値化例を示す概略図である。It is the schematic which shows the binarization example of a 1st hierarchy block. 第1階層ブロックの縮小例を示す概略図である。It is the schematic which shows the example of reduction of a 1st hierarchy block. ブロックマッチングの説明に供する概略図である。It is the schematic where it uses for description of block matching. 第2階層の動きベクトルを算出する際の単位とされるブロック例を示す写真である。It is a photograph which shows the example of a block used as the unit at the time of calculating the motion vector of a 2nd hierarchy. 第2階層ブロックの2値化例を示す概略図である。It is the schematic which shows the binarization example of a 2nd hierarchy block. 第2階層ブロックの縮小例を示す概略図である。It is the schematic which shows the example of reduction of a 2nd hierarchy block. 各階層で得られた動きベクトルの加算の説明に供する概略図である。It is the schematic where it uses for description of the addition of the motion vector obtained in each hierarchy. 動きベクトル検出処理手順を示すフローチャートである。It is a flowchart which shows a motion vector detection process procedure. 階層型動きベクトルに要する従来手法及び本手法でのデータ量の相違の説明に供する概略図である。It is the schematic where it uses for description of the difference in the data amount by the conventional method and this method which are required for a hierarchical motion vector. ブロックサイズと、ブロックの2値化基準値(閾値)との関係を示す概略図である。It is the schematic which shows the relationship between a block size and the binarization reference value (threshold value) of a block. フレーム画像における基準ブロック単位のダイナミックレンジの頻度分布及びその平均と、フレーム画像の絵柄との関係を示す概略図である。It is the schematic which shows the relationship between the frequency distribution and the average of the dynamic range of the reference | standard block unit in a frame image, and the pattern of a frame image.

符号の説明Explanation of symbols

1……動きベクトル検出装置、2……分割部、3……複雑度算出部、4……ベクトル加算部、10……第1階層処理部、20……第2階層処理部、30……第3階層処理部、11、21……第1階層複雑度計算部、12、22……2値化部、13、23、32……フレーム遅延部、14、24、33……ブロックマッチング演算部、31……補償部。   DESCRIPTION OF SYMBOLS 1 ... Motion vector detection apparatus, 2 ... Division | segmentation part, 3 ... Complexity calculation part, 4 ... Vector addition part, 10 ... 1st hierarchy process part, 20 ... 2nd hierarchy process part, 30 ... Third layer processing unit, 11, 21... First layer complexity calculation unit, 12, 22... Binary processing unit, 13, 23, 32... Frame delay unit, 14, 24, 33. Part, 31 ... compensation part.

Claims (8)

対象とすべき階層の動きベクトルを探索する複数の階層探索部と、
上記複数の階層探索部で探索された各階層の動きベクトルの和を、求めるべき動きベクトルとして演算する演算部と
を有し、
上記複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部は、
フレーム画像を、下位層よりも大きい探索ブロックを単位として、該探索ブロックにおける絵柄の複雑度に対してブロックサイズが大きいほど高く設定される閾値を基準に2値化し、2値化された探索ブロックを単位として、対象とすべき階層の動きベクトルを探索する、動きベクトル検出装置。
A plurality of hierarchical search units for searching for a motion vector of a target hierarchy;
An arithmetic unit that calculates a sum of motion vectors of each layer searched by the plurality of hierarchical search units as a motion vector to be obtained;
One or two or more hierarchy search units targeting all or a hierarchy other than the lowest layer of the plurality of hierarchy search units,
The frame image is binarized based on a threshold value set higher as the block size is larger with respect to the complexity of the pattern in the search block in units of search blocks larger than the lower layer, and binarized search block A motion vector detection device that searches for a motion vector of a hierarchy to be processed in units of.
フレーム画像における絵柄の複雑度を、最下位層に対して最小サイズとして割り当てられる探索ブロックごとに算出する第1の算出部と、
上記第1の算出部で算出された各探索ブロックでの絵柄の複雑度を用いて、上記最下位層以外の階層を対象とする1又は2以上の探索部で単位とされる探索ブロックにおける絵柄の複雑度を算出する第2の算出部と
をさらに有する請求項1に記載の動きベクトル検出装置。
A first calculation unit that calculates the complexity of the pattern in the frame image for each search block assigned as the minimum size to the lowest layer;
A pattern in a search block that is a unit in one or more search units targeting a layer other than the lowest layer, using the complexity of the pattern in each search block calculated by the first calculation unit. The motion vector detection device according to claim 1, further comprising: a second calculation unit that calculates the complexity of.
上記第1の算出部は、最下位層に対して最小サイズとして割り当てられる探索ブロックにおける最大値と最小値との隔たりの程度を、上記絵柄の複雑度として算出する、請求項2に記載の動きベクトル検出装置。   The motion according to claim 2, wherein the first calculation unit calculates the degree of separation between the maximum value and the minimum value in the search block assigned as the minimum size to the lowest layer as the complexity of the pattern. Vector detection device. 上記複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部に対して、ブロックサイズと線形関係をもつ閾値を、当該探索部で単位とされる探索ブロックのブロックサイズに応じて設定する閾値設定部
をさらに有する請求項3に記載の動きベクトル検出装置。
A search in which a threshold having a linear relationship with the block size is used as a unit for one or two or more hierarchy search parts that target all or a hierarchy other than the lowest layer among the plurality of hierarchy search parts. The motion vector detection device according to claim 3, further comprising a threshold value setting unit that is set according to a block size of the block.
上記複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部に対して、単位とすべき探索ブロックのブロックサイズを入力する入力部
をさらに有する請求項4に記載の動きベクトル検出装置。
The input part which inputs the block size of the search block which should be made into a unit with respect to one or two or more hierarchy search parts for all the said multiple hierarchy search parts or hierarchies other than the lowest layer. 5. The motion vector detection device according to 4.
上記複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部に対して、各上記探索ブロックにおける最大値と最小値との隔たりの程度の分布の広がり及びその分布の平均が大きいほど高い閾値を設定する閾値設定部
をさらに有する請求項3に記載の動きベクトル検出装置。
The distribution of the degree of difference between the maximum value and the minimum value in each of the search blocks with respect to one or more hierarchy search parts that target all or a hierarchy other than the lowest layer of the plurality of hierarchy search parts The motion vector detection device according to claim 3, further comprising: a threshold setting unit configured to set a higher threshold as the average of the distribution is larger.
上記複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部は、
各上記探索ブロックにおける最大値と最小値との隔たりの程度の分布の広がり及びその分布の平均の双方又は一方が所定の値を超える場合、下位層よりも大きいブロックを単位として、該ブロックにおける各画素を、上記閾値を基準に2値化する、請求項6に記載の動きベクトル検出装置。
One or two or more hierarchy search units targeting all or a hierarchy other than the lowest layer of the plurality of hierarchy search units,
When both or one of the distribution spread and the average of the distribution of the degree of difference between the maximum value and the minimum value in each of the search blocks exceeds a predetermined value, each block in the block is set in units of blocks larger than the lower layer. The motion vector detection device according to claim 6, wherein the pixel is binarized based on the threshold value.
複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部に対して、フレーム画像を入力させる入力ステップと、
上記複数の階層探索部の全て又は最下位層以外の階層を対象とする1又は2以上の階層探索部において、フレーム画像を、下位層よりも大きい探索ブロックを単位として、該探索ブロックにおける絵柄の複雑度に対してブロックサイズが大きいほど高く設定される閾値を基準に2値化し、2値化された探索ブロックを単位として、対象とすべき階層の動きベクトルを探索する探索ステップと、
上記複数の階層探索部で探索された各階層の動きベクトルの和を、求めるべき動きベクトルとして演算する演算ステップと
を有する動きベクトル検出方法。
An input step for inputting a frame image to one or more hierarchical search units targeting all or a hierarchy other than the lowest layer of the multiple hierarchical search units;
In one or two or more hierarchical search units targeting all or a hierarchy other than the lowest layer of the plurality of hierarchical search units, the frame image is a search block larger than the lower layer as a unit, and the pattern in the search block A search step for binarizing a threshold value set higher as the block size is larger with respect to the complexity, and searching for a motion vector of a hierarchy to be processed in units of binarized search blocks;
A motion vector detection method comprising: an operation step of calculating a sum of motion vectors of each hierarchy searched by the plurality of hierarchy search units as a motion vector to be obtained.
JP2008119899A 2008-05-01 2008-05-01 Motion vector detection apparatus and motion vector detection method Expired - Fee Related JP4973591B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008119899A JP4973591B2 (en) 2008-05-01 2008-05-01 Motion vector detection apparatus and motion vector detection method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008119899A JP4973591B2 (en) 2008-05-01 2008-05-01 Motion vector detection apparatus and motion vector detection method

Publications (2)

Publication Number Publication Date
JP2009272765A true JP2009272765A (en) 2009-11-19
JP4973591B2 JP4973591B2 (en) 2012-07-11

Family

ID=41438954

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008119899A Expired - Fee Related JP4973591B2 (en) 2008-05-01 2008-05-01 Motion vector detection apparatus and motion vector detection method

Country Status (1)

Country Link
JP (1) JP4973591B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013151163A1 (en) * 2012-04-05 2013-10-10 シャープ株式会社 Image processing device, image display device, image processing method, computer program, and recording medium
US10015511B2 (en) 2013-08-22 2018-07-03 Samsung Electronics Co., Ltd. Image frame motion estimation device and image frame motion estimation method using the same

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63209383A (en) * 1987-02-26 1988-08-30 Matsushita Electric Ind Co Ltd Image movement information extracting device
JPH0549017A (en) * 1991-08-09 1993-02-26 Seiko Epson Corp Moving vector detection circuit
JPH05103318A (en) * 1991-08-09 1993-04-23 Seiko Epson Corp Moving vector detection circuit
JPH06113266A (en) * 1992-09-25 1994-04-22 Kokusai Denshin Denwa Co Ltd <Kdd> Method for estimating block matching motion of animation using visual model
JPH0888855A (en) * 1994-07-22 1996-04-02 Sony Corp Method and device for detecting motion vector
JPH11231832A (en) * 1998-02-17 1999-08-27 Matsushita Electric Ind Co Ltd Moving vector detecting method, moving image display method and moving image display device
JP2000278691A (en) * 1999-03-23 2000-10-06 Sony Corp Method and device for detecting motion vector
JP2004173224A (en) * 2002-11-20 2004-06-17 National Chiao Tung Univ Method and apparatus for motion estimation by full binary expression
JP2006325155A (en) * 2005-05-20 2006-11-30 Nippon Hoso Kyokai <Nhk> Image signal processor

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63209383A (en) * 1987-02-26 1988-08-30 Matsushita Electric Ind Co Ltd Image movement information extracting device
JPH0549017A (en) * 1991-08-09 1993-02-26 Seiko Epson Corp Moving vector detection circuit
JPH05103318A (en) * 1991-08-09 1993-04-23 Seiko Epson Corp Moving vector detection circuit
JPH06113266A (en) * 1992-09-25 1994-04-22 Kokusai Denshin Denwa Co Ltd <Kdd> Method for estimating block matching motion of animation using visual model
JPH0888855A (en) * 1994-07-22 1996-04-02 Sony Corp Method and device for detecting motion vector
JPH11231832A (en) * 1998-02-17 1999-08-27 Matsushita Electric Ind Co Ltd Moving vector detecting method, moving image display method and moving image display device
JP2000278691A (en) * 1999-03-23 2000-10-06 Sony Corp Method and device for detecting motion vector
JP2004173224A (en) * 2002-11-20 2004-06-17 National Chiao Tung Univ Method and apparatus for motion estimation by full binary expression
JP2006325155A (en) * 2005-05-20 2006-11-30 Nippon Hoso Kyokai <Nhk> Image signal processor

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013151163A1 (en) * 2012-04-05 2013-10-10 シャープ株式会社 Image processing device, image display device, image processing method, computer program, and recording medium
JP2013219462A (en) * 2012-04-05 2013-10-24 Sharp Corp Image processing device, image display device, image processing method, computer program, and recording medium
US10015511B2 (en) 2013-08-22 2018-07-03 Samsung Electronics Co., Ltd. Image frame motion estimation device and image frame motion estimation method using the same

Also Published As

Publication number Publication date
JP4973591B2 (en) 2012-07-11

Similar Documents

Publication Publication Date Title
Wang et al. Multiple histograms based reversible data hiding by using FCM clustering
JP2009147807A (en) Image processing apparatus
Yaakob et al. A comparison of different block matching algorithms for motion estimation
JP5173898B2 (en) Image processing method, image processing apparatus, and program
JP2007166038A (en) Device and method for detecting motion vector
JP2007060164A (en) Apparatus and method for detecting motion vector
JP2012253482A (en) Image processing device, image processing method, recording medium, and program
JP2010148037A (en) Moving image playback apparatus, moving image playback method and moving image playback program
JP2008227702A (en) Motion vector search device, motion vector search method, and motion vector search program
JP2010034999A (en) Motion vector detecting apparatus, motion vector detecting method, and program
JP4973591B2 (en) Motion vector detection apparatus and motion vector detection method
US20170064318A1 (en) Image compression apparatus, image expansion apparatus, and image transfer system
US8837595B2 (en) Motion estimation method
US9106926B1 (en) Using double confirmation of motion vectors to determine occluded regions in images
CN106658024B (en) A kind of quick method for video coding
JP2010108205A (en) Super resolution image creating method
JP2007158855A (en) Motion vector detector and motion vector detecting method
JP4622265B2 (en) Motion vector detection device, motion vector detection method, and program
CN103618904A (en) Motion estimation method and device based on pixels
US20110194607A1 (en) Information Processing Device, Information Processing Method, and Program
JP6468703B2 (en) Motion detection device, motion detection method, and program
KR20090063101A (en) Method for generating distances representative of the edge orientations in a video picture, corresponding device and use of the method for deinterlacing or format conversion
JP2008098796A (en) Video encoding method, video encoding device, video encoding program, and recording medium thereof
WO2018235168A1 (en) Learning device, super-resolving device, learning method, super-resolving method, and program
JP2007097028A (en) Motion vector detecting method and motion vector detecting circuit

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110310

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120313

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120326

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

Free format text: PAYMENT UNTIL: 20150420

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees