説明

画像処理装置、画像処理方法、および、画像処理プログラム

【課題】複数の画像データからより高解像度の画像データを生成する処理時間の短縮。
【解決手段】CPU200は、時系列に並ぶ複数の画像データF0〜F3を取得し、画像データF0〜F3のそれぞれの生成時に対応するディジタルスチルカメラ10の動きに関する情報として、角速度VX、VY、VZを取得する。CPU200は、画像データF0〜F3が表す画像間における被写体の位置ずれ補正量であって、角速度VX、VY、VZを用いて推定される第1の補正量を算出する。CPU200は、第1の補正量に基づいて位置ずれを補正された画像データF0〜F0を解析して推定される第2の補正量を算出する。そして、CPU200は、第2の補正量に基づいて、位置ずれを補正すると共に、補正された画像データF0〜F3を合成してより解像度の高い高解像度画像データを生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理に関し、特に、比較的低解像度の複数の画像データから高解像度の画像データを生成する技術に関する。
【背景技術】
【0002】
デジタルビデオカメラで生成された動画像データを構成するフレーム画像や、デジタルスチルカメラによって連続撮影された画像データのように、時系列に並ぶ複数の近似した画像データが取得される場合がある。これらの近似した複数の画像データを元画像データとして、元画像データより高解像度の画像データを生成する技術が知られている(例えば、特許文献1)。
【0003】
【特許文献1】特開平11−164264号公報
【0004】
上記技術では、例えば、元画像データとして、動画像データを構成する連続する複数のフレーム画像を用いる場合において、フレーム画像の画像データを解析して、各フレーム画像間の移動ベクトル(いわゆるフレーム画像間のずれに相当する)を画素単位より細かい精度で算出する。そして、算出した移動ベクトルに基づいて、各フレーム画像を重ね合わせて、高解像度の画像データを合成している。
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、上記従来技術では、各フレーム画像間の移動ベクトルをフレーム画像のデータ解析のみによって算出しているため、処理時間が長くなりやすい。特にフレーム画像間のずれが大きい場合、すなわち、算出すべき移動ベクトルが大きい場合に、移動ベクトルの算出に要する処理時間、処理負荷が増大し、高解像度の画像データの生成に長時間を要するおそれがあった。
【0006】
また、上記課題は、デジタルビデオカメラで生成された動画像データを用いる場合に限らず、デジタルスチルカメラで連続撮影された複数の画像データを用いる場合などにも共通した課題である。
【0007】
本発明は、上記課題を解決するためになされたものであり、複数の画像データに基づいてより高解像度の画像データを生成する場合に、その処理時間の短縮を図ることを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するために本発明の第1の態様は、画像処理装置を提供する。本発明の第1の態様に係る画像処理装置は、撮像装置によって生成された画像データであって、時系列に並ぶ複数の画像データを取得する画像データ取得手段と、前記複数の画像データのそれぞれの生成時に対応する前記撮像装置の被写体に対する動きに関する情報であって、前記複数の画像データと関連付けられた生成時動き情報を取得する情報取得手段と、前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記取得された生成時動き情報を用いて推定される第1の補正量を算出する第1の補正量算出手段と、前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記第1の補正量に基づいて前記位置ずれが補正された複数の画像データを解析して推定される第2の補正量を算出する第2の補正量算出手段と、前記算出された第2の補正量に基づいて、前記複数の画像データにおける前記位置ずれを補正すると共に、前記補正された複数の画像データを合成して、前記複数の画像データより解像度の高い高解像度画像データを生成する高解像度画像生成手段とを備えることを特徴とする。
【0009】
本発明の第1の態様に係る画像処理装置によれば、複数の画像データを合成してより高解像度の画像データを生成する際に、複数の画像データのそれぞれの生成時に対応する前記撮像装置の被写体に対する動きに関する情報であって、複数の画像データと関連付けられた生成時動き情報を取得する。そして、各画像間における被写体の位置ずれを補正するための補正量(位置ずれ補正量)であって、取得した生成時動き情報を用いて推定される第1の補正量を算出する。さらに、第1の補正量に基づいて、位置ずれを補正された複数の画像データを解析して推定される第2の補正量を最終的な位置ずれ補正量として算出する。この結果、生成時動作情報を用いないで、複数の画像データの解析のみによって位置ずれ補正量を算出する場合と比較して、処理時間の短縮および処理負荷の軽減を図ることができる。
【0010】
本発明の第1の態様に係る画像処理装置において、前記第1の補正量の算出は、前記複数の画像データが表す画像を構成する画素単位の精度で実行され、前記第2の補正量の算出は、前記複数の画像データが表す画像を構成する画素単位より細かい精度で実行されても良い。係る場合には、まず、第1の補正量として画素単位の精度の位置ずれ補正量が算出され、最終的に、第2の補正量として画素単位より細かい精度の位置ずれ補正量が算出される。この結果、画像データの解析による第2の補正量の算出は、いわゆるサブピクセルレベルでの位置ずれ補正量にのみ用いられ、処理時間の短縮および処理負荷の軽減が図られる。
【0011】
本発明の第1の態様に係る画像処理装置において、前記生成時動き情報は、前記撮像装置に備えられたセンサによって検出された情報、または、前記センサによって検出された情報を加工して得られた情報であっても良い。かかる場合には、センサによって検出された情報に基づいて第1の補正量を算出するので、画像データの解析のみに基づいて位置ずれ補正量を算出するより、処理時間の短縮および処理負荷の軽減を図ることができる。
【0012】
本発明の第1の態様に係る画像処理装置において、前記生成時動き情報は、前記撮像装置の向きの変化に関する角変位量、角速度、角加速度のいずれかであっても良い。かかる場合には、複数の画像データ生成時の撮像装置の角変位量、角速度、角加速度のいずれかに基づいて第1の補正量を算出するので、画像データの解析のみに基づいて位置ずれ補正量を算出するより、処理時間の短縮および処理負荷の軽減を図ることができる。
【0013】
本発明の第1の態様に係る画像処理装置において、前記撮像装置の向きの変化は、撮像画像における被写体の上下方向のずれに対応するピッチ方向の角度変化、撮像画像において被写体の左右方向のずれに対応するヨー方向の角度変化、撮像画像と垂直な直線を軸として被写体が回転するずれに対応するロール方向の角度変化、の全部または一部であっても良い。かかる場合には、撮像装置のピッチ方向の角度変化、ヨー方向の角度変化、ロール方向の角度変化の全部または一部に基づいて、第1の補正量を算出するので、画像データの解析のみに基づいて位置ずれ補正量を算出するより、処理時間および処理負荷を軽減することができる。また、ピッチ方向、ヨー方向、ロール方向の全ての角度変化に基づいて、第1の補正量を算出する場合には、より正確に第1の補正量を算出できるので、さらに、処理時間の短縮および処理負荷の軽減を図ることができる。
【0014】
本発明の第2の態様は、画像処理方法を提供する。本発明の第2の態様に係る画像処理方法は、撮像装置によって生成された画像データであって、時系列に並ぶ複数の画像データを取得し、前記複数の画像データのそれぞれの生成時に対応する前記撮像装置の被写体に対する動きに関する情報であって、前記複数の画像データと関連付けられた生成時動き情報を取得し、前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記取得された生成時動き情報を用いて推定される第1の補正量を算出し、前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記第1の補正量に基づいて前記位置ずれが補正された複数の画像データを解析して推定される第2の補正量を算出し、前記算出された第2の補正量に基づいて、前記複数の画像データにおける前記位置ずれを補正すると共に、前記補正された複数の画像データを合成して、前記複数の画像データより解像度の高い高解像度画像データを生成することを特徴とする。
【0015】
本発明の第3の態様は、画像処理を実行するコンピュータプログラムを提供する。本発明の第3の態様に係るコンピュータプログラムは、撮像装置によって生成された画像データであって、時系列に並ぶ複数の画像データを取得する画像データ取得機能と、前記複数の画像データのそれぞれの生成時に対応する前記撮像装置の被写体に対する動きに関する情報であって、前記複数の画像データと関連付けられた生成時動き情報を取得する情報取得機能と、前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記取得された生成時動き情報を用いて推定される第1の補正量を算出する第1の補正量算出機能と、前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記第1の補正量に基づいて前記位置ずれが補正された複数の画像データを解析して推定される第2の補正量を算出する第2の補正量算出機能と、前記算出された第2の補正量に基づいて、前記複数の画像データにおける前記位置ずれを補正すると共に、前記補正された複数の画像データを合成して、前記複数の画像データより解像度の高い高解像度画像データを生成する高解像度画像生成機能とをコンピュータに実現させることを特徴とする。
【0016】
本発明の第2の態様に係る画像処理方法および本発明の第3の態様に係るコンピュータプログラムによれば、本発明の第1の態様に係る画像処理装置と同様の作用効果を得ることができる。また、本発明の第2の態様に係る画像処理方法および本発明の第3の態様に係るコンピュータプログラムは、本発明の第1の態様に係る画像処理装置と同様にして種々の態様にて実現され得る。また、本発明の第3の態様に係るコンピュータプログラムは、コンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体としても実現され得る。
【発明を実施するための最良の形態】
【0017】
以下、本発明にかかる画像処理装置について、図面を参照しつつ、実施例に基づいて説明する。
【0018】
A.実施例
・画像処理システムの構成:
図1は、本発明の実施例に係る撮像装置および画像処理装置を含む画像処理システムの一例を示す説明図である。本発明の実施例に係る撮像装置および画像処理装置を適用可能な画像処理システムの構成について図1を参照して説明する。
【0019】
画像処理システムは、画像データを生成する撮像装置としてのディジタルスチルカメラ10、ディジタルスチルカメラ10にて生成された複数の画像データから、高解像度の画像データを生成する画像処理装置としてのパーソナルコンピュータ20、画像データを用いて画像を出力する出力装置としてのカラープリンタ30を備えている。また、出力装置としては、プリンタ30の他に、例えば、LCDディスプレイのモニタ25、表示装置40が用いられ得る。
【0020】
パーソナルコンピュータ20は、一般的に用いられるタイプのコンピュータであり、高解像度の画像データを生成する処理を含む画像処理プログラムを実行するCPU200、CPU200における演算結果、画像データ等を一時的に格納するRAM201、画像処理プログラムを格納するハードディスクドライブ(HDD)202を備えている。パーソナルコンピュータ20は、メモリカードMCを装着するためのカードスロット203、ディジタルスチルカメラ10からの接続ケーブルを接続するための入出力端子204を備えている。
【0021】
プリンタ30は、カラー画像の出力が可能なプリンタであり、例えば、シアン、マゼンタ、イエロー、ブラックの4色の色インクを印刷媒体上に噴射してドットパターンを形成することによって画像を形成するインクジェット方式のプリンタである。あるいは、カラートナーを印刷媒体上に転写・定着させて画像を形成する電子写真方式のプリンタである。色インクには、上記4色に加えて、ライトシアン(薄いシアン)、ライトマゼンタ(薄いマゼンタ)、レッド、ブルーを用いても良い。
【0022】
表示装置40は、画像を表示するための表示ディスプレイ45を有し、例えば、電子式の写真フレームとして機能する表示装置である。表示ディスプレイ45は、例えば、液晶表示ディスプレイ、有機EL表示ディスプレイが用いられ得る。
【0023】
プリンタ30および表示装置40は、スタンドアローンにて画像処理、画像出力を実行するために、パーソナルコンピュータ20が備える画像処理機能を備えても良い。かかる場合には、プリンタ30、表示装置40は、パーソナルコンピュータ20を介さずに、例えば、メモリーカードMC等の記憶媒体、あるいは、ケーブルを介してディジタルスチルカメラ10から画像データを取得し、プリンタ30、表示装置40がそれぞれ本実施例における画像処理装置として機能することができる。
【0024】
以下の説明では、ディジタルスチルカメラ10で生成された画像データが、パーソナルコンピュータ20に送出され、パーソナルコンピュータ20にて高解像度の画像データを生成する画像処理が実行される場合について説明する。
【0025】
・ディジタルスチルカメラ10の構成:
図2は、ディジタルスチルカメラ10の概略構成を示す説明図である。ディジタルスチルカメラ10は、光の情報を撮像素子(例えば、CCDやCMOS)に結像させることにより画像をデジタルデータとして取得するカメラである。ディジタルスチルカメラ10は、静止画像データだけでなく、時系列に並ぶ複数のフレーム画像データから構成される動画像データを生成する機能を備える。すなわち、ディジタルスチルカメラ10は、静止画撮影モードと動画撮影モードを、ユーザーにより選択可能となっている。以下の説明では、動画撮影モードが選択され、動画像データが生成される場合について説明する。
【0026】
図2に示すように、ディジタルスチルカメラ10は、光情報を収集し、電気信号として出力する光学回路140、光学回路140から出力された電気信号をA/D変換して数値化し、画像データを生成する画像データ生成回路130、生成された画像データを加工処理するための画像処理回路120、3つの角速度センサ161、162、163を備えている。さらに、ディジタルスチルカメラ10は、各回路を制御する制御回路100、制御回路100に撮像モードを始めとする利用者の意図を伝えるコントローラ110、画像データを画像ファイルとしてメモリカードMCに保存するメモリカードドライブ150を備えている。
【0027】
光学回路140は、複数の画素を有し、撮像画像の光情報を受光して画素単位の電気信号として出力する撮像素子144と、撮像素子144の受光部に光情報を集めるレンズ142と、撮像素子144の受光量を調節する絞り146とを備えている。撮像素子144には、図2に示すように、複数の画素CPが配置されている。本実施例では、互いに隣接し合う画素CPの中心間距離(以下、画素ピッチという。)は、縦方向(図2のy方向)、横方向(図2のx方向)共に、sである。
【0028】
3つの角速度センサ161、162、163は、それぞれ、ディジタルスチルカメラ10のX軸回り、Y軸回り、Z軸回りの向きの変化を角速度として検出する装置である。角速度センサ161、162、163としては、種々のジャイロスコープが知られている。例えば、機械式のコマジャイロ、音片・音叉の振動を用いる振動ジャイロ 、光学式の光ファイバジャイロ等を用いることができる。
【0029】
図3は、ディジタルスチルカメラ10のX軸周り、Y軸周り、Z軸周りの向きの変化を説明する概略図である。X軸は、撮像素子144の露光面に平行な軸であり、ディジタルスチルカメラ10の左右方向を表す軸をいい、Y軸は、撮像素子144の露光面に平行な軸であり、ディジタルスチルカメラ10の上下方向を表す軸をいうものとする。そして、Z軸は、撮像素子144の露光面と垂直な方向を表す軸をいうものとする。そして、XYZの3軸が交わる原点は、撮像素子144の露光面の中心Ccに位置する。
【0030】
以下、図3に示すように、XYZ軸回りの変位量をそれぞれ、θX、θY、θZとする。そして、角速度センサ161、162、163が検出するXYZ軸回りの角速度をそれぞれVX、VY、VZとする。θXおよびVXは、ディジタルスチルカメラ10で撮像された撮像画像において被写体の上下方向の位置ずれに対応する角度変化(いわゆる、ピッチ方向のぶれ)であり、θZおよびVZは、ディジタルスチルカメラ10で撮像された撮像画像において被写体の左右方向の位置ずれに対応する角度変化(いわゆる、ヨー方向のぶれ)である。また、θYおよびVYは、ディジタルスチルカメラ10で撮像された撮像画像と垂直な直線を軸として被写体が回転する位置ずれに対応する角度変化(いわゆる、ロール方向のぶれ)である。
【0031】
図2に戻って、説明を続ける。制御回路100は、周知のコンピュータであり、制御プログラムを実行するCPU102、CPU102の扱うデータ、演算結果等を一時的に格納するRAM104、制御プログラム等を格納するROM106を備えている。制御回路100は、制御プログラムを実行することにより、図2に示すように、生成時動き情報取得部M110と、画像データ出力部M120として機能することができる。
【0032】
生成時動き情報取得部M110は、角度センサ161、162、163が検出した角速度VX、VY、VZを取得する。画像データ出力部M120は、画像データ生成回路130が生成した時系列に並ぶ複数のフレーム画像データGDと、生成時動き情報取得部M110が取得した角速度VX、VY、VZとを関連付けて、画像ファイルGFとしてメモリカードMCに出力する。ここで、複数のフレーム画像データと角速度VX、VY、VZとが関連付けられているとは、フレーム画像データのそれぞれの生成時と角速度VX、VY、VZの検出時との、時間軸上における対応関係が認識できるようにされていることをいう。
【0033】
・画像処理システムが用いる画像ファイルの構成:
図4は、画像ファイルGFの内部構成を概念的に示す説明図である。画像ファイルGFは、動画像データMDおよび音声データADを格納する主情報格納領域R100と、動画像データMDと関連付けられた付属情報を格納する付属情報格納領域R110を備えている。付属情報格納領域R110には、上述した角速度VX、VY、VZに加えて、画素ピッチsおよび焦点距離fが格納されている。
【0034】
本実施例では、動画像データMDは、時系列に並ぶn個のフレーム画像データGD1〜GDnから構成されている。各フレーム画像データは、ドットマトリクス状の各画素の階調値(以下、「画素値」とも呼ぶ。)を示す階調データ(以下、「画素データ」とも呼ぶ。)で構成されている。画素データは、Y(輝度)、Cb(ブルーの色差)、Cr(レッドの色差)からなるYCbCrデータや、R(レッド)、G(グリーン)、B(ブルー)からなるRGBデータ等が用いられ得る。
【0035】
角速度VX、VY、VZとしては、フレーム画像データGD1〜GDnのそれぞれの生成時に対応する角速度VX(1)〜VX(n)、VY(1)〜VY(n)、VZ(1)〜VZ(n)が、付属情報格納領域R110に格納されている。すなわち、動画像データMDが、毎秒30フレームの動画像データであるとすると、角速度もVX、VY、VZの値も1/30秒ごとに記録されている。
【0036】
・パーソナルコンピュータ20の機能的構成:
図5は、本実施例に係るパーソナルコンピュータ20(CPU200)の機能ブロック図である。図5を参照してパーソナルコンピュータ20(CPU200)の機能的構成の概要について説明する。
【0037】
画像データ取得部M210は、画像ファイルGFの動画像データMDを構成するフレーム画像データGDから選択された時系列に並ぶ複数のフレーム画像データを取得する。情報取得部M220は、フレーム画像データGDと関連付けられた生成時動き情報を取得する。生成時動き情報には、角速度VX、VY、VZが含まれる。
【0038】
第1の補正量算出部M230は、情報取得部M220から得られた生成時動き情報を用いて、大まかな位置ずれ補正量である第1の補正量を算出する。位置ずれ補正量は、画像データ取得部M210が取得した複数のフレーム画像データが表す各画像間に生じている位置ずれを補正するための補正量である。
【0039】
第2の補正量算出部M240は、画像データ取得部M210が取得した複数のフレーム画像データを解析して、最終的な位置ずれ補正量である第2の補正量を算出する。その際の解析には、第1の補正量算出部M230によって算出された第1の補正量を用いる。
【0040】
高解像度画像生成部M250は、第2の補正量算出部M240によって算出された第2の補正量に基づいて、上述した各画像間に生じている位置ずれを補正する。そして、高解像度画像生成部M250は、補正された各画像のフレーム画像データを合成して、フレーム画像データより解像度の高い画像データを新たに生成する。
【0041】
・パーソナルコンピュータ20における画像処理:
図6〜図16を参照してパーソナルコンピュータ20において実行される画像処理について説明する。
【0042】
図6は、本実施例に係る画像処理の処理ルーチンを示すフローチャートである。パーソナルコンピュータ20(CPU200)は、スロット203にメモリカードMCが差し込まれると自動的に、あるいは、ユーザーの指示に従って、本画像処理のプログラムを起動する。CPU200は、ユーザの指示に従ってメモリカードMCから画像ファイルGFを読み出し、画像ファイルGFに記録された動画像データMDを再生する。
【0043】
動画像データMDの再生中に、ユーザによってフレーム画像データの取得指示が入力されると、CPU200は、動画像データMDを構成するフレーム画像データGD1〜GDnの中から、連続する複数のフレーム画像データを取得する(ステップS1)。本実施例では、CPU200は、ユーザーに指示されたタイミングから時系列に連続する4フレーム分のフレーム画像データを取得するものとする。CPU200は、取得した4つのフレーム画像データをRAM201に一時的に格納する。
【0044】
以下の説明では、取得した4つのフレーム画像データの番号(以下、「フレーム番号」とも呼ぶ。)をaとし、フレーム番号aのフレーム画像データをフレーム画像データFa(a=0,1,2,3)と呼ぶこととする。そして、フレーム画像データFaが表す画像を画像fa(a=0,1,2,3)と呼ぶこととする。
【0045】
CPU200は、続いて、画像ファイルGFから付属情報を取得する(ステップS2)。取得される付属情報は、フレーム画像データF0〜F3と関連付けられた角速度VX、VY、VZと、画素ピッチsおよび焦点間距離fである。以下、フレーム画像データFaと関連付けられた角速度、すなわち、フレーム画像データFaの生成時におけるXYZ軸回り角速度を、それぞれVXa、VYa、VZa(a=0,1,2,3)と呼ぶこととする。
【0046】
ユーザによって、取得したフレーム画像について、高解像度の静止画像を生成する指示が入力されると、まず、CPU200は、フレーム画像データF0〜F3が表す画像f0〜f3間において生じている被写体の位置ずれ(以下、単に位置ずれという。)を解消する補正(以下、位置ずれ補正という。)に用いる補正量を算出する(ステップS3〜S4)。ここで、位置ずれおよび位置ずれ補正について説明しておく。
【0047】
図7は、フレーム画像データF0が表す画像f0とフレーム画像データF3が表す画像f3間の位置ずれを示す説明図である。また、図8は、フレーム画像データF0を基準画像データとして、フレーム画像データF3に対して行う位置ずれ補正について示す説明図である。位置ずれ補正量を算出するにあたって、基準となるフレーム画像データは、F0〜F4のいずれであっても良いが、以下の説明では、フレーム画像データF0を基準とする。すなわち、フレーム画像データF0に対する位置ずれ補正量を、他の3つのフレーム画像データF1〜F3について、それぞれ算出するものとする。
【0048】
位置ずれは、画像の横方向および縦方向の並進のずれ(以下、単に、並進ずれという。)と、画像の中心を軸とした回転のずれ(以下、単に、回転ずれという。)との組み合わせで表される。図7では、基準となる画像f0が表す画像に対する、画像f3のずれ量を分かり易く示すため、画像f0の縁と、画像f3の縁とを重ねて示すとともに、画像f0が表す画像上の中心位置に仮想の十字画像X0を追記し、この十字画像X0が、画像f3と同様にずれたとして、画像f3上に、ずれた結果の画像である十字画像X3を示すようにしている。更に、このずれ量を、より分かり易く示すために、画像f0および十字画像X0を太い実線で示すとともに、画像f3および十字画像X3を細い破線で示すようにしている。
【0049】
本実施例では、並進ずれ量として横方向を「um」、縦方向を「vm」と表し、回転ずれ量を「δm」と表し、画像fa(a=1,2,3)の画像f0に対するずれ量を「uma」、「vma」、「δma」と表すこととする。例えば、図7に示すように、画像f3は、画像f0に対して、並進ずれ、および回転ずれが生じており、そのずれ量は、um3、vm3、δm3と表される。
【0050】
また、補正とは、画像の各画素の位置を、横方向にuの移動、縦方向にvの移動、および画像の中心を軸としたδの回転を施した位置に移動させるように、フレーム画像データにおいて各画素データの座標を変換することを意味する。uは、横方向の並進補正量を表し、vは、縦方向の並進補正量を表している。そして、δは、回転補正量を表している。
【0051】
フレーム画像データF0に対するフレーム画像データFa(a=1,2,3)の位置ずれ補正量を「ua」、「va」、「δa」と表すこととすると、位置ずれ補正量と、上述した位置ずれとの間には、ua=−uma、va=−vma、δa=−δmaの関係が成り立つ。例えば、対象フレーム画像F3についての位置ずれ補正量u3、v3、δ3は、u3=−um3、v3=−vm3、δ3=−δm3で表される。
【0052】
以上説明したように、例えば、図8に示すように、位置ずれ補正量u3、v3、δ3を用いて、フレーム画像データF3に対して補正を実行するすることにより、画像f3を基画像f0に一致させることができる。このとき、補正後のフレーム画像データF3が表す画像f3(以下、補正後画像f3という。)と、画像f0とを重ね合わせて表示させると、図8に示すように、補正後画像f3は、画像f0に対して部分一致する。なお、この補正の結果を分かり易く示すため、図8においても、図7と同じ仮想の十字画像X0および十字画像X3を表記しており、図8に示すように、補正の結果として、十字画像X3は十字画像X0と一致することとなる。
【0053】
なお、上述の「部分一致する」とは、以下のことを意味するものである。すなわち、図8に示すように、例えば、ハッチングを施した領域P1は、画像f3にのみ存在する領域であり、画像f0には、該当する領域は存在しない。このように、上述の補正を行ったとしても、ずれに起因して、画像f0にのみ、または、f3にのみ存在する領域が生じてしまうため、画像f3は、画像f0に対して完全一致することはなく、部分一致することとなる。
【0054】
図6に戻って、上述した位置ずれ補正量ua、va、δa(a=1,2,3)の算出処理について説明する。CPU200は、最終的な位置ずれ補正量を算出する前段階として、ステップS2において取得した付属情報を用いて、位置ずれ補正量の概算値を算出する(ステップS3)。以下、本ステップで算出される位置ずれ補正量の概算値を第1の補正量と呼び、記号ua_1st、va_1st、δa_1st(a=1,2,3)で表す。
【0055】
図9は、ディジタルスチルカメラ10のX軸回りの向きの変化と撮像素子144上における被写体の位置ずれとの関係を示す概略図である。図9は、ディジタルスチルカメラ10の向きがθXだけ変位する(ぶれる)ことによって、撮像素子144およびレンズレンズ142に対する被写体の位置が、記号Hで示す位置から記号H’で示す位置へと変化した様子を模式的に示している。これに対応する撮像素子144上における被写体のずれ量Vは、変位量θXから算出可能であることがわかる。そして、ずれ量Vは、そのまま生成される画像に反映されるため、画像に生じているずれ量vmそのものであるから、変位量θXから上述した位置ずれ補正量が算出可能であるといえる。
【0056】
第1の補正量は、上述したようにディジタルスチルカメラ10の向きの変位量に基づいて算出される。具体的に説明すると、基準となるフレーム画像データF0の生成時から補正対象であるフレーム画像データFaの生成時までの期間におけるXYZ軸回りの変位量をθaX、θaY、θaZとし、図9に示すように、撮像素子144上における1画素分(画素ピッチs分)のずれに相当するX軸およびY軸回りの変位量をθ_pixとすると、第1の補正量ua_1st、va_1st、δa_1stは以下の式(1a)〜(1c)で表される。
【0057】
ua_1st = θYa/θ_pix …(1)
va_1st = −θXa/θ_pix …(2)
δa_1st = θZa …(3)
【0058】
すなわち、変位量θXa、θYa、θZaは、図3を参照して先に説明したとおり、それぞれ、ディジタルスチルカメラ10のピッチ方向、ヨー方向、ロール方向の角度変化(ぶれ)を表すので、それぞれの角度変化に起因する上下方向、左右方向、および回転の位置ずれに対する補正量が算出できることがわかる。
【0059】
ここで、θ_pixは、図9に示すディジタルスチルカメラ10の焦点間距離f、撮像素子144の画素ピッチsを用いて、以下の式(4)で表される。
θ_pix=tan-1(s/f)≒s/f …(4)
【0060】
また、XYZ軸回りの変位量θXa、θYa、θZa は、XYZ軸回りの角速度をフレーム画像データF0の生成時t0からフレーム画像データFaの生成時taまで積分した値によって与えられる。また、変位量θXa、θYa、θZaは、フレーム画像データFaの生成時における角速度VXa、VYa、VZa(a=1,2,3)と、角速度が記録される時間間隔Tとを用いて、以下の式(5)〜(7)によって近似できる。
【0061】
【数1】

【0062】
ここで、本実施例では、1フレームごとに角速度が記録されているので、時間間隔Tは、フレームレートの逆数で表される。例えば、角速度の単位(degree/sec)であり、フレームレートが30(1/sec)であれば、時間間隔Tは、1/30(sec)である。式(1)〜式(7)から、結局、第1の補正量ua_1st、va_1st、δa_1stは、以下の式(8)〜(9)で表される。
【0063】
【数2】

【0064】
CPU200は、ステップS2において、付属情報として取得した角速度VXa、VYa、VZa、画素ピッチsおよび焦点間距離fを、上記の式(8)〜(9)に代入することによって、容易に第1の補正量ua_1st、va_1st、δa_1stを算出することができる。第1の補正量の算出精度は、ディジタルスチルカメラ10の角速度センサ161、162、163の性能に依存するが、例えば、第1の補正量ua_1st、va_1st、δa_1stは、画像f0〜faの画素単位程度の精度で求められる。
【0065】
図6に戻って説明を続けると、CPU200は、次に、フレーム画像データF0〜F3を解析することによって、最終的な位置ずれ補正量を算出する(ステップS4)。以下、本ステップで算出される最終的な位置ずれ補正量を第2の補正量と呼び、記号ua_2nd、va_2nd、δa_2nd(a=1,2,3)で表す。
【0066】
ここで、後に生成される高解像度画像データにおいて十分な画質を確保するためには、第2の補正量は、画像faの画素単位より細かい精度(いわゆるサブピクセルレベルの精度)で算出される必要がある。例えば、並進補正量ua、vaは、1/16画素単位で、回転補正量δaは、1/100度単位で算出される。従って、第2の補正量の算出には、画素単位よりも細かい精度で位置ずれ補正量を算出可能な解析手法が用いられる。本実施例では、第2の補正量は、補正対象であるフレーム画像データFaと基準となるフレーム画像データF0の各画素データの画素値(例えば輝度値)を用いて、勾配法(グラディエント法)を複数回繰り返す手法(以下、反復勾配法という。)によって算出される。以下では、先ず、勾配法および反復勾配法について説明する。
【0067】
図10および図11を参照して、勾配法について説明する。図10は、勾配法による位置ずれ補正量の算出方法について説明する第1の説明図である。図11は、勾配法による位置ずれ補正量の算出方法について説明する第2の説明図である。図10において、黒い丸は、基準となる画像f0の画素を表し、例えば、(x1i、y1i)は、画像f0の中心を原点とする直交座標上における画素の座標を表している。そして、白い丸は、画像f0と部分一致するように重ねられた画像fa(a=1,2,3)の画素P_tar(x2i、y2i)を表し、座標(x2i,y2i)は、画像faの中心を原点とする直交座標上における座標を表している。以下、画素P_tar(x2i、y2i)を着目画素として説明を進める。着目画素P_tar(x2i、y2i)は、画像f0と部分一致するように重ねられた場合に、画像f0の画素P_ref(x1i、y1i)の近傍の位置(x1i+Δxi、y1i+Δyi)に位置すると仮定する。ここで、iは、各画素を区別する番号である。
【0068】
まず、着目画素P_tar(x2i、y2i)に対応する画像f0の画素P_ref(x1i、y1i)と、その上下左右にある4つの画素P_ref(x1i+1、y1i)、P_ref(x1i-1、y1i)、P_ref(x1i、y1i+1)、P_ref(x1i、y1i-1)が、参照画素として選択される。
【0069】
図11(a)は、画像faと画像f0とを部分一致するように重ねた場合において、着目画素P_tar(x2i、y2i)と画素P_ref(x1i、y1i)とのx1軸上の距離Δxiを推定する方法を示している。まず、画素P_ref(x1i、y1i)と、左右に隣接する画素P_ref(x1i-1、y1i)、P_ref(x1i+1、y1i)の輝度値B_ref(x1i、y1i)、B_ref(x1i-1、y1i)、B_ref(x1i+1、y1i)とを用いて、輝度勾配ΔBxiが算出される。ΔBxiは、図11(a)において直線R1の傾きで表される量で、画素P_ref(x1i、y1i)の近傍における輝度勾配である。例えば、3つの画素値を用いて、近似直線を求めてその傾きをΔBxとして用いても良いし、単に、左右の画素値を結ぶ直線の傾き{B_ref(x1i+1、y1i)−B_ref(x1i-1、y1i)}/2をΔBxiとして用いても良い。
【0070】
そして、着目する画素P_tar(x2i、y2i)の輝度値B_tar(x2i、y2i)が、図11(a)に示す直線R1上にあるものと仮定すると、
ΔBxi・Δxi=B_tar(x2i、y2i)−B_ref(x1i、y1i)が成立する。ここで、B_tar(x2i、y2i)およびB_ref(x1i、y1i)を単にB_tar、B_refで表すと、
ΔBxi・Δxi - (B_tar - B_ref)= 0 …(10)
が成立する。
【0071】
図11(b)は、画像faと画像f0とを部分一致するように重ねた場合において、着目画素P_tar(x2i、y2i)と画素P_ref(x1i、y1i)とのy1軸上の距離Δyiを推定する方法を示している。上述したΔxの推定と同様の手法により、
ΔByi・Δyi - (B_tar - B_ref)= 0 …(11)
の式が導ける。ここで、式(10)、および、式(11)を満たすΔxi、Δyiを求めれば、着目画素P_tar(x2i、y2i)の画像f0上における位置がわかることになる。
【0072】
この考え方を拡張して、画像faを構成する全ての画素について、共通する補正量(ua、va、δa)を求めるには、最小自乗法を用いて、以下のS2を最小にすることを考えれば良い。
2=Σ{ΔBxi・Δxi+ΔByi・Δyi−(B_tar - B_ref)}2 ...(12)
【0073】
ここで、補正量(ua、va、δa)と、各画素についてのΔxi、Δyiとの関係について考える。図12は、画素の回転補正量を模式的に示す説明図である。画像f0の座標(x1,y1)の原点Oからの距離をrとし、x1軸からの回転角度をθとすると、r,θは、下式で表される。
r=(x12+y121/2 …(13)
θ=tan-1(y1/x1) …(14)
【0074】
ここで、画像faの画像f0に対する並進ずれはなく、回転ずれのみが発生しているものとし、画像faにおける座標(x2,y2)の画素が、画像f0上の座標(x1,y1)の位置から回転補正量δだけ回転した座標(x1',y1')にあるとする。この回転補正量δaによるx1軸方向の移動量Δxとy1軸方向の移動量Δyは、下式により求められる。
Δx=x1'−x1≒−r・δa・sinθ=−δa・y1 …(15)
Δy=y1'−y1≒r・δa・cosθ=δa・x1 …(16)
【0075】
したがって、上記式(12)における各画素iについてのΔxi、Δyiは、補正量(u,v、δ)を用いて、下式のように表すことができる。
Δxi=ua−δa・y1i …(17)
Δyi=va+δa・x1i …(18)
ここで、x1iおよびy1iは、画像f0における画素P_ref(x1i、y1i)の座標である。
【0076】
上記式(17),(18)を上記式(12)に代入すると、下式が得られる。
2=Σ{ΔBxi・(ua−δa・y1i)+ΔByi・(va+δa・x1i)−(B_tar - B_ref)}2 …(19)
【0077】
すなわち、画像faの全画素について対応する座標値と輝度値を式(18)に代入したときに、S2を最小にする補正量ua,va,δaを最小自乗法によって求めることができる。
【0078】
次に、反復勾配法について説明する。図13および図14は、反復勾配法の概略を示す説明図である。反復勾配法では、上述した勾配法によって求められた位置ずれ補正量を用いて画像faの画素位置を補正し、補正後の画素位置に基づいて上述した参照画素を選択し直し、新たに選択された参照画素を用いて勾配法をもう一度実行する。そして、これを複数回繰り返し、最終的にn回目の勾配法によって求められた位置ずれ補正量と、その前回((n-1)回目)の勾配法によって求められた位置ずれ補正量との差(Δua,Δva,Δδa)が、所定の閾値以下になったときに反復を終了する。言い換えれば、反復勾配法は、前回の勾配法で求められた位置ずれ補正量を、次回の勾配法の初期値として用いて、位置ずれ補正量が収束するまで勾配法を繰り返す手法である。
【0079】
図13(a)で示す画像faと画像f0とのずれ補正が全くされていない位置から、図13(b)で示す最終的に求めるべき位置まで補正するずれ補正量を求める場合を具体例として、反復勾配法についてさらに説明する。図14(a−1)〜(a−3)は、図13(b)に示した画素P_tarに着目して、勾配法の反復を概念的に示している。図14(a−1)は、画素P_1を中心とした画素(実線および波線で囲まれた画素)を画素P_tarの参照画素として、1回目の勾配法を実行した結果を示している。1回目の勾配法によって、画素P_tarを矢印A1のようにずらす位置ずれ補正量が算出されている。2回目の勾配法は、1回目に算出された位置ずれ補正量によって補正された画素P_tarの位置に基づいて、参照画素が選択される。図14(a−2)は、補正後の画素P_tarの最近傍に位置する画素P_2を中心とした画素を画素P_tarの参照画素として、2回目の勾配法を実行した結果を示している。図14(a−3)は、さらに2回目の補正後の画素P_tarの最近傍に位置する画素P_3を中心とした画素を画素P_tarの参照画素として、3回目の勾配法を実行した結果を示している。このように、反復するうちに適切な最近傍画素を用いることができるため、精度良く位置ずれ補正量を算出することができる。
【0080】
ここで、図6に戻って説明を続ける。CPU200は、この反復勾配法によって第2の補正量を算出する(ステップS4)にあたり、ステップS3(図6)で算出した第1の補正量(ua_1st、va_1st、δa_1st)を、初期値として用いて、1回目の勾配法を実行する。図14(b−1)において、矢印B0は、第1の補正量による画素P_tarの補正を示している。図14(b−2)は、第1の補正量による補正後の画素P_tarの最近傍に位置する画素P_3を中心とした画素を画素P_tarの参照画素として、1回目の勾配法を実行した結果を示している。この結果、上述した図14(a−1)〜(a−3)の場合と異なり、1回目から適切な最近傍画素を用いて、精度良く第2の補正量(ua_2nd、va_2nd、δa_2nd)を求めることができる。
【0081】
第2の補正量が、3つの画像fa(a=1,2,3)全てについて算出されると、CPU200は、第2の補正量を用いて、フレーム画像データF1〜F3に対して位置ずれ補正を実行する(ステップS5)。この結果、3つの画像faと基準となる画像f0とを、「部分一致する」ように重ね合わせることができる(図8参照)。
【0082】
CPU200は、続いて、補正後のフレーム画像データF1〜F3と、基準となるフレーム画像データF0とを合成して、高解像度の新たな画像を表す画像データ(以下、高解像度画像データという。)を生成する処理(以下、画像合成処理という。)を実行する(ステップS6)。以下では、図15および図16を参照して画像合成処理について簡単に説明する。
【0083】
図15は、基準となる画像f0と画像f1〜f3とを、ずれを補正して配置した様子を拡大して示す説明図である。図15では、画像合成処理によって生成される高解像度画像データが表す画像(以下、高解像度画像という。)の各画素が黒丸で示されているとともに、画像f0の各画素が白抜きの四辺形で示され、画像f1〜f3の各画素が、ハッチングを施した四辺形で示されている。なお、高解像度画像の画素密度は、画像f0に対して、縦横1.5倍密に設定されるものとする。また、高解像度画像の各画素は、2画素おきに画像f0の各画素に重なる位置にあるものとする。ただし、高解像度画像の画素が、必ずしも画像f0の各画素に重なる位置にある必要はない。例えば、高解像度画像の各画素のすべてが、画像f0の各画素の中間に位置する等、種々の位置とすることができる。また、高解像度画像の画素密度も、縦横1.5倍に限定されるものではなく、自由に設定することができる。
【0084】
高解像度画像のある画素G(j)に注目して説明する(以下、画素G(j)を注目画素という。)。ここで、変数jは、高解像度画像の全画素を区別する番号を示している。例えば、番号jは、左上の画素から右上の画素まで、次に1つ下の列の左端の画素から右端の画素までという順番に設定される。CPU200は、各画像f0,f1,f2,f3において、注目画素G(j)に対して、それぞれ最も近い画素F(0),F(1),F(2),F(3)と、注目画素G(j)との距離L0,L1,L2,L3を算出する。そして、CPU200は、最も近い距離にある画素(以下、「最近傍画素」と呼ぶ。)を決定する。図15の例では、L3<L1<L0<L2であるので、画像f3の画素F(3)が、注目画素G(j)の最近傍画素として決定される。なお、この注目画素G(j)に対する最近傍画素が、対象フレーム画像F3のi番目の画素であったとして、以下、最近傍画素F(3,i)と表記する。
【0085】
CPU200は、高解像度画像を構成する全ての画素を注目画素として上述の処理を実行し、それぞれの画素について最近傍画素を決定する。
【0086】
CPU200は、注目画素G(j)の画素値を、決定された最近傍画素含む画像fa(図15に示す例では、画像f3)において注目画素G(j)を囲む画素の画素値を用いて、バイ・リニア法等の補完処理によって生成する。
【0087】
図16は、バイ・リニア法による補間処理について示す説明図である。注目画素G(j)は、画像f0〜f3のいずれにも存在しない画素であるので、画素値が存在していない。そこで、CPU200は、最近傍画素F(3,i)のほか、注目画素G(j)を囲む3つの画素F(3,i+1)、F(3,k)、F(3,k+1)で区画される領域を、注目画素G(j)で4つの区画に分割し、その面積比で対角位置の画素の画素値をそれぞれ重み付けして加算することにより、注目画素G(j)の画素値を生成する。ただし、kはi番目の画素にフレーム画像F3の横方向の画素数を加えた画素の番号を示している。
【0088】
なお、画素値補間処理の方法については、バイ・リニア法の他、バイ・キュービック法、ニアレストレストネイバ法等の種々の補間方法を用いることができる。
【0089】
CPU200は、高解像度画像を構成する全ての画素について、上述した処理によって画素値を生成する。
【0090】
以上説明したように、本実施例に係る画像処理によれば、動画像データMDから取得した複数のフレーム画像データF0〜F3を合成して、より高解像度の画像を表す高解像度画像データを生成することができる。かかる合成に用いる位置ずれ補正量を算出する際、フレーム画像データF0〜F3のそれぞれの生成時におけるディジタルスチルカメラ10の向きの変化に関する情報である角速度VXa、VYa、VZa(a=1,2,3)を用いて、大まかな位置ずれ補正量である第1の補正量を算出する。そして、第1の補正量を初期値として用いて、画像データの解析(例えば、反復勾配法)を実行し、最終的な位置ずれ補正量である第2の補正量を算出する。この結果、フレーム画像データF0〜F3を解析することのみによって、位置ずれ補正量を算出する場合よりも、処理時間の短縮および処理負荷の軽減を図ることができる。
【0091】
さらに、位置ずれ補正量を、実際に検出された角速度VXa、VYa、VZaから大まかに算出するため、フレーム画像データF0〜F3を解析することのみによって、位置ずれ補正量を算出する場合よりも、誤った位置ずれ補正量を算出してしまうリスクを低減できる。以上のような効果は、特に、算出すべき位置ずれ補正量が大きい場合に特に顕著である。
【0092】
また、ディジタルスチルカメラ10の3つの軸の角速度VXa、VYa、VZaを用いる、すなわち、ピッチ方向、ヨー方向、ロール方向の全ての角度変化に基づいて、大まかな位置ずれ補正量を算出するため、比較的正確な位置ずれ補正量を画像データの解析によらず算出できるため、より、その後のデータ解析による位置ずれ補正量算出負担が減り、処理時間の短縮および処理負荷の軽減を図ることができる。
【0093】
また、本実施例に係るディジタルスチルカメラ10は、3つの角速度センサを備え、動画像データ(複数のフレーム画像データ)生成時における角速度VXa、VYa、VZaを検出すると共に、検出された角速度のデータを、生成した動画像データと関連付けて出力するため、外部の画像処理装置において、上述した画像処理を可能とし、上述した作用効果を実現することができる。
【0094】
B.変形例:
上記実施例では、ディジタルスチルカメラ10の動画撮影モードで生成された動画像データから複数のフレーム画像データを取得しているが、高解像度画像データの生成に用いる複数の画像データの取得態様は、これに限られるものではない。例えば、デジタルビデオカメラで撮像された動画像データや、連写機能を備えたディジタルスチルカメラで連続撮影された複数の静止画像データ等、時系列に並ぶ複数の画像データであれば良い。連写機能とは、一般的に、メモリーカードにデータを転送しないで、ディジタルスチルカメラ内部の高速なメモリー(バッファメモリー)に画像データをため込むことで、複数のカットを高速で連続撮影する機能をいう。
【0095】
上記実施例における画像ファイルGFには、フレーム画像データの生成時に対応する角速度が、フレーム画像データと同数だけ記録されているが、フレーム画像データ数と角速度のデータ数が同じである必要はなく、例えば、毎秒30フレームの動画像データに対して、角速度が1/120秒ごとに記録されても良い(フレーム画像データ数の4倍の数の角速度データが記録されることになる。)。かかる場合には、例えば、画像ファイルGFに、フレームレート(例えば、毎秒30フレーム)と、角速度が記録される時間間隔T(例えば、1/120秒ごと)を記録しておく等により、フレーム画像データの生成時と角速度の検出時との時間軸上における対応関係が認識できるようにされる。角速度の記録ピッチが細かくなるほど(記録されるフレーム画素データあたりの角速度のデータ数が増えるほど)、第1の補正量の検出精度が向上する。
【0096】
上記実施例に係るディジタルスチルカメラ10は、ディジタルスチルカメラ10の向きの変化を検出するセンサとして角速度センサを備えているが、角加速度を検出するセンサや、角変位量を検出するセンサを備えていても良い。CPU200は、角加速度が与えられる場合には、角加速度を積分して角速度を算出し、さらにこれを積分して角変位量を算出することが可能であるし、角変位量が与えられる場合には、そのまま位置ずれ補正量の算出に用いること可能である。
【0097】
また、ディジタルスチルカメラ10は、検出された角速度VX、VY、VZをそのまま、画像ファイルGFに出力しているが、ディジタルスチルカメラ10内部の制御回路100等で、積分処理を実行し、角変位量に加工してから出力しても良い。係る場合には、画像ファイルGFには、角変位量θX、θY、θZが画像データと関連付けられて出力される。CPU200は、角変位量θX、θY、θZをそのまま位置ずれ補正量の算出に用いること可能である。
【0098】
上記実施例では、ディジタルスチルカメラ10に角速度センサを備えているが、ディジタルスチルカメラ10とは、別体に角速度センサを備えても良い。例えば、ディジタルスチルカメラ10を三脚に固定する際に用いる雲台に角速度センサを備えても良い。かかる場合には、例えば、ディジタルスチルカメラ10のメモリカードMCとは別の記録媒体に、角速度センサの検出値の時間的変化を動画の撮影と同期して記録しておき、画像処理時に、動画像の各フレーム画像データの生成タイミングと角速度の検出タイミングとの時間軸上での対応関係が認識できるようにしておく。このようにすれば、上記実施例と同様の作用効果を得ることができる。
【0099】
以上、実施例、変形例に基づき本発明に係る画像処理について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【図面の簡単な説明】
【0100】
【図1】実施例に係る撮像装置および画像処理装置(パーソナルコンピュータ)を含む画像処理システムの一例を示す説明図。
【図2】ディジタルスチルカメラ10の概略構成を示す説明図。
【図3】ディジタルスチルカメラ10のXYZ軸周りの向きの変化を説明する概略図。
【図4】画像ファイルGFの内部構成を概念的に示す説明図。
【図5】実施例に係るパーソナルコンピュータ20(CPU200)の機能ブロック図。
【図6】実施例に係る画像処理の処理ルーチンを示すフローチャート。
【図7】画像f0とf3間の位置ずれを示す説明図。
【図8】フレーム画像データF3に対して行う位置ずれ補正について示す説明図。
【図9】ディジタルスチルカメラ10のX軸回りの向きの変化と撮像素子144上における被写体の位置ずれとの関係を示す概略図。
【図10】勾配法による位置ずれ補正量の算出方法について説明する第1の説明図。
【図11】勾配法による位置ずれ補正量の算出方法について説明する第2の説明図。
【図12】画素の回転補正量を模式的に示す説明図。
【図13】反復勾配法の概略を示す第1の説明図。
【図14】反復勾配法の概略を示す第2の説明図。
【図15】画像f0〜f3を、ずれを補正して配置した様子を拡大して示す説明図。
【図16】バイ・リニア法による補間処理について示す説明図。
【符号の説明】
【0101】
10…ディジタルスチルカメラ(DSC)
100…制御回路
102…中央演算装置(CPU)
104…ランダムアクセスメモリ(RAM)
106…リードオンリメモリ(ROM)
110…コントローラ
120…画像処理回路
130…画像データ生成回路
140…光学回路
142…レンズ
144…撮像素子
146…絞り
150…メモリカードドライブ
161、162、163…角速度センサ
20…パーソナルコンピュータ
200…中央演算装置(CPU)
201…ランダムアクセスメモリ(RAM)
202…ハードディスク(HDD)
203…カードスロット
204…入出力端子
25…モニタ
30…プリンタ
40…表示装置
45…表示部
MC…メモリカード
M110…生成時動き情報取得部
M120…画像データ出力部
M210…画像データ取得部
M220…情報取得部
M230…第1の補正量算出部
M240…第2の補正量算出部
M250…高解像度画像生成部

【特許請求の範囲】
【請求項1】
画像処理装置であって、
撮像装置によって生成された画像データであって、時系列に並ぶ複数の画像データを取得する画像データ取得手段と、
前記複数の画像データのそれぞれの生成時に対応する前記撮像装置の被写体に対する動きに関する情報であって、前記複数の画像データと関連付けられた生成時動き情報を取得する情報取得手段と、
前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記取得された生成時動き情報を用いて推定される第1の補正量を算出する第1の補正量算出手段と、
前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記第1の補正量に基づいて前記位置ずれが補正された複数の画像データを解析して推定される第2の補正量を算出する第2の補正量算出手段と、
前記算出された第2の補正量に基づいて、前記複数の画像データにおける前記位置ずれを補正すると共に、前記補正された複数の画像データを合成して、前記複数の画像データより解像度の高い高解像度画像データを生成する高解像度画像生成手段とを備える画像処理装置。
【請求項2】
請求項1に記載の画像処理装置において、
前記第1の補正量の算出は、前記複数の画像データが表す画像を構成する画素単位の精度で実行され、
前記第2の補正量の算出は、前記複数の画像データが表す画像を構成する画素単位より細かい精度で実行される画像処理装置。
【請求項3】
請求項1または請求項2に記載の画像処理装置において、
前記生成時動き情報は、
前記撮像装置に備えられたセンサによって検出された情報、または、
前記センサによって検出された情報を加工して得られた情報である画像処理装置。
【請求項4】
請求項1ないし請求項3のいずれかに記載の画像処理装置において、
前記生成時動き情報は、
前記撮像装置の向きの変化に関する角変位量、角速度、角加速度のいずれかである画像処理装置。
【請求項5】
請求項4に記載の画像処理装置において、
前記撮像装置の向きの変化は、
撮像画像における被写体の上下方向のずれに対応するピッチ方向の角度変化、
撮像画像において被写体の左右方向のずれに対応するヨー方向の角度変化、
撮像画像と垂直な直線を軸として被写体が回転するずれに対応するロール方向の角度変化、
の全部または一部である画像処理装置。
【請求項6】
画像処理方法であって、
撮像装置によって生成された画像データであって、時系列に並ぶ複数の画像データを取得し、
前記複数の画像データのそれぞれの生成時に対応する前記撮像装置の被写体に対する動きに関する情報であって、前記複数の画像データと関連付けられた生成時動き情報を取得し、
前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記取得された生成時動き情報を用いて推定される第1の補正量を算出し、
前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記第1の補正量に基づいて前記位置ずれが補正された複数の画像データを解析して推定される第2の補正量を算出し、
前記算出された第2の補正量に基づいて、前記複数の画像データにおける前記位置ずれを補正すると共に、前記補正された複数の画像データを合成して、前記複数の画像データより解像度の高い高解像度画像データを生成する画像処理方法。
【請求項7】
画像処理を実行するコンピュータプログラムであって、
撮像装置によって生成された画像データであって、時系列に並ぶ複数の画像データを取得する画像データ取得機能と、
前記複数の画像データのそれぞれの生成時に対応する前記撮像装置の被写体に対する動きに関する情報であって、前記複数の画像データと関連付けられた生成時動き情報を取得する情報取得機能と、
前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記取得された生成時動き情報を用いて推定される第1の補正量を算出する第1の補正量算出機能と、
前記複数の画像データが表す各画像間における被写体の位置ずれを補正するための補正量であって、前記第1の補正量に基づいて前記位置ずれが補正された複数の画像データを解析して推定される第2の補正量を算出する第2の補正量算出機能と、
前記算出された第2の補正量に基づいて、前記複数の画像データにおける前記位置ずれを補正すると共に、前記補正された複数の画像データを合成して、前記複数の画像データより解像度の高い高解像度画像データを生成する高解像度画像生成機能とをコンピュータに実現させるコンピュータプログラム。
【請求項8】
請求項7に記載のコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2006−5384(P2006−5384A)
【公開日】平成18年1月5日(2006.1.5)
【国際特許分類】
【出願番号】特願2004−176305(P2004−176305)
【出願日】平成16年6月15日(2004.6.15)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】