本発明の実施の形態について、図面を参照して説明する。尚、以下では、本発明における画像処理方法を行う画像処理装置(以下では、「画像処理部」に相当する)を備えたデジタルカメラやデジタルビデオなどの撮像装置を例に挙げて、説明する。又、後述するが、同様の画像処理装置を備えるものであれば、液晶ディスプレイやプラズマテレビなどの画像のデジタル処理を行う表示装置であっても構わない。
(撮像装置の構成)
まず、撮像装置の内部構成について、図面を参照して説明する。図1は、撮像装置の内部構成を示すブロック図である。
図1の撮像装置は、被写体のから入射される光を電気信号に変換するCCD又はCMOSセンサなどの固体撮像素子(イメージセンサ)1と、イメージセンサ1から出力されるアナログ信号である画像信号をデジタル信号に変換するAFE(Analog FrontEnd)2と、外部から入力された音声を電気信号に変換するマイク3と、AFE2からのデジタル信号となる画像信号に対して超解像処理を含む各種画像処理を施す画像処理部4と、マイク3からのアナログ信号である音声信号をデジタル信号に変換する音声処理部5と、画像処理部4からの画像信号と音声処理部5からの音声信号とに対してMPEG(Moving Picture Experts Group)圧縮方式などの圧縮符号化処理を施す圧縮処理部6と、圧縮処理部6で圧縮符号化された圧縮符号化信号を外部メモリ15に記録するドライバ部7と、ドライバ部7で外部メモリ20から読み出した圧縮符号化信号を伸長して復号する伸長処理部8と、伸長処理部8で復号されて得られた画像信号による画像の表示を行うディスプレイ部9と、伸長処理部8からの音声信号をアナログ信号に変換する音声出力回路部10と、音声出力回路部10からの音声信号に基づいて音声を再生出力するスピーカ部11と、各ブロックの動作タイミングを一致させるためのタイミング制御信号を出力するタイミングジェネレータ12と、撮像装置内全体の駆動動作を制御するCPU(Central Processing Unit)13と、各動作のための各プログラムを記憶するとともにプログラム実行時のデータの一時保管を行うメモリ14と、ユーザからの指示が入力される操作部15と、CPU13と各ブロックとの間でデータのやりとりを行うためのバス回線16と、メモリ14と各ブロックとの間でデータのやりとりを行うためのバス回線17と、を備える。
この撮像装置において、撮像動作を行うことが操作部15によって指示されると、イメージセンサ1の光電変換動作によって得られたアナログ信号である画像信号がAFE2に出力される。このとき、イメージセンサ1では、タイミングジェネレータ12からのタイミング制御信号が与えられることによって、水平走査及び垂直走査が行われて、画素毎のデータとなる画像信号が出力される。そして、AFE2において、アナログ信号となる画像信号がデジタル信号に変換されて、画像処理部4に入力されると、輝度信号及び色差信号の生成を行う信号変換処理などの各種画像処理が施される。
又、この画像処理部4では、操作部15によってデジタルズームにより、イメージセンサ1より得られた画像信号の高解像度化が求められると、イメージセンサ1からの複数フレーム分の画像信号に基づく超解像処理が施される。更に、この超解像処理が成された画像信号に基づいて、輝度信号及び色差信号が生成される。又、超解像処理が施されるために、後述するが、複数フレームの画像信号の動き量が算出され、その動き量に応じて各フレームの位置合わせが行われる。
そして、画像処理部4で画像処理が施された画像信号が圧縮処理部6に与えられる。このとき、マイク3に音声入力されることで得られたアナログ信号である音声信号が、音声処理部5でデジタル信号に変換されて、圧縮処理部6に与えられる。これにより、圧縮処理部6では、デジタル信号である画像信号及び音声信号に対して、MPEG圧縮符号方式に基づいて、圧縮符号化してドライバ部7に与えて、外部メモリ20に記録させる。又、このとき、外部メモリ20に記録された圧縮信号がドライバ部7によって読み出されて伸長処理部8に与えられて、伸長処理が施されて画像信号が得られる。この画像信号がディスプレイ部9に与えられて、現在、イメージセンサ1を通じて撮影されている被写体画像が表示される。
尚、上述では、動画撮影時の動作について説明したが、静止画像撮影が指示された場合においても、マイク3による音声信号の取得がなく、画像信号のみの圧縮信号が外部メモリ20に記録されるだけとなり、その基本動作については動画撮影時の動作と同様である。又、この静止画像撮影の場合、操作部15によって撮影された静止画像に対する圧縮信号が外部メモリ20に記録されるだけでなく、イメージセンサ1によって撮影されている現時点の画像に対する圧縮信号も外部メモリ20に一時的に記録される。これにより、現在撮影されている画像に対する圧縮信号が伸長処理部8で伸長されることで、イメージセンサ1によって撮影されている現時点の画像がディスプレイ部9に表示され、ユーザが確認することができる。
このように撮像動作を行うとき、タイミングジェネレータ12によって、AFE2、映像処理部4、音声処理部5、圧縮処理部6、及び伸長処理部8に対してタイミング制御信号が与えられ、イメージセンサ1による1フレームごとの撮像動作に同期した動作が行われる。又、静止画像撮影のときは、操作部15によるシャッタ動作に基づいて、タイミングジェネレータ12より、イメージセンサ1、AFE2、映像処理部4、及び、圧縮処理部6それぞれに対してタイミング制御信号が与えられ、各部の動作タイミングを同期させる。
又、外部メモリ20に記録された動画又は画像を再生することが、操作部15を通じて指示されると、外部メモリ20に記録された圧縮信号は、ドライバ部7によって読み出されて伸長処理部8に与えられる。そして、伸長処理部8において、MPEG圧縮符号方式に基づいて、伸長復号されて、画像信号及び音声信号が取得される。そして、画像信号がディスプレイ部9に与えられて画像が再生されるとともに、音声信号が音声出力回路部10を介してスピーカ部11に与えられて音声が再生される。これにより、外部メモリ20に記録された圧縮信号に基づく動画が音声とともに再生される。又、圧縮信号が画像信号のみより成るときは、ディスプレイ部9に画像のみが再生されることとなる。
(超解像処理の基本概念)
次に、上述の撮像装置内の画像処理部4において実行される超解像処理の基本概念について、簡単に説明する。尚、超解像処理の基本概念を説明するにあたって、その説明を簡単にするために、画像データを1次元方向に並んだ複数画素の画素値によるものとするとともに、異なる時間に撮像された2フレームの画像データによる超解像処理が成されるものとする。又、以下の説明における画素値は、輝度値を示す。そして、図2(a)に、イメージセンサ1により撮像される被写体の輝度分布を示し、図2(b)〜(d)に、この被写体が異なる時間にイメージセンサ1により撮像された際の画像データ(低解像度実画像)を示す。又、図3に、図2における低解像度実画像により高解像度画像となる画像データを生成する際のフローチャートを示す。更に、図3では、各フローにおける信号の変遷を模式的に示す。
図2(a)に示す輝度分布の被写体に対して、時間T1にイメージセンサ1によって撮像されたときの第1フレームのサンプル点がS1、S1+ΔS、S1+2ΔSであり、時間T2(T1≠T2)にイメージセンサ1によって撮像されたときの第2フレームのサンプル点がS2、S2+ΔS、S2+2ΔSであるものとする。又、このとき、第1フレームのサンプル点S1と第2フレームのサンプル点S2は、手ブレなどが原因となり、その位置にズレが生じているものとする。
そして、サンプル点S1、S1+ΔS、S1+2ΔSは、被写体上のサンプル点を示し、図2(b)に示す第1フレームとなる低解像度実画像Faでは、このサンプル点S1、S1+ΔS、S1+2ΔSで撮像された輝度値が、画素P1,P2,P3における画素値pa1,pa2,pa3となる。又、サンプル点S2、S2+ΔS、S2+2ΔSは、被写体上のサンプル点を示し、図2(c)に示す第2フレームとなる低解像度実画像Fbでは、このサンプル点S2、S2+ΔS、S2+2ΔSで撮像された輝度値が、画素P1,P2,P3における画素値pb1,pb2,pb3となる。
これにより、第1フレームとなる低解像度実画像Faの画素P1,P2,P3における画素値pa1,pa2,pa3が図2(b)のような関係となり、又、第2フレームとなる低解像度実画像Fbの画素P1,P2,P3における画素値pb1,pb2,pb3が図2(c)のような関係となる。このように、図2(b)による低解像度実画像Fa及び図2(c)による低解像度実画像Fbそれぞれは、図中の被写体の位置を基準にすると、画素位置が(S1−S2)だけずれた状態の画像となる。そして、低解像度実画像Faの画素P1,P2,P3を基準として低解像度実画像Fbを表した場合(即ち、低解像度実画像Fbを低解像度実画像Faに対する動き量(S1−S2)分だけ位置ズレ補正した場合)、低解像度実画像Fbが図2(d)のように表される。
そして、図3(a)に示すように、位置ズレを補正した図2(b)及び図2(d)のような低解像度実画像Fa,Fbを組み合わせることで、高解像度画像Fx1を推定する(STEP31)。このとき、以下の説明を簡単にするために、例えば、解像度を1次元方向に対して2倍にするものとする。即ち、高解像度画像Fx1の画素として、低解像度実画像Fa,Fbの画素P1,P2,P3に加えて更に、画素P1,P2の中間位置に位置する画素P4と、画素P2,P3の中間位置に位置する画素P5とが設定されるものとする。
低解像度実画像Faが基準である注目フレームとされると、画素P1,P2,P3での画素値が、低解像度実画像Faにおける画素値pa1,pa2,pa3とされる。又、画素P4については、画素P4との画素位置(画素の中心位置)の距離が、低解像度実画像Faにおける画素P1,P2の画素位置からの距離よりも低解像度実画像Fbにおける画素P1の画素位置からの距離の方が近いことより、画素値pb1とされるものとする。同様に、画素P5については、画素P5との画素位置(画素の中心位置)の距離が、低解像度実画像Faにおける画素P2,P3の画素位置からの距離よりも低解像度実画像Fbにおける画素P2の画素位置からの距離の方が近いことより、画素値pb2とされるものとする。このように、画素P1〜P5の画素値をpa1,pa2,pa3,pb1,pb2と設定して得られた高解像度画像を、高解像度画像Fx1として推定されるものとしても構わない。
その後、STEP31で得られた高解像度画像Fx1に対して、ダウンサンプリング量やぼけ量や位置ズレ量(動き量に相当)などをパラメータとして備えた変換式による演算を行うことで、図3(b)のように、低解像度実画像Fa,Fbそれぞれに対する推定画像となる低解像度推定画像Fa1,Fb1を生成する(STEP32)。尚、図3(b)では、n回目の処理によって推定された低解像度推定画像、即ち、高解像度画像Fxnより推定された低解像度実画像Fa,Fbに相当する低解像度推定画像Fan,Fbnを示す。
即ち、高解像度画像Fx1に基づいて、サンプル点S1、S1+ΔS、S1+2ΔSにおける画素値を推定して、取得した画素値pa11〜pa31を画素P1〜P3の画素値とする低解像度推定画像Fa1を生成する。同様に、高解像度画像Fx1に基づいて、サンプル点S2、S2+ΔS、S2+2ΔSにおける画素値を推定して、取得した画素値pb11〜pb31を画素P1〜P3の画素値とする低解像度推定画像Fb1を生成する。
そして、図3(c)に示すように、このようにして得られた低解像度推定画像Fa1,Fb1それぞれと、低解像度実画像Fa,Fbそれぞれとの間における差分を求め、この差分を合成することで、高解像度画像Fx1に対する差分画像ΔFx1を取得する(STEP33)。尚、図3(c)では、n回目の処理によって取得された高解像度画像Fxnに対する差分画像ΔFxn、即ち、低解像度推定画像Fan,Fbnと低解像度実画像Fa,Fbとによる差分画像ΔFan、ΔFbnを合成することで得られた差分画像ΔFxnを示す。
この図3(c)の処理によって、低解像度推定画像Fa1と低解像度実画像Faにおける画素P1,P2,P3での差分(pa11−pa1)、(pa21−pa2)、(pa31−pa3)による差分画像ΔFa1、低解像度推定画像Fb1と低解像度実画像Fbにおける画素P1,P2,P3での差分(pb11−pb1)、(pb21−pb2)、(pb31−pb3)による差分画像ΔFb1をそれぞれ求める。即ち、差分画像ΔFa1では、差分値(pa11−pa1)、(pa21−pa2)、(pa31−pa3)が画素値となり、差分画像ΔFb1では、差分値(pb11−pb1)、(pb21−pb2)、(pb31−pb3)が画素値となる。
そして、差分画像ΔFa1,ΔFb1の画素値を合成することによって、画素F1〜F5それぞれにおける差分値を算出して、高解像度画像Fx1に対する差分画像ΔFx1を取得する。この差分画像ΔFa1,ΔFb1の画素値を合成によって差分画像ΔFx1を取得する際、例えば、ML法やMAP法では、二乗誤差を評価関数として用いる。即ち、ML法やMAP法の評価関数が、差分画像ΔFa1,ΔFb1の画素値を二乗してフレーム間で加算した値となる。よって、この評価関数の微分値である勾配は、差分画像ΔFa1,ΔFb1の画素値を2倍した値となるため、高解像度画像Fx1に対する差分画像ΔFx1は、差分画像ΔFa1,ΔFb1それぞれの画素値を2倍した値を用いて高解像度化することで算出される。
その後、図3(d)に示すように、得られた差分画像ΔFx1における画素P1〜P5の画素値(差分値)が、STEP1で推定された高解像度画像Fx1における画素P1〜P5の画素値より減算されることで、図2(a)に示す輝度分布の被写体に近い画素値となる高解像度画像Fx2が再構成される(STEP34)。尚、図3(d)では、n回目の処理によって取得された高解像度画像Fx(n+1)、即ち、高解像度推定画像Fxnより差分画像ΔFxnが減算されて得られた高解像度画像Fx(n+1)を示す。
そして、上述のSTEP32〜STEP34の処理を繰り返すことによって、STEP33で得られる差分画像ΔFxnの画素値が小さくなり、高解像度画像Fxnの画素値が、図2(a)に示す輝度分布の被写体に近い画素値に収束される。尚、n回目の処理におけるSTEP32及びSTEP34では、前回(n−1回目)の処理におけるSTEP34で得られた高解像度画像Fxnによって、低解像度推定画像Fan,Fbn及び高解像度推定画像Fx(n+1)が取得される。そして、差分画像ΔFxnの画素値(差分値)が所定値より小さくなったときや、差分画像ΔFxnの画素値(差分値)が収束されたとき、前の処理(n−1回目の処理)におけるSTEP34で得られた高解像度画像Fxnを、目的の高解像度画像として超解像処理を終了する。
上述したフローを基本とする超解像処理として、[背景技術]で挙げたML法や、MAP法や、POCS法や、IBP法などが、画像処理部4で利用される。尚、本実施形態では、MAP法が利用される場合の超解像処理が用いられるものとする。このとき、STEP33において取得される高解像度画像Fxnに対する差分画像ΔFxnが、MAP法における評価関数を勾配法によって微分した値を画素値とする勾配画像で構成されるものとする。
即ち、各画素位置での二乗誤差を画素値とする最小二乗法によって得られた差分画像ΔFan、ΔFbnを合成した高解像度画像Fxnの差分画像に、事後確率分布により拘束される高解像度画像Fxnの高速画像を加えた後、勾配法によって微分を行うことで、STEP33における差分画像ΔFxnに相当する勾配画像を取得する。そして、STEP34において、この勾配画像による差分画像ΔFxnを高解像度画像Fxnより減算することで、高解像度画像Fx(n+1)を再構築する。
このような超解像処理が行う際に、上述したように、まず、STEP31のように、イメージセンサ1で撮影された複数フレームの低解像度実画像から高解像度画像を推定することで、最適となる高解像度画像の取得が可能となる。そして、このSTEP31の高解像度画像の推定を行う際に最適となる低解像度実画像を、注目フレームを含む複数フレームの低解像度実画像より選択する必要がある。この最適な低解像度実画像の選択により、高解像度画像の取得速度が高速化できるとともに、フレーム数を制限することで、超解像処理における演算にかかる画像処理部4での負荷を低減することができる。又、選択した複数フレームの低解像度実画像それぞれの間に発生する位置ズレ量となる動き量が検出され、検出された動き量に対する補正が成される。尚、この位置ズレ補正については、後述する。
このような超解像処理を行う画像処理部4を備えた撮像装置の実施形態について、以下に説明する。尚、上述の超解像処理については、反復して処理を施すことによって高解像度画像を更新する、再構築型の超解像処理を例に挙げて説明したが、以下の各実施形態において、この再構築型の超解像処理ではなくても構わない。即ち、選択した複数フレームの低解像度実画像より初期高解像度画像を生成し、この初期高解像度画像を更新することなく、高解像度画像として出力するものとしても構わない。
又、以下の各実施形態では、画像処理部4の超解像処理における低解像度実画像の選択動作の詳細を特徴とするものであり、動画撮影動作、静止画撮影動作、動画再生動作、静止画再生動作それぞれについては、上述の動作で説明した動作を基本とするため、その詳細な説明は省略する。又、以下の各実施形態において、MAP法を代表して、画像処理部4による超解像動作について説明する。
<第1の実施形態>
本発明の第1の実施形態について、図面を参照して説明する。図4は、本実施形態の撮像装置における画像処理部の構成を示すブロック図である。尚、本実施形態を含めて以下の各実施形態では、4フレームの低解像度実画像を一時的に記憶し、この4フレームの低解像度実画像に対して演算処理を行うことで高解像度画像が選択されるものとする。
図4に示すように、AFE2でデジタル信号とされた1フレーム分の低解像度実画像となる画像信号を一時的に記憶するフレームメモリ41と、フレームメモリ41に記憶された1フレーム分の低解像度実画像を一時的に記憶するフレームメモリ42と、フレームメモリ42に記憶された1フレーム分の低解像度実画像を一時的に記憶するフレームメモリ43と、フレームメモリ43に記憶された1フレーム分の低解像度実画像を一時的に記憶するフレームメモリ44と、AFE2より入力される現フレームの低解像度実画像による画像信号とフレームメモリ41に記憶された現フレームより1フレーム前の低解像度実画像による画像信号とが与えられて動き量を算出する動き量算出部45と、動き量算出部45で検出された動き量に基づいてフレームメモリ41〜44に記憶された4フレームの低解像度実画像それぞれにおける動き量を記憶する動き量記憶部46と、動き量記憶部46に記憶された動き量に基づいてフレームメモリ41〜44に記憶された4フレームの低解像度実画像それぞれを加重加算する入力画像加重加算部47と、入力画像加重加算部47で加重加算されて得られた複数フレームの低解像度実画像に対して超解像処理を行って高解像度画像を生成する超解像処理部48と、超解像処理部48で得られた高解像度画像を一時的に記憶して再び超解像処理部48に与えるフレームメモリ49と、超解像処理部48で超解像処理が施された高解像度画像による画像信号又はAFE2から直接与えられた画像信号より輝度信号及び色差信号を生成する信号処理部50と、を備える。
更に、超解像処理部48は、入力画像加重加算部47からの複数フレーム分の低解像度実画像(図3(a)の低解像度実画像Fa,Fbに相当)より初期高解像度画像となる高解像度画像(図3(a)の高解像度画像Fx1に相当)を推定する初期高解像度推定部481と、初期高解像度推定部481で推定されて得られた高解像度画像とフレームメモリ49に一時記憶された高解像度画像のいずれか1つを選択して後段に与える選択部482と、選択部482で選択された高解像度画像と入力画像加重加算部47からの複数フレームの低解像度実画像によって高解像度画像の更新量(図3(d)の差分画像ΔFxnに相当)を求める高解像度更新量算出部483と、選択部482で選択された高解像度画像から高解像度更新量算出部483で得られた更新量を減算する減算部484と、を備える。尚、選択部482では、1回目の選択動作において、初期高解像度推定部481で推定された初期高解像度画像を選択し、2回目以降の選択動作において、フレームメモリ49に一時記憶された高解像度画像を選択する。
(動き量検出部の動作)
まず、動き量検出部45の動作について簡単に説明する。この動き量検出部45には、現フレームとなる低解像度実画像FaがAFE2から与えられるとともに、現フレームの1フレーム前の低解像度実画像Fbがフレームメモリ41から与えられて、位置ズレとなる動き量が検出される。この動き量の検出は、時間的に連続した2フレームの低解像度実画像Fa,Fbのうち、現フレームでないもう一方の低解像度実画像Fbを基準画像とし、現フレームとなる低解像度実画像Faを非基準画像として検出される。尚、本実施形態では、現フレームでないもう一方の低解像度実画像Fbを基準画像とするものとして説明するが、現フレームとなる低解像度実画像Faを基準画像としても構わない。
この動き量検出については、例えば、周知の代表点マッチング法によって、画像間における画素単位の動き量が検出され、その後、1画素内(1画素以下)における動き量について、画素単位で位置ズレ補正された近隣画素の画素値の関係に基づいて検出されるものとしても構わない。以下に、代表点マッチング法と、1画素内における位置ズレ検出とについて、簡単に説明する。
(1)代表点マッチング法
基準画像及び非基準画像それぞれに対して、例えば、図5に示すように、a×bの画素群(例えば、36×36の画素群)を1つの小領域eとして分割し、更に、このp×q領域の小領域e群(例えば、6×8の小領域e群)を1つの検出領域Eとして分割する。そして、基準画像では、各小領域eにおいて、図6(a)のように、小領域eを構成するa×bの画素から1つの画素が代表点Rとして設定され、又、非基準画像では、各小領域eにおいて、図6(b)のように、小領域eを構成するa×bの画素のうちの複数の画素がサンプリング点Sとして設定される(例えば、a×bの画素全てをサンプリング点Sとしても構わない)。
このように、小領域e及び検出領域Eを設定すると、基準画像と非基準画像の同一位置となる小領域eについて、非基準画像の各サンプリング点Sの画素値と基準画像の代表点Rの画素値との差が、各サンプリング点Sでの相関値として求められる。そして、検出領域E毎に、各小領域e間で代表点Rとの相対位置が同一となるサンプリング点Sの相関値を、検出領域Eを構成する全ての小領域e分だけ累積加算することで、各サンプリング点Sにおける累積相関値を取得する。これにより、検出領域E毎に、代表点Rとの相対位置が同一となるp×q個のサンプリング点Sの相関値が累積加算されることで、サンプリング点の個数分の累積相関値が得られる(例えば、a×bの画素全てをサンプリング点Sとする場合、a×b個の累積相関値が得られることとなる)。
このようにして、各検出領域Eに対して、各サンプリング点Sに対する累積相関値が求められると、各検出領域Eにおいて、代表点Rと相関性が最も高いと考えられる累積相関値が最小となるサンプリング点Sが検出される。そして、各検出領域Eでは、累積相関値が最小となるサンプリング点Sと代表点Rとの動き量が、それぞれの画素位置によって求められる。その後、各検出領域Eそれぞれに対して求められた動き量を平均することで、この平均値を、基準画像と非基準画像との間の画素単位による動き量として検出する。
(2)1画素内の動き量検出
上述のように、画素単位による動き量を検出すると、更に、1画素内における動き量が検出される。このとき、例えば、まず、図5に示す小領域e毎に、基準画像の代表点Rとなる画素の画素値と、上述の代表点マッチング法によって得られた動き量によって代表点Rと相関性の高いサンプリング点Sxとなる画素及び周辺画素それぞれの画素値との関係によって、1画素内における動き量を検出する。
即ち、各小領域eにおいて、基準画像で画素位置(ar,br)となる代表点Rの画素値La(図7(a)参照)と、非基準画像において画素位置(as,bs)となるサンプル点Sxの画素値Lbと、サンプル点Sxと水平方向に隣接する画素位置(as+1,bs)の画素値Lc(図7(b)参照)と、サンプル点Sxと垂直方向に隣接する画素位置(as,bs+1)の画素値Ld(図7(b)参照)との関係によって、1画素内における動き量が検出される。このとき、代表点マッチング法により、基準画像から非基準画像への画素単位の動き量が、(as−ar,bs−br)となるベクトル量で表される値となる。
又、図8(a)のように、サンプル点Sxとなる画素から水平方向に1画素ずれることで、画素値Lbから画素値Lcに線形的に変化するものとし、図8(b)のように、サンプル点Sxとなる画素から垂直方向に1画素ずれることで、画素値Lbから画素値Ldに線形的に変化するものとする。そして、図7(a)及び図7(b)のような関係より、画素値Lb,Lcの間で画素値Laとなる水平方向の位置Δx(=(La−Lb)/(Lc−Lb))を求めるとともに、画素値Lb,Ldの間で画素値Laとなる垂直方向の位置Δy(=(La−Lb)/(Ld−Lb))を求める。即ち、(Δx,Δy)で表されるベクトル量が、基準画素と非基準画素との間における、1画素内での動き量として求められる。
このようにして、小領域eそれぞれにおける1画素内での動き量を求めると、求めた動き量を平均することで、この平均値を、基準画像Fbと非基準画像Faとの間の画素単位による動き量として検出する。そして、代表点マッチング法によって得られた画素単位による動き量に、求めた1画素内での動き量を加えることによって、基準画像Fbと非基準画像Faとの間における動き量を算出することができる。
この動き量検出部45で算出された連続する2フレームの低解像度実画像間の動き量は、動き量記憶部46に記憶される。尚、フレームメモリ41〜44に格納される4フレームの低解像度実画像に対して求められた、連続する2フレームの低解像度実画像間の動き量が、動き量記憶部46に記憶される。
(入力画像加重加算部の動作)
次に、入力画像加重加算部47の動作について、図面を参照して説明する。この入力画像加重加算部47には、動き量記憶部46より、フレームメモリ41〜44に記憶された低解像度実画像Fa〜Fdそれぞれにおける、連続する2フレーム間の動き量が与えられる。即ち、図9(a)に示す、低解像度実画像Fd,Fc間の動き量M1、低解像度実画像Fc,Fb間の動き量M2、及び、低解像度実画像Fb,Fa間の動き量M3それぞれが、動き量記憶部46より入力画像加重加算部47に与えられる。尚、この動き量M1〜M3は、垂直方向及び水平方向それぞれの動き量によるベクトル量である。
そして、入力画像加重加算部47では、連続する2フレームの低解像度実画像間の動き量Fa〜Fcが与えられることで、現フレームの3フレーム前のフレームであるフレームメモリ44からの低解像度実画像Fdを基準画像としたときの、フレームメモリ41〜43からの低解像度実画像Fa〜Fcの動き量を算出する。即ち、図9(b)に示す、低解像度実画像Fd,Fc間の動き量Mx(=M1)、低解像度実画像Fd,Fb間の動き量My(=M1+M2)、及び、低解像度実画像Fd,Fa間の動き量Mz(=M1+M2+M3)それぞれが、入力画像加重加算部47で算出される。尚、この動き量Mx〜Mzについても、動き量M1〜M3と同様、垂直方向及び水平方向それぞれの動き量によるベクトル量である。
このようにして、低解像度実画像Fdを基準画像とした動き量Mx〜Mzが算出されると、この動き量Mx〜Mzの関係を確認し、超解像処理部48に入力する際に加重加算を行うフレームを選択する。このとき、基準画像となる低解像度実画像Fdとの動き量が等しくなるフレームの低解像度実画像を、加重加算を行うために選択する。よって、(1)動き量Mx〜Mzにおいて連続する動き量が異なる場合、(2)動き量Mxが0となる場合、(3)動き量Mx,Myが等しい場合、(4)動き量My,Mzが等しい場合の4つの場合に対して、入力画像加重加算部47での加重加算を行うフレームが異なる。以下で、この4つの場合それぞれについて、説明する。
(1)動き量Mx〜Mzにおいて連続する動き量が異なる場合が異なる場合
動き量Mx〜Mzにおいて連続する動き量が異なる場合、換言すると、連続する2フレーム間の動き量M1〜M3のいずれも0とならない場合、図10(a)に示すように、フレームメモリ41〜44それぞれからの低解像度実画像Fa〜Fdそれぞれをそのまま、超解像処理部48に与える。即ち、基準画像となる低解像度実画像Fdとの動き量が等しくなるフレームがないため、加重加算する2フレームの低解像度実画像の選択が成されない。よって、加重加算のための選択を行うことなく、フレームメモリ41〜44それぞれからの低解像度実画像Fa〜Fdを超解像処理部48に与えることで、超解像処理部48では、4フレームの低解像度実画像Fa〜Fdを利用した超解像処理が成される。
(2)動き量Mxが0となる場合
動き量Mxが0となる場合、換言すると、連続する2フレーム間の動き量M1〜M3のうち、動き量M1が0となる場合、低解像度実画像Fc,Fdが同一の画像となる。よって、図10(b)に示すように、低解像度実画像Fc,Fdを加重加算して1フレームの低解像度実画像Feとする。そして、3フレームの低解像度実画像Fa,Fb,Feそれぞれを超解像処理部48に与えることで、超解像処理部48では、3フレームの低解像度実画像Fa,Fb,Feを利用した超解像処理が成される。
このとき、例えば、低解像度実画像Fdの全画素に対して重み係数k(0<k<1)を乗算し、低解像度実画像Fcの全画素に対して重み係数(1−k)を乗算した後、重み係数が乗算された低解像度実画像Fc,Fdを加算することによって、低解像度実画像Feを生成するものとしても構わない。このとき、低解像度実画像Fdを基準とするため、基準となる低解像度実画像Fdに対する重み係数kが、低解像度実画像Fcに対する重み係数(1−k)よりも大きい値に設定されるものとしても構わない。
又、低解像度実画像Fc,Fdそれぞれにおける各画素に対して、重み係数が設定されるものとしても構わない。このとき、低解像度実画像Fdに対する3次元ノイズ低減処理を行うことによって、低解像度実画像Fc,Fdそれぞれにおける各画素に対する重み係数が設定されるものとしても構わない。3次元ノイズ低減処理を行うことで重み係数を決定する場合について、以下に簡単に説明する。
まず、低解像度実画像Fdにおいて、重み係数を設定するための注目画素に対して、低解像度実画像Fcにおいて注目画素と同じ画素位置となる画素の画素値との差分Dを求める。この注目画素の画素位置における低解像度画像Fc,Fd間の差分Dによって、(1)式の演算を行うことで、低解像度画像Fdの注目画素の画素値より減算するノイズ値Nzを算出する。
更に、同一画素位置における低解像度画像Fc,Fd間の差分Dの絶対値に対して、ローパスフィルタ処理を施した値により、注目画素の画素位置における動き量Mを算出すると、この動き量Mによって、(2)式の演算を行うことで、ノイズ値Nzに乗算する帰還係数Kが算出される。そして、ノイズ値Nzに帰還係数Kを乗算した値K×Nzを、低解像度画像Fdの注目画素の画素値より減算することで、連続する2フレームの低解像度画像Fc,Fdにより3次元ノイズ低減処理を施した低解像度画像Feの画素値を取得することができる。
(3)動き量Mx,Myが等しい場合
動き量Mx,Myが等しい場合、換言すると、連続する2フレーム間の動き量M1〜M3のうち、動き量M2が0となる場合、低解像度実画像Fb,Fcが同一の画像となる。よって、図10(c)に示すように、低解像度実画像Fb,Fcを加重加算して1フレームの低解像度実画像Feとする。尚、低解像度実画像Fb,Fcの加重加算については、動き量Mxが0となるときに低解像度実画像Fc,Fdに対して施す加重加算と同様である。そして、3フレームの低解像度実画像Fa,Fd,Feそれぞれを超解像処理部48に与えることで、超解像処理部48では、3フレームの低解像度実画像Fa,Fd,Feを利用した超解像処理が成される。
(4)動き量My,Mzが等しい場合
動き量My,Mzが等しい場合、換言すると、連続する2フレーム間の動き量M1〜M3のうち、動き量M3が0となる場合、低解像度実画像Fa,Fbが同一の画像となる。よって、図10(d)に示すように、低解像度実画像Fa,Fbを加重加算して1フレームの低解像度実画像Feとする。尚、低解像度実画像Fa,Fbの加重加算については、動き量Mxが0となるときに低解像度実画像Fc,Fdに対して施す加重加算と同様である。そして、3フレームの低解像度実画像Fc,Fd,Feそれぞれを超解像処理部48に与えることで、超解像処理部48では、3フレームの低解像度実画像Fc,Fd,Feを利用した超解像処理が成される。
尚、上述の(2)〜(4)の場合のように、動き量M1〜M3が0となることで、加重加算を施す連続する2フレームの低解像度実画像を選択するものとしたが、動き量M1〜M3が0に近い値(例えば、1/2画素以下)であったときに、(2)〜(4)の場合のような選択動作が行われる。
(超解像処理部の動作)
次に、このように構成される超解像処理部48の動作について、図3を参照して説明する。尚、上述した図10(a)の場合のように、入力画像加重加算部47から4フレームの低解像度実画像Fa〜Fdが入力されたときの動作を代表して説明する。又、低解像度実画像を含む低解像度画像の画素数をuとし、初期高解像度画像を含む高解像度画像の画素数をvとする。そして、u画素による低解像度実画像Faの各画素値がYa=[ya1,ya2,…,yau]となり、u画素による低解像度実画像Fbの各画素値がYb=[yb1,yb2,…,ybu]となり、u画素による低解像度実画像Fcの各画素値がYc=[yc1,yc2,…,ycu]となり、u画素による低解像度実画像Fdの各画素値がYd=[yd1,yd2,…,ydu]となる。
(1)初期高解像度画像による処理
入力画像加重加算部47から4フレームの低解像度実画像Fa〜Fdが初期高解像度推定部481に与えられる。これにより初期高解像度推定部481では、図3(a)に示すSTEP31のように、動き量記憶部46で得られた動き量に基づいて、4フレームの低解像度実画像Fa〜Fd間の位置ズレを検出する。そして、低解像度実画像Fa〜Fdの各画素値Ya〜Ydに対して、動き量により確認された位置ズレを利用した補間処理を施すことで、v画素による初期高解像度画像Fx1を取得する。
尚、高解像度画像Fx1〜Fxnそれぞれの各画素値を、X=[x1,x2,…,xv]となるものとする。この初期高解像度推定部481で初期高解像度画像Fx1を生成する際、高解像度画像生成用のフィルタの一部にメディアンフィルタなどによるノイズ低減処理を行うフィルタを用いることや、高解像度画像生成用のフィルタのタップ数を広げることで、S/N比(信号/ノイズ比)を高くすることが好ましい。
このようにして初期高解像度推定部481から初期高解像度画像Fx1が出力されると、選択部482によって、この初期高解像度画像Fx1が選択されて、高解像度更新量算出部483に与えられる。この高解像度更新量算出部483では、動き量算出部46で得られた動き量が与えられることで、動き量に基づいて、高解像度実画像Fxに対する低解像度実画像Fa〜Fdそれぞれの位置ズレや低解像化によるぼけが算出される。この動き量より得られる位置ズレやぼけと、v画素の高解像度画像Fxnからu画素の低解像度実画像Fa〜Fdに相当する低解像度推定画像Fan〜Fdnへのダウンサンプリング量とを含むカメラパラメータ行列Wa〜Wdが求められる。
そして、選択部482を通じて与えられた初期高解像度画像Fx1に対して、カメラパラメータ行列Wa〜Wdが乗算されることで、図3(b)に示すSTEP32のように、低解像度実画像Fa〜Fdに擬似的に類似させた低解像度推定画像Fa1(=Wa・X)〜Fd1(=Wd・X)が推定される。又、この高解像度更新量算出部483は、入力画像加重加算部47からの4フレーム分の低解像度実画像Fa〜Fdが与えられることで、推定した低解像度推定画像Fa1〜Fb1と低解像度実画像Fa〜Fdとの二乗誤差による差分|Wa・X−Ya|2〜|Wd・X−Yd|2が求められる。
この低解像度推定画像Fa1〜Fd1と低解像度実画像Fa〜Fdとの差分による評価関数Iが、それぞれの差分の加算値に、選択部482で選択された高解像度画像によって得られる拘束項が付加された形で求められる。即ち、求められる評価関数Iは、|Wa・X−Ya|2+|Wb・X−Yb|2+|Wc・X−Yc|2+|Wd・X−Yd|2+γ|CX|2となる。尚、この評価関数Iの拘束項γ|CX|2において、行列Cが、事前確率モデルに基づく行列であり、「高解像度画像には高域成分が少ない」という事前知識に基づき、例えば、ラプラシアンフィルタなどのハイパスフィルタによって構成される。又、係数γは、拘束項の評価関数Iにおける重みの強さを表すパラメータである。
このようにして求められた評価関数Iに対して勾配法によって最小化を行うため、評価関数Iに対する勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WbT・(Wb・X−Yb)+WcT・(Wc・X−Yc)+WdT・(Wd・X−Yd)+γCT・C・X})が求められる。尚、添え字である「T」は、転置行列を表す。この更新量となる勾配∂I/∂Xを求めることで、高解像度更新量算出部483において、図3(c)によって示すSTEP33における差分画像ΔFx1が求められることとなる。
このようにして算出した勾配∂I/∂Xによる更新量が、高解像度更新量算出部453より減算部484に与えられると、減算部484では、図3(d)におけるSTEP34のように、選択部482を介して初期高解像度推定部481より与えられる初期高解像度画像Fx1より、勾配∂I/∂Xによる更新量を減算する。この減算部484の減算結果により、v画素の画素値それぞれが(X−∂I/∂X)となる高解像度画像Fx2が得られる。そして、この新たに得られた高解像度画像Fx2が減算部484より出力されて、フレームメモリ49に与えられて、一時的に記憶される。
(2)生成後の高解像度画像による処理
上述のように、初期高解像度画像Fx1を取得して、高解像度画像の更新量を勾配∂I/∂Xし、新たな高解像度画像Fx2を取得すると、選択部482は、フレームメモリ49に格納された高解像度画像を選択して高解像度更新量算出部483に与える。即ち、n(n≧2の整数)回目の演算処理の場合、フレームメモリ49に格納された高解像度画像Fxnが選択部482によって読み出されて、高解像度更新量算出部483に与えられる。
よって、高解像度更新量算出部483では、フレームメモリ49に格納された高解像度画像Fxnによって、低解像度推定画像Fan(=Wa・X)〜Fdn(=Wd・X)を推定する。このようにして求められた低解像度推定画像Fan〜Fdnと、入力される低解像度実画像Fa〜Fd及び高解像度画像Fxnとによって、更新量となる∂I/∂X(=2×{WaT・(Wa・X−Ya)+WbT・(Wb・X−Yb)+WcT・(Wc・X−Yc)+WdT・(Wd・X−Yd)+γCT・C・X})による差分画像ΔFxnが、高解像度更新量算出部483で求められる。そして、減算部484において、高解像度更新量算出部483で求められた差分画像ΔFxnが、選択部482を介してフレームメモリ49から与えられる高解像度画像Fxnより減算されて、即ち、X−∂I/∂Xの演算が行われることで、新たに高解像度画像Fx(n+1)が得られる。
そして、超解像演算部48において、高解像度更新量算出部483による演算処理回数をn回に設定している場合は、減算部484で新たに得られた高解像度画像Fx(n+1)を、減算部484から信号処理部50に出力する。又、超解像演算部48内において、高解像度更新量算出部483による演算処理回数をn+1回以上に設定している場合は、高解像度画像Fx(n+1)をフレームメモリ49に与えて一時記憶して、n+1回目の演算処理を行う。
この超解像演算部48内における高解像度更新量算出部483及び減算部484による演算処理の繰り返し回数については、動画撮影や静止画の連続撮影などのように、1フレームの撮影間隔が短い場合は、その回数が少なくなるように設定される。又、連続撮影以外の通常の静止画撮影の場合は、その回数が、動画撮影や静止画の連続撮影の場合よりも多くなるように設定されるものとしても構わない。
尚、入力画像加重加算部47において加重加算がなされずに、4フレームの低解像度実画像Fa〜Fdが超解像処理部48に入力される場合について説明したが、2フレームの低解像度実画像を加重加算して1フレームの低解像度実画像とした場合も同様の演算によって、超解像処理が成される。よって、(a)動き量Mxが0となる場合(図10(b)参照)、(b)動き量Mx,Myが等しい場合(図10(c)参照)、(c)動き量My,Mzが等しい場合(図10(d)参照)の各場合について、簡単に説明する。
(a)動き量Mxが0となる場合
動き量Mxが0となり、低解像度実画像Fc,Fdが加重加算された低解像度実画像Fe(画素の値が、Ye=[ye1,ye2,…,yeu]となる)が入力される場合、まず、初期高解像度推定部481において、3フレームの低解像度実画像Fa,Fb,Feによって、初期高解像度画像Fx1が取得される。その後、高解像度更新量算出部483において、評価関数I(=|Wa・X−Ya|2+|Wb・X−Yb|2+|We・X−Ye|2+γ|CX|2)による勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WbT・(Wb・X−Yb)+WeT・(We・X−Ye)+γCT・C・X})が更新量として算出される。そして、減算部484において、選択部482により選択された高解像度画像Fxnより、高解像度更新量算出部483で算出した更新量を減算することにより、高解像度画像の更新を行う。これらの動作を繰り返すことによって、3フレームの低解像度実画像Fa,Fb,Feによる超解像処理に基づく高解像度画像が、信号処理部50に出力される。
(b)動き量Mx,Myが等しい場合
動き量Mx,Myが等しく、低解像度実画像Fb,Fcが加重加算された低解像度実画像Feが入力される場合、まず、初期高解像度推定部481において、3フレームの低解像度実画像Fa,Fd,Feによって、初期高解像度画像Fx1が取得される。その後、高解像度更新量算出部483において、勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WdT・(Wd・X−Yd)+WeT・(We・X−Ye)+γCT・C・X})が更新量として算出される。そして、減算部484において、選択部482により選択された高解像度画像Fxnより、高解像度更新量算出部483で算出した更新量を減算して、高解像度画像の更新を行う。これらの動作を繰り返すことによって、3フレームの低解像度実画像Fa,Fd,Feによる超解像処理に基づく高解像度画像が、信号処理部50に出力される。
(c)動き量My,Mzが等しい場合
動き量My,Mzが等しく、低解像度実画像Fa,Fbが加重加算された低解像度実画像Feが入力される場合、まず、初期高解像度推定部481において、3フレームの低解像度実画像Fc,Fd,Feによって、初期高解像度画像Fx1が取得される。その後、高解像度更新量算出部483において、勾配∂I/∂X(=2×{WcT・(Wc・X−Yc)+WdT・(Wd・X−Yd)+WeT・(We・X−Ye)+γCT・C・X})が更新量として算出される。そして、減算部484において、選択部482により選択された高解像度画像Fxnより、高解像度更新量算出部483で算出した更新量を減算して、高解像度画像の更新を行う。これらの動作を繰り返すことによって、3フレームの低解像度実画像Fc,Fd,Feによる超解像処理に基づく高解像度画像が、信号処理部50に出力される。
このようにして、画像処理部4内の超解像処理部48において超解像処理が成されることによって、入力加重加算部47から入力される3フレーム分又は4フレーム分の低解像度実画像から高解像度画像が得られる。尚、このような超解像処理部48における詳細な構成例について、図11に示す。即ち、図4に示す構成で説明した初期高解像度推定部481と、選択部482と、高解像度更新量算出部483と、減算部484とを備えるときの高解像度更新量算出部483の構成例が、図11に示すようなブロック構成となる。
図11において、高解像度更新量算出部483が、動き量記憶部46で得られた動き量に基づいてカメラパラメータ行列Wa〜Wd,WaT〜WdTを求めるパラメータ算出部301〜308と、選択部482で選択された高解像度画像Fxnに対してパラメータ算出部301〜304それぞれからのカメラパラメータ行列Wa〜Wdを乗算する乗算部309〜312と、乗算部309〜312によって得られた低解像度推定画像の画素値から入力加重加算部47からの低解像度実画像の画素値を減算する減算部313〜316と、減算部313〜316からの値に対してパラメータ算出部305〜308それぞれからのカメラパラメータ行列WaT〜WdTを乗算する乗算部317〜320と、乗算部317〜320で得られた二乗誤差による差分を加算する加算部321と、選択部482で選択された高解像度画像の高周波成分を抽出して正規化するHPF322と、HPF322を通過して得られた拘束項(正規化項)に対して重み係数γを乗算する乗算部323と、乗算部323で重み係数γが乗算された拘束項を加算部321で得られた値に加算する加算部324と、加算部324での値を倍算して差分画像による各画素の値(更新量)を求める乗算部325と、を備える。
このように構成される超解像処理部48において、上述したように、動き量M1〜M3全てが0でなく、入力画像加重加算部47から4フレームの低解像度実画像Fa〜Fdが入力されたとき、パラメータ算出部301〜308それぞれによって、カメラパラメータ行列Wa〜Wd,WaT〜WdTが算出される。そして、乗算部309〜312,317〜320及び減算部313〜316全てが動作することによって、勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WbT・(Wb・X−Yb)+WcT・(Wc・X−Yc)+WdT・(Wd・X−Yd)+γCT・C・X})が算出されることとなる。
又、動き量Mxが0となり、入力画像加重加算部47から3フレームの低解像度実画像Fa,Fb,Feが入力されたとき、パラメータ算出部304,308、乗算部312,320、及び減算部316の動作を停止させる。そして、パラメータ算出部301,302,305,306それぞれによって、カメラパラメータ行列Wa,Wb,WaT,WbTが算出されるとともに、パラメータ算出部303,307それぞれによって、カメラパラメータ行列We,WeTが算出される。又、乗算部309〜311,317〜319及び減算部313〜315が動作することによって、勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WbT・(Wb・X−Yb)+WeT・(We・X−Ye)+γCT・C・X})が算出されることとなる。
同様に、動き量Mx,Myが等しくなり、入力画像加重加算部47から3フレームの低解像度実画像Fa,Fd,Feが入力されたとき、パラメータ算出部303,307、乗算部311,319、及び減算部315の動作を停止させる。そして、パラメータ算出部301,304,305,308それぞれによって、カメラパラメータ行列Wa,Wd,WaT,WdTが算出されるとともに、パラメータ算出部302,306それぞれによって、カメラパラメータ行列We,WeTが算出される。これにより、勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WdT・(Wd・X−Yd)+WeT・(We・X−Ye)+γCT・C・X})が算出されることとなる。
又、動き量My,Mzが等しくなり、入力画像加重加算部47から3フレームの低解像度実画像Fc,Fd,Feが入力されたとき、パラメータ算出部302,306、乗算部310,318、及び減算部314の動作を停止させる。そして、パラメータ算出部303,304,307,308それぞれによって、カメラパラメータ行列Wc,Wd,WcT,WdTが算出されるとともに、パラメータ算出部301,305それぞれによって、カメラパラメータ行列We,WeTが算出される。これにより、勾配∂I/∂X(=2×{WcT・(Wc・X−Yc)+WdT・(Wd・X−Yd)+WeT・(We・X−Ye)+γCT・C・X})が算出されることとなる。
このように、本実施形態では、2フレームの低解像度実画像間の各画素位置が同位置となるとき、この2フレームの低解像度実画像に対して、入力画像加重加算部47において加重加算を施して、ノイズを抑制した低解像度実画像を生成する。これにより、超解像処理部48における超解像処理において、低解像度実画像でのノイズの影響を低減することができ、超解像処理により得られる高解像度画像のノイズを抑制することができる。
尚、本実施形態において、入力画像加重加算部47において、連続する2フレーム以上の複数フレームの低解像度実画像に対して動き量が0となることを確認したときに、確認した複数フレームの低解像度実画像に対して加重加算を行って1フレームの低解像度画像を生成するものであれば、3フレーム以上となるNフレームの低解像度実画像を扱うものであっても構わない。このとき、入力画像加重加算部47は、Nフレームの低解像度実画像が入力されて、2フレーム以上Nフレーム以下のMフレームの低解像度実画像を超解像処理部48に出力する。
<第2の実施形態>
本発明の第2の実施形態について、図面を参照して説明する。尚、本実施形態の撮像装置における画像処理部は、第1の実施形態と同様、図4に示すブロック図による構成となる。又、この図4の構成に加えて、超解像処理部の構成例として、図11に示す構成が挙げられる。更に、フレームメモリ41〜44,49、動き量検出部45、動き量記憶部46、超解像処理部48、信号処理部50それぞれについては、第1の実施形態と同様の動作を行う。よって、以下では、入力画像加重加算部47の動作について、説明する。
第1の実施形態における撮像装置では、基準画像となる低解像度実画像Fdとの動き量が3フレーム以上等しく成る場合がある。このとき、3フレーム以上の低解像度実画像を加重加算して1フレームとすると、超解像処理部48における超解像処理に利用される低解像度実画像のフレーム数が少なくなるため、超解像処理による高解像度画像の再現性が低下する場合がある。よって、本実施形態の撮像装置では、連続する2フレームの低解像度実画像の動き量についても、加重加算を施す低解像度実画像として選択する際の条件として利用する。
又、加重加算を施す低解像度実画像として選択する際の条件として、動き量を考慮することによって、同じ性質となる低解像度実画像を選択して合成することができる。よって、低解像度実画像の加重加算を行うことで合成する際、その合成後の低解像度実画像をより正確な画像とすることができるので、超解像処理によって取得される高解像度画像について、その再現性を高いものとすることができる。
入力画像加重加算部47は、第1の実施形態と同様、低解像度実画像Fd,Fc間の動き量M1、低解像度実画像Fc,Fb間の動き量M2、及び、低解像度実画像Fb,Fa間の動き量M3それぞれが動き量記憶部46より与えられる。そして、この動き量M1〜M3より、解像度実画像Fd,Fc間の動き量Mx(=M1)、低解像度実画像Fd,Fb間の動き量My(=M1+M2)、及び、低解像度実画像Fd,Fa間の動き量Mz(=M1+M2+M3)それぞれが、算出される。
そして、(1)動き量Mx〜Mzにおいて連続する動き量が異なるとき、(2)動き量Mxのみが0となるとき、(3)動き量Mx,Myのみが等しくなるとき、(4)動き量My,Mzのみが等しくなるとき、それぞれについては、第1の実施形態と同様の動作を行う。即ち、(1)動き量Mx〜Mzにおいて連続する動き量が異なるときは、加重加算を行わずに、4フレームの低解像度実画像を超解像処理部48に出力する。そして、(2)動き量Mxのみが0となるときは、低解像度実画像Fc,Fdに対して加重加算を行い、(3)動き量Mx,Myのみが等しくなるとき、低解像度実画像Fb,Fcに対して加重加算を行い、(4)動き量My,Mzのみが等しくなるとき、低解像度実画像Fa,Fbに対して加重加算を行うことで、3フレームの低解像度実画像を超解像処理部48に出力する。
更に、本実施形態では、(1)動き量Mx〜Mzにおいて連続する動き量が異なるときにおいても、(a)動き量Mx,Mzが等しく、且つ、動き量M1,M3が等しい場合には、加重加算処理を行う。又、(b)動き量Mx〜Mzが等しい場合、又は、(c)動き量Mx,Myが0となる場合において、連続する3フレームの低解像度実画像における基準画像との動き量が等しくなるが、この3フレームの低解像度実画像から、加重加算処理を行う低解像度実画像を2フレームのみ選択する。これらの場合の各動作について、以下に説明する。
(a)動き量Mx,Mzが等しく、且つ、動き量M1,M3が等しい場合
図12(a)に示すように、低解像度実画像Fc,Fd間の動き量M1と、低解像度実画像Fa,Fbの動き量M3とが等しくなるとともに、低解像度実画像Fa,Fdの動き量Mz(=M1+M2+M3)が動き量Mx(=M1)と等しくなる。よって、低解像度実画像Fb,Fcの動き量M2が−M1となるとともに、低解像度実画像Fb,Fdの動き量Myが0となる。このとき、低解像度実画像Fa,Fcそれぞれについて、低解像度実画像Fdに対する動き量が等しくなるだけでなく、それぞれの1つ前のフレームとなる低解像度実画像Fb,Fdに対する動き量も等しくなる。
よって、低解像度実画像Fa,Fcそれぞれにおいて、撮像する被写***置が等しいだけでなく、その撮像時のブレの方向が等しくなる。これにより、低解像度実画像Fa,Fcそれぞれの各画素における画素値がほぼ等しいものとみなせるため、低解像度実画像Fa,Fcについて、第1の実施形態と同様の加重加算処理を行うことで、加重加算された低解像度実画像Feを取得することができる。そして、3フレームの低解像度実画像Fb,Fd,Feそれぞれを超解像処理部48に与えることで、超解像処理部48では、3フレームの低解像度実画像Fb,Fd,Feを利用した超解像処理が成される。
(b)動き量Mx〜Mzが等しい場合
図12(b)に示すように、0でない動き量Mx〜Mz全てが等しくなる場合、低解像度実画像Fc,Fd間の動き量M1が動き量Mxとなるとともに、低解像度実画像Fb,Fcの動き量M2、及び、低解像度実画像Fa,Fbの動き量M3それぞれが0となる。このとき、低解像度実画像Fa,Fbそれぞれについて、低解像度実画像Fdに対する動き量が等しくなるだけでなく、それぞれの1つ前のフレームとなる低解像度実画像Fb,Fcに対する動き量も等しくなる。
よって、低解像度実画像Fa,Fbそれぞれにおいて、撮像する被写***置が等しいだけでなく、その撮像時のブレの方向が等しくなる。これにより、低解像度実画像Fa,Fbそれぞれの各画素における画素値がほぼ等しいものとみなせるため、低解像度実画像Fa,Fbについて、第1の実施形態と同様の加重加算処理を行うことで、加重加算された低解像度実画像Feを取得することができる。そして、3フレームの低解像度実画像Fc,Fd,Feそれぞれを超解像処理部48に与えることで、超解像処理部48では、3フレームの低解像度実画像Fc,Fd,Feを利用した超解像処理が成される。
(c)動き量Mx,Myが0となる場合
図12(c)に示すように、動き量Mx,Myが0となる場合、低解像度実画像Fa,Fb間の動き量M3が動き量Mzとなるとともに、低解像度実画像Fc,Fdの動き量M1、及び、低解像度実画像Fb,Fcの動き量M2それぞれが0となる。このとき、低解像度実画像Fb,Fcそれぞれについて、低解像度実画像Fdに対する動き量が等しくなるだけでなく、それぞれの1つ前のフレームとなる低解像度実画像Fc,Fdに対する動き量も等しくなる。
よって、低解像度実画像Fb,Fcそれぞれにおいて、撮像する被写***置が等しいだけでなく、その撮像時のブレの方向が等しくなる。これにより、低解像度実画像Fb,Fcそれぞれの各画素における画素値がほぼ等しいものとみなせるため、低解像度実画像Fb,Fcについて、第1の実施形態と同様の加重加算処理を行うことで、加重加算された低解像度実画像Feを取得することができる。そして、3フレームの低解像度実画像Fa,Fd,Feそれぞれを超解像処理部48に与えることで、超解像処理部48では、3フレームの低解像度実画像Fa,Fd,Feを利用した超解像処理が成される。
このようにすることで、本実施形態では、1フレーム前の低解像度実画像の動き量が等しく、且つ、基準画像となる低解像度実画像の動き量が等しい2フレーム以上の複数フレームの低解像度実画像を確認したとき、確認した複数フレームの低解像度実画像に対して、入力画像加重加算部47において加重加算を施して、ノイズを抑制した低解像度実画像を生成する。これにより、超解像処理部48における超解像処理において、低解像度実画像でのノイズの影響を低減することができ、超解像処理により得られる高解像度画像のノイズを抑制することができる。
尚、本実施形態において、入力画像加重加算部47において、第1の実施形態における条件以外に、1フレーム前の低解像度実画像の動き量が等しく、且つ、基準画像となる低解像度実画像の動き量が等しい2フレーム以上の複数フレームの低解像度実画像を確認したときに、確認した複数フレームの低解像度実画像に対して加重加算を行って1フレームの低解像度画像を生成するものであれば、3フレーム以上となるNフレームの低解像度実画像を扱うものであっても構わない。このとき、入力画像加重加算部47は、Nフレームの低解像度実画像が入力されて、2フレーム以上Nフレーム以下のMフレームの低解像度実画像を超解像処理部48に出力する。
<第3の実施形態>
本発明の第3の実施形態について、図面を参照して説明する。図13は、本実施形態の撮像装置における画像処理部の内部構成を示すブロック図である。尚、図13による画像処理部の構成部分において、図4の画像処理部内における構成部分と同一となる部分については、同一の符号を付して、その詳細な説明は省略する。又、本実施形態で説明する際に用いる動き量Mxi〜Mzi,Mxr〜Mzr,M1r〜M3rは、動き量Mx〜Mz,M1〜M3と同様、垂直方向及び水平方向それぞれの動き量によるベクトル量である。
本実施形態の撮像装置におおける画像処理部4は、図13に示すように、図4の構成に更に、フレームメモリ41〜43からの低解像度実画像に対して画素単位での動き量に基づく位置ズレ補正を行う位置ズレ補正部51〜53を備える。この図13の構成の画像処理装置4において、フレームメモリ41〜44,49、動き量検出部45、動き量記憶部46、超解像処理部48、信号処理部50それぞれについては、第1の実施形態と同様の動作を行う。よって、以下では、位置ズレ補正部51〜53及び入力画像加重加算部47の動作について、説明する。
フレームメモリ41に記憶された低解像度実画像Faが与えられる位置ズレ補正部51では、動き量記憶部46に記憶された動き量が与えられると、低解像度実画像Fa,Fd間の動き量Mzが検出される。低解像度実画像Fd,Fc間の動き量M1、低解像度実画像Fc,Fb間の動き量M2、及び、低解像度実画像Fb,Fa間の動き量M3それぞれが動き量記憶部46より与えられ、全てを加算して、低解像度実画像Fa,Fd間の動き量Mzを算出する。そして、この低解像度実画像Fa,Fd間の動き量Mzの内、画素単位となる動き量Mziを確認し、この画素単位となる動き量Mziによる位置ズレ補正を行う。そして、1画素以内の動き量(Mz−Mzi)を、位置ズレ補正後の低解像度実画像Fa,Fd間の動き量Mzrとして、位置ズレ補正後の低解像度実画像Faとともに、入力画像加重加算部47に出力する。
又、フレームメモリ42に記憶された低解像度実画像Fbが与えられる位置ズレ補正部52においても、位置ズレ補正部51と同様、動き量記憶部46に記憶された動き量が与えられると、低解像度実画像Fb,Fd間の動き量Myの内、画素単位となる動き量Myiを確認し、この画素単位となる動き量Myiによる位置ズレ補正を行う。そして、1画素以内の動き量(My−Myi)を、位置ズレ補正後の低解像度実画像Fb,Fd間の動き量Myrとして、位置ズレ補正後の低解像度実画像Fbとともに、入力画像加重加算部47に出力する。
更に、フレームメモリ43に記憶された低解像度実画像Fcが与えられる位置ズレ補正部53においても、位置ズレ補正部51,52と同様、動き量記憶部46に記憶された動き量が与えられると、低解像度実画像Fc,Fd間の動き量Mxの内、画素単位となる動き量Mxiを確認し、この画素単位となる動き量Mxiによる位置ズレ補正を行う。そして、1画素以内の動き量(Mxy−Mxi)を、位置ズレ補正後の低解像度実画像Fc,Fd間の動き量Mxrとして、位置ズレ補正後の低解像度実画像Fcとともに、入力画像加重加算部47に出力する。
よって、入力画像加重加算部47には、位置ズレ補正部51〜53において、低解像度実画像Fdを基準として画素単位での位置ズレ補正が成された低解像度実画像Fa〜Fcが入力されるとともに、フレームメモリ44に記憶された低解像度実画像Fdが入力される。又、位置ズレ補正部51〜53において位置ズレ補正が成された低解像度実画像Fa〜Fcそれぞれにおける、低解像度実画像Fdに対する1画素以内の動き量Mxr〜Mzrが、入力画像加重加算部47に入力される。そして、この動き量Mxr〜Mzrに基づいて、加重加算を行う低解像度実画像が選択される。
尚、入力画像加重加算部47では、第1の実施形態と同様の動作を行う場合は、(1)動き量Mxr〜Mzrにおいて連続する動き量が異なるときは、加重加算を行わずに、4フレームの低解像度実画像を超解像処理部48に出力する。そして、(2)動き量Mxrのみが0となるときは、低解像度実画像Fc,Fdに対して加重加算を行い、(3)動き量Mxr,Myrのみが等しくなるとき、低解像度実画像Fb,Fcに対して加重加算を行い、(4)動き量Myr,Mzrのみが等しくなるとき、低解像度実画像Fa,Fbに対して加重加算を行うことで、3フレームの低解像度実画像を超解像処理部48に出力する。
又、第2の実施形態と同様の動作を行う場合は、更に、(a)動き量Mxr,Mzrが等しく、且つ、動き量M1r(=Mxr),M3r(=Mzr−Myr)が等しい場合には、低解像度実画像Fa,Fcに対して加重加算処理を行う。又、(b)動き量Mxr〜Mzrが等しい場合は、低解像度実画像Fa,Fbに対して加重加算処理を行い、(c)動き量Mxr,Myrが0となる場合は、低解像度実画像Fb,Fcに対して加重加算処理を行う。
尚、本実施形態において、位置ズレ補正部51〜53を設けることにより、位置ズレ補正が成された低解像度実画像Fa〜Fcそれぞれとフレームメモリ44とが、入力画像加重加算部47に入力されるものとしたが、フレームメモリ41〜44から低解像度実画像Fa〜Fdが入力画像加重加算部47に入力されて位置ズレ補正が成されるものとしても構わない。
このとき、動き量記憶部46に記憶された動き量Mx〜Mzにおける一画素以内の動き量Mxr〜Mzrを算出し、この動き量Mxr〜Mzrに基づいて、加重加算処理を施す低解像度実画像の選択を行う。そして、加重加算処理を施すために選択した低解像度実画像について、基準画像となる低解像度実画像Fdよりも時間的に近いフレームの低解像度画像を基準として、低解像度実画像Fdよりも時間的に離れたフレームの低解像度実画像を、画素単位による位置ズレ補正を行った後、加重加算処理を施す。
<第4の実施形態>
本発明の第4の実施形態について、図面を参照して説明する。尚、本実施形態の撮像装置における画像処理部は、第3の実施形態と同様、図13に示すブロック図による構成となる。又、フレームメモリ41〜44,49、動き量検出部45、動き量記憶部46、超解像処理部48、信号処理部50、位置ズレ補正部51〜53それぞれについては、第3の実施形態と同様の動作を行う。よって、以下では、入力画像加重加算部47の動作について、説明する。
本実施形態では、イメージセンサ1が、図14のように、RGB(Red Green Blue)3原色の色フィルタがベイヤ配列により設置された構成となる。即ち、イメージセンサ1において、垂直方向にRによる色フィルタFrとGによる色フィルタFgrとが交互に配置される行と、垂直方向にBによる色フィルタFbとGによる色フィルタFgbとが交互に配置される行とが、水平方向に交互に配置される。そして、隣接する行に配置される色フィルタFgr,Fgbは、対角線上に配置される。即ち、水平方向及び垂直方向それぞれに2画素×2画素を1つの画素群として、色フィルタFr,Fgr,Fb,Fgbが配置されるとき、色フィルタFr,Fbが一方の対角線上に配置されるとともに、色フィルタFgr,Fgbが他方の対角線上に配置される。
このようなベイヤ配列による色フィルタを備えたイメージセンサ1によって、RGBの色信号による画像信号がAFE2より画像処理部4に入力され、第3の実施形態のようにして、入力画像加重加算部47に、画素単位による位置ズレ補正が成された低解像度実画像が入力される。このとき、第3の実施形態においては、1画素内の動き量に基づいて、加重加算を行う低解像度実画像の選択が成されるが、本実施形態においては、画素単位による位置ズレの状態によって、異なる色信号が重なる画素位置があるため、(1)水平方向又は垂直方向の一方が奇数画素分、他方が偶数画素分(0画素を含む)となる場合、(2)水平方向及び垂直方向のいずれもが偶数画素分(0画素を含む)となる場合、(3)水平方向及び垂直方向のいずれもが奇数画素分となる場合、それぞれにおいて、入力画像加重加算部47での動作が異なる。
又、本実施形態における入力画像加重加算部47は、図15に示すように、位置ズレ補正部51〜53からの位置ズレ補正後の低解像度実画像Fa〜Fcとフレームメモリ44からの低解像度実画像FdとにおけるR信号及びB信号が入力されるRB信号処理部701と、位置ズレ補正部51〜53からの位置ズレ補正後の低解像度実画像Fa〜Fcとフレームメモリ44からの低解像度実画像FdとにおけるG信号が入力されるG信号処理部702と、動き量記憶部46に記憶された動き量よりRB信号処理部701及びG信号処理部702それぞれの動作を設定する動作設定部703と、を備える。
そして、RB信号処理部701から出力される複数フレームの低解像度実画像それぞれのR信号が、超解像処理により高解像度画像のR信号を生成する超解像処理部48rに入力され、RB信号処理部701から出力される複数フレームの低解像度実画像それぞれのB信号が、超解像処理により高解像度画像のB信号を生成する超解像処理部48bに入力される。又、G信号処理部702から出力される複数フレームの低解像度実画像それぞれのG信号が、超解像処理により高解像度画像のG信号を生成する超解像処理部48gに入力される。尚、超解像処理部48r,48b,48gは、第1の実施形態における超解像処理部48と同様の動作を行い、例えば、その構成を、図11のような構成とすることができる。
このように入力画像加重加算部47が構成されるとき、動作設定部703では、まず、動き量記憶部46から算出された動き量Mx〜Mzの内、1画素以内の動き量Mxr〜Mzrによって、加重加算処理を行うための低解像度実画像を選択する。そして、動き量Mx〜Mzの内の画素単位による動き量Mxi〜Mziに基づいて、選択した低解像度実画像それぞれの間の画素単位の動き量を確認することによって、RB信号処理部701及びG信号処理部702それぞれで加重加算を行うか否かを決定する。
即ち、まず、入力された低解像度実画像Fa〜Fdに対して、第3の実施形態と同様、1画素以内の動き量Mxr〜Mzrによって、加重加算処理を行うために低解像度実画像を選択する。このとき選択した低解像度実画像Fp,Fqとすると、この低解像度実画像Fp,Fq間の動き量Mp内の画素単位による動き量Mpiが確認される。そして、動き量Mpiが、(1)水平方向又は垂直方向の一方が奇数画素分、他方が偶数画素分(0画素を含む)となる場合、(2)水平方向及び垂直方向のいずれもが偶数画素分(0画素を含む)となる場合、(3)水平方向及び垂直方向のいずれもが奇数画素分となる場合、それぞれによって、RB信号処理部701及びG信号処理部702それぞれで加重加算を行うか否かが決定される。
(1)水平方向又は垂直方向の一方が奇数画素分、他方が偶数画素分となる場合
低解像度実画像Fp,Fq間の画素単位による動き量Mpiより、水平方向又は垂直方向の一方が奇数画素分となり、他方が偶数画素分(0画素を含む)となるとき、低解像度実画像FpにおけるRB信号の画素位置に、低解像度実画像FqのG信号の画素位置が重なる。そのため、低解像度実画像Fp,FqそれぞれにおけるRGB信号のいずれについても同一画素で重なることがない。
即ち、動作設定部703では、低解像度実画像Fp,Fq間の画素単位による動き量Mpiに基づいて、RGB信号のいずれについても、低解像度実画像Fp,Fq間で同一画素位置とならないことを確認する。これにより、RB信号処理部701及びG信号処理部702それぞれにおける低解像度実画像Fp,Fqの加重加算処理を行わないことを決定する。そのため、RB信号処理部701が、低解像度実画像Fp,FqそれぞれのRB信号を、2フレームの低解像度実画像のRB信号として超解像処理部48r,48bに出力し、G信号処理部702が、低解像度実画像Fp,FqそれぞれのG信号を、2フレームの低解像度実画像のG信号として超解像処理部48gに出力する。
(2)水平方向及び垂直方向のいずれもが偶数画素分となる場合
低解像度実画像Fp,Fq間の画素単位による動き量Mpiより、水平方向及び垂直方向のいずれもが偶数画素分(0画素を含む)となるとき、低解像度実画像FpにおけるRGB信号それぞれの画素位置に、低解像度実画像FqのRGB信号それぞれの画素位置が重なる。即ち、低解像度実画像Fp,FqそれぞれのR信号の画素位置、低解像度実画像Fp,FqそれぞれのG信号の画素位置、低解像度実画像Fp,FqそれぞれのB信号の画素位置それぞれが、一致することとなる。
よって、動作設定部703では、低解像度実画像Fp,Fq間の画素単位による動き量Mpiに基づいて、RGB信号それぞれが、低解像度実画像Fp,Fq間で同一画素位置とることを確認する。これにより、RB信号処理部701及びG信号処理部702両方において、低解像度実画像Fp,Fqの加重加算処理を行うことを決定する。そのため、RB信号処理部701が、低解像度実画像Fp,FqそれぞれのRB信号を加重加算することで、1フレームの低解像度実画像のRB信号として超解像処理部48r,48bに出力し、G信号処理部702が、低解像度実画像Fp,FqそれぞれのG信号を加重加算することで、1フレームの低解像度実画像のG信号として超解像処理部48gに出力する。
(3)水平方向及び垂直方向のいずれもが奇数画素分となる場合
低解像度実画像Fp,Fq間の画素単位による動き量Mpiより、水平方向及び垂直方向のいずれもが奇数画素分となるとき、低解像度実画像FpにおけるRB信号それぞれの画素位置に、低解像度実画像FqのBR信号それぞれの画素位置が重なるとともに、低解像度実画像FpにおけるG信号の画素位置に、低解像度実画像FqのG信号の画素位置が重なる。即ち、低解像度実画像FpのR信号の画素位置と低解像度実画像FqのB信号の画素位置とが一致し、低解像度実画像FpのB信号の画素位置と低解像度実画像FqのR信号の画素位置とが一致し、更に、低解像度実画像Fp,FqそれぞれのG信号の画素位置が一致することとなる。
よって、動作設定部703では、低解像度実画像Fp,Fq間の画素単位による動き量Mpiに基づいて、G信号のみが、低解像度実画像Fp,Fq間で同一画素位置となることを確認する。これにより、RB信号処理部701において、低解像度実画像Fp,Fqの加重加算処理を行わないことを決定するとともに、G信号処理部702において、低解像度実画像Fp,Fqの加重加算処理を行うことを決定する。そのため、RB信号処理部701が、低解像度実画像Fp,FqそれぞれのRB信号を、2フレームの低解像度実画像のRB信号として超解像処理部48r,48bに出力し、G信号処理部702が、低解像度実画像Fp,FqそれぞれのG信号を加重加算することで、1フレームの低解像度実画像のG信号として超解像処理部48gに出力する。
このように、本実施形態によると、入力画像加重加算部47では、加重加算する低解像度実画像の選択を色信号毎に行われる。そのため、超解像処理部48として、各色信号に対応した超解像処理部48r,48g,48bを備えることで、入力画像加重加算部47より与えられる低解像度実画像のフレーム数に応じた超解像処理を行う。この超解像処理部48r,48g,48bそれぞれの超解像処理動作は、第1の実施形態で説明した超解像処理動作と同様である。
<第5の実施形態>
本発明の第5の実施形態について、図面を参照して説明する。本実施形態の撮像装置における画像処理部は、超解像処理部における動作が、第1の実施形態のものと異なる。図16は、本実施形態の撮像装置における画像処理部の構成を示すブロック図である。尚、図16に示す画像処理部において、図4に示す画像処理部における構成部分と同一の目的とする構成部分については、同一の符号を付してその詳細な説明は省略する。
即ち、本実施形態の撮像装置における画像処理部4では、フレームメモリ41〜44,49、動き量検出部45、動き量記憶部46、信号処理部50それぞれが、第1の実施形態と同様の動作を行う。又、入力画像加重加算部47は、第1〜第3の実施形態と同様の動作を行う。よって、以下では、このような画像処理部4における超解像処理部48について説明する。
本実施形態の撮像装置における超解像処理部48は、第1〜第4の実施形態で説明した超解像処理部48と異なり、図16に示すように、入力画像加重加算部47から入力される低解像度実画像に対する重み係数を算出する重み係数算出部485を備える。そして、この重み係数算出部485で算出された重み係数が高解像度更新量算出部483に与えられることで、超解像処理を行う際に重み係数を用いた演算を行う。このとき、重み係数算出部485では、入力画像加重加算部47で加重加算された低解像度実像画像に対する重み係数が大きくなるように、超解像処理に使用される低解像度実画像それぞれに対する重み係数が設定される。
このように構成される超解像処理部48では、重み係数算出部485によって、第1の実施形態と同様に高解像度更新量算出部483で算出された勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WbT・(Wb・X−Yb)+WcT・(Wc・X−Yc)+WdT・(Wd・X−Yd)+γCT・C・X})における、低解像度実画像と低解像度推定画像との間の二乗誤差による差分に与える重み係数が、入力画像加重加算部47での処理動作に基づいて設定される。
このとき、入力画像加重加算部47において、低解像度実画像Fa〜Fdのいずれに対しても加重加算が成されなかった場合は、重み係数算出部485で算出される重み係数が全て1とされる。よって、高解像度更新量算出部483によって、勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WbT・(Wb・X−Yb)+WcT・(Wc・X−Yc)+WdT・(Wd・X−Yd)+γCT・C・X})が求められることで、減算部484によって、この勾配∂I/∂Xによる高解像度画像Fxの更新が行われる。
又、入力画像加重加算部47において加重加算処理が成された場合、重み係数算出部485では、加重加算されて得られた低解像度実画像に対する重み係数が、加重加算の成されていない低解像度実画像に対する重み係数よりも大きくなるように、重み係数が設定される。このとき、例えば、加重加算されて得られた低解像度実画像に対する重み係数が、加重加算の成されていない低解像度実画像に対する重み係数の2倍になるように設定するものとしても構わない。
よって、例えば、入力画像加重加算部47において、低解像度実画像Fb,Fcが加重加算されて低解像度実画像Feが得られ、3フレームの低解像度実画像Fa,Fd,Feが、超解像処理部48に入力される場合、重み係数算出部485において、3フレームの低解像度実画像Fa,Fd,Feそれぞれに対する重み係数Ka,Kd,Keが算出される。このとき、重み係数Keが重み係数Ka,Kdよりも大きい値に設定されるとともに、重み係数Ka,Kd,Keの和が1とされる。例えば、重み係数Ka,Keを等しい値とするとともに、重み係数Keを重み係数Ka,Kdの2倍となる値とすると、Ka=Kd=1/4、Ke=1/2となる。
又、3フレームの低解像度実画像Fa,Fd,Feが、超解像処理部48に入力される場合、高解像度更新量算出部483において、勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WdT・(Wd・X−Yd)+WeT・(We・X−Ye)+γCT・C・X})が算出される。よって、高解像度更新量算出部483では、低解像度実画像Fa,Fd,Feに対して設定された係数Ka,Kd,Keが、勾配∂I/∂Xにおける、低解像度実画像と低解像度推定画像との間の二乗誤差(Wa・X−Ya)、(Wd・X−Yd)、(We・X−Ye)に乗算される。
これにより、高解像度更新量算出部483は、加重加算することでノイズを抑圧した低解像度画像の値に重み付けした勾配∂J/∂X(=2×{WaT・Ka・(Wa・X−Ya)+WbT・Kd・(Wd・X−Yd)+WeT・Ke・(We・X−Ye)+γCT・C・X})を高解像度画像の更新量として算出する。そして、高解像度更新量算出部443で算出された勾配∂J/∂Xによる更新量が減算部484に与えられて、この勾配∂J/∂Xによる高解像度画像Fxの更新が行われる。
この本実施形態の超解像処理部48の構成例を、図17に示す。図17は、超解像処理部48の内部構成を示すブロック図である。尚、この図17による超解像処理部の構成部分において、図11の超解像処理部内における構成部分と同一となる部分については、同一の符号を付して、その詳細な説明は省略する。
図17に示す超解像処理部48は、図11の構成に更に、入力画像加重加算部47における処理動作に基づいて重み係数を設定する重み係数算出部485と、重み係数算出部485で算出された重み係数Ka〜Kdを減算部313〜316からの値に対して乗算して乗算部317〜320に出力する乗算部327〜330とを備えた構成となる。この超解像処理部48において、図11と同一の構成部分については、第1の実施形態で説明した動作と同様の動作を行う。
このように構成される超解像処理部48において、入力画像加重加算部47から4フレームの低解像度実画像Fa〜Fdが入力されたとき、重み係数算出部485により、重み係数Ka〜Kdそれぞれが1とされる。そして、乗算部309〜312,317〜320,327〜330及び減算部313〜316全てが動作することによって、勾配∂I/∂X(=2×{WaT・(Wa・X−Ya)+WbT・(Wb・X−Yb)+WcT・(Wc・X−Yc)+WdT・(Wd・X−Yd)+γCT・C・X})が算出される。
又、入力画像加重加算部47から3フレームの低解像度実画像Fa,Fb,Fe(尚、低解像度実画像Feは、低解像度実画像Fc,Fdが加重加算されて得られる。)が入力されたとき、パラメータ算出部304,308、乗算部312,320,330、及び減算部316の動作を停止させる。又、重み係数算出部485により、乗算部327〜329に与える係数Ka,Kb,Keが算出される。これにより、乗算部309〜311,317〜319,327〜329及び減算部313〜315が動作して、勾配∂J/∂X(=2×{WaT・Ka・(Wa・X−Ya)+WbT・Kb・(Wb・X−Yb)+WeT・Ke・(We・X−Ye)+γCT・C・X})が算出される。
同様に、入力画像加重加算部47から3フレームの低解像度実画像Fa,Fd,Fe(尚、低解像度実画像Feは、低解像度実画像Fb,Fcが加重加算されて得られる。)が入力されたとき、パラメータ算出部303,307、乗算部311,319,329、及び減算部315の動作を停止させる。又、重み係数算出部485により、乗算部327,328,330に与える係数Ka,Ke,Kdが算出される。これにより、勾配∂J/∂X(=2×{WaT・Ka・(Wa・X−Ya)+WdT・Kd・(Wd・X−Yd)+WeT・Ke・(We・X−Ye)+γCT・C・X})が算出される。
又、入力画像加重加算部47から3フレームの低解像度実画像Fc,Fd,Fe(尚、低解像度実画像Feは、低解像度実画像Fa,Fbが加重加算されて得られる。)が入力されたとき、パラメータ算出部302,306、乗算部310,318,328、及び減算部314の動作を停止させる。又、重み係数算出部485により、乗算部327,329,330に与える係数Ke,Kc,Kdが算出される。これにより、勾配∂J/∂X(=2×{WcT・Kc・(Wc・X−Yc)+WdT・Kd・(Wd・X−Yd)+WeT・Ke・(We・X−Ye)+γCT・C・X})が算出される。
このように、本実施形態では、係数Ka〜Keについて、加重加算されている低解像度実画像であるか否かによって、その値が設定されるものとしたが、この加重加算されているか否かを基準として設定することだけに限定されなくてもよい。例えば、基準画像(注目フレーム)となる低解像度実画像に対する係数が大きくなるように設定しても構わないし、基準画像(注目フレーム)となる低解像度実画像との動き量が小さい低解像度実画像ほど、その値が大きくなるように係数を設定しても構わない。又、基準画像(注目フレーム)となる低解像度実画像に時間的に近い低解像度実画像ほど、その値が大きくなるように係数を設定しても構わない。更に、本実施形態で説明したように、加重加算されている低解像度実画像であるか否かをも組み合わせて考慮することで、各係数の値が設定されるものとしても構わない。
尚、本実施形態において、第3の実施形態のように、低解像度実画像において画素単位の位置ズレ補正を行って、加重加算処理の可否を決定するものとしても構わない。このとき、第4の実施形態のように、イメージセンサ1を、図14のように、RGBによる3原色の色フィルタがベイヤ配列により設置された構成されたとき、色信号毎に加重加算を行う低解像度実画像の選択が行われるとともに、超解像処理部48についても、各色信号に構成されることとなる。即ち、図15に示す超解像処理部48r,48g,48bが、重み係数算出部485を備えた超解像処理部として構成される。
又、第3〜第5の実施形態においても、第1及び第2の実施形態と同様、第1及び第2の実施形態における条件に基づいて加重加算を行うために低解像度実画像を選択することができるものであれば、3フレーム以上となるNフレームの低解像度実画像を扱うものであっても構わない。このとき、入力画像加重加算部47は、Nフレームの低解像度実画像が入力されて、2フレーム以上Nフレーム以下のMフレームの低解像度実画像を超解像処理部48に出力する。
更に、上述の説明において、図1に示すような構成の撮像装置を例に挙げて、本発明における画像処理方法について説明したが、撮像装置に限らず、液晶ディスプレイやプラズマテレビなどの画像のデジタル処理を行う表示装置においても、本発明における画像処理方法を利用可能である。図18に、本発明における画像処理方法を行う画像処理装置(「画像処理部」に相当)を備えた表示装置を示す。
図18に示す表示装置は、図1に示す撮像装置と同様、画像処理部4、伸長処理部8、ディスプレイ部9、音声出力回路部10、スピーカ部11、タイミングジェネレータ12、CPU13、メモリ14、操作部15、及び、バス回線16,17を備える。そして、外部で受信した放送信号を選局するチューナ部21と、チューナ部21で選局した放送信号を復調する復調部22と、外部から入力されたデジタル信号となる圧縮信号が入力されるインターフェース23とを、更に備える。
この図18の表示装置は、放送信号を受信する場合は、チューナ部21で所望のチャンネルの放送信号を選局した後、復調部22で放送信号を復調することで、MPEG圧縮符号方式による圧縮信号となるデジタル信号が得られる。このデジタル信号が伸長処理部8に与えられると、圧縮信号であるデジタル信号に対して、MPEG圧縮符号方式による伸長処理が施される。
そして、操作部15によって画像の高解像度化が指示されると、伸長処理部8で伸長処理して得られた画像信号が、画像処理部4に与えられて、上述の低解像度実画像の選択処理や超解像処理が行われることで、高解像度画像が生成される。その後、生成された高解像度画像による画像信号がディスプレイ部9に与えられて、画像再生がなされる。又、伸長処理部8の伸長処理で得られた音声信号が、音声出力回路部10を通じてスピーカ部11に与えられることで、音声が再生出力される。
又、図1の撮像装置又は図18の表示装置において、画像処理部4で超解像処理が成される画像について、動画像であっても構わないし、静止画像であっても構わない。尚、上述では、動画像となる画像信号が入力されたときの動作を中心に、各処理動作の説明を行っている。