(57)【要約】【課題】例えば、ターゲット画像に加算する適切な画像を生成する。【解決手段】一例として、画像処理装置は、フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、前記動きベクトルを得るために参照される第２の画像とを取得する画像取得部と、前記第１の画像と前記第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する画像生成部とを備える。【選択図】図５
2014187610.tif 000002
【特許請求の範囲】
【請求項１】
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、前記動きベクトルを得るために参照される第２の画像とを取得する画像取得部と、
前記第１の画像と前記第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する画像生成部と
を備える画像処理装置。
【請求項２】
入力画像の明るさを検波する検波部と、
前記入力画像の明るさに基づいて前記ブレンド率を設定するブレンド率設定部とを備える
請求項１に記載の画像処理装置。
【請求項３】
前記ブレンド率設定部は、前記入力画像の明るさが閾値より大きい場合に、前記第１の画像に対する前記第２の画像のブレンド率を０に設定する
請求項２に記載の画像処理装置。
【請求項４】
前記ブレンド率設定部は、前記入力画像の明るさが大きくなるにつれ、前記第１の画像に対する前記第２の画像のブレンド率が小さくなるように該ブレンド率を設定する
請求項２に記載の画像処理装置。
【請求項５】
前記第３の画像とターゲット画像とを加算する画像加算部を備える
請求項１に記載の画像処理装置。
【請求項６】
前記入力画像の明るさに基づいて、該入力画像に対するゲインを設定するゲイン設定部を備え、
前記ブレンド率設定部は、前記設定されたゲインにより調整された入力画像のレベルに応じて前記ブレンド率を設定する
請求項２に記載の画像処理装置。
【請求項７】
前記第１の画像は、第１の動きベクトルおよび前記第１の動きベクトルとは異なる第２の動きベクトルの少なくとも一方を使用して得られる
請求項１に記載の画像処理装置。
【請求項８】
前記第１の動きベクトルは、画像を複数の領域に分割したブロック毎に得られるローカルベクトルであり、
前記第２の動きベクトルは、１または複数の前記ローカルベクトルに基づいて得られるグローバルベクトルである
請求項７に記載の画像処理装置。
【請求項９】
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、前記動きベクトルを得るために参照される第２の画像とを取得し、
前記第１の画像と前記第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する
画像処理装置における画像処理方法。
【請求項１０】
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、前記動きベクトルを得るために参照される第２の画像とを取得し、
前記第１の画像と前記第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する
画像処理装置における画像処理方法を、コンピュータに実行させるプログラム。
【請求項１１】
撮像部と、
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、前記動きベクトルを得るために参照され、前記撮像部を介して得られる第２の画像とを取得する画像取得部と、
前記第１の画像と前記第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する画像生成部と、
前記第３の画像とターゲット画像とを加算する画像加算部と
を備える撮像装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、画像処理装置、画像処理方法、プログラムおよび撮像装置に関する。
【背景技術】
【０００２】
画像の撮像（撮影）において、連続して撮像された複数の画像（フレーム）を重ね合わせて、ノイズが低減された画像を得る技術が知られている。例えば、処理対象となる画像（適宜、ターゲット画像と称する）に、ターゲット画像の前または後に連続して撮像され、動き検出および動き補償によって位置合わせされた複数の画像を重ね合わせる。この場合、略同一の画像が時間方向で積分されることになるため、各画像にランダムに含まれるノイズが相殺され、結果としてノイズが低減される。このような方法によるノイズ低減（ＮＲ：Noise Reduction）は、フレームＮＲ処理などと称される。
【０００３】
ターゲット画像内に設定されたターゲットブロックについてのローカル動きベクトルを検出し、当該検出したローカル動きベクトル用いて、２画像間の画像全体に加わっている変形を表わすグローバルモーションを算出することが行なわれている。グローバルモーションは、通常は、画像の静止画部分としての背景の動きおよび動き量を示すものとなる。
【０００４】
グローバルモーションを用いた技術として、下記の特許文献１に記載の技術が開示されている。特許文献１に記載の技術は、画像内における背景静止画部分と動被写体部分を分離し、グローバルモーションから生成したグローバル動きベクトルと一致したローカル動きベクトルを用いて動き補償画像（適宜、ＭＣ画像とも称する）を生成する。そして、ＭＣ画像とターゲット画像とを重ね合わせる技術である。この技術では、グローバル動きベクトルとローカル動きベクトルとを適応的に用いてＭＣ画像を生成し、重ね合わせ処理を行うものである。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２９０８２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
例えば、撮像環境が低照度である暗所の場合には、正確な動き検出を行うことができず、動きベクトルの信頼性が低下する。信頼性が低い動きベクトルに基づくＭＣ画像をターゲット画像に重ね合わせると、処理により得られる画像の品質が劣化するという問題があった。
【０００７】
したがって、本開示の目的の一つは、ターゲット画像に重ね合わせる適切な画像を生成する画像処理装置、画像処理方法、プログラムおよび撮像装置を提供することにある。
【課題を解決するための手段】
【０００８】
上述した課題を解決するために、本開示は、例えば、
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、動きベクトルを得るために参照される第２の画像とを取得する画像取得部と、
第１の画像と第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する画像生成部と
を備える画像処理装置である。
【０００９】
本開示は、例えば、
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、動きベクトルを得るために参照される第２の画像とを取得し、
第１の画像と第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する
画像処理装置における画像処理方法である。
【００１０】
本開示は、例えば、
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、動きベクトルを得るために参照される第２の画像とを取得し、
第１の画像と第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する
画像処理装置における画像処理方法を、コンピュータに実行させるプログラムである。
【００１１】
本開示は、例えば、
撮像部と、
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、動きベクトルを得るために参照され、撮像部を介して得られる第２の画像とを取得する画像取得部と、
第１の画像と第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する画像生成部と、
第３の画像とターゲット画像とを加算する画像加算部と
を備える撮像装置である。
【発明の効果】
【００１２】
少なくとも一つの実施形態によれば、ターゲット画像に対して重ね合わせる適切な画像を生成できる。
【図面の簡単な説明】
【００１３】
【図１】フレームＮＲ処理の一例の概念図である。
【図２】静止画を撮像する場合におけるフレームＮＲ処理の一例を説明するための図である。
【図３】動画を撮像する場合におけるフレームＮＲ処理の一例を説明するための図である。
【図４】一般的なフレームＮＲ処理の一例を説明するための図である。
【図５】一実施形態におけるフレームＮＲ処理の一例を説明するための図である。
【図６】一実施形態の主な処理の流れの一例を示すフローチャートである。
【図７】ローカル動きベクトルの一例を示す図である。
【図８】動きベクトルの信頼性を評価する方法の一例を説明するための図である。
【図９】グローバル動きベクトルの一例を示す図である。
【図１０】あるフレームのブロック毎に得られるローカル動きベクトルの一例を示す図である。
【図１１】あるフレームのブロック毎にローカル動きベクトルまたはグローバル動きベクトルを適用した一例を示す図である。
【図１２】ターゲットブロックの背景一致度合いを評価する方法の一例を説明するための図である。
【図１３】動き補償画像を得るまでの処理の流れの一例を示すフローチャートである。
【図１４】ブロックマッチング処理を効率的に行う方法の一例を説明するための図である。
【図１５】図１５Ａは、照度に応じた入力画像のレベルの変化の一例を示す図である。図１５Ｂは、照度に応じたゲインの設定例を示す図である。図１５Ｃは、ゲイン調整された入力画像のレベルの一例を示す図である。
【図１６】図１６Ａは、ゲイン調整された入力画像のレベルの一例を示す図である。図１６Ｂは、照度に応じたブレンド率の設定例を示す図である。
【図１７】撮像装置の構成の一例を示すブロック図である。
【図１８】ゲイン調整部の構成の一例を示すブロック図である。
【図１９】動きベクトル検出部の構成の一例を示すブロック図である。
【図２０】ターゲットブロックバッファ部の構成の一例を示すブロック図である。
【図２１】参照ブロックバッファ部の構成の一例を示すブロック図である。
【図２２】被加算画像生成部の構成の一例を示すブロック図である。
【図２３】画像加算部の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下、本開示の実施形態等について図面を参照しながら説明する。なお、説明は以下の順序で行う。
＜１．一実施形態＞
＜２．変形例＞
以下に説明する実施形態等は本開示の好適な具体例であり、本開示の内容がこれらの実施形態等に限定されるものではない。
【００１５】
＜１．一実施形態＞
「一実施形態の概要」
一実施形態の概要の説明に先立ち、一般的なフレームＮＲ処理について説明する。図１は、一般的なフレームＮＲ処理の概念図である。フレームＮＲ処理では、連続して撮像された複数の画像Ｐ１〜Ｐ３が、位置合わせ（動き補償）後に重ね合わせられて、ノイズが低減された画像Ｐｍｉｘになる。連続して撮影された複数の画像を重ね合わせた場合にノイズが低減されるのは、略同一の画像が時間方向で積分され、各画像にランダムに含まれるノイズが相殺されるためである。
【００１６】
重ね合わせられる複数の画像Ｐ１〜Ｐ３は、必ずしも３枚の画像でなくてもよく、２枚または４枚以上の画像であってもよい。例えば、撮像装置により静止画を撮像する場合、図２に示すように、高速で連続して撮像された複数枚の画像のうち、１枚目の画像Ｐ１０がターゲット画像になる。ターゲット画像Ｐ１０に２枚目以降の画像（例えば、画像Ｐ２０および画像Ｐ３０）が参照画像として順次重ね合わせられる。なお、ターゲット画像をターゲットフレーム、参照画像を参照フレームと称する場合がある。
【００１７】
例えば、撮像装置により動画を撮像する場合、図３に示すように、順次撮影される連続したフレームの画像がそれぞれターゲット画像になる。これらのターゲット画像（例えば、画像Ｐ５０）に、それぞれのターゲット画像の１つ前のフレームの画像（例えば、画像Ｐ６０）が参照画像として重ね合わせられる。すなわち、あるフレームの画像は、ターゲット画像にもなり得るし、別のフレームの画像をターゲット画像とした場合の参照画像にもなり得る。
【００１８】
このように、連続して撮影された画像を重ねあわせるフレームＮＲ処理では、重ね合わせられるターゲット画像と参照画像との間での位置合わせ（動き補償）が重要になる。これらの画像には、例えば撮影者の手ぶれなどによる画像の位置ずれが生じている場合がある。また、それぞれの画像において、被写体自体が動いたことによる位置ずれが生じている場合もある。そこで、一実施形態におけるフレームＮＲ処理では、例えば、ターゲット画像を分割して生成される複数個のターゲットブロックのそれぞれについて、ブロック単位の動きベクトルを検出する。さらに、各ブロックについて、ブロック単位の動きベクトルを反映した動き補償がなされる。
【００１９】
図４は、一般的なフレームＮＲ処理の概要を示す。ターゲット画像Ｐ１００およびターゲット画像Ｐ１００に対する参照画像Ｐ２００が設定される。ターゲット画像Ｐ１００および参照画像Ｐ２００を比較して動きを検出する動き検出（ＭＥ(Motion Estimation)）（動き推定などと呼ばれる場合もある）が行われる。動き検出の結果、動きベクトル（ＭＶ(Motion Vector)）が得られる。動きベクトルを使用した動き補償(ＭＣ(Motion Compensation)が参照画像Ｐ２００に対してなされ、この結果、動き補償画像Ｐ３００が得られる。
【００２０】
そして、ターゲット画像Ｐ１００と動き補償画像Ｐ３００とを加算する画像加算処理がなされる。画像加算処理における画素単位の加算率αを決定する加算率決定処理が行われてもよい。画像加算処理の結果、フレームＮＲ処理が施された出力画像Ｐ４００が得られる。出力画像Ｐ４００は、ノイズが低減された画像となる。
【００２１】
なお、参照画像は、動き補償処理を施してない画像であることから非動き補償画像または非動き補償フレームと称する場合がある。また、ターゲット画像に対して加算される画像（図４の例では、動き補償画像Ｐ３００）を被加算画像と称する場合がある。
【００２２】
上述の特許文献１に記載の技術は、ローカル動きベクトルの信頼性が高いときは、ローカル動きベクトルから求まる動き補償画像を被加算画像として使用する。また、ローカル動きベクトルの信頼性が低い場合、ローカル動きベクトルは使わず、グローバル動きベクトルから求まる動き補償画像を被加算画像として使用する。この結果、安定したフレームＮＲ処理を行うようにしている。
【００２３】
ところで、静止画を撮像する場合には、画素値のダイナミックレンジは、自動のＩＳＯ感度制御によってある程度は一定になる。しかしながら、暗所での撮像の場合には、光量が不足によるダイナミックレンジの低下があり得る。動画を撮像する場合には、シャッター間隔が一定であるため、被写体照度によって、画素値のダイナミックレンジが低下し、暗所での撮像で録画した画像の画素値は非常に小さい値となる。
【００２４】
このため、特許文献１等の技術では、暗所での撮像により得られる画像を使用した場合に正しい動き検出を行うことはできない。一般的な動き検出の技術では、暗所のような、そもそも物体が特定できないときは動きベクトルの信頼度が低いとし、動きベクトルを使用しないなどの方法が取られてきた。しかしながら、この方法をフレームＮＲ処理に適用すると、例えば、以下のような問題がある。
【００２５】
フレームＮＲ処理ではＭＣ画像を生成しないと画像加算ができないため、動きベクトルを使用しないということができない。たとえ、動きベクトルの信頼性が低い場合でも何かしらの被加算画像を生成しなければならない。動きベクトルの信頼性が低い箇所（ブロック）について、例えば、参照画像をそのまま使用したとしても、画面内にＭＣ画像を使って加算した箇所と参照画像とを使って加算した箇所が混在し、最終画像の品質が保証されない。
【００２６】
動きベクトルの信頼性が低い箇所について、例えば、グローバル動きベクトルによるＭＣ画像を使用することが考えられるが、そもそも低照度ではグローバル動きベクトルの信頼性が低い。
【００２７】
入力画像における物体の識別度で動きベクトルの信頼度が決まるので、ユーザが同じ環境で撮像しても、撮像した被写体が動き検出しやすいかどうかによって最終画像の違いが生じるおそれがある。なお、物体の識別度とは、例えば、物体の特徴の認識のしやすさを意味する。
【００２８】
さらに、有効な動きベクトルが求まる閾値でハンチングが発生し、フレームＮＲ処理が有効になったり、無効になることで処理の時間的な不連続さを生んでしまう。また、ダイナミックレンジの不足に対してロバストな動き検出技術というものも存在するが、そもそもユーザが暗い部屋で撮影することもあるので、動きベクトルが求まらないまたはその信頼性が低下する場合が生じる。動きベクトルの信頼性が低いときに、動きベクトルの検出に時間的な連続性を与えて補間するなどの方法もあるが、低照度では動きベクトル信頼性が低い状態が続くので、補間することができない。一実施形態では、これらの問題に対応して、適切な被加算画像を生成する。
【００２９】
下記の表１は、高照度および低照度の撮像において得られる動き補償フレームおよび非動き補償フレーム（参照フレーム）の画像の違いの一例を説明するものである。
【００３０】
【表１】
2014187610.tif 000003
【００３１】
表１に示すように、高照度の撮像において得られる動き補償フレームは、動き検出の精度が高く時間的なズレがない。このため、動き補償フレームを被加算画像としてターゲット画像に加算した場合には、時間的なズレが生じず、かつ、ノイズが低減された出力画像となる。これに対して、高照度の撮像において得られる非動き補償フレームを被加算画像としてターゲット画像に加算した場合には、ノイズは低下するものの、動き補償がなされていないため時間的なズレが生じ残像が生じる。以上を踏まえると、撮像環境が高照度である場合換言すれば画像のレベルが大きい場合には、動き補償フレームを被加算画像として使用することが好ましい。
【００３２】
一方で、低照度の撮像において得られる動き補償フレームは、動き検出の精度が低下し、これに起因して正確な動き補償ができなくおそれがある。このような動き補償フレームを被加算画像としてそのままターゲット画像に加算すると、時間的なズレを補償できない出力画像となる。実際に、ターゲット画像を順次、変更させてフレームＮＲ処理を行うと、例えば、出力画像の特定の箇所が左右にぶれるようにユーザには見えてしまう。動き補償の破たんは出力画像の画質に大きく影響する。
【００３３】
低照度の撮像において得られる非動き補償フレームをターゲット画像に加算した場合は、高照度の場合と同様に時間的なズレが生じ残像が生じる。しかしながら、出力画像の破たんは、低照度の撮像において得られる動き補償フレームをターゲット画像に加算する場合に比して小さい。さらに、出力画像の一部に残像が生じたとしても、ユーザは、撮像環境が低照度であるがゆえにボケが生じているものと感じるため、出力画像を見たユーザが大きな違和感を覚えることを防止できる。すなわち、低照度においては、動き補償フレームに対して非動き補償フレームを適切なブレンド率σでもってブレンドして被加算画像を生成することが好ましい。
【００３４】
下記の表２は、動き補償フレームの特徴（動き検出（ＭＥ）の信頼度）の一例を説明するものである。
【００３５】
【表２】
2014187610.tif 000004
【００３６】
高照度における動き補償フレームの動き検出の信頼度は、画像の性質に応じて異なる。画像における特徴を認識しやすい箇所（例えば、被写体が存在する箇所）における動き検出の信頼度は高い。これに対して、画像における特徴を認識しづらい箇所（例えば、背景の箇所）における動き検出の信頼度は低くなる。しかしながら、この問題は、グローバル動きベクトルを使用したり、時間方向に動きベクトルを補間する処理等により改善することが可能である。
【００３７】
低照度すなわち入力画像のダイナミックレンジが低い場合には、動き補償の信頼度が低下する。このため、画像の性質に関係なく、動き補償フレームを被加算画像として使用しない若しくは動き補償フレームに対する非動き補償フレームのブレンド率σを大きくしたものを被加算画像とする。
【００３８】
なお、照度は、例えば、ルクス([lux]または[lx]）を単位として規定される。他の単位により照度が規定されてもよい。さらに、本開示は、照度を高照度および低照度に２分した処理に限定されるものではない。
【００３９】
以上を踏まえ、一実施形態の概要の一例を図５に示す。ターゲット画像Ｐ１００および参照画像Ｐ２００を使用して動き検出を行い動きベクトルを得る処理および動きベクトルを使用して動き補償を行い動き補償画像Ｐ３００を得る処理は、一般的なＮＲフレーム処理と同様である。
【００４０】
第１の画像の一例である動き補償画像Ｐ３００と、第２の画像の一例である参照画像Ｐ２００とを所定のブレンド率σによりブレンドするブレンド処理が行われる。ブレンド処理の結果、第３の画像の一例である被加算画像Ｐ５００が生成される。ブレンド率σは、例えば、動き補償画像Ｐ３００に対する参照画像Ｐ２００に対する割合を意味する。参照画像Ｐ２００に対する動き補償画像Ｐ３００の割合によりブレンド率が規定されてもよい。ブレンド率σが０である場合には、被加算画像Ｐ５００は動き補償画像Ｐ３００そのものになる。ブレンド率σが１００である場合には、被加算画像Ｐ５００は参照画像Ｐ２００そのものになる。ブレンド率σは、例えば、入力画像の明るさ（レベル）に応じて適切に決定される。例えば、入力画像の明るさが大きくなるにつれ、ブレンド率σが小さくなるようにブレンド率σが設定される。
【００４１】
そして、ターゲット画像Ｐ１００と被加算画像Ｐ５００とを加算する画像加算処理がなされる。画像加算処理における画素単位の加算率αを決定する加算率決定処理が行われてもよい。画像加算処理の結果、フレームＮＲ処理が施された出力画像Ｐ６００が得られる。一実施形態におけるフレームＮＲ処理により、出力画像Ｐ６００をノイズが低減された画像とすることができるとともに、動き検出の不正確さ等に起因する画質の劣化を防止できる。なお、出力画像Ｐ６００は、次のターゲット画像に対する参照画像として設定される。
【００４２】
「一実施形態の処理の流れ」
図６は、一実施形態の主な処理の流れを示すフローチャートである。図６に示す処理は、例えば、ソフトウェアによる処理により実現される。なお、各処理の詳細および以下に説明する処理を実現するハードウェアの構成の一例については、後述する。
【００４３】
ステップＳ１では、ターゲットフレームがｐ画素×ｑ画素のブロックに分割される。分割されたブロックを単位として、ローカル動きベクトルが検出される。そして、処理がステップＳ２に進む。
【００４４】
ステップＳ２では、ブロック毎のグローバル動きベクトルが検出される。そして、処理がステップＳ３に進む。
【００４５】
ステップＳ３では、ブロック単位でローカル動きベクトルおよびグローバル動きベクトルの何れかが選択される。そして、処理がステップＳ４に進む。
【００４６】
ステップＳ４では、ブロック単位で動き補償画像が生成される。動き補償の際に使用されるベクトルは、ステップＳ３で決定されたローカル動きベクトルまたはグローバル動きベクトルである。そして、処理がステップＳ５に進む。
【００４７】
ステップＳ５では、動き補償画像と参照画像とが所定のブレンド率σでもってブレンドされ、被加算画像が生成される。ブレンド率σは、例えば、入力画像の明るさに応じて設定される。そして、処理がステップＳ６に進む。
【００４８】
ステップＳ６では、ターゲット画像と被加算画像とが、例えば、画素単位で加算されることにより出力画像が生成される。生成された出力画像が次の参照画像として使用される。全てのターゲット画像に対する処理が終了するまでステップＳ１以降の処理が繰り返される。
【００４９】
「動きベクトルの検出および動きベクトルに対する信頼性の評価」
一実施形態では、１画面を多数個のブロックに分割する。図７に示すように、ターゲットフレーム１０を、例えば、６４画素×６４ラインのターゲットブロック１１に分割する。ターゲットブロック１１毎の動きベクトルが検出される。ターゲットブロック毎に検出される動きベクトルを、ローカル動きベクトル（ＬＭＶ）と適宜、称する。他の手法によりローカル動きベクトルが検出されてもよい。ターゲットブロック１１毎にローカル動きベクトル１２が検出される。さらに、一実施形態では、検出された個々のローカル動きベクトル１２の信頼性を示す指標を算出する。
【００５０】
ここで、ブロック単位の動きベクトルを検出する処理では、例えば、ターゲットブロックについて、参照画像の各ブロックの中から相関性が最も高いブロックが探索される、ブロックマッチング法が用いられる。参照画像の各ブロックを参照ブロックと適宜、称する。ターゲットブロックに対して、相関性が最も高い参照ブロックを動き補償ブロックと適宜、称する。
【００５１】
ローカル動きベクトル１２は、ターゲットブロックと動き補償ブロックとの間の位置ずれとして求められる。ターゲットブロックと参照ブロックとの間の相関性の高さは、例えば、双方のブロック内の各画素の輝度値の差分絶対値総和（ＳＡＤ：Sum of Absolute Difference）値によって評価される。ＳＡＤ値が小さいほど相関が高いものとされる。なお、各ターゲットブロックまたは各参照ブロックについてのＳＡＤ値を記憶したものをＳＡＤテーブルと適宜、称する。
【００５２】
そして、ローカル動きベクトル１２の信頼性の指標に基づいて、ターゲットフレームについて求めた複数個のローカル動きベクトル１２の中から信頼性の高いローカル動きベクトル１２を抽出する。
【００５３】
動きベクトル（ここでは、ローカル動きベクトル１２）の信頼性評価方法の一例について、図８を参照して説明する。図８は、１のターゲットブロックについてのＳＡＤテーブルにおけるＳＡＤ値を模式的に示したものである。図８の横軸はサーチ範囲を示し、縦軸はＳＡＤ値を示す。
【００５４】
通常のブロックマッチング処理の場合、動きベクトルを検出するためにはＳＡＤテーブルにおけるＳＡＤ値の最小値のみが検出対象とされる。このＳＡＤ値の最小値は、ＳＡＤテーブルにおけるＳＡＤ値の第１極小値であり、図８おいては、点２０により示す位置となっている。動き原点から点２０により示すＳＡＤ値の最小値位置との間のベクトルとして動きベクトル（ローカル動きベクトル１２）が検出される。
【００５５】
ノイズが存在しない理想的な状態を考えれば、サーチ範囲内の複数の参照ブロックとターゲットブロックとの相関値を求めたとき、ＳＡＤテーブルは一様に下に凸となり、ＳＡＤ値の極小値が１つのみ存在する状態となる。しかし、実際の撮像状況においては、光量変化や、動き物体の動きなどの影響のほか、種々のノイズのため、ＳＡＤテーブルは一様に下に凸となることは殆どなく、複数個のＳＡＤ値の極小値が存在するのが一般的である。
【００５６】
そこで、この一実施形態では、ＳＡＤ値の最小値に等しい第１極小値を呈する参照ブロックの位置に基づいて動きベクトルを検出するが、このＳＡＤ値の第１極小値を除くＳＡＤ値のうちの極小値、すなわち、ＳＡＤ値の第２極小値を、信頼性の指標を生成するために検出する。図８においては、点２０により示す位置が第１極小値を示し、点２１により示す位置が第２極小値を示している。
【００５７】
一実施形態では、第１極小値（ＭｉｎＳＡＤ）と第２極小値（Ｂｔｍ２ＳＡＤ）の差の値を、動きベクトルの信頼性を示す指標値Ｆｔとする。すなわち、指標値Ｆｔは、例えば、下記の式（１）により規定される。
Ｆｔ＝ＭｉｎＳＡＤ−Ｂｔｍ２ＳＡＤ・・・（１）
【００５８】
ノイズ等の影響が少なければ、ＳＡＤ値の第１極小値とＳＡＤ値の第２極小値との差である指標値Ｆｔの値が大きくなり、ＳＡＤ値の第１極小値、すなわち、ＳＡＤ値の最小値から検出される動きベクトルの信頼性は高くなる。一方、ノイズ等が多い環境においては、指標値Ｆｔの値が小さくなり、いずれが動きベクトルに正しく対応しているか分からない状況になるので、信頼性が低いことになる。
【００５９】
なお、ＳＡＤ値の第１極小値しか得られず、第２極小値が得られない場合には、ＳＡＤ値の理論上の最大値またはＳＡＤテーブル内のＳＡＤ値の最大値を、その動きベクトルの信頼性の指標値としてもよい。したがって、そのようなブロックの動きベクトルは信頼性の高いものとされるが、このようなブロックは殆ど存在しないので、ＳＡＤ値の第１極小値しか得られず、第２極小値が得られないようなブロックの動きベクトルは、信頼性の評価から外すようにしてもよい。
【００６０】
なお、ＳＡＤ値の第１極小値とＳＡＤ値の第２極小値との差の代わりに、ＳＡＤ値の第１極小値とＳＡＤ値の第２極小値との比を、ローカル動きベクトルの信頼性を示す指標値としてもよい。
【００６１】
一実施形態の動きベクトルの信頼性指標によれば、従来のような画像のエッジや特徴などの画像成分を用いるものではなく、ターゲットフレームと参照フレームとの間の相関値のみを用いているので、ノイズに対してロバスト性が高い。すなわち、画像のノイズに影響されること無く、精度の高い動きベクトルの信頼性指標が得られる。
【００６２】
また、相関値の第１極大値（例えば、ＳＡＤ値の第１極小値）と、相関値の第２極大値（例えば、ＳＡＤ値の第２極小値）との差または比を用いていることも、動きベクトルの信頼性指標が、ノイズに対してロバスト性が高い理由となっている。
【００６３】
すなわち、一般に、ノイズレベルが高くなると、正しい動きベクトルであったとしても、ＳＡＤ値が上昇してしまう。このため、信頼性の高い動きベクトルを抽出する目的で、動きベクトルの信頼性を示す指標値Ｆｔに対して閾値を設定し、当該閾値との比較処理を行う場合には、その閾値自体もノイズレベルに応じて変化させる必要がある。
【００６４】
これに対して、一実施形態による動きベクトルの信頼性を示す指標値Ｆｔの場合、ノイズレベルが高くなると、ＳＡＤ値の第１極小値と、ＳＡＤ値の第２極小値の両方が、ノイズレベルに応じて、値が上昇する。このため、ＳＡＤ値の第１極小値とＳＡＤ値の第２極小値との差に関しては、ノイズの影響が相殺されることになる。
【００６５】
つまり、ノイズレベルに依らない一定値の閾値処理が可能となる。ＳＡＤ値の第１極小値とＳＡＤ値の第２極小値との比を、動きベクトルの信頼性を示す指標値Ｆｔとして用いる場合も同様のことが言える。
【００６６】
例示したようにして、個々のローカル動きベクトル１２の信頼性を評価する。そして、信頼性の高いローカル動きベクトル１２のみから、グローバルモーションを算出する。算出したグローバルモーションを用いてターゲットブロック毎のグローバル動きベクトルを算出する。グローバル動きベクトルとは、画面全体に加わっている動きに応じた動きベクトルである。
【００６７】
「画像の特徴に応じた動きベクトルの選択」
図９は、あるターゲットフレーム１４のターゲットブロック１５毎のグローバル動きベクトル１６を示したものである。図１０は、ターゲットフレーム１４のターゲットブロック１５毎のローカル動きベクトル１７を示したものである。なお、図示が煩雑になることを防止するため、参照符号は一部の動きベクトル（矢印）のみに付している。
【００６８】
ここで、上述した表２に示すように、画像における特徴を認識しやすい箇所（例えば、動被写体が存在する部分）における動き検出の信頼性は高く、動きベクトルの信頼性が高い。これに対して、画像における特徴を認識しづらい箇所（例えば、背景部分）における動き検出の信頼度は低く、動きベクトルの信頼性が低い。図１０では、ハッチングが付された背景部分のローカル動きベクトルの信頼性が低い。そこで、一実施形態では、図１１に示すように、画面において動被写体が存在するブロックに関してはローカル動きベクトルをＮＲ処理用動きベクトルとして設定する。背景部分に関してはグローバル動きベクトルをＮＲ処理用動きベクトルとして設定する。設定されたＮＲ処理用動きベクトルが動き補償画像を生成する処理において使用される。
【００６９】
算出したグローバル動きベクトルと、ターゲットブロック毎のローカル動きベクトルとを比較した背景および動被写体を判別する処理の一例について説明する。一実施形態では、算出したグローバル動きベクトルと、ターゲットブロック毎のローカル動きベクトルとを比較して、両者の一致度合いを判定する。そして、その判定結果として、ターゲットブロック毎のローカル動きベクトルとグローバル動きベクトルとの一致度合いを示す指標値を算出する。この指標値をヒット率と適宜、称する。
【００７０】
このような評価判定を行うのは、画像に含まれるノイズの、ブロックマッチングで算出される相関値に与える影響を考慮したものである。
【００７１】
ターゲットブロックについてのグローバル動きベクトルとローカル動きベクトルとが一致したときには、そのターゲットブロックは背景画像部分であると判断できる。したがって、この一致度合いの指標値は、ターゲットブロックの画像が、背景画像部分と一致しているかどうかの度合い（背景一致度合い）を示すものとなる。
【００７２】
ここで、グローバル動きベクトルとローカル動きベクトルとが一致しない場合には、画像ノイズを考慮しなければ、そのターゲットブロックは、全て動被写体部分であると判断しても良い。この場合、ローカル動きベクトルに対応する参照ブロックについてのＳＡＤ値が最小となっており、グローバル動きベクトルに対応する参照ブロックについてＳＡＤ値より小さい。
【００７３】
しかし、一般に撮像画像などの画像中にはノイズが含まれる。この画像ノイズを考慮すると、グローバル動きベクトルとローカル動きベクトルとが一致しない場合であっても、ターゲットブロックが背景部分である場合がある。そして、そのようなターゲットブロックでは、ローカル動きベクトルに対応する参照ブロックについてのＳＡＤ値と、グローバル動きベクトルに対応する参照ブロックについてのＳＡＤ値との差は、前記画像ノイズ分よりも小さいものとなると考えられる。
【００７４】
そこで、一実施形態では、グローバル動きベクトルに対応する参照ブロックについてのＳＡＤ値を、前記画像のノイズ分を反映した値に補正し、その補正後のＳＡＤ値と、ローカル動きベクトルに対応する参照ブロックについてのＳＡＤ値とを比較する。そして、補正後のＳＡＤ値が小さいときには、当該ターゲットブロックは、背景画像部分であると評価するようにする。すなわち、一実施形態では、補正したＳＡＤ値に基づいて、前記背景一致度合いを評価する。このとき、グローバル動きベクトルは、当該ターゲットブロックについての本来のローカル動きベクトルに一致したと考えられる。
【００７５】
背景一致度合いの評価の結果、ターゲットブロックが背景画像部分であると判定されたときには、当該ターゲットブロックについては、グローバル動きベクトルを、ＮＲ処理用動きベクトルとして出力する。背景一致度合いの評価の結果、ターゲットブロックが背景画像部分と一致していないと判定されたときには、当該ターゲットブロックについては、ローカル動きベクトルを、ＮＲ処理用動きベクトルとして出力する。
【００７６】
なお、グローバル動きベクトルとローカル動きベクトルとが全く一致したときには、グローバル動きベクトルとローカル動きベクトルのいずれをＮＲ処理用動きベクトルとしてもよい。
【００７７】
そして、ターゲットブロック単位のＮＲ処理用動きベクトルを用いて、ターゲットフレームに対して、参照フレームをブロック単位で位置合わせを行い、動き補償画像（動き補償フレーム）を生成する。なお、全てのＮＲ処理用動きベクトルがグローバル動きベクトルまたはローカル動きベクトルになることもあり得る。つまり、動き補償画像は、グローバル動きベクトルおよびローカル動きベクトルの少なくとも一方を使用することにより得られる。
【００７８】
図１２は、背景および動被写体を判別する方法の一例を説明するための図である。図１２は、横軸にサーチ範囲を取り、縦軸にＳＡＤ値を取ったときの、１個のターゲットブロックについてのＳＡＤテーブルの内容（ＳＡＤ値）を示す図である。横軸の各値は、参照ブロック位置（参照ベクトル）となり、実線がＳＡＤテーブルの内容を示すものとなる。これは、図８に示したものと同様である。
【００７９】
図１２において、最小ＳＡＤ値となる参照ブロックの位置（つまり参照ベクトル）２０は、図８と同様に、ブロックマッチングによりローカル動きベクトルとして検出される。一方、グローバル動きベクトルとなる参照ブロックの位置が、図１２において、位置２２であるとする。
【００８０】
このとき、ローカル動きベクトルにおけるＳＡＤ値と、グローバル動きベクトルにおけるＳＡＤ値とが、画像のノイズ分に応じた差の範囲にあれば、グローバル動きベクトルが、最小ＳＡＤ値を取る参照ベクトルとなっている可能性がある。
【００８１】
つまり、本来はグローバル動きベクトル（参照ブロックの位置）でのＳＡＤ値が最小となるべきであったのに、ノイズのために、異なる参照ブロックの位置（これがローカル動きベクトル）を最小として検出されてしまう可能性がある。
【００８２】
そこで、この例では、画像のノイズ分に応じたオフセット値ＯＦＳを、グローバル動きベクトルでのＳＡＤ値に付加して補正する。この例の場合には、オフセット値ＯＦＳを、グローバル動きベクトルでのＳＡＤ値（ＳＡＤ＿ＧＭＶとする）から減算して補正する。補正後のＳＡＤ値をＭｉｎＳＡＤ＿Ｇとすると、ＭｉｎＳＡＤ＿Ｇは下記の式（２）により規定される。
ＭｉｎＳＡＤ＿Ｇ＝ＳＡＤ＿ＧＭＶ−ＯＦＳ・・・（式２）
【００８３】
補正後ＳＡＤ値ＭｉｎＳＡＤ＿Ｇと、ローカル動きベクトルでのＳＡＤ値（ＭｉｎＳＡＤ）とを比較する。比較の結果、ＭｉｎＳＡＤ＿Ｇ＜ＭｉｎＳＡＤであれば、当該ターゲットブロックについてのＳＡＤ値の最小値は、グローバル動きベクトルに対応する参照ブロックについてのＳＡＤ値の補正値であるＭｉｎＳＡＤ＿Ｇであると評価する。図１２は、ＭｉｎＳＡＤ＿Ｇ＜ＭｉｎＳＡＤである場合を示している。
【００８４】
図１２のように、ＭｉｎＳＡＤ＿Ｇ＜ＭｉｎＳＡＤとなる場合は、当該ターゲットブロックについての真のローカル動きベクトルは、グローバル動きベクトルに一致すると判定する。その場合は、当該ターゲットブロックに対する背景一致度合いは高いと評価し、当該ターゲットブロックについてのヒット率βは大きな値とする。当該ターゲットブロックについてのＮＲ処理用動きベクトルを、グローバル動きベクトルに設定する。それ以外の場合は、ＮＲ処理用動きベクトルを、ローカル動きベクトルに設定する。
【００８５】
ここまで説明した処理の流れの一例をまとめたフローチャートを図１３に示す。ステップＳ１０において、最初のターゲットブロックが設定される。そして、処理がステップＳ１１に進む。
【００８６】
ステップＳ１１では、マッチング処理範囲の参照フレームの画像データのうちから、ブロックマッチング処理する参照ブロックが設定される。そして、処理がステップＳ１２に進む。
【００８７】
ステップＳ１２では、設定されたターゲットブロックと、設定された参照ブロックとについてブロックマッチング処理が行われ、ＳＡＤ値が計算される。計算されたＳＡＤ値が参照ブロックの位置情報（参照ベクトル）と共に出力される。そして、処理がステップＳ１３に進む。
【００８８】
ステップＳ１３では、参照ベクトルがグローバル動きベクトルと一致しているか否か判別される。参照ベクトルがグローバル動きベクトルと一致したと判別したときには、そのＳＡＤ値ＳＡＤ＿ＧＭＶからオフセット値ＯＦＳを減算する処理が行われる。そして、その減算結果を補正後ＳＡＤ値ＭｉｎＳＡＤ＿Ｇとして、その参照ブロック位置（参照ベクトル＝グローバル動きベクトル）とともに保持する。参照ベクトルがグローバル動きベクトルとは一致していないと判別したときには、処理がステップＳ１４に進む。
【００８９】
ステップＳ１４では、最小ＳＡＤ値ＭｉｎＳＡＤと、その参照ブロック位置（参照ベクトル）との更新処理が行われる。つまり、それまでに保持されている最小ＳＡＤ値ＭｉｎＳＡＤと、新たに算出したＳＡＤ値とを比較して、小さい方のＳＡＤ値を最小ＳＡＤ値ＭｉｎＳＡＤとして保持すると共に、参照ブロック位置（参照ベクトル）も最小ＳＡＤ値を呈するものに更新する。そして、処理がステップＳ１５に進む。
【００９０】
ステップＳ１５では、サーチ範囲内の全ての参照ブロックついてのターゲットブロックとのブロックマッチングが終了したか否かが判別される。サーチ範囲内の全ての参照ブロックについての処理が終了していないと判別されたときには、処理がステップＳ１６に進み、次の参照ブロックが設定される。そして、処理がステップＳ１２に戻り、ステップＳ１２以降の処理が繰り返される。ステップＳ１５において、サーチ範囲内の全ての参照ブロックついての処理が終了したと判別されたときには、処理がステップＳ１７に進む。
【００９１】
ステップＳ１７では、ローカル動きベクトルと、最小ＳＡＤ値ＭｉｎＳＡＤとが検出される。また、補正後ＳＡＤ値ＭｉｎＳＡＤ＿Ｇも検出される。そして、処理がステップＳ１８に進む。
【００９２】
ステップＳ１８では、最小ＳＡＤ値ＭｉｎＳＡＤと、補正後ＳＡＤ値ＭｉｎＳＡＤ＿Ｇとが比較される。比較の結果、ＭｉｎＳＡＤ＞ＭｉｎＳＡＤ＿Ｇではないと判別されたときには、ターゲットブロックが背景に一致していないと判別される。この場合には、ローカル動きベクトルが当該ターゲットブロックのＮＲ処理用動きベクトルとして決定され出力される。
【００９３】
また、ステップＳ１８で、ＭｉｎＳＡＤ＞ＭｉｎＳＡＤ＿Ｇであると判別されたときには、ターゲットブロックは背景に一致している度合いが高いと判別される。この場合には、グローバル動きベクトルが当該ターゲットブロックのＮＲ処理用の動きベクトルとして決定され出力される。そして、処理がステップＳ１９に進む。
【００９４】
ステップＳ１９では、ステップＳ１８において決定されたローカル動きベクトルまたはグローバル動きベクトルに基づいて、動き補償画像（ＭＣ画像）が生成される。そして、処理がステップＳ２０に進む。
【００９５】
ステップＳ２０では、ターゲットフレーム内の全てのターゲットブロックについての処理が終了したか否かが判別される。ターゲットフレーム内の全てのターゲットブロックについての処理が終了していないと判別されたときには、処理がステップＳ２１に進み、次のターゲットブロックが設定される。そして、処理がステップＳ１１に戻り、ステップＳ１１以降の処理が繰り返される。
【００９６】
また、ステップＳ２０において、ターゲットフレーム内の全てのターゲットブロックについての処理が終了したと判別されたときには、一連の処理が終了する。
【００９７】
「一実施形態における動きベクトル検出処理について」
図１４は、一実施形態における動きベクトル検出処理についての説明図である。図１４を参照すると、一実施形態における動きベクトル検出処理では、まず縮小面における動きベクトルが検出され、その結果に基づいて、基底面における動きベクトルが検出される。
【００９８】
ブロック単位の動きベクトルを検出する処理では、最小のＳＡＤ値を示す参照ブロックが動き補償ブロックとして特定される。つまり、動き補償ブロックを特定するためには、参照ブロックの位置を順次移動させながら、最小のＳＡＤ値を示す参照ブロックを探索する必要がある。例えば、精度が１ピクセルである動きベクトルを検出しようとする場合、動き補償ブロックを１ピクセルの精度で特定する必要があり、従って、最小のＳＡＤ値を示す参照ブロックの探索においても、参照ブロックを１ピクセル単位で順次移動させる必要がある。
【００９９】
このような参照ブロックの探索を、ターゲット画像および参照画像に対してそのまま実行する場合、ＳＡＤ値を算出する回数が多くなり、処理負荷が増大する。そこで、一実施形態では、図示されている例のように、ターゲット画像および参照画像をそれぞれ縮小した画像（縮小面）を作成し、縮小面において動きベクトルを検出した結果に基づいて、縮小されていないターゲット画像および参照画像（基底面）において動きベクトルを検出する。
【０１００】
具体的には、まず、ターゲット画像および参照画像の水平方向および垂直方向がそれぞれ１／ｎ（ｎ＝２，３，・・・）に縮小されて、縮小面ターゲット画像および縮小面参照画像が作成される。これによって、基底面ターゲットブロック３１と、基底面ターゲットブロック３１の参照画像への射影イメージに基づいて設定されるサーチ範囲３２およびマッチング処理範囲３３とは、それぞれ１／ｎに縮小されて、縮小面ターゲットブロック４１、縮小面サーチ範囲４２、および縮小面マッチング処理範囲４３になる。
【０１０１】
次に、縮小面参照画像において、縮小面マッチング処理範囲４３内に設定される複数個の縮小面参照ブロック４４と、縮小面ターゲットブロック４１との間のＳＡＤ値を算出することによって、縮小面参照ブロック４４の中で縮小面ターゲットブロック４１との相関性が最も高いブロックが、縮小面動き補償ブロックとして特定される。さらに、縮小面ターゲットブロック４１と縮小面動き補償ブロックとの間の位置ずれが、縮小面動きベクトル４５として取得される。
【０１０２】
次に、基底面参照画像において、縮小面動きベクトル４５をｎ倍した基底面仮動きベクトル３５が定義される。さらに、基底面ターゲットブロック３１の基底面参照画像への射影イメージから基底面仮動きベクトル３５の分だけ移動した位置の近傍に、基底面サーチ範囲３６および基底面マッチング処理範囲３７が設定される。続いて、基底面マッチング処理範囲３７内に設定される複数の基底面参照ブロック３８と、基底面ターゲットブロック３１との間のＳＡＤ値を算出することによって、基底面参照ブロック３８の中で基底面ターゲットブロック３１との相関性が最も高いブロックが、基底面動き補償ブロックとして特定される。さらに、基底面ターゲットブロック３１と基底面動き補償ブロックとの間の位置ずれが、基底面動きベクトルとして取得される。
【０１０３】
ここで、縮小面参照画像が基底面参照画像に比べて１／ｎに縮小されているため、縮小面動きベクトル４５の精度は、基底面で同様の探索によって求められる動きベクトルの精度のｎ倍の低い精度になる。例えば、参照ブロックを１ピクセル単位で順次移動させて動き補償ブロックを探索して動きベクトルを得ようとする場合、基底面の探索で得られる動きベクトルの精度は１ピクセルになるが、縮小面の探索で得られる動きベクトルの精度はｎピクセルになる。
【０１０４】
それゆえ、一実施形態では、縮小面の探索によって得られた縮小面動きベクトル４５に基づいて、基底面参照画像において基底面サーチ範囲３６および基底面マッチング処理範囲３７が設定され、所望の精度での動き補償ブロックおよび動きベクトルの探索が実行される。縮小面動きベクトル４５によって、ｎ倍の低い精度ではあるものの、動き補償ブロックが存在しうる範囲は特定されている。そのため、基底面の探索の範囲は、元のサーチ範囲３２よりもずっと小さい基底面サーチ範囲３６でよい。例えば、図示された例において、基底面の探索によって１ピクセル単位の動きベクトルを得ようとする場合、基底面サーチ範囲３６は、水平方向および垂直方向がいずれもｎピクセルの範囲でありうる。
【０１０５】
一実施形態における動きベクトル検出処理では、元のサーチ範囲３２の全体における動き補償ブロックの探索が、縮小面サーチ範囲４２における探索に置き換えられる。これによって、参照ブロックのＳＡＤ値を算出する回数が、ターゲット画像および参照画像に対してそのまま実行する場合に比べて例えば１／ｎに削減される。また、一実施形態における動きベクトル検出処理では、基底面サーチ範囲３６における追加の探索が実行されるが、基底面サーチ範囲３６は、元のサーチ範囲３２よりもずっと小さい範囲であるため、この追加の探索において参照ブロックのＳＡＤ値を算出する回数は多くない。したがって、一実施形態における動きベクトル検出処理では、ターゲット画像および参照画像に対してそのまま実行する場合に比べて処理負荷が軽減される。
【０１０６】
以上説明したように、一実施形態におけるフレームＮＲ処理では、連続して撮影された複数の画像を動き補償後に重ね合わせることによって、画像のノイズが低減される。動き補償のための動きベクトルの検出では、基底面を縮小した縮小面を用いた探索によって、より少ない負荷で処理が実行される。
【０１０７】
「被加算画像の生成について」
次に、被加算画像の生成処理（図６におけるステップＳ５の処理）について、説明する。図１５Ａは、照度に対応する入力画像のレベルの変化の一例である。図１５Ａにおける横軸は撮像の際の照度を示し、図１５Ａにおける縦軸は入力画像のレベルを示す。照度が低くなるにつれ、例えば、入力画像のレベルが略線形に低下する。
【０１０８】
入力画像のレベルの低下を補償するために、撮像装置においてゲインを調整する処理が行われる。図１５Ｂは、ゲインの調整の一例を示す。一定の照度までは、ゲインを上げる制御が行われる。この例では、ある照度が閾値として設定され、当該閾値より小さい照度の場合は、それ以上ゲインを上げないようにしている。
【０１０９】
図１５Ｃは、ゲイン調整によって補正された入力画像のレベル（適宜、調整後レベルと称する）の一例を示す。照度が閾値より大きい範囲（ゲイン調整が可能な範囲）では、調整後レベルが略一定となるように調整される。照度が閾値より小さい範囲（ゲイン調整が不可能な範囲）では、調整後レベルが低下する。
【０１１０】
図１６Ａは、図１５Ｃと同様の図である。ここで、上述したように、照度が大きい場合には、動き検出の信頼性が高い。そこで、図１６Ｂに示すように照度の閾値を設定し、照度が閾値より大きい範囲、換言すれば、入力画像の明るさが所定のレベルより大きい範囲は、ＭＣ画像に対する参照画像のブレンド率σが０に設定される。すなわち、ＭＣ画像そのものが被加算画像として設定される。
【０１１１】
そして、動き検出の信頼性が低下する範囲（例えば、照度が閾値より小さい範囲換言すれば入力画像の明るさが所定のレベルより低下する範囲）では、ＭＣ画像に対する参照画像のブレンド率σが大きくなるように、ブレンド率σが設定される。なお、図１６Ｂでは、ＭＣ画像に対する参照画像のブレンド率σがリニアに大きくなるように図示されているが、これに限定されることはない。例えば、ステップ状にブレンド率σが大きくなるように設定されてもよく、２次曲線を描くようにブレンド率σが大きくなるように設定されてもよい。設定されたブレンド率σに基づいて、ＭＣ画像と参照画像とがブレンドされ、被加算画像が生成される。被加算画像がターゲット画像に加算され、最終的に出力画像が得られる。
【０１１２】
「撮像装置の全体構成」
これまで、一実施形態における処理の概要およびそれら処理の詳細について説明した。これらの処理を実現するハードウェアの構成の一例について説明する。
【０１１３】
図１７は、撮像装置の全体構成の一例を示す。撮像装置１００は、静止画または動画を撮像してデジタル方式の画像データとして記録媒体に記録する機能を有する、例えばデジタルカメラなどの電子機器である。撮像装置は、少なくとも被加算画像生成部を有する画像処理装置の一例に相当するものである。なお、画像処理装置は、撮像装置に限らず、パーソナルコンピュータ等の電子機器に組み込まれていてもよい。
【０１１４】
撮像装置１００は、制御部１０１と、操作部１０２と、撮像光学系１０３と、メモリ１０４と、ストレージ１０５と、タイミングジェネレータ１０６と、撮像素子１０７と、検波部１０８と、ゲイン調整部１０９と、信号処理部１１０と、ＲＡＷ／ＹＣ変換部１１１と、動きベクトル検出部１１２と、動き補償画像生成部１１３と、被加算画像生成部１１４と、画像加算部１１５と、検出部１１６と、静止画コーデック１２０と、動画コーデック１２１と、ＮＴＳＣエンコーダ１２２と、およびディスプレイ１２３とを含む。これらの各構成要素は、システムバス１３０またはシステムバス１３１を介して相互に接続されている。システムバス１３０またはシステムバス１３１を介して、データやコマンドのやり取りが可能とされる。
【０１１５】
制御部１０１は、撮像装置１００の各部の動作を制御する。制御部１０１は、例えば、メモリ１０４に格納されたプログラムに基づいて動作することによって、制御のために必要な各種の演算処理を実行するＣＰＵ（Central Processing Unit）により構成される。制御部１０１は、演算処理のための一時格納領域としてメモリ１０４を用いてもよい。なお、制御部１０１が動作するためのプログラムは、メモリ１０４に予め書き込まれたものであってもよく、ディスク状記録媒体またはメモリカードなどのリムーバブル記憶媒体に格納されて撮像装置１００に提供されるものであってもよい。また、制御部１０１が動作するためのプログラムは、ＬＡＮ（Local Area Network）や、インターネット等のネットワークを介して撮像装置１００にダウンロードされるものであってもよい。
【０１１６】
制御部１０１は、例えば、入力画像の明るさを示す検波情報を検波部１０８から取得する。そして、検波情報に基づいてゲイン調整部１０９に対するゲインを適切に制御する。さらに、検波情報に基づいて、ＭＣ画像に対する参照画像のブレンド率σを適切に設定する。すなわち、制御部１０１は、特許請求の範囲におけるブレンド率設定部として機能する。なお、調整後レベルに応じて、制御部１０１がブレンド率σを設定してもよい。
【０１１７】
操作部１０２は、撮像装置１００を操作するためのユーザインターフェースとして機能する。操作部１０２は、撮像装置１００の外装に設けられたシャッターボタンなどの操作ボタンや、タッチパネル、またはリモートコントローラなどである。操作部１０２は、ユーザの操作に基づいて、撮像装置１００の起動および停止、静止画もしくは動画の撮影開始および終了、または撮像装置１００の各種機能の設定などの操作信号を制御部１０１に出力する。
【０１１８】
撮像光学系１０３は、フォーカスレンズ、ズームレンズ等の各種レンズ、光学フィルタ、および絞りなどの光学部品からなる。被写体から入射された光学像（被写体像）は、撮像光学系１０３における各光学部品を介して、撮像素子１０７の露光面に結像される。
【０１１９】
メモリ１０４には、撮像装置１００の処理に関するデータが格納される。メモリ１０４は、例えば、フラッシュＲＯＭ（Read Only Memory）またはＤＲＡＭ（Dynamic Random Access Memory）などの半導体メモリにより構成される。メモリ１０４には、例えば、制御部１０１が用いるプログラム、および画像処理機能によって処理される画像信号が、一時的または継続的に格納される。メモリ１０４に格納される画像信号は、例えば、後述する基底面および縮小面のターゲット画像、参照画像、および出力画像である。
【０１２０】
ストレージ１０５には、撮像装置１００によって撮像された画像が、画像データとして格納される。ストレージ１０５は、例えば、フラッシュＲＯＭなどの半導体メモリ、ＢＤ（Blu-ray Disc(登録商標)）、ＤＶＤ（Digital Versatile Disc）、もしくはＣＤ（Compact Disc）などの光ディスク、またはハードディスクなどである。ストレージ１０５は、撮像装置１００に内蔵される記憶装置であってもよく、メモリカードなどの撮像装置１００に着脱可能なリムーバブルメディアであってもよい。
【０１２１】
タイミングジェネレータ１０６は、制御部１０１の指示に従って、垂直転送のための４相パルス、フィールドシフトパルス、水平転送のための２相パルス、シャッタパルスなどの各種パルスを生成して撮像素子１０７に供給する。
【０１２２】
撮像素子（イメージセンサ）１０７は、例えば、ＣＣＤ（Charge Coupled Device）またはＣＭＯＳ（Complementary Metal Oxide Semiconductor）などの固体撮像素子により構成される。撮像素子１０７は、タイミングジェネレータ１０６からの動作パルスによって駆動され、撮像光学系１０３から導かれた被写体像を光電変換する。これによって、撮像画像を表す画像信号が、信号処理部１１０に出力される。ここで出力される画像信号は、タイミングジェネレータ１０６からの動作パルスに同期した信号であって、赤（Ｒ）、緑（Ｇ）、および青（Ｂ）の３原色から構成されるベイヤー配列のＲＡＷ信号（生の信号）である。
【０１２３】
検波部１０８は、ＲＡＷ信号のレベル（例えば、輝度情報）を検出する。検出結果を、入力画像の明るさを示す検波情報として、制御部１０１に出力する。
【０１２４】
ゲイン調整部１０９は、後段の信号処理において一定の信号レベルを維持できるように、入力信号にゲインをかける。ゲイン調整部１０９におけるゲインは、例えば、制御部１０１によるゲインコントロール信号に応じて制御される。
【０１２５】
信号処理部１１０以降の各部の画像処理機能は、例えば、ＤＳＰ（Digital Signal Processor）を用いて実現される。信号処理部１１０は、撮像素子１０７から入力された画像信号に、ノイズ除去や、ホワイトバランス調整、色補正、エッジ強調、ガンマ補正、解像度変換などの画像信号処理を実行する。信号処理部１１０は、デジタル画像信号をメモリ１０４に一時的に格納してもよい。ＲＡＷ／ＹＣ変換部１１１は、信号処理部１１０から入力されたＲＡＷ信号をＹＣ信号に変換して、動きベクトル検出部１１２に出力する。ここで、ＹＣ信号は、輝度成分（Ｙ）、および赤／青の色差成分（Ｃｒ／Ｃｂ）を含む画像信号である。
【０１２６】
動きベクトル検出部１１２は、ターゲット画像および参照画像の画像信号を、例えば、メモリ１０４から読み込む。動きベクトル検出部１１２は、例えばブロックマッチングなどの処理によって、これらの画像の間の動きベクトル（ローカル動きベクトル）を検出する。さらに、ローカル動きベクトルに対する信頼性を評価することによりグローバルモーションを算出する。算出したグローバルモーションを用いてターゲットブロック毎のグローバル動きベクトルを算出する。
【０１２７】
動きベクトル検出部１１２は、ローカル動きベクトルおよびグローバル動きベクトルに基づいて、ターゲットブロックが背景および動被写体の何れであるかを判定する。判定結果に応じて、ローカル動きベクトルまたはグローバル動きベクトルをＮＲ処理用動きベクトルとして決定する。動きベクトル検出部１１２は、ターゲット画像と、当該ターゲット画像に対応する参照画像と、ＮＲ処理用動きベクトルとを動き補償画像生成部１１３に対して出力する。
【０１２８】
動き補償画像生成部１１３は、動きベクトル検出部１１２から供給されるＮＲ処理用動きベクトルを使用してターゲット画像と参照画像との間の動きを補償し、動き補償画像を生成する。具体的には、参照画像に対して、ＮＲ処理用動きベクトルに基づくグローバルモーションに対応する処理、つまり、平行移動、回転、拡大縮小等を伴う変形処理を施して動き補償画像を生成する。動き補償画像生成部１１３は、生成した動き補償画像と、ターゲット画像とを被加算画像生成部１１４に出力する。
【０１２９】
被加算画像生成部１１４は、少なくとも、動き補償画像および参照画像を取得する。この例では、被加算画像生成部１１４は、さらに、ターゲット画像を取得する。なお、取得する画像（動き補償画像および参照画像など）は、フレーム単位でもよく、ブロック単位または画素単位で取得してもよい。そして、被加算画像生成部１１４は、動き補償画像と参照画像とを所定のブレンド率σでもってブレンドし、被加算画像を生成する。ブレンド率σは、例えば、制御部１０１から供給される。すなわち、被加算画像生成部１１４は、特許請求の範囲における画像取得部および画像生成部の一例として機能する。被加算画像生成部１１４は、ターゲット画像および被加算画像を画像加算部１１５に出力する。
【０１３０】
画像加算部１１５は、ターゲット画像と被加算画像とを加算することによりフレームＮＲ処理を行い、出力画像を生成する。生成された出力画像は、ノイズが低減された画像となる。生成された出力画像が、例えば、メモリ１０４に記憶される。生成された出力画像が、ディスプレイ１２３に表示されてもよい。
【０１３１】
検出部１１６は、撮像装置１００の動きを検出する。検出部１１６は、例えば、撮像装置１００を固定するための固定部材との接続状態を検出することにより撮像装置１００の動きを検出してもよい。撮像装置１００に組み込まれているセンサ（加速度センサ、ジャイロセンサなど）により撮像装置１００の所定の運動を検出することにより撮像装置１００の動きを検出してもよい。検出部１１６は、検出して得られた信号を検出信号として制御部１０１に出力する。
【０１３２】
静止画コーデック１２０は、操作部１０２によって静止画撮影の指示が取得されている場合（静止画撮影時）に、ＮＲ処理後の画像信号をメモリ１０４から読み込み、例えばＪＰＥＧ（Joint Photographic Experts Group）などの所定の圧縮符号化方式で圧縮し、圧縮後の画像データをストレージ１０５に格納する。また、静止画コーデック１２０は、操作部１０２によって静止画再生の指示が取得されている場合（静止画再生時）に、画像データをストレージ１０５から読み込み、ＪＰＥＧなどの所定の圧縮符号化方式で伸張した画像信号をＮＴＳＣエンコーダ１２２に提供する。
【０１３３】
動画コーデック１２１は、操作部１０２によって動画撮影の指示が取得されている場合（動画撮影時）に、ＮＲ処理後の画像信号をメモリ１０４から読み込み、例えばＭＰＥＧ（Moving Picture Experts Group）などの所定の圧縮符号化方式で圧縮し、圧縮後の画像データをストレージ１０５に格納する。また、動画コーデック１２１は、操作部１０２によって動画再生の指示が取得されている場合（動画再生時）に、画像データをストレージ１０５から読み込み、ＭＰＥＧなど所定の圧縮符号化方式で伸張した画像信号をＮＴＳＣエンコーダ１２２に提供する。
【０１３４】
ＮＴＳＣ（National Television System Committee）エンコーダ１２２は、画像信号をＮＴＳＣ方式の標準カラー映像信号に変換して、ディスプレイ１２３に提供する。静止画撮影時または動画撮影時において、ＮＴＳＣエンコーダ１２２は、ＮＲ処理後の画像信号をメモリ１０４から読み込み、スルー画像または撮像された画像としてディスプレイ１２３に提供する。また、静止画再生時または動画再生時において、ＮＴＳＣエンコーダ１２２は、静止画コーデック１２０または動画コーデック１２１から画像信号を取得し、再生画像としてディスプレイ１２３に提供する。
【０１３５】
ディスプレイ１２３は、ＮＴＳＣエンコーダ１２２から取得した映像信号を表示する。ディスプレイ１２３は、ＬＣＤ（Liquid Crystal Display）または有機ＥＬ（Electro-Luminescence）ディスプレイなどである。また、ＮＴＳＣエンコーダ１２２から出力される映像データは、図示しないＨＤＭＩ（High-Definition Multimedia Interface）(登録商標)などの通信部によって、撮像装置１００から外部に出力されてもよい。
【０１３６】
「ゲイン調整部の構成」
図１８は、ゲイン調整部１０９の構成の一例を示す。ゲイン調整部１０９は、乗算器１０９０を含む。ゲイン調整部１０９には、撮像素子１０７からの画像信号が検波部１０８を介して入力される。さらに、ゲイン調整部１０９には、制御部１０１からゲインコントロール信号が供給される。ゲインコントロール信号は、検波部１０８により得られる検波情報に基づいて、制御部１０１により計算されたゲインを示す信号である。ゲイン調整部１０９の乗算器１０９０は、ゲインコントロール信号に応じたゲインを入力画像信号に対してかける。ゲイン調整がなされた画像信号がゲイン調整部１０９から出力される。
【０１３７】
なお、制御部１０１は、例えば、画像信号のレベルが所定の入力レベルまでは、調整後レベルが一定になるようにゲインを調整するが、画像信号のレベルが当該所定の入力レベルより小さい場合はゲインを調整せずに、調整後レベルが暗くなるようにゲインを設定する。
【０１３８】
「動きベクトル検出部の構成」
図１９は、動きベクトル検出部１１２の構成の一例を示す。動きベクトル検出部１１２は、ターゲットブロックの画素データを保持するターゲットブロックバッファ部２１１と、参照ブロックの画素データを保持する参照ブロックバッファ部２１２とを備える。
【０１３９】
また、動きベクトル検出部１１２は、ターゲットブロックと参照ブロックとで対応する画素についてのＳＡＤ値を計算するマッチング処理部１１２３を備える。また、動きベクトル検出部１１２は、マッチング処理部１１２３から出力されるＳＡＤ値情報からローカル動きベクトルを検出するローカル動きベクトル検出部１１２４を備える。動きベクトル検出部１１２は、さらに、コントロール部１１２５と、動きベクトル信頼性指標値算出部１１２６と、グローバルモーション算出部１１２７と、グローバル動きベクトル検出部１１２８と、背景／動被写体判定部１１２０とを備える。
【０１４０】
コントロール部１１２５は、動きベクトル検出部１１２における処理シーケンスを制御するもので、図示のように各部に制御信号を供給する。
【０１４１】
ターゲットブロックバッファ部２１１は、コントロール部１１２５の制御を受けて、ターゲットフレームの画像データから、指示されたターゲットブロックの画像データを取得する。ターゲットブロックバッファ部２１１は、メモリ１０４またはＲＡＷ／ＹＣ変換部１１１からターゲットブロックの画像データを取得する。取得したターゲットブロックの画像データをマッチング処理部１１２３に出力する。さらに、ターゲットブロックバッファ部２１１は、取得したターゲットブロックの画像データを動き補償画像生成部１１３に出力する。
【０１４２】
参照ブロックバッファ部２１２は、コントロール部１１２５の制御を受けて、メモリ１０４の参照フレームの画像データから、指示されたマッチング処理範囲の画像データを取得する。そして、参照ブロックバッファ部２１２は、そのマッチング処理範囲の画像データの中から、参照ブロックの画像データを順次にマッチング処理部１１２３に供給する。さらに、参照ブロックバッファ部２１２は、コントロール部１１２５の制御に応じて、動き補償ブロックとして特定された参照ブロックの画素データを動き補償画像生成部１１３に出力する。
【０１４３】
マッチング処理部１１２３は、ターゲットブロックバッファ部２１１からのターゲットブロックの画像データと、参照ブロックバッファ部２１２からの参照ブロックの画像データとを受ける。ターゲットブロックは基底面または縮小面のターゲットブロックであり得る。参照ブロックについても同様である。マッチング処理部１１２３は、ブロックマッチング処理を、コントロール部１１２５の制御にしたがって行う。マッチング処理部１１２３は、参照ベクトル（参照ブロックの位置情報）と、ブロックマッチング処理結果のＳＡＤ値とを、ローカル動きベクトル検出部１１２４に供給する。
【０１４４】
ローカル動きベクトル検出部１１２４は、ＳＡＤ値の第１極小値保持部１１２４ａと、ＳＡＤ値の第２極小値保持部１１２４ｂとを備え、マッチング処理部１１２３からのＳＡＤ値から、ＳＡＤ値の第１極小値と、ＳＡＤ値の第２極小値とを検出する。
【０１４５】
ローカル動きベクトル検出部１１２４は、ＳＡＤ値の第１極小値保持部１１２４ａのＳＡＤ値の第１極小値およびその位置情報（参照ベクトル）と、ＳＡＤ値の第２極小値保持部１１２４ｂのＳＡＤ値の第２極小値およびその位置情報（参照ベクトル）とを更新してゆく。ローカル動きベクトル検出部１１２４は、この更新処理をマッチング処理範囲の全ての参照ブロックについてのブロックマッチング処理が終了するまで行なう。
【０１４６】
ブロックマッチング処理が終了したときには、ＳＡＤ値の第１極小値保持部１１２４ａには、そのときのターゲットブロックについてのＳＡＤ値の第１極小値およびその位置情報（参照ベクトル）が記憶保持される。また、ＳＡＤ値の第２極小値保持部１１２４ｂには、ＳＡＤ値の第２極小値およびその位置情報（参照ベクトル）が、記憶保持される。
【０１４７】
ローカル動きベクトル検出部１１２４は、マッチング処理範囲の全ての参照ブロックについてのブロックマッチング処理が終了したときに、ＳＡＤ値の第１極小値保持部１１２４ａに保持されている参照ベクトルの情報（位置情報）を、ローカル動きベクトルとして検出する。なお、ＳＡＤ値が最小である参照ブロックの近傍の複数の参照ブロックのＳＡＤ値を保持して、二次曲線近似補間処理によって、サブピクセル精度の高精度のローカル動きベクトルを検出するようにしてもよい。
【０１４８】
ローカル動きベクトル検出部１１２４で得られたローカル動きベクトル（ＬＭＶ）は、ローカル動きベクトル検出部１１２４に供給される。グローバルモーション算出部１１２７では、受け取ったローカル動きベクトルを一時的に保持する。
【０１４９】
ローカル動きベクトル検出部１１２４のローカル動きベクトルの算出処理が終了したときには、コントロール部１１２５は、動きベクトル信頼性指標値算出部１１２６をイネーブルとして、動作を開始させる。そして、ローカル動きベクトル検出部１１２４からは、第１極小値保持部１１２４ａのＳＡＤ値の最小値ＭｉｎＳＡＤと、第２極小値保持部１１２４ｂのＳＡＤ値の第２極小値Ｂｔｍ２ＳＡＤとが、動きベクトル信頼性指標値算出部１１２６に供給される。
【０１５０】
動きベクトル信頼性指標値算出部１１２６は、供給される情報を用いて、前述した（式１）にしたがって動きベクトルの信頼性を示す指標値Ｆｔを算出する。そして、動きベクトル信頼性指標値算出部１１２６は、算出した指標値Ｆｔを、グローバルモーション算出部１１２７に供給する。グローバルモーション算出部１１２７では、そのときに供給されているローカル動きベクトルに対応付けて、入力された指標値Ｆｔを一時的に保持する。
【０１５１】
以上の処理が、ターゲットフレームの全てのターゲットブロックについて終了すると、コントロール部１１２５は、グローバルモーション算出部１１２７に、グローバルモーションの算出処理を開始するようにする指示する。
【０１５２】
グローバルモーション算出部１１２７は、コントロール部１１２５からの指示を受けて、先ず、保持している複数個のローカル動きベクトルについて、対応して保持されている指標値Ｆｔを用いて信頼性の判定を行う。そして、信頼性の高いローカル動きベクトルのみを抽出する。グローバルモーション算出部１１２７は、例えば、指標値Ｆｔが閾値より大きいものを信頼性の高いローカル動きベクトルとして抽出する。
【０１５３】
そして、グローバルモーション算出部１１２７は、抽出した信頼性の高いローカル動きベクトルのみを用いてグローバルモーション（ＧＭ）を算出する。この例では、グローバルモーション算出部１１２７は、例えば、アフィン変換を用いてグローバルモーションを推定して算出する。グローバルモーション算出部１１２７は、算出したグローバルモーションをグローバル動きベクトル検出部１１２８に供給する。
【０１５４】
グローバル動きベクトル検出部１１２８は、グローバルモーションを、ターゲットブロックの座標位置（例えば中心位置）に適用することにより、そのターゲットブロックのグローバル動きベクトルを算出する。なお、グローバル動きベクトルは画面内のローカル動きベクトルから算出する方法に限られない。例えば、ジャイロなど外部情報としてグローバル動きベクトルを入力してもよい。
【０１５５】
グローバル動きベクトル検出部１１２８は、算出したグローバル動きベクトル（ＧＭＶ）を背景／動被写体判定部１１２０に供給する。背景／動被写体判定部１１２０には、ローカル動きベクトル検出部１１２４からのローカル動きベクトルも供給される。
【０１５６】
背景／動被写体判定部１１２０では、ターゲットブロック毎のローカル動きベクトルと、グローバル動きベクトルを比較して、ターゲットブロックについての両者の一致度、つまり、背景一致度合いを判定する。この場合に、背景／動被写体判定部１１２０は、ローカル動きベクトルおよびグローバル動きベクトルのそれぞれが対応する参照ブロックについての相関値（例えば、ＳＡＤ値）を比較して、背景と動被写体との判定を行う。
【０１５７】
ところで、ローカル動きベクトル検出部１１２４でグローバルモーションを算出するために求めたローカル動きベクトルおよびＳＡＤ値を、背景／動被写体判定部１１２０における前記の比較用として使用することもできる。
【０１５８】
しかし、その場合には、ローカル動きベクトル検出部１１２４では、グローバルモーション算出部１１２７やグローバル動きベクトル検出部１１２８での処理時間分だけ、当該ローカル動きベクトルやＳＡＤ値を保持しておく必要がある。この場合、特に、保持しておくＳＡＤ値は、グローバル動きベクトルが、どの参照ベクトルに対応するものであるかは判っていないので、各ターゲットブロックのそれぞれについてＳＡＤテーブルの全てのＳＡＤ値を保持しておく必要がある。そのため、これらローカル動きベクトルやＳＡＤ値を保持しておくメモリとして、容量が膨大なものが必要となってしまう。
【０１５９】
この点を考慮して、ローカル動きベクトル検出部１１２４が、背景／動被写体判定部１１２０における前記比較用のローカル動きベクトルやＳＡＤ値を再計算してもよい。これにより、ローカル動きベクトルやＳＡＤ値を保持しておくメモリをローカル動きベクトル検出部１１２４に設ける必要はなく、メモリの容量の問題を回避できる。
【０１６０】
背景／動被写体判定部１１２０は、再算出されたローカル動きベクトルおよびＳＡＤ値を用いて、ターゲットブロックについての背景一致度合いを示すヒット率βを求める。グローバル動きベクトルに一致する参照ベクトル（参照ブロック位置）についてのＳＡＤ値も、当該再算出時に取得する。そして、背景／動被写体判定部１１２０は、当該再算出されたローカル動きベクトルやＳＡＤ値を用いて、ターゲットブロックが、背景部分か動被写体部分かを判定する。
【０１６１】
背景／動被写体判定部１１２０は、前述したように、ローカル動きベクトルに対応する参照ブロックについてのＳＡＤ値と比較すべき、グローバル動きベクトルに対応する参照ブロックについてのＳＡＤ値を、画像のノイズ分を反映した値に補正する。
【０１６２】
そして、背景／動被写体判定部１１２０は、補正後のＳＡＤ値と、ローカル動きベクトルに対応する参照ブロックについてのＳＡＤ値とを比較する。そして、グローバル動きベクトルに対応する参照ブロックについてのＳＡＤ値の補正値の方が、ローカル動きベクトルに対応する参照ブロックについてのＳＡＤ値よりも小さいか否かを判定する。小さいときには、背景／動被写体判定部１１２０は、当該ターゲットブロックが背景部分であると判定する。
【０１６３】
背景／動被写体判定部１１２０は、ターゲットブロックが背景部分であると見なせるようなヒット率βのときには、ＮＲ処理用動きベクトル（ＭＶｎｒ）として、グローバル動きベクトルを出力する。それ以外のときには、背景／動被写体判定部１１２０は、ＮＲ処理用動きベクトルとしてローカル動きベクトルを出力する。
【０１６４】
背景／動被写体判定部１１２０から出力されるＮＲ処理用動きベクトルは、動き補償画像生成部１１３に供給される。
【０１６５】
「ターゲットブロックバッファ部の詳細」
図２０は、ターゲットブロックバッファ部２１１の詳細の一例を示す。ターゲットブロックバッファ部２１１は、メモリ１０４、またはＲＡＷ／ＹＣ変換部１１１から提供される基底面ターゲットフレームまたは縮小面ターゲットフレームの画素データを取得する。これらの画素データの取得元は、セレクタ２１１４によって切り替えられうる。例えば、ターゲットブロックバッファ部２１１は、静止画撮影時にはメモリ１０４から画素データを取得し、動画撮影時にはＲＡＷ／ＹＣ変換部１１１から画素データを取得する。なお、ここで取得される縮小面ターゲットフレームの画素データは、後述する画像加算部１１５に含まれる縮小面生成部１１５４またはＲＡＷ／ＹＣ変換部１１１によって生成され、メモリ１０４に格納されたものである。
【０１６６】
ターゲットブロックバッファ部２１１は、基底面バッファ部２１１１において、基底面ターゲットフレームの画素データを蓄積する。また、ターゲットブロックバッファ部２１１は、縮小面バッファ部２１１２において、縮小面ターゲットフレームの画素データを蓄積する。例えば、動画撮影時に、ＲＡＷ／ＹＣ変換部１１１から取得される画素データに縮小面ターゲットフレームの画素データが含まれないような場合、ターゲットブロックバッファ部２１１は、縮小化処理部２１１３を用いて、基底面ターゲットフレームの画素データから縮小面ターゲットフレームの画素データを生成する。縮小化処理部２１１３を用いるか否かは、セレクタ２１１５によって切り替えられうる。
【０１６７】
「参照ブロックバッファ部の詳細」
図２１は、動きベクトル検出部１１２における参照ブロックバッファ部２１２の詳細な構成の一例を示す。参照ブロックバッファ部２１２は、基底面バッファ部２１２１と、縮小面バッファ部２１２２と、セレクタ２１２３とを含む。
【０１６８】
参照ブロックバッファ部２１２は、メモリ１０４から、縮小面マッチング処理範囲および基底面マッチング処理範囲の画素データを取得する。取得された縮小面マッチング処理範囲および基底面マッチング処理範囲の画素データは、それぞれ基底面バッファ部２１２１および縮小面バッファ部２１２２に蓄積される。
【０１６９】
また、参照ブロックバッファ部２１２は、動き補償画像生成部１１３およびマッチング処理部１１２３に、基底面または縮小面の参照ブロックの画素データを提供する。動き補償画像生成部１１３には、基底面バッファ部２１２１に蓄積された基底面マッチング処理範囲の画素データのうち、動き補償ブロックとして特定された範囲の画素データが提供される。マッチング処理部１１２３には、縮小面でのブロックマッチング処理時は、縮小面バッファ部２１２２に蓄積された縮小面マッチング処理範囲の画素データのうち、ブロックマッチング処理で用いられる縮小面参照ブロックの画素データが提供される。
【０１７０】
また、基底面でのブロックマッチング処理時は、基底面バッファ部２１２１に蓄積された基底面マッチング処理範囲の画素データのうち、ブロックマッチング処理で用いられる基底面参照ブロックの画素データが提供される。なお、マッチング処理部１１２３に提供される画素データは、セレクタ２１２３によって切り替えられる。
【０１７１】
以上、説明したように、動きベクトル検出部１１２からは、ターゲットブロックと、動き補償ブロックと、ＮＲ処理用動きベクトルとが出力され、これらが動き補償画像生成部１１３に供給される。動き補償画像生成部１１３は、動き補償ブロックに対してＮＲ処理用動きベクトルに対応する変形処理を施す。この処理の結果得られる、ＮＲ処理用動きベクトルにより動き補償がなされたものを動き補償画像ブロックと適宜、称する。生成された動き補償画像ブロックが被加算画像生成部１１４に供給される。また、動き補償画像生成部１１３は、動きベクトル検出部１１２から供給されるターゲットブロックを被加算画像生成部１１４に出力する。
【０１７２】
「被加算画像生成部の詳細」
図２２は、被加算画像生成部１１４の詳細な構成の一例を示す。被加算画像生成部１１４は、ブレンド部１１４１と、参照ブロックバッファ部１１４２とを含む。上述したように、被加算画像生成部１１４に対して、動き補償画像生成部１１３より基底面ターゲットブロックの画素データと動き補償画像ブロックの画素データとが入力される。基底面ターゲットブロックの画素データは、被加算画像生成部１１４を通じて画像加算部１１５に出力される。動き補償画像ブロックの画素データは、ブレンド部１１４１に入力される。
【０１７３】
被加算画像生成部１１４には、さらに、メモリ１０４から参照ブロックが入力される。参照ブロックは、動き補償画像ブロックに対応するブロックであるが、動き補償はなされていないブロックである。参照ブロックは、例えば、動き補償画像ブロックに対する位置をあわせるために参照ブロックバッファ部１１４２に保持されうる。そして、適宜なタイミングでもって参照ブロックバッファ部１１４２から読み出され、ブレンド部１１４１に供給される。
【０１７４】
被加算画像生成部１１４には、さらに、制御部１０１からシステムバス１３０を介してブレンド率σが入力される。上述したように、ブレンド率σは、動き補償画像に対する参照画像のブレンドの割合を意味する。ブレンド率σは、検波部１０８により得られる検波情報に基づいて、制御部１０１により設定される。ブレンド率σの設定の一例は、図１８等を参照して既に説明しているため、重複した説明を適宜、省略する。
【０１７５】
ブレンド部１１４１は、入力されるブレンド率σに応じて動き補償画像ブロックと参照ブロックとをブレンドし、被加算画像のブロック（適宜、被加算画像ブロックと称する）を生成する。生成された被加算画像ブロックが画像加算部１１５に対して出力される。なお、ブレンド部１１４１には、ゲイン調整部１０９に調整された入力画像の調整後レベルが入力されてもよい。そして、ブレンド部１１４１が、調整後レベルに対応するブレンド率σを取得するようにしてもよい。例えば、調整後レベルと調整後レベルに対応するブレンド率σが記述されるテーブルを記憶し、調整後レベルに対応するブレンド率σを当該テーブルに基づいてブレンド部１１４１が判断してもよい。
【０１７６】
「画像加算部の詳細」
図２３は、画像加算部１１５の詳細な構成の一例を示す。画像加算部１１５は、加算率計算部１１５１と、加算部１１５２と、基底面出力バッファ部１１５３と、縮小面生成部１１５４と、縮小面出力バッファ部１１５５とを含む。
【０１７７】
加算率計算部１１５１は、被加算画像生成部１１４から、基底面ターゲットブロックおよび被加算画像ブロックの画素データを取得し、これらのブロックの加算率を算出する。基底面ターゲットフレームと被加算画像ブロックとは、例えば、単純加算方式または平均加算方式などの加算方式によって加算されうる。加算率計算部１１５１は、これらの加算方式に応じて加算率αを適切に算出する。加算率計算部１１５１は、算出した加算率と、基底面ターゲットフレームの画素データおよび被加算画像ブロックの画素データを、加算部１１５２に提供する。
【０１７８】
加算部１１５２は、加算率計算部１１５１から、基底面ターゲットブロックの画素データおよびの画素データと、これらのブロックの加算率とを取得する。加算部１１５２は、基底面ターゲットブロックの画素データと被加算画像ブロックの画素データとを、取得した加算率で加算し、フレームＮＲの効果によってノイズが低減された基底面ＮＲブロックを生成する。加算部１１５２は、基底面ＮＲブロックの画素データを、基底面出力バッファ部１１５３および縮小面生成部１１５４に提供する。
【０１７９】
基底面出力バッファ部１１５３は、加算部１１５２から提供される基底面ＮＲブロックの画素データを蓄積し、最終的に、出力画像としての基底面ＮＲ画像をメモリ１０４に提供する。メモリ１０４に基底面ＮＲ画像が格納される。
【０１８０】
縮小面生成部１１５４は、加算部１１５２から提供された基底面ＮＲブロックの画素データを縮小して、縮小面ＮＲブロックの画素データを生成する。縮小面生成部１１５４は、縮小面ＮＲブロックの画素データを、縮小面出力バッファ部１１５５に提供する。
【０１８１】
縮小面出力バッファ部１１５５は、縮小面生成部１１５４から提供された縮小面ＮＲブロックの画素データを蓄積し、縮小面ＮＲ画像としてメモリ１０４に格納する。ここでメモリ１０４に格納された縮小面ＮＲ画像は、例えば、静止画撮影時に、フレームＮＲ後のターゲット画像にさらに参照画像を重ね合わせる場合、縮小面ターゲット画像として用いられうる。また、ここでメモリ１０４に格納された縮小面ＮＲ画像は、動画撮影時に、次のフレームをターゲット画像としてフレームＮＲを実行する場合、縮小面参照画像として用いられる。
【０１８２】
以上説明したように、本開示の一実施形態によれば、少なくとも、適切な被加算画像を生成することができる。また、例えば、暗所での撮像においても適切な被加算画像を使用したフレームＮＲ処理を行うことができる。
【０１８３】
＜２．変形例＞
以上、本開示の実施形態について具体的に説明したが、本開示は、上述の実施形態に限定されるものではなく、本開示の技術的思想に基づく各種の変形が可能である。以下、変形例について説明する。
【０１８４】
一実施形態の個々の処理における処理単位は例示であり、処理単位は適宜、変更することができる。処理単位は、例えば、１画像単位や１のブロック単位や複数のブロック単位、画素単位など適宜設定することができる。また、ブロックのサイズは適宜、変更できる。
【０１８５】
画像処理装置や撮像装置にセンサ等を設け、当該センサ等を用いて照度が取得されてもよい。取得された照度に応じて、ブレンド率が設定されてもよい。
【０１８６】
ブロック毎等の相関の高さを示すパラメータとして、ＳＡＤ値以外の値が使用されてもよい。例えば、輝度値の差の２乗の合計値であるＳＳＤ(Sum of Squared Difference)が使用されてもよい。
【０１８７】
一実施形態および変形例における構成および処理は、技術的な矛盾が生じない範囲で適宜組み合わせることができる。例示した処理の流れにおけるそれぞれの処理の順序は、技術的な矛盾が生じない範囲で適宜、変更できる。
【０１８８】
さらに、本開示は、装置に限らず、方法、プログラムとして実現することができる。上述の実施形態の機能を実現するプログラムは、記録媒体から直接、あるいは有線／無線通信を用いて当該プログラムを実行可能なコンピュータを有するシステムまたは装置に供給される。そして、そのシステム或いは装置のコンピュータが供給されたプログラムを実行することによって実施形態の機能が達成される。
【０１８９】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０１９０】
プログラムを供給するための記録媒体としては、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記録媒体、ＭＯ(Magneto-Optical Disk)、ＣＤ−ＲＯＭ、ＣＤ−Ｒ(Recordable)、ＣＤ−ＲＷ(Rewritable)、ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ等の光／光磁気記憶媒体、不揮発性の半導体メモリなどが挙げられる。
【０１９１】
有線／無線通信を用いたプログラムの供給方法としては、コンピュータネットワーク上のサーバに本開示の内容を実現するコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイル等、クライアントコンピュータ上で本開示の内容を実現するコンピュータプログラムとなりうるデータファイル（プログラムデータファイル）を記憶し、接続されたクライアントコンピュータにプログラムデータファイルをダウンロードする方法などが挙げられる。この場合、プログラムデータファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに配置してもよい。
【０１９２】
本開示は、一実施形態等において例示された処理が複数の装置によって分散されて処理される、いわゆるクラウドシステムに対して適用することもできる。一実施形態等において例示した複数の処理が複数の装置により実行されるシステムであって、当該処理の少なくとも一部の処理を実行する装置として、本開示を実現することができる。
【０１９３】
本開示は、以下の構成をとることもできる。
（１）
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、前記動きベクトルを得るために参照される第２の画像とを取得する画像取得部と、
前記第１の画像と前記第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する画像生成部と
を備える画像処理装置。
（２）
入力画像の明るさを検波する検波部と、
前記入力画像の明るさに基づいて前記ブレンド率を設定するブレンド率設定部とを備える
（１）に記載の画像処理装置。
（３）
前記ブレンド率設定部は、前記入力画像の明るさが閾値より大きい場合に、前記第１の画像に対する前記第２の画像のブレンド率を０に設定する
（２）に記載の画像処理装置。
（４）
前記ブレンド率設定部は、前記入力画像の明るさが大きくなるにつれ、前記第１の画像に対する前記第２の画像のブレンド率が小さくなるように該ブレンド率を設定する
（２）に記載の画像処理装置。
（５）
前記第３の画像とターゲット画像とを加算する画像加算部を備える
（１）乃至（４）のいずれかに記載の画像処理装置。
（６）
前記入力画像の明るさに基づいて、該入力画像に対するゲインを設定するゲイン設定部を備え、
前記ブレンド率設定部は、前記設定されたゲインにより調整された入力画像のレベルに応じて前記ブレンド率を設定する
（２）に記載の画像処理装置。
（７）
前記第１の画像は、第１の動きベクトルおよび前記第１の動きベクトルとは異なる第２の動きベクトルの少なくとも一方を使用して得られる
（１）乃至（６）のいずれかに記載の画像処理装置。
（８）
前記第１の動きベクトルは、画像を複数の領域に分割したブロック毎に得られるローカル動きベクトルであり、
前記第２の動きベクトルは、１または複数の前記ローカル動きベクトルに基づいて得られるグローバル動きベクトルである
（７）に記載の画像処理装置。
（９）
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、前記動きベクトルを得るために参照される第２の画像とを取得し、
前記第１の画像と前記第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する
画像処理装置における画像処理方法。
（１０）
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、前記動きベクトルを得るために参照される第２の画像とを取得し、
前記第１の画像と前記第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する
画像処理装置における画像処理方法を、コンピュータに実行させるプログラム。
（１１）
撮像部と、
フレーム間における動きを示す動きベクトルを使用して得られる第１の画像と、前記動きベクトルを得るために参照され、前記撮像部を介して得られる第２の画像とを取得する画像取得部と、
前記第１の画像と前記第２の画像とを、所定のブレンド率でブレンドすることにより第３の画像を生成する画像生成部と、
前記第３の画像とターゲット画像とを加算する画像加算部と
を備える撮像装置。
【符号の説明】
【０１９４】
１２・・・ローカル動きベクトル（ＬＭＶ）
１６・・・グローバル動きベクトル（ＧＭＶ）
１００・・・撮像装置
１０１・・・制御部
１０８・・・検波部
１０９・・・ゲイン調整部
１１２・・・動きベクトル検出部
１１３・・・動き補償画像生成部
１１４・・・被加算画像生成部
１１５・・・画像加算部
Ｐ１００・・・ターゲット画像
Ｐ２００・・・参照画像
Ｐ３００・・・動き補償画像（ＭＣ画像）
Ｐ５００・・・被加算画像
Ｐ６００・・・出力画像
【図１】
2014187610.tif 000005
【図２】
2014187610.tif 000006
【図３】
2014187610.tif 000007
【図４】
2014187610.tif 000008
【図５】
2014187610.tif 000009
【図６】
2014187610.tif 000010
【図７】
2014187610.tif 000011
【図８】
2014187610.tif 000012
【図９】
2014187610.tif 000013
【図１０】
2014187610.tif 000014
【図１１】
2014187610.tif 000015
【図１２】
2014187610.tif 000016
【図１３】
2014187610.tif 000017
【図１４】
2014187610.tif 000018
【図１５】
2014187610.tif 000019
【図１６】
2014187610.tif 000020
【図１７】
2014187610.tif 000021
【図１８】
2014187610.tif 000022
【図１９】
2014187610.tif 000023
【図２０】
2014187610.tif 000024
【図２１】
2014187610.tif 000025
【図２２】
2014187610.tif 000026
【図２３】
2014187610.tif 000027