(57)【要約】【課題】  この発明は、画像復元フィルタを用いて復元される画像に発生するリンギングを軽減できるようになるリンギング除去装置を提供することを目的とする。【解決手段】  画像劣化のある入力画像を画像復元フィルタを用いて劣化のない画像に復元する画像復元手段、および入力画像と画像復元手段によって得られた復元画像とを加重平均する加重平均手段を備えており、加重平均手段は、画像復元画像のうちリンギングが目立つ部分では入力画像の度合いが強くなるように入力画像と復元画像とを加重平均し、リンギングが目立たない部分では復元画像の度合いが強くなるように入力画像と復元画像とを加重平均する。【選択図】  図１
2006129236.tif 000002
【特許請求の範囲】
【請求項１】
画像劣化のある入力画像を画像復元フィルタを用いて劣化のない画像に復元する画像復元手段、および
入力画像と、画像復元手段によって得られた復元画像とを加重平均する加重平均手段を備えており、
加重平均手段は、画像復元画像のうちリンギングが目立つ部分では入力画像の度合いが強くなるように入力画像と復元画像とを加重平均し、リンギングが目立たない部分では復元画像の度合いが強くなるように入力画像と復元画像とを加重平均することを特徴とするリンギング除去装置。
【請求項２】
画像劣化のある入力画像を画像復元フィルタを用いて劣化のない画像に復元する画像復元手段、
入力画像の画素毎のエッジ強度を算出するエッジ強度算出手段、および
エッジ強度算出手段によって算出された画素毎のエッジ強度に基づいて、入力画像と、画像復元手段によって得られた復元画像とを画素毎に加重平均する加重平均手段を備えており、
加重平均手段は、エッジ強度の小さい画素に対しては、入力画像の度合いが強くなるように入力画像と復元画像とを加重平均し、エッジ強度の大きい画素に対しては、復元画像の度合いが強くなるように入力画像と復元画像とを加重平均することを特徴とするリンギング除去装置。
【請求項３】
画像劣化のある入力画像の画素毎のエッジ強度を算出するエッジ強度算出手段、
エッジ強度算出手段によって算出された画素毎のエッジ強度に基づいて、画像復元強度が異なる複数の画像復元フィルタから、画素毎に１つの画像復元フィルタを選択する選択手段、および
入力画像の各画素の画素値を、その画素に対して選択された画像復元フィルタを用いて劣化のない画素値に復元する画像復元手段を備えており、
選択手段は、エッジ強度の小さい画素に対しては、復元強度の弱い画像復元フィルタを選択し、エッジ強度の大きい画素に対しては、復元強度の強い画像復元フィルタを選択することを特徴とするリンギング除去装置。
【請求項４】
リンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
コンピュータを、
画像劣化のある入力画像を画像復元フィルタを用いて劣化のない画像に復元する画像復元手段、および
入力画像と、画像復元手段によって得られた復元画像とを加重平均する加重平均手段、として機能させるためのリンギング除去プログラムを記録しており、
加重平均手段は、画像復元画像のうちリンギングが目立つ部分では入力画像の度合いが強くなるように入力画像と復元画像とを加重平均し、リンギングが目立たない部分では復元画像の度合いが強くなるように入力画像と復元画像とを加重平均することを特徴とするリンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項５】
リンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
コンピュータを、
画像劣化のある入力画像を画像復元フィルタを用いて劣化のない画像に復元する画像復元手段、
入力画像の画素毎のエッジ強度を算出するエッジ強度算出手段、および
エッジ強度算出手段によって算出された画素毎のエッジ強度に基づいて、入力画像と、画像復元手段によって得られた復元画像とを画素毎に加重平均する加重平均手段、
として機能させるためのリンギング除去プログラムを記録しており、
加重平均手段は、エッジ強度の小さい画素に対しては、入力画像の度合いが強くなるように入力画像と復元画像とを加重平均し、エッジ強度の大きい画素に対しては、復元画像の度合いが強くなるように入力画像と復元画像とを加重平均することを特徴とするリンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項６】
リンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
コンピュータを、
画像劣化のある入力画像の画素毎のエッジ強度を算出するエッジ強度算出手段、
エッジ強度算出手段によって算出された画素毎のエッジ強度に基づいて、画像復元強度が異なる複数の画像復元フィルタから、画素毎に１つの画像復元フィルタを選択する選択手段、および
入力画像の各画素の画素値を、その画素に対して選択された画像復元フィルタを用いて劣化のない画素値に復元する画像復元手段、
として機能させるためのリンギング除去プログラムを記録しており、
選択手段は、エッジ強度の小さい画素に対しては、復元強度の弱い画像復元フィルタを選択し、エッジ強度の大きい画素に対しては、復元強度の強い画像復元フィルタを選択することを特徴とするリンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、リンギング除去装置およびリンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
静止画手ぶれ補正技術は、静止画撮影における手ぶれを軽減する技術であり、手ぶれを検出して、その検出結果に基づいて画像を安定化することで実現される。
【０００３】
手ぶれを検出する方法には、手ぶれセンサ（角速度センサ）を用いる方法と、画像を解析して検出する電子式とがある。画像を安定化させる方法には、レンズや撮像素子を安定化させる光学式と、画像処理により手ぶれによるぼけを除去する電子式とがある。
【０００４】
一方、完全電子式の手ぶれ補正技術、すなわち、撮影された一枚の手ぶれ画像だけを解析・処理することで、手ぶれの除去された画像を生成する技術は、実用レベルに達していない。特に、手ぶれセンサで得られる精度の手ぶれ信号を、一枚の手ぶれ画像を解析することによって求めることは困難である。
【０００５】
したがって、手ぶれセンサを用いて手ぶれを検出し、その手ぶれデータを用いて画像処理により手ぶれぼけを除去することが現実的である。画像処理によるぼけの除去を画像復元と呼ぶ。また、手ぶれセンサと画像復元による手法を、ここでは電子式手ぶれ補正と呼ぶことにする。
【０００６】
ところで、手ぶれやピンボケなどの画像の劣化過程が明確であるならば、ウィーナフィルタや一般逆フィルタと呼ばれる画像復元フィルタを用いることで、その劣化を軽減することが可能である。しかし、その副作用として、画像のエッジ部の周辺部にリンギングと呼ばれる波状の劣化が発生する。これは、単純なエッジ強調処理やアンシャープマスキングなどに見られる、エッジ部前後のオーバーシュート、アンダーシュートと類似の現象である。
【特許文献１】特開平８−２６５５７２号公報
【特許文献２】特開２００４−８８５６７号公報
【特許文献２】特開平１１−２４１２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
この発明は、画像復元フィルタを用いて復元される画像に発生するリンギングを軽減できるようになるリンギング除去装置およびリンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００８】
請求項１に記載の発明は、画像劣化のある入力画像を画像復元フィルタを用いて劣化のない画像に復元する画像復元手段、および入力画像と、画像復元手段によって得られた復元画像とを加重平均する加重平均手段を備えており、加重平均手段は、画像復元画像のうちリンギングが目立つ部分では入力画像の度合いが強くなるように入力画像と復元画像とを加重平均し、リンギングが目立たない部分では復元画像の度合いが強くなるように入力画像と復元画像とを加重平均することを特徴とする。
【０００９】
請求項２に記載の発明は、画像劣化のある入力画像を画像復元フィルタを用いて劣化のない画像に復元する画像復元手段、入力画像の画素毎のエッジ強度を算出するエッジ強度算出手段、およびエッジ強度算出手段によって算出された画素毎のエッジ強度に基づいて、入力画像と、画像復元手段によって得られた復元画像とを画素毎に加重平均する加重平均手段を備えており、加重平均手段は、エッジ強度の小さい画素に対しては、入力画像の度合いが強くなるように入力画像と復元画像とを加重平均し、エッジ強度の大きい画素に対しては、復元画像の度合いが強くなるように入力画像と復元画像とを加重平均することを特徴とする。
【００１０】
請求項３に記載の発明は、画像劣化のある入力画像の画素毎のエッジ強度を算出するエッジ強度算出手段、エッジ強度算出手段によって算出された画素毎のエッジ強度に基づいて、画像復元強度が異なる複数の画像復元フィルタから、画素毎に１つの画像復元フィルタを選択する選択手段、および入力画像の各画素の画素値を、その画素に対して選択された画像復元フィルタを用いて劣化のない画素値に復元する画像復元手段を備えており、選択手段は、エッジ強度の小さい画素に対しては、復元強度の弱い画像復元フィルタを選択し、エッジ強度の大きい画素に対しては、復元強度の強い画像復元フィルタを選択することを特徴とする。
【００１１】
請求項４に記載の発明は、リンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体であって、コンピュータを、画像劣化のある入力画像を画像復元フィルタを用いて劣化のない画像に復元する画像復元手段、および入力画像と、画像復元手段によって得られた復元画像とを加重平均する加重平均手段として機能させるためのリンギング除去プログラムを記録しており、加重平均手段は、画像復元画像のうちリンギングが目立つ部分では入力画像の度合いが強くなるように入力画像と復元画像とを加重平均し、リンギングが目立たない部分では復元画像の度合いが強くなるように入力画像と復元画像とを加重平均することを特徴とする。
【００１２】
請求項５に記載の発明は、リンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体であって、コンピュータを、画像劣化のある入力画像を画像復元フィルタを用いて劣化のない画像に復元する画像復元手段、入力画像の画素毎のエッジ強度を算出するエッジ強度算出手段、およびエッジ強度算出手段によって算出された画素毎のエッジ強度に基づいて、入力画像と、画像復元手段によって得られた復元画像とを画素毎に加重平均する加重平均手段として機能させるためのリンギング除去プログラムを記録しており、加重平均手段は、エッジ強度の小さい画素に対しては、入力画像の度合いが強くなるように入力画像と復元画像とを加重平均し、エッジ強度の大きい画素に対しては、復元画像の度合いが強くなるように入力画像と復元画像とを加重平均することを特徴とする。
【００１３】
請求項６に記載の発明は、リンギング除去プログラムを記録したコンピュータ読み取り可能な記録媒体であって、コンピュータを、画像劣化のある入力画像の画素毎のエッジ強度を算出するエッジ強度算出手段、エッジ強度算出手段によって算出された画素毎のエッジ強度に基づいて、画像復元強度が異なる複数の画像復元フィルタから、画素毎に１つの画像復元フィルタを選択する選択手段、および入力画像の各画素の画素値を、その画素に対して選択された画像復元フィルタを用いて劣化のない画素値に復元する画像復元手段として機能させるためのリンギング除去プログラムを記録しており、選択手段は、エッジ強度の小さい画素に対しては、復元強度の弱い画像復元フィルタを選択し、エッジ強度の大きい画素に対しては、復元強度の強い画像復元フィルタを選択することを特徴とする。
【発明の効果】
【００１４】
この発明によれば、画像復元フィルタを用いて復元される画像に発生するリンギングを軽減できるようになる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して、この発明をデジタルカメラに適用した場合の実施例について説明する。
【実施例１】
【００１６】
〔１〕手ぶれ補正処理回路の構成
図１は、デジタルカメラに設けられた手ぶれ補正処理回路の構成を示している。
【００１７】
１ａ、１ｂは、角速度を検出するための角速度センサである。一方の角速度センサ１ａはカメラのパン方向の角速度を、他方の角速度センサ１ｂはカメラのチルト方向の角速度をそれぞれ検出する。２は、角速度センサ１ａ、１ｂによって検出された２軸の角速度に基づいて、画像復元フィルタの係数を算出する画像復元フィルタ計算部である。３は、画像復元フィルタ計算部２によって算出された係数に基づいて、撮像画像（手ぶれ画像）に対して画像復元処理を行う画像復元処理部である。４は、画像復元処理部３によって得られた復元画像からリンギングを除去するためのリンギング除去処理部である。５は、リンギング除去処理部４によって得られた画像に対してアンシャープマスキング処理を行うアンシャープマスキング処理部である。
【００１８】
以下、画像復元フィルタ計算部２、画像復元処理部３およびリンギング除去処理部４について説明する。
【００１９】
〔２〕画像復元フィルタ計算部２の説明
画像復元フィルタ計算部２は、角速度センサ１ａ，１ｂによって検出された角速度データ（手ぶれ信号）を動きベクトルに変換する手ぶれ信号／動きベクトル変換処理部２１、手ぶれ信号／動きベクトル変換処理部２１によって得られた動きベクトルを、画像のボケを表す手ぶれ関数（ＰＳＦ：Point Spread Function)に変換する動きベクトル／手ぶれ関数変換処理部２２および動きベクトル／手ぶれ関数変換処理部２２によって得られた手ぶれ関数を一般逆フィルタ（画像復元フィルタ）に変換する手ぶれ関数／一般逆フィルタ変換処理部２３を備えている。
【００２０】
〔２−１〕手ぶれ信号／動きベクトル変換処理部２１についての説明
手ぶれの元データは、撮影開始から撮影終了までの間の角速度センサ１ａ、１ｂの出力データである。角速度センサ１ａ、１ｂを用いてカメラの露光時期と同期させることで、撮影開始と共に所定のサンプリング間隔ｄｔ[sec] でパン方向およびチルト方向の角速度を計測し、撮影終了までのデータを得る。サンプリング間隔ｄｔ[sec] は、たとえば、１ｍｓｅｃである。  
【００２１】
図２に示すように、例えば、カメラのパン方向の角速度θ’[deg/sec] は、角速度センサ１ａによって電圧Ｖg [mV]に変換された後、アンプ１０１によって増幅される。アンプ１０１から出力される電圧Ｖa [mV] はＡ／Ｄ変換器１０２によってデジタル値ＤL [step]に変換される。デジタル値として得られたデータを角速度に変換するには、センサ感度Ｓ[mV/deg/sec]、アンプ倍率Ｋ[ 倍] 、Ａ／Ｄ変換係数Ｌ[mV/step] を用いて計算する。なお、アンプおよびＡ／Ｄ変換器は、各角速度センサ１ａ、１ｂ毎に設けられている。これらのアンプおよびＡ／Ｄ変換器は、手ぶれ信号／動きベクトル変換処理部２１内に設けられている。
【００２２】
角速度センサ１ａによって得られる電圧値Ｖg [mV]は、角速度θ’[deg/sec] の値と比例する。このときの比例定数はセンサ感度であるので、Ｖg [mV]は、次式（１）で表される。
【００２３】
Ｖg ＝Ｓθ’…（１）
【００２４】
また、アンプ１０１は電圧値を増幅するだけなので、増幅された電圧Ｖa [mV] は、次式（２）で表される。
【００２５】
Ｖa ＝ＫＶg …（２）
【００２６】
アンプ１０１で増幅された電圧値Ｖa [mV] はＡ／Ｄ変換され、ｎ[step]（例えば、−５１２〜５１２）のデジタル値ＤL [step]を使って表現される。Ａ／Ｄ変換係数をＬ[mV/step] とすると、デジタル値ＤL [step]は、次式（３）で表される。
【００２７】
ＤL ＝Ｖa ／Ｌ…（３）
【００２８】
上記式（１）〜（３）を用いることで、次式（４）に示すように、センサデータから角速度を求めることができる。
【００２９】
θ’＝（Ｌ／ＫＳ）ＤL …（４）
【００３０】
撮影中の角速度データから、撮影された画像上でどれだけのぶれが生じたかを計算することができる。この画像上でのみかけの動きを動きベクトルと呼ぶ。
【００３１】
角速度データの１つのサンプル値から次のサンプル値までにカメラに生じた回転量をθ[deg] とする。この間、角速度一定でカメラが回転すると仮定し、サンプリング周波数をf ＝１／ｄｔ[Hz]とすると、θ[deg] は次式（５）で表される。
【００３２】
θ＝θ’／ｆ＝（Ｌ／ＫＳｆ）ＤL …（５）
【００３３】
図３に示すように、ｒ[mm]を焦点距離（３５[mm]フィルム換算）とすると、カメラの回転量θ[deg] から画面上の移動量ｄ[mm]が次式（６）により求められる。
【００３４】
ｄ＝ｒｔａｎθ…（６）
【００３５】
ここで求められた移動量ｄ[mm]は、３５[mm]フィルム換算時の手ぶれの大きさで、単位は[mm]である。実際に計算処理するときには、画像の大きさをデジタルカメラの画像の大きさの単位[pixel] で考えなければならない。
【００３６】
３５[mm]フィルム換算の画像と、デジタルカメラで撮影した[pixel] 単位の画像は縦横比も異なるので、次のように計算を行う。図４に示すように、３５[mm]フィルム換算時は画像サイズの横×縦が３６[mm]×２４[mm]と決まっている。デジタルカメラで撮影した画像の大きさをＸ[pixel] ×Ｙ[pixel] とし、水平方向（パン方向）のぶれをｘ[pixel] 、垂直方向（チルト方向）のぶれをｙ[pixel] とすると、変換式は次式（７）、（８）となる。
【００３７】
ｘ＝ｄx （Ｘ／３６）＝ｒｔａｎθx （Ｘ／３６）…（７）
ｙ＝ｄy （Ｙ／２４）＝ｒｔａｎθy （Ｙ／２４）…（８）
【００３８】
上記式（７）、（８）には、ｄとθに添字のｘとｙが使用されているが、添字ｘは水平方向の値であることを、添字ｙは垂直方向の値であることを示している。
【００３９】
上記式（１）〜（８）をまとめると、水平方向（パン方向）のぶれｘ[pixel] 、垂直方向（チルト方向）のぶれｙ[pixel] は、次式（９）、（１０）で表される。
【００４０】
ｘ＝ｒｔａｎ｛（Ｌ／ＫＳｆ）ＤLx｝Ｘ／３６…（９）
ｙ＝ｒｔａｎ｛（Ｌ／ＫＳｆ）ＤLy｝Ｙ／２４…（１０）
【００４１】
この変換式（９）、（１０）を用いることで、デジタル値として得られたカメラの各軸の角速度データから画像のぶれ量（動きベクトル）を求めることができる。
【００４２】
撮影中の動きベクトルは、センサから得られた角速度のデータの数だけ（サンプル点の数だけ）得ることができ、それらの始点と終点を順番に結んでいくと、画像上での手ぶれの軌跡になる。また、各ベクトルの大きさを見ることで、その時点での手ぶれの速度がわかる。
【００４３】
〔２−２〕動きベクトル／手ぶれ関数変換処理部２２について
手ぶれを空間フィルタを使って表すことができる。図５の左側の図で示される手ぶれの軌跡（カメラがぶれたときに画像上である一点が描いた軌跡、画像のぶれ量）に合わせて、オペレータの要素に重みを加え空間フィルタ処理を行うと、フィルタリング過程において画素の濃淡値が手ぶれの軌跡に応じた近傍画素の濃淡値のみを考慮するようになるので、手ぶれ画像を作成することができる。
【００４４】
この軌跡に合わせて重み付けしたオペーレータのことをPoint Spread Function(PSF)と呼び、手ぶれの数学モデルとして使用する。ＰＳＦの各要素の重みは、その要素を手ぶれ軌跡が通過する時間に比例した値であって、各要素の重みの総和が１になるように正規化された値でとなる。すなわち、動きベクトルの大きさの逆数に比例した重みとする。手ぶれが画像に与える影響を考えたとき、遅く動いたところの方が画像に大きな影響を与えているからである。
【００４５】
図５の中央の図は、手ぶれの動きが等速であると仮定した場合のＰＳＦを表し、図５の右側の図は、実際の手ぶれの動きの大きさを考慮した場合のＰＳＦを表している。図５の右側の図においては、ＰＳＦの重みの低い（動きベクトルの大きさが大きい）要素を黒く表示し、重みの高い（動きベクトルの大きさが小さい）要素を白く表示している。
【００４６】
上記〔２−１〕で得られた動きベクトル（画像のぶれ量）は手ぶれの軌跡と、軌跡の速度をデータとして持つ。
【００４７】
ＰＳＦを作成するには、まず、手ぶれの軌跡からＰＳＦの重みをかける要素を決定する。そして、手ぶれの速度からＰＳＦの要素にかける重みを決定する。
【００４８】
上記〔２−１〕で得られた一連の動きベクトルをつなぎ合わせることで折れ線近似された手ぶれの軌跡が得られる。この軌跡は小数点以下の精度を持つが、これを整数化することでＰＳＦにおいて重みをかける要素を決定する。そのために、この実施例では、Bresenham の直線描画アルゴリズムを用いてＰＳＦにおいて重みをかける要素を決定する。Bresenham の直線描画アルゴリズムとは、デジタル画面上で任意の2 点を通る直線を引きたい時に最適なドット位置を選択するアルゴリズムである。                                    
【００４９】
Bresenham の直線描画アルゴリズムを図６の例を用いて説明する。図６において矢印のついた直線は動きベクトルを示している。
【００５０】
（ａ）ドット位置の原点（０，０）から出発し、動きベクトルの水平方向の要素を１つ増やす。
（ｂ）動きベクトルの垂直方向の位置を確認し、この垂直方向位置が前のドットの垂直方向位置に比べて１より大きくなった場合にはドット位置の垂直方向を１つ増やす。
（ｃ）再び動きベクトルの水平方向の要素を１つ増やす。
【００５１】
このような処理を動きベクトルの終点まで繰り返すことにより、動きベクトルが通る直線をドット位置で表現することができる。                                                
【００５２】
ＰＳＦの要素にかける重みは、動きベトクル毎にベクトルの大きさ（速度成分）が異なることを利用して決定する。重みは動きベクトルの大きさの逆数をとり、各動きベクトルに対応する要素に重みを代入する。ただし、各要素の重みの総和が１になるように、各要素の重みを正規化する。図７に図６の動きベクトルにより得られるＰＳＦを示す。速度の速いところ（動きベクトルの長いところ）は重みが小さくなり、速度の遅いところ（動きベクトルの短いところ）は重みが大きくなる。
【００５３】
〔２−３〕手ぶれ関数／一般逆フィルタ変換処理部２３について
画像は水平方向にＮx 画素、垂直方向にＮy 画素の解像度でデジタル化されているものとする。水平方向にｉ番目、垂直方向にｊ番目の位置にある画素の値をｐ（ｉ，ｊ）で表す。空間フィルタによる画像の変換とは、注目画素の近傍画素の畳み込みによって変換をモデル化するものである。畳み込みの係数をｈ（ｌ，ｍ）とする。ここで、簡単のため、−ｎ＜ｌ，ｍ＜ｎとすると、注目画素の変換は次式（１１）によって表現することができる。また、ｈ（ｌ，ｍ）自身を空間フィルタと呼んだり、フィルタ係数と呼んだりする。変換の性質はｈ（ｌ，ｍ）の係数値によって決まる。
【００５４】
【数１】
2006129236.tif 000003
【００５５】
デジタルカメラなどの撮像装置で点光源を観察した場合、画像の形成過程に劣化がないと仮定すれば、画像上に観察される像は、ある一点だけが０以外の画素値を持ち、それ以外の画素値は０となる。実際の撮像装置は劣化過程を含むので、点光源を観察しても、その像は一点にならず、広がった像になる。手ぶれが発生した場合、点光源は手ぶれに応じた軌跡を画面上に生成する。
【００５６】
点光源に対する観察画像の画素値に比例した値を係数として持ち、係数値の総和が１になる空間フィルタをPoint Spread Function(PSF 、点広がり関数 )と呼ぶ。この実施例では、ＰＳＦとして動きベクトル／手ぶれ関数変換処理部２２によって得られたＰＳＦを用いる。
【００５７】
ＰＳＦを縦横（２ｎ＋１）×（２ｎ＋１）の空間フィルタｈ（ｌ，ｍ）、−ｎ＜ｌ，ｍ＜ｎでモデル化するとき、各画素について、ボケの無い画像の画素値ｐ（ｉ，ｊ）とボケのある画像の画素値ｐ’（ｉ，ｊ）とは、上記式（１１）の関係になる。ここで、実際に観察できるのは、ボケた画像の画素値ｐ’（ｉ，ｊ）であり、ボケの無い画像の画素値ｐ（ｉ，ｊ）は何らかの方法で計算する必要がある。
【００５８】
上記式（１１）を全ての画素について書き並べると、次式（１２）に示すようになる。      
【００５９】
【数２】
2006129236.tif 000004
【００６０】
これらの式をまとめて行列表現することが可能であり、次式（１３）となる。ここで、Ｐは元画像をラスター走査順に一元化したものである。
【００６１】
Ｐ’＝Ｈ×Ｐ    …（１３）
【００６２】
Ｈの逆行列Ｈ-1が存在すれば、Ｐ＝Ｈ-1×Ｐを計算することによって、劣化した画像Ｐ’から劣化の無い画像Ｐを求めることが可能であるが、一般にはＨの逆行列は存在しない。逆行列が存在しない行列に対して、一般逆行列ないしは擬似逆行列と呼ばれるものが存在する。次式（１４）に一般逆行列の例を示す。                                          
【００６３】
Ｈ* ＝（Ｈt ・Ｈ＋γ・Ｉ）-1・Ｈt   …（１４）
【００６４】
ここでＨ* はＨの一般逆行列、Ｈt はＨの転置行列、γはスカラー、ＩはＨt ・Ｈと同じサイズの単位行列である。Ｈ* を用いて次式（１５）を計算することで、観察された手ぶれ画像Ｐ’から手ぶれが補正された画像Ｐを得ることができる。γは補正の強さを調整するパラメータである。γが小さければ強い補正処理となり、γが大きければ弱い補正処理となる。
【００６５】
Ｐ’＝Ｈ* ×Ｐ    …（１５）
【００６６】
画像サイズを６４０×４８０とした場合、上記式（１５）のＰは３０７，２００×１の行列、Ｈ* は３０７，２００×３０７，２００の行列となる。このような非常に大きな行列となるため、上記式（１４）、（１５）を直接用いることは実用的ではない。そこで、次のような方法で計算に用いる行列のサイズを小さくする。
【００６７】
まず、上記式（１５）において、Ｐの元になる画像のサイズを６３×６３など、比較小さなサイズにする。６３×６３の画像であれば、Ｐは３９６９×１の行列、Ｈ* は３９６９×３９６９の行列となる。Ｈ* はボケ画像全体を補正された画像全体に変換する行列であり、Ｈ* の各行とＰの積は各画素の補正を行う演算に相当する。Ｈ* の真ん中の行とＰの積は、６３×６３画素の元画像の、真ん中の画素に対する補正に該当する。Ｐは元画像をラスター走査順に一元化したものであったから、逆に、Ｈ* の真ん中の行を逆ラスター走査により２次元化することで、６３×６３のサイズの空間フィルタを構成することができる。このように構成した空間フィルタを一般逆フィルタ（以下、画像復元フィルタという）と呼ぶ。
【００６８】
このようにして作成した実用的なサイズの空間フィルタを、大きな画像全体の各画素に順次適用することで、ボケ画像を補正することが可能となる。なお、以上の手順で求めたボケ画像の復元フィルタにも、γであらわされる復元の強度を調整するパラメータが存在する。
【００６９】
〔３〕画像復元処理部３について
画像復元処理部３は、図１に示すように、フイルタ処理部３１、３２、３３を備えている。フイルタ処理部３１、３３はメディアンフィルタを用いてフィルタ処理を行う。フイルタ処理部３２は、画像復元フィルタ計算部２によって得られた画像復元フィルタを用いてフィルタ処理を行う。
【００７０】
カメラによって撮影された手ぶれ画像は、フィルタ処理部３１に送られ、メディアンフィルタを用いたフィルタ処理が行われ、ノイズが除去される。フィルタ処理部３１によって得られた画像は、フィルタ処理部３２に送られる。フィルタ処理部３２では、画像復元フィルタを用いたフィルタ処理が行われ、手ぶれ画像から手ぶれのない画像が復元される。フィルタ処理部３２によって得られた画像は、フィルタ処理部３３に送られ、メディアンフィルタを用いたフィルタ処理が行われ、ノイズが除去される。
【００７１】
〔４〕リンギング除去処理部４についての説明
リンギング除去処理部４は、図１に示すように、エッジ強度算出部４１、加重平均係数算出部４２および加重平均処理部４３を備えている。
【００７２】
カメラによって撮影された手ぶれ画像は、エッジ強度算出部４１に送られ、各画素毎にエッジ強度が算出される。エッジ強度の求め方について説明する。
【００７３】
図８に示すように、注目画素ｖ２２を中心とする３×３の領域を想定する。注目画素ｖ２２に対して、水平エッジ成分dhと垂直エッジ成分dvを算出する。エッジ成分の算出には、例えば、図９に示すPrewitt のエッジ抽出オペレータを用いる。図９（ａ）は水平エッジ抽出オペレータを示し、図９（ｂ）は垂直エッジ抽出オペレータを示している。
【００７４】
水平エッジ成分dhおよび垂直エッジ成分dvは、次式（１６）、（１７）によって求められる。
【００７５】
dh＝v11 ＋v12 ＋v13 −v31 −v32 −v33 …（１６）
dv＝v11 ＋v21 ＋v31 −v13 −v23 −v33 …（１７）
【００７６】
次に、水平エッジ成分dhおよび垂直エッジ成分dvから、注目画素ｖ２２のエッジ強度v ＿edgeを次式（１８）に基づいて算出する。
【００７７】
v ＿edge＝sqrt(dh ×dh＋dv×dv）  …（１８）
【００７８】
なお、注目画素ｖ２２のエッジ強度v ＿edgeとして、abs(dh) ＋abs(dv) を用いてもよい。また、このようにして得られたエッジ強度画像に対してさらに３×３のノイズ除去フィルタをかけてもよい。
【００７９】
エッジ強度算出部４１によって算出された各画素のエッジ強度v ＿edgeは、加重平均係数算出部４２に与えられる。加重平均係数算出部４２は、次式（１９）に基づいて、各画素の加重平均係数ｋを算出する。
【００８０】
If  v ＿edge＞ th  then  k＝1 
If  v ＿edge≦ th  then  k＝v ＿edge/th     …（１９）
【００８１】
th は十分に強いエッジであることを判定するための閾値である。つまり、v ＿edgeと加重平均係数ｋとの関係は、図１０に示すような関係となる。
【００８２】
加重平均係数算出部４２によって算出された各画素の加重平均係数ｋは、加重平均処理部４３に与えられる。画像復元処理部３によって得られた復元画像の画素値をv ＿fukugen とし、カメラによって撮像された手ぶれ画像の画素値をv ＿tebre とすると、加重平均処理部４３は、次式（２０）で表される計算を行うことにより、復元画像の画素値v ＿fukugen と手ぶれ画像の画素値v ＿tebre とを加重平均する。
【００８３】
v ＝k ×v ＿fukugen ＋（１−ｋ）×v ＿tebre     …（２０）
【００８４】
つまり、エッジ強度v ＿edgeが閾値ｔｈより大きな画素については、その位置に対応する復元画像のリンギングが目立たないので、画像復元処理部３によって得られた復元画像の画素値v ＿fukugen がそのまま出力される。エッジ強度v ＿edgeが閾値ｔｈ以下の画素については、エッジ強度v ＿edgeが小さいほど、復元画像のリンギングが目立つので、復元画像の度合いを弱くし、手ぶれ画像の度合いを強くする。
【００８５】
上記実施例では、エッジ強度v ＿edgeが大きい画素ほど、復元画像の度合いを強くし、エッジ強度v ＿edgeが小さい画素ほど、手ぶれ画像の度合いが大きくなるように、復元画像と手ぶれ画像とを加重加算することにより、エッジ部周辺に発生するリンギングを除去するようにしているが、次のようにしてリンギングを除去するようにしてもよい。
【００８６】
上述したように、ボケ画像の画像復元フィルタ（図１の３２）にも、γであらわされる復元の強度を調整するパラメータが存在している。したがって、復元の強度に応じた複数の種類の復元フィルタを生成することが可能である。そして、エッジ強度v ＿edgeが大きい画素を復元する際には、そこに対応する復元画像のリンギングが目立たないので、復元の強度が高い復元フィルタを用いて画像を復元し、エッジ強度v ＿edgeが小さい画素を復元する際には、そこに対応する復元画像のリンギングが目立つので、復元の強度が小さい復元フィルタを用いて画像を復元するようにする。このようにして、リンギングを防止する場合には、加重平均を行う必要がない。
【図面の簡単な説明】
【００８７】
【図１】デジタルカメラに設けられた手ぶれ補正処理回路の構成を示すブロック図である。
【図２】角速度センサ１ａの出力を増幅するアンプおよびアンプ出力をデジタル値に変換するＡ／変換器を示すブロック図である。
【図３】カメラの回転量θ[deg] と画面上の移動量ｄ[mm]との関係を示す模式図である。
【図４】３５[mm]フィルム換算の画像サイズと、デジタルカメラの画像サイズとを示す模式図である。
【図５】手ぶれを表現する空間フィルタ（ＰＳＦ）を示す模式図である。
【図６】Bresenham の直線描画アルゴリズムを説明するための模式図である。
【図７】図６の動きベクトルにより得られるＰＳＦを示す模式図である。
【図８】注目画素ｖ２２を中心とする３×３の領域を示す模式図である。
【図９】Prewitt のエッジ抽出オペレータを示す模式図である。
【図１０】エッジ強度v ＿edgeと加重平均係数ｋとの関係を示すグラフである。
【符号の説明】
【００８８】
１ａ、１ｂ  角速度センサ
２  画像復元フィルタ計算部
３  画像復元処理部
４  リンギング除去処理部
２１  手ぶれ信号／動きベクトル変換処理部
２２  動きベクトル／手ぶれ関数変換処理部
２３  手ぶれ関数／一般逆フィルタ変換処理部
３１、３３  メディアンフィルタ
３２  画像復元フィルタ
４１  エッジ強度算出部
４２  加重平均係数算出部
４３  加重平均処理部
【図１】
2006129236.tif 000005
【図２】
2006129236.tif 000006
【図３】
2006129236.tif 000007
【図４】
2006129236.tif 000008
【図５】
2006129236.tif 000009
【図６】
2006129236.tif 000010
【図７】
2006129236.tif 000011
【図８】
2006129236.tif 000012
【図９】
2006129236.tif 000013
【図１０】
2006129236.tif 000014