JP3466640B2 - Apparatus and method for detecting motion vector, apparatus and method for correcting image vibration - Google Patents
Apparatus and method for detecting motion vector, apparatus and method for correcting image vibrationInfo
- Publication number
- JP3466640B2 JP3466640B2 JP16829892A JP16829892A JP3466640B2 JP 3466640 B2 JP3466640 B2 JP 3466640B2 JP 16829892 A JP16829892 A JP 16829892A JP 16829892 A JP16829892 A JP 16829892A JP 3466640 B2 JP3466640 B2 JP 3466640B2
- Authority
- JP
- Japan
- Prior art keywords
- motion vector
- vector
- screen
- macroblock
- detecting
- 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 - Lifetime
Links
- 239000013598 vector Substances 0.000 title claims description 342
- 238000000034 method Methods 0.000 title claims description 28
- 238000001514 detection method Methods 0.000 claims description 39
- 238000010586 diagram Methods 0.000 description 15
- 230000002093 peripheral effect Effects 0.000 description 7
- 230000006641 stabilisation Effects 0.000 description 6
- 238000011105 stabilization Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 4
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 3
- 230000012447 hatching Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
Landscapes
- Adjustment Of Camera Lenses (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は、動きベクトル検出装置
及び方法、画像の振動補正装置及び方法に関し、例えば
ハンディタイプのビデオカメラの撮像出力などのビデオ
データに含まれる所謂手振れによる画像の移動量を検出
して補正する画像の手振れ補正装置などに適用される。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an apparatus and method for detecting a motion vector and an apparatus and method for correcting image vibration. For example, the amount of movement of an image due to so-called camera shake included in video data such as image pickup output of a handy type video camera. The present invention is applied to a camera shake correction device for an image that detects and corrects.
【0002】[0002]
【従来の技術】一般に、ハンディタイプのビデオカメラ
では、撮影時の手振れすなわちカメラの振動が画像の振
動となって現れる。そこで、このような手振れによる画
像の振動を補正する画像の手振れ補正装置として、例え
ば特開昭63−166370号公報に開示されているよ
うに、画像の動きベクトルを検出し、この動きベクトル
に基づいて、画像メモリに貯えられているビデオデータ
を補正するものが提案されている。2. Description of the Related Art Generally, in a handy type video camera, camera shake during shooting, that is, camera vibration, appears as image vibration. Therefore, as an image shake correction device for an image which corrects the image shake due to such a hand shake, for example, as disclosed in Japanese Patent Laid-Open No. 63-166370, a motion vector of the image is detected and based on this motion vector. Then, a method of correcting video data stored in the image memory has been proposed.
【0003】画像の動きベクトルの検出には、例えばブ
ロックマッチング法が採用される。このブロックマッチ
ング法による画像の動きベクトルの検出では、画面を多
数の領域(ブロックと称する)に分割し、各ブロックの
中心に位置する前フィールドの代表点画素と現フィール
ドのブロック内の各画素の画像データとのフィールド差
の絶対値を演算し、各ブロックのフィールド差分絶対値
を対応する画素毎に積算して相関積分値を求めて、1ブ
ロック分の画素配列に対応する座標を有する相関積算値
表を形成する。そして、この相関積算値表における相関
積分値の最小値の座標値を画像の動きベクトルの座標値
として画面全体の動きベクトルを決定している。To detect the motion vector of the image, for example, the block matching method is adopted. In the detection of the motion vector of the image by this block matching method, the screen is divided into a number of areas (referred to as blocks), and the representative point pixel of the previous field located at the center of each block and each pixel in the block of the current field are divided. The absolute value of the field difference from the image data is calculated, the absolute value of the field difference of each block is integrated for each corresponding pixel to obtain the correlation integral value, and the correlation integration having the coordinates corresponding to the pixel array for one block is calculated. Form a value table. Then, the motion vector of the entire screen is determined by using the coordinate value of the minimum value of the correlation integrated value in the correlation integrated value table as the coordinate value of the motion vector of the image.
【0004】一般に、上述の如きブロックマッチング法
では、カメラの手振れによる画像の動きベクトルと被写
体の動きによる動きベクトルとが同時に発生するので、
これらの判別が難しい。従来、手振れによる画像の動き
ベクトルの検出精度を高める手法として、1画面を複数
の領域(マクロブロック)に分割し、上記マクロブロッ
ク毎の動きベクトル(マクロベクトル)を求め、それら
から画面全体の動きベクトルを決定する手法が知られて
いる。例えば図13に示すように、1画面の4×3の1
2マクロブロックに分割して求めたマクロベクトルにつ
いての多数決により(2,0)を画面全体の動きベクト
ルとすることにより、動き物体MVによる動きベクトル
の影響を除去するようにしていた。Generally, in the block matching method as described above, an image motion vector due to camera shake and a motion vector due to subject motion are generated at the same time.
It is difficult to distinguish these. Conventionally, as a method of improving the detection accuracy of a motion vector of an image due to camera shake, one screen is divided into a plurality of regions (macroblocks), a motion vector (macrovector) for each macroblock is obtained, and the motion of the entire screen is calculated from them. A method of determining a vector is known. For example, as shown in FIG. 13, 1 × 4 × 3 on one screen
The influence of the motion vector due to the moving object MV is removed by setting (2,0) as the motion vector of the entire screen by the majority decision regarding the macro vector obtained by dividing into two macro blocks.
【0005】[0005]
【発明が解決しようとする課題】ところで、マクロブロ
ック単位の相関積算値表の最小値を求めることにより動
きベクトルを検出し、上記マクロブロック毎の動きベク
トルから画面全体の動きベクトルを検出する手法では、
動き物体があると、手振れベクトルの情報を含む背景画
像が上記動き物体によりマスクされてしまうので、画像
中の動き物体の占める割合が大きい程、手振れベクトル
が上記マクロブロック単位の動きベクトルとして検出さ
れる割合が低下し、正しい手振れベクトルの検出が困難
になるという問題点がある。By the way, in the method of detecting the motion vector by obtaining the minimum value of the correlation integrated value table for each macroblock and detecting the motion vector of the entire screen from the motion vector of each macroblock. ,
When there is a moving object, the background image including the information of the shake vector is masked by the moving object.Therefore, the larger the ratio of the moving object in the image is, the more the shake vector is detected as the motion vector of the macroblock unit. However, there is a problem in that it is difficult to detect a correct camera shake vector.
【0006】そこで、本件出願人は、互いに隣接しない
マクロブロックが生じるような形態で1画面を複数のマ
クロブロックに分割して、マクロブロック単位の相関積
算値表の最小値を求めることにより動きベクトルを検出
し、図14に示すように、空間的に分離された位置にあ
る少なくとも二つのマクロブロックにおいて検出される
同一の動きベクトル(独立同一ベクトル)を手振れベク
トルする手法を例えば特願平3−100384号などに
おいて先に提案している。上記図14には、各マクロブ
ロックの動きベクトルと(マクロベクトル)その発生パ
ターンの1例を示してある。Therefore, the applicant of the present invention divides one screen into a plurality of macroblocks in such a manner that macroblocks that are not adjacent to each other are generated, and obtains the minimum value of the correlation integrated value table for each macroblock to obtain the motion vector. 14 and, as shown in FIG. 14, a camera shake vector of the same motion vector (independent same vector) detected in at least two macroblocks at spatially separated positions is disclosed in, for example, Japanese Patent Application No. It was previously proposed in No. 100384. FIG. 14 shows an example of the motion vector of each macroblock and its (macrovector) generation pattern.
【0007】しかし、例えば図15にマクロベクトルを
示すように、大きな動き物体画面に進入してきたような
場合などでは、上述の多数決や独立同一ベクトルによる
手法によっても、動き物体による動きベクトル(−3,
0)と手振れベクトル(1,−2)との判定ができなく
なる場合がある。However, for example, as shown in the macro vector in FIG. 15, when a large moving object screen is entered, the motion vector (-3 ,
In some cases, it is not possible to determine 0) and the shake vector (1, -2).
【0008】そこで、本発明は、このような実情に鑑み
てなされたものであり、ハンディタイプのビデオカメラ
などにおける高性能の手振れ補正を可能にすることを目
的とし、画像中に動き物体がある場合にも動きベクトル
を高精度に検出することのできる動きベクトル検出装置
及び方法、画像の振動補正装置及び方法を提供するもの
である。Therefore, the present invention has been made in view of such circumstances, and an object thereof is to enable high-performance image stabilization in a handy type video camera or the like, and a moving object is present in an image. Even in such a case, a motion vector detecting device and method capable of detecting a motion vector with high accuracy, and an image vibration correcting device and method are provided.
【0009】[0009]
【課題を解決するための手段】本発明に係る動きベクト
ル検出装置は、互いに隣接しないマクロブロックが生じ
るような形態で、1画面を複数のマクロブロックに分割
し、上記マクロブロック毎に動きベクトルを検出するマ
クロベクトル検出手段と、上記マクロベクトル検出手段
により検出された各動きベクトルに基づいて画面全体の
動きベクトルを検出するための空間的に離れた位置の同
一ベクトル又は凹状の位置の同一ベクトルである有効マ
クロブロックを特定し、当該有効マクロブロックの動き
ベクトルに基づいて画面全体の動きベクトルを検出する
動きベクトル検出手段と、上記有効マクロブロックの位
置情報を記憶する記憶手段と、上記動きベクトル検出手
段で画面全体の動きベクトルが検出されないとき、現画
面の同一動きベクトルを有するマクロブロックの位置情
報と、上記記憶手段に記憶される前画面の画面全体の動
きベクトルを検出するときに用いた有効マクロブロック
との位置情報の相関に基づいて、当該現画面の有効マク
ロブロックを決定し、当該決定された現画面の有効マク
ロブロックに基づいて検出された上記動きベクトルを画
面全体の動きベクトルとして出力する判定手段とを備え
ることを特徴とする。また、本発明に係る動きベクトル
検出方法は、互いに隣接しないマクロブロックが生じる
ような形態で、1画面を複数のマクロブロックに分割
し、上記マクロブロック毎に動きベクトルを検出するス
テップと、上記検出された各動きベクトルに基づいて画
面全体の動きベクトルを検出するための空間的に離れた
位置の同一ベクトル又は凹状の位置の同一ベクトルであ
る有効マクロブロックを特定し、当該有効マクロブロッ
クの動きベクトルに基づいて画面全体の動きベクトルを
検出するステップと、上記有効マクロブロックの位置情
報を記憶するステップと、上記動きベクトルを検出する
ステップで画面全体の動きベクトルが検出されないと
き、現画面の同一動きベクトルを有するマクロブロック
の位置情報と、上記位置情報を記憶するステップで記憶
される前画面の画面全体の動きベクトルを検出するとき
に用いた有効マクロブロックとの位置情報の相関に基づ
いて、当該現画面の有効マクロブロックを決定し、当該
決定された現画面の有効マクロブロックに基づいて検出
された上記動きベクトルを画面全体の動きベクトルとし
て出力するステップとを備えることを特徴とする。ま
た、本発明に係る画像の振動補正装置は、互いに隣接し
ないマクロブロックが生じるような形態で、1画面を複
数のマクロブロックに分割し、上記マクロブロック毎に
動きベクトルを検出するマクロベクトル検出手段と、上
記マクロベクトル検出手段により検出された各動きベク
トルに基づいて画面全体の動きベクトルを検出するため
の空間的に離れた位置の同一ベクトル又は凹状の位置の
同一ベクトルである有効マクロブロックを特定し、当該
有効マクロブロックの動きベクトルに基づいて画面全体
の動きベクトルを検出する動きベクトル検出手段と、上
記有効マクロブロックの位置情報を記憶する記憶手段
と、上記動きベクトル検出手段で画面全体の動きベクト
ルが検出されないとき、現画面の同一動きベクトルを有
するマクロブロックの位置情報と、上記記憶手段に記憶
される前画面の画面全体の動きベクトルを検出するとき
に用いた有効マクロブロックとの位置情報の相関に基づ
いて、当該現画面の有効マクロブロックを決定し、当該
決定された現画面の有効マクロブロックに基づいて検出
された上記動きベクトルを画面全体の動きベクトルとし
て出力する判定手段と、上記判定手段より出力される画
面全体の動きベクトルに基づいて、上記画面を構成する
画像の振動を補正する補正手段とを備えることを特徴と
する。さらに、本発明に係る画像の振動補正方法は、互
いに隣接しないマクロブロックが生じるような形態で、
1画面を複数のマクロブロックに分割し、上記マクロブ
ロック毎に動きベクトルを検出するステップと、上記検
出された各動きベクトルに基づいて画面全体の動きベク
トルを検出するための空間的に離れた位置の同一ベクト
ル又は凹状の位置の同一ベクトルである有効マクロブロ
ックを特定し、当該有効マクロブロックの動きベクトル
に基づいて画面全体の動きベクトルを検出するステップ
と、上記有効マクロブロックの位置情報を記憶するステ
ップと、上記動きベクトルを検出するステップで画面全
体の動きベクトルが検出されないとき、現画面の同一動
きベクトルを有するマクロブロックの位置情報と、上記
位置情報を記憶するステップで記憶される前画面の画面
全体の動きベクトルを検出するときに用いた有効マクロ
ブロックとの位置情報の相関に基づいて、当該現画面の
有効マクロブロックを決定し、当該決定された現画面の
有効マクロブロックに基づいて検出された上記動きベク
トルを画面全体の動きベクトルとして出力するステップ
と、上記出力される画面全体の動きベクトルに基づい
て、上記画面を構成する画像の振動を補正するステップ
とを備えることを特徴とする。A motion vector detecting apparatus according to the present invention divides one screen into a plurality of macro blocks in such a manner that macro blocks which are not adjacent to each other are generated, and a motion vector is calculated for each macro block. With the same vector at a spatially separated position or the same vector at a concave position for detecting the motion vector of the entire screen based on each motion vector detected by the macro vector detection means for detecting and the macro vector detection means. A motion vector detecting unit that specifies a valid macroblock and detects a motion vector of the entire screen based on the motion vector of the valid macroblock, a storage unit that stores position information of the valid macroblock, and the motion vector detection When the motion vector of the whole screen is not detected by the method, the same motion vector of the current screen is detected. Of the current screen based on the correlation between the position information of the macroblock having a macroblock and the position information of the effective macroblock used when detecting the motion vector of the entire screen of the previous screen stored in the storage means. And a determination unit that determines a macroblock and outputs the motion vector detected based on the determined effective macroblock of the current screen as a motion vector of the entire screen. Also, the motion vector detecting method according to the present invention divides one screen into a plurality of macro blocks in such a form that macro blocks which are not adjacent to each other are generated, and detects a motion vector for each macro block, The effective macroblock which is the same vector at the spatially distant position or the same vector at the concave position for detecting the motion vector of the entire screen based on the respective motion vectors determined, and the motion vector of the effective macroblock When the motion vector of the entire screen is not detected in the step of detecting the motion vector of the entire screen based on the above, the step of storing the position information of the effective macroblock, and the step of detecting the motion vector, the same motion of the current screen is detected. Position information of a macroblock having a vector and a step for storing the position information. The effective macroblock of the current screen is determined based on the correlation of the position information with the effective macroblock used when detecting the motion vector of the entire previous screen image stored in the current screen. And outputting the motion vector detected based on the effective macroblock as the motion vector of the entire screen. Further, the image vibration correction device according to the present invention divides one screen into a plurality of macroblocks in a form such that macroblocks that are not adjacent to each other are generated, and a macrovector detection unit that detects a motion vector for each macroblock. And an effective macroblock that is the same vector at a spatially separated position or the same vector at a concave position for detecting the motion vector of the entire screen based on each motion vector detected by the macro vector detection means. The motion vector detecting means for detecting the motion vector of the entire screen based on the motion vector of the effective macroblock, the storage means for storing the position information of the effective macroblock, and the motion of the entire screen by the motion vector detecting means. When no vector is detected, the macroblock with the same motion vector of the current screen Of the current screen based on the correlation between the position information of the current screen and the position information of the previous screen stored in the storage means and the effective macroblock used when detecting the motion vector of the entire previous screen. A determination unit that outputs the motion vector detected based on the determined effective macroblock of the current screen as a motion vector of the entire screen, and based on the motion vector of the entire screen output from the determination unit, And a correction unit for correcting the vibration of the image forming the screen. Further, the image vibration correction method according to the present invention is such that macroblocks that are not adjacent to each other are generated,
A step of dividing one screen into a plurality of macroblocks and detecting a motion vector for each macroblock, and a spatially separated position for detecting the motion vector of the entire screen based on each of the detected motion vectors. A valid macroblock that is the same vector or the same vector at a concave position and detects the motion vector of the entire screen based on the motion vector of the valid macroblock, and stores the position information of the valid macroblock. When the motion vector of the entire screen is not detected in the step and the step of detecting the motion vector, the position information of the macroblock having the same motion vector of the current screen and the previous screen stored in the step of storing the position information are stored. Position with effective macroblock used when detecting motion vector of entire screen Determining a valid macroblock of the current screen based on the correlation of the information, and outputting the motion vector detected based on the determined valid macroblock of the current screen as a motion vector of the entire screen, A step of correcting the vibration of the image forming the screen based on the output motion vector of the entire screen.
【0010】[0010]
【作用】本発明に係る動きベクトル検出装置及び方法で
は、互いに隣接しないマクロブロックが生じるような形
態で、1画面を複数のマクロブロックに分割し、上記マ
クロブロック毎に動きベクトルを検出し、上記検出され
た各動きベクトルに基づいて画面全体の動きベクトルを
検出するための空間的に離れた位置の同一ベクトル又は
凹状の位置の同一ベクトルである有効マクロブロックを
特定し、当該有効マクロブロックの動きベクトルに基づ
いて画面全体の動きベクトルを検出し、上記有効マクロ
ブロックの位置情報を記憶し、上記画面全体の動きベク
トルが検出されないとき、現画面の同一動きベクトルを
有するマクロブロックの位置情報と、上記記憶される前
画面の画面全体の動きベクトルを検出するときに用いた
有効マクロブロックとの位置情報の相関に基づいて、当
該現画面の有効マクロブロックを決定し、当該決定され
た現画面の有効マクロブロックに基づいて検出された上
記動きベクトルを画面全体の動きベクトルとして出力す
る。また、本発明に係る画像の振動補正装置及び方法で
は、互いに隣接しないマクロブロックが生じるような形
態で、1画面を複数のマクロブロックに分割し、上記マ
クロブロック毎に動きベクトルを検出し、上記検出され
た各動きベクトルに基づいて画面全体の動きベクトルを
検出するための空間的に離れた位置の同一ベクトル又は
凹状の位置の同一ベクトルである有効マクロブロックを
特定し、当該有効マクロブロックの動きベクトルに基づ
いて画面全体の動きベクトルを検出し、上記有効マクロ
ブロックの位置情報を記憶し、上記画面全体の動きベク
トルが検出されないとき、現画面の同一動きベクトルを
有するマクロブロックの位置情報と、上記記憶される前
画面の画面全体の動きベクトルを検出するときに用いた
有効マクロブロックとの位置情報の相関に基づいて、当
該現画面の有効マクロブロックを決定し、当該決定され
た現画面の有効マクロブロックに基づいて検出された上
記動きベクトルを画面全体の動きベクトルとして出力
し、上記出力される画面全体の動きベクトルに基づい
て、上記画面を構成する画像の振動を補正する。In the motion vector detecting apparatus and method according to the present invention, one screen is divided into a plurality of macro blocks in such a manner that macro blocks which are not adjacent to each other are generated, and a motion vector is detected for each macro block. The effective macroblock, which is the same vector at spatially separated positions or the same vector at the concave position for detecting the motion vector of the entire screen based on each detected motion vector, is specified, and the motion of the effective macroblock is specified. Detecting the motion vector of the entire screen based on the vector, storing the position information of the effective macroblock, when the motion vector of the entire screen is not detected, position information of the macroblock having the same motion vector of the current screen, The effective macro block used when detecting the motion vector of the entire screen of the previous screen stored above. Based on the correlation of the positional information and to determine the effective macro blocks of the current screen, and outputs the motion vector detected on the basis of the effective macro block of the current screen is the determined as a motion vector of the entire screen. Further, in the image vibration correction apparatus and method according to the present invention, one screen is divided into a plurality of macroblocks in such a form that macroblocks that are not adjacent to each other are generated, and a motion vector is detected for each macroblock, The effective macroblock, which is the same vector at spatially separated positions or the same vector at the concave position for detecting the motion vector of the entire screen based on each detected motion vector, is specified, and the motion of the effective macroblock is specified. Detecting the motion vector of the entire screen based on the vector, storing the position information of the effective macroblock, when the motion vector of the entire screen is not detected, position information of the macroblock having the same motion vector of the current screen, The effective macroblock used when detecting the motion vector of the entire screen of the previous screen stored above and Based on the correlation of the position information, the effective macroblock of the current screen is determined, and the motion vector detected based on the determined effective macroblock of the current screen is output as the motion vector of the entire screen, and the output is performed. Based on the motion vector of the entire screen, the vibration of the image forming the screen is corrected.
【0011】[0011]
【実施例】以下、本発明の一実施例について図面に従い
詳細に説明する。本発明に係る画像の手振れ検出装置
は、例えば図1のように構成される。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described in detail below with reference to the drawings. An image shake detecting apparatus according to the present invention is configured as shown in FIG. 1, for example.
【0012】この図1に示した手振れ検出装置10は、
ハンディタイプのビデオカメラにおける手振れによる画
像の動きを補正する手振れ補正装置に本発明を適用した
もので、補正信号発生部20及び補正部30とともに手
振れ補正装置を構成している。この図1において、信号
入力端子1には、上記ビデオカメラの図示しない撮像部
による撮像出力として得られるビデオ信号をディジタル
化した入力ビデオデータが供給される。The camera shake detection device 10 shown in FIG.
The present invention is applied to a camera shake correction apparatus that corrects the movement of an image due to camera shake in a handy type video camera, and constitutes a camera shake correction apparatus together with a correction signal generation unit 20 and a correction unit 30. In FIG. 1, a signal input terminal 1 is supplied with input video data obtained by digitizing a video signal obtained as an image pickup output by an image pickup unit (not shown) of the video camera.
【0013】この手振れ検出装置10は、入力ビデオデ
ータが上記信号入力端子1を介して供給されるフィール
ド差分検出部11と、このフィールド差分検出部11の
出力が供給されるマクロベクトル検出部12と、このマ
クロベクトル検出部12の出力が供給される独立・準独
立同一ベクトル判定部15と、上記マクロベクトル検出
部12及び独立・準独立同一ベクトル判定部15の出力
が供給される手振れベクトル判定部16とを備えてな
る。The camera-shake detecting apparatus 10 includes a field difference detector 11 to which input video data is supplied via the signal input terminal 1, and a macro vector detector 12 to which an output of the field difference detector 11 is supplied. An independent / semi-independent same vector determination unit 15 to which the output of the macro vector detection unit 12 is supplied, and a shake vector determination unit to which the outputs of the macro vector detection unit 12 and the independent / semi-independent same vector determination unit 15 are supplied. 16 and.
【0014】上記フィールド差分検出部11は、上記入
力ビデオデータが上記信号入力端子1を介して供給され
る代表点メモリ11Aと減算回路11Bからなる。The field difference detection section 11 comprises a representative point memory 11A to which the input video data is supplied via the signal input terminal 1 and a subtraction circuit 11B.
【0015】上記代表点メモリ11Aは、入力ビデオデ
ータで構成される1フィールドの画像を複数に分割した
各ブロック毎の代表点画素の画像データIk (0,0)
を記憶する。具体的には、例えば図2に示すように、1
フィールドの画面をm画素×nラインのブロックに分割
し、図3に示すように各ブロックの中心の画素S(0,
0)を代表点とし、各代表点画素の画像データI
k (0,0)を上記代表点メモリ11Aに1フィールド
期間記憶する。なお、上記代表点は、画面上で均一にば
らまかれている。そして、この代表点メモリ11Aから
読み出される1フィールド前の各代表点画素の画像デー
タIk-1 (0,0)が上記減算回路11Bに供給され
る。The representative point memory 11A has image data I k (0,0) of representative point pixels for each block obtained by dividing an image of one field composed of input video data into a plurality of blocks.
Memorize Specifically, for example, as shown in FIG.
The screen of the field is divided into blocks of m pixels × n lines, and as shown in FIG. 3, the pixel S (0,
0) as a representative point and image data I of each representative point pixel
k (0, 0) is stored in the representative point memory 11A for one field period. The representative points are evenly distributed on the screen. Then, the image data I k-1 (0,0) of each representative point pixel one field before read from the representative point memory 11A is supplied to the subtraction circuit 11B.
【0016】また、上記減算回路11Bは、上記信号入
力端子1を介して供給される入力ビデオデータすなわち
現フィールドの画像データについて、ブロック毎のm×
n個の各画素の画像データIk (x,y)と上記代表点
メモリ11Aから読み出される前フィールドの対応する
ブロックの代表点画素の画像データIk-1 (0,0)と
の差分すなわちフィールド間差の絶対値|Ik-1 (0,
0)−Ik (x,y)|を検出する。Further, the subtraction circuit 11B, for input video data supplied through the signal input terminal 1, that is, image data of the current field, m × for each block.
The difference between the image data I k (x, y) of each of the n pixels and the image data I k-1 (0, 0) of the representative point pixel of the corresponding block of the previous field read from the representative point memory 11A, that is, Absolute value of field difference | I k-1 (0,
0) -I k (x, y) | is detected.
【0017】そして、上記フィールド差分検出部11
は、上記減算回路11Bにより得られるフィールド差分
絶対値|Ik-1 (0,0)−Ik (x,y)|を上記マ
クロベクトル検出部12に供給する。Then, the field difference detector 11
Supplies the field difference absolute value | I k−1 (0,0) −I k (x, y) | obtained by the subtraction circuit 11B to the macro vector detection unit 12.
【0018】上記マクロベクトル検出部12は、上記フ
ィールド差分検出部11により得られたフィールド差分
絶対値|Ik-1 (0,0)−Ik (x,y)|が供給さ
れるマクロブロック化回路13と、このマクロブロック
化回路13によりマクロブロック化されたフィールド差
分絶対値|Ik-1 (0,0)−Ik (x,y)|が供給
される第1乃至第12のマクロベクトル検出回路14A
〜14L及びベクトル検出回路14Mからなる。The macro vector detection unit 12 is supplied with the field difference absolute value | I k-1 (0,0) -I k (x, y) | obtained by the field difference detection unit 11. Of the field difference absolute value | I k-1 (0,0) -I k (x, y) | that is macroblocked by the macroblocking circuit 13 is supplied. Macro vector detection circuit 14A
.About.14L and a vector detection circuit 14M.
【0019】上記マクロブロック化回路13は、上記フ
ィールド差分検出部11により得られたフィールド差分
絶対値|Ik-1 (0,0)−Ik (x,y)|につい
て、互いに隣接しないマクロブロックが生じる形態で、
1画面を複数のマクロブロックに分割するもので、例え
ば図4に示すように、1画面を4×3の12個のマクロ
ブロックB1〜B12に分割する。The macroblocking circuit 13 is a macroblock which is not adjacent to the field difference absolute value | I k-1 (0,0) -I k (x, y) | obtained by the field difference detecting unit 11. In the form of blocks,
One screen is divided into a plurality of macroblocks. For example, as shown in FIG. 4, one screen is divided into 4 × 3 12 macroblocks B1 to B12.
【0020】そして、このマクロブロック化回路13に
よりマクロブロック化されたフィールド差分絶対値|I
k-1 (0,0)−Ik (x,y)|は、各マクロブロッ
クB1〜B12に対応するマクロベクトル検出回路14
A〜14Lにマクロブロック毎に供給されるとともに、
上記ベクトル検出回路14Mに全マクロブロックが供給
される。The field difference absolute value | I macroblocked by the macroblocking circuit 13
k−1 (0,0) −I k (x, y) | is the macro vector detection circuit 14 corresponding to each macro block B1 to B12.
A to 14L is supplied for each macroblock,
All macroblocks are supplied to the vector detection circuit 14M.
【0021】上記第1のマクロベクトル検出回路14A
は、第1のマクロブロックB1のフィールド差分絶対値
|Ik-1 (0,0)−Ik (x,y)|について、上記
m×n個の画素で構成されるブロックの各フィールド差
分絶対値を対応する画素毎に積算して、上記第1のマク
ロブロックB1の相関積算値表を形成し、その極小値座
標を動きベクトル候補として検出する。以下同様に、上
記第2乃至第12の絶対値積分回路14B〜14Lは、
それぞれ対応する第2乃至第12のマクロブロックB2
〜B12の相関積算値表を形成し、各極小値座標を動き
ベクトル候補として検出する。また、上記第13の絶対
値積分回路14Mは、上記第1乃至第12のマクロブロ
ックB1〜B12からなる1画面全体の相関積算値表を
形成し、その極小値座標を動きベクトル候補として検出
する。The first macro vector detection circuit 14A
Is the field difference absolute value | I k-1 (0,0) -I k (x, y) | of the first macroblock B1 for each field difference of the block composed of m × n pixels. The absolute values are integrated for each corresponding pixel to form the correlation integrated value table of the first macroblock B1, and the minimum value coordinates thereof are detected as motion vector candidates. Similarly, the second to twelfth absolute value integrating circuits 14B to 14L
The corresponding second to twelfth macroblocks B2
~ B12 correlation integrated value table is formed, and each minimum value coordinate is detected as a motion vector candidate. Further, the thirteenth absolute value integration circuit 14M forms a correlation integrated value table of the entire one screen including the first to twelfth macro blocks B1 to B12, and detects the minimum value coordinates as a motion vector candidate. .
【0022】ここで、上記マクロベクトル検出部12に
より形成された各相関積算値表の相関積算値は、各ブロ
ックの代表点画素の画像データIk-1 (0,0)と他の
画素の画像データIk (x,y)とのフィールド間相関
を示すもので、相関の強い画素に対応する座標ほど小さ
な値となり、動きベクトルに対応する座標の相関積算値
が最小値となるので、相関積算値表の最小値の座標を検
出することにより動きベクトルを検出することができ
る。なお、上記相関積算値表の最小値は極小値の1つで
あって、画像中の動き物体の占める割合が大きいときに
は、例えば図5に示すように、マクロブロックB1にお
いて、上記動き物体による動きベクトルが上記相関積算
値表の最小値座標(3,1)として検出され、背景ベク
トルすなわち手振れベクトルが上記マクロブロック単位
の動きベクトルを示す座標として検出される割合が低下
するが、上記手振れベクトルは上記相関積算値表の極小
値の座標(−1,0)として検出されることになる。Here, the correlation integrated value of each correlation integrated value table formed by the macro vector detecting unit 12 is the image data I k-1 (0,0) of the representative point pixel of each block and other pixels. It shows the inter-field correlation with the image data I k (x, y), and the coordinate corresponding to the pixel having a strong correlation has a smaller value, and the correlation integrated value of the coordinates corresponding to the motion vector has the minimum value. The motion vector can be detected by detecting the coordinates of the minimum value in the integrated value table. The minimum value in the correlation integrated value table is one of the minimum values, and when the ratio of moving objects in the image is large, for example, as shown in FIG. The vector is detected as the minimum value coordinate (3, 1) in the correlation integrated value table, and the ratio of the background vector, that is, the handshake vector detected as the coordinate indicating the motion vector in the macroblock unit decreases, but the handshake vector becomes It will be detected as the coordinates (-1, 0) of the minimum value in the above correlation integrated value table.
【0023】すなわち、この実施例において、上記フィ
ールド差分検出部11及びマクロベクトル検出部12
は、互いに隣接しないマクロブロックが生じるような形
態で、1画面を複数のマクロブロックに分割し、上記マ
クロブロック毎に動きベクトルを検出するもので、本発
明に係る画像の手振れ検出装置におけるマクロベクトル
検出手段として機能している。That is, in this embodiment, the field difference detecting unit 11 and the macro vector detecting unit 12 are used.
Is a method for dividing one screen into a plurality of macroblocks in such a form that macroblocks that are not adjacent to each other are generated and detecting a motion vector for each macroblock. The macrovector in the image shake detection apparatus according to the present invention is It functions as a detection means.
【0024】そして、上記マクロベクトル検出部12
は、上記第1乃至第12のマクロベクトル検出回路14
A〜14Lにより検出した各マクロブロックB1〜B1
2の動きベクトルすなわち各マクロベクトルと上記ベク
トル検出回路14Mにより検出した1画面全体の動きベ
クトルを上記独立・準独立同一ベクトル判定部15及び
上記手振れベクトル判定部16に供給する。Then, the macro vector detecting unit 12
Is the first to twelfth macro vector detection circuit 14
Macro blocks B1 to B1 detected by A to 14L
The two motion vectors, that is, each macro vector and the motion vector of the entire one screen detected by the vector detection circuit 14M are supplied to the independent / semi-independent same vector determination unit 15 and the camera shake vector determination unit 16.
【0025】上記独立・準独立同一ベクトル判定部15
は、上記マクロベクトル検出部12から供給される各マ
クロベクトル及び画面全体の動きベクトルについて、同
一の動きベクトルの発生パターンを判定し、空間的に分
離された位置にある少なくとも二つのマクロブロックに
おいて同一の動きベクトル(独立同一ベクトル)が検出
された場合に、その動きベクトルを画面全体の手振れベ
クトル候補として出力する。例えば上記図5に示した状
態では、空間的に分離された位置にある2つマクロブロ
ックB1,4に同一の動きベクトル(−1,0)がある
ので、この動きベクトル(−1,0)を手振れベクトル
とする。このように、上記独立・準独立同一ベクトル判
定部15は、各マクロブロックの積算値の最小値ベクト
ルだけでなく、極小値ベクトルも手振れベクトルの候補
とすることにより、動き物体が画面中に占める割合が非
常に大きいときでも、正しい手振れベクトルを検出でき
る確率が高まり、動き物体の影響を軽減して、誤差の少
ない手振れベクトルを得ることができる。The independent / quasi-independent same vector determination unit 15
Determines the generation pattern of the same motion vector for each macro vector supplied from the macro vector detection unit 12 and the motion vector of the entire screen, and identifies the same in at least two macro blocks at spatially separated positions. When the motion vector (independent same vector) is detected, the motion vector is output as a shake vector candidate for the entire screen. For example, in the state shown in FIG. 5, the two macroblocks B1 and B4 located at spatially separated positions have the same motion vector (-1,0). Therefore, this motion vector (-1,0) Is the shake vector. As described above, the independent / semi-independent same vector determination unit 15 sets not only the minimum value vector of the integrated value of each macroblock but also the minimum value vector as the shake vector candidate, so that the moving object occupies the screen. Even when the ratio is very large, the probability that a correct shake vector can be detected is increased, the influence of a moving object is reduced, and a shake vector with less error can be obtained.
【0026】また、上記独立・準独立同一ベクトル判定
部15は、上記マクロベクトル検出部12から供給され
る各マクロベクトル及び画面全体の動きベクトルについ
て、同一の動きベクトルの発生パターンを判定し、図6
に同一マクロベクトルの発生パターンの一例を示すよう
に、凹状に配置された各マクロブロックにおいて略同一
の動きベクトル(準独立同一ベクトル)が検出された場
合に、当該動きベクトルを画面全体の手振れベクトル候
補として出力する。The independent / semi-independent same vector determination unit 15 determines the same motion vector generation pattern for each macro vector supplied from the macro vector detection unit 12 and the motion vector of the entire screen. 6
As shown in an example of the generation pattern of the same macro vector, when substantially the same motion vector (quasi-independent same vector) is detected in each macro block arranged in a concave shape, the motion vector is set as a shake vector of the entire screen. Output as a candidate.
【0027】ここで、画面中の存在する自動車や人物な
どの動き物体は、凸状に現れる場合が多いので、このよ
うに凹状に配置された各マクロブロックにおいて略同一
の動きベクトルが検出された場合に、当該動きベクトル
を画面全体の手振れベクトル候補とすることによって、
上記独立・準独立同一ベクトル判定部15において手振
れベクトルを確実に検出することができる。Here, since a moving object such as a car or a person existing on the screen often appears in a convex shape, substantially the same motion vector is detected in each macroblock arranged in such a concave shape. In this case, by setting the motion vector as a shake vector candidate for the entire screen,
The independent / semi-independent same vector determination unit 15 can reliably detect the shake vector.
【0028】また、上記手振れベクトル判定部16は、
本発明に係る画像の手振れ検出装置における手振れベク
トル判定手段として機能するもので、重なり度算出回路
16Aとマクロブロック有効判定メモリ16Bとを備え
てなる。Further, the camera shake vector determination unit 16 is
It functions as a shake vector determination unit in the image shake detection apparatus according to the present invention, and includes an overlap degree calculation circuit 16A and a macroblock validity determination memory 16B.
【0029】この手振れベクトル判定部16において、
上記重なり度算出回路16Aは、上記独立・準独立同一
ベクトル判定部15により手振れベクトルが検出された
場合には、その手振れベクトルをそのまま出力する。ま
た、上記重なり度算出回路16Aは、1フィールド毎に
出力する手振れベクトルと同じマクロベクトルが得られ
た各マクロブロックを示す情報を有効マクロブロック情
報として上記マクロブロック有効判定メモリ16Bに記
憶させる。In the camera shake vector determination unit 16,
When the hand-shaking vector is detected by the independent / semi-independent same-vector determining unit 15, the overlapping degree calculating circuit 16A outputs the hand-shaking vector as it is. Further, the overlap degree calculation circuit 16A stores information indicating each macroblock for which the same macrovector as the shake vector output for each field is obtained as valid macroblock information in the macroblock validity determination memory 16B.
【0030】例えば、前のフィールドにおいて図7に示
すようなマクロベクトルが得られて手振れベクトル(−
1,2)が検出されたとすると、上記マクロブロック有
効判定メモリ16Bには、上記手振れベクトル(−1,
2)と同じマクロベクトルが得られた図8に斜線を施し
て示す各マクロブロックB1,B4,B5,B9を示す
情報が有効マクロブロック情報として上記マクロブロッ
ク有効判定メモリ16Bに記憶される。For example, in the previous field, the macro vector as shown in FIG. 7 is obtained and the shake vector (-
1, 2) are detected, the camera shake vector (−1, 1,
Information indicating the macroblocks B1, B4, B5, B9 shown by hatching in FIG. 8 in which the same macrovector as in 2) is obtained is stored in the macroblock validity judgment memory 16B as valid macroblock information.
【0031】さらに、上記重なり度算出回路16Aは、
上記独立・準独立同一ベクトル判定部15において手振
れベクトルを検出できない場合に、上記マクロブロック
有効判定メモリ16Bから1フィールド前の有効マクロ
ブロック情報を読み出して、上記マクロベクトル検出部
12から供給される現フィールドの各マクロベクトルの
時間相関を判定し、上記時間相関が有為と判定されたマ
クロブロックの動きベクトルを画面全体の手振れベクト
ルとして出力する。Further, the overlap degree calculating circuit 16A is
When the independent / semi-independent same vector determination unit 15 cannot detect a camera shake vector, the valid macroblock information of one field before is read from the macroblock validity determination memory 16B and supplied from the macrovector detection unit 12. The time correlation of each macro vector of the field is determined, and the motion vector of the macro block for which the time correlation is determined to be significant is output as the shake vector of the entire screen.
【0032】例えば、現フィールドにおいて図9に示す
ようなマクロベクトルが得られたとすると、独立同一ベ
クトルも準備独立同一ベクトルも存在しないので、上記
独立・準独立同一ベクトル判定部15では、手振れベク
トルを検出できない。ここで、動き物体による動きベク
トルを示す(7,0)のマクロベクトルが検出された数
は9個であり、背景ベクトル(手振れベクトル)を示す
(−4,1)のマクロベクトルが検出された数は3個で
あるから、単純に多数決では手振れベクトルが(7,
0)に決定してしまうことになる。For example, if a macro vector as shown in FIG. 9 is obtained in the current field, there is no independent identical vector or preparatory independent identical vector, so the independent / semi-independent identical vector determination unit 15 determines the shake vector. Cannot be detected. Here, the number of detected macro vectors of (7,0) indicating the motion vector of the moving object is 9, and the macro vector of (-4,1) indicating the background vector (shake vector) is detected. Since there are three, the shake vector is simply (7,
It will be decided as 0).
【0033】そこで、上記重なり度算出回路16Aは、
現フィールドにおいて(7,0)が手振れベクトルであ
るとすると、上記マクロブロック有効判定メモリ16B
から読み出される前フィールドの有効マクロブロック情
報により示される前フィールドで有効であった4個のマ
クロブロックB1,B4,B5,B9のうち、マクロブ
ロックB4の1個だけが(7,0)であるから、
−3+1=−2点
とカウントする。また、現フィールドにおいて上記
(7,0)のマクロベクトルが得られた図10に斜線を
施して示す9個のB2〜B4,B6〜B8,B10〜B
12のうち、前フィールドではマクロブロックB4の1
個だけが有効マクロブロックであるから、
−8+1=−7点
とカウントする。そして、現フィールドにおいて(7,
0)が手振れベクトルであるとする場合の評価点を
−2−7=−9点
とカウントする。Therefore, the overlapping degree calculation circuit 16A is
Assuming that (7,0) is the shake vector in the current field, the macroblock validity judgment memory 16B
Of the four macroblocks B1, B4, B5, B9 that were valid in the previous field indicated by the valid macroblock information of the previous field read from, only one of the macroblocks B4 is (7, 0). Therefore, −3 + 1 = −2 points are counted. Further, nine B2 to B4, B6 to B8, B10 to B shown by hatching in FIG. 10 in which the macro vector of (7,0) is obtained in the current field are shown.
Of the 12 fields, 1 in macroblock B4 in the previous field
Since only these are valid macroblocks, -8 + 1 = -7 points are counted. And in the current field (7,
When 0) is the shake vector, the evaluation point is counted as -2-7 = -9 points.
【0034】また、上記重なり度算出回路16Aは、現
フィールドにおいて(−4,−1)が手振れベクトルで
あるとすると、上記マクロブロック有効判定メモリ16
Bから読み出される前フィールドの有効マクロブロック
情報により示される前フィールドで有効であった4個の
マクロブロックB1,B4,B5,B9のうち、マクロ
ブロックB1,B5,B9の3個が(−4,−1)であ
るから、
3−1=2点
とカウントする。また、現フィールドにおいて上記(−
4,−1)のマクロベクトルが得られた図11に斜線を
施して示す3個のマクロブロックB1,B5,B9が全
て前フィールドでは有効マクロブロックであるから、
3−0=3点
とカウントする。そして、現フィールドにおいて(−
4,−1)が手振れベクトルであるとする場合の評価点
を
2+3=5点
とカウントする。Further, the overlap degree calculating circuit 16A, assuming that (-4, -1) is a shake vector in the current field, the macroblock validity judging memory 16
Of the four macroblocks B1, B4, B5, B9 that were valid in the previous field indicated by the valid macroblock information of the previous field read from B, three of the macroblocks B1, B5, B9 are (-4 , −1), it is counted as 3-1 = 2 points. In the current field, the above (-
4, the macro vector of (1) is obtained, the three macro blocks B1, B5, B9 shown by hatching in FIG. 11 are all valid macro blocks in the previous field, so 3-0 = 3 points are counted. To do. Then, in the current field (-
In the case where (4, -1) is the shake vector, the evaluation point is counted as 2 + 3 = 5 points.
【0035】上記重なり度算出回路16Aは、現フィー
ルドにおいて(7,0)が手振れベクトルであるとする
場合の評価点は−9点であるのに対し、現フィールドに
おいて(−4,−1)が手振れベクトルであるとする場
合の評価点は5点であるから、上記(−4,−1)が手
振れベクトルであると判定することができる。The overlap degree calculating circuit 16A has an evaluation score of -9 when (7,0) is a shake vector in the current field, whereas (-4, -1) in the current field. Is 5 and the evaluation point is 5, it can be determined that (-4, -1) is the shake vector.
【0036】このようにこの実施例の手振れ検出装置で
は、上記フィールド差分検出部11及びマクロベクトル
検出部12により、互いに隣接しないマクロブロックが
生じるような形態で、1画面を複数のマクロブロックに
分割し、上記マクロブロック毎に動きベクトルを検出す
る。そして、手振れベクトル判定部16は、上記マクロ
ベクトル検出部12により得られた各マクロブロック毎
の動きベクトルの時間相関を判定し、時間相関のある時
間相関が有為と判定されたマクロブロックの動きベクト
ルを画面全体の手振れベクトルとして出力するので、独
立同一ベクトルや準備独立同一ベクトルによる手法や単
純な多数決では決定することができない大きな動き物体
画面に進入してきたような場合などにおける手振れベク
トルを確実に検出して出力することができる。As described above, in the camera shake detection device of this embodiment, the field difference detection section 11 and the macro vector detection section 12 divide one screen into a plurality of macro blocks in such a manner that macro blocks which are not adjacent to each other are generated. Then, the motion vector is detected for each macro block. Then, the camera shake vector determination unit 16 determines the time correlation of the motion vector for each macro block obtained by the macro vector detection unit 12, and the motion of the macro block determined to have significant time correlation with time correlation. Since the vector is output as a shake vector for the entire screen, the shake vector in the case of entering a large moving object screen that cannot be determined by the method using independent identical vector or preparation independent identical vector or simple majority decision is sure. It can be detected and output.
【0037】なお、上記重なり度算出回路16Aにおい
て、現フィールドの各マクロベクトルの時間相関を判定
する手法は、上記手法に限定されるものでない。The method of determining the time correlation of each macro vector of the current field in the overlap degree calculating circuit 16A is not limited to the above method.
【0038】そして、この手振れ検出装置10は、上記
独立・準独立同一ベクトル判定部15により検出した手
振れベクトルを上記補正信号発生部20に供給する。Then, the camera-shake detecting apparatus 10 supplies the camera-shake vector detected by the independent / semi-independent same-vector determining section 15 to the correction signal generating section 20.
【0039】また、上記補正信号発生部20は、上記手
振れ検出装置10により検出された手振れベクトル
Vt ’を入力として、
Xt =Xt-1 −Vt ’
なる補正量Xt の手振れ補正信号を形成し、この手振れ
補正信号を上記補正部30に供給する。Further, the correction signal generating section 20, 'as input, X t = X t-1 -V t' by the hand-shake is detected by the detection device 10 is hand shake vector V t image stabilization becomes the correction amount X t A signal is formed and this image stabilization signal is supplied to the correction section 30.
【0040】そして、上記補正部30は、例えば図12
に示すように、上記補正信号発生部20から手振れ補正
信号が供給されるアドレス制御回路31及びセレクト信
号発生回路32と、上記アドレス制御回路31から供給
されるアドレス信号に従ってビデオデータの書き込み/
読み出しが行われるフィールドメモリ33及び周辺メモ
リ34と、上記フィールドメモリ33及び周辺メモリ3
4から読み出されるビデオデータを上記セレクト信号発
生回路32から供給されるセレクト信号に応じて選択的
に出力するセレクタ35とを備えてなる。The correction unit 30 is, for example, as shown in FIG.
As shown in, the address control circuit 31 and the select signal generation circuit 32 to which the shake correction signal is supplied from the correction signal generation unit 20 and the writing / writing of the video data according to the address signal supplied from the address control circuit 31.
The field memory 33 and peripheral memory 34 to be read out, and the field memory 33 and peripheral memory 3
And a selector 35 for selectively outputting the video data read from the No. 4 according to the select signal supplied from the select signal generating circuit 32.
【0041】上記フィールドメモリ33には、上記信号
入力端子1を介して供給される入力ビデオデータが順次
書き込まれる。そして、このフィールドメモリ33の読
み出しアドレスが上記手振れ補正信号により上記手振れ
ベクトルに応じて制御される。これにより、上記フィー
ルドメモリ33からは、1フィールドの入力ビデオデー
タが上記手振れベクトルに応じて移動されたビデオデー
タが得られる。そして、このフィールドメモリ33から
読み出されるビデオデータと上記周辺メモリ34から読
み出される周辺ビデオデータとが上記セレクタ35によ
る選択によって合成され、手振れ補正処理済のビデオデ
ータとして信号出力端子2から出力される。Input video data supplied through the signal input terminal 1 is sequentially written in the field memory 33. The read address of the field memory 33 is controlled by the camera shake correction signal according to the camera shake vector. As a result, from the field memory 33, the video data in which the input video data of one field is moved according to the camera shake vector can be obtained. Then, the video data read from the field memory 33 and the peripheral video data read from the peripheral memory 34 are combined by the selection by the selector 35 and output from the signal output terminal 2 as the video data subjected to the image stabilization process.
【0042】なお、上記周辺メモリ34には、上記セレ
クタ35を介して出力される手振れ補正処理済のビデオ
データによる画像の補正範囲に相当する周辺部分のビデ
オデータが周辺ビデオデータとして逐次書き込まれる。In the peripheral memory 34, the video data of the peripheral portion corresponding to the image correction range of the image data subjected to the image stabilization processing output via the selector 35 is sequentially written as peripheral video data.
【0043】[0043]
【発明の効果】以上の説明からも明らかなように、本発
明によれば、互いに隣接しないマクロブロックが生じる
ような形態で、1画面を複数のマクロブロックに分割
し、上記マクロブロック毎に動きベクトルを検出し、上
記検出された各動きベクトルに基づいて画面全体の動き
ベクトルを検出するための空間的に離れた位置の同一ベ
クトル又は凹状の位置の同一ベクトルである有効マクロ
ブロックを特定し、当該有効マクロブロックの動きベク
トルに基づいて画面全体の動きベクトルを検出し、上記
有効マクロブロックの位置情報を記憶し、上記画面全体
の動きベクトルが検出されないとき、現画面の同一動き
ベクトルを有するマクロブロックの位置情報と、上記記
憶される前画面の画面全体の動きベクトルを検出すると
きに用いた有効マクロブロックとの位置情報の相関に基
づいて、当該現画面の有効マクロブロックを決定し、当
該決定された現画面の有効マクロブロックに基づいて検
出された上記動きベクトルを画面全体の動きベクトルと
して出力するので、独立同一ベクトルや準備独立同一ベ
クトルによる手法や単純な多数決では決定することがで
きない大きな動き物体画面に進入してきたような場合な
どにおける手振れベクトルを確実に検出して出力するこ
とができ、正しい手振れベクトルを検出できる確率が高
まり、動き物体の影響を軽減して、誤差の少ない手振れ
ベクトルを得ることができる。As is apparent from the above description, according to the present invention, one screen is divided into a plurality of macroblocks in a form such that macroblocks that are not adjacent to each other are generated, and each macroblock is moved. Detect a vector, and specify an effective macroblock that is the same vector at a spatially distant position or the same vector at a concave position for detecting the motion vector of the entire screen based on each detected motion vector, A motion vector of the entire screen is detected based on the motion vector of the effective macroblock, position information of the effective macroblock is stored, and when the motion vector of the entire screen is not detected, a macro having the same motion vector of the current screen is detected. The position information of the block and the effective macro used to detect the motion vector of the entire screen of the previous screen stored above. The effective macroblock of the current screen is determined based on the correlation of the position information with the block, and the motion vector detected based on the determined effective macroblock of the current screen is output as the motion vector of the entire screen. Therefore, it is possible to reliably detect and output the shake vector when entering a large moving object screen that cannot be determined by the method using independent identical vector or preparation independent identical vector or a simple majority decision. The probability that the camera shake vector can be detected is increased, the influence of the moving object is reduced, and the camera shake vector with less error can be obtained.
【図1】本発明に係る画像の手振れ検出装置を設けた手
振れ補正装置の構成を示すブロック図である。FIG. 1 is a block diagram showing the configuration of a camera shake correction apparatus provided with an image shake detection apparatus according to the present invention.
【図2】上記手振れ検出装置における画面のブロック分
割の状態を示す図である。FIG. 2 is a diagram showing a state of screen block division in the camera shake detection device.
【図3】ブロック分割された画面の1ブロックの構造を
示す図である。FIG. 3 is a diagram showing a structure of one block of a screen divided into blocks.
【図4】1画面を12分割したマクロブロックの状態を
示す図である。FIG. 4 is a diagram showing a state of macroblocks obtained by dividing one screen into 12 parts.
【図5】独立・準独立同一ベクトル判定部により手振れ
ベクトルとして検出する独立同一ベクトルの発生パター
ンの一例を示す図である。FIG. 5 is a diagram showing an example of an independent identical vector generation pattern detected as a shake vector by an independent / semi-independent identical vector determination unit.
【図6】上記独立・準独立同一ベクトル判定部により手
振れベクトルとして検出する準独立同一ベクトルの発生
パターンの一例を示す図である。FIG. 6 is a diagram showing an example of a generation pattern of quasi-independent identical vectors detected as a shake vector by the independent / quasi-independent identical vector determination unit.
【図7】上記独立・準独立同一ベクトル判定部により手
振れベクトルが検出された前フィールドのマクロベクト
ルの発生状態を示す図である。FIG. 7 is a diagram showing a generation state of a macro vector of a previous field in which a shake vector is detected by the independent / semi-independent same vector determination unit.
【図8】上記独立・準独立同一ベクトル判定部により手
振れベクトルが検出された前フィールドのマクロベクト
ルの発生パターンを示す図である。FIG. 8 is a diagram showing a generation pattern of a macro vector in a previous field in which a shake vector is detected by the independent / semi-independent same vector determination unit.
【図9】上記独立・準独立同一ベクトル判定部により手
振れベクトルが検出できない現フィールドのマクロベク
トルの発生状態を示す図である。FIG. 9 is a diagram showing a generation state of a macro vector of a current field in which a hand shake vector cannot be detected by the independent / semi-independent same vector determination unit.
【図10】現フィールドにおける物体による動きベクト
ルの発生パターンを示す図である。FIG. 10 is a diagram showing a motion vector generation pattern of an object in the current field.
【図11】現フィールドにおけるき手振れベクトルの発
生パターンを示す図である。FIG. 11 is a diagram showing an occurrence pattern of a shake vector in the current field.
【図12】上記手振れ補正装置の補正部の構成を示すブ
ロック図である。FIG. 12 is a block diagram showing a configuration of a correction unit of the image stabilization apparatus.
【図13】マクロベクトルの多数決により手振れベクト
ルを決定する手法の説明に供する図である。FIG. 13 is a diagram for explaining a method of determining a shake vector by majority decision of macro vectors.
【図14】空間的に分離された位置のマクロベクトルに
より手振れベクトルを決定する手法の説明に供する図で
ある。FIG. 14 is a diagram for explaining a method of determining a camera shake vector by using macro vectors at spatially separated positions.
【図15】空間的に分離された位置のマクロベクトルに
より手振れベクトルを決定する手法の破綻例の説明に供
する図である。FIG. 15 is a diagram for explaining a failure example of a method of determining a camera shake vector by using macro vectors at spatially separated positions.
10・・・・・手振れ検出装置 11・・・・・フィールド差分検出部 12・・・・・マクロベクトル検出部 15・・・・・独立・準独立ベクトル判定部 16・・・・・手振れベクトル判定部 10: Hand shake detection device 11 ... Field difference detector 12: Macro vector detector 15: Independent / semi-independent vector judgment unit 16: Shake vector determination unit
───────────────────────────────────────────────────── フロントページの続き (72)発明者 内田 真史 東京都品川区北品川6丁目7番35号 ソ ニー株式会社内 (72)発明者 橋野 司 東京都品川区北品川6丁目7番35号 ソ ニー株式会社内 (56)参考文献 特開 平2−157980(JP,A) ─────────────────────────────────────────────────── ─── Continued front page (72) Inventor Masashi Uchida 6-735 Kita-Shinagawa, Shinagawa-ku, Tokyo Knee Co., Ltd. (72) Inventor Tsukasa Hashino 6-735 Kita-Shinagawa, Shinagawa-ku, Tokyo Knee Co., Ltd. (56) Reference JP-A-2-157980 (JP, A)
Claims (4)
るような形態で、1画面を複数のマクロブロックに分割
し、上記マクロブロック毎に動きベクトルを検出するマ
クロベクトル検出手段と、 上記マクロベクトル検出手段により検出された各動きベ
クトルに基づいて画面全体の動きベクトルを検出するた
めの空間的に離れた位置の同一ベクトル又は凹状の位置
の同一ベクトルである有効マクロブロックを特定し、当
該有効マクロブロックの動きベクトルに基づいて画面全
体の動きベクトルを検出する動きベクトル検出手段と、上記有効マクロブロックの位置情報を記憶する記憶手段
と、 上記動きベクトル検出手段で画面全体の動きベクトルが
検出されないとき、現画面の同一動きベクトルを有する
マクロブロックの位置情報と、上記記憶手段に記憶され
る 前画面の画面全体の動きベクトルを検出するときに用
いた有効マクロブロックとの位置情報の相関に基づい
て、当該現画面の有効マクロブロックを決定し、当該決
定された現画面の有効マクロブロックに基づいて検出さ
れた上記動きベクトルを画面全体の動きベクトルとして
出力する判定手段とを備えることを特徴とする動きベク
トル検出装置。1. A macro vector detecting means for dividing one screen into a plurality of macro blocks and detecting a motion vector for each macro block in such a form that macro blocks which are not adjacent to each other are generated, and the macro vector detecting means. The same vector at a spatially separated position or a concave position for detecting the motion vector of the entire screen based on each detected motion vector
Of identifying a valid macro block is the same vector, entire screen on the basis of the motion vector of the effective macroblock
Motion vector detection means for detecting a motion vector of the body, and storage means for storing the position information of the effective macroblock
And the motion vector of the whole screen is detected by the above motion vector detection means.
Have the same motion vector of the current screen when not detected
The macroblock position information and the
The effective macroblock of the current screen is determined based on the correlation of the position information with the effective macroblock used when detecting the motion vector of the entire previous screen, and the determined effective macroblock of the current screen is determined. A motion vector detecting device which outputs the motion vector detected based on the above as a motion vector of the entire screen.
るような形態で、1画面を複数のマクロブロックに分割
し、上記マクロブロック毎に動きベクトルを検出するス
テップと、 上記検出された各動きベクトルに基づいて画面全体の動
きベクトルを検出するための空間的に離れた位置の同一
ベクトル又は凹状の位置の同一ベクトルである有効マク
ロブロックを特定し、当該有効マクロブロックの動きベ
クトルに基づいて画面全体の動きベクトルを検出するス
テップと、上記有効マクロブロックの位置情報を記憶するステップ
と、 上記動きベクトルを検出するステップで画面全体の動き
ベクトルが検出されないとき、現画面の同一動きベクト
ルを有するマクロブロックの位置情報と、上記位置情報
を記憶するステップで記憶される 前画面の画面全体の動
きベクトルを検出するときに用いた有効マクロブロック
との位置情報の相関に基づいて、当該現画面の有効マク
ロブロックを決定し、当該決定された現画面の有効マク
ロブロックに基づいて検出された上記動きベクトルを画
面全体の動きベクトルとして出力するステップとを備え
ることを特徴とする動きベクトル検出方法。2. A step of dividing one screen into a plurality of macroblocks in such a form that macroblocks that are not adjacent to each other are generated and detecting a motion vector for each macroblock, and based on each of the detected motion vectors. The spatially distant position to detect the motion vector of the entire screen.
Identifying a valid macroblock that is the same vector at a vector or a concave position, detecting a motion vector of the entire screen based on the motion vector of the valid macroblock, and storing the position information of the valid macroblock
And the motion of the entire screen in the step of detecting the motion vector above.
When no vector is detected, the same motion vector of the current screen
Information of the macroblock having the
The effective macroblock of the current screen is determined based on the correlation of the position information with the effective macroblock used when detecting the motion vector of the entire screen of the previous screen stored in the step of storing And a step of outputting the motion vector detected based on the effective macroblock of the current screen as a motion vector of the entire screen, the motion vector detecting method.
るような形態で、1画面を複数のマクロブロックに分割
し、上記マクロブロック毎に動きベクトルを検出するマ
クロベクトル検出手段と、 上記マクロベクトル検出手段により検出された各動きベ
クトルに基づいて画面全体の動きベクトルを検出するた
めの空間的に離れた位置の同一ベクトル又は凹状の位置
の同一ベクトルである有効マクロブロックを特定し、当
該有効マクロブロックの動きベクトルに基づいて画面全
体の動きベクトルを検出する動きベクトル検出手段と、上記有効マクロブロックの位置情報を記憶する記憶手段
と、 上記動きベクトル検出手段で画面全体の動きベクトルが
検出されないとき、現画面の同一動きベクトルを有する
マクロブロックの位置情報と、上記記憶手段に記憶され
る 前画面の画面全体の動きベクトルを検出するときに用
いた有効マクロブロックとの位置情報の相関に基づい
て、当該現画面の有効マクロブロックを決定し、当該決
定された現画面の有効マクロブロックに基づいて検出さ
れた上記動きベクトルを画面全体の動きベクトルとして
出力する判定手段と、 上記判定手段より出力される画面全体の動きベクトルに
基づいて、上記画面を構成する画像の振動を補正する補
正手段とを備えることを特徴とする画像の振動補正装
置。3. A macro vector detecting means for dividing one screen into a plurality of macro blocks and detecting a motion vector for each macro block in such a form that macro blocks which are not adjacent to each other are generated, and the macro vector detecting means. The same vector at a spatially separated position or a concave position for detecting the motion vector of the entire screen based on each detected motion vector
Of identifying a valid macro block is the same vector, entire screen on the basis of the motion vector of the effective macroblock
Motion vector detection means for detecting a motion vector of the body, and storage means for storing the position information of the effective macroblock
And the motion vector of the whole screen is detected by the above motion vector detection means.
Have the same motion vector of the current screen when not detected
The macroblock position information and the
The effective macroblock of the current screen is determined based on the correlation of the position information with the effective macroblock used when detecting the motion vector of the entire previous screen, and the determined effective macroblock of the current screen is determined. Determining means for outputting the motion vector detected based on the above as a motion vector of the entire screen, and correction for correcting the vibration of the image forming the screen based on the motion vector of the entire screen output from the determining means. An image vibration correction apparatus comprising:
るような形態で、1画面を複数のマクロブロックに分割
し、上記マクロブロック毎に動きベクトルを検出するス
テップと、 上記検出された各動きベクトルに基づいて画面全体の動
きベクトルを検出するための空間的に離れた位置の同一
ベクトル又は凹状の位置の同一ベクトルである有効マク
ロブロックを特定し、当該有効マクロブロックの動きベ
クトルに基づいて画面全体の動きベクトルを検出するス
テップと、上記有効マクロブロックの位置情報を記憶するステップ
と、 上記動きベクトルを検出するステップで画面全体の動き
ベクトルが検出されないとき、現画面の同一動きベクト
ルを有するマクロブロックの位置情報と、上記位置情報
を記憶するステップで記憶される 前画面の画面全体の動
きベクトルを検出するときに用いた有効マクロブロック
との位置情報の相関に基づいて、当該現画面の有効マク
ロブロックを決定し、当該決定された現画面の有効マク
ロブロックに基づいて検出された上記動きベクトルを画
面全体の動きベクトルとして出力するステップと、 上記出力される画面全体の動きベクトルに基づいて、上
記画面を構成する画像の振動を補正するステップとを備
えることを特徴とする画像の振動補正方法。4. A step of dividing one screen into a plurality of macroblocks in such a manner that macroblocks that are not adjacent to each other are generated, and detecting a motion vector for each macroblock, and based on each of the detected motion vectors. The spatially distant position to detect the motion vector of the entire screen.
Identifying a valid macroblock that is the same vector at a vector or a concave position, detecting a motion vector of the entire screen based on the motion vector of the valid macroblock, and storing the position information of the valid macroblock
And the motion of the entire screen in the step of detecting the motion vector above.
When no vector is detected, the same motion vector of the current screen
Information of the macroblock having the
The effective macroblock of the current screen is determined based on the correlation of the position information with the effective macroblock used when detecting the motion vector of the entire screen of the previous screen stored in the step of storing The step of outputting the motion vector detected based on the effective macroblock of the current screen as the motion vector of the entire screen, and the vibration of the images forming the screen based on the output motion vector of the entire screen. And a step of correcting the vibration of an image.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16829892A JP3466640B2 (en) | 1992-06-04 | 1992-06-04 | Apparatus and method for detecting motion vector, apparatus and method for correcting image vibration |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP16829892A JP3466640B2 (en) | 1992-06-04 | 1992-06-04 | Apparatus and method for detecting motion vector, apparatus and method for correcting image vibration |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001343752A Division JP3601506B2 (en) | 2001-11-08 | 2001-11-08 | Apparatus and method for detecting motion vector, and apparatus and method for correcting image vibration |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05344410A JPH05344410A (en) | 1993-12-24 |
JP3466640B2 true JP3466640B2 (en) | 2003-11-17 |
Family
ID=15865428
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP16829892A Expired - Lifetime JP3466640B2 (en) | 1992-06-04 | 1992-06-04 | Apparatus and method for detecting motion vector, apparatus and method for correcting image vibration |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3466640B2 (en) |
-
1992
- 1992-06-04 JP JP16829892A patent/JP3466640B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH05344410A (en) | 1993-12-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4639555B2 (en) | Motion vector detection apparatus and method, camera shake correction apparatus and method, and imaging apparatus | |
JP3200889B2 (en) | Image vibration correction device | |
KR100262793B1 (en) | Image stabilization device | |
JPH0591492A (en) | Moving vector detector | |
JP3466640B2 (en) | Apparatus and method for detecting motion vector, apparatus and method for correcting image vibration | |
JP3465264B2 (en) | Apparatus and method for detecting motion of video data | |
JP3601506B2 (en) | Apparatus and method for detecting motion vector, and apparatus and method for correcting image vibration | |
JP3225598B2 (en) | Image shake detection device | |
KR970011540B1 (en) | Camcorder correction device | |
JP3252418B2 (en) | Image shake determination device | |
JP3223582B2 (en) | Image shake detection device | |
JP3257035B2 (en) | Apparatus and method for correcting image vibration | |
JP3252448B2 (en) | Apparatus and method for detecting motion vector and apparatus and method for correcting image vibration | |
JP3252415B2 (en) | Image stabilization device | |
JP3639640B2 (en) | Motion vector detection device | |
JP3221052B2 (en) | Image shake detection device | |
JP3252416B2 (en) | Image stabilization device | |
JP3252411B2 (en) | Image vibration correction device | |
JP3223577B2 (en) | Image stabilization device | |
JP3271273B2 (en) | Image vibration determination apparatus, image vibration correction apparatus, image vibration determination method, and image vibration correction method | |
JP3252417B2 (en) | Image stabilization device | |
JP3200900B2 (en) | Image shake determination device | |
JP3200890B2 (en) | Image vibration correction device | |
JPH05219419A (en) | Motion vector detector for picture | |
JPH05110927A (en) | Motion vector detector for image |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20011009 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080829 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090829 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100829 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110829 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110829 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120829 Year of fee payment: 9 |
|
EXPY | Cancellation because of completion of term |