JP4213739B2 - Motion vector detection device - Google Patents

Motion vector detection device Download PDF

Info

Publication number
JP4213739B2
JP4213739B2 JP2006242343A JP2006242343A JP4213739B2 JP 4213739 B2 JP4213739 B2 JP 4213739B2 JP 2006242343 A JP2006242343 A JP 2006242343A JP 2006242343 A JP2006242343 A JP 2006242343A JP 4213739 B2 JP4213739 B2 JP 4213739B2
Authority
JP
Japan
Prior art keywords
motion vector
block
horizontal
vertical
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006242343A
Other languages
Japanese (ja)
Other versions
JP2008067027A (en
Inventor
順司 助野
修司 外田
喜子 幡野
良樹 小野
和宏 杉山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2006242343A priority Critical patent/JP4213739B2/en
Priority to PCT/JP2007/052011 priority patent/WO2008023466A1/en
Priority to CN2007800314952A priority patent/CN101506845B/en
Priority to EP07708111A priority patent/EP2061007A1/en
Publication of JP2008067027A publication Critical patent/JP2008067027A/en
Application granted granted Critical
Publication of JP4213739B2 publication Critical patent/JP4213739B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、時系列的に前後の関係となる前フレームと後フレームとに関するフレーム画像間の動きベクトルを検出する動きベクトル検出装置に関するものである。   The present invention relates to a motion vector detection apparatus that detects a motion vector between frame images related to a previous frame and a subsequent frame that are in a time series relationship.

従来の動きベクトル検出技術としては、特許文献1に記載のように、画像を複数のブロックに分割し、ブロックごとにエッジを検出し、エッジの移動を追うことにより、動きベクトルを検出する方法がある。この方法では、空などのように、空間周波数が低く特徴的な絵柄のない場合や、格子戸のように、空間周波数が高く、特徴点が多数存在する場合の誤判定を軽減するために、1ブロックあたりのエッジ数で重み付けを行い、信頼性を評価している。また、エッジ検出の方法としては、ゼロクロッシング法などが使用されている。   As a conventional motion vector detection technique, as described in Patent Document 1, there is a method of detecting a motion vector by dividing an image into a plurality of blocks, detecting an edge for each block, and following the movement of the edge. is there. In this method, in order to reduce misjudgment when the spatial frequency is low and there is no characteristic pattern such as the sky, or when there are many feature points such as a lattice door, the spatial frequency is high. Weighting is performed by the number of edges per block, and reliability is evaluated. As a method for edge detection, a zero crossing method or the like is used.

特許第3164121号公報Japanese Patent No. 3164121

特許文献1に開示された動きベクトル検出方法は、ブロックごとに算出された動きベクトルの信頼性を、ブロックごとのエッジ数で重み付けすることにより、誤判定を軽減しているが、リアルタイム処理が要求される場合には、全ブロックを一様に評価することが難しいという問題を有している。   Although the motion vector detection method disclosed in Patent Document 1 reduces the erroneous determination by weighting the reliability of the motion vector calculated for each block by the number of edges for each block, real-time processing is required. In such a case, it is difficult to uniformly evaluate all blocks.

すなわち、画像全体を一様に評価しようとすると、全画像を取り込んだ上で動きベクトル検出処理を行う必要があり、それではリアルタイム処理に合わない。処理時間を満足するためには、ブロック単位で処理を完結させ、処理を次々と進める必要があるが、このとき、各ブロックを一様に処理することができないため、各ブロックを一様にエッジ数だけで重み付けしたのでは、必ずしも、十分な結果が得られるとは言いがたい。   That is, if the entire image is to be evaluated uniformly, it is necessary to perform the motion vector detection process after capturing the entire image, which is not suitable for real-time processing. In order to satisfy the processing time, it is necessary to complete the processing in units of blocks and proceed one after another. At this time, each block cannot be processed uniformly, so each block is uniformly edged. It is hard to say that sufficient results are obtained by weighting only by numbers.

本発明は上記のような問題点を解消するためになされたものであり、リアルタイム処理を満足しつつ、各ブロックから算出される動きベクトルの信頼性を評価することが可能な動きベクトル検出装置を提供することを目的とする。   The present invention has been made to solve the above-described problems, and provides a motion vector detection device capable of evaluating the reliability of a motion vector calculated from each block while satisfying real-time processing. The purpose is to provide.

本発明に係る請求項1記載の動きベクトル検出装置は、時系列的に前後の関係となる前フレームと後フレームとに関するフレーム画像間の動きベクトルを検出する動きベクトル検出装置であって、水平ラインの画素走査を垂直方向に順に繰り返すことによって読み出されるフレーム画像に関して、垂直方向に一定の分割幅を有して複数に分割されたブロックごとに垂直方向のエッジを強調するエッジ強調手段と、前記エッジ強調手段でエッジが強調された画像について、前記ブロックごとに垂直方向に射影をとり、前記ブロックのそれぞれで1水平ライン分のデータ配列を有する射影データを生成する射影手段と、前記後フレームに対して前記射影手段で得られた後フレーム射影データの配列要素において最大値を求める最大値取得手段と、前記前フレームに対して前記射影手段で得られた前フレーム射影データに関して前記データ配列の要素順に配列要素の値をグラフ化した波形と、配列要素の値が所定の一定値となる直線とが交差する各交差点の配列要素の位置を特定して交差点情報として出力する特定手段と、前記各交差点の配列要素の位置を中心とした所定範囲のデータ配列を、前記後フレーム射影データから抽出する抽出手段と、前記抽出手段で抽出された所定範囲のデータ配列それぞれについて、前記各交差点の配列要素の位置に対して相対位置が同じ配列要素同士の値を加算し、得られた加算結果に基づいて前記ブロックごとの水平方向動きベクトルを算出する加算手段と、前記加算手段で算出された前記ブロックごとの水平方向動きベクトルに基づき、フレーム画像全体の水平方向動きベクトルを検出する検出手段とを備え、前記検出手段は、前記最大値取得手段で得られた前記後フレーム射影データの前記最大値、前記加算手段で得られた前記加算結果および前記特定手段で得られた前記交差点情報のうち少なくとも1つを用いて前記ブロックごとの水平方向動きベクトルの信頼性評価を行う。   The motion vector detection device according to claim 1 according to the present invention is a motion vector detection device for detecting a motion vector between frame images related to a previous frame and a rear frame that are in a time series relationship, and is a horizontal line. Edge enhancement means for emphasizing the edge in the vertical direction for each block divided into a plurality of blocks having a constant division width in the vertical direction with respect to a frame image read out by sequentially repeating pixel scanning in the vertical direction; Projecting means for projecting in the vertical direction for each block, and generating projection data having a data arrangement for one horizontal line in each of the blocks, with respect to the subsequent frame Maximum value obtaining means for obtaining a maximum value in the array element of the post-frame projection data obtained by the projecting means; A waveform obtained by graphing array element values in the order of elements of the data array with respect to the previous frame projection data obtained by the projecting means with respect to the previous frame intersects with a straight line where the array element value is a predetermined constant value. Specifying means for specifying the position of the array element at each intersection to output as intersection information, and extracting means for extracting a data array in a predetermined range centered on the position of the array element at each intersection from the post-frame projection data And for each data array in a predetermined range extracted by the extraction means, add values of array elements having the same relative position to the position of the array element at each intersection, and based on the obtained addition result, An adder for calculating a horizontal motion vector for each block, and a frame image based on the horizontal motion vector for each block calculated by the adder. Detecting means for detecting an entire horizontal motion vector, wherein the detecting means includes the maximum value of the post-frame projection data obtained by the maximum value obtaining means, the addition result obtained by the adding means, and The reliability of the horizontal motion vector for each block is evaluated using at least one of the intersection information obtained by the specifying means.

本発明に係る請求項10記載の動きベクトル検出装置は、時系列的に前後の関係となる前フレームと後フレームとに関するフレーム画像間の動きベクトルを検出する動きベクトル検出装置であって、水平ラインの画素走査を垂直方向に順に繰り返すことによって読み出されるフレーム画像に関して、水平方向に一定の分割幅を有して複数に分割されたブロックごとに水平方向のエッジを強調するエッジ強調手段と、前記エッジ強調手段でエッジが強調された画像について、前記ブロックごとに水平方向に射影をとり、前記ブロックのそれぞれで1垂直ライン分のデータ配列を有する射影データを生成する射影手段と、前記後フレームに対して前記射影手段で得られた後フレーム射影データの配列要素において最大値を求める最大値取得手段と、前記前フレームに対して前記射影手段で得られた前フレーム射影データに関して前記データ配列の要素順に配列要素の値をグラフ化した波形と、配列要素の値が所定の一定値となる直線とが交差する各交差点の配列要素の位置を特定して交差点情報として出力する特定手段と、前記各交差点の配列要素の位置を中心とした所定範囲のデータ配列を、前記後フレーム射影データから抽出する抽出手段と、前記抽出手段で抽出された所定範囲のデータ配列それぞれについて、前記各交差点の配列要素の位置に対して相対位置が同じ配列要素同士の値を加算し、得られた加算結果に基づいて前記ブロックごとの垂直方向動きベクトルを算出する加算手段と、前記加算手段で算出された前記ブロックごとの垂直方向動きベクトルに基づき、フレーム画像全体の垂直方向動きベクトルを検出する検出手段とを備え、前記検出手段は、前記最大値取得手段で得られた前記後フレーム射影データの前記最大値、前記加算手段で得られた前記加算結果および前記特定手段で得られた前記交差点情報のうち少なくとも1つを用いて前記ブロックごとの垂直方向動きベクトルの信頼性評価を行う。   The motion vector detection device according to claim 10 according to the present invention is a motion vector detection device for detecting a motion vector between frame images related to a preceding frame and a following frame which are in a time series front-rear relationship. Edge enhancement means for enhancing a horizontal edge for each block divided into a plurality of blocks having a constant division width in the horizontal direction with respect to a frame image read by sequentially repeating pixel scanning in the vertical direction; Projecting means for projecting in the horizontal direction for each block and generating projection data having a data arrangement for one vertical line in each of the blocks for the image whose edges are enhanced by the enhancing means, and for the subsequent frame Maximum value obtaining means for obtaining a maximum value in the array element of the post-frame projection data obtained by the projection means A waveform obtained by graphing array element values in the order of the elements of the data array with respect to the previous frame projection data obtained by the projecting means with respect to the previous frame intersects with a straight line where the array element value is a predetermined constant value. Specifying means for specifying the position of the array element at each intersection to output as intersection information, and extracting means for extracting a data array in a predetermined range centered on the position of the array element at each intersection from the post-frame projection data And for each data array in a predetermined range extracted by the extraction means, add values of array elements having the same relative position to the position of the array element at each intersection, and based on the obtained addition result, An adder that calculates a vertical motion vector for each block, and a frame based on the vertical motion vector for each block calculated by the adder. Detecting means for detecting a vertical motion vector of the entire image, wherein the detecting means is the maximum value of the post-frame projection data obtained by the maximum value obtaining means, and the addition result obtained by the adding means. Then, at least one of the intersection information obtained by the specifying means is used to evaluate the reliability of the vertical motion vector for each block.

本発明に係る請求項1記載の動きベクトル検出装置によれば、検出手段において、最大値取得手段で得られた後フレーム射影データの最大値、加算手段で得られた加算結果および特定手段で得られた交差点情報のうち少なくとも1つを用いてブロックごとの水平方向動きベクトルの信頼性評価を行うので、信頼性の低いブロックから得られた水平方向動きベクトルを除外することで、結果的に、信頼性の高いフレーム画像全体の水平方向動きベクトルを算出することができる。   According to the motion vector detection apparatus of the first aspect of the present invention, the detection means obtains the maximum value of the post-frame projection data obtained by the maximum value acquisition means, the addition result obtained by the addition means, and the identification means. Since the reliability of the horizontal motion vector for each block is evaluated using at least one of the obtained intersection information, by excluding the horizontal motion vector obtained from the low-reliability block, as a result, It is possible to calculate the horizontal motion vector of the entire frame image with high reliability.

本発明に係る請求項10記載の動きベクトル検出装置によれば、検出手段において、最大値取得手段で得られた後フレーム射影データの最大値、加算手段で得られた加算結果および特定手段で得られた交差点情報のうち少なくとも1つを用いてブロックごとの垂直方向動きベクトルの信頼性評価を行うので、信頼性の低いブロックから得られた垂直方向動きベクトルを除外することで、結果的に、信頼性の高いフレーム画像全体の垂直向動きベクトルを算出することができる。   According to the motion vector detecting device of the present invention, the detecting means obtains the maximum value of the post-frame projection data obtained by the maximum value obtaining means, the addition result obtained by the adding means and the specifying means. Since the reliability evaluation of the vertical motion vector for each block is performed using at least one of the obtained intersection information, by excluding the vertical motion vector obtained from the low-reliability block, as a result, It is possible to calculate the vertical motion vector of the entire frame image with high reliability.

<実施の形態1>
<動きベクトル検出装置の構成>
図1は、本発明の実施の形態1に係る動きベクトル検出装置1の要部構成を示すブロック図である。
<Embodiment 1>
<Configuration of motion vector detection device>
FIG. 1 is a block diagram showing a main configuration of a motion vector detection device 1 according to Embodiment 1 of the present invention.

動きベクトル検出装置1は、例えば動画像において画面内の被写体の動きを表す画像動きベクトルを検出するものであり、時系列的に前後の関係となる前フレームと後フレームとに関するフレーム画像間の動きベクトルが検出される。この動きベクトル検出装置1で検出された動きベクトルはビデオカメラの手振れ補正などに利用される。なお、動きベクトル検出装置1に入力されるフレーム画像は、図2に示すように水平方向の画素走査および垂直方向のライン走査を行うことによって読み出されるものとする。   The motion vector detection device 1 detects, for example, an image motion vector that represents the motion of a subject in a screen in a moving image, and the motion between frame images related to a previous frame and a subsequent frame that are in a chronological order. A vector is detected. The motion vector detected by the motion vector detection device 1 is used for camera shake correction of the video camera. Note that the frame image input to the motion vector detection device 1 is read out by performing horizontal pixel scanning and vertical line scanning as shown in FIG.

動きベクトル検出装置1は、入力端子11と、水平方向動きベクトル検出部2および垂直方向動きベクトル検出部4と、2つの出力端子12、13とを備えている。この水平方向動きベクトル検出部2および垂直方向動きベクトル検出部4については、その機能が例えばマイクロプロセッサによってソフトウェア的に実現されても良く、また大半をハードウェア(一部をソフトウェア)で実現するようにしても良い。もちろん、全機能をハードウェアで実現しても良いことは言うまでもない。   The motion vector detection device 1 includes an input terminal 11, a horizontal direction motion vector detection unit 2 and a vertical direction motion vector detection unit 4, and two output terminals 12 and 13. The functions of the horizontal motion vector detection unit 2 and the vertical motion vector detection unit 4 may be realized by software by, for example, a microprocessor, and most of the functions are realized by hardware (partly software). Anyway. Of course, it goes without saying that all functions may be realized by hardware.

入力端子11には、例えばビデオカメラ内の撮像素子で取得された画像(動画像)データやビデオ信号などの画像データが入力される。入力端子11に入力された画像データは、水平方向動きベクトル検出部2において水平方向の動きベクトルが検出され、その検出された水平方向動きベクトルが出力端子12から出力される。   For example, image data such as image (moving image) data or a video signal acquired by an image sensor in a video camera is input to the input terminal 11. In the image data input to the input terminal 11, a horizontal motion vector is detected by the horizontal motion vector detection unit 2, and the detected horizontal motion vector is output from the output terminal 12.

一方、垂直方向動きベクトル検出部4では、入力端子11に入力された画像データについて垂直方向の動きベクトルが検出される。この垂直方向動きベクトル検出部4で検出された垂直方向動きベクトルは、出力端子13から出力される。   On the other hand, the vertical motion vector detector 4 detects a vertical motion vector for the image data input to the input terminal 11. The vertical motion vector detected by the vertical motion vector detection unit 4 is output from the output terminal 13.

以下では、水平方向動きベクトル検出部2と垂直方向動きベクトル検出部4との構成を順に説明する。   Below, the structure of the horizontal direction motion vector detection part 2 and the vertical direction motion vector detection part 4 is demonstrated in order.

図3は、水平方向動きベクトル検出部2の要部構成を示すブロック図である。
水平方向動きベクトル検出部2は、入力端子20と、垂直方向画像分割部21と、垂直方向エッジ抽出フィルタリング部22と、垂直方向ブロック射影部23と、第1の垂直方向ブロック射影データ最大値保存部24と、ビット数削減部25と、第1の垂直方向ブロック射影ラインメモリ26とを備えている。また、水平方向動きベクトル検出部2は、第2の垂直方向ブロック射影ラインメモリ27と、第2の垂直方向ブロック射影データ最大値保存部28と、第1の閾値交差点探索部29と、垂直方向ブロック射影データ読み出し部30と、垂直方向ブロック水平方向動きベクトル算出部31と、水平方向動きベクトル決定部32と、出力端子33とを備えている。以上の水平方向動きベクトル検出部2の各部位について、その機能を簡単に説明する(具体的な動作は後で詳述する)。
FIG. 3 is a block diagram showing the main configuration of the horizontal motion vector detection unit 2.
The horizontal motion vector detection unit 2 includes an input terminal 20, a vertical image segmentation unit 21, a vertical edge extraction filtering unit 22, a vertical block projection unit 23, and a first vertical block projection data maximum value storage. A unit 24, a bit number reduction unit 25, and a first vertical block projection line memory 26. The horizontal motion vector detection unit 2 includes a second vertical block projection line memory 27, a second vertical block projection data maximum value storage unit 28, a first threshold intersection search unit 29, and a vertical direction. A block projection data reading unit 30, a vertical block horizontal motion vector calculating unit 31, a horizontal motion vector determining unit 32, and an output terminal 33 are provided. The function of each part of the horizontal motion vector detection unit 2 described above will be briefly described (specific operations will be described in detail later).

垂直方向画像分割部21は、入力端子20に入力されたフレーム画像を垂直方向に分割し、垂直方向に分割したブロック(以下では「垂直方向ブロック」とも称する)を出力する。   The vertical image dividing unit 21 divides the frame image input to the input terminal 20 in the vertical direction and outputs a block divided in the vertical direction (hereinafter also referred to as “vertical block”).

垂直方向エッジ抽出フィルタリング部22は、垂直方向画像分割部21で分割されたブロックごとにエッジ抽出を行うためのフィルタリング処理を行う。   The vertical edge extraction filtering unit 22 performs a filtering process for performing edge extraction for each block divided by the vertical image dividing unit 21.

垂直方向ブロック射影部23は、垂直方向エッジ抽出フィルタリング部22から出力されるエッジ強調済みの垂直方向ブロックについて垂直方向に射影をとり、垂直方向ブロックごとに射影データを出力する。   The vertical block projection unit 23 projects the edge-enhanced vertical block output from the vertical edge extraction filtering unit 22 in the vertical direction and outputs projection data for each vertical block.

第1の垂直方向ブロック射影データ最大値保存部24は、垂直方向ブロック射影部23から出力された現フレームの垂直方向ブロックの射影データにおける絶対値の最大値を保存する。また、第1の垂直方向ブロック射影データ最大値保存部24は、現フレームの垂直方向ブロックの射影データ(以下では「第1の垂直方向ブロック射影データ」とも言う)の最大値に基づき、後述する第2の閾値を算出する。   The first vertical block projection data maximum value storage unit 24 stores the maximum absolute value in the vertical block projection data of the current frame output from the vertical block projection unit 23. The first vertical block projection data maximum value storage unit 24 is described later based on the maximum value of the projection data of the vertical block of the current frame (hereinafter also referred to as “first vertical block projection data”). A second threshold value is calculated.

ビット数削減部25は、第1の垂直方向ブロック射影データ最大値保存部24に保存された第1の垂直方向ブロック射影データの最大値に基づき、垂直方向ブロック射影部23から出力された垂直方向ブロックの射影データのビット数を削減する。   Based on the maximum value of the first vertical block projection data stored in the first vertical block projection data maximum value storage unit 24, the bit number reduction unit 25 uses the vertical direction output from the vertical block projection unit 23. Reduce the number of bits in the projection data of the block.

第1の垂直方向ブロック射影ラインメモリ26は、ビット数削減部25でビット数が削減された第1の垂直方向ブロック射影データを保存する。   The first vertical block projection line memory 26 stores the first vertical block projection data whose bit number has been reduced by the bit number reduction unit 25.

第2の垂直方向ブロック射影ラインメモリ27は、第1の垂直方向ブロック射影ラインメモリ26から送られた垂直方向ブロック射影データを、前フレームの垂直方向ブロックの射影データ(以下では「第2の垂直方向ブロック射影データ」とも言う)として保存する。   The second vertical block projection line memory 27 converts the vertical block projection data sent from the first vertical block projection line memory 26 into the projection data of the vertical block of the previous frame (hereinafter referred to as “second vertical block projection data”). It is also saved as “direction block projection data”.

第2の垂直方向ブロック射影データ最大値保存部28は、第1の垂直方向ブロック射影データ最大値保存部24から出力された垂直方向ブロックの射影データの最大値を、前フレームに関する第2の垂直方向ブロック射影データの最大値として保存する。また、第2の垂直方向ブロック射影データ最大値保存部28は、第2の垂直方向ブロック射影データの最大値に基づき、後述する第1の閾値を算出する。   The second vertical block projection data maximum value storage unit 28 uses the maximum value of the projection data of the vertical block output from the first vertical block projection data maximum value storage unit 24 as the second vertical block projection data. Save as the maximum value of direction block projection data. Further, the second vertical block projection data maximum value storage unit 28 calculates a first threshold, which will be described later, based on the maximum value of the second vertical block projection data.

第1の閾値交差点探索部29は、第2の垂直方向ブロック射影ラインメモリ27に保存される前フレームに係る第2の垂直方向ブロック射影データの波形と、第2の垂直方向ブロック射影データ最大値保存部28で算出された第1の閾値とが交差する点を求め、この交差点(以下では「第1の閾値交差点」とも言う)の情報を出力する。   The first threshold value intersection search unit 29 calculates the waveform of the second vertical block projection data related to the previous frame stored in the second vertical block projection line memory 27 and the second vertical block projection data maximum value. A point where the first threshold value calculated by the storage unit 28 intersects is obtained, and information on this intersection (hereinafter also referred to as “first threshold value intersection”) is output.

垂直方向ブロック射影データ読み出し部30は、第1の閾値交差点探索部29で求められた第1の閾値交差点を中心に、その前後の所定範囲(動きベクトル検出範囲)内にある第1の垂直方向ブロック射影データを、第1の垂直方向ブロック射影ラインメモリ26から読み出す。   The vertical block projection data reading unit 30 has a first vertical direction within a predetermined range (motion vector detection range) before and after the first threshold intersection obtained by the first threshold intersection search unit 29. The block projection data is read from the first vertical block projection line memory 26.

垂直方向ブロック水平方向動きベクトル算出部31は、第1の垂直方向ブロック射影データ最大値保存部24から出力される第2の閾値を用い、垂直方向ブロック射影データ読み出し部30で読み出された第1の垂直方向ブロック射影データそれぞれをn値化(nは2以上の整数)してビット数の削減を行うとともに、n値化された射影データを第1の閾値交差点からの距離ごとに加算する。   The vertical block horizontal motion vector calculation unit 31 uses the second threshold output from the first vertical block projection data maximum value storage unit 24 and reads the first block read by the vertical block projection data reading unit 30. Each vertical block projection data of 1 is converted into n-values (n is an integer of 2 or more) to reduce the number of bits, and the n-valued projection data is added for each distance from the first threshold intersection. .

水平方向動きベクトル決定部32は、垂直方向ブロック水平方向動きベクトル算出部31からの出力に基づき画像の水平方向動きベクトルを決定する。ここで決定された画像の水平方向動きベクトルは出力端子33から出力される。なお、水平方向動きベクトル決定部32は、第1の垂直方向ブロック射影データ最大値保存部24に保存された、第1の垂直方向ブロック射影データの最大値および第1の閾値交差点探索部29から出力される第1の閾値交差点の情報を受けて、水平方向動きベクトルの信頼性を高める処理に使用する構成となっている。   The horizontal motion vector determination unit 32 determines the horizontal motion vector of the image based on the output from the vertical block horizontal motion vector calculation unit 31. The horizontal motion vector of the image determined here is output from the output terminal 33. The horizontal motion vector determination unit 32 receives the maximum value of the first vertical block projection data and the first threshold value intersection search unit 29 stored in the first vertical block projection data maximum value storage unit 24. It is configured to receive information on the output first threshold value intersection and use it for processing to improve the reliability of the horizontal motion vector.

図4は、垂直方向ブロック射影部23の要部構成を示すブロック図である。
垂直方向ブロック射影部23は、入力端子231と、1水平ラインずつデータ加算を行う加算器232と、加算器232で加算されたデータを逐次保存するバッファメモリとしての垂直方向射影一時記憶メモリ233と、出力端子234とを備えている。
FIG. 4 is a block diagram showing a main configuration of the vertical block projection unit 23.
The vertical block projection unit 23 includes an input terminal 231, an adder 232 that performs data addition for each horizontal line, and a vertical projection temporary storage memory 233 as a buffer memory that sequentially stores data added by the adder 232. And an output terminal 234.

入力端子231には、垂直方向エッジ抽出フィルタリング部22で垂直方向のエッジが強調された画像が垂直方向ブロックごとに入力される。入力端子231に入力された画像は、垂直方向ブロックごとに加算器232および垂直方向射影一時記憶メモリ233によって垂直方向に射影がとられる。具体的には、加算器232において垂直方向ブロックの1水平ライン分のデータと、垂直方向射影一時メモリ233から読み出された1水平ライン分のデータとが加算され、加算結果が垂直方向射影一時記憶メモリ233に再び戻されて記憶される。このような加算動作が繰り返されることにより垂直方向ブロックにおける全ての水平ラインの加算が終了すると、全水平ラインの加算データ、つまり垂直方向の射影データが出力端子234から出力されることとなる。   The input terminal 231 receives an image in which vertical edges are emphasized by the vertical edge extraction filtering unit 22 for each vertical block. The image input to the input terminal 231 is projected in the vertical direction by the adder 232 and the vertical projection temporary storage memory 233 for each vertical block. Specifically, the adder 232 adds the data for one horizontal line of the vertical block and the data for one horizontal line read from the vertical projection temporary memory 233, and the addition result is the vertical projection temporary. It is returned again to the storage memory 233 and stored. When the addition of all the horizontal lines in the vertical block is completed by repeating such an addition operation, the addition data of all the horizontal lines, that is, the projection data in the vertical direction is output from the output terminal 234.

図5は、垂直方向ブロック水平方向動きベクトル算出部31の要部構成を示すブロック図である。   FIG. 5 is a block diagram illustrating a main configuration of the vertical block horizontal motion vector calculation unit 31.

垂直方向ブロック水平方向動きベクトル算出部31は、3つの入力端子311〜313と、n値化器314と、n値化器314でn値化された第1の垂直方向ブロック射影データの加算を行う加算器315と、加算器315で加算されたデータを逐次保存するバッファメモリとしての水平方向動きベクトル加算メモリ316と、ピーク検出器317と、出力端子318および319とを備えている。   The vertical block horizontal motion vector calculation unit 31 adds three input terminals 311 to 313, an n-value calculator 314, and the first vertical block projection data converted to n-value by the n-value generator 314. An adder 315 to be performed, a horizontal motion vector addition memory 316 as a buffer memory for sequentially storing data added by the adder 315, a peak detector 317, and output terminals 318 and 319 are provided.

入力端子311には、垂直方向ブロック射影データ読み出し部30から出力された第1の垂直方向ブロック射影データが入力され、入力端子312には、第1の垂直方向ブロック射影データ最大値保存部24から出力された第2の閾値が入力される。また、入力端子313には、第1の閾値交差点探索部29から出力された第1の閾値交差点の情報が入力される。   The first vertical block projection data output from the vertical block projection data reading unit 30 is input to the input terminal 311, and the first vertical block projection data maximum value storage unit 24 is input to the input terminal 312. The output second threshold value is input. In addition, the first threshold value intersection information output from the first threshold value intersection search unit 29 is input to the input terminal 313.

n値化器314は、入力端子311から入力された第1の垂直方向ブロック射影データを、入力端子312から入力される第2の閾値に基づいてn値化(例えば3値化)する。   The n-value converter 314 converts the first vertical block projection data input from the input terminal 311 into n-values (for example, ternarization) based on the second threshold value input from the input terminal 312.

加算器315は、n値化器314でn値化された第1の垂直方向ブロック射影データと、水平方向動きベクトル加算メモリ316から読み出されたデータとを第1の閾値交差点を中心として加算し、加算結果を水平方向動きベクトル加算メモリ316に再び記憶させる。このような加算動作が繰り返されることにより垂直方向ブロックに関する全ての第1の閾値交差点についての加算が終了すると、垂直方向ブロックに関する加算データがピーク検出器317に出力される。   The adder 315 adds the first vertical block projection data n-valued by the n-value calculator 314 and the data read from the horizontal motion vector addition memory 316 around the first threshold intersection. Then, the addition result is stored in the horizontal motion vector addition memory 316 again. When the addition for all the first threshold intersections related to the vertical block is completed by repeating such an addition operation, the addition data related to the vertical block is output to the peak detector 317.

ピーク検出器317は、加算器315から出力された加算データにおけるピーク位置(後述する水平方向動きベクトル)とピーク値とを検出する。このピーク検出器317で検出されたピーク位置は、出力端子318を介して水平方向動きベクトル決定部32に入力され、ピーク値は出力端子319を介して水平方向動きベクトル決定部32に入力されることとなる。   The peak detector 317 detects a peak position (horizontal motion vector to be described later) and a peak value in the addition data output from the adder 315. The peak position detected by the peak detector 317 is input to the horizontal direction motion vector determination unit 32 via the output terminal 318, and the peak value is input to the horizontal direction motion vector determination unit 32 via the output terminal 319. It will be.

次に、垂直方向動きベクトル検出部4の構成を説明する。
図6は、垂直方向動きベクトル検出部4の要部構成を示すブロック図である。
Next, the configuration of the vertical motion vector detection unit 4 will be described.
FIG. 6 is a block diagram showing a main configuration of the vertical motion vector detection unit 4.

垂直方向動きベクトル検出部4は、入力端子40と、水平方向画像分割部41と、水平方向エッジ抽出フィルタリング部42と、水平方向ブロック射影部43と、第1の水平方向ブロック射影ラインメモリ44と、第1の水平方向ブロック射影データ最大値保存部45とを備えている。また、垂直方向動きベクトル検出部4は、第2の水平方向ブロック射影ラインメモリ46と、第2の水平方向ブロック射影データ最大値保存部47と、第3の閾値交差点探索部48と、水平方向ブロック射影データ読み出し部49と、水平方向ブロック垂直方向動きベクトル算出部50と、垂直方向動きベクトル決定部51と、出力端子52とを備えている。以上の垂直方向動きベクトル検出部4の各部位について、その機能を簡単に説明する(具体的な動作は後で詳述する)。   The vertical motion vector detection unit 4 includes an input terminal 40, a horizontal image segmentation unit 41, a horizontal edge extraction filtering unit 42, a horizontal block projection unit 43, and a first horizontal block projection line memory 44. The first horizontal block projection data maximum value storage unit 45 is provided. The vertical motion vector detection unit 4 includes a second horizontal block projection line memory 46, a second horizontal block projection data maximum value storage unit 47, a third threshold intersection search unit 48, and a horizontal direction. A block projection data reading unit 49, a horizontal block vertical motion vector calculation unit 50, a vertical motion vector determination unit 51, and an output terminal 52 are provided. The function of each part of the above-described vertical motion vector detection unit 4 will be briefly described (specific operations will be described in detail later).

水平方向画像分割部41は、入力端子40に入力されたフレーム画像を水平方向に分割し、水平方向に分割したブロック(以下では「水平方向ブロック」とも称する)を出力する。   The horizontal image dividing unit 41 divides the frame image input to the input terminal 40 in the horizontal direction and outputs a block divided in the horizontal direction (hereinafter also referred to as “horizontal block”).

水平方向エッジ抽出フィルタリング部42は、水平方向画像分割部41で分割されたブロックごとにエッジ抽出を行うためのフィルタリング処理を行う。   The horizontal direction edge extraction filtering unit 42 performs a filtering process for performing edge extraction for each block divided by the horizontal direction image dividing unit 41.

水平方向ブロック射影部43は、水平方向エッジ抽出フィルタリング部42から出力されるエッジ強調済みの水平方向ブロックについて水平方向に射影をとり、水平方向ブロックごとに射影データを出力する。   The horizontal block projection unit 43 projects the edge-emphasized horizontal block output from the horizontal edge extraction filtering unit 42 in the horizontal direction, and outputs projection data for each horizontal block.

第1の水平方向ブロック射影ラインメモリ44は、水平方向ブロック射影部43から出力された水平方向ブロックの射影データを、現フレームの水平方向ブロック射影データ(以下では「第1の水平方向ブロック射影データ」とも言う)として保存する。   The first horizontal block projection line memory 44 converts the horizontal block projection data output from the horizontal block projection unit 43 into the horizontal block projection data of the current frame (hereinafter referred to as “first horizontal block projection data”). "Also called").

第1の水平方向ブロック射影データ最大値保存部45は、水平方向ブロック射影部43から出力された現フレームの水平方向ブロックの射影データの最大値を保存する。   The first horizontal block projection data maximum value storage unit 45 stores the maximum value of the horizontal block projection data of the current frame output from the horizontal block projection unit 43.

第2の水平方向ブロック射影ラインメモリ46は、第1の水平方向ブロック射影ラインメモリ44から送られた水平方向ブロック射影データを、前フレームの水平方向ブロックの射影データ(以下では「第2の水平方向ブロック射影データ」とも言う)として保存する。   The second horizontal block projection line memory 46 converts the horizontal block projection data sent from the first horizontal block projection line memory 44 into projection data (hereinafter referred to as “second horizontal block projection data” of the horizontal block of the previous frame). It is also saved as “direction block projection data”.

第2の水平方向ブロック射影データ最大値保存部47は、第1の水平方向ブロック射影データ最大値保存部45から出力された水平方向ブロックの射影データの最大値を、前フレームに関する第2の水平方向ブロック射影データの最大値として保存する。また、第2の水平方向ブロック射影データ最大値保存部47は、前フレームに関する第2の水平方向ブロック射影データの最大値に基づき、後述する第3の閾値および第4の閾値を算出する。   The second horizontal block projection data maximum value storage unit 47 uses the maximum value of the horizontal block projection data output from the first horizontal block projection data maximum value storage unit 45 as the second horizontal block projection data maximum value for the previous frame. Save as the maximum value of direction block projection data. The second horizontal block projection data maximum value storage unit 47 calculates a third threshold value and a fourth threshold value, which will be described later, based on the maximum value of the second horizontal block projection data regarding the previous frame.

第3の閾値交差点探索部48は、第2の水平方向ブロック射影ラインメモリ46に保存される前フレームに係る第2の水平方向ブロック射影データと、第2の水平方向ブロック射影データ最大値保存部47で算出された第3の閾値とが交差する点を求め、この交差点(以下では「第3の閾値交差点」とも言う)の情報を出力する。   The third threshold intersection search unit 48 includes a second horizontal block projection data related to the previous frame stored in the second horizontal block projection line memory 46, and a second horizontal block projection data maximum value storage unit. The point where the third threshold value calculated at 47 intersects is obtained, and information on this intersection (hereinafter also referred to as “third threshold value intersection”) is output.

水平方向ブロック射影データ読み出し部49は、第3の閾値交差点探索部48で求められた第3の閾値交差点を中心に、その前後の所定範囲(動きベクトル検出範囲)内にある第1の水平方向ブロック射影データを、第1の水平方向ブロック射影ラインメモリ44から読み出す。   The horizontal block projection data reading unit 49 has a first horizontal direction within a predetermined range (motion vector detection range) before and after the third threshold intersection obtained by the third threshold intersection search unit 48. Block projection data is read from the first horizontal block projection line memory 44.

水平方向ブロック垂直方向動きベクトル算出部50は、第2の水平方向ブロック射影データ最大値保存部47から出力される第4の閾値を用い、水平方向ブロック射影データ読み出し部49で読み出された第1の水平方向ブロック射影データそれぞれをn値化(nは2以上の整数)してビット数の削減を行うとともに、n値化された射影データを第3の閾値交差点からの距離ごとに加算する。   The horizontal block vertical motion vector calculation unit 50 uses the fourth threshold value output from the second horizontal block projection data maximum value storage unit 47, and is read by the horizontal block projection data read unit 49. Each horizontal block projection data of 1 is converted into n-values (n is an integer of 2 or more) to reduce the number of bits, and the n-valued projection data is added for each distance from the third threshold intersection. .

垂直方向動きベクトル決定部51は、水平方向ブロック垂直方向動きベクトル算出部50からの出力に基づき画像の垂直方向動きベクトルを決定する。ここで決定された画像の垂直方向動きベクトルは出力端子52から出力される。なお、垂直方向動きベクトル決定部51は、第1の水平方向ブロック射影データ最大値保存部45に保存された、第1の水平方向ブロック射影データの最大値および第3の閾値交差点探索部48から出力される第3の閾値交差点の情報を受けて、垂直方向動きベクトルの信頼性を高める処理に使用する構成となっている。   The vertical motion vector determination unit 51 determines the vertical motion vector of the image based on the output from the horizontal block vertical motion vector calculation unit 50. The vertical motion vector of the image determined here is output from the output terminal 52. Note that the vertical direction motion vector determination unit 51 receives the maximum value of the first horizontal block projection data stored in the first horizontal block projection data maximum value storage unit 45 and the third threshold value intersection search unit 48. It is configured to receive information on the output third threshold intersection and use it for processing to increase the reliability of the vertical motion vector.

図7は、水平方向ブロック射影部43の要部構成を示すブロック図である。
水平方向ブロック射影部43は、入力端子431と、水平方向ブロックの1水平ラインデータの加算を行う加算器432と、加算器432で加算されたデータを逐次保存するバッファメモリとしての水平方向射影一時記憶メモリ433と、出力端子434とを備えている。
FIG. 7 is a block diagram showing a main configuration of the horizontal block projection unit 43.
The horizontal block projection unit 43 includes an input terminal 431, an adder 432 for adding one horizontal line data of the horizontal block, and a horizontal projection temporary as a buffer memory for sequentially storing the data added by the adder 432. A storage memory 433 and an output terminal 434 are provided.

入力端子431には、水平方向エッジ抽出フィルタリング部42で水平方向のエッジが強調された画像が入力される。入力端子431に入力された画像は、水平方向ブロックごとに加算器432および水平方向射影一時記憶メモリ433によって水平方向に射影がとられる。具体的には、水平方向ブロック内の1水平ラインの画素について、入力端子431から入力された画素と、前画素までに加算器432で加算され水平方向射影一時記憶メモリ433に記憶された加算結果を、加算器432で加算し、その加算結果を再び水平方向射影一時記憶メモリ433に戻し記憶する。このような加算動作が繰り返されることにより水平方向ブロックにおける1水平ラインの加算が終了すると、その水平方向ブロックの1水平ラインの全画素の加算データ、つまり水平方向の射影データが出力端子434から出力されることとなる。以下、同様にして、次の水平方向ブロックの水平方向の射影データが処理され、1水平ラインについて全ての水平方向ブロックの処理が終了すると、次の1水平ラインの処理がなされる。   The input terminal 431 receives an image in which horizontal edges are emphasized by the horizontal edge extraction filtering unit 42. The image input to the input terminal 431 is projected in the horizontal direction by the adder 432 and the horizontal projection temporary storage memory 433 for each horizontal block. Specifically, with respect to the pixels of one horizontal line in the horizontal block, the addition result that is added by the adder 432 and stored in the horizontal projection temporary storage memory 433 up to the previous pixel and the pixel input from the input terminal 431. Are added by the adder 432, and the addition result is returned to the horizontal projection temporary storage memory 433 and stored. When the addition of one horizontal line in the horizontal block is completed by repeating such an addition operation, the addition data of all the pixels in one horizontal line of the horizontal block, that is, the projection data in the horizontal direction is output from the output terminal 434. Will be. Thereafter, similarly, the projection data in the horizontal direction of the next horizontal block is processed, and when the processing of all the horizontal blocks for one horizontal line is completed, the processing of the next one horizontal line is performed.

図8は、水平方向ブロック垂直方向動きベクトル算出部50の要部構成を示すブロック図である。   FIG. 8 is a block diagram showing a main configuration of the horizontal block vertical motion vector calculation unit 50.

水平方向ブロック垂直方向動きベクトル算出部50は、3つの入力端子501〜503と、n値化器504と、n値化器504でn値化された第1の水平方向ブロック射影データの加算を行う加算器505と、加算器505で加算されたデータを逐次保存するバッファメモリとしての垂直方向動きベクトル加算メモリ506と、ピーク検出器507と、出力端子508および509とを備えている。   The horizontal block vertical motion vector calculation unit 50 adds three input terminals 501 to 503, an n-value converter 504, and the first horizontal block projection data converted to n-value by the n-value generator 504. An adder 505 to be performed, a vertical motion vector addition memory 506 as a buffer memory for sequentially storing data added by the adder 505, a peak detector 507, and output terminals 508 and 509 are provided.

入力端子501には、水平方向ブロック射影データ読み出し部49から出力された第1の水平方向ブロック射影データが入力され、入力端子502には、第2の水平方向ブロック射影データ最大値保存部47から出力された第4の閾値が入力される。また、入力端子503には、第3の閾値交差点探索部48から出力された第3の閾値交差点の情報が入力される。   The first horizontal block projection data output from the horizontal block projection data reading unit 49 is input to the input terminal 501, and the second horizontal block projection data maximum value storage unit 47 is input to the input terminal 502. The output fourth threshold value is input. In addition, the information about the third threshold value intersection output from the third threshold value intersection search unit 48 is input to the input terminal 503.

n値化器504は、入力端子501から入力された第1の水平方向ブロック射影データを、入力端子502から入力される第4の閾値に基づいてn値化(例えば3値化)する。   The n-value converter 504 converts the first horizontal block projection data input from the input terminal 501 into n-values (for example, ternarization) based on the fourth threshold value input from the input terminal 502.

加算器505は、n値化器504でn値化された第1の水平方向ブロック射影データと、垂直方向動きベクトル加算メモリ506から読み出されたデータとを第3の閾値交差点を中心として加算し、加算結果を垂直方向動きベクトル加算メモリ506に再び記憶させる。このような加算動作が繰り返されることにより水平方向ブロックに関する全ての第3の閾値交差点についての加算が終了すると、水平方向ブロックに関する加算データがピーク検出器507に出力される。   The adder 505 adds the first horizontal block projection data converted to the n-value by the n-value generator 504 and the data read from the vertical motion vector addition memory 506 around the third threshold value intersection. Then, the addition result is stored in the vertical motion vector addition memory 506 again. When the addition for all the third threshold intersections regarding the horizontal block is completed by repeating such an addition operation, the addition data regarding the horizontal block is output to the peak detector 507.

ピーク検出器507は、加算器505から出力された加算データにおけるピーク位置(後述する垂直方向動きベクトル)とピーク値とを検出する。このピーク検出器507で検出されたピーク位置は、出力端子508を介して垂直方向動きベクトル決定部51に入力され、ピーク値は出力端子509を介して水平方向動きベクトル決定部32に入力されることとなる。   The peak detector 507 detects a peak position (vertical motion vector to be described later) and a peak value in the addition data output from the adder 505. The peak position detected by the peak detector 507 is input to the vertical direction motion vector determination unit 51 via the output terminal 508, and the peak value is input to the horizontal direction motion vector determination unit 32 via the output terminal 509. It will be.

以上のような構成を有する動きベクトル検出装置1の動作について、以下で説明する。   The operation of the motion vector detection apparatus 1 having the above configuration will be described below.

<動きベクトル検出装置1の動作>
<水平方向動きベクトル検出部2の動作>
まず、動きベクトル検出装置1において画像の水平方向の動きベクトルを検出する水平方向動きベクトル検出部2の動作を説明する。
<Operation of Motion Vector Detection Device 1>
<Operation of Horizontal Motion Vector Detection Unit 2>
First, the operation of the horizontal motion vector detection unit 2 that detects the horizontal motion vector of an image in the motion vector detection device 1 will be described.

図2のように水平ラインの画素走査を垂直方向に順に繰り返すことによって読み出されるフレーム画像が、図3に示す水平方向動きベクトル検出部2の入力端子20に入力されると、垂直方向画像分割部21で垂直方向にブロック分割される。すなわち、垂直方向画像分割部21においては、フレーム画像において垂直方向に分割して得られる複数の画像領域(垂直方向ブロック)が設定される。これにより、以降の処理では、垂直方向ブロックごとに処理および管理が行われることとなる。   As shown in FIG. 2, when a frame image read out by sequentially repeating pixel scanning of the horizontal line in the vertical direction is input to the input terminal 20 of the horizontal direction motion vector detecting unit 2 shown in FIG. 21 is divided into blocks in the vertical direction. That is, in the vertical image dividing unit 21, a plurality of image regions (vertical blocks) obtained by dividing the frame image in the vertical direction are set. As a result, in the subsequent processing, processing and management are performed for each vertical block.

垂直方向画像分割部21では、例えば図9(a)に示すように640画素×480画素の画像データが、垂直方向に64画素の幅(分割幅)を有した7個の垂直方向ブロックvb0〜vb6に分割される。なお、垂直方向の最下段の画像データvb7は水平方向動きベクトルの検出において利用されないこととなるが、フレーム画像の大部分を占める7つの垂直方向ブロックvb0〜vb6が水平方向動きベクトルの検出に使用されるため、検出精度の面で特に問題はないと考えられる。ここで、図9(a)に示す分割幅および分割数とするのは必須でない。   In the vertical image division unit 21, for example, as shown in FIG. 9A, image data of 640 pixels × 480 pixels is converted into seven vertical blocks vb0 to vb0 having a width of 64 pixels (division width) in the vertical direction. Divided into vb6. Although the image data vb7 at the lowest stage in the vertical direction is not used in the detection of the horizontal motion vector, the seven vertical blocks vb0 to vb6 occupying most of the frame image are used for the detection of the horizontal motion vector. Therefore, it is considered that there is no particular problem in terms of detection accuracy. Here, it is not essential to set the division width and the number of divisions shown in FIG.

垂直方向画像分割部21で図9(a)のように7個の垂直方向ブロックvb0〜vb6に分割された画像は、垂直方向エッジ抽出フィルタリング部22において垂直方向に延びるエッジ成分の抽出、換言すれば水平方向に急峻に変化する画像部分を強調するようなフィルタリング処理が施される。   The image divided by the vertical image dividing unit 21 into seven vertical blocks vb0 to vb6 as shown in FIG. 9A is extracted, in other words, edge components extending in the vertical direction by the vertical edge extraction filtering unit 22. For example, a filtering process for emphasizing an image portion that changes sharply in the horizontal direction is performed.

このフィルタリング処理で用いられるフィルタとしては、単純に水平方向に隣接する画素との差分を取る(1,−1)の2タップフィルタや、2次微分に相当する(−1,2,−1)の3タップフィルタなどの使用が可能である。なお、このようなフィルタを使用するのは必須でなく、水平方向に輝度変化が大きくなる画像部分において出力値が上昇するフィルタであれば良い。   As a filter used in this filtering processing, a (1, -1,) 2-tap filter that simply takes a difference from a pixel adjacent in the horizontal direction, or (-1, 2, -1) corresponding to a second order differential. It is possible to use a 3-tap filter. Note that it is not essential to use such a filter, and any filter may be used as long as the output value increases in an image portion where the luminance change in the horizontal direction increases.

垂直方向エッジ抽出フィルタリング部22で各垂直方向ブロック(画像領域)vb0〜vb6ごとに垂直方向のエッジが強調された画像データは、垂直方向ブロック射影部23に入力され、垂直方向ブロック射影部23で垂直方向に射影される。この射影により、垂直方向の(ライン間で)ノイズ成分を低減でき、また垂直方向のエッジ成分をより強調できるため、特徴点に対応する垂直方向エッジを際立たせて動きベクトル検出精度の向上を図れることとなる。垂直方向ブロック射影部23の動作について、図9(b)の概念図を参照しつつ説明する。   The image data in which the vertical edge is emphasized for each of the vertical blocks (image regions) vb0 to vb6 by the vertical edge extraction filtering unit 22 is input to the vertical block projection unit 23, and the vertical block projection unit 23 Projected vertically. This projection can reduce the noise component in the vertical direction (between lines) and can enhance the edge component in the vertical direction, so that the vertical edge corresponding to the feature point can be emphasized to improve the motion vector detection accuracy. It will be. The operation of the vertical block projection unit 23 will be described with reference to the conceptual diagram of FIG.

垂直方向ブロック射影部23では、図9(a)に示す各垂直方向ブロックvb0〜vb6の入力が完了した時点、つまりエッジ強調された各垂直方向ブロックvb0〜vb6における最終ラインの最終画素が入力された時点で、1水平ライン分のデータ配列Mvを有する垂直方向ブロック射影データvn0〜vn6(図9(b))それぞれの全配列要素が生成される。なお、データ配列Mvは、水平ラインの全画素数(例えば640)の配列要素を有しているが、(1,−1)のような2タップフィルタでは有効要素が水平ラインの全画素数−1(例えば639)、(−1,2,−1)のような3タップフィルタでは有効要素が水平ラインの全画素数−2(例えば638)となる。   In the vertical block projection unit 23, when the input of the vertical blocks vb0 to vb6 shown in FIG. 9A is completed, that is, the final pixels of the final line in the vertical blocks vb0 to vb6 with edge enhancement are input. At this point, all array elements of the vertical direction block projection data vn0 to vn6 (FIG. 9B) having the data array Mv for one horizontal line are generated. The data array Mv has array elements of the total number of pixels on the horizontal line (for example, 640). However, in a 2-tap filter such as (1, -1), the effective element is the total number of pixels of the horizontal line − In a 3-tap filter such as 1 (for example, 639) and (−1, 2, −1), the effective elements are the total number of pixels in the horizontal line−2 (for example, 638).

具体的には、図4に示すように入力端子231を介して入力された各垂直方向ブロックvb0〜vb6の画像データ(垂直方向のエッジ強調が施された画像データ)が、順次に加算器232に入力される。   Specifically, as shown in FIG. 4, the image data of the vertical blocks vb0 to vb6 (image data subjected to vertical edge emphasis) input via the input terminal 231 are sequentially added to the adder 232. Is input.

加算器232では、まず入力された垂直方向ブロックの先頭の水平ラインが、垂直方向射影一時記憶メモリ233内のデータを読み出すことなく、垂直方向射影一時記憶メモリ233に書き込まれる。次に、加算器232では、垂直方向射影一時記憶メモリ233に記憶されている前ラインまでの加算結果を読み出し、入力端子231から入力される垂直方向ブロックの水平1ラインとの加算を行って、その加算結果を垂直方向射影一時記憶メモリ233に書き戻す。   In the adder 232, first, the first horizontal line of the input vertical block is written into the vertical projection temporary storage memory 233 without reading the data in the vertical projection temporary storage memory 233. Next, the adder 232 reads the addition result up to the previous line stored in the vertical projection temporary storage memory 233, performs addition with the horizontal one line of the vertical block input from the input terminal 231, and The addition result is written back to the vertical projection temporary storage memory 233.

そして、垂直方向ブロックにおける最終の水平ラインが加算器232に入力されると、垂直方向射影一時記憶メモリ233に保存された前ラインまでの加算結果を読み出し、入力端子231から入力される垂直方向ブロックの最終ラインとの加算を行って、その加算結果、つまり垂直方向ブロックの全ての水平ラインが加算されたデータを垂直方向ブロックの射影データとして、出力端子234から第1の垂直方向ブロック射影データ最大値保存部24とビット数削減部25とに出力する。   When the final horizontal line in the vertical block is input to the adder 232, the addition result up to the previous line stored in the vertical projection temporary storage memory 233 is read and the vertical block input from the input terminal 231 is read. And the addition result, that is, the data obtained by adding all the horizontal lines of the vertical block is used as projection data of the vertical block, and the first vertical block projection data maximum from the output terminal 234 is obtained. The data is output to the value storage unit 24 and the bit number reduction unit 25.

なお、加算器232において垂直方向ブロックの全水平ラインが加算された射影データを垂直方向射影一時記憶メモリ233に一旦記憶させ、次の垂直方向ブロックの先頭ラインが入力される際に、垂直方向射影一時記憶メモリ233内の射影データを読み出して出力端子234から出力するようにしても良い。   The adder 232 temporarily stores the projection data obtained by adding all the horizontal lines of the vertical block in the vertical projection temporary storage memory 233, and when the first line of the next vertical block is input, the vertical projection is performed. The projection data in the temporary storage memory 233 may be read and output from the output terminal 234.

第1の垂直方向ブロック射影データ最大値保存部24では、垂直方向ブロック射影部23から出力された垂直方向ブロックの射影データに関する最大値を算出し、現フレームの垂直方向ブロック射影データ最大値として保存する。すなわち、第1の垂直方向ブロック射影データ最大値保存部24は、現フレーム(後フレーム)の射影データに関するデータ配列Mv(図9(b))の配列要素において最大値を求め、この最大値を記憶する。   The first vertical block projection data maximum value storage unit 24 calculates the maximum value related to the projection data of the vertical block output from the vertical block projection unit 23 and stores it as the vertical block projection data maximum value of the current frame. To do. That is, the first vertical block projection data maximum value storage unit 24 obtains the maximum value in the array element of the data array Mv (FIG. 9B) relating to the projection data of the current frame (subsequent frame), and calculates this maximum value. Remember.

また、第1の垂直方向ブロック射影データ最大値保存部24では、算出された現フレームの垂直方向ブロック射影データ最大値に基づき、第2の閾値を算出する。例えば、現フレームの垂直方向ブロックの射影データに関する最大値をP1maxとすると、第2の閾値α2は次の式(1)で算出される。   Further, the first vertical block projection data maximum value storage unit 24 calculates the second threshold value based on the calculated vertical block projection data maximum value of the current frame. For example, if the maximum value regarding the projection data of the vertical block of the current frame is P1max, the second threshold value α2 is calculated by the following equation (1).

α2=P1max×k1・・・・・・・・(1)   α2 = P1max × k1 (1)

ここで、k1は予め定められた係数で、0<k1<1である。   Here, k1 is a predetermined coefficient, and 0 <k1 <1.

なお、第2の閾値α2の演算は、上式(1)に限るものではなく、現フレームの垂直方向ブロック射影データ最大値P1maxが大きくなれば第2の閾値α2が大きくなるものであれば良く、また変換テーブルを使用しても良い。   Note that the calculation of the second threshold value α2 is not limited to the above equation (1), and it is sufficient that the second threshold value α2 increases as the vertical block projection data maximum value P1max of the current frame increases. Alternatively, a conversion table may be used.

ビット数削減部25では、第1の垂直方向ブロック射影データ最大値保存部24から入力された現フレームの垂直方向ブロック射影データの最大値に基づき射影データの有効ビットレンジを決定する。そして、この有効ビットレンジに基づき設定される上位無効ビットおよび下位無効ビットを垂直方向ブロック射影部23から入力された垂直方向ブロック射影データから削減し、有効ビットのみで構成される現フレームの垂直方向ブロック射影データを第1の垂直方向ブロック射影ラインメモリ26に出力する。   The bit number reduction unit 25 determines the effective bit range of the projection data based on the maximum value of the vertical block projection data of the current frame input from the first vertical block projection data maximum value storage unit 24. Then, the upper invalid bit and the lower invalid bit set based on the valid bit range are reduced from the vertical block projection data input from the vertical block projection unit 23, and the vertical direction of the current frame configured only by the valid bits The block projection data is output to the first vertical block projection line memory 26.

第1の垂直方向ブロック射影ラインメモリ26は、ビット数削減部25によってビット数が低減された現フレームの垂直方向ブロック射影データを、第1の垂直方向ブロック射影データとして垂直方向ブロックごとに保存する。すなわち、第1の垂直方向ブロック射影ラインメモリ26には、第1の垂直方向ブロック射影データ最大値保存部24で求められた射影データの最大値に基づきビット数削減部25においてビット数(各配列要素のデータ長)が削減された現フレーム(後フレーム)の射影データが記憶される。   The first vertical block projection line memory 26 stores the vertical block projection data of the current frame whose number of bits has been reduced by the bit number reduction unit 25 for each vertical block as first vertical block projection data. . That is, the first vertical block projection line memory 26 stores the number of bits (each array in the bit number reduction unit 25 based on the maximum value of the projection data obtained by the first vertical block projection data maximum value storage unit 24. Projection data of the current frame (subsequent frame) in which the element data length) is reduced is stored.

第1の垂直方向ブロック射影ラインメモリ26は、現フレームに関する新たな第1の垂直方向ブロック射影データが入力されるタイミングで、前フレームの垂直方向ブロック射影データを読み出し、第2の垂直方向ブロック射影ラインメモリ27に与える。第2の垂直方向ブロック射影ラインメモリ27は、第1の垂直方向ブロック射影ラインメモリ26から読み出された前フレームの垂直方向ブロック射影データを、第2の垂直方向ブロック射影データとして保存する。   The first vertical block projection line memory 26 reads the vertical block projection data of the previous frame at a timing when new first vertical block projection data relating to the current frame is input, and the second vertical block projection This is given to the line memory 27. The second vertical block projection line memory 27 stores the vertical block projection data of the previous frame read from the first vertical block projection line memory 26 as second vertical block projection data.

同様に、第1の垂直方向ブロック射影データ最大値保存部24は、現フレームに関する新たな第1の垂直方向ブロック射影データの最大値が入力されるタイミングで、前フレームの垂直方向ブロック射影データの最大値を読み出し、第2の垂直方向ブロック射影データ最大値保存部28に与える。第2の垂直方向ブロック射影データ最大値保存部28では、第1の垂直方向ブロック射影データ最大値保存部24から読み出された前フレームの垂直方向ブロック射影データの最大値が、前フレームに関する第2の垂直方向ブロック射影データの最大値として保存される。   Similarly, the first vertical block projection data maximum value storage unit 24 receives the vertical block projection data of the previous frame at the timing when the new maximum value of the first vertical block projection data for the current frame is input. The maximum value is read out and given to the second vertical block projection data maximum value storage unit 28. In the second vertical block projection data maximum value storage unit 28, the maximum value of the vertical block projection data of the previous frame read from the first vertical block projection data maximum value storage unit 24 is the first value related to the previous frame. 2 is stored as the maximum value of the vertical block projection data.

換言すれば、第1の垂直方向ブロック射影データ最大値保存部24に保存された現フレームの垂直方向ブロック射影データの最大値は、次のフレームでは、第2の垂直方向ブロック射影データ最大値保存部28に前フレームの垂直方向ブロック射影データの最大値として保存されることとなる。   In other words, the maximum value of the vertical block projection data of the current frame stored in the first vertical block projection data maximum value storage unit 24 is the second vertical block projection data maximum value of the next frame. This is stored in the unit 28 as the maximum value of the vertical block projection data of the previous frame.

第2の垂直方向ブロック射影データ最大値保存部28は、前フレームに関する第2の垂直方向ブロック射影データの最大値に基づき、第1の閾値(所定の一定値)が設定される。例えば、前フレームの垂直方向ブロック射影データの最大値をP2maxとすると、第1の閾値α1は次の式(2)で算出される。   The second vertical block projection data maximum value storage unit 28 sets a first threshold value (predetermined constant value) based on the maximum value of the second vertical block projection data regarding the previous frame. For example, assuming that the maximum value of the vertical block projection data of the previous frame is P2max, the first threshold value α1 is calculated by the following equation (2).

α1=P2max×k2・・・・・・・・(2)   α1 = P2max × k2 (2)

ここで、k2は予め定められた係数で、0<k2<1である。   Here, k2 is a predetermined coefficient, and 0 <k2 <1.

なお、第1の閾値α1の演算は、上式(2)に限るものではなく、前フレームの垂直方向ブロック射影データ最大値P2maxが大きくなれば第1の閾値α1が大きくなるものであれば良く、また変換テーブルを使用しても良い。   Note that the calculation of the first threshold value α1 is not limited to the above equation (2), and it is sufficient if the first threshold value α1 increases as the vertical block projection data maximum value P2max of the previous frame increases. Alternatively, a conversion table may be used.

第1の閾値交差点探索部29では、第2の垂直方向ブロック射影ラインメモリ27から読み出された第2の垂直方向ブロック射影データと、第2の垂直方向ブロック射影データ最大値保存部28から出力された第1の閾値との交差点(第1の閾値交差点)を水平方向に探索する。この第1の閾値交差点探索部29で得られた第1の閾値交差点の情報は、垂直方向ブロック射影データ読み出し部30と垂直方向ブロック水平方向動きベクトル算出部31とに出力される。   The first threshold intersection search unit 29 outputs the second vertical block projection data read from the second vertical block projection line memory 27 and the second vertical block projection data maximum value storage unit 28. An intersection with the first threshold value (first threshold value intersection) is searched in the horizontal direction. The information on the first threshold intersection obtained by the first threshold intersection searching unit 29 is output to the vertical block projection data reading unit 30 and the vertical block horizontal motion vector calculating unit 31.

垂直方向ブロック射影データ読み出し部30は、第1の閾値交差点探索部29から出力された第1の閾値交差点を中心とした動きベクトル検出範囲に対応した現フレームの(第1の)垂直方向ブロック射影データを第1の垂直方向ブロック射影ラインメモリ26から読み出す。すなわち、第1の閾値交差点をA(i)(ただしi=1,2,・・・pで、pは検出された第1の閾値交差点の総数)とし、動きベクトル検出範囲を第1の閾値交差点を中心とした(−V)から(+V)(ただしVは正の整数)の範囲とすると、第1の垂直方向ブロック射影ラインメモリ26から読み出される射影データは、水平方向において(A(i)−V)から(A(i)+V)までの範囲にある第1の垂直方向ブロック射影データの部分データとなる。   The vertical block projection data read unit 30 outputs the (first) vertical block projection of the current frame corresponding to the motion vector detection range centered on the first threshold intersection output from the first threshold intersection search unit 29. Data is read from the first vertical block projection line memory 26. That is, the first threshold intersection is A (i) (where i = 1, 2,... P, p is the total number of detected first threshold intersections), and the motion vector detection range is the first threshold. Assuming the range from (−V) to (+ V) (where V is a positive integer) centered on the intersection, the projection data read from the first vertical block projection line memory 26 is (A (i ) −V) to (A (i) + V), which is partial data of the first vertical block projection data.

この垂直方向ブロック射影データ読み出し部30によって第1の垂直方向ブロック射影ラインメモリ26から読み出された第1の垂直方向ブロック射影データは、垂直方向ブロック水平方向動きベクトル算出部31に出力される。   The first vertical block projection data read from the first vertical block projection line memory 26 by the vertical block projection data reading unit 30 is output to the vertical block horizontal motion vector calculation unit 31.

垂直方向ブロック射影データ読み出し部30から出力された第1の垂直方向ブロック射影データは、図5に示す垂直方向ブロック水平方向動きベクトル算出部31の入力端子311を介してn値化器314に入力される。このn値化器314では、第1の垂直方向ブロック射影データ最大値保存部24から出力され、入力端子312を介して入力された第2の閾値に基づき、第1の垂直方向ブロック射影データをn値化する。すなわち、n値化器314は、垂直方向ブロック射影データ読み出し部30で抽出された現フレームの射影データに関するデータ配列Mv(図9(b))各配列要素のデータ長を、例えば3値化処理して圧縮する。このn値化器314の処理について、図10を参照しつつ説明する。   The first vertical block projection data output from the vertical block projection data reading unit 30 is input to the n-value converter 314 via the input terminal 311 of the vertical block horizontal motion vector calculation unit 31 shown in FIG. Is done. The n-value converter 314 outputs the first vertical block projection data based on the second threshold value output from the first vertical block projection data maximum value storage unit 24 and input via the input terminal 312. n-valued. In other words, the n-value converter 314 converts the data length of each array element related to the projection data of the current frame extracted by the vertical block projection data reading unit 30 to the data length of each array element, for example, a ternization process. And compress. The processing of the n-value converter 314 will be described with reference to FIG.

図10は、n値化器314におけるn値化処理を説明するための図である。なお、図10では、n=3となる3値化処理の一例を示している。   FIG. 10 is a diagram for explaining the n-value conversion processing in the n-value conversion device 314. Note that FIG. 10 shows an example of the ternary processing where n = 3.

n値化器314に入力される第1の垂直方向ブロック射影データをD、入力端子312を介して入力される第2の閾値をα2(α2は正の整数)とすると、n値化器314では、D<(−α2)のとき(−1)を出力し、(−α2)≦D≦α2のとき0を出力するとともに、D>α2のとき1を出力することで3値化処理が行われる。すなわち、n値化器314における3値化処理では、現フレーム(後フレーム)の射影データにおけるデータ配列Mvの配列要素の最大値に基づき設定される第2の閾値α2(α2>0)に関して、垂直方向ブロック射影データ読み出し部30で抽出された現フレームの射影データに関する配列要素の値が、(−α2)より小さい場合、(−α2)以上でα2以下の場合、およびα2より大きい場合の3段階による3値化が行われる。   If the first vertical block projection data input to the n-value converter 314 is D, and the second threshold value input via the input terminal 312 is α2 (α2 is a positive integer), the n-value generator 314 Then, when D <(− α2), (−1) is output, when (−α2) ≦ D ≦ α2, 0 is output, and when D> α2, 1 is output. Done. That is, in the ternarization process in the n-valued unit 314, regarding the second threshold value α2 (α2> 0) set based on the maximum value of the array element of the data array Mv in the projection data of the current frame (subsequent frame), 3 when the value of the array element relating to the projection data of the current frame extracted by the vertical block projection data reading unit 30 is smaller than (−α2), (−α2) or more and α2 or less, and 3 Trinization is performed in stages.

このn値化器314でのn値化処理については、垂直方向ブロック射影データ読み出し部30から出力される現フレームの第1の垂直方向ブロック射影データの部分波形が、第1の閾値交差点に対してどのような位置関係、つまりどのような傾向の波形となっているのかが重要であるため、第1の垂直方向ブロック射影データの波形において山や谷が判別できるだけのビット精度を確保すれば十分である。   With regard to the n-value conversion processing by the n-value generator 314, the partial waveform of the first vertical block projection data of the current frame output from the vertical block projection data reading unit 30 is compared with the first threshold intersection. Therefore, it is important to ensure bit accuracy that can identify peaks and valleys in the waveform of the first vertical block projection data. It is.

一方、n値化器314においてビット数の削減を行わずに、垂直方向ブロック射影データ読み出し部30から出力された第1の垂直方向ブロック射影データの値そのものを採用する場合には、第1の垂直方向ブロック射影データD>α2に対応する大きな振幅の山や、D<(−α2)に対応する大きな振幅の谷に、画像の特徴が表れる小さな振幅の山や谷が埋没してしまう恐れがあり不適切である。さらに、(−α2)≦D≦α2に対応する小さな山や谷は、ノイズの影響を受けやすく数も多いため、これに画像の特徴が表れる適度な振幅の山や谷が埋もれることとなる。   On the other hand, when the value of the first vertical block projection data output from the vertical block projection data reading unit 30 is adopted without reducing the number of bits in the n-value converter 314, the first There is a possibility that a small amplitude peak or valley corresponding to the vertical block projection data D> α2 or a small amplitude peak corresponding to D <(− α2) or a small amplitude peak corresponding to D <(− α2) may be buried. There is inappropriate. Furthermore, since the small peaks and valleys corresponding to (−α2) ≦ D ≦ α2 are easily affected by noise and have a large number, the peaks and valleys having an appropriate amplitude in which the characteristics of the image appear are buried.

よって、n値化器314では、第1の垂直方向ブロック射影データに対して適切なn値化処理を施すことにより、動きベクトルの検出精度の向上を図っている。   Therefore, the n-value generator 314 improves the motion vector detection accuracy by performing an appropriate n-value process on the first vertical block projection data.

以上で説明した第1の閾値交差点探索部29、垂直方向ブロック射影データ読み出し部30および垂直方向ブロック水平方向動きベクトル算出部31の動作について、図11(a)、図11(b)および図11(c)を参照しつつ具体的に説明する。なお、図11(a)および図11(b)の横軸は、射影データのデータ配列Mv(図9(b))の配列要素の位置を示している。また、図11(a)では、第1の閾値交差点A(1)〜A(8)それぞれを丸印で表している。   The operations of the first threshold intersection searching unit 29, the vertical block projection data reading unit 30, and the vertical block horizontal motion vector calculating unit 31 described above are shown in FIGS. 11 (a), 11 (b), and 11. This will be specifically described with reference to (c). Note that the horizontal axes of FIGS. 11A and 11B indicate the positions of the array elements of the projection data array Mv (FIG. 9B). In FIG. 11A, each of the first threshold intersections A (1) to A (8) is indicated by a circle.

第1の閾値交差点探索部29では、図11(a)に示すように前フレームに関する第2の垂直方向ブロック射影データW2の波形において、第2の垂直方向ブロック射影データ最大値保存部28から出力された第1の閾値α1と交差する第1の閾値交差点A(1)〜A(8)が求められる。すなわち、第1の閾値交差点探索部29は、前フレームに対して垂直方向ブロック射影部23で得られた射影データに関して射影データのデータ配列Mv(図9(b))の要素順に配列要素の値をグラフ化した波形W2と、配列要素の値が第1の閾値(所定の一定値)α1となる直線とが交差する各第1の閾値交差点の配列要素の位置を特定する。   The first threshold value intersection search unit 29 outputs the second vertical block projection data maximum value storage unit 28 in the waveform of the second vertical block projection data W2 for the previous frame as shown in FIG. First threshold value intersections A (1) to A (8) that intersect the first threshold value α1 thus obtained are obtained. That is, the first threshold value intersection search unit 29 relates to the projection data obtained by the vertical block projection unit 23 with respect to the previous frame, and the array element values in the order of the elements in the projection data array Mv (FIG. 9B). The position of the array element at each first threshold value intersection where the waveform W2 in which the value of the array element intersects the straight line where the value of the array element is the first threshold value (predetermined constant value) α1 is specified.

次に、垂直方向ブロック射影データ読み出し部30では、図11(a)に示す各第1の閾値交差点A(1)〜A(8)を中心とした所定の動きベクトル検出範囲について第1の垂直方向ブロック射影ラインメモリ26から現フレームの垂直方向ブロック射影データが読み出される。すなわち、垂直方向ブロック射影データ読み出し部30は、各第1の閾値交差点における射影データ(データ配列)の配列要素の位置を中心とした所定範囲のデータ配列を、垂直方向ブロック射影部23から出力されビット数削減部25によりビット数が削減された現フレーム(後フレーム)の射影データから抽出する。例えば第1の閾値交差点A(7)に関しては、図11(b)に示すように第1の閾値交差点A(7)を中心に(A(7)−V)から(A(7)+V)までの範囲(矩形の破線内の波形部分)に対応する第1の垂直方向ブロック射影データW1が読み出される。   Next, the vertical block projection data reading unit 30 performs the first vertical detection for a predetermined motion vector detection range centered on each of the first threshold intersections A (1) to A (8) shown in FIG. The vertical block projection data of the current frame is read from the direction block projection line memory 26. That is, the vertical block projection data reading unit 30 outputs from the vertical block projection unit 23 a data array in a predetermined range centered on the position of the array element of the projection data (data array) at each first threshold intersection. Extracted from the projection data of the current frame (subsequent frame) whose bit number has been reduced by the bit number reduction unit 25. For example, for the first threshold value intersection A (7), as shown in FIG. 11B, the first threshold value intersection A (7) is centered on (A (7) -V) to (A (7) + V). The first vertical block projection data W1 corresponding to the range up to (the waveform portion within the rectangular broken line) is read out.

そして、垂直方向ブロック射影データ読み出し部30によって読み出された第1の垂直方向ブロック射影データは、第1の垂直方向ブロック射影データ最大値保存部24から出力された第2の閾値α2を用いて、垂直方向ブロック水平方向動きベクトル算出部31のn値器314でn値化処理される。例えば第1の閾値交差点A(7)に関しては、図11(b)に示す第2の閾値α2および(−α2)に対する第1の垂直方向ブロック射影データW1の大小関係に基づき、第1の閾値交差点A(7)を中心に(A(7)−V)から(A(7)+V)までの範囲(矩形の破線内の波形部分)について、図11(c)のように第1の垂直方向ブロック射影データが3値化処理される。これにより、現フレームの垂直方向ブロック射影データが「−1」、「0」または「1」で表されることとなる。   Then, the first vertical block projection data read by the vertical block projection data reading unit 30 uses the second threshold value α2 output from the first vertical block projection data maximum value storage unit 24. The n-value unit 314 of the vertical block horizontal direction motion vector calculation unit 31 performs n-value processing. For example, for the first threshold intersection A (7), the first threshold is based on the magnitude relationship of the first vertical block projection data W1 with respect to the second threshold α2 and (−α2) shown in FIG. With respect to the range from (A (7) −V) to (A (7) + V) centering on the intersection A (7) (the waveform portion in the rectangular broken line), the first vertical as shown in FIG. The direction block projection data is ternarized. As a result, the vertical block projection data of the current frame is represented by “−1”, “0”, or “1”.

n値化器314では、第1の閾値交差点探索部29から出力される全ての第1の閾値交差点について、図11(c)に示すようなn値化処理が行われる。   In the n-value converter 314, n-value conversion processing as shown in FIG. 11C is performed on all the first threshold value intersections output from the first threshold value intersection search unit 29.

次に、加算器315(図5)では、入力端子313を介して第1の閾値交差点探索部29から出力された第1の閾値交差点を中心に、n値化器314でn値化された第1の垂直方向ブロック射影データと、水平方向動きベクトル加算メモリ316から読み出された1つ前までのn値化された第1の垂直方向ブロック射影データの加算値とを加算し、その加算結果を水平方向動きベクトル加算メモリ316に再び記憶させる。そして、第1の閾値交差点探索部29で検出された全ての第1の閾値交差点のうち最後のものに関するn値化された第1の垂直方向ブロック射影データを加算器315で加算して1つの垂直方向ブロックについての加算処理を終了する際には、その加算結果をピーク検出器317に出力するようにする。なお、加算器315での加算処理終了後に、全ての第1の閾値交差点に関する加算結果を記憶している水平方向動きベクトル加算メモリ316から、その加算結果をピーク検出部317が読み出すようにしても良い。   Next, in the adder 315 (FIG. 5), the n-value generator 314 converts the n-value into the n-value centering on the first threshold-value intersection output from the first threshold-value intersection search unit 29 via the input terminal 313. The first vertical block projection data is added to the addition value of the first n-valued first vertical block projection data read from the horizontal motion vector addition memory 316 and added. The result is stored again in the horizontal motion vector addition memory 316. Then, the adder 315 adds the n-valued first vertical block projection data relating to the last one of all the first threshold intersections detected by the first threshold intersection search unit 29 to obtain one When the addition process for the vertical block is terminated, the addition result is output to the peak detector 317. In addition, after the addition process in the adder 315 is completed, the peak detection unit 317 may read the addition result from the horizontal motion vector addition memory 316 that stores the addition results regarding all the first threshold intersections. good.

ピーク検出器317には、第1の閾値交差点探索部29で検出された全ての第1の閾値交差点について各第1の閾値交差点を中心とした動きベクトル検出範囲(上述した±Vの範囲)に対応するn値化済みの第1の垂直方向ブロック射影データを加算したデータ(以下では「垂直方向ブロックn値化データ」とも言う)が入力されるが、この垂直方向ブロックn値化データに関するピーク値がピーク検出器317で検出される。このピーク検出器317において検出される垂直方向ブロックn値化データのピーク位置が、その垂直方向ブロックから得られる水平方向動きベクトルとなり、出力端子318を介して水平方向動き決定部32に出力される。同様に、そのときのピーク値は出力端子319から出力される。   The peak detector 317 includes all the first threshold intersections detected by the first threshold intersection search unit 29 in a motion vector detection range (the above-described ± V range) centered on each first threshold intersection. Data obtained by adding the corresponding n-valued first vertical block projection data (hereinafter also referred to as “vertical block n-valued data”) is input. The value is detected by peak detector 317. The peak position of the vertical block n-valued data detected by the peak detector 317 becomes a horizontal motion vector obtained from the vertical block, and is output to the horizontal motion determination unit 32 via the output terminal 318. . Similarly, the peak value at that time is output from the output terminal 319.

以上で説明した加算器315およびピーク検出部317の動作について、図12(a)および図12(b)を参照しつつ具体的に説明する。なお、図12(a)では、図11(a)に示す第1の閾値交差点A(1)〜A(8)を中心とした動きベクトル検出範囲(±Vの範囲)において第1の垂直方向ブロック射影データを3値化したものを概念的に示している。   The operations of the adder 315 and the peak detector 317 described above will be specifically described with reference to FIGS. 12 (a) and 12 (b). In FIG. 12A, in the motion vector detection range (± V range) centering on the first threshold intersections A (1) to A (8) shown in FIG. The block projection data is conceptually shown as three values.

加算器315において、図12(a)に示す第1の閾値交差点A(1)〜A(8)周辺の3値化データが順次に入力されると、これらのデータが加算され、図12(b)に示すような垂直方向ブロックn値化データが生成される。具体的には、加算器315において垂直方向ブロック射影データ読み出し部30により垂直方向ブロック射影データ(データ配列Mv(図9(b)))から抽出されn値器314でデータ長が圧縮された現フレームに係る動きベクトル検出範囲(所定範囲)のデータ配列それぞれについて、各第1の閾値交差点の配列要素の位置に対して相対位置が同じ配列要素同士の値が加算されることとなる。   In the adder 315, when ternary data around the first threshold intersections A (1) to A (8) shown in FIG. 12 (a) are sequentially input, these data are added, and FIG. Vertical block n-valued data as shown in b) is generated. Specifically, in the adder 315, the vertical block projection data reading unit 30 extracts the vertical block projection data (data array Mv (FIG. 9B)) and the n-value unit 314 compresses the data length. For each data array of the motion vector detection range (predetermined range) related to the frame, values of array elements having the same relative position with respect to the position of the array element at each first threshold intersection are added.

加算器315で生成された垂直方向ブロックn値化データがピーク検出器317に入力されると、その垂直方向ブロックの水平方向動きベクトルとして図12(b)に示す水平方向のピーク位置hvが検出される。すなわち、ピーク検出器317では、加算器315で加算された加算結果に基づき、フレーム画像の水平方向に関する動きベクトルが検出される。   When the vertical block n-valued data generated by the adder 315 is input to the peak detector 317, the horizontal peak position hv shown in FIG. 12B is detected as the horizontal motion vector of the vertical block. Is done. That is, the peak detector 317 detects a motion vector in the horizontal direction of the frame image based on the addition result added by the adder 315.

このピーク検出器317では、原則的に動きベクトル検出範囲(±Vの範囲)において最大値となるピーク位置が探索されるが、同一の最大値が複数ある場合には、原点0に近いもの(原点0までの距離が等しい場合には負の位置のもの)を優先する。なお、このようなピーク位置の検出ルールに限らず、正の位置にある最大値を優先しても良く、また前フレームにおける動きベクトルの傾向を現フレームのピーク位置の検出に利用するようにしても良い。   In principle, the peak detector 317 searches for a peak position having the maximum value in the motion vector detection range (± V range). If there are a plurality of the same maximum values, the peak detector 317 is close to the origin 0 ( If the distance to the origin 0 is the same, the negative position) is given priority. It should be noted that the maximum value at the positive position may be prioritized without being limited to such a peak position detection rule, and the tendency of the motion vector in the previous frame is used for detection of the peak position in the current frame. Also good.

ピーク検出器317で垂直方向ブロックごとに算出された水平方向動きベクトル(ピーク位置)と、垂直方向ブロックのn値化され加算された加算データのピーク値(以下、「垂直方向ブロックn値化加算データピーク値」とも言う)は、それぞれ出力端子318および319を介して水平方向動きベクトル決定部32に入力され、垂直方向ブロックn値化加算データピーク値は、垂直方向ブロックの有効/無効判定に使用される。   The horizontal motion vector (peak position) calculated for each vertical block by the peak detector 317 and the peak value of the added data obtained by adding the n-valued vertical block (hereinafter referred to as “vertical block n-valued addition”). The data peak value ”is also input to the horizontal direction motion vector determination unit 32 via the output terminals 318 and 319, respectively, and the vertical block n-valued addition data peak value is used to determine whether the vertical block is valid / invalid. used.

水平方向動きベクトル決定部32では、垂直方向ブロック水平方向動きベクトル算出部31から順次に出力される各垂直方向ブロックの水平方向動きベクトルに基づき、画像全体の水平方向動きベクトルが決定される。   In the horizontal direction motion vector determination unit 32, the horizontal direction motion vector of the entire image is determined based on the horizontal direction motion vector of each vertical direction block sequentially output from the vertical direction block horizontal direction motion vector calculation unit 31.

このとき、第1の垂直方向ブロック射影データ最大値保存部24から出力される第1の垂直方向ブロック射影データの最大値、垂直方向ブロック水平方向動きベクトル算出部31から出力される垂直方向ブロックn値化加算データピーク値および第1の閾値交差点探索手段29から出力される第1の閾値交差点の情報に基づいて各垂直方向ブロックの有効/無効を判定する。そして、無効ブロックと判定された垂直方向ブロックから算出された水平方向動きベクトルは画像全体の水平方向動きベクトルを決定する際には使用しないものとする。   At this time, the maximum value of the first vertical block projection data output from the first vertical block projection data maximum value storage unit 24, the vertical block n output from the vertical block horizontal motion vector calculation unit 31 The validity / invalidity of each vertical block is determined based on the value-added data peak value and the information on the first threshold intersection output from the first threshold intersection search means 29. The horizontal motion vector calculated from the vertical block determined as an invalid block is not used when determining the horizontal motion vector of the entire image.

<垂直方向ブロックの有効/無効の判定動作>
<第1の垂直方向ブロック射影データの最大値を用いる場合>
以下、各垂直方向ブロックの有効/無効を判定する方法について説明する。
図13は、第1の垂直方向ブロック射影データの最大値を用いて各垂直方向ブロックの有効/無効を判定する方法を説明する図である。
<Verification / invalidation judgment of vertical block>
<When using the maximum value of the first vertical block projection data>
Hereinafter, a method for determining validity / invalidity of each vertical block will be described.
FIG. 13 is a diagram illustrating a method for determining validity / invalidity of each vertical block using the maximum value of the first vertical block projection data.

図13においては、図9(a)に示した640画素×480画素の画像データを例に採り、垂直方向に64画素の幅(分割幅)を有した7個の垂直方向ブロックvb0〜vb6に分割した場合を示している。   In FIG. 13, the image data of 640 pixels × 480 pixels shown in FIG. 9A is taken as an example, and seven vertical blocks vb0 to vb6 having a width of 64 pixels (divided width) in the vertical direction are arranged. This shows the case of division.

また、図13においては、第1の垂直方向ブロック射影データ最大値保存部24(図3)から出力される各垂直方向ブロックの第1の垂直方向ブロック射影データの最大値を、各ブロックごとに16進数表記で示している。   In FIG. 13, the maximum value of the first vertical block projection data of each vertical block output from the first vertical block projection data maximum value storage unit 24 (FIG. 3) is set for each block. It is shown in hexadecimal notation.

水平方向動きベクトル決定部32では、各垂直方向ブロックvb0〜vb6における第1の垂直方向ブロック射影データの最大値の中から全ブロック中の最大値を求める。図13の例では、垂直方向ブロックvb2が全ブロック中の最大値を有しており、この値を全垂直方向ブロック射影データ最大値と呼称する。   The horizontal direction motion vector determination unit 32 obtains the maximum value in all the blocks from the maximum value of the first vertical direction block projection data in each of the vertical direction blocks vb0 to vb6. In the example of FIG. 13, the vertical block vb2 has the maximum value in all blocks, and this value is referred to as the total vertical block projection data maximum value.

また、水平方向動きベクトル決定部32では、全垂直方向ブロック射影データ最大値に対して、例えば1/4以下の最大値しか有さない垂直方向ブロックを無効ブロックとして判断する。図13の例では、垂直方向ブロックvb0、vb1およびvb6が無効ブロックと判断される。   Further, the horizontal direction motion vector determination unit 32 determines, for example, a vertical block having a maximum value of 1/4 or less as an invalid block with respect to the maximum value of all vertical block projection data. In the example of FIG. 13, the vertical blocks vb0, vb1, and vb6 are determined to be invalid blocks.

図14は、垂直方向ブロックの有効/無効の判定を模式的に示す図である。
図14においては、横軸を全垂直方向ブロック射影データ最大値とし、縦軸を第1の垂直方向ブロック射影データ最大値としたグラフを表しており、原点を起点とした傾き1/4(S=1/4)の直線を境にして、有効ブロックと無効ブロックとに分かれることが表されている。
FIG. 14 is a diagram schematically illustrating determination of validity / invalidity of a vertical block.
FIG. 14 shows a graph in which the horizontal axis is the maximum value of all vertical block projection data and the vertical axis is the first vertical block projection data maximum value, and the slope is 1/4 (S = 1/4) is divided into valid blocks and invalid blocks.

無効ブロックと判断される垂直方向ブロックは、絵柄として特徴の少ない(くっきりとした箇所が少ない)、あるいは、非常に細かい絵柄であると言うことができ、結果として、他の有効ブロックに対して信頼性が低いと判断できるものである。従って、無効ブロックと判断される垂直方向ブロックについては、画像全体の水平方向動きベクトルの決定には使用しないことで、水平方向動きベクトルの信頼性を高めることができる。   A vertical block that is determined to be an invalid block can be said to have a small feature (there are few clear parts) or a very fine design, and as a result, it can be trusted with respect to other valid blocks. It can be judged that the nature is low. Therefore, the reliability of the horizontal motion vector can be improved by not using the vertical block determined to be an invalid block for determining the horizontal motion vector of the entire image.

なお、上記においては、有効/無効の判定条件を、全垂直方向ブロック射影データ最大値の1/4以下として説明したが、これに限るものではなく、場合によっては1/2以下、あるいは1/8以下としても良い。このように、判定条件1/2nで設定することにより、有効、無効の判定を簡単に行うことが可能である。 In the above description, the valid / invalid determination condition is described as being ¼ or less of the maximum value of all vertical block projection data. However, the present invention is not limited to this, and may be ½ or less or 1 / It may be 8 or less. In this way, by setting with the determination condition 1/2 n , it is possible to easily determine whether it is valid or invalid.

<垂直方向ブロックn値化加算データピーク値を用いる場合>
図15は、垂直方向ブロックn値化加算データピーク値を用いて各垂直方向ブロックの有効/無効を判定する方法を説明する図である。
<When using vertical direction block n-valued addition data peak value>
FIG. 15 is a diagram for explaining a method of determining validity / invalidity of each vertical block using the vertical block n-valued addition data peak value.

図15においては、図9(a)に示した640画素×480画素の画像データを例に採り、垂直方向に64画素の幅(分割幅)を有した7個の垂直方向ブロックvb0〜vb6に分割した場合を示している。   In FIG. 15, the image data of 640 pixels × 480 pixels shown in FIG. 9A is taken as an example, and seven vertical blocks vb0 to vb6 having a width of 64 pixels (divided width) in the vertical direction. This shows the case of division.

また、図15においては、垂直方向ブロック水平方向動きベクトル算出部31(図3)から出力される各垂直方向ブロックの垂直方向ブロックn値化加算データピーク値を、各ブロックごとに16進数表記で示している。   In FIG. 15, the vertical block n-valued addition data peak value of each vertical block output from the vertical block horizontal motion vector calculation unit 31 (FIG. 3) is expressed in hexadecimal notation for each block. Show.

水平方向動きベクトル決定部32では、各垂直方向ブロックvb0〜vb6における垂直方向ブロックn値化加算データピーク値の中から最大値を求める。図15の例では、垂直方向ブロックvb4が最大値を有しており、この値を垂直方向ブロックn値化加算データピーク値の最大値と呼称する。   The horizontal direction motion vector determination unit 32 obtains the maximum value from the vertical direction block n-valued addition data peak values in the vertical direction blocks vb0 to vb6. In the example of FIG. 15, the vertical block vb4 has the maximum value, and this value is referred to as the maximum value of the vertical block n-valued addition data peak value.

また、水平方向動きベクトル決定部32では、垂直方向ブロックn値化加算データピーク値の最大値が所定値A(例えば、10進数表記で12)以上のとき、垂直方向ブロックn値化加算データが所定値B(例えば、10進数表記で7)以下の垂直方向ブロックを無効ブロックとして判断する。図15の例では、垂直方向ブロックvb0、vb1、vb5およびvb6が無効ブロックと判断される。   Further, in the horizontal direction motion vector determination unit 32, when the maximum value of the vertical direction block n-valued addition data peak value is equal to or greater than a predetermined value A (for example, 12 in decimal notation), the vertical direction block n-valued addition data is A vertical block having a predetermined value B (for example, 7 in decimal notation) or less is determined as an invalid block. In the example of FIG. 15, the vertical blocks vb0, vb1, vb5, and vb6 are determined as invalid blocks.

垂直方向ブロック水平方向動きベクトル算出部31(図3)の加算器315(図5)の出力は、第1の閾値交差点を中心に、第2の閾値でn値化された第1の垂直方向ブロック射影データを加算したものであり、第1の閾値交差点が多く、かつ、プラス側の第2の閾値(α2)を超える振幅(山)が多いほど大きな値となる。逆に、マイナス側の第2の閾値(−α2)を超える振幅があれば打ち消されることになる。   The output of the adder 315 (FIG. 5) of the vertical block horizontal direction motion vector calculation unit 31 (FIG. 3) is the first vertical direction centered on the first threshold intersection and n-valued with the second threshold. This is the sum of block projection data. The larger the number of first threshold intersections and the larger the amplitude (mountain) exceeding the second threshold (α2) on the plus side, the larger the value. On the contrary, if there is an amplitude exceeding the second threshold (−α2) on the minus side, it is canceled out.

言い換えれば、加算器315の出力の最大値、つまり、ある垂直方向ブロックの垂直方向ブロックn値化加算データピーク値が所定値A以上であり、その一方で、他の垂直方向ブロックの垂直方向ブロックn値化加算データピーク値が所定値B以下であるとき、当該他の垂直方向ブロックにおいては加算結果が打ち消される絵柄、あるいは、特徴が少なく、振幅が少ない絵柄であると言える。   In other words, the maximum value of the output of the adder 315, that is, the vertical block n-valued addition data peak value of a certain vertical block is equal to or greater than the predetermined value A, while the vertical blocks of other vertical blocks When the n-valued addition data peak value is equal to or less than the predetermined value B, it can be said that the other vertical block is a picture whose addition result is canceled or a picture with few features and small amplitude.

従って、垂直方向ブロックn値化加算データピーク値が、所定値B以下のブロックは、所定値A以上のブロックに比べて、信頼性が低いと判断でき、結果として、他の有効ブロックに対して信頼性が低いと判断できるものである。従って、無効ブロックと判断される垂直方向ブロックについては、画像全体の水平方向動きベクトルの決定には使用しないことで、水平方向動きベクトルの信頼性を高めることができる。   Accordingly, it can be determined that a block whose vertical block n-valued sum data peak value is less than or equal to the predetermined value B is less reliable than a block having the predetermined value A or more. It can be judged that the reliability is low. Therefore, the reliability of the horizontal motion vector can be improved by not using the vertical block determined to be an invalid block for determining the horizontal motion vector of the entire image.

図16は、垂直方向ブロックの有効/無効の判定を模式的に示す図である。
図16においては、横軸を垂直方向ブロックn値化加算データピーク値の最大値とし、縦軸を垂直方向ブロックn値化加算データピーク値としたグラフを表しており、垂直方向ブロックn値化加算データピーク値の最大値が所定値A以上のときは、垂直方向ブロックn値化加算データが所定値B以下の垂直方向ブロックを無効ブロックとして判断する動作が表されている。
FIG. 16 is a diagram schematically illustrating determination of validity / invalidity of a vertical block.
FIG. 16 shows a graph in which the horizontal axis represents the maximum value of the vertical block n-valued addition data peak value, and the vertical axis represents the vertical block n-value addition data peak value. When the maximum value of the added data peak value is equal to or greater than the predetermined value A, an operation is illustrated in which a vertical block whose vertical block n-valued added data is equal to or smaller than the predetermined value B is determined as an invalid block.

また、図16においては、垂直方向ブロックn値化加算データピーク値の最大値が所定値Aよりも小さい場合には、垂直方向ブロックn値化加算データピーク値が所定値B以下のブロックが存在しても、当該ブロックについては無効ブロックと判断しないという動作も表されている。   In FIG. 16, when the maximum value of the vertical block n-valued addition data peak value is smaller than the predetermined value A, there is a block whose vertical block n-valued addition data peak value is equal to or less than the predetermined value B. Even so, the operation of not determining that the block is an invalid block is also shown.

例えば、図15を例に採れば、垂直方向ブロックn値化加算データピーク値の最大値が7である場合は、垂直方向ブロックvb0、vb1、vb5およびvb6は無効ブロックとは判断されない。これは、垂直方向ブロックn値化加算データピーク値が最大値であるブロックに対して、相対的には信頼性が低いとは言えないからである。   For example, taking FIG. 15 as an example, if the maximum value of the vertical block n-valued addition data peak value is 7, the vertical blocks vb0, vb1, vb5, and vb6 are not determined to be invalid blocks. This is because it cannot be said that the reliability of the block whose vertical block n-valued addition data peak value is the maximum is relatively low.

なお、上記においては、有効/無効の判定条件を、所定値Aを12とし、所定値Bを7とする例を示したが、これに限定されるものではなく、画像の水平方向画素数に依存し、例えば水平方向画素数が640画素である場合には、所定値Aは10程度の値に設定し、所定値Bはその半分前後の値に設定すれば良い。   In the above description, an example in which the valid / invalid determination condition is set to 12 for the predetermined value A and 7 for the predetermined value B is not limited to this, and the number of pixels in the horizontal direction of the image is not limited thereto. For example, when the number of pixels in the horizontal direction is 640 pixels, the predetermined value A may be set to a value of about 10, and the predetermined value B may be set to a value around half of that.

<第1の閾値交差点の個数を用いる場合>
図17は、第1の閾値交差点の個数を用いて各垂直方向ブロックの有効/無効を判定する方法を説明する図である。
<When using the number of first threshold intersections>
FIG. 17 is a diagram illustrating a method for determining validity / invalidity of each vertical block using the number of first threshold intersections.

図17においては、図9(a)に示した640画素×480画素の画像データを例に採り、垂直方向に64画素の幅(分割幅)を有した7個の垂直方向ブロックvb0〜vb6に分割した場合を示している。   In FIG. 17, the image data of 640 pixels × 480 pixels shown in FIG. 9A is taken as an example, and seven vertical blocks vb0 to vb6 having a width of 64 pixels (divided width) in the vertical direction. This shows the case of division.

また、図17においては、第1の閾値交差点探索部29(図3)から出力される第1の閾値交差点の個数を、各ブロックごとに16進数表記で示している。   In FIG. 17, the number of first threshold intersections output from the first threshold intersection searching unit 29 (FIG. 3) is shown in hexadecimal notation for each block.

第1の閾値交差点探索部29では、第2の垂直方向ブロック射影ラインメモリ27に保存される前フレームに係る第2の垂直方向ブロック射影データの波形と、第2の垂直方向ブロック射影データ最大値保存部28で算出された第1の閾値とが交差する第1の閾値交差点の情報を出力するが、当該情報には第1の閾値交差点の個数についての情報も含まれており、図17に示すように、各垂直方向ブロックvb0〜vb6ごとに第1の閾値交差点の個数が得られる。   In the first threshold intersection searching unit 29, the waveform of the second vertical block projection data relating to the previous frame stored in the second vertical block projection line memory 27 and the second vertical block projection data maximum value are stored. Information on the first threshold value intersection at which the first threshold value calculated by the storage unit 28 intersects is output. This information also includes information on the number of first threshold value intersections, as shown in FIG. As shown, the number of first threshold intersections is obtained for each vertical block vb0-vb6.

図18は、垂直方向ブロックの有効/無効の判定を模式的に示す図である。
図18においては、横軸を各垂直方向ブロックvb0〜vb6における第1の閾値交差点の個数の最大値とし、縦軸を第1の閾値交差点の個数としたグラフを表しており、水平方向動きベクトル決定部32では、各垂直方向ブロックvb0〜vb6における第1の閾値交差点の個数が、所定値D(例えば、10進数表記で3)以下のブロックについては、第1の閾値交差点の個数の最大値に関わりなく無効ブロックと判断する。図17の例では、垂直方向ブロックvb0およびvb6が無効ブロックと判断される。
FIG. 18 is a diagram schematically illustrating determination of validity / invalidity of a vertical block.
FIG. 18 shows a graph in which the horizontal axis represents the maximum number of first threshold intersections in each of the vertical blocks vb0 to vb6, and the vertical axis represents the number of first threshold intersections. In the determination unit 32, the maximum value of the number of first threshold intersections for blocks in which the number of first threshold intersections in each of the vertical blocks vb0 to vb6 is equal to or less than a predetermined value D (for example, 3 in decimal notation). Regardless of whether it is an invalid block. In the example of FIG. 17, the vertical blocks vb0 and vb6 are determined as invalid blocks.

無効ブロックと判断される垂直方向ブロックについては、画像全体の水平方向動きベクトルの決定には使用しないことで、水平方向動きベクトルの信頼性を高めることができる。   The reliability of the horizontal motion vector can be improved by not using the vertical block determined to be an invalid block for determining the horizontal motion vector of the entire image.

一方で、第1の閾値交差点の個数は少なくとも水平方向の画素数以下であり、水平方向の画素数と比較して余りにも個数が多い場合は非常に周期的な絵柄を捉えていると言えるので、例えば、所定値E以上(例えば、水平方向画素数の半分以上)となっているような場合には、そのブロックを無効ブロックと判断するように構成しても良い。   On the other hand, the number of first threshold intersections is at least equal to or less than the number of pixels in the horizontal direction. If the number is too large compared to the number of pixels in the horizontal direction, it can be said that a very periodic pattern is captured. For example, when the value is equal to or greater than a predetermined value E (for example, more than half the number of pixels in the horizontal direction), the block may be determined to be an invalid block.

また、図19に示すように、第1の閾値交差点の個数の最大値が所定値C(>D)以上である場合にのみ、所定値D以下のブロックについては無効ブロックと判断するように構成しても良い。この場合、第1の閾値交差点の個数の最大値が所定値Cよりも小さい場合には、所定値D以下のブロックが存在しても、当該ブロックについては無効ブロックとは判断されず、無効ブロックの判定基準をより細かく設定できる。   Further, as shown in FIG. 19, only when the maximum value of the number of first threshold intersections is equal to or greater than a predetermined value C (> D), a block having a predetermined value D or less is determined to be an invalid block. You may do it. In this case, if the maximum value of the number of first threshold intersections is smaller than the predetermined value C, even if there is a block having a predetermined value D or less, the block is not determined to be an invalid block, and the invalid block Can be set more finely.

なお、上記においては、有効/無効の判定条件を、所定値Dを3とし、所定値Eを水平方向画素数の半分とする例を示したが、これに限定されるものではない。   In the above description, an example in which the valid / invalid determination condition is that the predetermined value D is 3 and the predetermined value E is half the number of pixels in the horizontal direction is not limited to this.

以上説明した第1の垂直方向ブロック射影データの最大値を用いて各垂直方向ブロックの有効/無効を判定する方法、垂直方向ブロックn値化加算データピーク値を用いて各垂直方向ブロックの有効/無効を判定する方法および第1の閾値交差点の情報を用いて各垂直方向ブロックの有効/無効を判定する方法を用いることで、無効ブロックを判定し、無効ブロックとされた垂直方向ブロックから算出された水平方向動きベクトルは、画像全体の水平方向動きベクトルを決定する際には使用しないようにすることで、動きベクトルの信頼性を高めることができる。   The method of determining validity / invalidity of each vertical block using the maximum value of the first vertical block projection data described above, and the validity / invalidity of each vertical block using the vertical block n-valued addition data peak value An invalid block is determined by using a method for determining invalidity and a method for determining validity / invalidity of each vertical block using information on the first threshold intersection, and is calculated from the vertical block that is determined as an invalid block. The reliability of the motion vector can be increased by not using the horizontal motion vector when determining the horizontal motion vector of the entire image.

また、以上説明した3つの判定方法は、単独で用いても良いが組み合わせて用いても良い。   Further, the above-described three determination methods may be used alone or in combination.

例えば、第1の垂直方向ブロック射影データの最大値を用いて有効/無効を判定するとともに、垂直方向ブロックn値化加算データピーク値を用いて各垂直方向ブロックの有効/無効を判定しても良いし、第1の垂直方向ブロック射影データの最大値を用いて有効/無効を判定するとともに、第1の閾値交差点の情報を用いて各垂直方向ブロックの有効/無効を判定しても良い。   For example, the validity / invalidity is determined using the maximum value of the first vertical block projection data, and the validity / invalidity of each vertical block is determined using the vertical block n-valued addition data peak value. The validity / invalidity may be determined using the maximum value of the first vertical block projection data, and the validity / invalidity of each vertical block may be determined using the first threshold intersection information.

このような組み合わせにより、無効ブロックを確実に選択することができ、動きベクトルの信頼性をさらに高めることができる。   With such a combination, an invalid block can be reliably selected, and the reliability of the motion vector can be further improved.

<水平方向動きベクトルの決定方法>
水平方向動きベクトル決定部32では、上記のように垂直方向ブロックの有効/無効を判定し、有効ブロックと判定された垂直方向ブロックについて、その水平方向動きベクトルから画像全体の水平方向動きベクトルを決定する。
<Method for determining horizontal motion vector>
The horizontal direction motion vector determination unit 32 determines whether the vertical direction block is valid or invalid as described above, and determines the horizontal direction motion vector of the entire image from the horizontal direction motion vector for the vertical direction block determined to be a valid block. To do.

このとき、同じ水平方向動きベクトルを有する垂直方向ブロックを集め、ヒストグラムを作成する。   At this time, vertical blocks having the same horizontal motion vector are collected to create a histogram.

以下、図20および図21を用いて、画像全体の水平方向動きベクトルの決定方法の一例について説明する。   Hereinafter, an example of a method of determining the horizontal motion vector of the entire image will be described with reference to FIGS. 20 and 21. FIG.

図20および図21においては、水平方向動きベクトルの検出範囲を−VないしVとする場合を示しており、ここでは、一例としてVが31の場合を示しており、−31から31まで1ベクトル間隔で表示されている。なお、各ベクトルに対応して設けたボックス内に表示された数字は、同じベクトルを有する垂直方向ブロックの個数を表している。   20 and 21 show a case where the detection range of the horizontal motion vector is −V to V. Here, as an example, a case where V is 31 is shown, and one vector from −31 to 31 is shown. Displayed at intervals. The numbers displayed in the boxes provided corresponding to the vectors represent the number of vertical blocks having the same vector.

図20に示すように、各垂直方向ブロックについて算出された水平方向動きベクトルのうち、水平方向動きベクトル6については2つの垂直方向ブロックで算出されているが、他の垂直方向ブロックでは全てバラバラの水平方向動きベクトルとなっており、その分布範囲の最小値は−14、最大値は27となっており、その差41となって動きベクトル検出範囲に対して非常にバラツキがあると言える。なお、図20においては、現フレームの各垂直方向ブロックから得られた水平方向動きベクトルに対応するブロックに砂地のハッチングを付している。   As shown in FIG. 20, among the horizontal direction motion vectors calculated for each vertical direction block, the horizontal direction motion vector 6 is calculated by two vertical direction blocks, but all other vertical direction blocks are disjoint. It is a horizontal motion vector, the minimum value of the distribution range is −14, and the maximum value is 27, and the difference 41 is very different from the motion vector detection range. In FIG. 20, the sand corresponding to the block corresponding to the horizontal motion vector obtained from each vertical block of the current frame is hatched.

水平方向動きベクトル決定部32では、各垂直方向ブロックから得られた水平方向動きベクトルの分布範囲の最大値と最小値の差が予め定めた閾値B(例えば、上述したV)以上のとき、各垂直方向ブロックから得られる水平方向動きベクトルは信頼性が低いとして、水平方向動きベクトルを0とする。   In the horizontal direction motion vector determination unit 32, when the difference between the maximum value and the minimum value of the distribution range of the horizontal direction motion vector obtained from each vertical block is equal to or greater than a predetermined threshold B (for example, V described above), The horizontal motion vector obtained from the vertical block has low reliability, and the horizontal motion vector is set to zero.

このような処理を行うことで、画像全体の水平方向動きベクトルの信頼性を高めることができる。   By performing such processing, the reliability of the horizontal motion vector of the entire image can be increased.

一方、水平方向動きベクトル6を有する垂直方向ブロックの個数が予め定めた数値A(例えば3)以上である場合には、各垂直方向ブロックから得られる水平方向動きベクトルは十分信頼できると判断する。   On the other hand, when the number of vertical blocks having the horizontal motion vector 6 is equal to or greater than a predetermined numerical value A (for example, 3), it is determined that the horizontal motion vector obtained from each vertical block is sufficiently reliable.

同様に、各垂直方向ブロックから得られた水平方向動きベクトルの最大値と最小値の差が閾値Bより小さい場合にも、各垂直方向ブロックから得られた水平方向動きベクトルは十分信頼できると判断する。   Similarly, when the difference between the maximum and minimum horizontal motion vectors obtained from each vertical block is smaller than the threshold value B, the horizontal motion vector obtained from each vertical block is determined to be sufficiently reliable. To do.

なお、数値A、閾値Bは上述した値に限るものではない。また、バラツキの判断も上述した水平方向動きベクトルの最大値と最小値の差で判断することに限定されず、標準偏差を用いて、例えば、標準偏差が閾値B以上のとき、バラツキが大きいと判断しても良い。   Note that the numerical value A and the threshold value B are not limited to the values described above. Further, the determination of the variation is not limited to the above-described difference between the maximum value and the minimum value of the horizontal motion vector, and the standard deviation is used. For example, when the standard deviation is greater than or equal to the threshold B, the variation is large. You may judge.

上述した処理の結果、各垂直方向ブロックから得られた水平方向動きベクトルが十分信頼できると判断できた場合、次の手順で現フレームの水平方向動きベクトルを算出する。   As a result of the above-described processing, when it can be determined that the horizontal motion vector obtained from each vertical block is sufficiently reliable, the horizontal motion vector of the current frame is calculated in the following procedure.

その概要は、現フレームの各垂直方向ブロックから出力された水平方向動きベクトルのうち、前フレームの水平方向動きベクトルに最も近い水平方向動きベクトルを現フレームの水平方向動きベクトルとするものである。   The outline is that among the horizontal motion vectors output from the vertical blocks of the current frame, the horizontal motion vector closest to the horizontal motion vector of the previous frame is used as the horizontal motion vector of the current frame.

図21においては、各垂直方向ブロックから得られた水平方向動きベクトルの分布範囲の最大値と最小値の差が11である場合を示しており、閾値B(例えばV=31)よりも小さいため、水平方向動きベクトル決定部32では、各垂直方向ブロックから算出された水平方向動きベクトルは信頼性があるものと判断する。   FIG. 21 shows a case where the difference between the maximum value and the minimum value of the distribution range of the horizontal motion vector obtained from each vertical block is 11, and is smaller than the threshold value B (for example, V = 31). The horizontal motion vector determination unit 32 determines that the horizontal motion vector calculated from each vertical block is reliable.

ここで、図21においては水平方向動きベクトル5が前フレームの水平方向動きベクトルであり、これに最も近い現フレームの各垂直方向ブロックから得られた水平方向動きベクトルは、水平方向動きベクトル6である。従って、水平方向動きベクトル6が現フレームの水平方向動きベクトルと決定される。なお、図21においては、現フレームの各垂直方向ブロックから得られた水平方向動きベクトルに対応するブロックに砂地のハッチングを付し、前フレームの水平方向動きベクトルに対応するブロックに斜線のハッチングを付している。   Here, in FIG. 21, the horizontal motion vector 5 is the horizontal motion vector of the previous frame, and the horizontal motion vector obtained from each vertical block of the current frame closest to this is the horizontal motion vector 6. is there. Accordingly, the horizontal motion vector 6 is determined as the horizontal motion vector of the current frame. In FIG. 21, the sand corresponding to the horizontal motion vector obtained from each vertical block of the current frame is hatched, and the block corresponding to the horizontal motion vector of the previous frame is hatched. It is attached.

ここで、複数の垂直方向ブロックの出力結果が同じ水平方向動きベクトルとなった場合、すなわち、ある水平方向動きベクトルの個数が2以上となった場合、個数1の水平方向動きベクトルは信頼性が低いものとして除外し、その上で前フレームの水平方向動きベクトルに最も近い水平方向動きベクトルを求め、その水平方向動きベクトルを現フレームの水平方向動きベクトルとしても良い。   Here, when the output results of a plurality of vertical blocks are the same horizontal motion vector, that is, when the number of certain horizontal motion vectors is 2 or more, the number of horizontal motion vectors of 1 is reliable. The horizontal motion vector closest to the horizontal motion vector of the previous frame is obtained as a lower motion vector, and the horizontal motion vector of the current frame may be used as the horizontal motion vector.

この方法を採る場合、図21の例では、水平方向動きベクトル8が現フレームの水平方向動きベクトルとなる。   When this method is adopted, in the example of FIG. 21, the horizontal direction motion vector 8 becomes the horizontal direction motion vector of the current frame.

なお、前フレームの水平方向動きベクトルに最も近い水平方向動きベクトルが2つ存在する場合には、その平均、つまり、前フレームの水平方向動きベクトルそのものを現フレームの水平方向動きベクトルとすれば良い。   If there are two horizontal motion vectors closest to the horizontal motion vector of the previous frame, the average, that is, the horizontal motion vector of the previous frame itself may be used as the horizontal motion vector of the current frame. .

ここで、前フレームの水平方向動きベクトルの情報は、水平方向動きベクトル決定部32内に設けられた所定の記憶部(前フレーム水平方向動きベクトル保存手段)に保存しておき、必要に応じて読み出すように構成されている。   Here, the information on the horizontal motion vector of the previous frame is stored in a predetermined storage unit (previous frame horizontal motion vector storage means) provided in the horizontal motion vector determination unit 32, and if necessary, It is configured to read.

以上説明したように、垂直方向ブロックの有効/無効の判定動作により信頼性の低い垂直方向ブロックを除外した上で、信頼性の高い垂直方向ブロックに基づいて算出される水平方向動きベクトルについてバラツキを考慮して画像全体の水平方向動きベクトルの信頼性を評価し、信頼できると判断した場合にも、前フレームの水平方向動きベクトルを考慮することで、前フレームからの動きを加味した違和感の少ない水平方向動きベクトルを決定することができる。   As described above, the vertical block having low reliability is excluded by the valid / invalid determination operation of the vertical block, and the horizontal direction motion vector calculated based on the vertical block having high reliability is varied. In consideration of the reliability of the horizontal motion vector of the entire image in consideration, even if it is determined to be reliable, the horizontal motion vector of the previous frame is taken into account, so that there is little uncomfortable feeling considering the motion from the previous frame A horizontal motion vector can be determined.

<垂直方向動きベクトル検出部4の動作>
次に、動きベクトル検出装置1において画像の垂直方向の動きベクトルを検出する垂直方向動きベクトル検出部4の動作を説明する。
<Operation of Vertical Motion Vector Detection Unit 4>
Next, the operation of the vertical motion vector detection unit 4 that detects the vertical motion vector of the image in the motion vector detection device 1 will be described.

図2のように水平ラインの画素走査を垂直方向に順に繰り返すことによって読み出されるフレーム画像が、図6に示す垂直方向動きベクトル検出部4の入力端子40に入力されると、水平方向画像分割部41で水平方向にブロック分割される。すなわち、水平方向画像分割部41においては、フレーム画像において水平方向に分割して得られる複数の画像領域(水平方向ブロック)が設定される。これにより、以降の処理では、水平方向ブロックごとに処理や管理が行われることとなる。   As shown in FIG. 2, when a frame image read out by repeating the pixel scanning of the horizontal line in order in the vertical direction is input to the input terminal 40 of the vertical direction motion vector detection unit 4 shown in FIG. In 41, the blocks are horizontally divided. That is, the horizontal image dividing unit 41 sets a plurality of image regions (horizontal blocks) obtained by dividing the frame image in the horizontal direction. Thereby, in the subsequent processing, processing and management are performed for each horizontal block.

水平方向画像分割部41では、例えば図22(a)に示すように640画素×480画素の画像データが、水平方向に64画素の幅(分割幅)を有した10個の垂直方向ブロックhb0〜hb9に分割される。なお、図22(a)に示す分割幅および分割数とするのは必須ではない。   In the horizontal image dividing unit 41, for example, as shown in FIG. 22A, image data of 640 pixels × 480 pixels is divided into ten vertical blocks hb0 to hb0 having a width of 64 pixels (divided width) in the horizontal direction. Divided into hb9. Note that the division width and the division number shown in FIG.

水平方向画像分割部41で図22(a)のように10個の水平方向ブロックhb0〜hb9に分割された画像は、水平方向エッジ抽出フィルタリング部42において水平方向に延びるエッジ成分の抽出、換言すれば垂直方向に急峻に変化する画像部分を強調するようなフィルタリング処理が施される。   The image divided into 10 horizontal blocks hb0 to hb9 as shown in FIG. 22A by the horizontal image dividing unit 41 is extracted, in other words, edge components extending in the horizontal direction by the horizontal edge extraction filtering unit 42. For example, a filtering process for emphasizing an image portion that changes sharply in the vertical direction is performed.

このフィルタリング処理で用いられるフィルタとしては、単純に水平方向に隣接する画素との差分を取る(1,−1)の2タップフィルタや、2次微分に相当する(−1,2,−1)の3タップフィルタなどの使用が可能である。なお、このようなフィルタを使用するのは必須でなく、垂直方向に輝度変化が大きくなる画像部分において出力値が上昇するフィルタであれば良い。   As a filter used in this filtering processing, a (1, -1,) 2-tap filter that simply takes a difference from a pixel adjacent in the horizontal direction, or (-1, 2, -1) corresponding to a second order differential. It is possible to use a 3-tap filter. It is not essential to use such a filter, and any filter may be used as long as the output value increases in an image portion where the luminance change is large in the vertical direction.

水平方向エッジ抽出フィルタリング部42で各水平方向ブロック(画像領域)hb0〜hb9ごとに水平方向のエッジが強調された画像データは、水平方向ブロック射影部43に入力され、水平方向ブロック射影部43で水平方向に射影される。この射影により、水平方向の(ライン間で)ノイズ成分を低減でき、また水平方向のエッジ成分をより強調できるため、特徴点に対応する水平方向エッジを際立たせて動きベクトル検出精度の向上を図れることとなる。水平方向ブロック射影部43の動作について、図22(b)の概念図を参照しつつ説明する。   The image data in which the horizontal edge is enhanced for each horizontal block (image region) hb0 to hb9 by the horizontal edge extraction filtering unit 42 is input to the horizontal block projection unit 43, and the horizontal block projection unit 43 outputs the image data. Projected horizontally. This projection can reduce the noise component in the horizontal direction (between lines) and can further enhance the edge component in the horizontal direction, so that the horizontal edge corresponding to the feature point can be emphasized and the motion vector detection accuracy can be improved. It will be. The operation of the horizontal block projection unit 43 will be described with reference to the conceptual diagram of FIG.

水平方向ブロック射影部43では、図22(a)に示す各水平方向ブロックhb0〜hb9の1水平ラインの入力が完了した時点で、1垂直ライン分のデータ配列Mhを有する水平方向ブロック射影データhn0〜hn9(図22(b))の1配列要素が生成される。従って、全配列要素が揃うのは、各水平方向ブロックhb0〜hb9の最終の水平ラインの入力が完了した時点である。なお、データ配列Mhは、垂直ラインの全画素数(例えば480)の配列要素を有しているが、(1,−1)のような2タップフィルタでは有効要素が垂直ラインの全画素数−1(例えば479)、(−1,2,−1)のような3タップフィルタでは有効要素が垂直ラインの全画素数−2(例えば478)となる。   In the horizontal block projection unit 43, when the input of one horizontal line of each of the horizontal blocks hb0 to hb9 shown in FIG. 22A is completed, the horizontal block projection data hn0 having the data array Mh for one vertical line is completed. One array element of .about.hn9 (FIG. 22B) is generated. Therefore, all the array elements are arranged when the input of the final horizontal line of each horizontal block hb0 to hb9 is completed. The data array Mh has array elements of the total number of pixels of the vertical line (for example, 480), but in a 2-tap filter such as (1, -1), the effective element is the total number of pixels of the vertical line − In a 3-tap filter such as 1 (for example, 479) and (-1, 2, -1), the effective elements are the total number of pixels in the vertical line -2 (for example, 478).

具体的には、図7に示すように入力端子431を介して入力された各水平方向ブロックhb0〜hb9の画像データ(水平方向のエッジ強調が施された画像データ)が、加算器432に入力される。加算器432では、まず入力された水平方向ブロックの1水平ラインの先頭では、水平方向射影一時記憶メモリ433内のデータを読み出すことなく、水平方向射影一時記憶メモリ433に書き込まれる。次に、加算器432では、水平方向射影一時記憶メモリ433に記憶されている1水平ラインの前画素までの加算結果を読み出し、入力端子431から入力される水平方向ブロックの1水平ラインの現画素との加算を行って、その加算結果を水平方向射影一時記憶メモリ433に書き戻す。そして、水平方向ブロックにおける1水平ラインの最終画素が加算器432に入力されると、水平方向射影一時記憶メモリ433に保存された前画素までの加算結果を読み出し、入力端子431から入力される水平方向ブロックの1水平ラインの最終画素との加算を行って、その加算結果、つまり水平方向ブロックの1水平ラインの全画素が加算されたデータを水平方向ブロックの1水平ラインに関する射影データとして、出力端子434から第1の水平方向ブロック射影ラインメモリ44と第1の水平方向ブロック射影データ最大値保存部45とに出力する。なお、加算器432において水平方向ブロックの1水平ラインの全画素が加算された射影データを水平方向射影一時記憶メモリ433に一旦記憶させ、次の水平方向ブロックの1水平ラインの先頭画素が入力される際に、水平方向射影一時記憶メモリ433内の射影データを読み出して出力端子434から出力するようにしても良い。   Specifically, as shown in FIG. 7, the image data (image data subjected to edge enhancement in the horizontal direction) of the horizontal blocks hb0 to hb9 input via the input terminal 431 is input to the adder 432. Is done. The adder 432 first writes the data in the horizontal projection temporary storage memory 433 without reading the data in the horizontal projection temporary storage memory 433 at the head of one horizontal line of the input horizontal block. Next, the adder 432 reads the addition result up to the previous pixel of one horizontal line stored in the horizontal projection temporary storage memory 433, and the current pixel of one horizontal line of the horizontal block input from the input terminal 431. And the addition result is written back to the horizontal projection temporary storage memory 433. When the final pixel of one horizontal line in the horizontal block is input to the adder 432, the addition result up to the previous pixel stored in the horizontal projection temporary storage memory 433 is read and the horizontal input from the input terminal 431 is read. Addition with the final pixel of one horizontal line of the direction block, and output the addition result, that is, data obtained by adding all the pixels of one horizontal line of the horizontal block as projection data for one horizontal line of the horizontal block The data is output from the terminal 434 to the first horizontal block projection line memory 44 and the first horizontal block projection data maximum value storage unit 45. The projection data obtained by adding all the pixels of one horizontal line of the horizontal block in the adder 432 is temporarily stored in the horizontal projection temporary storage memory 433, and the first pixel of one horizontal line of the next horizontal block is input. In this case, the projection data in the horizontal projection temporary storage memory 433 may be read out and output from the output terminal 434.

第1の水平方向ブロック射影ラインメモリ44では、水平方向ブロック射影部43から入力された現フレームの水平方向ブロック射影データを、第1の水平方向ブロック射影データとして水平方向ブロックごとに保存する。   The first horizontal block projection line memory 44 stores the horizontal block projection data of the current frame input from the horizontal block projection unit 43 for each horizontal block as first horizontal block projection data.

第1の水平方向ブロック射影データ最大値保存部45では、水平方向ブロック射影部43から入力された水平方向ブロックの射影データに関する最大値を算出し、現フレームの水平方向ブロック射影データ最大値として保存する。   The first horizontal block projection data maximum value storage unit 45 calculates the maximum value related to the projection data of the horizontal block inputted from the horizontal block projection unit 43 and stores it as the horizontal block projection data maximum value of the current frame. To do.

第2の水平方向ブロック射影ラインメモリ46は、第1の水平方向ブロック射影ラインメモリ44から読み出された水平方向ブロック射影データを、前フレームに関する第2の水平方向ブロック射影データとして保存する。同様に、第2の水平方向ブロック射影データ最大値保存部47では、第1の水平方向ブロック射影データ最大値保存部45から出力された水平方向ブロック射影データの最大値が、前フレームに関する第2の水平方向ブロック射影データの最大値として保存される。換言すれば、第1の水平方向ブロック射影データ最大値保存部45に保存された現フレームの水平方向ブロック射影データの最大値は、次のフレームでは、第2の水平方向ブロック射影データ最大値保存部47に前フレームの水平方向ブロック射影データの最大値として保存されることとなる。   The second horizontal block projection line memory 46 stores the horizontal block projection data read from the first horizontal block projection line memory 44 as second horizontal block projection data related to the previous frame. Similarly, in the second horizontal block projection data maximum value storage unit 47, the maximum value of the horizontal block projection data output from the first horizontal block projection data maximum value storage unit 45 is the second value related to the previous frame. Is stored as the maximum horizontal block projection data. In other words, the maximum value of the horizontal block projection data of the current frame stored in the first horizontal block projection data maximum value storage unit 45 is stored in the second horizontal block projection data maximum value of the next frame. This is stored in the unit 47 as the maximum value of the horizontal block projection data of the previous frame.

また、第2の水平方向ブロック射影データ最大値保存部47では、算出された前フレームの水平方向ブロック射影データ最大値に基づき、第4の閾値を算出する。例えば、前フレームの水平方向ブロックの射影データに関する最大値をP4maxとすると、第4の閾値α4は次の式(3)で算出される。   The second horizontal block projection data maximum value storage unit 47 calculates a fourth threshold value based on the calculated horizontal block projection data maximum value of the previous frame. For example, if the maximum value related to the projection data of the horizontal block of the previous frame is P4max, the fourth threshold value α4 is calculated by the following equation (3).

α4=P4max×k4・・・・・・・・(3)   α4 = P4max × k4 (3)

ここで、k4は予め定められた係数で、0<k4<1である。   Here, k4 is a predetermined coefficient, and 0 <k4 <1.

なお、第4の閾値α4の演算は、上式(3)に限るものではなく、前フレームの水平方向ブロック射影データ最大値P4maxが大きくなれば第4の閾値α4が大きくなるものであれば良く、また変換テーブルを使用しても良い。また、第4の閾値α4については、各水平方向ブロックごとの第2の水平方向ブロック射影データの最大値を使用するのは必須でなく、例えば前フレームの画像全体についての水平方向ブロック射影データ最大値を用いて第4の閾値を算出し、画像全体で同じ第4の閾値を採用しても良い。   Note that the calculation of the fourth threshold value α4 is not limited to the above equation (3), and it is sufficient if the fourth threshold value α4 increases as the horizontal block projection data maximum value P4max of the previous frame increases. Alternatively, a conversion table may be used. For the fourth threshold α4, it is not essential to use the maximum value of the second horizontal block projection data for each horizontal block. For example, the maximum horizontal block projection data for the entire image of the previous frame is used. The fourth threshold value may be calculated using the value, and the same fourth threshold value may be employed for the entire image.

第2の水平方向ブロック射影データ最大値保存部47は、前フレームに関する第2の水平方向ブロック射影データの最大値に基づき、第3の閾値(所定の一定値)が設定される。例えば、前フレームの水平方向ブロック射影データの最大値をP3maxとすると、第3の閾値α3は次の式(4)で算出される。   The second horizontal block projection data maximum value storage unit 47 sets a third threshold (predetermined constant value) based on the maximum value of the second horizontal block projection data regarding the previous frame. For example, if the maximum value of the horizontal block projection data of the previous frame is P3max, the third threshold value α3 is calculated by the following equation (4).

α3=P3max×k3・・・・・・・・(4)   α3 = P3max × k3 (4)

ここで、k3は予め定められた係数で、0<k3<1である。   Here, k3 is a predetermined coefficient, and 0 <k3 <1.

なお、第3の閾値α3の演算は、上式(4)に限るものではなく、前フレームの水平方向ブロック射影データ最大値P3maxが大きくなれば第3の閾値α3が大きくなるものであれば良く、また変換テーブルを使用しても良い。また、第3の閾値α3については、各水平方向ブロックごとの第2の水平方向ブロック射影データの最大値を使用するのは必須でなく、例えば前フレームの画像全体についての水平方向ブロック射影データ最大値を用いて第3の閾値を算出し、画像全体で同じ第3の閾値を採用しても良い。   Note that the calculation of the third threshold value α3 is not limited to the above equation (4), and it is sufficient if the third threshold value α3 increases as the horizontal block projection data maximum value P3max of the previous frame increases. Alternatively, a conversion table may be used. For the third threshold α3, it is not essential to use the maximum value of the second horizontal block projection data for each horizontal block. For example, the maximum horizontal block projection data for the entire image of the previous frame is used. The third threshold value may be calculated using the value, and the same third threshold value may be adopted for the entire image.

第3の閾値交差点探索部48では、第2の水平方向ブロック射影ラインメモリ46から読み出された第2の水平方向ブロック射影データと、第2の水平方向ブロック射影データ最大値保存部47から出力された第3の閾値との交差点(第3の閾値交差点)を垂直方向に探索する。この第3の閾値交差点探索部48で得られた第3の閾値交差点の情報は、水平方向ブロック射影データ読み出し部49と水平方向ブロック垂直方向動きベクトル算出部50とに入力される。   The third threshold intersection search unit 48 outputs the second horizontal block projection data read from the second horizontal block projection line memory 46 and the second horizontal block projection data maximum value storage unit 47. The intersection with the third threshold value (third threshold value intersection) is searched in the vertical direction. The information on the third threshold intersection obtained by the third threshold intersection searching unit 48 is input to the horizontal block projection data reading unit 49 and the horizontal block vertical motion vector calculating unit 50.

水平方向ブロック射影データ読み出し部49は、第3の閾値交差点探索部48から出力された第3の閾値交差点を中心とした動きベクトル検出範囲に対応した現フレームの(第1の)水平方向ブロック射影データを第1の水平方向ブロック射影ラインメモリ44から読み出す。すなわち、第3の閾値交差点をB(i)(ただしi=1,2,・・・qで、qは検出された第3の閾値交差点の総数)とし、動きベクトル検出範囲を第3の閾値交差点を中心とした(−U)から(+U)(ただしUは正の整数)の範囲とすると、第1の水平方向ブロック射影ラインメモリ44から読み出される射影データは、垂直方向において(B(i)−U)から(B(i)+U)までの範囲にある第1の水平方向ブロック射影データの部分データとなる。   The horizontal block projection data reading unit 49 outputs the (first) horizontal block projection of the current frame corresponding to the motion vector detection range centered on the third threshold intersection output from the third threshold intersection search unit 48. Data is read from the first horizontal block projection line memory 44. That is, the third threshold intersection is B (i) (where i = 1, 2,... Q, q is the total number of detected third threshold intersections), and the motion vector detection range is the third threshold. Assuming the range from (−U) to (+ U) (where U is a positive integer) centered on the intersection, the projection data read from the first horizontal block projection line memory 44 is (B (i ) −U) to (B (i) + U), which is partial data of the first horizontal block projection data.

この水平方向ブロック射影データ読み出し部49によって第1の水平方向ブロック射影ラインメモリ44から読み出された第1の水平方向ブロック射影データは、水平方向ブロック垂直方向動きベクトル算出部50に出力される。   The first horizontal block projection data read from the first horizontal block projection line memory 44 by the horizontal block projection data reading unit 49 is output to the horizontal block vertical motion vector calculation unit 50.

水平方向ブロック射影データ読み出し部49から出力された第1の水平方向ブロック射影データは、図8に示す水平方向ブロック垂直方向動きベクトル算出部50の入力端子501を介してn値化器504に入力される。このn値化器504では、第2の水平方向ブロック射影データ最大値保存部47から出力され、入力端子502を介して入力された第4の閾値に基づき、第1の水平方向ブロック射影データをn値化する。すなわち、n値化器504は、水平方向ブロック射影データ読み出し部49で抽出された現フレームの射影データに関するデータ配列Mh(図22(b))の各配列要素のデータ長を圧縮する。このn値化器504の処理については、上述したn値化器314と同様の処理を行い、例えば3値化処理が実行される。すなわち、n値化器504における3値化処理では、前フレームの射影データにおけるデータ配列Mhの配列要素の最大値に基づき設定される第4の閾値α4(α4>0)に関して、水平方向ブロック射影データ読み出し部49で抽出された現フレームの射影データに関する配列要素の値が、(−α4)より小さい場合、(−α4)以上でα4以下の場合、およびα4より大きい場合の3段階による3値化が行われる。なお、n値化器504においては、n値化器314と同じ特性を有するのは必須でなく、n値化器314と異なる特性を有しても良い。   The first horizontal block projection data output from the horizontal block projection data reading unit 49 is input to the n-value converter 504 via the input terminal 501 of the horizontal block vertical motion vector calculation unit 50 shown in FIG. Is done. The n-value converter 504 outputs the first horizontal block projection data based on the fourth threshold value output from the second horizontal block projection data maximum value storage unit 47 and input via the input terminal 502. n-valued. That is, the n-value converter 504 compresses the data length of each array element of the data array Mh (FIG. 22B) regarding the projection data of the current frame extracted by the horizontal block projection data reading unit 49. About the process of this n value digitizer 504, the process similar to the n value digitizer 314 mentioned above is performed, for example, a 3 value process is performed. That is, in the ternarization processing in the n-value quantizer 504, the horizontal block projection is performed with respect to the fourth threshold value α4 (α4> 0) set based on the maximum value of the array element of the data array Mh in the projection data of the previous frame. Three values in three stages when the value of the array element relating to the projection data of the current frame extracted by the data reading unit 49 is smaller than (−α4), (−α4) or more and α4 or less, and greater than α4. Is done. Note that the n-value generator 504 does not necessarily have the same characteristics as the n-value generator 314, and may have different characteristics from the n-value generator 314.

以上で説明した第3の閾値交差点探索部48、水平方向ブロック射影データ読み出し部49および水平方向ブロック垂直方向動きベクトル算出部50の動作について、図23(a)、図23(b)および図23(c)を参照しつつ具体的に説明する。なお、図23(a)および図23(b)の横軸は、射影データのデータ配列Mh(図22(b))の配列要素の位置を示している。また、図23(a)では、第3の閾値交差点B(1)〜B(6)それぞれを丸印で表している。   The operations of the third threshold intersection searching unit 48, the horizontal block projection data reading unit 49, and the horizontal block vertical motion vector calculating unit 50 described above are shown in FIGS. 23 (a), 23 (b), and 23. This will be specifically described with reference to (c). Note that the horizontal axes of FIGS. 23A and 23B indicate the positions of the array elements of the projection data array Mh (FIG. 22B). In FIG. 23A, each of the third threshold intersections B (1) to B (6) is indicated by a circle.

第3の閾値交差点探索部48では、図23(a)に示すように前フレームに関する第2の垂直方向ブロック射影データW4の波形において、第2の水平方向ブロック射影データ最大値保存部47から出力された第3の閾値α3と交差する第3の閾値交差点B(1)〜B(6)が求められる。すなわち、第3の閾値交差点探索部48は、前フレームに対して水平方向ブロック射影部43で得られた射影データに関して射影データのデータ配列Mh(図22(b))の要素順に配列要素の値をグラフ化した波形W4と、配列要素の値が第3の閾値(所定の一定値)α3となる直線とが交差する各第3の閾値交差点の配列要素の位置を特定する。   The third threshold value intersection search unit 48 outputs the second horizontal block projection data maximum value storage unit 47 in the waveform of the second vertical block projection data W4 related to the previous frame as shown in FIG. The third threshold value intersections B (1) to B (6) that intersect with the third threshold value α3 are obtained. That is, the third threshold value intersection search unit 48 sets the array element values in the order of the elements in the projection data array Mh (FIG. 22B) with respect to the projection data obtained by the horizontal block projection unit 43 with respect to the previous frame. The position of the array element at each of the third threshold intersections where the waveform W4 and the straight line where the value of the array element is the third threshold value (predetermined constant value) α3 intersect is specified.

次に、水平方向ブロック射影データ読み出し部49では、図23(a)に示す各第3の閾値交差点B(1)〜B(6)を中心とした所定の動きベクトル検出範囲について第1の水平方向ブロック射影ラインメモリ44から現フレームの水平方向ブロック射影データが読み出される。すなわち、水平方向ブロック射影データ読み出し部49は、各第3の閾値交差点における射影データ(データ配列)の配列要素の位置を中心とした所定範囲のデータ配列を、水平方向ブロック射影部43で得られた現フレーム(後フレーム)の射影データから抽出する。例えば第3の閾値交差点B(4)に関しては、図23(b)に示すように第3の閾値交差点B(4)を中心に(B(4)−U)から(B(4)+U)までの範囲(矩形の破線内の波形部分)に対応する第1の水平方向ブロック射影データW3が読み出される。   Next, in the horizontal block projection data reading unit 49, a first horizontal vector is detected for a predetermined motion vector detection range centered on each of the third threshold intersections B (1) to B (6) shown in FIG. The horizontal block projection data of the current frame is read from the direction block projection line memory 44. That is, the horizontal block projection data reading unit 49 obtains a data array in a predetermined range centered on the position of the array element of the projection data (data array) at each third threshold intersection at the horizontal block projection unit 43. Extracted from the projection data of the current frame (back frame). For example, for the third threshold value intersection B (4), as shown in FIG. 23B, the third threshold value intersection B (4) is centered on (B (4) -U) to (B (4) + U). The first horizontal block projection data W3 corresponding to the range up to (the waveform portion within the rectangular broken line) is read out.

そして、水平方向ブロック射影データ読み出し部49によって読み出された第1の水平方向ブロック射影データは、第2の水平方向ブロック射影データ最大値保存部47から出力された第4の閾値α4を用いて、水平方向ブロック垂直方向動きベクトル算出部50のn値器504でn値化処理される。例えば第3の閾値交差点B(4)に関しては、図23(b)に示す第4の閾値α4および(−α4)に対する第1の水平方向ブロック射影データW3の大小関係に基づき、第3の閾値交差点B(4)を中心に(B(4)−U)から(B(4)+U)までの範囲(矩形の破線内の波形部分)について、図23(c)のように第1の水平方向ブロック射影データが3値化処理される。これにより、現フレームの水平方向ブロック射影データが「−1」、「0」または「1」で表されることとなる。   The first horizontal block projection data read out by the horizontal block projection data reading unit 49 uses the fourth threshold value α4 output from the second horizontal block projection data maximum value storage unit 47. The n-value unit 504 of the horizontal block vertical motion vector calculation unit 50 performs n-value processing. For example, for the third threshold value intersection B (4), the third threshold value is based on the magnitude relationship of the first horizontal block projection data W3 with respect to the fourth threshold values α4 and (−α4) shown in FIG. For the range from (B (4) -U) to (B (4) + U) centered on the intersection B (4) (the waveform portion within the rectangular broken line), the first horizontal as shown in FIG. The direction block projection data is ternarized. As a result, the horizontal block projection data of the current frame is represented by “−1”, “0”, or “1”.

n値化器504では、第3の閾値交差点探索部48から出力される全ての第3の閾値交差点について、図23(c)に示すようなn値化処理が行われる。   The n-value converter 504 performs n-value conversion processing as shown in FIG. 23C for all the third threshold value intersections output from the third threshold value intersection search unit 48.

次に、加算器505(図8)では、入力端子503を介して第3の閾値交差点探索部48から出力された第3の閾値交差点を中心に、n値化器504でn値化された第1の水平方向ブロック射影データと、垂直方向動きベクトル加算メモリ506から読み出された1つ前までのn値化された第1の水平方向ブロック射影データの加算値とを加算し、その加算結果を垂直方向動きベクトル加算メモリ506に再び記憶させる。そして、第3の閾値交差点探索部48で検出された全ての第3の閾値交差点のうち最後のものに関するn値化された第1の水平方向ブロック射影データを加算器505で加算して1つの水平方向ブロックについての加算処理を終了する際には、その加算結果をピーク検出器507に出力するようにする。なお、加算器505での加算処理終了後に、全ての第3の閾値交差点に関する加算結果を記憶している垂直方向動きベクトル加算メモリ506から、その加算結果をピーク検出部507が読み出すようにしても良い。   Next, the adder 505 (FIG. 8) is n-valued by the n-value generator 504 around the third threshold value intersection output from the third threshold value intersection search unit 48 via the input terminal 503. The first horizontal block projection data is added to the addition value of the first horizontal block projection data converted to n-values read from the vertical motion vector addition memory 506, and the addition is performed. The result is stored again in the vertical motion vector addition memory 506. Then, the adder 505 adds the n-valued first horizontal block projection data regarding the last one of all the third threshold intersections detected by the third threshold intersection search unit 48 to obtain one When the addition process for the horizontal block is finished, the addition result is output to the peak detector 507. In addition, after the addition process in the adder 505 is completed, the peak detection unit 507 may read out the addition result from the vertical motion vector addition memory 506 storing the addition results regarding all the third threshold intersections. good.

ピーク検出器507には、第3の閾値交差点探索部48で検出された全ての第3の閾値交差点について各第3の閾値交差点を中心とした動きベクトル検出範囲(上述した±Uの範囲)に対応するn値化済みの第1の水平方向ブロック射影データを加算したデータ(以下では「水平方向ブロックn値化データ」とも言う)が入力されるが、この水平方向ブロックn値化データに関するピーク値がピーク検出器507で検出される。このピーク検出器507において検出される水平方向ブロックn値化データのピーク位置が、その水平方向ブロックから得られる垂直方向動きベクトルとなり、出力端子508を介して垂直方向動き決定部51に出力される。同様に、そのときのピーク値は出力端子509から出力される。   The peak detector 507 includes a motion vector detection range (the above-described ± U range) centered on each third threshold intersection for all the third threshold intersections detected by the third threshold intersection search unit 48. Data obtained by adding the corresponding n-valued first horizontal block projection data (hereinafter also referred to as “horizontal block n-valued data”) is input. The value is detected by peak detector 507. The peak position of the horizontal block n-valued data detected by the peak detector 507 becomes the vertical motion vector obtained from the horizontal block, and is output to the vertical motion determination unit 51 via the output terminal 508. . Similarly, the peak value at that time is output from the output terminal 509.

以上で説明した加算器505およびピーク検出部507の動作について、図24(a)および図24(b)を参照しつつ具体的に説明する。なお、図24(a)では、図23(a)に示す第3の閾値交差点B(1)〜B(6)を中心とした動きベクトル検出範囲(±Uの範囲)において第1の水平方向ブロック射影データを3値化したものを概念的に示している。   The operations of the adder 505 and the peak detector 507 described above will be specifically described with reference to FIGS. 24 (a) and 24 (b). In FIG. 24A, the first horizontal direction in the motion vector detection range (± U range) centering on the third threshold intersections B (1) to B (6) shown in FIG. The block projection data is conceptually shown as three values.

加算器505において、図24(a)に示す第3の閾値交差点B(1)〜B(6)周辺の3値化データが順次に入力されると、これらのデータが加算され、図24(b)に示すような水平方向ブロックn値化データが生成される。具体的には、加算器505において水平方向ブロック射影データ読み出し部49により水平方向ブロック射影データ(データ配列Mh(図22(b)))から抽出されn値器504でデータ長が圧縮された現フレームに係る動きベクトル検出範囲(所定範囲)のデータ配列それぞれについて、各第3の閾値交差点の配列要素の位置に対して相対位置が同じ配列要素同士の値が加算されることとなる。   In the adder 505, when ternary data around the third threshold intersections B (1) to B (6) shown in FIG. 24 (a) are sequentially input, these data are added, and FIG. Horizontal block n-valued data as shown in b) is generated. Specifically, in the adder 505, the horizontal block projection data reading unit 49 extracts the horizontal block projection data (data array Mh (FIG. 22B)) and the n-value unit 504 compresses the data length. For each data array of the motion vector detection range (predetermined range) related to the frame, values of array elements having the same relative position with respect to the position of the array element at each third threshold intersection are added.

加算器505で生成された水平方向ブロックn値化データがピーク検出器507に入力されると、その水平方向ブロックの垂直方向動きベクトルとして図24(b)に示す垂直方向のピーク位置vvが検出される。すなわち、ピーク検出器507では、加算器505で加算された加算結果に基づき、フレーム画像の垂直方向に関する動きベクトルが検出される。   When the horizontal block n-valued data generated by the adder 505 is input to the peak detector 507, the vertical peak position vv shown in FIG. 24B is detected as the vertical motion vector of the horizontal block. Is done. That is, the peak detector 507 detects a motion vector in the vertical direction of the frame image based on the addition result added by the adder 505.

このピーク検出器507では、原則的に動きベクトル検出範囲(±Uの範囲)において最大値となるピーク位置が探索されるが、同一の最大値が複数ある場合には、原点0に近いもの(原点0までの距離が等しい場合には負の位置のもの)を優先する。なお、このようなピーク位置の検出ルールに限らず、正の位置にある最大値を優先しても良く、また前フレームにおける動きベクトルの傾向を現フレームのピーク位置の検出に利用するようにしても良い。   In principle, the peak detector 507 searches for a peak position having a maximum value in the motion vector detection range (± U range). When there are a plurality of the same maximum values, the peak detector 507 is close to the origin 0 ( If the distance to the origin 0 is the same, the negative position) is given priority. It should be noted that the maximum value at the positive position may be prioritized without being limited to such a peak position detection rule, and the tendency of the motion vector in the previous frame is used for detection of the peak position in the current frame. Also good.

ピーク検出器507で水平方向ブロックごとに算出された垂直方向動きベクトル(ピーク位置)と、水平方向ブロックのn値化され加算された加算データのピーク値(以下、「水平方向ブロックn値化加算データピーク値」とも言う)は、それぞれ出力端子508および509を介して垂直方向動きベクトル決定部51に入力され、水平方向ブロックn値化加算データピーク値は、水平方向ブロックの有効/無効判定に使用される。   The vertical motion vector (peak position) calculated for each horizontal block by the peak detector 507 and the peak value of the added data obtained by adding the n-valued horizontal block (hereinafter referred to as “horizontal block n-valued addition”). The data peak value ”is also input to the vertical motion vector determination unit 51 via the output terminals 508 and 509, respectively, and the horizontal block n-valued addition data peak value is used to determine whether the horizontal block is valid / invalid. used.

垂直方向動きベクトル決定部51(図6)では、水平方向ブロック垂直方向動きベクトル算出部50から順次に出力される各水平方向ブロックの垂直方向動きベクトルに基づき、画像全体の垂直方向動きベクトルが決定される。   In the vertical direction motion vector determination unit 51 (FIG. 6), the vertical direction motion vector of the entire image is determined based on the vertical direction motion vector of each horizontal direction block sequentially output from the horizontal direction block vertical direction motion vector calculation unit 50. Is done.

このとき、垂直方向動きベクトル決定部51では、第1の水平方向ブロック射影データ最大値保存部45から出力される第1の水平方向ブロック射影データの最大値、水平方向ブロック垂直方向動きベクトル算出部50から出力される水平方向ブロックn値化加算データピーク値および第3の閾値交差点探索部48から出力される第3の閾値交差点の情報に基づいて各水平方向ブロックの有効/無効を判定する。そして、無効ブロックと判定された水平方向ブロックから算出された垂直方向動きベクトルは画像全体の垂直方向動きベクトルを決定する際には使用しないものとする。   At this time, in the vertical direction motion vector determination unit 51, the maximum value of the first horizontal direction block projection data output from the first horizontal direction block projection data maximum value storage unit 45, the horizontal direction block vertical direction motion vector calculation unit On the basis of the horizontal block n-valued addition data peak value output from 50 and the information on the third threshold intersection output from the third threshold intersection search unit 48, the validity / invalidity of each horizontal block is determined. The vertical motion vector calculated from the horizontal block determined to be an invalid block is not used when determining the vertical motion vector of the entire image.

<水平方向ブロックの有効/無効の判定動作>
<第1の水平方向ブロック射影データの最大値を用いる場合>
以下、各水平方向ブロックの有効/無効を判定する方法について説明する。
図25は、第1の水平方向ブロック射影データの最大値を用いて各水平方向ブロックの有効/無効を判定する方法を説明する図である。
<Horizontal block validity / invalidity judgment operation>
<When using the maximum value of the first horizontal block projection data>
Hereinafter, a method for determining validity / invalidity of each horizontal block will be described.
FIG. 25 is a diagram illustrating a method for determining validity / invalidity of each horizontal block using the maximum value of the first horizontal block projection data.

図25においては、図22(a)に示した640画素×480画素の画像データを例に採り、水平方向に64画素の幅(分割幅)を有した10個の水平方向ブロックhb0〜hb9に分割した場合を示している。   In FIG. 25, the image data of 640 pixels × 480 pixels shown in FIG. 22A is taken as an example, and 10 horizontal blocks hb0 to hb9 having a width of 64 pixels (divided width) in the horizontal direction are arranged. This shows the case of division.

また、図25においては、第1の水平方向ブロック射影データ最大値保存部45(図6)から出力される各水平方向ブロックの第1の水平方向ブロック射影データの最大値を、各ブロックごとに16進数表記で示している。   In FIG. 25, the maximum value of the first horizontal block projection data of each horizontal block output from the first horizontal block projection data maximum value storage unit 45 (FIG. 6) is set for each block. It is shown in hexadecimal notation.

垂直方向動きベクトル決定部51では、各水平方向ブロックhb0〜hb9における第1の水平方向ブロック射影データの最大値の中から全ブロック中の最大値を求める。図25の例では、水平方向ブロックhb4が全ブロック中の最大値を有しており、この値を全水平方向ブロック射影データ最大値と呼称する。   The vertical motion vector determination unit 51 obtains the maximum value in all blocks from the maximum value of the first horizontal block projection data in each of the horizontal blocks hb0 to hb9. In the example of FIG. 25, the horizontal block hb4 has the maximum value in all blocks, and this value is referred to as the all horizontal block projection data maximum value.

また、垂直方向動きベクトル決定部51では、全水平方向ブロック射影データ最大値に対して、例えば1/4以下の最大値しか有さない水平方向ブロックを無効ブロックとして判断する。図25の例では、水平方向ブロックhb0、hb1、hb8およひhb9が無効ブロックと判断される。   In addition, the vertical direction motion vector determination unit 51 determines, as an invalid block, a horizontal direction block having, for example, a maximum value equal to or less than 1/4 with respect to the maximum value of all horizontal block projection data. In the example of FIG. 25, the horizontal blocks hb0, hb1, hb8 and hb9 are determined to be invalid blocks.

図26は、水平方向ブロックの有効/無効の判定を模式的に示す図である。
図26においては、横軸を全水平方向ブロック射影データ最大値とし、縦軸を第1の水平方向ブロック射影データ最大値としたグラフを表しており、原点を起点とした傾き1/4(S=1/4)の直線を境にして、有効ブロックと無効ブロックとに分かれることが表されている。
FIG. 26 is a diagram schematically illustrating determination of validity / invalidity of a horizontal block.
In FIG. 26, a graph is shown in which the horizontal axis represents the maximum value of all horizontal block projection data and the vertical axis represents the first horizontal block projection data maximum value, and the slope 1/4 (S = 1/4) is divided into valid blocks and invalid blocks.

無効ブロックと判断される水平方向ブロックは、絵柄として特徴の少ない(くっきりとした箇所が少ない)、あるいは、非常に細かい絵柄であると言うことができ、結果として、他の有効ブロックに対して信頼性が低いと判断できるものである。従って、無効ブロックと判断される水平方向ブロックについては、画像全体の垂直方向動きベクトルの決定には使用しないことで、垂直方向動きベクトルの信頼性を高めることができる。   A horizontal block that is determined to be an invalid block can be said to have a few features (there are few clear parts) or a very fine design as a pattern, and as a result, it is reliable with respect to other valid blocks. It can be judged that the nature is low. Therefore, the reliability of the vertical motion vector can be improved by not using the horizontal block determined to be an invalid block for determining the vertical motion vector of the entire image.

なお、上記においては、有効/無効の判定条件を、全水平方向ブロック射影データ最大値の1/4以下として説明したが、これに限るものではなく、場合によっては1/2以下、あるいは1/8以下としても良い。このように、判定条件1/2nで設定することにより、有効、無効の判定を簡単に行うことが可能である。 In the above description, the valid / invalid determination condition is described as being ¼ or less of the maximum value of all horizontal block projection data. However, the present invention is not limited to this, and may be ½ or less or 1 / It may be 8 or less. In this way, by setting with the determination condition 1/2 n , it is possible to easily determine whether it is valid or invalid.

<水平方向ブロックn値化加算データピーク値を用いる場合>
図27は、水平方向ブロックn値化加算データピーク値を用いて各水平方向ブロックの有効/無効を判定する方法を説明する図である。
<When using a horizontal block n-valued addition data peak value>
FIG. 27 is a diagram for explaining a method of determining validity / invalidity of each horizontal block using the horizontal block n-valued addition data peak value.

図27においては、図22(a)に示した640画素×480画素の画像データを例に採り、垂直方向に64画素の幅(分割幅)を有した10個の水平方向ブロックhb0〜hb9に分割した場合を示している。   In FIG. 27, the image data of 640 pixels × 480 pixels shown in FIG. 22A is taken as an example, and 10 horizontal blocks hb0 to hb9 having a width (divided width) of 64 pixels in the vertical direction are shown. This shows the case of division.

また、図27においては、水平方向ブロック垂直方向動きベクトル算出部50(図6)から出力される各水平方向ブロックの水平方向ブロックn値化加算データピーク値を、各ブロックごとに16進数表記で示している。   In FIG. 27, the horizontal block n-valued addition data peak value of each horizontal block output from the horizontal block vertical motion vector calculation unit 50 (FIG. 6) is expressed in hexadecimal notation for each block. Show.

垂直方向動きベクトル決定部51では、各水平方向ブロックhb0〜hb9における水平方向ブロックn値化加算データピーク値の中から最大値を求める。図27の例では、水平方向ブロックhb4が最大値を有しており、この値を水平方向ブロックn値化加算データピーク値の最大値と呼称する。   The vertical motion vector determination unit 51 obtains the maximum value from the horizontal block n-valued addition data peak values in the horizontal blocks hb0 to hb9. In the example of FIG. 27, the horizontal block hb4 has the maximum value, and this value is referred to as the maximum value of the horizontal block n-valued addition data peak value.

また、垂直方向動きベクトル決定部51では、水平方向ブロックn値化加算データピーク値の最大値が所定値A(例えば、10進数表記で12)以上のとき、水平方向ブロックn値化加算データが所定値B(例えば、10進数表記で7)以下の水平方向ブロックを無効ブロックとして判断する。図27の例では、垂直方向ブロックhb0、hb1、hb7、hb8およびhb9が無効ブロックと判断される。   Also, in the vertical direction motion vector determination unit 51, when the maximum value of the horizontal block n-valued addition data peak value is equal to or greater than a predetermined value A (for example, 12 in decimal notation), the horizontal direction block n-valued addition data is A horizontal block having a predetermined value B (for example, 7 in decimal notation) or less is determined as an invalid block. In the example of FIG. 27, the vertical blocks hb0, hb1, hb7, hb8 and hb9 are determined to be invalid blocks.

水平方向ブロック垂直方向動きベクトル算出部50(図6)の加算器505(図8)の出力は、第3の閾値交差点を中心に、第4の閾値でn値化された第1の水平方向ブロック射影データを加算したものであり、第3の閾値交差点が多く、かつ、プラス側の第4の閾値(α4)を超える振幅(山)が多いほど大きな値となる。逆に、マイナス側の第4の閾値(−α4)を超える振幅があれば打ち消されることになる。   The output of the adder 505 (FIG. 8) of the horizontal block vertical motion vector calculation unit 50 (FIG. 6) is the first horizontal direction centered on the third threshold intersection and n-valued with the fourth threshold. This is a sum of block projection data, and the larger the third threshold value intersection and the larger the amplitude (mountain) exceeding the fourth threshold value (α4) on the plus side, the larger the value. On the other hand, if there is an amplitude exceeding the negative fourth threshold (−α4), it is canceled out.

言い換えれば、加算器505の出力の最大値、つまり、ある水平方向ブロックの水平方向ブロックn値化加算データピーク値が所定値A以上であり、その一方で、他の水平方向ブロックの水平方向ブロックn値化加算データピーク値が所定値B以下であるとき、当該他の水平方向ブロックにおいては加算結果が打ち消される絵柄、あるいは、特徴が少なく、振幅が少ない絵柄であると言える。   In other words, the maximum value of the output of the adder 505, that is, the horizontal block n-valued addition data peak value of a certain horizontal block is equal to or greater than the predetermined value A, while the horizontal blocks of other horizontal blocks When the n-valued addition data peak value is equal to or less than the predetermined value B, it can be said that the other horizontal block is a picture with the addition result canceled or a picture with few features and small amplitude.

従って、水平方向ブロックn値化加算データピーク値が、所定値B以下のブロックは、所定値A以上のブロックに比べて、信頼性が低いと判断できる。従って、無効ブロックと判断される水平方向ブロックについては、画像全体の垂直方向動きベクトルの決定には使用しないことで、垂直方向動きベクトルの信頼性を高めることができる。   Accordingly, it can be determined that a block whose horizontal block n-valued addition data peak value is equal to or smaller than the predetermined value B is less reliable than a block whose predetermined value is equal to or greater than A. Therefore, the reliability of the vertical motion vector can be improved by not using the horizontal block determined to be an invalid block for determining the vertical motion vector of the entire image.

図28は、水平方向ブロックの有効/無効の判定を模式的に示す図である。
図28においては、横軸を水平方向ブロックn値化加算データピーク値の最大値とし、縦軸を水平方向ブロックn値化加算データピーク値としたグラフを表しており、水平方向ブロックn値化加算データピーク値の最大値が所定値A以上のときは、水平方向ブロックn値化加算データが所定値B以下の水平方向ブロックを無効ブロックとして判断する動作が表されている。
FIG. 28 is a diagram schematically illustrating whether the horizontal block is valid / invalid.
28 shows a graph in which the horizontal axis represents the maximum value of the horizontal block n-valued addition data peak value, and the vertical axis represents the horizontal block n-value addition data peak value. When the maximum value of the added data peak value is equal to or greater than the predetermined value A, an operation is illustrated in which a horizontal block whose horizontal block n-valued added data is equal to or smaller than the predetermined value B is determined as an invalid block.

また、図28においては、水平方向ブロックn値化加算データピーク値の最大値が所定値Aよりも小さい場合には、水平方向ブロックn値化加算データピーク値が所定値B以下のブロックが存在しても、当該ブロックについては無効ブロックと判断しないという動作も表されている。   In FIG. 28, when the maximum value of the horizontal block n-valued addition data peak value is smaller than the predetermined value A, there is a block whose horizontal block n-valued addition data peak value is equal to or less than the predetermined value B. Even so, the operation of not determining that the block is an invalid block is also shown.

例えば、図27を例に採れば、水平方向ブロックn値化加算データピーク値の最大値が7である場合は、垂直方向ブロックhb0、hb1、hb7、hb8およびhb9は無効ブロックとは判断されない。これは、水平方向ブロックn値化加算データピーク値が最大値であるブロックに対して、相対的には信頼性が低いとは言えないからである。   For example, taking FIG. 27 as an example, if the maximum value of the horizontal block n-valued addition data peak value is 7, the vertical blocks hb0, hb1, hb7, hb8 and hb9 are not determined to be invalid blocks. This is because it cannot be said that the reliability is relatively low with respect to the block whose horizontal block n-valued addition data peak value is the maximum value.

なお、上記においては、有効/無効の判定条件を、所定値Aを12とし、所定値Bを7とする例を示したが、これに限定されるものではなく、画像の垂直方向画素数に依存し、例えば垂直方向画素数が480画素である場合には、所定値Aは10程度の値に設定し、所定値Bはその半分前後の値に設定すれば良い。   In the above description, an example in which the valid / invalid determination condition is set to 12 for the predetermined value A and 7 for the predetermined value B is not limited to this. For example, when the number of pixels in the vertical direction is 480 pixels, the predetermined value A may be set to a value of about 10, and the predetermined value B may be set to a value around half of that.

<第3の閾値交差点の個数を用いる場合>
図29は、第3の閾値交差点の個数を用いて各垂直方向ブロックの有効/無効を判定する方法を説明する図である。
<When using the number of third threshold intersections>
FIG. 29 is a diagram illustrating a method of determining validity / invalidity of each vertical block using the number of third threshold intersections.

図29においては、図22(a)に示した640画素×480画素の画像データを例に採り、垂直方向に64画素の幅(分割幅)を有した10個の水平方向ブロックhb0〜hb9に分割した場合を示している。   In FIG. 29, the image data of 640 pixels × 480 pixels shown in FIG. 22A is taken as an example, and ten horizontal blocks hb0 to hb9 having a width of 64 pixels (divided width) in the vertical direction are shown. This shows the case of division.

また、図29においては、第3の閾値交差点探索部48(図6)から出力される第3の閾値交差点の個数を、各ブロックごとに16進数表記で示している。   Further, in FIG. 29, the number of third threshold intersections output from the third threshold intersection searching unit 48 (FIG. 6) is shown in hexadecimal notation for each block.

第3の閾値交差点探索部48では、第2の水平方向ブロック射影ラインメモリ46に保存される前フレームに係る第2の水平方向ブロック射影データの波形と、第2の水平方向ブロック射影データ最大値保存部45で算出された第3の閾値とが交差する第3の閾値交差点の情報を出力するが、当該情報には第3の閾値交差点の個数についての情報も含まれており、図29に示すように、各水平方向ブロックhb0〜hb9ごとに第3の閾値交差点の個数が得られる。   In the third threshold intersection searching unit 48, the waveform of the second horizontal block projection data relating to the previous frame stored in the second horizontal block projection line memory 46 and the second horizontal block projection data maximum value are stored. Information on the third threshold value intersection at which the third threshold value calculated by the storage unit 45 intersects is output. This information also includes information on the number of third threshold value intersections, as shown in FIG. As shown, the number of third threshold intersections is obtained for each horizontal block hb0-hb9.

図30は、水平方向ブロックの有効/無効の判定を模式的に示す図である。
図30においては、横軸を各水平方向ブロックhb0〜hb9における第3の閾値交差点の個数の最大値とし、縦軸を第3の閾値交差点の個数としたグラフを表しており、垂直方向動きベクトル決定部51(図6)では、各水平方向ブロックhb0〜hb9における第3の閾値交差点の個数が、所定値D(例えば、10進数表記で3)以下のブロックについては、第3の閾値交差点の個数の最大値に関わりなく無効ブロックと判断する。図29の例では、水平方向ブロックhb0およびhb9が無効ブロックと判断される。
FIG. 30 is a diagram schematically illustrating determination of validity / invalidity of a horizontal block.
FIG. 30 shows a graph in which the horizontal axis represents the maximum number of third threshold intersections in each of the horizontal blocks hb0 to hb9, and the vertical axis represents the number of third threshold intersections. In the determination unit 51 (FIG. 6), the third threshold value intersection is determined for blocks whose number of third threshold intersections in each of the horizontal blocks hb0 to hb9 is equal to or less than a predetermined value D (for example, 3 in decimal notation). Regardless of the maximum value, it is determined as an invalid block. In the example of FIG. 29, the horizontal blocks hb0 and hb9 are determined to be invalid blocks.

無効ブロックと判断される水平方向ブロックについては、画像全体の垂直方向動きベクトルの決定には使用しないことで、垂直方向動きベクトルの信頼性を高めることができる。   The reliability of the vertical motion vector can be enhanced by not using the horizontal block determined to be an invalid block for determining the vertical motion vector of the entire image.

一方で、第3の閾値交差点の個数は少なくとも垂直方向の画素数以下であり、垂直方向の画素数と比較して余りにも個数が多い場合は非常に周期的な絵柄を捉えていると言えるので、例えば、所定値E以上(例えば、垂直方向画素数の半分以上)となっているような場合には、そのブロックを無効ブロックと判断するように構成しても良い。例えば、図29の水平方向ブロックhb4では、第3の閾値交差点の個数が241であり、垂直方向画素数の半分以上あるので、無効ブロックと判断される。   On the other hand, the number of the third threshold intersections is at least equal to or less than the number of pixels in the vertical direction, and if the number is too large compared to the number of pixels in the vertical direction, it can be said that a very periodic pattern is captured. For example, when the value is equal to or greater than a predetermined value E (for example, more than half of the number of pixels in the vertical direction), the block may be determined as an invalid block. For example, in the horizontal block hb4 of FIG. 29, the number of third threshold intersections is 241 and is more than half of the number of vertical pixels, so it is determined as an invalid block.

また、図31に示すように、第3の閾値交差点の個数の最大値が所定値C(>D)以上である場合にのみ、所定値D以下のブロックについては無効ブロックと判断するように構成しても良い。この場合、第3の閾値交差点の個数の最大値が所定値Cよりも小さい場合には、所定値D以下のブロックが存在しても、当該ブロックについては無効ブロックとは判断されず、無効ブロックの判定基準をより細かく設定できる。   Further, as shown in FIG. 31, only when the maximum value of the number of third threshold intersections is equal to or greater than a predetermined value C (> D), a block having a predetermined value D or less is determined to be an invalid block. You may do it. In this case, if the maximum value of the number of the third threshold intersections is smaller than the predetermined value C, even if there is a block equal to or smaller than the predetermined value D, the block is not determined as an invalid block, and the invalid block Can be set more finely.

なお、上記においては、有効/無効の判定条件を、所定値Dを3とし、所定値Eを垂直方向画素数の半分とする例を示したが、これに限定されるものではない。   In the above description, an example in which the valid / invalid determination condition is such that the predetermined value D is 3 and the predetermined value E is half the number of pixels in the vertical direction is not limited to this.

以上説明した第1の水平方向ブロック射影データの最大値を用いて各水平方向ブロックの有効/無効を判定する方法、水平方向ブロックn値化加算データピーク値を用いて各水平方向ブロックの有効/無効を判定する方法および第3の閾値交差点の情報を用いて各水平方向ブロックの有効/無効を判定する方法を用いることで無効ブロックを判定し、無効ブロックとされた水平方向ブロックから算出された垂直方向動きベクトルは、画像全体の垂直方向動きベクトルを決定する際には使用しないようにすることで、動きベクトルの信頼性を高めることができる。   The method for determining validity / invalidity of each horizontal block using the maximum value of the first horizontal block projection data described above, and the validity / invalidity of each horizontal block using the horizontal block n-valued addition data peak value An invalid block is determined by using a method for determining invalidity and a method for determining validity / invalidity of each horizontal block by using the information of the third threshold intersection, and is calculated from the horizontal block that is determined as an invalid block By not using the vertical motion vector when determining the vertical motion vector of the entire image, the reliability of the motion vector can be improved.

また、以上説明した3つの判定方法は、単独で用いても良いが組み合わせて用いても良い。   Further, the above-described three determination methods may be used alone or in combination.

例えば、第1の水平方向ブロック射影データの最大値を用いて有効/無効を判定するとともに、水平方向ブロックn値化加算データピーク値を用いて各水平方向ブロックの有効/無効を判定しても良いし、第1の水平方向ブロック射影データの最大値を用いて有効/無効を判定するとともに、第3の閾値交差点の情報を用いて各水平方向ブロックの有効/無効を判定しても良い。   For example, the validity / invalidity is determined using the maximum value of the first horizontal block projection data, and the validity / invalidity of each horizontal block is determined using the horizontal block n-valued addition data peak value. The validity / invalidity may be determined using the maximum value of the first horizontal block projection data, and the validity / invalidity of each horizontal block may be determined using the third threshold intersection information.

このような組み合わせにより、無効ブロックを確実に選択することができ、動きベクトルの信頼性をさらに高めることができる。   With such a combination, an invalid block can be reliably selected, and the reliability of the motion vector can be further improved.

<垂直方向動きベクトルの決定方法>
垂直方向動きベクトル決定部51では、上記のように水平方向ブロックの有効/無効を判定し、有効ブロックと判定された水平方向ブロックについて、その垂直方向動きベクトルから画像全体の垂直方向動きベクトルを決定する。
<Method for determining vertical motion vector>
As described above, the vertical motion vector determination unit 51 determines the validity / invalidity of the horizontal block, and determines the vertical motion vector of the entire image from the vertical motion vector for the horizontal block determined to be a valid block. To do.

このとき、同じ垂直方向動きベクトルを有する水平方向ブロックを集め、ヒストグラムを作成する。   At this time, horizontal blocks having the same vertical motion vector are collected to create a histogram.

以下、図32および図33を用いて、画像全体の垂直方向動きベクトルの決定方法の一例について説明する。   Hereinafter, an example of a method for determining the vertical motion vector of the entire image will be described with reference to FIGS. 32 and 33.

図32および図33においては、水平方向動きベクトルの検出範囲を−VないしVとする場合を示しており、ここでは、一例としてVが31の場合を示しており、−31から31まで1ベクトル間隔で表示されている。なお、各ベクトルに対応して設けたボックス内に表示された数字は、同じベクトルを有する水平方向ブロックの個数を表している。   32 and 33 show the case where the detection range of the horizontal motion vector is -V to V. Here, the case where V is 31 is shown as an example, and one vector from -31 to 31 is shown. Displayed at intervals. The numbers displayed in the boxes provided corresponding to the vectors represent the number of horizontal blocks having the same vector.

図32に示すように、各水平方向ブロックについて算出された垂直方向動きベクトルのうち、垂直方向動きベクトル−3および垂直方向動きベクトル2については2つの水平方向ブロックで算出されているが、他の水平方向ブロックでは全てバラバラの垂直方向動きベクトルとなっており、その分布範囲の最小値は−26、最大値は8となっており、その差34となって動きベクトル検出範囲に対して非常にバラツキがあると言える。なお、図32においては、現フレームの各水平方向ブロックから得られた垂直方向動きベクトルに対応するブロックに砂地のハッチングを付している。   As shown in FIG. 32, among the vertical motion vectors calculated for each horizontal block, the vertical motion vector-3 and the vertical motion vector 2 are calculated with two horizontal blocks. In the horizontal block, all the vertical motion vectors are disjoint, the minimum value of the distribution range is −26, the maximum value is 8, and the difference 34 is very large with respect to the motion vector detection range. It can be said that there is variation. In FIG. 32, the sand corresponding to the vertical motion vector obtained from each horizontal block in the current frame is hatched.

垂直方向動きベクトル決定部51では、各水平方向ブロックから得られた垂直方向動きベクトルの最大値と最小値の差が予め定めた閾値B(例えば、上述したV)以上のとき、各水平方向ブロックから得られる垂直方向動きベクトルは信頼性が低いとして、垂直方向動きベクトルを0とする。   In the vertical direction motion vector determination unit 51, when the difference between the maximum value and the minimum value of the vertical direction motion vector obtained from each horizontal block is equal to or greater than a predetermined threshold B (for example, V described above), each horizontal direction block The vertical motion vector obtained from the above is assumed to have low reliability, and the vertical motion vector is set to zero.

このような処理を行うことで、画像全体の水平方向動きベクトルの信頼性を高めることができる。   By performing such processing, the reliability of the horizontal motion vector of the entire image can be increased.

一方、垂直方向動きベクトル−3および垂直方向動きベクトル2を有する水平方向ブロックの個数が予め定めた数値A(例えば3)以上である場合には、各水平方向ブロックから得られる垂直方向動きベクトルは十分信頼できると判断する。   On the other hand, when the number of horizontal blocks having the vertical motion vector-3 and the vertical motion vector 2 is equal to or greater than a predetermined numerical value A (eg, 3), the vertical motion vector obtained from each horizontal block is Judge that it is reliable enough.

同様に、各水平方向ブロックから得られた垂直方向動きベクトルの最大値と最小値の差が閾値Bより小さい場合にも、各水平方向ブロックから得られた垂直方向動きベクトルは十分信頼できると判断する。   Similarly, when the difference between the maximum value and the minimum value of the vertical motion vector obtained from each horizontal block is smaller than the threshold value B, it is determined that the vertical motion vector obtained from each horizontal block is sufficiently reliable. To do.

なお、数値A、閾値Bは上述した値に限るものではない。また、バラツキの判断も上述した垂直方向動きベクトルの最大値と最小値の差で判断することに限定されず、標準偏差を用いて、例えば、標準偏差が閾値B以上のとき、バラツキが大きいと判断しても良い。   Note that the numerical value A and the threshold value B are not limited to the values described above. Further, the determination of the variation is not limited to the above-described difference between the maximum value and the minimum value of the vertical motion vector, and the standard deviation is used. For example, when the standard deviation is greater than or equal to the threshold B, the variation is large. You may judge.

上述した処理の結果、各水平方向ブロックから得られた垂直方向動きベクトルが十分信頼できると判断できた場合、次の手順で現フレームの垂直方向動きベクトルを算出する。   As a result of the above-described processing, when it is determined that the vertical motion vector obtained from each horizontal block is sufficiently reliable, the vertical motion vector of the current frame is calculated by the following procedure.

その概要は、現フレームの各水平方向ブロックから出力された垂直方向動きベクトルのうち、前フレームの垂直方向動きベクトルに最も近い垂直方向動きベクトルを現フレームの垂直方向動きベクトルとするものである。   The outline is that among the vertical motion vectors output from the horizontal blocks of the current frame, the vertical motion vector closest to the vertical motion vector of the previous frame is used as the vertical motion vector of the current frame.

図33においては、各水平方向ブロックから得られた垂直方向動きベクトルの分布範囲の最大値と最小値の差が9である場合を示しており、閾値B(例えばV=31)よりも小さいため、垂直方向動きベクトル決定部51では、各水平方向ブロックから算出された垂直方向動きベクトルは信頼性があるものと判断する。   FIG. 33 shows a case where the difference between the maximum value and the minimum value of the vertical motion vector distribution range obtained from each horizontal block is 9, and is smaller than the threshold value B (for example, V = 31). The vertical motion vector determination unit 51 determines that the vertical motion vector calculated from each horizontal block is reliable.

ここで、図33においては垂直方向動きベクトル8が前フレームの垂直方向動きベクトルであり、これに最も近い現フレームの各水平方向ブロックから得られた垂直方向動きベクトルは、垂直方向動きベクトル6である。従って、垂直方向動きベクトル6が現フレームの垂直方向動きベクトルと決定される。なお、図33においては、現フレームの各水平方向ブロックから得られた垂直方向動きベクトルに対応するブロックに砂地のハッチングを付し、前フレームの垂直方向動きベクトルに対応するブロックに斜線のハッチングを付している。   Here, in FIG. 33, the vertical motion vector 8 is the vertical motion vector of the previous frame, and the vertical motion vector obtained from each horizontal block of the current frame closest to this is the vertical motion vector 6. is there. Accordingly, the vertical motion vector 6 is determined as the vertical motion vector of the current frame. In FIG. 33, the sand corresponding to the vertical motion vector obtained from each horizontal block of the current frame is hatched, and the block corresponding to the vertical motion vector of the previous frame is hatched. It is attached.

ここで、複数の水平方向ブロックの出力結果が同じ垂直方向動きベクトルとなった場合、すなわち、ある垂直方向動きベクトルの個数が2以上となった場合、個数1の垂直方向動きベクトルは信頼性が低いものとして除外し、その上で前フレームの垂直方向動きベクトルに最も近い垂直方向動きベクトルを求め、その垂直方向動きベクトルを現フレームの垂直方向動きベクトルとしても良い。   Here, when the output results of a plurality of horizontal blocks are the same vertical motion vector, that is, when the number of certain vertical motion vectors is 2 or more, the number of vertical motion vectors of 1 is reliable. The vertical motion vector closest to the vertical motion vector of the previous frame is obtained as a lower motion vector, and the vertical motion vector of the current frame may be used as the vertical motion vector of the current frame.

この方法を採る場合、図33の例では、垂直方向動きベクトル5が現フレームの水平方向動きベクトルとなる。   When this method is adopted, in the example of FIG. 33, the vertical motion vector 5 becomes the horizontal motion vector of the current frame.

なお、前フレームの垂直方向動きベクトルに最も近い垂直方向動きベクトルが2つ存在する場合には、その平均、つまり、前フレームの垂直方向動きベクトルそのものを現フレームの垂直方向動きベクトルとすれば良い。   If there are two vertical motion vectors that are closest to the vertical motion vector of the previous frame, the average, that is, the vertical motion vector of the previous frame itself may be used as the vertical motion vector of the current frame. .

ここで、前フレームの垂直方向動きベクトルの情報は、垂直方向動きベクトル決定部51内に設けられた所定の記憶部(前フレーム垂直方向動きベクトル保存手段)に保存しておき、必要に応じて読み出すように構成されている。   Here, the information on the vertical motion vector of the previous frame is stored in a predetermined storage unit (previous frame vertical motion vector storage means) provided in the vertical motion vector determination unit 51, and if necessary, It is configured to read.

以上説明したように、水平方向ブロックの有効/無効の判定動作により信頼性の低い水平方向ブロックを除外した上で、信頼性の高い水平方向ブロックに基づいて算出される垂直方向動きベクトルについてバラツキを考慮して画像全体の垂直方向動きベクトルの信頼性を評価し、信頼できると判断した場合にも、前フレームの垂直方向動きベクトルを考慮することで、前フレームからの動きを加味した違和感の少ない垂直方向動きベクトルを決定することができる。   As described above, after the horizontal block having low reliability is excluded by the determination operation of the validity / invalidity of the horizontal block, the vertical motion vector calculated based on the horizontal block having high reliability is varied. Considering the vertical motion vector reliability of the entire image, considering the reliability of the entire image in consideration of the vertical motion vector of the previous frame, even if it is determined to be reliable, there is little uncomfortable feeling considering the motion from the previous frame A vertical motion vector can be determined.

<効果>
以上に説明したように、実施の形態1に係る動きベクトル検出装置1の水平方向動きベクトル検出部2においては、水平方向動きベクトル決定部32において、第1の垂直方向ブロック射影データ最大値保存部24から出力される第1の垂直方向ブロック射影データの最大値、垂直方向ブロック水平方向動きベクトル算出部31から出力される垂直方向ブロックn値化加算データピーク値、第1の閾値交差点探索部29から出力される第1の閾値交差点の情報に基づいて、垂直方向ブロックの有効/無効の判断を行うため、信頼性の低い垂直方向ブロックから得られた水平方向動きベクトルを除外することができ、結果的に、信頼性の高い水平方向動きベクトルを算出することができる。
<Effect>
As described above, in the horizontal direction motion vector detection unit 2 of the motion vector detection device 1 according to Embodiment 1, the horizontal direction motion vector determination unit 32 includes the first vertical block projection data maximum value storage unit. 24. The maximum value of the first vertical block projection data output from 24, the vertical block n-valued addition data peak value output from the vertical block horizontal motion vector calculation unit 31, and the first threshold value intersection search unit 29 Based on the information on the first threshold intersection output from, it is possible to exclude the horizontal motion vector obtained from the low-reliability vertical block in order to determine the validity / invalidity of the vertical block, As a result, a highly reliable horizontal motion vector can be calculated.

また、信頼性の高い垂直方向ブロックに基づいて算出される水平方向動きベクトルについてバラツキを考慮して画像全体の水平方向動きベクトルの信頼性を評価し、信頼できると判断した場合にも、前フレームの水平方向動きベクトルを考慮することで、前フレームからの動きを加味した違和感の少ない水平方向動きベクトルを決定することができる。   In addition, if the reliability of the horizontal motion vector of the entire image is evaluated by considering the variation of the horizontal motion vector calculated based on the highly reliable vertical block, and the frame is determined to be reliable, By considering the horizontal direction motion vector, it is possible to determine a horizontal direction motion vector with less sense of incongruity in consideration of the motion from the previous frame.

また、垂直方向動きベクトル検出部4においては、垂直方向動きベクトル決定部51において、第1の水平方向ブロック射影データ最大値保存部45から出力される第1の水平方向ブロック射影データの最大値、水平方向ブロック垂直方向動きベクトル算出部50から出力される水平方向ブロックn値化加算データピーク値、第3の閾値交差点探索部48から出力される第3の閾値交差点の情報に基づいて、水平方向ブロックの有効/無効の判断を行うため、信頼性の低い水平方向ブロックから得られた垂直方向動きベクトルを除外することができ、結果的に、信頼性の高い垂直方向動きベクトルを算出することができる。   Further, in the vertical direction motion vector detection unit 4, the maximum value of the first horizontal direction block projection data output from the first horizontal direction block projection data maximum value storage unit 45 in the vertical direction motion vector determination unit 51, Based on the horizontal block n-valued addition data peak value output from the horizontal block vertical motion vector calculation unit 50 and the third threshold intersection information output from the third threshold intersection search unit 48, the horizontal direction Since the validity / invalidity of the block is determined, the vertical motion vector obtained from the horizontal block with low reliability can be excluded, and as a result, the vertical motion vector with high reliability can be calculated. it can.

また、信頼性の高い水平方向ブロックに基づいて算出される垂直方向動きベクトルについてバラツキを考慮して画像全体の垂直方向動きベクトルの信頼性を評価し、信頼できると判断した場合にも、前フレームの垂直方向動きベクトルを考慮することで、前フレームからの動きを加味した違和感の少ない垂直方向動きベクトルを決定することができる。   In addition, when the reliability of the vertical motion vector of the entire image is evaluated by considering the variation of the vertical motion vector calculated based on the highly reliable horizontal block, and the frame is determined to be reliable, By considering the vertical direction motion vector, it is possible to determine a vertical direction motion vector with less sense of incongruity considering the motion from the previous frame.

<実施の形態2>
<動きベクトル検出装置の構成>
本発明の実施の形態2に係る動きベクトル検出装置1Aについては、図1に示す実施の形態1の動きベクトル検出装置1と類似の構成を有しているが、水平方向動きベクトル検出部と垂直方向動きベクトル検出部との構成が異なっている。この動きベクトル検出装置1Aにおける水平方向動きベクトル検出部2Aおよび垂直方向動きベクトル検出部4Aの構成について図34および図35を参照して説明する。
<Embodiment 2>
<Configuration of motion vector detection device>
The motion vector detection device 1A according to the second embodiment of the present invention has a configuration similar to that of the motion vector detection device 1 according to the first embodiment shown in FIG. 1, but is perpendicular to the horizontal motion vector detection unit. The configuration differs from that of the directional motion vector detection unit. Configurations of the horizontal direction motion vector detection unit 2A and the vertical direction motion vector detection unit 4A in the motion vector detection device 1A will be described with reference to FIGS. 34 and 35. FIG.

図34は、水平方向動きベクトル検出部2Aの要部構成を示すブロック図である。なお、図34では、実施の形態1と同様の機能を有する部位には同一の符号を付している。   FIG. 34 is a block diagram showing a main configuration of the horizontal direction motion vector detection unit 2A. In FIG. 34, parts having the same functions as those in the first embodiment are denoted by the same reference numerals.

水平方向動きベクトル検出部2Aでは、実施の形態1の水平方向動きベクトル検出部2に対して垂直方向画像分割部21と垂直方向エッジ抽出フィルタリング部22との配置が逆転している。以下では、この水平方向動きベクトル検出部2Aの動作について説明する。   In the horizontal direction motion vector detection unit 2A, the arrangement of the vertical direction image division unit 21 and the vertical direction edge extraction filtering unit 22 is reversed with respect to the horizontal direction motion vector detection unit 2 of the first embodiment. Below, operation | movement of this horizontal direction motion vector detection part 2A is demonstrated.

図2に示すように水平ラインの画素走査を垂直方向に順に繰り返すことによって読み出されるフレーム画像が、水平方向動きベクトル検出部2Aの入力端子20に入力されると、垂直方向エッジ抽出フィルタリング部22において垂直方向に延びるエッジ成分の抽出、換言すれば水平方向に急峻に変化する画像部分を強調するようなフィルタリング処理が施される。   As shown in FIG. 2, when a frame image read by sequentially repeating pixel scanning of the horizontal line in the vertical direction is input to the input terminal 20 of the horizontal motion vector detection unit 2A, the vertical edge extraction filtering unit 22 Extraction of edge components extending in the vertical direction, in other words, filtering processing for emphasizing image portions that change sharply in the horizontal direction is performed.

垂直方向エッジ抽出フィルタリング部22で垂直方向のエッジが強調されたフレーム画像が垂直方向画像分割部21に入力されると、垂直方向にブロック分割される。すなわち、垂直方向画像分割部21では、エッジ強調が施されたフレーム画像を垂直方向に分割して得られる複数の画像領域(垂直方向ブロック)が設定される。これにより、以降の処理では、垂直方向ブロックごとに処理および管理が行われることとなる。   When the frame image in which the vertical edge is emphasized by the vertical edge extraction filtering unit 22 is input to the vertical image dividing unit 21, it is divided into blocks in the vertical direction. That is, the vertical image dividing unit 21 sets a plurality of image regions (vertical blocks) obtained by dividing the frame image subjected to edge enhancement in the vertical direction. As a result, in the subsequent processing, processing and management are performed for each vertical block.

垂直方向画像分割部21で分割された画像データは、垂直方向ブロック射影部23に入力されるが、この垂直方向ブロック射影部23以降の処理は、実施の形態1の水平方向動きベクトル検出部2と同様の処理が行われる。   The image data divided by the vertical image dividing unit 21 is input to the vertical block projecting unit 23. The processes after the vertical block projecting unit 23 are the horizontal direction motion vector detecting unit 2 of the first embodiment. The same processing is performed.

図35は、垂直方向動きベクトル検出部4Aの要部構成を示すブロック図である。なお、図35では、実施の形態1と同様の機能を有する部位には同一の符号を付している。   FIG. 35 is a block diagram showing a main configuration of the vertical motion vector detection unit 4A. In FIG. 35, parts having the same functions as those in the first embodiment are denoted by the same reference numerals.

垂直方向動きベクトル検出部4Aでは、実施の形態1の垂直方向動きベクトル検出部4に対して水平方向画像分割部41と水平方向エッジ抽出フィルタリング部42との配置が逆転している。以下では、この垂直方向動きベクトル検出部4Aの動作について説明する。   In the vertical direction motion vector detection unit 4A, the arrangement of the horizontal direction image division unit 41 and the horizontal direction edge extraction filtering unit 42 is reversed with respect to the vertical direction motion vector detection unit 4 of the first embodiment. Hereinafter, the operation of the vertical motion vector detection unit 4A will be described.

図2に示すように水平ラインの画素走査を垂直方向に順に繰り返すことによって読み出されるフレーム画像が、垂直方向動きベクトル検出部4Aの入力端子40に入力されると、水平方向エッジ抽出フィルタリング部42において水平方向に延びるエッジ成分の抽出、換言すれば垂直方向に急峻に変化する画像部分を強調するようなフィルタリング処理が施される。   As shown in FIG. 2, when a frame image read out by repeating the pixel scanning of the horizontal line in order in the vertical direction is input to the input terminal 40 of the vertical direction motion vector detection unit 4A, the horizontal direction edge extraction filtering unit 42 Extraction of the edge component extending in the horizontal direction, in other words, filtering processing for emphasizing an image portion that changes sharply in the vertical direction is performed.

水平方向エッジ抽出フィルタリング部42で水平方向のエッジが強調されたフレーム画像が水平方向画像分割部41に入力されると、水平方向にブロック分割される。すなわち、水平方向画像分割部41では、エッジ強調が施されたフレーム画像を水平方向に分割して得られる複数の画像領域(水平方向ブロック)が設定される。これにより、以降の処理では、水平方向ブロックごとに処理および管理が行われることとなる。   When the frame image in which the horizontal edge is emphasized by the horizontal edge extraction filtering unit 42 is input to the horizontal image dividing unit 41, the frame image is divided into blocks in the horizontal direction. That is, the horizontal image dividing unit 41 sets a plurality of image regions (horizontal blocks) obtained by dividing the frame image subjected to edge enhancement in the horizontal direction. Thereby, in subsequent processing, processing and management are performed for each horizontal block.

水平方向画像分割部41で分割された画像データは、水平方向ブロック射影部43に入力されるが、この水平方向ブロック射影部43以降の処理は、実施の形態1の垂直方向動きベクトル検出部4と同様の処理が行われる。   The image data divided by the horizontal image dividing unit 41 is input to the horizontal block projecting unit 43. The processing after the horizontal block projecting unit 43 is the vertical motion vector detecting unit 4 of the first embodiment. The same processing is performed.

以上の動きベクトル検出装置1Aの動作により、実施の形態1と同様の効果を奏する。   The operation of the motion vector detection device 1A described above provides the same effects as those of the first embodiment.

そして、動きベクトル検出装置1Aでは、垂直方向エッジ抽出フィルタリング部22でフレーム画像に対する垂直方向のエッジを強調した後に、エッジ強調されたフレーム画像を垂直方向画像分割部21において垂直方向に分割するため、垂直方向のエッジが強調された分割画像を簡易に生成できる。   Then, in the motion vector detection device 1A, the vertical edge extraction filtering unit 22 emphasizes the edge in the vertical direction with respect to the frame image, and then the vertical image dividing unit 21 divides the frame image subjected to edge enhancement in the vertical direction. A divided image with emphasized vertical edges can be easily generated.

同様に、水平方向エッジ抽出フィルタリング部42でフレーム画像に対する水平方向のエッジを強調した後に、エッジ強調されたフレーム画像を水平方向画像分割部41において水平方向に分割するため、水平方向のエッジが強調された分割画像を簡易に生成できる。   Similarly, the horizontal edge extraction filtering unit 42 emphasizes the horizontal edge of the frame image, and then the edge-enhanced frame image is divided in the horizontal direction by the horizontal image dividing unit 41. Therefore, the horizontal edge is emphasized. The divided image can be easily generated.

なお、動きベクトル検出装置1Aにおいては、垂直方向エッジ抽出フィルタリング部22と水平方向エッジ抽出フィルタリング部42とを別々に水平方向動きベクトル検出部2Aおよび垂直方向動きベクトル検出部4Aに配置するのは必須でなく、垂直方向エッジ抽出フィルタリング部22および水平方向エッジ抽出フィルタリング部42の双方の機能を一体化した水平/垂直方向エッジ抽出フィルタリング部を設けて、その出力を垂直方向画像分割部21および水平方向画像分割部41それぞれに入力させるようにしても良い。   In the motion vector detection device 1A, it is essential to arrange the vertical edge extraction filtering unit 22 and the horizontal edge extraction filtering unit 42 separately in the horizontal motion vector detection unit 2A and the vertical motion vector detection unit 4A. In addition, a horizontal / vertical edge extraction filtering unit in which the functions of both the vertical edge extraction filtering unit 22 and the horizontal edge extraction filtering unit 42 are integrated is provided, and the output is provided to the vertical image dividing unit 21 and the horizontal direction. You may make it make each image division part 41 input.

<変形例>
上記の各実施の形態における垂直方向エッジ抽出フィルタリング部および水平方向エッジ抽出フィルタリング部については、エッジ抽出を行うフィルタリング処理後に、所定の閾値との大小関係を判別する閾値処理により例えば「エッジあり」「エッジなし」の2値化や、「正のエッジあり」「エッジなし」「負のエッジあり」の3値化を行うようにしても良い。このような閾値処理を行うことにより、所定の閾値以上の輝度変化(輝度勾配)を有するエッジを同一に扱うことが可能となる。
<Modification>
For the vertical direction edge extraction filtering unit and the horizontal direction edge extraction filtering unit in each of the above embodiments, after the filtering process for performing edge extraction, for example, “with edge” and “ The binarization of “no edge” or the ternarization of “with positive edge”, “without edge”, and “with negative edge” may be performed. By performing such threshold processing, it is possible to treat edges having a luminance change (luminance gradient) equal to or greater than a predetermined threshold in the same way.

上記の各実施の形態においては、ビット数削減部25から出力されるデータを、例えばフレームごとのスイッチ切替えによって第1の垂直方向ブロック射影ラインメモリ26と第2の垂直方向ブロック射影ラインメモリ27とに交互に入力させるようにしても良い。また、水平方向ブロック射影部43から出力されるデータを、例えばフレームごとのスイッチ切替えによって第1の水平方向ブロック射影ラインメモリ44と第2の水平方向ブロック射影ラインメモリ46とに交互に入力させるようにしても良い。同様に、垂直(水平)方向ブロック射影部から出力されるデータを、例えばフレームごとのスイッチ切替えによって第1の垂直(水平)方向ブロック射影データ最大値保存部と第2の垂直(水平)方向ブロック射影データ最大値保存部とに交互に入力させるようにしても良い。   In each of the above-described embodiments, the data output from the bit number reduction unit 25 is converted into the first vertical block projection line memory 26 and the second vertical block projection line memory 27 by, for example, switch switching for each frame. You may make it input alternately. Further, the data output from the horizontal block projection unit 43 is alternately input to the first horizontal block projection line memory 44 and the second horizontal block projection line memory 46 by, for example, switch switching for each frame. Anyway. Similarly, the data output from the vertical (horizontal) direction block projection unit is converted into, for example, a first vertical (horizontal) direction block projection data maximum value storage unit and a second vertical (horizontal) direction block by switching switches for each frame. Alternatively, the data may be alternately input to the projection data maximum value storage unit.

本発明における「前フレーム」には、後フレーム(例えば現在のフレーム)に対して1つだけ前のフレームに限らず、2つ以上前のフレームも含まれる。例えば、フレーム間引き処理により途中のフレームがスキップされている場合には、スキップされたフレームの前のフレームが含まれる。   The “previous frame” in the present invention is not limited to the previous frame, but includes two or more previous frames (for example, the current frame). For example, when a frame in the middle is skipped by the frame thinning process, the frame before the skipped frame is included.

本発明の実施の形態1に係る動きベクトル検出装置1(1A)の要部構成を示すブロック図である。It is a block diagram which shows the principal part structure of the motion vector detection apparatus 1 (1A) which concerns on Embodiment 1 of this invention. フレーム画像における画素走査方向を説明するための図である。It is a figure for demonstrating the pixel scanning direction in a frame image. 水平方向動きベクトル検出部2の要部構成を示すブロック図である。3 is a block diagram showing a main configuration of a horizontal motion vector detection unit 2. FIG. 垂直方向ブロック射影部23の要部構成を示すブロック図である。FIG. 4 is a block diagram showing a main configuration of a vertical block projection unit 23. 垂直方向ブロック水平方向動きベクトル算出部31の要部構成を示すブロック図である。FIG. 6 is a block diagram showing a main configuration of a vertical block horizontal motion vector calculation unit 31. 垂直方向動きベクトル検出部4の要部構成を示すブロック図である。FIG. 3 is a block diagram illustrating a main configuration of a vertical motion vector detection unit 4. 水平方向ブロック射影部43の要部構成を示すブロック図である。FIG. 4 is a block diagram illustrating a main configuration of a horizontal block projection unit 43. 水平方向ブロック垂直方向動きベクトル算出部50の要部構成を示すブロック図である。FIG. 6 is a block diagram showing a main configuration of a horizontal block vertical motion vector calculation unit 50. 垂直方向画像分割部21および垂直方向ブロック射影部23の動作を説明するための図である。It is a figure for demonstrating operation | movement of the vertical direction image division part 21 and the vertical direction block projection part 23. FIG. n値化器314、n値化器504におけるn値化処理を説明するための図である。It is a figure for demonstrating the n-value-izing process in the n-value-converter 314 and the n-value-converter 504. 第1の閾値交差点探索部29、垂直方向ブロック射影データ読み出し部30および垂直方向ブロック水平方向動きベクトル算出部31の動作を説明するための図である。It is a figure for demonstrating operation | movement of the 1st threshold value intersection search part 29, the vertical direction block projection data reading part 30, and the vertical direction block horizontal direction motion vector calculation part 31. FIG. 加算器315およびピーク検出部317の動作を説明するための図である。6 is a diagram for explaining operations of an adder 315 and a peak detector 317. FIG. 第1の垂直方向ブロック射影データの最大値を用いて各垂直方向ブロックの有効/無効を判定する方法を説明する図である。It is a figure explaining the method to determine the validity / invalidity of each vertical direction block using the maximum value of 1st vertical direction block projection data. 垂直方向ブロックの有効/無効の判定を模式的に示す図である。It is a figure which shows typically the determination of the validity / invalidity of a vertical direction block. 垂直方向ブロックn値化加算データピーク値を用いて各垂直方向ブロックの有効/無効を判定する方法を説明する図である。It is a figure explaining the method to determine the validity / invalidity of each vertical direction block using a vertical direction block n-valued addition data peak value. 垂直方向ブロックの有効/無効の判定を模式的に示す図である。It is a figure which shows typically the determination of the validity / invalidity of a vertical direction block. 第1の閾値交差点の個数を用いて各垂直方向ブロックの有効/無効を判定する方法を説明する図である。It is a figure explaining the method to determine the validity / invalidity of each vertical direction block using the number of 1st threshold value intersections. 垂直方向ブロックの有効/無効の判定を模式的に示す図である。It is a figure which shows typically the determination of the validity / invalidity of a vertical direction block. 垂直方向ブロックの有効/無効の判定を模式的に示す図である。It is a figure which shows typically the determination of the validity / invalidity of a vertical direction block. 画像全体の水平方向動きベクトルの決定方法の一例について説明する図である。It is a figure explaining an example of the determination method of the horizontal direction motion vector of the whole image. 画像全体の水平方向動きベクトルの決定方法の一例について説明する図である。It is a figure explaining an example of the determination method of the horizontal direction motion vector of the whole image. 水平方向画像分割部41および水平方向ブロック射影部43の動作を説明するための図である。It is a figure for demonstrating operation | movement of the horizontal direction image division part 41 and the horizontal direction block projection part 43. FIG. 第3の閾値交差点探索部48、水平方向ブロック射影データ読み出し部49および水平方向ブロック垂直方向動きベクトル算出部50の動作を説明するための図である。It is a figure for demonstrating operation | movement of the 3rd threshold value intersection search part 48, the horizontal direction block projection data reading part 49, and the horizontal direction block vertical direction motion vector calculation part 50. FIG. 加算器505およびピーク検出部507の動作を説明するための図である。FIG. 10 is a diagram for explaining operations of an adder 505 and a peak detection unit 507. 第1の水平方向ブロック射影データの最大値を用いて各水平方向ブロックの有効/無効を判定する方法を説明する図である。It is a figure explaining the method to determine the validity / invalidity of each horizontal direction block using the maximum value of 1st horizontal direction block projection data. 水平方向ブロックの有効/無効の判定を模式的に示す図である。It is a figure which shows typically the determination of validity / invalidity of a horizontal direction block. 水平方向ブロックn値化加算データピーク値を用いて各水平方向ブロックの有効/無効を判定する方法を説明する図である。It is a figure explaining the method to determine the validity / invalidity of each horizontal direction block using a horizontal direction block n-valued addition data peak value. 水平方向ブロックの有効/無効の判定を模式的に示す図である。It is a figure which shows typically the determination of validity / invalidity of a horizontal direction block. 第3の閾値交差点の個数を用いて各水平方向ブロックの有効/無効を判定する方法を説明する図である。It is a figure explaining the method to determine the validity / invalidity of each horizontal direction block using the number of 3rd threshold value intersections. 水平方向ブロックの有効/無効の判定を模式的に示す図である。It is a figure which shows typically the determination of validity / invalidity of a horizontal direction block. 水平方向ブロックの有効/無効の判定を模式的に示す図である。It is a figure which shows typically the determination of validity / invalidity of a horizontal direction block. 画像全体の垂直方向動きベクトルの決定方法の一例について説明する図である。It is a figure explaining an example of the determination method of the vertical direction motion vector of the whole image. 画像全体の垂直方向動きベクトルの決定方法の一例について説明する図である。It is a figure explaining an example of the determination method of the vertical direction motion vector of the whole image. 本発明の実施の形態2に係る動きベクトル検出装置1Aにおける水平方向動きベクトル検出部2Aの要部構成を示すブロック図である。It is a block diagram which shows the principal part structure of 2 A of horizontal direction motion vector detection parts in 1 A of motion vector detection apparatuses which concern on Embodiment 2 of this invention. 動きベクトル検出装置1Aにおける垂直方向動きベクトル検出部4Aの要部構成を示すブロック図である。It is a block diagram which shows the principal part structure of 4 A of vertical direction motion vector detection parts in 1 A of motion vector detection apparatuses.

符号の説明Explanation of symbols

1,1A 動きベクトル検出装置、hb0〜hb9 水平方向ブロック、hn0〜hn9 水平方向ブロック射影データ、vb0〜vb7 垂直方向ブロック、vn0〜vn6 垂直方向ブロック射影データ、A(1)〜A(8) 第1の閾値交差点、α1 第1の閾値、α2 第2の閾値、B(1)〜B(6) 第3の閾値交差点、α3 第3の閾値、α4 第4の閾値。   1, 1A motion vector detector, hb0 to hb9 horizontal block, hn0 to hn9 horizontal block projection data, vb0 to vb7 vertical block, vn0 to vn6 vertical block projection data, A (1) to A (8) 1 threshold intersection, α1 first threshold, α2 second threshold, B (1) to B (6) third threshold intersection, α3 third threshold, α4 fourth threshold.

Claims (18)

時系列的に前後の関係となる前フレームと後フレームとに関するフレーム画像間の動きベクトルを検出する動きベクトル検出装置であって、
水平ラインの画素走査を垂直方向に順に繰り返すことによって読み出されるフレーム画像に関して、垂直方向に一定の分割幅を有して複数に分割されたブロックごとに垂直方向のエッジを強調するエッジ強調手段と、
前記エッジ強調手段でエッジが強調された画像について、前記ブロックごとに垂直方向に射影をとり、前記ブロックのそれぞれで1水平ライン分のデータ配列を有する射影データを生成する射影手段と、
前記後フレームに対して前記射影手段で得られた後フレーム射影データの配列要素において最大値を求める最大値取得手段と、
前記前フレームに対して前記射影手段で得られた前フレーム射影データに関して前記データ配列の要素順に配列要素の値をグラフ化した波形と、配列要素の値が所定の一定値となる直線とが交差する各交差点の配列要素の位置を特定して交差点情報として出力する特定手段と、
前記各交差点の配列要素の位置を中心とした所定範囲のデータ配列を、前記後フレーム射影データから抽出する抽出手段と、
前記抽出手段で抽出された所定範囲のデータ配列それぞれについて、前記各交差点の配列要素の位置に対して相対位置が同じ配列要素同士の値を加算し、得られた加算結果に基づいて前記ブロックごとの水平方向動きベクトルを算出する加算手段と、
前記加算手段で算出された前記ブロックごとの水平方向動きベクトルに基づき、フレーム画像全体の水平方向動きベクトルを検出する検出手段と、を備え、
前記検出手段は、
前記最大値取得手段で得られた前記後フレーム射影データの前記最大値、前記加算手段で得られた前記加算結果および前記特定手段で得られた前記交差点情報のうち少なくとも1つを用いて前記ブロックごとの水平方向動きベクトルの信頼性評価を行う、動きベクトル検出装置。
A motion vector detection device that detects a motion vector between frame images related to a preceding frame and a following frame that are in a time series front-rear relationship,
Edge enhancement means that emphasizes the edge in the vertical direction for each block divided into a plurality of blocks having a constant division width in the vertical direction with respect to a frame image read out by sequentially repeating pixel scanning of the horizontal line in the vertical direction;
Projecting means for projecting in the vertical direction for each block, and generating projection data having a data array for one horizontal line in each of the blocks, with respect to the image whose edges are enhanced by the edge enhancement means;
Maximum value obtaining means for obtaining a maximum value in an array element of post-frame projection data obtained by the projecting means for the rear frame;
A waveform obtained by graphing array element values in the order of the elements of the data array with respect to the previous frame projection data obtained by the projecting means with respect to the previous frame intersects with a straight line where the array element value is a predetermined constant value. Specifying means for specifying the position of the array element of each intersection to be output as intersection information;
Extracting means for extracting a predetermined range of data array centered on the position of the array element at each intersection from the post-frame projection data;
For each data array in the predetermined range extracted by the extraction means, the values of array elements having the same relative position with respect to the position of the array element at each intersection are added, and each block is based on the obtained addition result Adding means for calculating a horizontal motion vector of
Detecting means for detecting a horizontal motion vector of the entire frame image based on the horizontal motion vector for each block calculated by the adding means;
The detection means includes
The block using at least one of the maximum value of the post-frame projection data obtained by the maximum value obtaining unit, the addition result obtained by the adding unit, and the intersection information obtained by the specifying unit. A motion vector detection apparatus for evaluating the reliability of horizontal motion vectors for each.
前記検出手段は、
前記後フレーム射影データの前記最大値を用いて前記ブロックごとの水平方向動きベクトルの信頼性評価を行う場合、
前記複数のブロックのそれぞれにおいて得られた、前記後フレーム射影データの前記最大値の中から全ブロック中の最大値を求め、該全ブロック中の最大値に対して、予め定めた比率以下の前記最大値を有する前記ブロックについては無効ブロックとし、該無効ブロックから算出された前記ブロックごとの水平方向動きベクトルは、前記フレーム画像全体の水平方向動きベクトルの検出には使用しない、請求項1記載の動きベクトル検出装置。
The detection means includes
When performing a reliability evaluation of the horizontal motion vector for each block using the maximum value of the post-frame projection data,
Obtaining the maximum value in all blocks from the maximum value of the post-frame projection data obtained in each of the plurality of blocks, and the ratio below the predetermined ratio with respect to the maximum value in the all blocks The block having the maximum value is an invalid block, and the horizontal motion vector for each block calculated from the invalid block is not used for detection of a horizontal motion vector of the entire frame image. Motion vector detection device.
前記検出手段は、
前記加算結果を用いて前記ブロックごとの水平方向動きベクトルの信頼性評価を行う場合、
前記複数のブロックのそれぞれにおいて得られた前記加算結果のピーク値の中から最大ピーク値を求め、該最大ピーク値が予め定めた第1の所定値以上である場合は、予め定めた第2の所定値以下の前記最大値を有する前記ブロックについては無効ブロックとし、該無効ブロックから算出された前記ブロックごとの水平方向動きベクトルは、前記フレーム画像全体の水平方向動きベクトルの検出には使用しない、請求項1記載の動きベクトル検出装置。
The detection means includes
When performing the reliability evaluation of the horizontal motion vector for each block using the addition result,
A maximum peak value is obtained from the peak values of the addition results obtained in each of the plurality of blocks, and when the maximum peak value is equal to or greater than a predetermined first predetermined value, a predetermined second value is determined. The block having the maximum value less than or equal to a predetermined value is an invalid block, and the horizontal motion vector for each block calculated from the invalid block is not used for detection of the horizontal motion vector of the entire frame image. The motion vector detection device according to claim 1.
前記検出手段は、
前記交差点情報を用いて前記ブロックごとの水平方向動きベクトルの信頼性評価を行う場合、前記交差点情報のうち交差点数の情報を使用し、
前記複数のブロックのそれぞれにおいて得られた前記交差点数のうち、予め定めた第1の所定値以下および予め定めた第2の所定値以上の前記交差点数を有する前記ブロックについては無効ブロックとし、該無効ブロックから算出された前記ブロックごとの水平方向動きベクトルは、前記フレーム画像全体の水平方向動きベクトルの検出には使用しない、請求項1記載の動きベクトル検出装置。
The detection means includes
When performing the reliability evaluation of the horizontal motion vector for each block using the intersection information, use the information on the number of intersections among the intersection information,
Of the number of intersections obtained in each of the plurality of blocks, the block having the number of intersections equal to or smaller than a predetermined first predetermined value and equal to or larger than a predetermined second predetermined value is regarded as an invalid block, The motion vector detection device according to claim 1, wherein a horizontal motion vector for each block calculated from an invalid block is not used for detection of a horizontal motion vector of the entire frame image.
前記検出手段は、
前記交差点情報を用いて前記ブロックごとの水平方向動きベクトルの信頼性評価を行う場合、前記交差点情報のうち交差点数の情報を使用し、
前記複数のブロックのそれぞれにおいて得られた前記交差点数の中から最大値を求め、該最大値が予め定めた第1の所定値以上である場合は、予め定めた第2の所定値以下および予め定めた第3の所定値以上の前記交差点数を有する前記ブロックについては無効ブロックとし、該無効ブロックから算出された前記ブロックごとの水平方向動きベクトルは、前記フレーム画像全体の水平方向動きベクトルの検出には使用しない、請求項1記載の動きベクトル検出装置。
The detection means includes
When performing the reliability evaluation of the horizontal motion vector for each block using the intersection information, use the information on the number of intersections among the intersection information,
A maximum value is obtained from the number of intersections obtained in each of the plurality of blocks, and when the maximum value is equal to or greater than a first predetermined value, a predetermined second predetermined value or less and a predetermined value The block having the number of intersections equal to or greater than a predetermined third predetermined value is regarded as an invalid block, and the horizontal motion vector for each block calculated from the invalid block is a detection of the horizontal motion vector of the entire frame image. The motion vector detection device according to claim 1, wherein the motion vector detection device is not used for the motion vector.
前記検出手段は、
前記ブロックごとの水平方向動きベクトルの信頼性評価によって有効ブロックと判断された前記ブロックから算出された前記ブロックごとの水平方向動きベクトルについて分布範囲を求め、該分布範囲が予め定めた閾値以上の場合は、前記フレーム画像全体の水平方向動きベクトルをゼロとする、請求項2〜請求項5の何れかに記載の動きベクトル検出装置。
The detection means includes
When a distribution range is obtained for the horizontal motion vector for each block calculated from the block determined to be an effective block by the reliability evaluation of the horizontal motion vector for each block, and the distribution range is equal to or greater than a predetermined threshold The motion vector detection device according to claim 2, wherein a horizontal motion vector of the entire frame image is set to zero.
前記検出手段は、
前記前フレームの前記フレーム画像全体の水平方向動きベクトルを保存する前フレーム水平方向動きベクトル保存手段を有し、
前記有効ブロックと判断された前記ブロックから算出された前記ブロックごとの水平方向動きベクトルのうち、前記前フレームの前記フレーム画像全体の水平方向動きベクトルに最も近いものを、前記後フレームの前記フレーム画像全体の水平方向動きベクトルとする、請求項6記載の動きベクトル検出装置。
The detection means includes
A previous frame horizontal motion vector storing means for storing a horizontal motion vector of the entire frame image of the previous frame;
Of the horizontal motion vectors for each block calculated from the blocks determined to be the effective blocks, the one closest to the horizontal motion vector of the entire frame image of the previous frame is the frame image of the subsequent frame. The motion vector detection device according to claim 6, wherein the motion vector detection device is an entire horizontal motion vector.
前記エッジ強調手段の前段に配設され、前記フレーム画像を垂直方向に分割して得られる複数の画像領域のそれぞれを、前記ブロックとして設定する画像分割手段を備え、
前記エッジ強調手段は、前記複数のブロックのそれぞれについて垂直方向のエッジを強調する、請求項1記載の動きベクトル検出装置。
An image dividing unit that is arranged in a preceding stage of the edge enhancement unit and sets each of a plurality of image areas obtained by dividing the frame image in the vertical direction as the block;
The motion vector detection apparatus according to claim 1, wherein the edge enhancement unit enhances an edge in a vertical direction for each of the plurality of blocks.
前記エッジ強調手段の後段に配設され、前記エッジ強調手段でエッジが強調された前記フレーム画像を垂直方向に分割して得られる複数の画像領域のそれぞれを、前記ブロックとして設定する画像分割手段を備え、
前記エッジ強調手段は、前記フレーム画像について垂直方向のエッジを強調する、請求項1記載の動きベクトル検出装置。
An image dividing unit that is arranged at a subsequent stage of the edge emphasizing unit and sets each of a plurality of image areas obtained by dividing the frame image whose edges are emphasized by the edge emphasizing unit in the vertical direction as the block; Prepared,
The motion vector detection device according to claim 1, wherein the edge enhancement unit enhances an edge in a vertical direction of the frame image.
時系列的に前後の関係となる前フレームと後フレームとに関するフレーム画像間の動きベクトルを検出する動きベクトル検出装置であって、
水平ラインの画素走査を垂直方向に順に繰り返すことによって読み出されるフレーム画像に関して、水平方向に一定の分割幅を有して複数に分割されたブロックごとに水平方向のエッジを強調するエッジ強調手段と、
前記エッジ強調手段でエッジが強調された画像について、前記ブロックごとに水平方向に射影をとり、前記ブロックのそれぞれで1垂直ライン分のデータ配列を有する射影データを生成する射影手段と、
前記後フレームに対して前記射影手段で得られた後フレーム射影データの配列要素において最大値を求める最大値取得手段と、
前記前フレームに対して前記射影手段で得られた前フレーム射影データに関して前記データ配列の要素順に配列要素の値をグラフ化した波形と、配列要素の値が所定の一定値となる直線とが交差する各交差点の配列要素の位置を特定して交差点情報として出力する特定手段と、
前記各交差点の配列要素の位置を中心とした所定範囲のデータ配列を、前記後フレーム射影データから抽出する抽出手段と、
前記抽出手段で抽出された所定範囲のデータ配列それぞれについて、前記各交差点の配列要素の位置に対して相対位置が同じ配列要素同士の値を加算し、得られた加算結果に基づいて前記ブロックごとの垂直方向動きベクトルを算出する加算手段と、
前記加算手段で算出された前記ブロックごとの垂直方向動きベクトルに基づき、フレーム画像全体の垂直方向動きベクトルを検出する検出手段と、を備え、
前記検出手段は、
前記最大値取得手段で得られた前記後フレーム射影データの前記最大値、前記加算手段で得られた前記加算結果および前記特定手段で得られた前記交差点情報のうち少なくとも1つを用いて前記ブロックごとの垂直方向動きベクトルの信頼性評価を行う、動きベクトル検出装置。
A motion vector detection device that detects a motion vector between frame images related to a preceding frame and a following frame that are in a time series front-rear relationship,
With respect to a frame image read by sequentially repeating pixel scanning of the horizontal line in the vertical direction, an edge emphasizing unit that emphasizes the edge in the horizontal direction for each of the blocks divided into a plurality of blocks having a constant division width in the horizontal direction;
Projecting means for performing projection in the horizontal direction for each of the blocks and generating projection data having a data array for one vertical line in each of the blocks with respect to an image whose edges are enhanced by the edge enhancement means;
Maximum value obtaining means for obtaining a maximum value in an array element of post-frame projection data obtained by the projecting means for the rear frame;
A waveform obtained by graphing array element values in the order of the elements of the data array with respect to the previous frame projection data obtained by the projecting means with respect to the previous frame intersects with a straight line where the array element value is a predetermined constant value. Specifying means for specifying the position of the array element of each intersection to be output as intersection information;
Extracting means for extracting a predetermined range of data array centered on the position of the array element at each intersection from the post-frame projection data;
For each data array in the predetermined range extracted by the extraction means, the values of array elements having the same relative position with respect to the position of the array element at each intersection are added, and each block is based on the obtained addition result Adding means for calculating a vertical motion vector of
Detecting means for detecting a vertical motion vector of the entire frame image based on the vertical motion vector for each block calculated by the adding means;
The detection means includes
The block using at least one of the maximum value of the post-frame projection data obtained by the maximum value obtaining unit, the addition result obtained by the adding unit, and the intersection information obtained by the specifying unit. A motion vector detection apparatus for evaluating the reliability of vertical motion vectors for each.
前記検出手段は、
前記後フレーム射影データの前記最大値を用いて前記ブロックごとの垂直方向動きベクトルの信頼性評価を行う場合、
前記複数のブロックのそれぞれにおいて得られた、前記後フレーム射影データの前記最大値の中から全ブロック中の最大値を求め、該全ブロック中の最大値に対して、予め定めた比率以下の前記最大値を有する前記ブロックについては無効ブロックとし、該無効ブロックから算出された前記ブロックごとの垂直方向動きベクトルは、前記フレーム画像全体の垂直方向動きベクトルの検出には使用しない、請求項10記載の動きベクトル検出装置。
The detection means includes
When performing a reliability evaluation of the vertical motion vector for each block using the maximum value of the post-frame projection data,
Obtaining the maximum value in all blocks from the maximum value of the post-frame projection data obtained in each of the plurality of blocks, and the ratio below the predetermined ratio with respect to the maximum value in the all blocks The block having the maximum value is an invalid block, and the vertical motion vector for each block calculated from the invalid block is not used for detection of the vertical motion vector of the entire frame image. Motion vector detection device.
前記検出手段は、
前記加算結果を用いて前記ブロックごとの垂直方向動きベクトルの信頼性評価を行う場合、
前記複数のブロックのそれぞれにおいて得られた前記加算結果のピーク値の中から最大ピーク値を求め、該最大ピーク値が予め定めた第1の所定値以上である場合は、予め定めた第2の所定値以下の前記最大値を有する前記ブロックについては無効ブロックとし、該無効ブロックから算出された前記ブロックごとの垂直方向動きベクトルは、前記フレーム画像全体の垂直方向動きベクトルの検出には使用しない、請求項10記載の動きベクトル検出装置。
The detection means includes
When performing the reliability evaluation of the vertical motion vector for each block using the addition result,
A maximum peak value is obtained from the peak values of the addition results obtained in each of the plurality of blocks, and when the maximum peak value is equal to or greater than a predetermined first predetermined value, a predetermined second value is determined. The block having the maximum value below a predetermined value is an invalid block, and the vertical motion vector for each block calculated from the invalid block is not used for detection of the vertical motion vector of the entire frame image. The motion vector detection apparatus according to claim 10.
前記検出手段は、
前記交差点情報を用いて前記ブロックごとの垂直方向動きベクトルの信頼性評価を行う場合、前記交差点情報のうち交差点数の情報を使用し、
前記複数のブロックのそれぞれにおいて得られた前記交差点数のうち、予め定めた第1の所定値以下および予め定めた第2の所定値以上の前記交差点数を有する前記ブロックについては無効ブロックとし、該無効ブロックから算出された前記ブロックごとの垂直方向動きベクトルは、前記フレーム画像全体の垂直方向動きベクトルの検出には使用しない、請求項10記載の動きベクトル検出装置。
The detection means includes
When performing the reliability evaluation of the vertical motion vector for each block using the intersection information, information on the number of intersections among the intersection information is used.
Of the number of intersections obtained in each of the plurality of blocks, the block having the number of intersections equal to or smaller than a predetermined first predetermined value and equal to or larger than a predetermined second predetermined value is regarded as an invalid block, The motion vector detection device according to claim 10, wherein the vertical motion vector for each block calculated from an invalid block is not used for detection of a vertical motion vector of the entire frame image.
前記検出手段は、
前記交差点情報を用いて前記ブロックごとの垂直方向動きベクトルの信頼性評価を行う場合、前記交差点情報のうち交差点数の情報を使用し、
前記複数のブロックのそれぞれにおいて得られた前記交差点数の中から最大値を求め、該最大値が予め定めた第1の所定値以上である場合は、予め定めた第2の所定値以下および予め定めた第3の所定値以上の前記交差点数を有する前記ブロックについては無効ブロックとし、該無効ブロックから算出された前記ブロックごとの垂直方向動きベクトルは、前記フレーム画像全体の垂直方向動きベクトルの検出には使用しない、請求項10記載の動きベクトル検出装置。
The detection means includes
When performing the reliability evaluation of the vertical motion vector for each block using the intersection information, information on the number of intersections among the intersection information is used.
A maximum value is obtained from the number of intersections obtained in each of the plurality of blocks, and when the maximum value is equal to or greater than a first predetermined value, a predetermined second predetermined value or less and a predetermined value The block having the number of intersections equal to or greater than a predetermined third predetermined value is regarded as an invalid block, and the vertical motion vector for each block calculated from the invalid block is detected as the vertical motion vector of the entire frame image. The motion vector detection apparatus according to claim 10, wherein the motion vector detection apparatus is not used.
前記検出手段は、
前記ブロックごとの垂直方向動きベクトルの信頼性評価によって有効ブロックと判断された前記ブロックから算出された前記ブロックごとの垂直方向動きベクトルについて分布範囲を求め、該分布範囲が予め定めた閾値以上の場合は、前記フレーム画像全体の垂直方向動きベクトルをゼロとする、請求項11〜請求項14の何れかに記載の動きベクトル検出装置。
The detection means includes
When a distribution range is obtained for the vertical motion vector for each block calculated from the block determined to be an effective block by the reliability evaluation of the vertical motion vector for each block, and the distribution range is equal to or greater than a predetermined threshold The motion vector detection device according to claim 11, wherein a vertical motion vector of the entire frame image is set to zero.
前記検出手段は、
前記前フレームの前記フレーム画像全体の垂直方向動きベクトルを保存する前フレーム垂直方向動きベクトル保存手段を有し、
前記有効ブロックと判断された前記ブロックから算出された前記ブロックごとの垂直方向動きベクトルのうち、前記前フレームの前記フレーム画像全体の垂直方向動きベクトルに最も近いものを、前記後フレームの前記フレーム画像全体の垂直方向動きベクトルとする、請求項15記載の動きベクトル検出装置。
The detection means includes
A previous frame vertical motion vector storage means for storing a vertical motion vector of the entire frame image of the previous frame;
Of the vertical motion vectors for each of the blocks calculated from the block determined to be the effective block, the one closest to the vertical motion vector of the entire frame image of the previous frame is the frame image of the subsequent frame. The motion vector detection device according to claim 15, wherein the motion vector detection device is an entire vertical motion vector.
前記エッジ強調手段の前段に配設され、前記フレーム画像を水平方向に分割して得られる複数の画像領域のそれぞれを、前記ブロックとして設定する画像分割手段を備え、
前記エッジ強調手段は、前記複数のブロックのそれぞれについて水平方向のエッジを強調する、請求項10記載の動きベクトル検出装置。
An image dividing unit that is arranged in a preceding stage of the edge enhancement unit and sets each of a plurality of image regions obtained by dividing the frame image in the horizontal direction as the block,
The motion vector detection apparatus according to claim 10, wherein the edge enhancement unit enhances a horizontal edge for each of the plurality of blocks.
前記エッジ強調手段の後段に配設され、前記エッジ強調手段でエッジが強調された前記フレーム画像を水平方向に分割して得られる複数の画像領域のそれぞれを、前記ブロックとして設定する画像分割手段を備え、前記エッジ強調手段は、前記フレーム画像について水平方向のエッジを強調する、請求項10記載の動きベクトル検出装置。   An image dividing unit that is arranged at a subsequent stage of the edge enhancing unit and sets each of a plurality of image areas obtained by dividing the frame image in which the edge is enhanced by the edge enhancing unit in the horizontal direction as the block; The motion vector detection device according to claim 10, wherein the edge enhancement unit enhances a horizontal edge of the frame image.
JP2006242343A 2006-08-24 2006-09-07 Motion vector detection device Expired - Fee Related JP4213739B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2006242343A JP4213739B2 (en) 2006-09-07 2006-09-07 Motion vector detection device
PCT/JP2007/052011 WO2008023466A1 (en) 2006-08-24 2007-02-06 Moving vector detecting bdevice
CN2007800314952A CN101506845B (en) 2006-08-24 2007-02-06 Moving vector detecting bdevice
EP07708111A EP2061007A1 (en) 2006-08-24 2007-02-06 Moving vector detecting bdevice

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006242343A JP4213739B2 (en) 2006-09-07 2006-09-07 Motion vector detection device

Publications (2)

Publication Number Publication Date
JP2008067027A JP2008067027A (en) 2008-03-21
JP4213739B2 true JP4213739B2 (en) 2009-01-21

Family

ID=39289336

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006242343A Expired - Fee Related JP4213739B2 (en) 2006-08-24 2006-09-07 Motion vector detection device

Country Status (1)

Country Link
JP (1) JP4213739B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009258269A (en) * 2008-04-15 2009-11-05 Sharp Corp Image display device

Also Published As

Publication number Publication date
JP2008067027A (en) 2008-03-21

Similar Documents

Publication Publication Date Title
CN108229526B (en) Network training method, network training device, image processing method, image processing device, storage medium and electronic equipment
Zhou Cognition and removal of impulse noise with uncertainty
KR101861722B1 (en) Method of processing video data and image processing circuit
US20090226097A1 (en) Image processing apparatus
US20100026903A1 (en) Motion vector detection device, motion vector detection method, and program
JP2996657B2 (en) Motion detection apparatus and method using gradation pattern matching
CN110555863A (en) moving object detection method and device and computer readable storage medium
JP4385077B1 (en) Motion vector detection device and image processing device
JP4213739B2 (en) Motion vector detection device
WO2008023466A1 (en) Moving vector detecting bdevice
JP4027398B1 (en) Motion vector detection device
JP4525064B2 (en) Motion vector detection apparatus, motion vector detection method, and computer program
JPH10320566A (en) Picture processor, picture processing method, and storage medium storing the same method
JP4042602B2 (en) Image processing device
JP4083782B1 (en) Motion vector detection device
JP4622264B2 (en) Motion vector detection apparatus, motion vector detection method, and computer program
JP4622265B2 (en) Motion vector detection device, motion vector detection method, and program
JP4313820B2 (en) Motion vector detection device
CN114693543A (en) Image noise reduction method and device, image processing chip and image acquisition equipment
CN113781310A (en) Image processing method, and training method and device of image processing model
JP4207764B2 (en) Motion vector detection apparatus, motion vector detection method, and computer program
JP5103436B2 (en) Image processing apparatus, image processing method, and image processing program
JP5159647B2 (en) Image processing apparatus and image processing method
WO2008065764A1 (en) Motion vector detecting device
SINGH Some Studies on Image Enhancement and Filtering

Legal Events

Date Code Title Description
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: 20081028

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: 20081030

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

Free format text: PAYMENT UNTIL: 20111107

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121107

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131107

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees