(57)【要約】手ぶれ等により生じる撮影画像のぶれを高速度で補正する画像処理装置およびその方法。まず、画像センサで取り込まれた２枚の画像のそれぞれについて動き検出領域を選択する。この動き検出領域の画素値を所定方向に演算し、射影データを算出すると、この射影データに基づいて２枚の画像の間の動きベクトルが求められる。次に２枚の画像の画像相関を動きベクトルが指定する方向に計算し、その計算によって得られる相関値に基づいてこの２枚の画像の間の画素ずれ量を算出する。さらに２枚目の画像に指定されている手ぶれ補正領域から画像出力領域を変位算出部で算出された画素ずれ量だけずらした領域を切り出して、２枚目の画像出力領域の画像として出力する。
2004062270.tif 000002
【特許請求の範囲】
【請求項１】
二次元画像を取り込む画像入力部と、
前記画像入力部で取り込まれた２枚の画像のそれぞれについて動き検出領域を選択し、この動き検出領域の画素値を所定方向に演算して得られる射影データに基づいて前記２枚の画像の間の動きベクトルを算出する動き算出部と、
前記２枚の画像の画像相関を前記動き算出部によって算出された動きベクトルが指定する方向に計算し、その計算値に基づいてこの２枚の画像の間の画素ずれ量を算出する変位算出部と、
２枚目の画像に指定されている手ぶれ補正領域から画像出力領域を前記変位算出部で算出された画素ずれ量だけずらした領域を切り出して、２枚目の画像出力領域の画像として出力する画像出力部を備えてなる画像処理装置。
【請求項２】
二次元画像を取り込む画像入力部と、
前記画像入力部で取り込まれた２枚の画像のそれぞれについて複数個の動き検出領域を選択し、この動き検出領域の画素値を所定方向に演算して得られる射影データに基づいて前記２枚の画像の間の動きベクトルを前記複数個の動き検出領域に対してそれぞれ算出する動き算出部と、
前記動き算出部で算出された複数個の動きベクトルを用いて回転成分およびズーム成分を算出し、この回転成分およびズーム成分に基づいて２枚目の画像に回転および拡大変換を施すとともに、前記複数個の動きベクトルから回転成分およびズーム成分を減じて補正済み動きベクトルを求める変換補正部と、
前記２枚の画像の画像相関を前記補正済み動きベクトルが指定する方向に計算し、その計算値に基づいてこの２枚の画像の間の画素ずれ量を算出する変位算出部と、
２枚目の画像に指定されている手ぶれ補正領域から画像出力領域を前記変位算出部で算出された画素ずれ量だけずらした領域を切り出して、２枚目の画像出力領域の補正画像として出力する画像出力部を備えてなる画像処理装置。
【請求項３】
二次元画像を取り込む画像入力ステップと、
前記画像入力ステップで取り込まれた２枚の画像のそれぞれについて動き検出領域を選択し、この動き検出領域の画素値を所定方向に演算して得られる射影データに基づいて前記２枚の画像の間の動きベクトルを算出する動き算出ステップと、
前記２枚の画像の画像相関を前記動き算出ステップによって算出された動きベクトルが指定する方向に計算し、その計算値に基づいてこの２枚の画像の間の画素ずれ量を算出する変位算出ステップと、
２枚目の画像に指定されている手ぶれ補正領域から画像出力領域を前記変位算出ステップで算出された画素ずれ量だけずらした領域を切り出して、２枚目の画像出力領域の画像として出力する画像出力ステップを備えてなる画像処理方法。
【請求項４】
二次元画像を取り込む画像入力ステップと、
前記画像入力ステップで取り込まれた２枚の画像のそれぞれについて複数個の動き検出領域を選択し、この動き検出領域の画素値を所定方向に演算して得られる射影データに基づいて前記２枚の画像の間の動きベクトルを前記複数個の動き検出領域に対してそれぞれ算出する動き算出ステップと、
前記動き算出ステップで算出された複数個の動きベクトルを用いて回転成分およびズーム成分を算出し、この回転成分およびズーム成分に基づいて２枚目の画像に回転および拡大変換を施す第１の変換補正ステップと、
前記複数個の動きベクトルから回転成分およびズーム成分を減じて補正済み動きベクトルを求める第２の変換補正ステップと、
前記２枚の画像の画像相関を前記補正済み動きベクトルが指定する方向に計算し、その計算値に基づいてこの２枚の画像の間の画素ずれ量を算出する変位算出ステップと、
２枚目の画像に指定されている手ぶれ補正領域から画像出力領域を前記変位算出部で算出された画素ずれ量だけずらした領域を切り出して、２枚目の画像出力領域の補正画像として出力する画像出力ステップを備えてなる画像処理方法。
【請求項５】
請求の範囲３に記載されたステップを実行するプログラムが記録された記録媒体。
【請求項６】
請求の範囲４に記載されたステップを実行するプログラムが記録された記録媒体。
【発明の詳細な説明】
【技術分野】  本発明は、手ぶれなどにより生じる撮影画像のぶれを扱う画像処理装置およびその処理方法に関するもので、特に、ぶれの補正に要する画像処理時間の短縮化に関する。
【背景技術】  近年、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）センサやＣＭＯＳ（Ｃｏｍｐｌｅ−ｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）センサ等の画像センサを搭載したデジタルカメラやムービーカメラが多く発売され、初心者でも手軽に静止画像あるいは動画像を撮影することができるようになった。ところが、カメラを三脚等で固定しない限り、一般ユーザが画像を撮影すると、必然的に画像にぶれが生じるので、これを補正するためにいろいろな方式が考案されてきた。
その方法は、大きく二つに分けられる。一つは、加速度センサ等を利用してカメラ自身の動きを検出し、レンズやプリズムの向きを機械的に制御するものであり、もう一つは撮影した画像のデジタルデータに画像処理を施し、画像のぶれ量を計算して画像のぶれを補正するものである。
前者は、ぶれ補正精度が高い反面、加速度センサやレンズ制御の部品が必要であり、装置自体の軽量化や低コスト化に問題がある。これに対し、後者は解像度が落ちるという欠点はあるものの、信号処理だけで手ぶれ補正が可能であり、かつ低コストで実現できるので、広く利用されている。
特開平５−７５９１３号公報に開示された動きベクトル検出回路および手ぶれ補正回路は、このような画像処理を利用した手ぶれ補正に関わる従来技術の例である。ここでは、入力画像を複数の領域に分割し、その中から選択されたいくつかの領域において動きベクトルを計算している。この動きベクトルの精度を向上させるために、選択する領域数を増やすと、動きベクトルの計算量が増加するので、各領域において相関性計算の信頼性を判定する回路が設けられ、動きベクトルの計算はこの判定回路で信頼性があると判断された領域のみに限定されている。ところが各領域全てに信頼性がある場合はやはり全ての領域で動きベクトルを計算する必要があり、処理速度に課題が残されていた。
【発明の開示】
本発明では、画像センサにより取り込まれた二次元画像に、動き検出領域、画像出力領域および手ぶれ補正領域を設定する。先ず、画像センサで取り込まれた２枚の画像について、動き検出領域の画素値を所定方向に演算し、射影データを算出すると、この射影データに基づいて２枚の画像の間の動きベクトルが求められる。次いで、１枚目の画像出力領域の画像と、２枚目の手ぶれ補正領域に含まれる画像に対して、画像相関を動きベクトルが指定する方向に計算し、その計算によって得られる相関値に基づいて、この２枚の画像の間の画素ずれ量を算出する。さらに、２枚目の手ぶれ補正領域から、画像出力領域を画素ずれ量だけずらした領域を切り出して、２枚目の画像出力領域の画像として出力する。これにより手ぶれ補正機能を精度よくかつ高速に実現できる。
【図面の簡単な説明】  第１図は、本発明の実施の形態１に係る画像処理装置の構成を示すブロック図である。
第２図は、本発明の実施の形態１に係る処理手順を示すフローチャートである。
第３図は、動き算出部の動作を説明するための図である。
第４図は、変位算出部の動作を説明するための図である。
第５図は、基本画像領域と矩形領域群の関係を説明するための図である。
第６図は、本発明の実施の形態２に係る画像処理装置の構成を示すブロック図である。
第７図は、本発明の実施の形態２に係る処理手順を示すフローチャートである。
第８図は、変換補正部の動作を説明するための図である。
【発明を実施するための最良の形態】実施の形態１．
以下、本発明の実施の形態１について、図面を参照しながら説明する。第１図は、この発明の実施の形態１にかかわる画像処理装置の構成を示すブロック図であり、画像入力部１、動き算出部２、変位算出部３、画像出力部４の４要素が示されている。また、第２図は画像補正の手順を示すフローチャートである。
先ず、画像入力部１はＣＣＤセンサやＣＭＯＳセンサ等の画像センサにより二次元のフレーム画像を取得する（ＳＴ１０１）。動き算出部２は、画像入力部１によって取得された、前後する二枚のフレーム画像について、指定された動き検出領域を利用して動きベクトルを算出する（ＳＴ１０２）。変位算出部３は、動き算出部２によって算出された動きベクトルが指示する方向のみに限定して二枚のフレーム画像の画像相関を計算し、この二枚のフレーム画像間の画素ずれ量を算出する（ＳＴ１０４）。画像出力部４は、二枚目のフレーム画像の手ぶれ補正領域から画像出力領域を先に求められた画素ずれ量だけずらした領域を切り出して、二枚目の画像出力領域の補正画像として出力する（ＳＴ１０５）。
より具体的な動き算出部２の動作を第３図（ａ）〜（ｄ）を用いて説明する。第３図（ａ）に斜線で示された４個の矩形領域が、動き検出領域６を示す。各々の動き検出領域６で、画素の並ぶ縦方向または横方向に画素値を加算して、射影データを取得する。なお、ここでは動き検出領域６の数が４個の例を説明しているが、動き検出領域６は５個以上設けてもよく、あるいは１〜３個設けるだけでもよい。
第３図（ｂ）に、縦方向に画素値を加算して得られる縦方向射影データ７の例と、横方向に画素値を加算して得られる横方向射影データ８の例を示す。ここでは、画素の数は縦・横ともに１０個である。この縦方向射影データ７と横方向射影データ８を利用して、二枚のフレーム画像間の相関関係を計算することによって、動き検出領域６に含まれる画像の動きベクトルを求めることができる。
具体的に、動きベクトルの水平成分の求め方を２フレーム分の縦方向射影データを利用して以下に説明する。先ず、１フレーム目の縦方向射影データ７を第３図（ｃ）に、２フレーム目の縦方向射影データ１１を第３図（ｄ）に示す。第３図（ｃ）において、範囲ｗ１は相関計算の対象となる１フレーム目の射影データを、また範囲ｗ２は１フレーム目では相関計算の対象外である射影データを示している。また、第３図（ｄ）において、範囲９は、相関計算の対象となる２フレーム目の射影データのうち、最も左端に位置する射影データを、また範囲１０は最も右端に位置する射影データを示している。範囲９、１０の幅はいずれもｗ１である。
２フレーム目の画像には１フレーム目の画像の直後のものを通常選ぶが、所定のフレーム数を空けて選ぶこともできる。１フレーム目の射影データ（ｗ１）と２フレーム目の射影データとの相関計算は、範囲９から範囲１０までの間を、どちらかの射影データを一画素ずつずらしながら行う。
より具体的には、範囲ｗ１に含まれる１フレーム目の射影データと２フレーム目の射影データについて、対応する個々の射影データの差の絶対値を加算し、求められた総和値を相関値とする。射影データを一画素ずつずらしながら相関計算を行い、縦方向射影データの各位置で計算される相関値に対し、最小値を与える場所が、動きベクトルの水平成分となる。例えば、１フレーム目の射影データに対し、２フレーム目の射影データの中で範囲９の位置で最小であるとすれば、得られる動きベクトルの水平成分は−ｗ２、同じく範囲１０であれば＋ｗ２となる。横方向射影データ８についても同様の計算を適用することで、動きベクトルの垂直成分が得られる。
上記のようにして、４個の動き検出領域６のそれぞれから、各領域に付き１個の動きベクトルが得られる。こうして得られた４個の動きベクトルから、画像センサを搭載したカメラ全体が動いた方向を代表する動きベクトルを計算する。そのためには、これら４個の平均ベクトルを代表動きベクトルとしてもよく、それ以外の方法、例えば４個の動きベクトルの方向角を比較し、特に角度あるいは大きさのずれたｎ個（但しｎ＜３）の動きベクトルはノイズとして除外し、それ以外の（４−ｎ）個の動きベクトルの平均を代表動きベクトルとしてもよい。
次に、変位算出部３の動作を第４図（ａ）〜（ｅ）を用いて説明する。第４図（ａ）には、撮像素子全体を表すセンサ画素領域１６と、手ぶれ補正を施す対象となる画像出力領域１２が示されている。ユーザには画像出力領域１２が表示されている。手ぶれ補正領域１３は画像出力領域１２とその外側に描かれた斜線領域を含み、ここから、画像出力領域１２と同じサイズの矩形領域を切り出す。
手ぶれ補正を施す場合、２フレーム分の画像を用い、両画像の画像相関を求める。但し、１フレーム目の画像には画像出力領域１２の画像、２フレーム目の画像には手ぶれ補正領域１３から切り出された画像を用いる。すなわち、手ぶれ補正領域１３から、画像出力領域１２と同じサイズの領域で、しかも最も相関の高い画像領域を抽出すれば、時系列画像として見た場合、手ぶれが補正された動画像を得ることになる。
画像出力領域１２の画像と手ぶれ補正領域１３の画像との相関を計算するには、選択的に画素を間引き、その計算量を削減する。第４図の（ｂ）〜（ｅ）はこの選択方式の具体例であり、第４図（ｂ）は数個置きに画素を間引き、かつ画像出力領域１２の全体に渡って一様に画素を選択する方式、第４図（ｃ）は第４図（ｂ）の間引き間隔をさらに広げた方式、第４図（ｄ）は選択する画素を間引くとともに、選択範囲を四隅に限定した方式、第４図（ｅ）は四隅以外の領域に限定した方式である。
画像相関を求める場合には、上記のように対象とする画素を間引き選択することに加え、動き算出部２で計算した動きベクトルを利用して、画像相関を取る方向を一方向に限定することで、さらに計算量を削減する。すなわち、第５図に示すように１フレーム目の基本画像領域１２の位置を基準として、２フレーム目の手ぶれ領域１３の内部から最も相関の強い領域を選択する際に、動き算出部２で計算した動きベクトルの方向１４に沿って並ぶ、画像出力領域１２と同じサイズの矩形領域群１５を対象として画像相関を計算し、この中から最も相関の強い領域を選択する。
画像相関の具体的計算方法として、対応する画素値の差分絶対値を計算し、総和を相関値として求めれば、相関の最も強い箇所で相関値は最小になる。従って動きベクトル１４の方向に沿って相関値を計算し、その中から最小値を与える領域を選択すれば最も相関の強い領域を選択できる。
画像出力部４は、変位算出部３で計算された１フレーム目の画像出力領域１２の画像と相関が最も強い矩形領域を、２フレーム目の画像出力領域１２の画像として出力するので、第３図（ａ）の画像出力領域１２に対して手ぶれ補正を施した画像が得られる。
以上に述べた撮影画像の画像処理方法は、画像補正プログラムにより実現され、該プログラムはコンピュータ等で読み取り可能な記録媒体に記録して提供される。
なお、動き算出部２においては、動きベクトルの計算に必要な射影データの取得を、撮像素子全体を表すセンサ画素領域１６を対象にする例を示したが、画像入力部１によって撮影された入力画像から部分画像領域を切り出し、その画像から取得するようにしてもよい。あるいは、射影データの計算をＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  ＩＣ）等でハードウェア化し、こうして取得した射影データを利用して動きベクトルを計算してもよい。
また、動き算出部２では、動きベクトルの計算のための射影データを、解像度、すなわち射影データの個数を増加させずに動きベクトルを相関計算で求めたが、この射影データを内挿等で解像度を上げて同様に動きベクトルの計算をすれば、計算される動きベクトルの精度は一般に向上するため、変位算出部３における画像相関計算の照合範囲を削減することができる。
このように、実施の形態１によれば、画像入力部１により撮影された画像から、動き算出部２によって動きベクトルを算出し、変位算出部３によって動きベクトルの方向に限定して画像相関計算を削減しながら二フレーム画像間の画素ずれ量を算出し、画像出力部４によって画素ずれ量を相殺した部分領域を切り出して出力画像とするので、手ぶれによる画素ずれを補正した画像を高速に得ることができる。
実施の形態２．
以下、本発明の実施の形態２について図面を参照しながら説明する。第６図はこの発明の実施の形態２にかかわる画像処理装置の構成を示すブロック図であり、本画像処理装置は実施の形態１の構成に加え、変換補正部５を有する５部分からなる。また第７図は画像補正の手順を示すフローチャートである。
画像入力部１、動き算出部２、変位算出部３、画像出力部４の動作は実施の形態１と同様である。変換補正部５は、動き算出部２で計算された複数の動きベクトルから画像全体の回転・ズーム成分を検出し、これらの動き成分を利用して入力画像に回転変換およびズーム変換を施す。
変換補正部５の動作を具体的に以下に説明する。第８図は、動き算出部２によって計算された４個の動きベクトルから、撮像軸まわりのカメラの回転、および撮像軸に沿ったカメラの前進あるいは後退に伴う画像の拡大・縮小（ズーム）の動きを検出する方式を、説明するための図である。実施の形態１で説明した手ぶれは、カメラ撮像面に平行な並進成分としての動きであり、本実施の形態では、並進成分以外のカメラの動きとして、回転成分およびズーム成分を検出することが目的である。以下、カメラ自身の動きとして、回転成分及びズーム成分のみを含む場合について説明する。
第８図（ａ）は、カメラの動きが回転成分のみによる場合の４個の動きベクトルのパターン、第８図（ｂ）はズーム成分のみの場合のパターンを示す。これらが混合することなく独立して現れる場合は、個々の動きベクトルの強さで回転成分あるいはズーム成分を定量的に算出する。
第８図（ｃ）のように回転成分とズーム成分が混合する場合は、個々の動きベクトルを回転成分およびズーム成分に分離してそれぞれの動き成分を計算する。第８図（ｄ）は、第８図（ｃ）に示した回転成分とズーム成分が混合する動きベクトルに対し、回転成分およびズーム成分の計算方法を示す図であり、実線は回転成分、点線はズーム成分を計算するための補助線である。すなわち、４個の動きベクトルを、それぞれ互いに直交する補助線の方向に投射し、その投射ベクトルを各動きベクトルの回転成分およびズーム成分として求めれば、各成分が独立して現れる場合と同様に計算できる。
上記の手続きにより、定量的に算出された回転成分およびズーム成分を利用して、それぞれのカメラの動き成分を相殺するには、取得した２フレーム目の画像データに、検出された回転成分およびズーム成分と逆の変換を施す。さらに各成分それぞれについて、ある一定の刻み幅、たとえば回転の場合は１度ずつ、ズームの場合は０．１倍ずつ変化させながら２フレーム目の画像を変換させ、１フレーム目の画像と相関をとる。この中から最も相関の高い２フレーム目の画像を選択すると、回転およびズーム成分を相殺した画像が復元できたことになる（ＳＴ１０３ａ）。
実際の動きベクトルは回転成分とズーム成分を含んでいるから、上記の手法によって求められた回転成分とズーム成分を動きベクトルから差し引くと、カメラ撮像面に平行な並進成分だけが残る。こうして求められた動きベクトルを補正済み動きベクトルと呼ぶ。この補正済み動きベクトルを用いて、実施の形態１と同様な手法で、画像センサを搭載したカメラ全体が動いた方向を表す代表動きベクトルを計算する（ＳＴ１０３ｂ）。
次に、変位算出部３では、この代表動きベクトルを利用して、第５図に示したように１フレーム目の基本画像領域１２の位置を基準として、２フレーム目の手ぶれ領域１３の内部から最も相関の強い矩形領域を選択する。なお、回転およびズーム成分が相殺された２フレーム目の復元画像と１フレーム目の基本画像領域の画像を利用して、再度、動きベクトルを求めることもできる。
画像出力部４は、変位算出部３で計算された１フレーム目の画像出力領域１２の画像と相関が最も強い矩形領域を、２フレーム目の画像出力領域１２の画像として出力するので、画像出力領域１２に対して手ぶれ補正を施した画像が得られる。
以上に述べた撮影画像からの画像処理方法は、画像補正プログラムにより実現され、該プログラムはコンピュータ等で読み取り可能な記録媒体に記録して提供される。
【産業上の利用可能性】  本発明は、カメラ撮影時に生じる手ぶれ等による二次元画像の劣化を防ぐために、画像処理により撮影画像のぶれを補正する技術に関するもので、初心者でも手軽にぶれの目立たない静止画像あるいは動画像を楽しめるデジタルカメラやムービーカメラ等に適用できる
【図１】
2004062270.tif 000003
【図２】
2004062270.tif 000004
【図３】
2004062270.tif 000005
【図４】
2004062270.tif 000006
【図５】
2004062270.tif 000007
【図６】
2004062270.tif 000008
【図７】
2004062270.tif 000009
【図８】
2004062270.tif 000010
【国際調査報告】
2004062270.tif 000011
2004062270.tif 000012