(57)【要約】      （修正有）【課題】画像間の画素値の差分に基づく評価値の精度を向上させる技術を提供する。【解決手段】画像処理装置は撮影範囲の各位置の評価値を、各位置における第１の画像の画素値と第２の画像の画素値の差分に基づいて取得する取得手段と、各位置において動きベクトルを検出することにより、第１の画像と第２の画像との間で移動した被写体の第１及び第２の画像における位置を検出する検出手段と、各位置について、被写体が第１の画像には存在し第２の画像には存在しない位置については第１の画像の画素値を選択し、第２の画像には存在し第１の画像には存在しない位置については第２の画像の画素値を選択する選択手段と、対象位置について選択された画素値と周辺位置について選択された画素値との類似度が第１の度合いの場合、第１の度合いよりも大きい第２の度合いの場合よりも周辺位置の評価値の合成比率が小さくなるように合成を行う補正評価値生成手段を備える。【選択図】図７
2019092033.tif 000002
【特許請求の範囲】
【請求項１】
第１の画像及び第２の画像が含む所定の撮影範囲の各位置の評価値を、前記撮影範囲の各位置における前記第１の画像の画素値と前記第２の画像の画素値の差分に基づいて取得する取得手段と、
前記撮影範囲の各位置において前記第１の画像と前記第２の画像との間の動きベクトルを検出することにより、前記第１の画像と前記第２の画像との間で移動した被写体の前記第１の画像における位置及び前記第２の画像における位置を検出する検出手段と、
前記撮影範囲の各位置について前記第１の画像の画素値又は前記第２の画像の画素値を選択する選択手段であって、前記被写体が前記第１の画像には存在し前記第２の画像には存在しない位置については前記第１の画像の画素値を選択し、前記被写体が前記第２の画像には存在し前記第１の画像には存在しない位置については前記第２の画像の画素値を選択する、選択手段と、
前記撮影範囲の各位置について、対象位置の前記評価値と前記対象位置の周辺位置の前記評価値とを合成することにより補正評価値を生成する補正評価値生成手段であって、前記選択手段により前記対象位置について選択された画素値と前記周辺位置について選択された画素値との類似度が第１の度合いの場合、前記第１の度合いよりも大きい第２の度合いの場合よりも前記周辺位置の前記評価値の合成比率が小さくなるように前記合成を行う、補正評価値生成手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
前記取得手段は、前記評価値として、前記差分の絶対値が第１の値の場合、前記第１の値よりも大きい第２の値の場合よりも小さい値を取得する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記撮影範囲の各位置において、対象位置の前記補正評価値に基づいて前記第１の画像の画素値と前記第２の画像の画素値とを合成することにより合成画像を生成する合成画像生成手段を更に備え、
前記合成画像生成手段は、前記対象位置の前記補正評価値が第３の値の場合、前記第３の値よりも大きい第４の値の場合よりも前記対象位置における前記第１の画像の画素値の合成比率と前記第２の画像の画素値の合成比率との差が小さくなるように前記合成を行う
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記合成画像生成手段は、前記対象位置の前記補正評価値が前記第４の値の場合、前記合成画像の画素値として前記第１の画像の画素値を用いる
ことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記選択手段は、前記被写体が前記第１の画像及び前記第２の画像の両方に存在する位置、及び前記被写体が前記第１の画像及び前記第２の画像の両方に存在しない位置については前記第１の画像の画素値を選択する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記検出手段は、前記検出した動きベクトルのうち第１の閾値以下の大きさを持つ動きベクトルは用いずに、前記被写体の前記第１の画像における位置及び前記第２の画像における位置を検出する
ことを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記検出手段は、前記検出した動きベクトルの各々の信頼度を取得し、前記検出した動きベクトルのうち第２の閾値以下の信頼度を持つ動きベクトルは用いずに、前記被写体の前記第１の画像における位置及び前記第２の画像における位置を検出する
ことを特徴とする請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
請求項１乃至７のいずれか１項に記載の画像処理装置と、
前記第１の画像及び前記第２の画像を生成する撮像手段と、
を備えることを特徴とする撮像装置。
【請求項９】
画像処理装置が実行する画像処理方法であって、
第１の画像及び第２の画像が含む所定の撮影範囲の各位置の評価値を、前記撮影範囲の各位置における前記第１の画像の画素値と前記第２の画像の画素値の差分に基づいて取得する取得工程と、
前記撮影範囲の各位置において前記第１の画像と前記第２の画像との間の動きベクトルを検出することにより、前記第１の画像と前記第２の画像との間で移動した被写体の前記第１の画像における位置及び前記第２の画像における位置を検出する検出工程と、
前記撮影範囲の各位置について前記第１の画像の画素値又は前記第２の画像の画素値を選択する選択工程であって、前記被写体が前記第１の画像には存在し前記第２の画像には存在しない位置については前記第１の画像の画素値を選択し、前記被写体が前記第２の画像には存在し前記第１の画像には存在しない位置については前記第２の画像の画素値を選択する、選択工程と、
前記撮影範囲の各位置について、対象位置の前記評価値と前記対象位置の周辺位置の前記評価値とを合成することにより補正評価値を生成する補正評価値生成工程であって、前記選択工程により前記対象位置について選択された画素値と前記周辺位置について選択された画素値との類似度が第１の度合いの場合、前記第１の度合いよりも大きい第２の度合いの場合よりも前記周辺位置の前記評価値の合成比率が小さくなるように前記合成を行う、補正評価値生成工程と、
を備えることを特徴とする画像処理方法。
【請求項１０】
コンピュータを、請求項１乃至７のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、撮像装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、複数枚の画像を合成し、合成画像を記録するデジタルカメラやデジタルビデオカメラといった撮像装置が数多く製品化されている。これらの撮像装置の中には、異なるタイミングで撮影した複数枚の画像を合成することにより、ランダムノイズを低減した合成画像を生成する機能を持つ撮像装置がある。これによりユーザは、合成しない１枚の画像よりもランダムノイズを低減した合成画像を得ることができる。
【０００３】
しかしながら、複数枚の画像を撮影中に被写体が移動した場合、移動した被写体が合成画像において多重像になってしまうことがある。多重像の発生を抑制するために、被写体の移動が検出された領域については、合成処理を禁止する技術が開示されている。特許文献１には、手ぶれ量に応じて決めた縮小率で縮小した複数枚の画像間におけるフレーム間差分絶対値に基づき、動体領域を検出する技術が開示されている。また、特許文献２には、複数枚の画像の位置合わせ後に残存する位置のずれに応じて縮小画像を選択し、選択した複数枚の縮小画像のフレーム間差分絶対値に基づき、動体領域を検出する技術が開示されている。
【０００４】
フレーム間差分絶対値に基づく動体領域検出においては、例えば、高感度で撮影した画像の場合、ランダムノイズによりフレーム間差分絶対値が大きくなる。そのため、移動被写体とランダムノイズとを区別することが困難となり、ランダムノイズの大きい領域を動体領域として誤検出する可能性がある。ランダムノイズによる動体領域の誤検出を抑制しようとすると、移動被写体を正しく動体領域として検出できない場合がある。特に、ランダムノイズによるフレーム間差分絶対値よりもフレーム間差分絶対値が小さい移動被写体の一部又は全体は、動体領域として検出することが困難となる。
【０００５】
そこで、特許文献１では、手ぶれ量を基に画像縮小率を変更することにより、手ぶれによる静止被写体の位置のズレや、ランダムノイズの影響を軽減し、移動被写体領域の検出精度を向上させている。また、特許文献２では、複数枚の画像の位置合わせ後に残存する位置のずれに応じて縮小画像を選択することにより、手ぶれによる静止被写体の位置のズレや、ランダムノイズの影響を軽減し、移動被写体領域の検出精度を向上させている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−６２７４１号公報
【特許文献２】特許第５３９８６１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、縮小画像間のフレーム間差分絶対値に基づき動体領域を検出する場合、縮小画像間で検出した動体領域を元の解像度まで拡大処理することにより、移動被写体周辺の静止領域まで動体領域として検出されてしまうことがある。
【０００８】
本発明はこのような状況に鑑みてなされたものであり、画像間の画素値の差分に基づく評価値の精度を向上させる技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明は、第１の画像及び第２の画像が含む所定の撮影範囲の各位置の評価値を、前記撮影範囲の各位置における前記第１の画像の画素値と前記第２の画像の画素値の差分に基づいて取得する取得手段と、前記撮影範囲の各位置において前記第１の画像と前記第２の画像との間の動きベクトルを検出することにより、前記第１の画像と前記第２の画像との間で移動した被写体の前記第１の画像における位置及び前記第２の画像における位置を検出する検出手段と、前記撮影範囲の各位置について前記第１の画像の画素値又は前記第２の画像の画素値を選択する選択手段であって、前記被写体が前記第１の画像には存在し前記第２の画像には存在しない位置については前記第１の画像の画素値を選択し、前記被写体が前記第２の画像には存在し前記第１の画像には存在しない位置については前記第２の画像の画素値を選択する、選択手段と、前記撮影範囲の各位置について、対象位置の前記評価値と前記対象位置の周辺位置の前記評価値とを合成することにより補正評価値を生成する補正評価値生成手段であって、前記選択手段により前記対象位置について選択された画素値と前記周辺位置について選択された画素値との類似度が第１の度合いの場合、前記第１の度合いよりも大きい第２の度合いの場合よりも前記周辺位置の前記評価値の合成比率が小さくなるように前記合成を行う、補正評価値生成手段と、を備えることを特徴とする画像処理装置を提供する。
【００１０】
なお、その他の本発明の特徴は、添付図面及び以下の発明を実施するための形態における記載によって更に明らかになるものである。
【発明の効果】
【００１１】
本発明によれば、画像間の画素値の差分に基づく評価値の精度を向上させることが可能となる。
【図面の簡単な説明】
【００１２】
【図１】撮像装置１００の構成を示すブロック図。
【図２】画像処理部１０７が具備する合成画像生成部２００の構成を示す図。
【図３】合成画像生成部２００が実行する処理のフローチャート。
【図４】位置合わせ処理について説明する図。
【図５】補正動体尤度と基準画像の合成比率ｗとの関係を示す図。
【図６】動体領域検出部２０２の構成を示す図。
【図７】動体領域検出部２０２が実行する補正動体尤度算出処理のフローチャート。
【図８】動体尤度算出カーブを示す図。
【図９】動きベクトル算出部６１１が実行する動きベクトル算出処理のフローチャート。
【図１０】ブロックマッチング法による動きベクトルの算出方法を示す図。
【図１１】画像選択マップ生成部６１２が実行する画像選択マップ生成処理のフローチャート。
【図１２】類似度重み係数の算出方法について説明する図。
【図１３】（Ａ）基準画像を示す図、（Ｂ）位置合わせ済み参照画像を示す図、（Ｃ）動体尤度を示す図、（Ｄ）動きベクトルを示す図、（Ｅ）画像選択マップを示す図、（Ｆ）類似度算出画像を示す図、（Ｇ）補正動体尤度を示す図。
【発明を実施するための形態】
【００１３】
以下、添付図面を参照して、本発明の実施形態を説明する。なお、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。また、実施形態の中で説明されている特徴の組み合わせすべてが、本発明に必須とは限らない。また、別々の実施形態の中で説明されている特徴を適宜組み合せることも可能である。
【００１４】
［第１の実施形態］
図１は、画像処理装置の一例である撮像装置１００の構成を示すブロック図である。図１において、制御部１０１は、例えばＣＰＵであり、撮像装置１００が備える各ブロックの動作プログラムを後述のＲＯＭ１０２より読み出し、後述のＲＡＭ１０３に展開して実行することにより、撮像装置１００が備える各ブロックの動作を制御する。ＲＯＭ１０２は、電気的に消去・記録可能な不揮発性メモリであり、撮像装置１００が備える各ブロックの動作プログラムに加え、各ブロックの動作に必要なパラメータ等を記憶する。ＲＡＭ１０３は、書き換え可能な揮発性メモリであり、撮像装置１００が備える各ブロックの動作において出力されたデータの一時的な記憶領域として用いられる。
【００１５】
光学系１０４は、ズームレンズ、フォーカスレンズを含むレンズ群を含み、被写体像を後述の撮像部１０５に結像する。撮像部１０５は、例えばＣＣＤやＣＭＯＳセンサー等の撮像素子であり、光学系１０４により撮像部１０５に結像された光学像を光電変換し、得られたアナログ画像信号をＡ／Ｄ変換部１０６に出力する。Ａ／Ｄ変換部１０６は、入力されたアナログ画像信号をデジタル画像信号に変換し、得られたデジタル画像信号（画像データ）をＲＡＭ１０３に出力する。また、Ａ／Ｄ変換部１０６は、制御部１０１が決定した増幅率（感度情報）に基づき、アナログ画像信号又はデジタル画像信号を増幅する。
【００１６】
画像処理部１０７は、ＲＡＭ１０３に記憶されている画像データに対して、ホワイトバランス調整、色補間、ガンマ処理など、様々な画像処理を適用する。また、画像処理部１０７は、後述する合成画像生成部２００を具備し、ＲＡＭ１０３に記憶されている複数の画像データを合成し、合成画像を生成する。
【００１７】
記録部１０８は着脱可能なメモリカード等である。画像処理部１０７で処理された画像データは、ＲＡＭ１０３を介して、記録部１０８に記録画像として記録される。表示部１０９は、ＬＣＤ等の表示デバイスであり、ＲＡＭ１０３及び記録部１０８に記録した画像データや、ユーザからの指示を受け付けるためのユーザインタフェースなどを表示する。
【００１８】
次に、画像処理部１０７の動作について、詳細に説明を行う。本実施形態では、補正動体尤度に基づいて２枚の画像を合成することにより、移動被写体（例えば、移動している人）の多重像を抑制し、ランダムノイズが低減した合成画像を生成する例について説明する。
【００１９】
図２を参照して、画像処理部１０７が具備する合成画像生成部２００の構成について説明する。合成画像生成部２００は、ＲＡＭ１０３に記憶されている２枚の画像を合成し、合成画像を生成する。合成画像生成部２００は、位置合わせ部２０１、動体領域検出部２０２、及び画像合成部２０３を含む。
【００２０】
次に、図３を参照して、合成画像生成部２００が実行する処理について説明する。Ｓ３０１で、制御部１０１は、ＲＡＭ１０３に記憶されている複数の画像から、合成の基準となる基準画像、及び基準画像に対して合成を行う参照画像を選択する。例えば、制御部１０１は、撮像装置１００のシャッターが押下された直後に撮影された１枚目の画像を基準画像として選択し、２枚目以降の画像を参照画像として選択する。合成画像生成部２００は、選択された基準画像及び参照画像をＲＡＭ１０３から取得する。
【００２１】
Ｓ３０２で、位置合わせ部２０１は、基準画像と参照画像との間の動きベクトルを検出し、動きベクトルに基づいて参照画像を幾何変換することにより、参照画像の位置を基準画像と合わせる。
【００２２】
ここで、図４を参照して、位置合わせ処理について説明する。図４（Ａ）は基準画像を示し、図４（Ｂ）は参照画像を示し、図４（Ｃ）は位置合わせが行われた参照画像を示す。図４（Ａ）〜図４（Ｃ）に示す３つの画像は、以下に説明するように被写体の位置が異なるなどの相違はあるが、いずれも所定の撮影範囲を含んでいる。
【００２３】
図４（Ｂ）の参照画像は、図４（Ａ）の基準画像とは異なる時刻に撮影されているため、手ぶれ等により図４（Ａ）の基準画像と位置がずれている。位置合わせ部２０１は、このような位置のずれを位置合わせ処理により補正する。位置を合わせるために、まず、位置合わせ部２０１は、基準画像と参照画像との間の大局的な動きを示す動きベクトルを算出する。動きベクトルの算出方法としては、例えば、ブロックマッチング法が挙げられる。ブロックマッチング法に関しては、後述する動きベクトル算出部６１１の処理で説明する。次に、位置合わせ部２０１は、算出した動きベクトルに基づき、参照画像を幾何変換するための係数である、式（１）に示すような幾何変換係数Ａを算出する。
2019092033.tif 000003
【００２４】
位置合わせ部２０１は、幾何変換係数Ａを用いて、参照画像に対して式（２）に示すような幾何変換を行うことにより、図４（Ｃ）の位置合わせ済み参照画像を生成する。なお、参照画像をＩ（ｘ座標,ｙ座標）、位置合わせ済み参照画像をＩ’（ｘ’座標,ｙ’座標）とする。
2019092033.tif 000004
【００２５】
このような位置合わせ処理により、図４（Ｃ）の位置合わせ済み参照画像のように、基準画像と参照画像の静止被写体（例えば、建物や木）の位置を合わせることができる。
【００２６】
図３に戻り、Ｓ３０３で、動体領域検出部２０２は、基準画像と位置合わせ済み参照画像（以下、単に「参照画像」とも呼ぶ）とを比較することにより、動体領域を検出し、補正動体尤度を算出する。本実施形態では、動体領域は、動体尤度と呼ばれる多値で表現されるデータで表すものとする。動体領域検出部２０２の詳細、及び補正動体尤度算出処理の詳細については後述する。
【００２７】
Ｓ３０４で、画像合成部２０３は、式（３）で示すように、補正動体尤度に基づいて決定される基準画像の合成比率ｗに応じて、基準画像と参照画像とを合成し、合成画像を生成する。
Ｐ  ＝  ｗ  ×  Ｐｂａｓｅ  ＋  （１−ｗ）×  Ｐｒｅｆ  ・・・（３）
なお、Ｐｂａｓｅは基準画像の画素値を表し、Ｐｒｅｆは参照画像の画素値を表し、ｗは基準画像の合成比率を表し、Ｐは合成画像の画素値を表す。
【００２８】
ここで、図５を参照して、基準画像の合成比率ｗの決定方法について説明する。図５は、補正動体尤度と基準画像の合成比率ｗとの関係を示す図である。図５の例では、補正動体尤度が大きいほど、基準画像の合成比率ｗも大きくなる。図５の例では、補正動体尤度が１００以上の動体領域については、基準画像の合成比率が１００％（ｗ＝１）に設定される。そのため、動体領域の合成処理を実質的に禁止し、多重像の発生を抑制することができる。即ち、補正動体尤度が１００以上である場合、合成画像の画素値として基準画像の画素値が用いられる。一方、補正動体尤度が０の静止領域については、基準画像の合成比率が５０％（ｗ＝０．５）に設定される。そのため、基準画像と参照画像とを均等に合成し、ランダムノイズを低減することができる。図５から理解できるように、補正動体尤度が小さい場合、基準画像の画素値の合成比率と参照画像の画素値の合成比率との差が小さくなる。
【００２９】
次に、図６を参照して、動体領域検出部２０２の構成について説明する。動体領域検出部２０２は、動体尤度算出部６００及び動体尤度補正部６１０を有し、基準画像と参照画像との間のフレーム間差分絶対値に基づき、補正動体尤度を算出する。
【００３０】
動体尤度算出部６００は、基準画像と参照画像との間のフレーム間差分絶対値に基づき、動体尤度を算出する。動きベクトル算出部６１１は、基準画像と参照画像との間における動きベクトル及びその信頼度を算出する。画像選択マップ生成部６１２は、動きベクトル及びその信頼度に基づき、画像選択マップを生成する。類似度重み係数算出部６１３は、画像選択マップに従って選択した画像の画素値に基づき、着目座標の周辺座標毎に類似度重み係数を算出する。加重加算平均処理部６１４は、類似度重み係数に基づき、着目座標及び周辺座標の動体尤度を加重加算平均処理し、補正動体尤度を算出する。
【００３１】
なお、本実施形態では、動体尤度算出部６００が動体尤度を算出するものとして説明を行うが、動体尤度は動体尤度算出部６００が算出する評価値の一例に過ぎず、動体尤度算出部６００はフレーム間差分絶対値に基づいて他の種類の評価値を算出してもよい。また、フレーム間差分絶対値に基づく評価値の算出は、フレーム間の差分に基づいて評価値を算出する処理の一例に過ぎず、動体尤度算出部６００は、フレーム間の差分の符号も考慮してもよい。
【００３２】
次に、図７を参照して、動体領域検出部２０２が実行する補正動体尤度算出処理について説明する。Ｓ７０１で、動体領域検出部２０２は、基準画像及び参照画像を取得する。基準画像及び参照画像の例を、図４（Ａ）、図４（Ｃ）、図１３（Ａ）、及び図１３（Ｂ）に示す。図４（Ａ）は基準画像を示す図であり、図４（Ｃ）は参照画像（位置合わせ済み参照画像）を示す図である。また、図１３（Ａ）は、図４（Ａ）の基準画像の人４１１周辺を簡略化した図であり、図１３（Ｂ）は、図４（Ｃ）の参照画像の人４２１周辺を簡略化した図である。基準画像と参照画像とは異なる時刻に撮影されているため、撮影中に移動した被写体の位置は異なる。図４（Ａ）及び図４（Ｃ）の例では、図４（Ａ）の基準画像の人４１０は、図４（Ｃ）の人４２０の位置に移動し、図４（Ａ）の基準画像の人４１１は、図４（Ｃ）の参照画像の人４２１の位置に移動している。同様に、図１３（Ａ）及び図１３（Ｂ）の例では、図１３（Ａ）の基準画像の人４１１は、図１３（Ｂ）の参照画像の人４２１の位置に移動している。動体領域検出部２０２は、このような移動している領域を動体領域として検出する。以下では、図１３（Ａ）及び図１３（Ｂ）に示される画像領域に注目して説明を行うが、他の画像領域に対しても同様の処理が行われる。
【００３３】
図７に戻り、Ｓ７０２で、動体尤度算出部６００は、図１３（Ａ）の基準画像と図１３（Ｂ）の参照画像との間のフレーム間差分絶対値を画素毎に算出し、フレーム間差分絶対値に基づいて動体尤度を算出する。即ち、動体尤度算出部６００は、基準画像及び参照画像が含む所定の撮影範囲の各位置についてフレーム間差分絶対値を算出し、動体尤度を算出する。例えば、動体尤度算出部６００は、図８に示すような動体尤度算出カーブに基づいて動体尤度を算出する。図８の例では、フレーム間差分絶対値が大きくなるほど動体尤度が高くなるように動体尤度算出カーブが設計されている。この例では、動体尤度は０〜２００の値で表現され、２００が最も高い動体尤度である。動体尤度算出カーブには２つの閾値ＴＨ０及びＴＨ１（０＜ＴＨ０＜ＴＨ１）が設定されている。ＴＨ０が０よりも大きい値に設定されているため、動体と背景の画素値の差が小さい場合に動体領域の検出に失敗する可能性があるが、ランダムノイズにより動体領域を誤検出する可能性を抑制することができる。
【００３４】
図１３（Ａ）〜（Ｃ）を参照して、動体尤度の例について説明する。図１３（Ａ）の基準画像には、道路の模様１３０１が含まれている。基準画像の人４１１は、図１３（Ｂ）の参照画像においては人４２１に示す位置に移動しており、模様１３０１の一部と重なっている。人４２１の画素値と模様１３０１の画素値との差分は、人４２１の画素値と背景の画素値との差分よりも小さい。そのため、模様１３０１に重なっている人４２１の膝領域のフレーム間差分絶対値は、人４２１のその他の領域と比べて小さい値となる。その結果、図８のような動体尤度算出カーブにより動体尤度を算出した場合、図１３（Ｃ）に示すように、模様１３０１に重なっている人４２１の膝領域の動体尤度は、他の領域に比べて小さい。なお、図１３（Ｃ）では、各画素の動体尤度が画素値で表現されており、白に近い画素ほど動体尤度が大きく、黒に近い画素ほど動体尤度が小さい。人４２１の膝領域は、白と黒の中間の色（グレー）であり、白に近い色を持つ人４２１の他の領域に比べて動体尤度が小さい。
【００３５】
図７に戻り、Ｓ７０３で、動きベクトル算出部６１１は、図１３（Ａ）の基準画像と図１３（Ｂ）の参照画像との間における動きベクトル及びその信頼度を算出する。動きベクトルの算出方法について、図９及び図１０を参照して詳しく説明する。
【００３６】
図９は、動きベクトル算出部６１１が実行する動きベクトル算出処理のフローチャートである。図１０は、ブロックマッチング法による動きベクトルの算出方法を示す図である。なお、本実施形態では、動きベクトルの算出方法の例として、ブロックマッチング法について説明するが、動きベクトルの算出方法はこれに限ったものではない。例えば、オプティカルフロー手法を用いてもよい。
【００３７】
Ｓ９０１で、動きベクトル算出部６１１は、図１０に示すように、基準画像１００１においてＮ×Ｎ画素の基準ブロック１００２を配置する。Ｓ９０２で、動きベクトル算出部６１１は、図１０に示すように、参照画像１００３において、基準ブロック１００２に対応する座標１００４の周囲（Ｎ＋ｎ）×（Ｎ＋ｎ）画素を探索範囲１００５として設定する。
【００３８】
Ｓ９０３で、動きベクトル算出部６１１は、探索範囲１００５の様々な座標に存在するＮ×Ｎ画素の参照ブロックと基準ブロック１００２との間の相関演算を行い、相関値を算出する。相関値は、基準ブロック１００２及び参照ブロックの画素に対する、フレーム間差分絶対値和に基づき算出される。即ち、差分絶対値和の値が最も小さい座標が、最も相関値が高い座標となる。なお、相関値の算出方法は、差分絶対値和に限ったものではない。例えば、差分二乗和や正規相互相関値に基づき、相関値を算出してもよい。図１０の例では、参照ブロック１００６が最も相関が高いことを示している。
【００３９】
Ｓ９０４で、動きベクトル算出部６１１は、最も高い相関値を示す参照ブロックの座標に基づいて動きベクトルを算出する。図１０の例では、基準ブロック１００２に対応する座標１００４から参照ブロック１００６の中心座標へのベクトルが動きベクトルとして算出される。また、動きベクトル算出部６１１は、算出した動きベクトルの相関値を、動きベクトルの信頼度とする。従って、相関値が高い動きベクトルほど、その信頼度が高くなる。
【００４０】
Ｓ９０５で、動きベクトル算出部６１１は、基準画像１００１の全画素について動きベクトルの算出が完了したか否かを判定する。全画素について動きベクトルの算出が完了した場合、本フローチャートの処理は終了し、そうでない場合、処理はＳ９０１に戻る。Ｓ９０１において基準ブロックが配置される座標は毎回変化する。従って、動きベクトル算出部６１１は、基準ブロック１００２の位置を移動させながら、基準画像１００１の全画素について動きベクトルの算出が完了するまで、Ｓ９０１〜Ｓ９０４の処理を繰り返す。その結果、基準画像１００１の全画素について、動きベクトル及びその信頼度が算出される。尚、全画素の動きベクトルを算出するのではなく、一部の画素についてのみ動きベクトルを算出してもよい。
【００４１】
上述の動きベクトル算出処理により算出した動きベクトルの例を図１３（Ｄ）に示す。なお、図１３（Ｄ）には算出した全ての動きベクトルは図示されておらず、簡略化のために代表的な動きベクトルのみが図示されている。図１３（Ｄ）の動きベクトルの始点は、図１３（Ａ）の基準画像の人４１１の位置であり、動きベクトルの終点は、図１３（Ｂ）の参照画像の人４２１の位置である。また、人４１１及び人４２１以外の位置は、静止している背景のため、動きベクトルの長さは０である。
【００４２】
なお、動きベクトルは、前述の通りブロック単位の相関演算により算出される。そのため、画素単位のフレーム間差分絶対値とは異なり、領域（画素の集合）に基づいて動きを検出することが可能である。そのため、図１３（Ｃ）に示すように移動被写体の一部として動体尤度が小さい（フレーム間差分絶対値が小さい）領域が存在している場合であっても、実際の動きに近い動きベクトルを算出することが可能である。
【００４３】
図７に戻り、Ｓ７０４で、画像選択マップ生成部６１２は、動きベクトル及びその信頼度に基づき、画像選択マップを生成する。画像選択マップ生成部６１２が実行する画像選択マップ生成処理について、図１１のフローチャートを参照して説明する。
【００４４】
Ｓ１１０１で、画像選択マップ生成部６１２は、画像選択マップの全体（全ての位置）において、基準画像を選択するように初期化する。Ｓ１１０２で、画像選択マップ生成部６１２は、動きベクトル算出部６１１が算出した動きベクトル及びその信頼度を取得する。
【００４５】
Ｓ１１０３で、画像選択マップ生成部６１２は、Ｓ１１０２で取得した動きベクトルのうち、長さが所定値以下（閾値以下）の動きベクトルを削除する。図１３（Ｄ）の例では、人以外の静止している領域である背景領域の動きベクトルを削除する。
【００４６】
Ｓ１１０４で、画像選択マップ生成部６１２は、Ｓ１１０２で取得した動きベクトルのうち、信頼度が所定値以下（閾値以下）の動きベクトルを削除する。信頼度が低い動きベクトルを用いた場合、間違った類似度算出画像の選択処理をしてしまう可能性がある。そのため、信頼度が低い動きベクトルを削除する。
【００４７】
Ｓ１１０５で、画像選択マップ生成部６１２は、画像選択マップにおいて、残存している動きベクトルの終点座標の設定を、参照画像を選択するように変更する。こうして得られた画像選択マップの例を図１３（Ｅ）に示す。図１３（Ｅ）において、白の画素は基準画像を選択することを示し、黒の画素は参照画像を選択することを示す。図１３（Ｅ）の画像選択マップに基づく類似度算出画像の例を図１３（Ｆ）に示す。図示されるように、人４２１の画素については図１３（Ｂ）の参照画像から画素値が選択され、それ以外の画素については図１３（Ａ）の基準画像から画素値が選択される。
【００４８】
なお、画像選択マップ生成部６１２は、画像選択マップを類似度重み係数算出部６１３へ出力すればよく、類似度算出画像を実際に生成する必要はない。また、上の説明では、動きベクトルの終点座標以外の位置については基準画像が選択されるものとしたが、移動被写体が基準画像及び参照画像の両方に存在しない位置については、基準画像及び参照画像のいずれを選択してもよい。一般化すると、画像選択マップ生成部６１２は、移動被写体が基準画像には存在し参照画像には存在しない位置については基準画像の画素値を選択し、移動被写体が参照画像には存在し基準画像には存在しない位置については参照画像の画素値を選択する。また、画像選択マップ生成部６１２は、移動被写体が基準画像及び参照画像の両方に存在しない位置については基準画像の画素値を選択してもよいし、参照画像の画素値を選択してもよい。また、移動被写体の移動量が小さい場合、移動被写体が基準画像及び参照画像の両方に存在する位置が発生する可能性がある。この場合、画像選択マップ生成部６１２は、移動被写体が基準画像及び参照画像の両方に存在する位置については基準画像の画素値を選択してもよいし、参照画像の画素値を選択してもよい。
【００４９】
図７に戻り、Ｓ７０５で、類似度重み係数算出部６１３は、画像選択マップに従って画素毎に基準画像又は参照画像を選択し、選択した画像の画素値に基づいて、画素毎に類似度重み係数を算出する。なお、前述の通り図１３（Ｆ）の類似度算出画像を実際に生成する必要はないが、画像選択マップに従って画素毎に基準画像又は参照画像を選択し、選択した画像の画素値を取得すれば、結果的に類似度算出画像の各画素の画素値が得られる。
【００５０】
図１２（Ａ）〜（Ｃ）を参照して、類似度重み係数の算出方法について具体的に説明する。図１２（Ａ）は、類似度算出に用いる画素の位置関係を示す図であり、小さい四角が１画素を示している。また、黒塗りの画素は、着目画素（補正の対象位置）を示し、白塗りの画素は、周辺画素を示す。着目画素は、類似度算出画像のいずれかの画素に対応する。
【００５１】
図１２（Ｂ）は、画素値の類似度を類似度重み係数に変換する類似度重み係数カーブを示す図である。図１２（Ｃ）は、着目画素の類似度重み係数を示す図である。類似度重み係数算出部６１３は、まず、式（４）に従い、図１２（Ａ）に示す２４の周辺画素それぞれについて、着目画素の画素値との差分絶対値に基づいて類似度Ｓｉを算出する。なお、類似度とは、着目画素の画素値と周辺画素の画素値が似ている度合いを示す評価値である。
Ｓｉ＝１÷（｜Ｙｃ−Ｙｓｉ｜＋｜Ｕｃ−Ｕｓｉ｜＋｜Ｖｃ−Ｖｓｉ｜）  ・・・（４）
ここで、Ｙｃは着目画素の輝度値、Ｕｃ及びＶｃは着目画素の色差値を示し、Ｙｓｉは周辺画素の輝度値、Ｕｓｉ及びＶｓｉは周辺画素の色差値を示す。つまり、着目画素の画素値と周辺画素の画素値の差分絶対値が大きいほど、類似度Ｓｉは小さくなり、着目画素の画素値と周辺画素の画素値の差分絶対値が小さいほど、類似度Ｓｉは大きくなる。なお、式（４）の分母が０の場合、即ち、着目画素の画素値と周辺画素の画素値の差分絶対値が０の場合、類似度Ｓｉは１．０であるものとする。
【００５２】
次に、類似度重み係数算出部６１３は、２４の周辺画素それぞれの類似度について、図１２（Ｂ）に示す類似度重み係数算出カーブに基づき、図１２（Ｃ）に示すような類似度重み係数を算出する。ここで、着目画素の類似度重み係数は、例えば１．０のような固定値とする。図１２（Ｂ）の例では、類似度が大きくなるほど類似度重み係数が大きくなるように類似度重み係数算出カーブを設定している。図１２（Ｂ）で示す類似度重み係数は、０．０〜１．０の値で表現され、１．０が最も大きい。
【００５３】
類似度重み係数算出部６１３は、類似度算出画像の各画素を着目画素として、上記の手順に従って類似度重み係数を算出する。その結果、類似度算出画像の各画素について、図１２（Ｃ）に示すような５×５＝２５の類似度重み係数が得られる。なお、上の説明では、周辺画素の数を２４としたが、周辺画素の数はこれに限定されず、より多い周辺画素を参照してもよいし、より少ない周辺画素しか参照しなくてもよい。
【００５４】
図７に戻り、Ｓ７０６で、加重加算平均処理部６１４は、類似度算出画像の各画素の類似度重み係数に基づき、図１３（Ｃ）の各位置の動体尤度を加重加算平均処理し、補正動体尤度を算出する（補正評価値生成処理）。例えば、加重加算平均処理部６１４は、図１３（Ｃ）の動体尤度を、各位置の動体尤度を画素値として持つ画像（動体尤度画像）として扱う。そして、加重加算平均処理部６１４は、動体尤度画像の着目座標及び周辺座標の画素値（動体尤度）に類似度重み係数を積和演算し、類似度重み係数の総和で除算する。これにより、着目画素の補正画素値、即ち補正動体尤度が得られる。加重加算平均処理部６１４は、動体尤度画像の各画素を着目画素として、補正動体尤度の算出を行う。これにより、動体尤度画像の各画素の補正画素値、即ち補正動体尤度が得られる。Ｓ７０６の処理により得られた補正動体尤度の例を図１３（Ｇ）に示す。
【００５５】
ところで、図１２（Ｂ）の類似度重み係数算出カーブの例では、類似度が小さいほど類似度重み係数が小さく、類似度が０.２未満の場合に類似度重み係数が０となっている。これは、類似度が小さい周辺画素の動体尤度を除外し、類似度が大きい周辺画素の動体尤度のみを加重加算平均処理することにより、移動被写体周辺の静止被写体の動体尤度が高くなってしまうことを抑制するためである。換言すると、加重加算平均処理部６１４は、対象位置について選択された画素値と周辺位置について選択された画素値との類似度が小さいほど周辺位置の動体尤度の合成比率が小さくなるように、対象位置の動体尤度と周辺位置の動体尤度とを合成する。
【００５６】
この点を更に詳細に説明すると、図１３（Ａ）〜（Ｂ）の例では、基準画像の人４１１及び参照画像の人４２１を動体領域として検出することが正しい検出結果である。しかしながら、前述の通り、人４２１の膝領域については、動体尤度が他の領域よりも低い（図１３（Ｃ）参照）。そこで、加重加算平均処理部６１４は、周辺画素の動体尤度を用いた加重加算平均処理により、動体尤度を補正する。しかしながら、周辺画素の類似度を考慮せずに動体尤度を加重加算平均した場合、人４１１又は人４２１の周辺領域に存在する静止被写体である背景まで動体尤度が高くなってしまう可能性がある。そこで、類似度重み係数算出部６１３は、画像選択マップに基づき、人４２１の領域については参照画像を用い、それ以外の領域については基準画像を用いて類似度及び類似度重み係数を算出する。類似度の算出に用いる画像を領域毎に変更することにより、動体尤度と類似度の算出に用いる画像との整合を取ることができる。加重加算平均処理部６１４は、類似度が大きい周辺画素の動体尤度のみを加重加算平均処理することにより、画素値が類似している同じ被写体内の動体尤度を用いて着目画素の動体尤度を補正することができる。その結果、移動被写体周辺の静止被写体の動体尤度が高くなってしまうことを抑制することができる。また、図１３（Ｃ）に示すように動体尤度が小さくなってしまった人４２１の膝領域については、動体尤度が大きくなる方向に補正することができる。
【００５７】
以上の処理により、補正動体尤度が得られる。その後、前述の通り、補正動体尤度に基づいて基準画像及び参照画像の合成処理が画素毎に（即ち、撮影範囲の各位置について）行われる（図３のＳ３０４参照）。
【００５８】
以上説明したように、第１の実施形態によれば、撮像装置１００は、基準画像と参照画像（位置合わせ済み参照画像）との間のフレーム間差分絶対値に基づいて動体尤度（評価値）を算出する。また、撮像装置１００は、基準画像と参照画像との間における動きベクトルを算出し、動きベクトルに基づいて画像選択マップを生成し、画像選択マップに基づいて選択された基準画像又は参照画像の画素値に基づいて類似度重み係数を算出する。そして、撮像装置１００は、類似度重み係数に基づいて動体尤度を補正することにより、補正動体尤度（補正評価値）を得る。これにより、動体尤度の精度を向上させることができる。
【００５９】
なお、本実施形態では、基準画像から参照画像への動きベクトルを算出する例を説明したが、算出する動きベクトルの方向はこれに限ったものではない。例えば、動きベクトル算出部６１１は、参照画像から基準画像への動きベクトルを算出してもよい。この場合、図１１のＳ１１０５で、画像選択マップ生成部６１２は、画像選択マップにおいて、残存している動きベクトルの始点座標の設定を、参照画像を選択するように変更する。
【００６０】
また、本実施形態では、類似度重み係数が０．０〜１．０の多値の範囲を持つ例について説明したが、類似度重み係数は、０．０及び１．０といった２値で表現してもよい。この場合、加重加算平均処理部６１４において、重み係数の乗算処理が不要になるため、処理量を減らすことができる。
【００６１】
また、本実施形態では、着目画素が１画素の例について説明をしたが、複数の画素を着目領域として動体尤度を補正してもよい。この場合、類似度重み係数算出部６１３は、着目領域の平均画素値と周辺領域の画素値との差分絶対値に基づき類似度を算出する。
【００６２】
また、本実施形態では、ランダムノイズを低減する画像合成処理のために補正動体尤度を使用する例について説明をしたが、補正動体尤度の用途はこれに限ったものではない。例えば、異なる露出で撮影した複数枚の画像を合成することによりダイナミックレンジを拡大するＨＤＲ合成処理のために補正動体尤度を使用してもよい。この場合、異なる露出で撮影した基準画像と参照画像との明るさレベルを合わせ、動体領域検出部２０２に入力することにより、補正動体尤度を算出することができる。
【００６３】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００６４】
１００…撮像装置、２０２…動体領域検出部、６００…動体尤度算出部、６１０…動体尤度補正部、６１１…動きベクトル算出部、６１２…画像選択マップ生成部、６１３…類似度重み係数算出部、６１４…加重加算平均処理部
【図１】
2019092033.tif 000005
【図２】
2019092033.tif 000006
【図３】
2019092033.tif 000007
【図４】
2019092033.tif 000008
【図５】
2019092033.tif 000009
【図６】
2019092033.tif 000010
【図７】
2019092033.tif 000011
【図８】
2019092033.tif 000012
【図９】
2019092033.tif 000013
【図１０】
2019092033.tif 000014
【図１１】
2019092033.tif 000015
【図１２】
2019092033.tif 000016
【図１３】
2019092033.tif 000017