(57)【特許請求の範囲】
【請求項１】
第１のフレーム期間内で第１の撮像条件で撮像された画像Ｘと第２の撮像条件で撮像された画像Ｙとを取得する第１の取得手段と、
前記第１のフレーム期間の次のフレーム期間である第２のフレーム期間内で前記第１の撮像条件で撮像された画像Ｚと前記第２の撮像条件で撮像された画像Ｗとを取得する第２の取得手段と、
前記画像Ｘから前記画像Ｚへの動きベクトルを第１の動きベクトルとして求め、前記画像Ｙから前記画像Ｗへの動きベクトルを第２の動きベクトルとして求める計算手段と、
前記画像Ｚ中の輝度値の分布に応じた信頼度を該画像Ｚに対して設定すると共に、前記画像Ｗ中の輝度値の分布に応じた信頼度を該画像Ｗに対して設定する設定手段と、
前記画像Ｚに対して設定された信頼度が前記画像Ｗに対して設定された信頼度よりも高い場合には、前記第１の動きベクトルを出力し、前記画像Ｚに対して設定された信頼度が前記画像Ｗに対して設定された信頼度よりも低い場合には、前記第２の動きベクトルを出力する出力手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記第１の取得手段は、前記第１のフレーム期間内でそれぞれ露光時間を異ならせて撮像された２つの画像を前記画像Ｘ、前記画像Ｙとして取得し、
前記第２の取得手段は、前記第２のフレーム期間内で前記画像Ｘの露光時間と同じ露光時間で撮像された前記画像Ｚと、前記画像Ｙの露光時間と同じ露光時間で撮像された前記画像Ｗと、を取得する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記第１の取得手段は、前記第１のフレーム期間内で右目用の画像として撮像された前記画像Ｘ、左目用の画像として撮像された前記画像Ｙを取得し、
前記第２の取得手段は、前記第２のフレーム期間内で右目用の画像として撮像された前記画像Ｚ、左目用の画像として撮像された前記画像Ｗを取得する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記出力手段は、前記画像Ｚに対して設定された信頼度と前記画像Ｗに対して設定された信頼度とが同じであり、且つそれぞれの信頼度が規定値よりも低い場合には、０の成分から成る動きベクトルを出力することを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記出力手段は、前記第１の動きベクトルと前記第２の動きベクトルとが同じである場合には、前記第１の動きベクトル、前記第２の動きベクトル、の何れか一方を出力することを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記設定手段は、
前記画像Ｚ中の輝度値の分布が低輝度側若しくは高輝度側に偏っている場合には前記画像Ｚに対して規定の信頼度を設定し、前記画像Ｚ中の輝度値の分布が低輝度側および高輝度側の何れにも偏っていない場合には前記画像Ｚに対して該規定の信頼度よりも高い信頼度を設定し、
前記画像Ｗ中の輝度値の分布が低輝度側若しくは高輝度側に偏っている場合には前記画像Ｗに対して規定の信頼度を設定し、前記画像Ｗ中の輝度値の分布が低輝度側および高輝度側の何れにも偏っていない場合には前記画像Ｗに対して該規定の信頼度よりも高い信頼度を設定する
ことを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
画像処理装置が行う画像処理方法であって、
前記画像処理装置の第１の取得手段が、第１のフレーム期間内で第１の撮像条件で撮像された画像Ｘと第２の撮像条件で撮像された画像Ｙとを取得する第１の取得工程と、
前記画像処理装置の第２の取得手段が、前記第１のフレーム期間の次のフレーム期間である第２のフレーム期間内で前記第１の撮像条件で撮像された画像Ｚと前記第２の撮像条件で撮像された画像Ｗとを取得する第２の取得工程と、
前記画像処理装置の計算手段が、前記画像Ｘから前記画像Ｚへの動きベクトルを第１の動きベクトルとして求め、前記画像Ｙから前記画像Ｗへの動きベクトルを第２の動きベクトルとして求める計算工程と、
前記画像処理装置の設定手段が、前記画像Ｚ中の輝度値の分布に応じた信頼度を該画像Ｚに対して設定すると共に、前記画像Ｗ中の輝度値の分布に応じた信頼度を該画像Ｗに対して設定する設定工程と、
前記画像処理装置の出力手段が、前記画像Ｚに対して設定された信頼度が前記画像Ｗに対して設定された信頼度よりも高い場合には、前記第１の動きベクトルを出力し、前記画像Ｚに対して設定された信頼度が前記画像Ｗに対して設定された信頼度よりも低い場合には、前記第２の動きベクトルを出力する出力工程と
を備えることを特徴とする画像処理方法。
【請求項８】
コンピュータを、請求項１乃至６の何れか１項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動きベクトルを求めるための技術に関するものである。
【背景技術】
【０００２】
近年、ＴＶ受像機やＰＣモニタを始めとして、画像表示部を備えた様々な装置が実用化されている。これらの画像表示部には、液晶表示装置を始めとして様々なデバイスが使用されている。
【０００３】
例えば、液晶表示装置は、常に発光しているバックライトを液晶シャッターで調光する方式を採用しており、１フレーム期間にわたって調光された光が出力される故、ホールド型表示装置と言われている。ホールド型表示装置において動画の追従視（動画表示において、動く部分を視線で追いかける見方）を行った場合、光出力期間に応じた“動きぼけ”が観測される。６０Ｈｚの動画表示では、原理的には最低１６．７ｍｓの“動きぼけ”が観測される。
【０００４】
一方、例えば、ＣＲＴや有機ＥＬといった自発光型表示装置は、１フレーム期間において発光期間と消光期間がある故、インパルス型表示装置と言われている。インパルス型表示装置は、消光期間があるため追従視による“動きぼけ”が観測され難い。しかしながら、大画面化すると６０Ｈｚの画像表示ではフリッカが目立ち易くなる。
【０００５】
上記表示方式に起因する“動きぼけ”や、大画面化によるフリッカを改善する技術として、６０Ｈｚの入力画像に対して、動画の動きに合わせた補間画像を生成して挿入することで１２０Ｈｚ画像として表示を行う方法が提案されている。１２０Ｈｚ動画表示では、原理的に“動きぼけ”が６０Ｈｚ動画表示の半分となる。また、人間の視覚特性上、フリッカを感じ難くなる。
【０００６】
補間画像を生成する場合、表示画像がフレーム間でどの方向に動いているか（＝動きベクトル）を検出する必要がある。一般に動きベクトル検出方法として、所謂ブロックマッチング法がある。ブロックマッチング法では、処理の対象となる基準フレーム画像を所定のサイズに分割した基準ブロックに対し、参照フレーム画像内において対応する位置を起点として、基準ブロックと同サイズの参照ブロックを抽出する。次に、基準ブロックと参照ブロックのそれぞれ対応する全ての画素について絶対差分和（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ：ＳＡＤ）を算出する。このＳＡＤ演算を、参照フレーム画像に設定する所定の探索領域内で、参照ブロックを１画素ずつ移動させながら繰り返して行う。そして、上記ＳＡＤが最も小さい値を示した点の起点に対する座標を動きベクトルとして検出する。
【０００７】
一方、ビデオカメラ、電子カメラなどの高画質化技術として同一シーンにおける露光量の異なる複数枚の画像を撮影し、この複数枚の画像データを何らかの演算で合成して、ダイナミックレンジを拡大する技術がある（特許文献１）。以下では、この高ダイナミックレンジ化技術をＨＤＲ（Ｈｉｇｈ  Ｄｙｎａｍｉｃ  Ｒａｎｇｅ）技術と略する。
【０００８】
ＨＤＲ技術では、低輝度側の撮像対象の階調情報が多く含まれるように露出を長めに設定した長露出画像と、高輝度側の撮像対象の階調情報が多く含まれるように露出を短めに設定した短露出画像とを作成する。これをディスプレイで連続して表示することで、人間の目で積分して見ると低輝度側、高輝度側の何れも階調を残した高いダイナミックレンジを得ることができる。
【０００９】
このＨＤＲ技術を動画表示に適用する場合、１つのフレーム画像を構成する長露出画像と短露出画像を交互に表示することになる。このような表示画像を以下、ＨＤＲ動画と称する。ＨＤＲ動画を液晶表示装置のようなホールド型表示装置で表示する場合、中間画像を生成し挿入することで、動きぼけを改善することが考えられる。
【００１０】
ただし、ＨＤＲ動画は、原理的に黒潰れ（低輝度側に階調がシフトした状態）や、白とび（高輝度側に階調がシフトした状態）が発生しやすい。ＳＡＤを求める際の基準ブロック内の画素にこれらの現象が起こると、探索領域がフラットで輝度変化が乏しいため、ＳＡＤのピークは一点ではなく、複数、あるいは面状にもつことになり、結果として動きベクトルの信頼性が低下してしまう。
【００１１】
この問題への対処方法として、基準ブロックの周辺のブロックを基準ブロックとした際の動きベクトル（周辺ブロックの動きベクトル）から、基準ブロックの動きベクトルを求める方法がある（特許文献２）。特許文献２では、複数の周辺ブロックの動きベクトルから基準ブロックの動きベクトルを求めることで、基準ブロックの動きベクトルの信頼性を高める技術が開示されている。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開平６−２７３３５４号公報
【特許文献２】特開２００３−２２４８５４号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、特許文献２の技術は、周辺ブロックも黒潰れ、あるいは白とびしていた場合、正しい動きベクトルを得ることはできない。また、ＨＤＲ動画の場合、一方の画像が黒潰れ、あるいは白飛びしていても、他方の画像には階調が残っており、さらにこの２枚の画像は動きは同一である。よって、黒潰れ、あるいは白とびした画像の周辺ブロックから動きベクトルを求めるよりも、もう一方の画像の基準ブロックにおける動きベクトルを採用した方が信頼性が高い。しかし、特許文献２では、ＨＤＲ動画を想定していない為、上記のようにもう一方の画像における動きベクトルを採用することはできない。
【００１４】
本発明は以上の問題に鑑みてなされたものであり、ＨＤＲ動画において動き補正を精度よく行い、動きぼけを改善する為の技術を提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明の目的を達成するために、本発明の一例としての画像処理装置は以下の構成を備える。即ち、第１のフレーム期間内で第１の撮像条件で撮像された画像Ｘと第２の撮像条件で撮像された画像Ｙとを取得する第１の取得手段と、
前記第１のフレーム期間の次のフレーム期間である第２のフレーム期間内で前記第１の撮像条件で撮像された画像Ｚと前記第２の撮像条件で撮像された画像Ｗとを取得する第２の取得手段と、
前記画像Ｘから前記画像Ｚへの動きベクトルを第１の動きベクトルとして求め、前記画像Ｙから前記画像Ｗへの動きベクトルを第２の動きベクトルとして求める計算手段と、
前記画像Ｚ中の輝度値の分布に応じた信頼度を該画像Ｚに対して設定すると共に、前記画像Ｗ中の輝度値の分布に応じた信頼度を該画像Ｗに対して設定する設定手段と、
前記画像Ｚに対して設定された信頼度が前記画像Ｗに対して設定された信頼度よりも高い場合には、前記第１の動きベクトルを出力し、前記画像Ｚに対して設定された信頼度が前記画像Ｗに対して設定された信頼度よりも低い場合には、前記第２の動きベクトルを出力する出力手段と
を備えることを特徴とする。
【発明の効果】
【００１６】
本発明の構成によれば、ＨＤＲ動画において動き補正を精度よく行い、動きぼけを改善することができる。
【図面の簡単な説明】
【００１７】
【図１】画像処理装置の機能構成例を示す図。
【図２】ブロックマッチングを説明するための図。
【図３】信頼度算出部が行う処理を説明する図。
【図４】動きベクトル決定部１１４が行う処理のフローチャート。
【図５】基準ブロック２００を探索するための領域を拡大する例を示す図。
【発明を実施するための形態】
【００１８】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の１つである。
【００１９】
［第１の実施形態］
先ず、本実施形態に係る画像処理装置の構成例について、図１のブロック図を用いて説明する。以下の説明では、図１に示した各部は何れもハードウェアで構成されているものとして説明する。
【００２０】
入力端子１００には、第１のフレーム期間（現在のフレーム期間）内で比較的短い露光時間で撮像された画像Ｘ（一方）の画像信号が入力される。入力端子１０１には、第１のフレーム期間の次のフレーム期間である第２のフレーム期間内で比較的短い露光時間で撮像された画像Ｚの画像信号が入力される。本実施形態では、画像Ｘの露光時間と画像Ｚの露光時間とは全く同じであるものとして説明するが、若干ずれていても良い。
【００２１】
入力端子１０２には、第１のフレーム期間（現在のフレーム期間）内で比較的長い露光時間で撮像された画像Ｙ（他方）の画像信号が入力される。入力端子１０３には、第２のフレーム期間内で比較的長い露光時間で撮像された画像Ｗの画像信号が入力される。本実施形態では、画像Ｙの露光時間と画像Ｗの露光時間とは全く同じであるものとして説明するが、若干ずれていても良い。
【００２２】
即ち、入力端子１００〜１０３により、第１のフレーム期間内でそれぞれ異なる２つの撮像条件で撮像された２枚の画像、第２のフレーム期間内でそれぞれ異なる２つの撮像条件で撮像された２枚の画像を取得することができる（第１の取得、第２の取得）。
【００２３】
動きベクトル探索部１１０は、入力端子１００，１０１を介して入力された画像Ｘと画像Ｚのそれぞれの画像信号を受け取ると、画像Ｘから画像Ｚへの動きベクトル２０４を求める（第１の計算）。また、動きベクトル探索部１１０は、画像Ｚ（２０１）を信頼度算出部１１２に送出する。
【００２４】
信頼度算出部１１２は、画像Ｚ中の輝度値の分布が低輝度側若しくは高輝度側に偏っているか、それとも低輝度側及び高輝度側の何れにも偏っていないか、に応じて、画像Ｚに対して信頼度１０４を設定する（第１の設定）。
【００２５】
動きベクトル探索部１１１は、入力端子１０２，１０３を介して入力された画像Ｙと画像Ｗのそれぞれの画像信号を受け取ると、画像Ｙから画像Ｗへの動きベクトル２０５を求める（第２の計算）。また、動きベクトル探索部１１１は、画像Ｗ（２０３）を信頼度算出部１１３に送出する。
【００２６】
信頼度算出部１１３は、画像Ｗ中の輝度値の分布が低輝度側若しくは高輝度側に偏っているか、それとも低輝度側及び高輝度側の何れにも偏っていないか、に応じて、画像Ｗに対して信頼度１０５を設定する（第２の設定）。
【００２７】
動きベクトル決定部１１４は、動きベクトル２０４，２０５、信頼度１０４，１０５を用いて、第１のフレーム期間から第２のフレーム期間への動きベクトルを決定する。そして動きベクトル決定部１１４は、この決定した動きベクトルを出力端子１０６を介して外部に出力する。
【００２８】
次に、動きベクトル探索部１１０の動作について、より詳細に説明する。動きベクトル探索部１１０による動きベクトル探索処理は周知の技術であるため、これについての説明は簡単に行う。
【００２９】
動きベクトル探索部１１０は、画像Ｘ、画像Ｚを受けると、これらをデータとして保持する。図２（ａ）は、画像Ｘ中の、以下に説明する基準ブロック２００の周辺領域を示している。図２（ｂ）は、画像Ｚ内において、基準ブロック２００とブロックマッチングを行うための領域である参照領域（画素ブロック２９１）を示している。画素ブロック２９１のサイズは特に限定するものではなく、画像Ｚそのもののサイズであっても良いし、画像Ｚを複数の矩形に分割した場合の１つの矩形のサイズであっても良い。また、図２では、各画素の画素値（輝度値）は８ビット（０〜２５５）で表現されているものとしている。
【００３０】
図２（ａ）において３画素×３画素のサイズの基準ブロック２００は、動きベクトルを探索する為の基準となるブロックである。そして、図２（ｂ）に示した画素ブロック２９１内において、基準ブロック２００と最も一致する領域を探索する。
【００３１】
本実施形態では、動きベクトル探索部１１０は、画素ブロック２９１内で基準ブロック２００を画素単位で移動させ、画素ブロック２９１内で基準ブロック２００と最も一致する領域を探索する。この方法として、ブロック間の絶対差分和（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ：ＳＡＤ）を用いたブロックマッチングを行う。
【００３２】
画素ブロック２９１内で基準ブロック２００と最も一致する領域の中心画素位置を図２（ｃ）において星印で示す。即ち、この星印で示した画素位置は、SADのピークが求まった位置である。そして動きベクトル探索部１１０は、画素ブロック２９１の中心位置から、星印の画素位置へのベクトルを、動きベクトルとして求める。
【００３３】
なお、基準ブロック２０２の周辺領域が図２（ｄ）、画像Ｚ内の参照領域である画素ブロック２９３が図２（ｅ）に示すようなものであったとする。この場合も同様に、画素ブロック２９３内で基準ブロック２０２を画素単位で移動させ、画素ブロック２９３内で基準ブロック２０２と最も一致する領域を探索する。このとき、図２（ｆ）に示す如く、画素ブロック２９３内で基準ブロック２０２と最も一致する領域の中心画素位置（星印の画素位置）が複数であったとする。この場合、動きベクトル探索部１１０は、画素ブロック２９３の中心位置から、それぞれの星印の画素位置へのベクトルを、動きベクトルとして求める。
【００３４】
このようにして動きベクトル探索部１１０は、求め得る全ての動きベクトルを求め、動きベクトル２０４として動きベクトル決定部１１４に出力する。なお、動きベクトル探索部１１１の動作は、用いる画像が画像Ｚ及び画像Ｗである点が異なるのみで、実質的には動きベクトル探索部１１０と同様であるため、動きベクトル探索部１１１の動作についての説明は省略する。
【００３５】
次に、信頼度算出部１１２の動作について、より詳細に説明する。信頼度算出部１１２は、図２（ａ）〜（ｃ）の場合、参照領域に対する（参照領域が画像Ｚ（２０１）全体である場合には画像Ｚ（２０１）に対する）信頼度を算出する。本実施形態では、この信頼度は、参照領域が動きベクトルを探索する為の情報を十分に有しているかどうかを測る指標、と定義する。
【００３６】
以下に、この信頼度算出部１１２がこの信頼度を算出する為に行う処理について説明する。先ず信頼度算出部１１２は、画像Ｚ（２０１）を受けると、この画像Ｚ（２０１）において参照領域中の輝度値のヒストグラムを作成する。図２（ａ）〜（ｃ）の場合、画素ブロック２９１内の輝度値のヒストグラムを作成する。
【００３７】
作成したヒストグラムの一例を図３（ａ）に示す。横軸は輝度値（０〜２５５を０〜１に正規化している）、縦軸が各輝度値の出現頻度値（累積頻度）を表している。動きベクトル探索は、階調がまんべんなく現われていた方が精度よく求められる。しかし、参照領域が黒潰れしていたり、白とびしていては、動きベクトルを正確に求めることができない。すなわち、参照領域が黒潰れしていたり、白とびしている場合、この参照領域は、動きベクトルを探索するための情報を雄分には有していないことになり、その信頼度は低くなる。
【００３８】
そこで本実施形態では、参照領域に対する信頼度は次のように決定する。参照領域から作成したヒストグラムの曲線が領域３００（輝度値［０−０．２５］，累積頻度［５０％−１００％］）内を通った場合、即ち、参照領域中の輝度値の分布が低輝度側に偏っていたとする。この場合、参照領域は黒つぶれしていると定義する。また、参照領域から作成したヒストグラムの曲線が領域３０３（輝度値［０．７５−１］，累積頻度［０％−５０％］）内を通った場合、即ち、参照領域中の輝度値の分布が高輝度側に偏っていたとする。この場合、参照領域は白とび状態にあると定義する。
【００３９】
更に、領域３００は黒潰れの度合いに応じて、２つの領域３０１，３０２に分ける。領域３０３も同様に、白とびの度合いに応じて、２つの領域３０４，３０５に分ける。そして、領域３０１，３０２，３０４，３０５とそれ以外の領域３０６のそれぞれに対して信頼度を予め定義しておく。各領域に対する信頼度を図３（ｂ）に示す。
【００４０】
参照領域から作成したヒストグラムの曲線が領域３０１（領域Ａ）内を通った場合（曲線ｈ１の場合）、参照領域に対する信頼度は「−２」となる。参照領域から作成したヒストグラムの曲線が領域３０１（領域Ａ）内を通らず領域３０２（領域Ｂ）内を通った場合、参照領域に対する信頼度は「−１」となる。参照領域から作成したヒストグラムの曲線が領域３０４（領域Ｄ）内を通った場合（曲線ｈ３の場合）、参照領域に対する信頼度は「−１」となる。参照領域から作成したヒストグラムの曲線が領域３０４（領域Ｄ）内を通らず領域３０５（領域Ｅ）内を通った場合、参照領域に対する信頼度は「−２」となる。参照領域から作成したヒストグラムの曲線が領域Ａ、Ｂ、Ｄ、Ｅの何れも通らず、領域３０６（領域Ｃ）内を通っている場合（曲線ｈ２の場合）、参照領域に対する信頼度は「０」となる。
【００４１】
もちろん、信頼度の値は上記の例に限定するものではない。信頼度設定の本質は、画像Ｚ中の輝度値の分布が低輝度側若しくは高輝度側に偏っている場合は画像Ｚに対して規定の信頼度を設定し、低輝度側及び前記高輝度側の何れにも偏っていない場合は画像Ｚに対して規定の信頼度よりも高い信頼度を設定することにある。
【００４２】
なお、信頼度算出部１１３は信頼度算出部１１２と同様の動作を行う。即ち、画像Ｗ中の輝度値の分布が低輝度側若しくは高輝度側に偏っている場合は画像Ｗに対して規定の信頼度を設定し、低輝度側及び前記高輝度側の何れにも偏っていない場合は画像Ｗに対して規定の信頼度よりも高い信頼度を設定する。
【００４３】
次に、動きベクトル決定部１１４が行う処理について、同処理のフローチャートを示す図４を用いて説明する。先ずステップＳ４００では動きベクトル決定部１１４は、動きベクトル探索部１１０からの動きベクトル２０４と、動きベクトル探索部１１１からの動きベクトル２０５とを比較する。動きベクトル探索部１１０、動きベクトル探索部１１が何れも１つずつ動きベクトルを求めた場合には、単純に動きベクトル２０４と動きベクトル２０５とを比較すればよい。しかし、動きベクトル探索部１１０が複数の動きベクトル２０４を求め、動きベクトル探索部１１が１つの動きベクトル２０５を求めた場合、それぞれの動きベクトル２０４と動きベクトル２０５とを比較する必要がある。これは、一方が複数で他方が単数の場合、双方が複数の場合であっても同じことである。
【００４４】
そして動きベクトル決定部１１４は、ステップＳ４００における比較の結果、互いに一致する動きベクトルの組が存在するか否かを判断する。この判断の結果、互いに一致する組が存在する場合には処理をステップＳ４０１に進め、存在しない場合には、処理をステップＳ４０２に進める。
【００４５】
ステップＳ４０１では動きベクトル決定部１１４は、この組が１つのみであるか否かを判断する。この判断の結果、１つのみである場合には処理をステップＳ４０６に進め、複数の場合には、この複数の組を出力候補とし、処理をステップＳ４０７に進める。
【００４６】
ステップＳ４０６では、動きベクトル決定部１１４は、動きベクトル２０４、動きベクトル２０５のうち何れか一方を選択し、選択した一方を出力端子１０６を介して外部に出力する。
【００４７】
ステップＳ４０２では動きベクトル決定部１１４は、信頼度算出部１１２が求めた信頼度１０４と、信頼度算出部１１３が求めた信頼度１０５と、の大小比較を行う。この大小比較の結果、信頼度１０４≠信頼度１０５の場合、処理をステップＳ４０３に進める。また、信頼度１０４＝信頼度１０５＝０の場合には、処理をステップＳ４０４に進める。また、信頼度１０４＝信頼度１０５＜０の場合には、処理をステップＳ４０５に進める。
【００４８】
ステップＳ４０３では、動きベクトル決定部１１４は、信頼度１０４＞信頼度１０５であれば、動きベクトル２０４を出力候補として選択する。一方、信頼度１０４＜信頼度１０５であれば、動きベクトル２０５を出力候補として選択する。
【００４９】
ステップＳ４０４では、動きベクトル２０４、動きベクトル２０５のどちらも信頼度が高いので、基準ブロック２００を探索するための領域を拡大して、動きベクトル探索部１１０，１１１、信頼度算出部１１２，１１３を動作させる。そしてステップＳ４０３と同様に、信頼度が高い方の動きベクトルを出力候補として選択する。基準ブロック２００を探索するための領域を拡大する例について図５を用いて説明する。元々領域５００内で基準ブロック２００を探索していたものの、信頼度１０４＝信頼度１０５＝０であったとする。この場合、領域５００を拡大して領域５０１とし、この領域５０１内で基準ブロック２００を探索する。
【００５０】
ステップＳ４０５では、動きベクトル決定部１１４は、動きベクトル２０４、動きベクトル２０５の何れも信頼度が低いので、何れの動きベクトルも出力候補として選択せず、０の成分から成る動きベクトルを、出力端子１０６を介して外部に出力する。なお、本実施形態では信頼度の最高値を０としているが、上記の通り、信頼度の数値は上記の関係の関係を維持していれば、他の数値を採用しても良い。然るにステップＳ４０５の本質は、画像Ｚに対して設定された信頼度と画像Ｗに対して設定された信頼度とが同じであり、且つそれぞれの信頼度が規定値よりも低い場合には、０の成分から成る動きベクトルを出力することにある。なお、０の成分から成る動きベクトルを出力する代わりに、「動きベクトル無し」を示すコードを出力するようにしても良い。
【００５１】
ステップＳ４０７では、動きベクトル決定部１１４は、出力候補として選択された動きベクトルを、出力端子１０６を介して外部に出力する。ここで、出力候補として選択された動きベクトルが１つの場合にはこれをそのまま出力すれば良い。しかし、出力候補として選択された動きベクトルが複数個存在する場合、これらのうちから１つを更に選択する必要がある。
【００５２】
この選択方法については様々な方法が考え得るが、例えば、次のような方法がある。着目動きベクトルと、着目動きベクトル以外のそれぞれの動きベクトルと、が為す角度θ（ｃｏｓθでも良い）の平均値を求める。そしてそれぞれの動きベクトルについて求めた平均値のうち、最も小さい平均値を求めた動きベクトルを、最終的に出力する動きベクトルとする。もし、平均値が同じ動きベクトルが２以上存在する場合、ベクトルサイズが最も小さい動きベクトルを最終的に出力する動きベクトルとする。もし、何れのベクトルサイズも同じである場合には、ステップＳ４０５のように、０の成分から成る動きベクトルを出力する。なお、０の成分から成る動きベクトルを出力する代わりに、「動きベクトル無し」を示すコードを出力するようにしても良い。
【００５３】
以上の説明により、本実施形態によれば、ＨＤＲ動画において動き補正を精度よく行い、動きぼけを改善することができる。なお、本実施形態では、画像Ｘと画像Ｙ（画像Ｚと画像Ｗ）として、互いに露光時間が異なる画像を用いた。しかし、画像Ｘと画像Ｙに適用可能な画像は、それぞれ異なる２つの撮像条件で撮像された２枚の画像であれば、他の取得形態で取得された画像であっても良い。例えば、第１のフレーム期間内で右目用の画像として撮像された画像を画像Ｘ、左目用の画像として撮像された画像を画像Ｙとして取得しても良い。これは画像Ｚと画像Ｗについても同様である。
【００５４】
［第２の実施形態］
第１の実施形態では、図１に示した各部は何れもハードウェアで構成されているものとして説明した。しかし、その一部若しくは全部をコンピュータプログラムとして構成しても良い。この場合、このコンピュータプログラムは、ＰＣ（パーソナルコンピュータ）等の装置にインストールされ、この装置が有するＣＰＵなどにより実行される。これによりこの装置は、第１の実施形態で説明した動きベクトル決定処理を実行することができる。
【００５５】
［その他の実施例］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005558934.tif 000002
【図２】
0005558934.tif 000003
【図３】
0005558934.tif 000004
【図４】
0005558934.tif 000005
【図５】
0005558934.tif 000006