(57)【要約】  平滑化処理部１１は、入力画像に対して平滑化処理を行う。ぶれ範囲検出部１２は、平滑化処理部１１により得られる平滑化画像において、ぶれ範囲を検出する。補正量算出部１３は、ぶれ範囲検出部１２により検出されたぶれ範囲に属する各画素について、補正量を算出する。補正部１４は、補正量算出部１３により算出された補正量を利用して、入力画像を補正する。
2009144768.tif 000002
【特許請求の範囲】
【請求項１】
入力画像を平滑化する平滑化部と、
前記平滑化部により得られる平滑化画像において、ぶれ範囲を検出するぶれ範囲検出部と、
前記ぶれ範囲検出部により検出されたぶれ範囲に属する画素について、前記平滑化画像に基づいて、補正量を算出する補正量算出部と、
前記補正量算出部により算出された補正量を利用して前記入力画像を補正する補正部、
を有する画像補正装置。
【請求項２】
請求項１に記載の画像補正装置であって、
前記平滑化部は、複数の画素の輝度値を平均化する平滑化フィルタであり、
前記補正量算出部は、前記平滑化画像の輝度情報に基づいて、補正量を算出することを特徴とする画像補正装置。
【請求項３】
請求項１に記載の画像補正装置であって、
前記入力画像の画像サイズを検出するサイズ検出部をさらに備え、
前記平滑化部のフィルタサイズは、前記画像サイズに応じて決定される
ことを特徴とする画像補正装置。
【請求項４】
請求項３に記載の画像補正装置であって、
前記入力画像の画像サイズが閾値よりも小さいときは、３×３の平滑化フィルタで平滑化を行い、前記入力画像の画像サイズが前記閾値よりも大きいときは、５×５の平滑化フィルタで平滑化を行う
ことを特徴とする画像補正装置。
【請求項５】
請求項１に記載の画像補正装置であって、
ユーザからの指示に応じて前記平滑化部のフィルタサイズが決定される
ことを特徴とする画像補正装置。
【請求項６】
請求項１に記載の画像補正装置であって、
前記平滑化画像の画素ごとに輝度勾配の方向を検出する方向検出部と、
検出された輝度勾配の方向に応じて画素ごとに評価指数を算出する指数算出部、をさらに備え、
前記ぶれ範囲検出部は、前記評価指数に応じてぶれ範囲を検出し、
前記補正量算出部は、前記評価指数に応じて補正量を算出する
ことを特徴とする画像補正装置。
【請求項７】
入力画像のエッジをシャープにする画像補正装置であって、
前記入力画像を平滑化する平滑化部と、
前記平滑化部により得られる平滑化画像の各画素について、前記平滑化画像の画素値に基づいて、前記エッジをシャープにするための補正量を算出する補正量算出部と、
前記入力画像の各画素の画素値を、前記補正量算出部により算出された補正量を利用して補正する補正部、
を有する画像補正装置。
【請求項８】
入力画像の各画素について、対象画素およびその近傍の画素の輝度値に基づいて、複数の画素濃度指数および複数の勾配指数を算出する算出部と、
前記複数の勾配指数の一部を平滑化する平滑化部と、
前記画素濃度指数および前記一部が平滑化された勾配指数を利用して、ぶれ範囲を検出するぶれ範囲検出部と、
前記ぶれ範囲検出部により検出されたぶれ範囲に属する画素について、前記画素濃度指数および前記一部が平滑化された勾配指数に基づいて、補正量を算出する補正量算出部と、
前記補正量算出部により算出された補正量を利用して前記入力画像を補正する補正部、
を有する画像補正装置。
【請求項９】
入力画像を平滑化し、
前記入力画像を平滑化することにより得られる平滑化画像においてぶれ範囲を検出し、
検出されたぶれ範囲に属する画素について、前記平滑化画像の輝度情報に基づいて、補正量を算出し、
算出された補正量を利用して前記入力画像を補正する
ことを特徴とする画像補正方法。
【請求項１０】
コンピュータに、
入力画像を平滑化する平滑化手順、
前記平滑化手順により得られる平滑化画像において、ぶれ範囲を検出するぶれ範囲検出手順、
前記ぶれ範囲検出手順により検出されたぶれ範囲に属する画素について、前記平滑化画像の輝度情報に基づいて、補正量を算出する補正量算出手順、
前記補正量算出手順により算出された補正量を利用して前記入力画像を補正する補正手順、
を実行させるための画像補正プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像補正装置および画像補正方法に係わり、例えば、画像のぶれを補正するための画像補正装置および画像補正方法に適用することができる。
【背景技術】
【０００２】
撮影された画像の手ぶれ（ここでは、被写体の移動によるぶれを含まないものとする）を補正する技術として、連続して撮影された複数の画像の合成を利用する方法、および１枚の画像の中でぶれを除去（または、抑制）する方法が知られている。１枚の画像の中でぶれを除去する技術として、例えば、画像内のオブジェクトまたはテクスチャのエッジをシャープにする方法が知られている。【０００３】
画像内のオブジェクトまたはテクスチャのエッジにおいては、通常、画素値（輝度、濃度など）が急激に変化する。図１に示すプロファイルは、エッジにおける画素値（ここでは、輝度レベル）の変化を示している。また、このプロファイルの横軸は、画素の位置を表している。なお、エッジにおいては、輝度レベルが傾斜（すなわち、ランプ）しているので、本明細書ではエッジが存在する領域を「ランプ領域」と呼ぶことがある。【０００４】
図１において、輝度レベルが中心レベルよりも低い領域（Ａ領域）では、各画素の輝度レベルは下げられる。一方、輝度レベルが中心レベルよりも高い領域（Ｂ領域）では、各画素の輝度レベルは上げられる。なお、ランプ領域の外側では、輝度レベルの補正は行われない。このような補正により、ランプ領域の幅が狭められ、エッジがシャープになる。この方法は、例えば、非特許文献１に記載されている。【０００５】
しかし、画像全体にこの方法を適用すると、不自然な画像が得られることがある。例えば、図２に示すように、ノイズ等の影響でエッジの画素値に凹凸がある画像に対して上記補正を行うと、結果として、エッジが不自然または不規則になることがある。【０００６】
なお、この問題を解決する方法として、細線化処理が提案されている。しかし、細線化処理は、画像処理のための演算量が多い。このため、例えば、低消費電力または低コストが要求されるカメラ付き移動端末等においては、細線化機能を実装することは難しい。【０００７】
関連する技術として、輪郭強調による欠点を解消するために、パターン認識部、ＬＰＦ部、セレクタを備える映像信号処理装置が知られている。パターン認識部は、入力映像信号のエッジ部の急峻の程度を示す評価関数を算出する。ＬＰＦ部は、互いにフィルタ特性の異なる複数のＬＰＦを含む。セレクタは、パターン認識部により得られる評価関数に基づいて、対応するＬＰＦを選択する。具体的には、入力映像信号のエッジが急峻であるほど、高域周波数成分を広い範囲に渡って減衰させるＬＰＦの出力信号が選択される。セレクタは、入力映像信号にエッジ部が殆どないときは、入力映像信号をそのまま出力する。セレクタから出力される映像信号は、輪郭強調回路に入力される。
【特許文献１】特開２００７−２８１５３８号公報
【非特許文献１】J.-G Leu, Edge sharpening through ramp width reduction, Image and Vision Computing 18 (2000) 501-514
【発明の開示】
【０００８】
本発明の課題は、少ない演算量で画像のぶれを適切に補正する画像補正装置および画像補正方法を提供することである。
実施形態の画像補正装置は、入力画像を平滑化する平滑化部と、前記平滑化部により得られる平滑化画像において、ぶれ範囲を検出するぶれ範囲検出部と、前記ぶれ範囲検出部により検出されたぶれ範囲に属する画素について、前記平滑化画像に基づいて、補正量を算出する補正量算出部と、前記補正量算出部により算出された補正量を利用して前記入力画像を補正する補正部、を有する。
【図面の簡単な説明】
【０００９】
【図１】エッジをシャープにする方法を説明する図である。
【図２】従来技術の課題を説明する図である。
【図３】実施形態の画像補正装置の構成を示す図である。
【図４Ａ】平滑化処理部の実施例（その１）である。
【図４Ｂ】平滑化処理部の実施例（その２）である。
【図５Ａ】３×３平滑化フィルタの実施例である。
【図５Ｂ】５×５平滑化フィルタの実施例である。
【図６】実施形態の画像補正装置に係わるハードウェア構成を示す図である。
【図７】画像補正装置の動作を示すフローチャートである。
【図８】Sobelフィルタの構成を示す図である。
【図９】勾配の方向の定義を示す図である。
【図１０】画素濃度指数ＩHを計算するためのフィルタを示す図である。
【図１１】画素濃度指数ＩMを計算するためのフィルタを示す図である。
【図１２】画素濃度指数ＩLを計算するためのフィルタを示す図である。
【図１３】勾配指数ＧHを計算するためのフィルタを示す図である。
【図１４】勾配指数ＧLを計算するためのフィルタを示す図である。
【図１５】実施形態の画像補正装置による効果を示す図である。
【図１６】他の実施形態の動作を示すフローチャートである。
【発明を実施するための最良の形態】
【００１０】
図３は、実施形態の画像補正装置の構成を示す図である。実施形態の画像補正装置１は、特に限定されるものではないが、例えば、電子カメラにより得られた画像を補正する。また、画像補正装置１は、基本的に、手ぶれを補正するものとする。手ぶれは、例えば、画像の撮影時に撮影装置が動くことによって発生する。また、手ぶれに起因する画像の劣化は、主に、画像内のオブジェクトまたはテクスチャのエッジにおいて発生する。よって、画像補正装置１は、エッジをシャープにすることで、手ぶれを補正する。【００１１】
入力画像（原画像）は、平滑化処理部１１および補正部１４に与えられる。平滑化処理部１１は、例えば、平滑化（または、平均化）フィルタであり、入力画像の各画素の輝度値を平滑化する。この平滑化処理により、入力画像のノイズが除去（または、低減）される。ぶれ範囲検出部１２は、平滑化処理部１１から出力される平滑化画像において、手ぶれが発生していると推定される領域を検出する。すなわち、ぶれ範囲検出部１２は、平滑化画像の各画素について、手ぶれが発生しているか否かを推定する。なお、手ぶれに起因する画像の劣化は、上述したように、主に、画像内のオブジェクトまたはテクスチャのエッジにおいて発生する。また、エッジ領域においては、一般に、輝度値が図１に示すように傾斜している。したがって、ぶれ範囲検出部１２は、例えば、平滑化画像において輝度の傾斜を検出することにより、手ぶれ範囲を検出する。【００１２】
補正量算出部１３は、ぶれ範囲内の画素値について補正量を算出する。そして、補正部１４は、補正量算出部１３により算出された補正量を利用して、入力画像を補正する。このとき、補正部１４は、例えば、図１を参照しながら説明したように、エッジ領域において、中心レベルよりも輝度の高い画素の輝度値をより高くし、中心レベルよりも輝度の低い画素の輝度値をより低くする。これにより、画像内の各エッジがシャープになる。【００１３】
このように、画像補正装置１は、平滑化された画像を用いてぶれ範囲を検出し、そのぶれ範囲において補正量を算出する。このとき、平滑化された画像においては、ノイズが除去（または、低減）されている。このため、検出されるぶれ範囲、および算出される補正量は、ノイズの影響を受けない。したがって、ノイズの影響を受けることなく、画像内のエッジをシャープにすることができる。【００１４】
図４Ａは、平均化処理部１１の実施例である。図４Ａに示す平均化処理部１１は、画像サイズ検出部２１、３×３フィルタ２２、５×５フィルタ２３を備える。画像サイズ検出部２１は、入力画像のサイズを検出する。すなわち、例えば、入力画像の画素数が検出される。画像サイズを検出する方法は、特に限定されるものではなく、公知の技術により実現するようにしてもよい。そして、画像サイズ検出部２１は、入力画像のサイズが閾値よりも小さければ３×３フィルタ２２を選択し、入力画像のサイズが閾値よりも大きければ５×５フィルタ２３を選択する。閾値は、特に限定されるものではないが、例えば、１Ｍピクセルである。【００１５】
図５Ａは、３×３フィルタ２２の実施例である。３×３フィルタ２２は、入力画像の各画素について、平滑化演算を実行する。すなわち、対象画素およびその周辺の８画素（合計、９画素）の輝度値の平均が算出される。【００１６】
図５Ｂは、５×５フィルタ２３の実施例である。５×５フィルタ２３も、３×３フィルタ２２と同様に、入力画像の各画素について、平滑化演算を実行する。ただし、５×５フィルタ２３は、対象画素およびその周辺の２４画素（合計、２５画素）の輝度値の平均を算出する。【００１７】
このように、平均化処理部１１は、画像のサイズに応じて決まるフィルタを利用して、入力画像を平滑化する。ここで、一般に、サイズの大きい画像においては、図２に示すノイズ（すなわち、エッジの凹凸）が大きくなる。したがって、画像サイズが大きいほど、強い平滑化処理が必要になる。【００１８】
なお、上述の実施例では、２種類のフィルタのうちの一方が選択されているが、実施形態の画像補正装置はこの構成に限定されるものではない。すなわち、画像のサイズに応じて３以上のフィルタの中から１つが選択されるようにしてもよい。また、図５Ａおよび図５Ｂには、複数の画素値の単純平均を算出するフィルタが示されているが、実施形態の画像補正装置はこの構成に限定されるものではない。すなわち、平滑化処理部１１を構成するフィルタとして、例えば、中心または中心領域に大きな重みを持った加重平均フィルタを使用するようにしてもよい。【００１９】
図４Ｂは、平均化処理部１１の他の実施例である。図４Ｂに示す平均化処理部１１は、３×３フィルタ２２、５×５フィルタ２３、ユーザ指示受付け部２４を備える。この実施例では、原画像は表示装置に表示される。そして、ユーザは、その表示装置に表示された原画像のぶれ幅の大きさに応じて、平滑化処理の強さを指示する情報を入力する。そうすると、ユーザ指示受付け部２４は、ユーザ指示に従って、対応するフィルタを選択する。この構成においては、ユーザによってぶれ幅が小さいと判断された場合には３×３フィルタ２２が選択され、ぶれ幅が大きいと判断された場合には５×５フィルタ２３が選択される。【００２０】
原画像のぶれ幅は、ソフトウェアで検出するようにしてもよい。この場合、画像補正装置１は、例えば、検出されたぶれ幅が５画素以下であったときに３×３フィルタ２２を選択し、検出されたぶれ幅が５画素を超えるときに５×５フィルタ２３を選択するように構成される。【００２１】
図６は、実施形態の画像補正装置１に係わるハードウェア構成を示す図である。図６において、ＣＰＵ１０１は、メモリ１０３を利用して画像補正プログラムを実行する。記憶装置１０２は、例えばハードディスクであり、画像補正プログラムを格納する。なお、記憶装置１０２は、外部記録装置であってもよい。メモリ１０３は、例えば半導体メモリであり、ＲＡＭ領域およびＲＯＭ領域を含んで構成される。【００２２】
読み取り装置１０４は、ＣＰＵ１０１の指示に従って可搬型記録媒体１０５にアクセスする。可搬性記録媒体１０５は、例えば、半導体デバイス（ＰＣカード等）、磁気的作用により情報が入出力される媒体、光学的作用により情報が入出力される媒体を含むものとする。通信インタフェース１０６は、ＣＰＵ１０１の指示に従って、ネットワークを介してデータを送受信する。入出力装置１０７は、この実施例では、カメラ、表示装置、ユーザからの指示を受け付けるデバイス等に相当する。【００２３】
実施形態に係わる画像補正プログラムは、例えば、下記の形態で提供される。
（１）記憶装置１０２に予めインストールされている。
（２）可搬型記録媒体１０５により提供される。
（３）プログラムサーバ１１０からダウンロードする。
そして、上記構成のコンピュータで画像補正プログラムを実行することにより、実施形態に係わる画像補正装置が実現される。【００２４】
図７は、実施形態の画像補正装置１の動作を示すフローチャートである。このフローチャートの処理は、１枚の原画像が入力されると実行される。
ステップＳ１では、原画像データが入力される。原画像データは、原画像の各画素の画素値（輝度情報など）を含んでいる。ステップＳ２では、平滑化フィルタのサイズが決定される。図４Ａに示す構成では、原画像のサイズに応じて平滑化フィルタのサイズが決定される。また、図４Ｂに示す構成では、ユーザ指示に応じて平滑化フィルタのサイズが決定される。そして、ステップＳ３において、ステップＳ２で決められたフィルタを用いて、原画像が平滑化される。【００２５】
ステップＳ４では、平滑化された画像の各画素について、後述する評価指数ＩH、ＩM、ＩL、ＧH、ＧM、ＧLを算出する。ステップＳ５では、平滑化画像の各画素について、評価指数ＩH、ＩM、ＩLを利用して、ぶれ範囲に属しているか否かを判定する。そして、ぶれ範囲に属している判定された画素について、ステップＳ６〜Ｓ８が実行される。【００２６】
ステップＳ６では、対象画素についての評価指数ＧH、ＧM、ＧLを利用して、その対象画素の輝度を補正すべきか否かを判定する。補正が必要な場合には、ステップＳ７において、評価指数ＩH、ＩM、ＩL、ＧH、ＧM、ＧLを利用して補正量を算出する。そして、ステップＳ８では、算出された補正量に従って、原画像を補正する。【００２７】
なお、ステップＳ２〜Ｓ３の処理は、図３に示す平均化処理部１１により実行される。また、ステップＳ４〜Ｓ８は、エッジのランプ領域（輝度レベルが傾斜している領域）の幅を狭くすることで、そのエッジをシャープにする処理に相当する。以下、ステップＳ４〜Ｓ８の処理を説明する。【００２８】
＜評価指数の算出（ステップＳ４）＞
平滑化された画像の各画素に対して、Sobel演算が行われる。Sobel演算は、図８に示すSobelフィルタが使用される。すなわち、Sobel演算では、対象画素およびその周辺の８画素が利用される。ここで、図８（ａ）は、Ｘ方向のSobelフィルタの構成を示し、図８（ｂ）は、Ｙ方向のSobelフィルタの構成を示している。そして、各画素に対して、Ｘ方向Sobel演算およびＹ方向Sobel演算が実行される。以下では、Ｘ方向およびＹ方向のSobel演算の結果を、それぞれ「gradＸ」「gradＹ」と呼ぶことにする。【００２９】
Sobel演算の結果を利用して、各画素について、輝度の勾配の大きさを算出する。勾配の大きさ「gradMag」は、例えば、下記（１）式で算出される。【００３０】
【数１】
2009144768.tif 000003
あるいは、演算量を少なくするためには、下記（２）式で勾配を算出するようにしてもよい。【００３１】
【数２】
2009144768.tif 000004
続いて、Sobel演算の結果を利用して、各画素について、勾配の方向を求める。勾配の方向「PixDirection(θ)」は、下記（３）式で求められる。なお、「gradＸ」がゼロに近いとき（例えば、gradＸ＜10-6）は、「PixDirection＝−π／２」とする。【００３２】
【数３】
2009144768.tif 000005
次に、各画素について、勾配の方向が、図９に示すZone１〜Zone８の何れに属するのかを判定する。なお、Zone１〜Zone８は、以下の通りである。
Zone１：０≦PixDirection＜π／４  且つ  gradＸ＞０
Zone２：π／４≦PixDirection＜π／２  且つ  gradＹ＞０
Zone３：−π／２≦PixDirection＜−π／４  且つ  gradＹ＜０
Zone４：−π／４≦PixDirection＜０  且つ  gradＸ＜０
Zone５：０≦PixDirection＜π／４  且つ  gradＸ＜０
Zone６：π／４≦PixDirection＜π／２  且つ  gradＹ＜０
Zone７：−π／２≦PixDirection＜−π／４  且つ  gradＹ＞０
Zone８：−π／４≦PixDirection＜０  且つ  gradＸ＞０【００３３】
次に、平滑化された画像の各画素について、画素濃度指数ＩH、ＩM、ＩLを算出する。画素濃度指数ＩH、ＩM、ＩLは、上記（３）式で求められる勾配の方向に依存する。ここで、一実施例として、勾配の方向がZone１（０≦θ＜π／４）に属する場合の画素濃度指数ＩH、ＩM、ＩLを算出する例を示す。以下では、画素(i,j)の勾配方向を「θ(i,j)」と呼ぶことにする。【００３４】
まず、「θ＝０」に対して下式を定義する。なお、「P(i, j)」は、座標(i, j)に位置する画素の輝度値を表す。「P(i, j+1)」は、座標(i, j+1)に位置する画素の輝度値を表す。他の画素についても同様である。
ＩH(0)＝0.25×{P(i+1, j+1)＋2×P(i, j+1)＋P(i−1, j+1)}
ＩM(0)＝0.25×{P(i+1, j)＋2×P(i, j)＋P(i−1, j)}
ＩL(0)＝0.25×{P(i+1, j−1)＋2×P(i, j−1)＋P(i−1, j−1)}
同様に、「θ＝π／４」に対して下式を定義する。
ＩH(π/4)＝0.5×{P(i+1, j)＋P(i, j+1)}
ＩM(π/4)＝0.25×{P(i+1, j−1)＋2×P(i, j)＋P(i−1, j+1)}
ＩL(π/4)＝0.5×{P(i, j−1)＋P(i−1, j)}【００３５】
ここで、Zone１における３つの画素濃度指数は、それぞれ「θ＝０」の画素濃度指数および「θ＝π／４」の画素濃度指数を利用する線形補間により算出される。すなわち、Zone１における３つの画素濃度指数は、下式により算出される。
ＩH,Zone1＝ＩH(0)×ω＋ＩH(π/4)×(1−ω)
ＩM,Zone1＝ＩM(0)×ω＋ＩM(π/4)×(1−ω)
ＩL,Zone1＝ＩL(0)×ω＋ＩL(π/4)×(1−ω)
ω＝１−{4×θ(i, j)}／π
Zone２〜Zone８の画素濃度指数についても、同様の手順で算出することができる。すなわち、「θ＝０、π/4、π/2、3π/4、π、−3π/4、−π/2、−π/4」に対して、それぞれ画素濃度指数が算出される。これらの画素濃度指数は、それぞれ、平滑化された画像の各画素の輝度値に３×３フィルタ演算を行うことにより得られる。図１０、図１１、図１２は、それぞれ画素濃度指数ＩH、ＩM、ＩLを得るためのフィルタの構成を示す図である。【００３６】
これらのフィルタを用いることにより、所定の８方向の画素濃度指数ＩH、ＩM、ＩLを算出することができる。そして、各Zoneの画素濃度指数ＩHは、対応する２方向の画素濃度指数ＩHを利用して、下式により算出される。
ＩH,Zone1＝ＩH(0)×w15＋ＩH(π/4)×(1−w15)
ＩH,Zone2＝ＩH(π/2)×w26＋ＩH(π/4)×(1−w26)
ＩH,Zone3＝ＩH(π/2)×w37＋ＩH(3π/4)×(1−w37)
ＩH,Zone4＝ＩH(π)×w48＋ＩH(3π/4)×(1−w48)
ＩH,Zone5＝ＩH(π)×w15＋ＩH(−3π/4)×(1−w15)
ＩH,Zone6＝ＩH(−π/2)×w26＋ＩH(−3π/4)×(1−w26)
ＩH,Zone7＝ＩH(−π/2)×w37＋ＩH(−π/4)×(1−w37)
ＩH,Zone8＝ＩH(0)×w48＋ＩH(−π/4)×(1−w48)
なお、w15、w26、w37、w48は、それぞれ、下指示により表される。
W15＝１−4θ／π
W26＝4θ／π−１
W37＝−１−4θ／π
W48＝１＋4θ／π【００３７】
また、各Zoneの画素濃度指数ＩMは、対応する２方向の画素濃度指数ＩMを利用して、下式により算出される。
ＩM,Zone1＝ＩM(0)×w15＋ＩM(π/4)×(1−w15)
ＩM,Zone2＝ＩM(π/2)×w26＋ＩM(π/4)×(1−w26)
ＩM,Zone3＝ＩM(π/2)×w37＋ＩM(3π/4)×(1−w37)
ＩM,Zone4＝ＩM(π)×w48＋ＩM(3π/4)×(1−w48)
ＩM,Zone5＝ＩM(π)×w15＋ＩM(−3π/4)×(1−w15)
ＩM,Zone6＝ＩM(−π/2)×w26＋ＩM(−3π/4)×(1−w26)
ＩM,Zone7＝ＩM(−π/2)×w37＋ＩM(−π/4)×(1−w37)
ＩM,Zone8＝ＩM(0)×w48＋ＩM(−π/4)×(1−w48)【００３８】
同様に、各Zoneの画素濃度指数ＩLは、対応する２方向の画素濃度指数ＩLを利用して、下式により算出される。
ＩL,Zone1＝ＩL(0)×w15＋ＩL(π/4)×(1−w15)
ＩL,Zone2＝ＩL(π/2)×w26＋ＩL(π/4)×(1−w26)
ＩL,Zone3＝ＩL(π/2)×w37＋ＩL(3π/4)×(1−w37)
ＩL,Zone4＝ＩL(π)×w48＋ＩL(3π/4)×(1−w48)
ＩL,Zone5＝ＩL(π)×w15＋ＩL(−3π/4)×(1−w15)
ＩL,Zone6＝ＩL(−π/2)×w26＋ＩL(−3π/4)×(1−w26)
ＩL,Zone7＝ＩL(−π/2)×w37＋ＩL(−π/4)×(1−w37)
ＩL,Zone8＝ＩL(0)×w48＋ＩL(−π/4)×(1−w48)【００３９】
このように、各画素について画素濃度指数ＩH、ＩM、ＩLを算出する際には、下記の手順が行われる。
（ａ）勾配の方向θを算出する
（ｂ）θに対応するZoneを検出する
（ｃ）検出されたZoneに対応する１組のフィルタを用いてフィルタ演算を行う。たとえば、θがZone１に属する場合には、図１０に示すフィルタを用いてＩH(0)、ＩH(π/4)が算出される。ＩM、ＩLについても同様である。
（ｄ）上記（ｃ）で得られる１組の演算結果およびθに基づいて、ＩH、ＩM、ＩLを算出する
次に、平滑化された画像の各画素について、勾配指数ＧH、ＧM、ＧLを算出する。勾配指数ＧH、ＧM、ＧLは、画素濃度指数ＩH、ＩM、ＩLと同様に、上記（３）式で求められる勾配の方向に依存する。よって、画素濃度指数と同様に、Zone１（０≦θ＜π／４）における勾配指数ＧH、ＧM、ＧLを算出する例を示す。【００４０】
まず、「θ＝０」に対して下式を定義する。なお、「gradMag(i, j)」は、座標(i, j)に位置する画素の勾配の大きさを表す。また、「gradMag(i+1, j)」は、座標(i+1, j)に位置する画素の勾配の大きさを表す。他の画素についても同様である。
ＧH(0)＝gradMag(i, j+1)
ＧM(0)＝gradMag(i, j)
ＧL(0)＝gradMag(i, j−1)
同様に、「θ＝π／４」に対して下式を定義する。
ＧH(π/4)＝0.5×{gradMag(i+1, j)＋gradMag (i, j+1)}
ＧM(π/4)＝gradMag(i, j)
ＧL(π/4)＝0.5×{gradMag(i, j−1)＋gradMag (i−1, j)}
ここで、Zone１における勾配指数は、「θ＝０」の勾配指数および「θ＝π／４」の勾配指数を利用する線形補間により算出される。すなわち、Zone１における勾配指数は、下式により算出される。
ＧH,Zone1＝ＧH(0)×ω＋ＧH(π/4)×(1−ω)
ＧM,Zone1＝ＧM(0)×ω＋ＧM(π/4)×(1−ω)＝gradMag(i, j)
ＧL,Zone1＝ＧL(0)×ω＋ＧL(π/4)×(1−ω)
ω＝１−{4×θ(i, j)}／π【００４１】
このように、勾配指数ＧMは、勾配の方向θに依存することなく、常に「gradMag(i, j)」である。即ち、各画素の勾配指数ＧMは、勾配の方向θに係わりなく、上述した（１）式または（２）式により算出される。【００４２】
Zone２〜Zone８の勾配指数についても、同様の手順で算出することができる。すなわち、「θ＝０、π/4、π/2、3π/4、π、−3π/4、−π/2、−π/4」に対して、それぞれ勾配指数が算出される。これらの勾配指数は、それぞれ、平滑化された画像の各画素の勾配の大きさgradMagに３×３フィルタ演算を行うことにより得られる。図１３および図１４は、それぞれ勾配指数ＧH、ＧLを得るためのフィルタの構成を示す図である。【００４３】
このようなフィルタ演算により所定の８方向の勾配指数ＧH、ＧLが得られる。そして、各Zoneの勾配指数ＧHは、対応する２方向の勾配指数ＧHを利用して、下式により算出される。
ＧH,Zone1＝ＧH(0)×w15＋ＧH(π/4)×(1−w15)
ＧH,Zone2＝ＧH(π/2)×w26＋ＧH(π/4)×(1−w26)
ＧH,Zone3＝ＧH(π/2)×w37＋ＧH(3π/4)×(1−w37)
ＧH,Zone4＝ＧH(π)×w48＋ＧH(3π/4)×(1−w48)
ＧH,Zone5＝ＧH(π)×w15＋ＧH(−3π/4)×(1−w15)
ＧH,Zone6＝ＧH(−π/2)×w26＋ＧH(−3π/4)×(1−w26)
ＧH,Zone7＝ＧH(−π/2)×w37＋ＧH(−π/4)×(1−w37)
ＧH,Zone8＝ＧH(0)×w48＋ＧH(−π/4)×(1−w48)
なお、w15、w26、w37、w48は、それぞれ、下指示により表される。
W15＝１−4θ／π
W26＝4θ／π−１
W37＝−１−4θ／π
W48＝１＋4θ／π【００４４】
同様に、各Zoneの勾配指数ＧLは、対応する２方向の勾配指数ＧLを利用して、下式により算出される。
ＧL,Zone1＝ＧL(0)×w15＋ＧL(π/4)×(1−w15)
ＧL,Zone2＝ＧL(π/2)×w26＋ＧL(π/4)×(1−w26)
ＧL,Zone3＝ＧL(π/2)×w37＋ＧL(3π/4)×(1−w37)
ＧL,Zone4＝ＧL(π)×w48＋ＧL(3π/4)×(1−w48)
ＧL,Zone5＝ＧL(π)×w15＋ＧL(−3π/4)×(1−w15)
ＧL,Zone6＝ＧL(−π/2)×w26＋ＧL(−3π/4)×(1−w26)
ＧL,Zone7＝ＧL(−π/2)×w37＋ＧL(−π/4)×(1−w37)
ＧL,Zone8＝ＧL(0)×w48＋ＧL(−π/4)×(1−w48)【００４５】
このように、各画素について勾配指数ＧH、ＧM、ＧLを算出する際には、下記の手順が行われる。
（ａ）勾配の大きさgradMagを算出する
（ｂ）gradMagからＧMを算出する
（ｃ）勾配の方向θを算出する
（ｄ）θに対応するZoneを検出する
（ｅ）検出されたZoneに対応する１組のフィルタを用いてフィルタ演算を行う。たとえば、θがZone１に属する場合には、図１３に示すフィルタを用いてＧH(0)、ＧH(π/4)が算出される。ＧLについても同様である。
（ｆ）上記（ｅ）で得られる１組の演算結果およびθに基づいて、ＧH、ＧLを算出する
以上説明したように、ステップＳ４においては、平滑化された画像の各画素について評価指数（画素濃度指数ＩH、ＩM、ＩLおよび勾配指数ＧH、ＧM、ＧL）が算出される。そして、これらの評価指数は、ぶれ範囲の検出、および補正量の算出のために使用される。【００４６】
＜ぶれ範囲の検出（ステップＳ５）＞
ぶれ範囲検出部１２は、平滑化された画像の各画素について、それぞれ下記（４）式の条件を満たすか否かをチェックする。なお、（４）式は、対象画素が輝度スロープの途中に位置していることを示している。
ＩH＞ＩM＞ＩL  ・・・（４）
画素濃度指数が（４）式を満たす画素は、ぶれ範囲に属していると判定される。すなわち、（４）式を満たす画素は、補正が必要であると判定される。一方、画素濃度指数が（４）式を満たしていない画素は、ぶれ範囲に属していないと判定される。すなわち、（４）式を満たしていない画素は、補正が必要でないと判定される。なお、図１に示すランプ領域内の画素は、基本的に、上記（４）式により、ぶれ範囲に属すると判定される。【００４７】
＜補正量の算出（ステップＳ６〜Ｓ７）＞
補正量算出部１３は、ぶれ範囲に属していると判定された各画素について、下記のケース１〜３を満たすかチェックする。
ケース１：ＧH＞ＧM＞ＧL
ケース２：ＧH＜ＧM＜ＧL
ケース３：ＧH＜ＧM  且つ  ＧL＜ＧM
ケース１は、輝度の勾配が急峻になっていくことを表している。したがって、ケース１に属する画素は、図１に示すエッジのランプ領域において、輝度レベルが中心レベルよりも低い領域（Ａ領域）に属していると考えられる。一方、ケース２は、輝度の勾配が緩やかになっていくことを表している。したがって、ケース２に属する画素は、輝度レベルが中心レベルよりも高い領域（Ｂ領域）に属していると考えられる。なお、ケース３は、対象画素の勾配が、隣接画素の勾配よりも高いことを表している。すなわち、ケース３に属する画素は、輝度レベルが中心レベルまたはその近傍領域（Ｃ領域）に属していると考えられる。【００４８】
そして、補正量算出部１３は、ぶれ範囲に属していると判定された各画素について、それぞれ輝度レベルの補正量を算出する。
画素がケース１に属する場合（すなわち、画素がランプ領域内の低輝度領域に位置する場合）、その画素の輝度の補正量Leveldownは、下式で表される。なお、「Ｓ」は補正因子であり、「θ」は上述の（３）式で得られる。【００４９】
【数４】
2009144768.tif 000006
画素がケース２に属する場合（すなわち、画素がランプ領域内の高輝度領域に位置する場合）、その画素の輝度の補正量Levelupは、下式で表される。【００５０】
【数５】
2009144768.tif 000007
画素がケース３に属する場合（すなわち、画素がランプ領域内の中心領域に位置する場合）、補正量はゼロである。なお、画素がケース１〜３のいずれにも属さない場合にも、補正量はゼロである。【００５１】
＜補正（ステップＳ８）＞
補正部１４は、原画像の各画素の画素値（例えば、輝度レベル）を補正する。ここで、画素（i, j）について補正により得られる画素データImage(i, j)は、下式で得られる。なお、「Originai(i, j)」は、原画像の画素（i, j）の画素データである。
ケース１：Image(i, j)＝Originai(i, j)−Leveldown(i, j)
ケース２：Image(i, j)＝Originai(i, j)＋Levelup(i, j)
他のケース：Image(i, j)＝Originai(i, j)
図１５は、実施形態の画像補正装置１による効果を示す図である。ここでの説明では、図１５（ａ）に示す原画像が入力されるものとする。図１５（ｂ）は、非特許文献１に記載の方法で処理された画像であり、図１５（ｃ）は、実施形態の画像補正装置１で処理された画像である。図１５（ｃ）に示すように、実施形態の画像補正装置１によれば、エッジのノイズが低減している。すなわち、実施形態の画像補正装置１によれば、画像のぶれが適切に補正される。【００５２】
このように、実施形態の画像補正装置１においては、平滑化された画像を利用してエッジのランプ領域に属する画素が検出される。また、そのようにして検出された各画素について、平滑化された画像を利用して補正量が算出される。このとき、この補正量は、平滑化された画像を利用して算出されるので、原画像のノイズの影響は除去（または、低減）されている。そして、原画像の各画素は、そのようにして算出された補正量に応じて補正される。したがって、原画像のノイズの影響を受けることなく、エッジをシャープにすることができる。【００５３】
ぶれ範囲の検出は、複数の異なる勾配方向ごとに行われる。よって、ぶれ範囲を精度よく検出することができる。
ノイズの影響の除去は、評価指数を算出する前に原画像を平滑化することにより実現される。ここで、原画像を平滑化する処理は、例えば、簡単なフィルタ演算により実現されるので、その演算量は少ない。したがって、実施形態の画像補正方法によれば、演算量をさほど増加させることなく、画像のエッジをシャープにしてぶれを適切に補正することができる。【００５４】
＜他の実施形態＞
上述の実施形態では、原画像が平滑化され、その平滑化画像を用いて各画素の補正量が算出される。これに対して、他の実施形態の補正方法では、勾配指数の一部について平滑化処理が行われる。【００５５】
図１６は、他の実施形態の動作を示すフローチャートである。なお、図７および図１６において共通するステップ番号は、同じ処理を示している。
ステップＳ１１では、まず、原画像の各画素に対してSobel演算を行う。Sobel演算については、図８を参照しながら説明した通りである。続いて、Sobel演算の結果を利用して、各画素について勾配指数ＧM（＝gradMag）を算出する。なお、勾配指数ＧMは、上述した（１）式または（２）式により得られる。【００５６】
ステップS１２では、算出された勾配指数ＧMについて平滑化処理を行う。平滑化処理は、ステップＳ２で決定されたサイズの平滑化フィルタを利用する。例えば、図５Ａに示す３×３フィルタを使用する場合には、各画素について、対象画素およびその対象画素に隣接する８画素（すなわち、９画素）の勾配指数ＧMの平均値を算出する。【００５７】
ステップＳ１３では、原画像の各画素について（または、Sobel演算により得られる各画素について）、他の評価指数（画素濃度指数ＩH、ＩM、ＩLおよび勾配指数ＧH、ＧL）を算出する。これらの評価指数の算出方法は、上述した通りである。そして、ステップＳ５〜Ｓ８において、平滑化された勾配指数ＧMおよびステップＳ１３で得られた他の評価指数を利用して、原画像の各画素が補正される。
【図１】
2009144768.tif 000008
【図２】
2009144768.tif 000009
【図３】
2009144768.tif 000010
【図４Ａ】
2009144768.tif 000011
【図４Ｂ】
2009144768.tif 000012
【図５Ａ】
2009144768.tif 000013
【図５Ｂ】
2009144768.tif 000014
【図６】
2009144768.tif 000015
【図７】
2009144768.tif 000016
【図８】
2009144768.tif 000017
【図９】
2009144768.tif 000018
【図１０】
2009144768.tif 000019
【図１１】
2009144768.tif 000020
【図１２】
2009144768.tif 000021
【図１３】
2009144768.tif 000022
【図１４】
2009144768.tif 000023
【図１５】
2009144768.tif 000024
【図１６】
2009144768.tif 000025
【手続補正書】
【提出日】平成22年7月22日(2010.7.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
入力画像を平滑化する平滑化部と、
前記平滑化部により得られる平滑化画像を構成する各画素について、該各画素がぶれ範囲に含まれるか否かを検出するぶれ範囲検出部と、
前記ぶれ範囲検出部により検出されたぶれ範囲に属する画素について、前記平滑化画像に基づいて、補正量を算出する補正量算出部と、
前記補正量算出部により算出された補正量を利用して前記入力画像を補正する補正部、
を有する画像補正装置。
【請求項２】
請求項１に記載の画像補正装置であって、
前記平滑化部は、複数の画素の輝度値を平均化する平滑化フィルタであり、
前記補正量算出部は、前記平滑化画像の輝度情報に基づいて、補正量を算出することを特徴とする画像補正装置。
【請求項３】
請求項１に記載の画像補正装置であって、
前記入力画像の画像サイズを検出するサイズ検出部をさらに備え、
前記平滑化部のフィルタサイズは、前記画像サイズに応じて決定される
ことを特徴とする画像補正装置。
【請求項４】
請求項３に記載の画像補正装置であって、
前記入力画像の画像サイズが閾値よりも小さいときは、３×３の平滑化フィルタで平滑化を行い、前記入力画像の画像サイズが前記閾値よりも大きいときは、５×５の平滑化フィルタで平滑化を行う
ことを特徴とする画像補正装置。
【請求項５】
請求項１に記載の画像補正装置であって、
ユーザからの指示に応じて前記平滑化部のフィルタサイズが決定される
ことを特徴とする画像補正装置。
【請求項６】
請求項１に記載の画像補正装置であって、
前記平滑化画像の画素ごとに輝度勾配の方向を検出する方向検出部と、
検出された輝度勾配の方向に応じて画素ごとに評価指数を算出する指数算出部、をさらに備え、
前記ぶれ範囲検出部は、前記評価指数に応じてぶれ範囲を検出し、
前記補正量算出部は、前記評価指数に応じて補正量を算出する
ことを特徴とする画像補正装置。
【請求項７】
入力画像を平滑化し、
前記入力画像を平滑化することにより得られる平滑化画像を構成する各画素について、該各画素がぶれ範囲に含まれるか否かを検出し、
検出されたぶれ範囲に属する画素について、前記平滑化画像の輝度情報に基づいて、補正量を算出し、
算出された補正量を利用して前記入力画像を補正する
ことを特徴とする画像補正方法。
【請求項８】
コンピュータに、
入力画像を平滑化する平滑化手順、
前記平滑化手順により得られる平滑化画像を構成する各画素について、該各画素がぶれ範囲に含まれるか否かを検出するぶれ範囲検出手順、
前記ぶれ範囲検出手順により検出されたぶれ範囲に属する画素について、前記平滑化画像の輝度情報に基づいて、補正量を算出する補正量算出手順、
前記補正量算出手順により算出された補正量を利用して前記入力画像を補正する補正手順、
を実行させるための画像補正プログラム。
【国際調査報告】
2009144768.tif 000026
2009144768.tif 000027
2009144768.tif 000028
2009144768.tif 000029