JP4052348B2 - Image processing apparatus and image processing method - Google Patents

Image processing apparatus and image processing method Download PDF

Info

Publication number
JP4052348B2
JP4052348B2 JP2006535880A JP2006535880A JP4052348B2 JP 4052348 B2 JP4052348 B2 JP 4052348B2 JP 2006535880 A JP2006535880 A JP 2006535880A JP 2006535880 A JP2006535880 A JP 2006535880A JP 4052348 B2 JP4052348 B2 JP 4052348B2
Authority
JP
Japan
Prior art keywords
motion vector
image data
input image
region
reliability index
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
JP2006535880A
Other languages
Japanese (ja)
Other versions
JPWO2007026452A1 (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
Application granted granted Critical
Publication of JP4052348B2 publication Critical patent/JP4052348B2/en
Publication of JPWO2007026452A1 publication Critical patent/JPWO2007026452A1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6811Motion detection based on the image signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)
  • Image Analysis (AREA)

Description

本発明は、撮像時の手ぶれや撮像系自体が動いたことによるぶれ等の影響を低減する画像処理装置、画像処理方法、及び画像処理プログラムに関するものである。本発明は、例えば、携帯電話装置やPDA(Personal Digital Assistant)等の情報端末装置に搭載される撮像装置や、デジタルスチルカメラ、デジタルムービーカメラ等に適応可能である。   The present invention relates to an image processing apparatus, an image processing method, and an image processing program that reduce the effects of camera shake during imaging and camera shake caused by movement of the imaging system itself. The present invention can be applied to, for example, an imaging device, a digital still camera, a digital movie camera, and the like mounted on an information terminal device such as a mobile phone device or a PDA (Personal Digital Assistant).

従来より、銀塩フィルムカメラやデジタルスチルカメラを手で持って被写体を撮影すると、手ぶれなどによりカメラが振れ、撮像画像が手ぶれ方向に流れた劣化を受ける現象が知られている。   2. Description of the Related Art Conventionally, when a subject is photographed with a silver film camera or a digital still camera by hand, the camera shakes due to camera shake or the like, and a phenomenon in which a captured image is deteriorated by flowing in the camera shake direction is known.

このような、ぶれによる画像劣化を補正するために、光学系を駆動して撮像を行い、ぶれを低減する方法や、算出した手ぶれ量を用いて画像処理を行い、ぶれを低減する方法が提案されている。   In order to correct such image degradation due to blurring, a method for reducing the blur by driving the optical system to perform imaging and a method for reducing the blur by performing image processing using the calculated blur amount is proposed. Has been.

例えば特許文献1には、画像処理により手ぶれを補正する手ぶれ補正装置について記載されている。特許文献1に記載の手ぶれ補正装置は、まず、画像データを構成するブロック毎に動きベクトルを求める。次に、各ブロックの動きベクトル中、所定数以上の動きベクトルが同様の方向、大きさの場合、画面全体が動いたと判断して、この動きベクトルを画面全体の動きベクトルとする。そして、画面全体の動きベクトルを用いて画像データの切り出し位置を変え、ぶれ補正画像データとして出力する。   For example, Patent Document 1 describes a camera shake correction device that corrects camera shake by image processing. The camera shake correction apparatus described in Patent Literature 1 first obtains a motion vector for each block constituting image data. Next, if a predetermined number or more of the motion vectors in each block have the same direction and size, it is determined that the entire screen has moved, and this motion vector is used as the motion vector for the entire screen. Then, the cutout position of the image data is changed using the motion vector of the entire screen, and the image is output as the shake correction image data.

特開平9−261530号公報(段落0034−0036、図1)JP-A-9-261530 (paragraphs 0034-0036, FIG. 1)

しかし、従来の手ぶれ補正装置では、各ブロックの動きベクトルの検出精度は考慮されていない。したがって、画面全体の動きベクトルを求める際に信頼性の低い動きベクトルを用いる場合があり、その結果、画面全体の動きベクトルを正しく求めることができない場合がある。   However, the conventional camera shake correction apparatus does not consider the motion vector detection accuracy of each block. Therefore, when obtaining the motion vector of the entire screen, a motion vector with low reliability may be used, and as a result, the motion vector of the entire screen may not be obtained correctly.

本発明は上記のような課題を解消するためになされたものであり、精度の高いぶれ補正処理を行うことができる画像処理装置及び画像処理方法を提供することを目的とする。   SUMMARY An advantage of some aspects of the invention is that it provides an image processing apparatus and an image processing method capable of performing shake correction processing with high accuracy.

本発明に係る画像処理装置は、入力画像データを構成する領域毎に、前記入力画像データよりも時間的に前にある前画像データ内の参照領域の画像データと前記入力画像データの領域の画像データに基づいて求めた動きベクトルと、前記動きベクトル毎の信頼性を示す信頼性指標とを出力する第1の動きベクトル出力部と、前記領域毎の信頼性指標を該当する領域の動きベクトルに乗ずることにより重み付けを行い、前記領域毎の重み付けされた動きベクトルの平均を前記入力画像データの動きベクトルとして出力する第2の動きベクトル出力部と、前記入力画像データの動きベクトルに基づいて、前記入力画像データを画像処理する画像データ処理部とを備える。 The image processing apparatus according to the present invention provides, for each area constituting the input image data, image data of a reference area in the previous image data temporally before the input image data and an image of the area of the input image data. A first motion vector output unit that outputs a motion vector obtained based on the data and a reliability index indicating the reliability of each motion vector; and the reliability index of each region as a motion vector of the corresponding region. performs weighting by multiplying a second motion vector output unit that outputs the average of the weighted motion vector of each of the areas as the motion vector of the input image data, based on the motion vector of the input image data, wherein An image data processing unit that performs image processing on the input image data.

本発明によれば、精度の高いぶれ補正処理を行うことができる。   According to the present invention, it is possible to perform a shake correction process with high accuracy.

この発明の実施の形態1に係る画像処理装置の構成を示す図である。It is a figure which shows the structure of the image processing apparatus which concerns on Embodiment 1 of this invention. 各ブロックの動きベクトルが検出された状態を示す図である。It is a figure which shows the state from which the motion vector of each block was detected. 動きベクトルが検出された場合のSADを示す図である。It is a figure which shows SAD when a motion vector is detected. この発明の実施の形態1における各ブロックの動きベクトル、SADの最小値、信頼性指標を示す図である。It is a figure which shows the motion vector of each block in Embodiment 1 of this invention, the minimum value of SAD, and a reliability parameter | index. この発明の実施の形態1における画像処理を説明する図である。It is a figure explaining the image processing in Embodiment 1 of this invention.

符号の説明Explanation of symbols

1 画像データ処理部、 2 フレームメモリ、 3 第1の動きベクトル出力部、 4 第2の動きベクトル出力部、 5 ぶれ判定部、 8 画像データ、 9 ブロック、 10 各ブロックの動きベクトル、 11 最も左上のブロック、 12 最も右下のブロック、 100 画像処理装置、 101 撮像素子、 102 表示素子。     1 image data processing unit, 2 frame memory, 3 first motion vector output unit, 4 second motion vector output unit, 5 blur determination unit, 8 image data, 9 blocks, 10 motion vector of each block, 11 upper left Block, 12 bottom right block, 100 image processing apparatus, 101 image sensor, 102 display element.

実施の形態1.
以下、この発明をその実施の形態を示す図に基づいて詳細に説明する。実施の形態1に係る画像処理装置100は、画像データを構成する領域(以下、「ブロック」と記す。)毎に動きベクトルと、この動きベクトルの信頼性を示す信頼性指標とを検出し、検出された動きベクトルと信頼性指標に基づいて画像データ全体の動きベクトルを求める。
Embodiment 1 FIG.
Hereinafter, the present invention will be described in detail with reference to the drawings showing embodiments thereof. The image processing apparatus 100 according to the first embodiment detects a motion vector and a reliability index indicating the reliability of the motion vector for each region (hereinafter referred to as “block”) constituting the image data, Based on the detected motion vector and the reliability index, a motion vector of the entire image data is obtained.

<画像処理装置の構成>
図1は、実施の形態1に係る画像処理装置100の構成を示すブロック図である。図1において、実線矢印は画像データを、破線矢印は画像データ以外のデータをそれぞれ示している。
<Configuration of image processing apparatus>
FIG. 1 is a block diagram illustrating a configuration of an image processing apparatus 100 according to the first embodiment. In FIG. 1, solid arrows indicate image data, and broken arrows indicate data other than image data.

まず、ビデオカメラなどの撮像素子101から出力される画像データ(以下、「入力画像データ」と記す。)は、画像データ処理部1、フレームメモリ2、第1の動きベクトル出力部3に入力される。画像データ処理部1は、入力画像データの画像処理し、ぶれ補正画像データとして表示素子102等へ出力する。なお、図1では、ぶれ補正画像データを表示素子へ出力する例を示しているが、ハードディスクやDVD等の記録媒体に記録したり、通信手段により他の端末に送信してもよい。   First, image data output from the image sensor 101 such as a video camera (hereinafter referred to as “input image data”) is input to the image data processing unit 1, the frame memory 2, and the first motion vector output unit 3. The The image data processing unit 1 performs image processing on the input image data and outputs it to the display element 102 or the like as blur correction image data. Although FIG. 1 shows an example in which the shake correction image data is output to the display element, it may be recorded on a recording medium such as a hard disk or a DVD, or may be transmitted to another terminal by communication means.

フレームメモリ2は、撮像素子101から出力される入力画像データを蓄積する。第1の動きベクトル出力部3には、撮像素子101からの入力画像データと、フレームメモリ2に蓄積されている、入力画像データよりも時間的に前の画像データ(以下、「前画像データ」と記す。)が入力される。   The frame memory 2 stores input image data output from the image sensor 101. The first motion vector output unit 3 includes input image data from the image sensor 101 and image data stored in the frame memory 2 that is temporally prior to the input image data (hereinafter, “previous image data”). Is entered).

第1の動きベクトル出力部3は、画像データを分割したブロック毎に動きベクトルを検出し、検出した各ブロックの動きベクトルを第2の動きベクトル出力部4に出力する。また、第1の動きベクトル出力部3は、各動きベクトルの信頼性を示す信頼性指標も検出し、検出した信頼性指標も第2の動きベクトル出力部4に出力する。   The first motion vector output unit 3 detects a motion vector for each block obtained by dividing the image data, and outputs the detected motion vector of each block to the second motion vector output unit 4. The first motion vector output unit 3 also detects a reliability index indicating the reliability of each motion vector, and outputs the detected reliability index to the second motion vector output unit 4.

第2の動きベクトル出力部4は、第1の動きベクトル出力部3から出力された各ブロックの動きベクトルと信頼性指標から、入力画像データ全体の動きを示す動きベクトルを検出し、検出した動きベクトルをぶれ判定部5に出力する。   The second motion vector output unit 4 detects a motion vector indicating the motion of the entire input image data from the motion vector and reliability index of each block output from the first motion vector output unit 3, and detects the detected motion The vector is output to the blur determination unit 5.

ぶれ判定部5は、第2の動きベクトル出力部4から出力された動きベクトルを解析し、この動きベクトルによって示される入力画像データの動きが、手ぶれ等のぶれによるものか否かを判定する。入力された動きベクトルがぶれによるものであると判定した場合、手ぶれ判定部5は、基準位置変更情報を画像データ処理部1に出力する。   The shake determination unit 5 analyzes the motion vector output from the second motion vector output unit 4 and determines whether the motion of the input image data indicated by the motion vector is due to a shake such as a camera shake. When it is determined that the input motion vector is due to shaking, the camera shake determination unit 5 outputs the reference position change information to the image data processing unit 1.

画像データ処理部1は、ぶれ判定手部5から出力された基準位置変更情報に基づいて、ぶれ補正画像データとして表示素子102へ出力する画像データの基準位置を、撮像素子101から出力される入力画像データの基準位置から変更する。   Based on the reference position change information output from the shake determination hand unit 5, the image data processing unit 1 receives the reference position of the image data output to the display element 102 as shake correction image data, and is input from the image sensor 101. Change from the reference position of the image data.

<第1の動きベクトル出力部>
次に、画像処理装置100を構成する各部の処理について、それぞれ詳細に説明する。まず、図2、図3、図4を用いて、第1の動きベクトル出力部3における動きベクトルと信頼性指標の検出処理について説明する。図2は、所定数(図では12個)に分割された画像データの各ブロックにおける動きベクトルを示す図である。第1の動きベクトル出力部3は、入力画像データの各ブロックについて動きベクトル10の検出を行う。なお、図2において、例えば、画像データ8の大きさは縦48画素×横64画素であり、ブロック9の大きさは縦16画素×横16画素である。
<First motion vector output unit>
Next, processing of each part constituting the image processing apparatus 100 will be described in detail. First, the motion vector and reliability index detection processing in the first motion vector output unit 3 will be described with reference to FIGS. 2, 3, and 4. FIG. 2 is a diagram showing motion vectors in each block of image data divided into a predetermined number (12 in the figure). The first motion vector output unit 3 detects the motion vector 10 for each block of the input image data. In FIG. 2, for example, the size of the image data 8 is 48 pixels × 64 pixels, and the size of the block 9 is 16 pixels × 16 pixels.

ここで、第1の動きベクトル出力部3における各ブロックの動きベクトル10の検出処理について説明する。まず、フレームメモリ2に蓄積されている前画像データから、前画像データを構成する各ブロックの画像データを取得する。ここで、前画像データ内のブロックを「参照ブロック」と呼ぶ。さらに、入力画像データから、前記参照ブロックと同じ位置にあるブロックの画像データを取得する。これを「入力ブロック」と呼ぶ。そして、入力ブロックに対する参照ブロックの位置を上下左右に移動させながら、画像データの差分絶対値和(Summation of Absolute Differences:SAD)を算出する。入力ブロックに対する参照ブロックの位置を(x、y)で表される量、移動したときのSADであるSAD(x,y)は、以下のように計算される。   Here, the detection processing of the motion vector 10 of each block in the first motion vector output unit 3 will be described. First, the image data of each block constituting the previous image data is acquired from the previous image data stored in the frame memory 2. Here, the block in the previous image data is referred to as a “reference block”. Further, image data of a block at the same position as the reference block is acquired from the input image data. This is called an “input block”. Then, the difference absolute value summation (SAD) of the image data is calculated while moving the position of the reference block with respect to the input block vertically and horizontally. An amount represented by (x, y) of the position of the reference block with respect to the input block, SAD (x, y), which is SAD when moved, is calculated as follows.

Figure 0004052348
Figure 0004052348

なお、参照ブロックの移動量は1画素単位、あるいは複数画素単位のいずれでもよい。   Note that the amount of movement of the reference block may be one pixel unit or a plurality of pixel units.

図3にSADを示す。図3では、(xmin、ymin)のときにSADが最小値であるsadminの値を持つことを示している。ここで、SADの値が小さいということは、参照ブロックの画像データと入力ブロックの画像データが非常に近似していることを示す。また、(xmin、ymin)のときにSADが最小値を取るということは、参照ブロックを(xmin、ymin)だけずらした時の画像データと、入力ブロックの画像データが最も近似していることを示している。したがって、図3に示す場合、第1の動きベクトル出力部3は、現在の入力ブロックの動きベクトルとして(xmin、ymin)を出力する。   FIG. 3 shows SAD. FIG. 3 shows that SAD has a value of sadmin, which is the minimum value, at (xmin, ymin). Here, a small SAD value indicates that the image data of the reference block and the image data of the input block are very close. Further, the fact that SAD takes the minimum value at (xmin, ymin) means that the image data when the reference block is shifted by (xmin, ymin) and the image data of the input block are most approximated. Show. Therefore, in the case shown in FIG. 3, the first motion vector output unit 3 outputs (xmin, ymin) as the motion vector of the current input block.

第1の動きベクトル出力部3は、全てのブロックにおいて上記式数1の処理を行い、全てのブロックの動きベクトルを検出し、第2の動きベクトル出力部4に出力する。   The first motion vector output unit 3 performs the process of Equation 1 in all the blocks, detects the motion vectors of all the blocks, and outputs them to the second motion vector output unit 4.

次に、第1の動きベクトル出力部3における各ブロックの動きベクトルの信頼性指標の検出処理について説明する。   Next, the motion vector reliability index detection processing of each block in the first motion vector output unit 3 will be described.

図4(a)は、実施の形態1における動きベクトル検出の様子を示しており、画像データ8、ブロック9、ブロック毎の動きベクトル10は、上記で説明した図2と同じである。   FIG. 4A shows the state of motion vector detection in the first embodiment. The image data 8, the block 9, and the motion vector 10 for each block are the same as those described above with reference to FIG.

ここで、各ブロックの中に示している数字は、図3において「sadmin」として示されている値であり、動きベクトルを求めるときに得られた「SADの最小値」である。例えば、図4(a)の最も左上のブロック11では「SADの最小値」として「10」との値が示されており、最も右下のブロック12では「SADの最小値」として「50」との値が示されている。   Here, the number shown in each block is a value indicated as “sadmin” in FIG. 3 and is a “minimum value of SAD” obtained when a motion vector is obtained. For example, in the upper left block 11 of FIG. 4A, the value “10” is shown as the “minimum value of SAD”, and in the lower right block 12, “50” is shown as the “minimum value of SAD”. And the value is shown.

これは、入力ブロックであるブロック11の画像データの値と、参照ブロックの画像データの値が近似していることを示している。すなわち、ブロック11と参照ブロックの画像内容が近似していると考えることが可能である。   This indicates that the value of the image data of the block 11, which is an input block, is close to the value of the image data of the reference block. That is, it can be considered that the image contents of the block 11 and the reference block are approximate.

一方、入力ブロックであるブロック12の画像データの値と、参照ブロックの画像データの値が比較的近似していないことを示している。すなわち、ブロック12と参照ブロックの画像内容が、ブロック11の場合と比較して近似していないと考えることが可能である。   On the other hand, it shows that the value of the image data of the block 12 which is the input block and the value of the image data of the reference block are not relatively approximate. That is, it can be considered that the image contents of the block 12 and the reference block are not approximated as compared with the case of the block 11.

つまり、ブロック11の動きベクトル10は、ブロック12の動きベクトル10よりも信頼性が高いことを示している。ここで、例えば、100から「SADの最小値」を引いた値を動きベクトルの信頼性を示すの信頼性指標とし、図4(a)に示した各ブロックの動きベクトル10の信頼性指標を図4(b)に示す。   That is, the motion vector 10 of the block 11 is more reliable than the motion vector 10 of the block 12. Here, for example, a value obtained by subtracting “minimum value of SAD” from 100 is used as a reliability index indicating the reliability of the motion vector, and the reliability index of the motion vector 10 of each block shown in FIG. As shown in FIG.

図4(b)に示すように、ブロック11の動きベクトルの信頼性指標は「90」であり、一方、ブロック12の動きベクトルの信頼性指標は「50」である。このように、第1の動きベクトル出力部3は、画像データを構成する各ブロックの動きベクトル10と信頼性指標を検出し、第2の動きベクトル出力部4に出力する。   As shown in FIG. 4B, the motion vector reliability index of the block 11 is “90”, while the motion vector reliability index of the block 12 is “50”. As described above, the first motion vector output unit 3 detects the motion vector 10 and the reliability index of each block constituting the image data, and outputs the detected motion vector 10 to the second motion vector output unit 4.

<第2の動きベクトル出力部>
次に、第1の動きベクトル出力部4における動きベクトルの検出処理について説明する。第2の動きベクトル出力部4は、第1の動きベクトル出力部3から出力されたブロック毎の動きベクトルと信頼性指標に基づいて、画像データ全体の動きベクトルを検出する。
<Second motion vector output unit>
Next, a motion vector detection process in the first motion vector output unit 4 will be described. The second motion vector output unit 4 detects the motion vector of the entire image data based on the motion vector for each block and the reliability index output from the first motion vector output unit 3.

第2の動きベクトル出力部4は、例えば、最も信頼性指標が高い動きベクトル10を画像データ全体の動きベクトルとする。図4(b)に示す場合、最も左上のブロックと最も左下のブロックの動きベクトルとの信頼性指標が最も高い値であり、かつ方向と大きさとも同じであるので、これら動きベクトル10を画像データ8全体の動きベクトルとしてぶれ判定部5に出力する。   For example, the second motion vector output unit 4 sets the motion vector 10 having the highest reliability index as the motion vector of the entire image data. In the case shown in FIG. 4B, since the reliability index of the motion vector of the upper left block and the lower left block is the highest value, and the direction and the size are the same, these motion vectors 10 are imaged. The motion vector of the entire data 8 is output to the blur determination unit 5.

<ぶれ判定部>
ぶれ判定部5は、第2の動きベクトル出力部4から出力された動きベクトルを解析し、この動きベクトルが手ぶれ等のぶれによるものかどうかを判定する。例えば、第2の動きベクトル出力部4から出力された動きベクトルが一定時間同じ方向を向いていた場合、この動きが手ぶれではなくユーザが意図してカメラを動かしたために発生したものであると判断してもよい。また、第2の動きベクトル出力部4から出力された動きベクトルを一定時間観測した結果、画面の動きの周波数が一定の値以下のゆっくりしたものであった場合、この動きが手ぶれではなくユーザが意図してカメラを動かしたために発生したものであると判断してもよい。
<Blur determination unit>
The shake determination unit 5 analyzes the motion vector output from the second motion vector output unit 4 and determines whether or not the motion vector is caused by a shake such as a camera shake. For example, if the motion vector output from the second motion vector output unit 4 is directed in the same direction for a certain period of time, it is determined that this motion has occurred because the user intentionally moved the camera instead of shaking. May be. Further, when the motion vector output from the second motion vector output unit 4 is observed for a certain period of time, and the frequency of the motion of the screen is slower than a certain value, this motion is not a camera shake but the user It may be determined that the error occurred because the camera was moved intentionally.

入力された動きベクトルが手ぶれによるものであると判定した場合、手ぶれ判定部5は、基準位置変更情報を画像データ処理部1に出力する。入力された動きベクトルが手ぶれ以外によるものであると判定した場合、手ぶれ補正判定部5は、基準位置を変更しないという情報を画像データ処理部1に出力する。なお、基準位置を変更しないとの情報は出力しない構成としてもよい。   When it is determined that the input motion vector is due to camera shake, the camera shake determination unit 5 outputs the reference position change information to the image data processing unit 1. When it is determined that the input motion vector is due to something other than camera shake, the camera shake correction determination unit 5 outputs information that the reference position is not changed to the image data processing unit 1. Note that the information that the reference position is not changed may not be output.

<画像データ処理部>
図6に、画像データ処理部1における画像処理を説明する図である。画像データ処理部1は、撮像素子101から出力される入力画像データ13の基準位置を、基準位置変更情報に基づいて動きベクトル15の方向に変更する。これにより、表示素子102に出力する画像データが、画像処理前の画像データ16から画像処理後のぶれ補正画像データ14となる。
<Image data processing unit>
FIG. 6 is a diagram for explaining image processing in the image data processing unit 1. The image data processing unit 1 changes the reference position of the input image data 13 output from the image sensor 101 in the direction of the motion vector 15 based on the reference position change information. As a result, the image data output to the display element 102 changes from the image data 16 before image processing to the shake-corrected image data 14 after image processing.

すなわち、画像データ処理部1は、表示素子102に出力するぶれ補正画像データとして、撮像素子101から出力される入力画像データ13の基準位置を中心とする画像データ16から、画像データ全体の動きベクトル15の方向に移動させたぶれ補正画像データ14を出力する。   That is, the image data processing unit 1 uses the motion vector of the entire image data from the image data 16 centered on the reference position of the input image data 13 output from the image sensor 101 as the blur-corrected image data output to the display element 102. The shake correction image data 14 moved in the direction 15 is output.

このように、本実施の形態1に係る画像処理装置100によれば、各ブロックの動きベクトルから画像データ全体の動きベクトルを検出する際に、各動きベクトルの信頼性指標を参照するため、精度良く画像データ全体の動きベクトルを検出することができる。したがって、ぶれ補正処理を精度良く行うことができる。   Thus, according to the image processing apparatus 100 according to the first embodiment, when detecting the motion vector of the entire image data from the motion vector of each block, the reliability index of each motion vector is referred to. The motion vector of the entire image data can be detected well. Therefore, the blur correction process can be performed with high accuracy.

なお、上記では、動きベクトルの信頼性指標として「SADの最小値」を利用する方法について説明したが、これに限ることなく、動きベクトルの信頼性を示すものであればどのようなものでもよい。   In the above description, the method of using the “minimum value of SAD” as the motion vector reliability index has been described. However, the present invention is not limited to this, and any method may be used as long as it indicates the reliability of the motion vector. .

例えば、図4(a)におけるブロック11の動きベクトルは、周囲のブロックの動きベクトルと同じような方向を示しているため、信頼性が高いと考えられる。一方、ブロック12の動きベクトルは、周囲のブロックの動きベクトルとは全く異なるため、信頼性が低いと思われる。このように、周囲のブロックの動きベクトルとの近似性を信頼性の指標として出力しても良い。   For example, since the motion vector of the block 11 in FIG. 4A shows the same direction as the motion vectors of the surrounding blocks, it is considered that the reliability is high. On the other hand, since the motion vector of the block 12 is completely different from the motion vectors of the surrounding blocks, it seems that the reliability is low. Thus, the closeness with the motion vectors of the surrounding blocks may be output as a reliability index.

また、上記では、信頼性指標が最も高い動きベクトルから画像データ全体の動きベクトルを求める方法について説明したが、これに限られるものではない。例えば、信頼性指標が高い順番に動きベクトルに並べ、そのうちの上位の所定数の動きベクトルを用いてもよい。また、信頼性指標が所定値以上の動きベクトルを用いてもよい。   In the above description, the method for obtaining the motion vector of the entire image data from the motion vector having the highest reliability index has been described. However, the present invention is not limited to this. For example, the motion vectors may be arranged in the descending order of the reliability index, and a predetermined number of motion vectors in the higher order may be used. A motion vector having a reliability index of a predetermined value or more may be used.

また、動きベクトルの信頼性指標を用いて動きベクトルに重み付けを行い、その後、重み付けされた動きベクトルの平均化処理を行う方法を用いてもよい。例えば、図4(b)のブロック11とブロック12だけが全体の画像データとする。そして、ブロック11の動きベクトルが(2、3)、ブロック12の動きベクトルが(−1、−2)の方向を示しているとする。この場合、ブロック11の動きベクトルの信頼性指標が「90」、ブロック12の動きベクトルの信頼性指標が「50」であるので、(90×(2、3)+50×(−1、−2))/(90+50)=(130、170)/140=(0.929、1.214)となり、画像データ全体の動きベクトルは約(1、1)となる。   Alternatively, a method may be used in which a motion vector is weighted using a motion vector reliability index, and then the weighted motion vector is averaged. For example, only the block 11 and the block 12 in FIG. It is assumed that the motion vector of the block 11 indicates the direction (2, 3), and the motion vector of the block 12 indicates the direction (−1, −2). In this case, since the reliability index of the motion vector of the block 11 is “90” and the reliability index of the motion vector of the block 12 is “50”, (90 × (2, 3) + 50 × (−1, −2). )) / (90 + 50) = (130, 170) / 140 = (0.929, 1.214), and the motion vector of the entire image data is about (1, 1).

さらに他の方法として、動きベクトルの信頼性指標を「動きベクトルの出現頻度」として動きベクトルに重み付けを行う方法を用いてもよい。例えば、図4(b)において、ブロック11の動きベクトルの出現頻度を「90」、ブロック12の動きベクトル出現頻度を「50」と考える。その他のブロックの出現頻度(信頼性指標)も確認し、同じベクトル毎に出現頻度の和をとる。そして、出現頻度の和が最も高いベクトルを画像データ全体の動きベクトルとする。   As another method, a motion vector may be weighted by setting the motion vector reliability index as “motion vector appearance frequency”. For example, in FIG. 4B, it is assumed that the motion vector appearance frequency of the block 11 is “90” and the motion vector appearance frequency of the block 12 is “50”. The appearance frequency (reliability index) of other blocks is also confirmed, and the sum of the appearance frequencies is taken for each same vector. The vector having the highest sum of appearance frequencies is set as the motion vector of the entire image data.

さらに、信頼性指標が一定の値よりも大きな値を持つブロックのみを抽出し、これらに対してのみ「重み付けされた動きベクトルの平均化処理」や「動きベクトルの出現頻度の和が最も高いベクトルの抽出処理」を行ってもよい。   Furthermore, only blocks whose reliability index is larger than a certain value are extracted, and only for these, “weighted motion vector averaging” or “vector with the highest sum of motion vector appearance frequencies” May be performed.

また、構成として画像処理装置100に撮像素子101と表示素子102を含めたが、これらが画像処理装置の外部にある構成としてもよい。さらに、フレームメモリ2が画像処理装置の外部にある構成としてもよい。   Further, although the image pickup device 101 and the display device 102 are included in the image processing apparatus 100 as a configuration, they may be configured outside the image processing device. Further, the frame memory 2 may be configured outside the image processing apparatus.

また、SADの算出に用いる画像データは、画素毎の輝度信号、色差信号、RGB信号等の画素データ、またはこれらの組合わせでもよい。   The image data used for the calculation of SAD may be pixel data such as a luminance signal, a color difference signal, and an RGB signal for each pixel, or a combination thereof.

また、ブロック内のすべての画素の画素データを用いる場合に限らず、単数、あるいは複数の代表画素の画素データを用いてもよい。   The pixel data of all the pixels in the block is not limited to the pixel data, and pixel data of one or more representative pixels may be used.

また、ぶれ判定部5を経由することなく、第2の動きベクトル出力部4から出力された動きベクトルを画像データ処理部1に直接出力する構成としてもよい。   Further, the motion vector output from the second motion vector output unit 4 may be directly output to the image data processing unit 1 without going through the blur determination unit 5.

さらに、フレームメモリに蓄積される画像データや、撮像素子から出力される入力画像データはフレーム単位、VOP単位であってもよい。また、複数のフレームあるいはVOPを蓄積可能なフレームメモリを用意し、「参照ブロック」が入力画像データよりも時間的に前の画像データだけでなく、入力画像データよりも時間的に後の画像データにあるとしてもよい。また、両画像データを参照して動きベクトルを求めてもよい。

Furthermore, the image data stored in the frame memory and the input image data output from the image sensor may be in units of frames or VOPs. Also, a frame memory capable of storing a plurality of frames or VOPs is prepared, and not only the image data whose “reference block” is temporally before the input image data but also the image data temporally after the input image data. It may be in. Further, the motion vector may be obtained by referring to both image data.

Claims (12)

入力画像データを構成する領域毎に、前記入力画像データよりも時間的に前にある前画像データ内の参照領域の画像データと前記入力画像データの領域の画像データに基づいて求めた動きベクトルと、前記動きベクトル毎の信頼性を示す信頼性指標とを出力する第1の動きベクトル出力部と、
前記領域毎の信頼性指標を該当する領域の動きベクトルに乗ずることにより重み付けを行い、前記領域毎の重み付けされた動きベクトルの平均を前記入力画像データの動きベクトルとして出力する第2の動きベクトル出力部と、
前記入力画像データの動きベクトルに基づいて、前記入力画像データを画像処理する画像データ処理部と
を備えたことを特徴とする画像処理装置。
For each region constituting the input image data, the image data of the reference region in the previous image data temporally before the input image data, and the motion vector obtained based on the image data of the region of the input image data, A first motion vector output unit that outputs a reliability index indicating the reliability of each motion vector;
It performs weighting by multiplying the confidence index of each of the areas on a motion vector of the corresponding region, a second motion vector output for outputting the average of the weighted motion vector of each of the areas as the motion vector of the input image data And
Based on the motion vector of the input image data, the image processing apparatus you characterized in that said input image data and an image data processing unit for image processing.
入力画像データを構成する領域毎に、前記入力画像データよりも時間的に前にある前画像データ内の参照領域の画像データと前記入力画像データの領域の画像データに基づいて求めた動きベクトルと、前記動きベクトル毎の信頼性を示す信頼性指標とを出力する第1の動きベクトル出力部と、
前記信頼性指標を前記動きベクトルの出現頻度として、前記入力画像データを構成する全ての領域において動きベクトル毎に出現頻度を積算し、最も出現頻度の高い動きベクトルを前記入力画像データの動きベクトルとして出力する第2の動きベクトル出力部と、
前記入力画像データの動きベクトルに基づいて、前記入力画像データを画像処理する画像データ処理部と
を備えたことを特徴とする画像処理装置。
For each region constituting the input image data, the image data of the reference region in the previous image data temporally before the input image data, and the motion vector obtained based on the image data of the region of the input image data, A first motion vector output unit that outputs a reliability index indicating the reliability of each motion vector;
Using the reliability index as the appearance frequency of the motion vector, the appearance frequency is integrated for each motion vector in all the areas constituting the input image data, and the motion vector having the highest appearance frequency is used as the motion vector of the input image data. A second motion vector output unit for outputting;
An image data processing unit that performs image processing on the input image data based on a motion vector of the input image data;
An image processing apparatus comprising:
前記第2の動きベクトル出力部は、信頼性指標が一定の値よりも大きな値を持つ領域のみを抽出し、前記領域毎の信頼性指標を該当する領域の動きベクトルに乗ずることにより重み付けを行い、前記領域毎の重み付けされた動きベクトルの平均を前記入力画像データの動きベクトルとして出力すること
を特徴とする請求項に記載の画像処理装置。
The second motion vector output unit performs weighting by extracting only a region having a reliability index greater than a certain value and multiplying the reliability index for each region by the motion vector of the corresponding region. The image processing apparatus according to claim 1 , wherein an average of weighted motion vectors for each region is output as a motion vector of the input image data .
前記第2の動きベクトル出力部は、信頼性指標が一定の値よりも大きな値を持つ領域のみを抽出し、前記信頼性指標を前記動きベクトルの出現頻度として、前記入力画像データを構成する全ての領域において動きベクトル毎に出現頻度を積算し、最も出現頻度の高い動きベクトルを前記入力画像データの動きベクトルとして出力すること
を特徴とする請求項に記載の画像処理装置。
The second motion vector output unit extracts only a region having a reliability index greater than a certain value, and uses the reliability index as the frequency of appearance of the motion vector to configure all of the input image data The image processing apparatus according to claim 2 , wherein the appearance frequency is integrated for each motion vector in the region, and the motion vector having the highest appearance frequency is output as the motion vector of the input image data .
前記信頼性指標は、
前記参照領域を構成する画素の画素データと、前記動きベクトルに対応する領域を構成する画素の画素データとの絶対値差分の総和であること
を特徴とする請求項1から4のいずれかに記載の画像処理装置。
The reliability index is
According to claim 1, wherein 4 of said pixel data of the pixels constituting the reference area is the sum of the absolute difference between the pixel data of the pixels constituting the region corresponding to the motion vector Image processing apparatus.
前記入力画像データの動きベクトルに基づいて、前記入力画像データにおけるぶれの発生を判定するぶれ判定部を更に備え、A blur determination unit that determines the occurrence of blur in the input image data based on a motion vector of the input image data;
前記ぶれ判定部は、前記入力画像データにぶれが発生していると判定した場合、前記入力画像データの動きベクトルに基づく基準位置変更情報を出力し、When the blur determination unit determines that blur has occurred in the input image data, the blur determination unit outputs reference position change information based on a motion vector of the input image data,
前記画像データ処理部は、前記基準位置変更情報に基づいて前記入力画像データを画像処理することThe image data processing unit performs image processing on the input image data based on the reference position change information.
を特徴とする請求項1から5のいずれかに記載の画像処理装置。The image processing apparatus according to claim 1, wherein:
入力画像データを構成する領域毎に、前記入力画像データよりも時間的に前にある前画像データ内の参照領域の画像データと前記入力画像データの領域の画像データに基づいて求めた動きベクトルと、前記動きベクトル毎の信頼性を示す信頼性指標とを出力する第1の動きベクトル出力ステップと、
前記領域毎の信頼性指標を該当する領域の動きベクトルに乗ずることにより重み付けを行い、前記領域毎の重み付けされた動きベクトルの平均を前記入力画像データの動きベクトルとして出力する第2の動きベクトル出力ステップと、
前記入力画像データの動きベクトルに基づいて、前記入力画像データを画像処理する画 像データ処理ステップと
を備えたことを特徴とする画像処理方法。
For each region constituting the input image data, the image data of the reference region in the previous image data temporally before the input image data, and the motion vector obtained based on the image data of the region of the input image data, A first motion vector output step for outputting a reliability index indicating reliability for each motion vector;
A second motion vector output that performs weighting by multiplying a reliability index for each region by a motion vector of the corresponding region, and outputs an average of the weighted motion vectors for each region as a motion vector of the input image data Steps,
Based on the motion vector of the input image data, and images data processing step of the image processing the input image data
An image processing method comprising:
入力画像データを構成する領域毎に、前記入力画像データよりも時間的に前にある前画像データ内の参照領域の画像データと前記入力画像データの領域の画像データに基づいて求めた動きベクトルと、前記動きベクトル毎の信頼性を示す信頼性指標とを出力する第1の動きベクトル出力ステップと、
前記信頼性指標を前記動きベクトルの出現頻度として、前記入力画像データを構成する全ての領域において動きベクトル毎に出現頻度を積算し、最も出現頻度の高い動きベクトルを前記入力画像データの動きベクトルとして出力する第2の動きベクトル出力ステップと、
前記入力画像データの動きベクトルに基づいて、前記入力画像データを画像処理する画像データ処理ステップと
を備えたことを特徴とする画像処理方法。
For each region constituting the input image data, the image data of the reference region in the previous image data temporally before the input image data, and the motion vector obtained based on the image data of the region of the input image data, A first motion vector output step for outputting a reliability index indicating reliability for each motion vector;
Using the reliability index as the appearance frequency of the motion vector, the appearance frequency is integrated for each motion vector in all the regions constituting the input image data, and the motion vector having the highest appearance frequency is used as the motion vector of the input image data. A second motion vector output step to output;
An image data processing step for performing image processing on the input image data based on a motion vector of the input image data;
An image processing method comprising:
前記第2の動きベクトル出力ステップは、信頼性指標が一定の値よりも大きな値を持つ領域のみを抽出し、前記領域毎の信頼性指標を該当する領域の動きベクトルに乗ずることにより重み付けを行い、前記領域毎の重み付けされた動きベクトルの平均を前記入力画像データの動きベクトルとして出力すること
を特徴とする請求項に記載の画像処理方法。
The second motion vector output step performs weighting by extracting only a region having a reliability index larger than a certain value and multiplying the reliability index for each region by the motion vector of the corresponding region. The image processing method according to claim 7 , wherein an average of weighted motion vectors for each region is output as a motion vector of the input image data .
前記第2の動きベクトル出力ステップは、信頼性指標が一定の値よりも大きな値を持つ領域のみを抽出し、前記信頼性指標を前記動きベクトルの出現頻度として、前記入力画像データを構成する全ての領域において動きベクトル毎に出現頻度を積算し、最も出現頻度の高い動きベクトルを前記入力画像データの動きベクトルとして出力すること
を特徴とする請求項に記載の画像処理方法。
In the second motion vector output step, all regions constituting the input image data are extracted by extracting only a region having a reliability index greater than a certain value and using the reliability index as the appearance frequency of the motion vector. The image processing method according to claim 8 , wherein the appearance frequency is integrated for each motion vector in the region and the motion vector having the highest appearance frequency is output as the motion vector of the input image data .
前記信頼性指標は、The reliability index is
前記参照領域を構成する画素の画素データと、前記動きベクトルに対応する領域を構成する画素の画素データとの絶対値差分の総和であることThe sum of absolute value differences between pixel data of pixels constituting the reference area and pixel data of pixels constituting the area corresponding to the motion vector
を特徴とする請求項7から10のいずれかに記載の画像処理方法。The image processing method according to claim 7, wherein:
前記入力画像データの動きベクトルに基づいて、前記入力画像データにおけるぶれの発生を判定するぶれ判定ステップを更に備え、A blur determination step of determining occurrence of blur in the input image data based on a motion vector of the input image data;
前記ぶれ判定ステップは、前記入力画像データにぶれが発生していると判定した場合、前記入力画像データの動きベクトルに基づく基準位置変更情報を出力し、In the blur determination step, when it is determined that blur has occurred in the input image data, reference position change information based on a motion vector of the input image data is output,
前記画像データ処理ステップは、前記基準位置変更情報に基づいて前記入力画像データを画像処理することThe image data processing step performs image processing on the input image data based on the reference position change information.
を特徴とする請求項7から11のいずれかに記載の画像処理方法。The image processing method according to claim 7, wherein:
JP2006535880A 2005-08-29 2006-05-30 Image processing apparatus and image processing method Expired - Fee Related JP4052348B2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005246956 2005-08-29
JP2005246956 2005-08-29
PCT/JP2006/310771 WO2007026452A1 (en) 2005-08-29 2006-05-30 Image processing apparatus, image processing method, and image processing program

Publications (2)

Publication Number Publication Date
JP4052348B2 true JP4052348B2 (en) 2008-02-27
JPWO2007026452A1 JPWO2007026452A1 (en) 2009-03-26

Family

ID=37808555

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006535880A Expired - Fee Related JP4052348B2 (en) 2005-08-29 2006-05-30 Image processing apparatus and image processing method

Country Status (2)

Country Link
JP (1) JP4052348B2 (en)
WO (1) WO2007026452A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4697275B2 (en) * 2008-07-30 2011-06-08 ソニー株式会社 Motion vector detection apparatus, motion vector detection method, and program
JP4697276B2 (en) 2008-07-30 2011-06-08 ソニー株式会社 Motion vector detection apparatus, motion vector detection method, and program
JP5279453B2 (en) * 2008-10-31 2013-09-04 キヤノン株式会社 Image shake correction apparatus, imaging apparatus, and image shake correction method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3308617B2 (en) * 1992-12-28 2002-07-29 キヤノン株式会社 Apparatus and method for detecting motion vector
JPH09261530A (en) * 1996-03-19 1997-10-03 Toshiba Corp Video recorder

Also Published As

Publication number Publication date
JPWO2007026452A1 (en) 2009-03-26
WO2007026452A1 (en) 2007-03-08

Similar Documents

Publication Publication Date Title
JP4703710B2 (en) Apparatus and method for correcting image blur of digital image using object tracking
KR101008917B1 (en) Image processing method and device, and recording medium having recorded thereon its program
JP6157242B2 (en) Image processing apparatus and image processing method
US8509481B2 (en) Image processing apparatus, image processing method, imaging apparatus
EP1578116B1 (en) Image processor
KR101109532B1 (en) Image capturing device, image capturing method, and a storage medium recording thereon a image capturing program
US20080101710A1 (en) Image processing device and imaging device
JP2010166558A (en) Image forming apparatus
US8085986B2 (en) Image processing apparatus and method for processing images more naturally and sharply
JP5206466B2 (en) Image correction apparatus, image correction program, and image photographing apparatus
JP2011114407A (en) Image processing apparatus, image processing method, program, and recording medium
US8830359B2 (en) Image processing apparatus, imaging apparatus, and computer readable medium
JP4985124B2 (en) Image processing apparatus, image processing method, and image processing program
JP2014126803A (en) Image processing apparatus, image processing method, and image processing program
JP2022179514A (en) Control apparatus, imaging apparatus, control method, and program
JP4052348B2 (en) Image processing apparatus and image processing method
JP2006311058A (en) Motion vector detection circuit and detection method thereof, and camera shake correction apparatus
JP6282133B2 (en) Imaging device, control method thereof, and control program
JP5179859B2 (en) Imaging apparatus and imaging method
JP5055571B2 (en) Image processing apparatus, electronic camera, and image processing program
JP7098958B2 (en) Image pickup device, image processing device, and image processing program
JP5029573B2 (en) Imaging apparatus and imaging method
JP4449777B2 (en) Imaging apparatus, image processing apparatus and method, recording medium, and program
JP3209785B2 (en) Motion vector detection device
JP2009088933A (en) Image recording apparatus, image correcting apparatus and image pickup apparatus

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071126

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

Free format text: PAYMENT UNTIL: 20101214

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101214

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111214

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111214

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121214

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121214

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131214

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061205