(57)【要約】【課題】適切な超解像画像を安定して生成できる画像処理装置を提供すること。【解決手段】撮像部１０１が撮影した画像を順次記憶する画像記憶部１１０と、画像記憶部１１０が記憶した画像のうち、任意の時点の画像である基準画像に対するオプティカルフローを検出するフロー検出部１２０と、オプティカルフローから移動距離が予め定められた閾値を超えるまでに要した時間を求める移動時間算出部１３１と、移動時間と移動距離に基づいて画素の移動速度を算出する移動速度算出部１３２と、オプティカルフローに含まれる移動方向の情報に基づいて移動方向の角度を算出する移動方向算出部１３３と、移動方向の角度および移動速度を含む速度情報を出力する速度情報出力部１３４と、速度情報から時系列的に連続する画像間の位置ずれ量を算出し、位置ずれ量に基づいて超解像画像を生成する超解像画像生成部１４２とを備えた。【選択図】        図１
2006245677.tif 000002
【特許請求の範囲】
【請求項１】
撮像部が撮影した画像を順次記憶する画像記憶部と、
前記画像記憶部が記憶した前記画像のうち、任意の時点の前記画像である基準画像に対する前記画像上の画素の移動方向および移動距離の情報を含むベクトルであるオプティカルフローを検出するフロー検出部と、
前記フロー検出部が検出した前記オプティカルフローから前記移動距離が予め定められた閾値を超えるまでに要した時間を求める移動時間算出部と、
前記移動時間算出部が求めた時間と前記移動距離とに基づいて前記画素の移動速度を算出する移動速度算出部と、
前記フロー検出部が検出した前記オプティカルフローに含まれる前記移動方向の情報に基づいて前記移動方向の角度を算出する移動方向算出部と、
前記移動方向算出部が算出した前記移動方向の角度および前記移動速度算出部が算出した前記移動速度を含む速度情報を出力する速度情報出力部と、
前記速度情報出力部によって出力された前記速度情報から時系列的に連続する前記画像間の位置ずれ量を算出し、算出した前記位置ずれ量に基づいて超解像画像を生成する超解像画像生成部と、
を備えたことを特徴とする画像処理装置。
【請求項２】
前記オプティカルフローを順次記憶するフロー記憶部と、
前記フロー検出部が検出した前記オプティカルフローの確からしさの程度を示す信頼度を算出する信頼度算出部と、をさらに備え、
前記フロー検出部は、前記オプティカルフローの検出対象の領域を設定し、前記領域における前記基準画像と前記オプティカルフローを検出する前記画像との関連の度合いを示す相関値を算出し、前記相関値が予め定められた閾値を越える前記領域に含まれる画素に対して前記オプティカルフローを検出し、
前記信頼度算出部は、前記フロー記憶部に記憶された前記オプティカルフローのうち前記相関値が最も大きい前記画像において検出された前記オプティカルフローに含まれる前記移動方向と、前記フロー検出部が検出した前記オプティカルフローに含まれる前記移動方向との差に基づいて前記信頼度を算出し、
前記超解像画像生成部は、前記信頼度算出部が算出した前記信頼度を重み付け係数として、前記位置ずれ量から算出した輝度値と超解像処理を実行する前記画像である入力画像の画素の輝度値を補間して算出した輝度値とを重み付け加算して超解像画像の輝度値を算出することにより超解像画像を生成することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記超解像画像生成部は、前記領域内において検出された前記オプティカルフローに対して前記信頼度算出部が算出した前記信頼度の平均値ｒAおよび（１−ｒA）を重み付け係数、前記位置ずれ量から算出した輝度値をＰS（ｘ，ｙ）、前記入力画像の画素の輝度値を補間して算出した輝度値をＰH（ｘ，ｙ）とし、式（１）に示す重み付け加算式により超解像画像の輝度値ＰR（ｘ，ｙ）を算出することを特徴とする請求項２に記載の画像処理装置。
【数１】
2006245677.tif 000009
【請求項４】
前記超解像画像生成部は、前記入力画像に対して過去の前記画像である過去画像を前記画像記憶部から取得し、取得した前記過去画像から前記入力画像までの時系列的に連続する前記画像間について超解像画像の生成処理を逐次実行し、前記入力画像についての超解像画像を生成することを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記超解像画像生成部は、前記入力画像の画素の輝度値を補間して算出した輝度値を、前記位置ずれ量に相当する距離の分画素を移動することにより生成した高解像度画像の輝度値で置換することにより超解像画像を生成することを特徴とする請求項１〜４のいずれか１つに記載の画像処理装置。
【請求項６】
前記超解像画像生成部は、前記高解像度画像の輝度値と前記入力画像の輝度値との差である輝度値差が、予め定められた閾値である輝度値差閾値を越える場合、前記輝度値差と前記輝度値差閾値との差の分、前記高解像度画像の輝度値の値を補正し、前記入力画像の画素の輝度値を補間して算出した輝度値を、補正した高解像度画像の輝度値で置換することにより超解像画像を生成することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
撮像部が撮影した画像を順次記憶する画像記憶部が記憶した前記画像のうち、任意の時点の前記画像である基準画像に対する前記画像上の画素の移動方向および移動距離の情報を含むベクトルであるオプティカルフローを検出するフロー検出ステップと、
前記フロー検出ステップが検出した前記オプティカルフローから前記移動距離が予め定められた閾値を超えるまでに要した時間を求める移動時間算出ステップと、
前記移動時間算出ステップが求めた時間と前記移動距離とに基づいて前記画素の移動速度を算出する移動速度算出ステップと、
前記フロー検出ステップが検出した前記オプティカルフローに含まれる前記移動方向の情報に基づいて前記移動方向の角度を算出する移動方向算出ステップと、
前記移動方向算出ステップが算出した前記移動方向の角度および前記移動速度算出ステップが算出した前記移動速度を含む速度情報を出力する速度情報出力ステップと、
前記速度情報出力ステップによって出力された前記速度情報から時系列的に連続する前記画像間の位置ずれ量を算出し、算出した前記位置ずれ量に基づいて超解像画像を生成する超解像画像生成ステップと、
を備えたことを特徴とする画像処理方法。
【請求項８】
撮像部が撮影した画像を順次記憶する画像記憶部が記憶した前記画像のうち、任意の時点の前記画像である基準画像に対する前記画像上の画素の移動方向および移動距離の情報を含むベクトルであるオプティカルフローを検出するフロー検出手順と、
前記フロー検出手順が検出した前記オプティカルフローから前記移動距離が予め定められた閾値を超えるまでに要した時間を求める移動時間算出手順と、
前記移動時間算出手順が求めた時間と前記移動距離とに基づいて前記画素の移動速度を算出する移動速度算出手順と、
前記フロー検出手順が検出した前記オプティカルフローに含まれる前記移動方向の情報に基づいて前記移動方向の角度を算出する移動方向算出手順と、
前記移動方向算出手順が算出した前記移動方向の角度および前記移動速度算出手順が算出した前記移動速度を含む速度情報を出力する速度情報出力手順と、
前記速度情報出力手順によって出力された前記速度情報から時系列的に連続する前記画像間の位置ずれ量を算出し、算出した前記位置ずれ量に基づいて超解像画像を生成する超解像画像生成手順と、
をコンピュータに実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、撮影した時系列画像から動きを有する領域を検出し、当該領域の解像度を向上させる超解像処理を実行する画像処理装置、画像処理方法および画像処理プログラムに関するものである。
【背景技術】
【０００２】
近年、１００フレーム／秒以上の高いフレームレートで画像列を取得し画像処理を行うことができる画像処理装置が広く利用されている。このような画像処理装置においては、低いフレームレートで撮影された画像列では実現困難であった、高速に移動する物体の追跡などの画像処理を行うことが可能である。
【０００３】
上記のような画像処理装置においては、例えばＣＭＯＳカメラなどの撮像装置から１／１００秒以下の短い間隔で画像を取得することにより、高いフレームレートの画像列を取得している。ＣＭＯＳカメラなどの撮像装置を利用して１／１００秒以下の短い間隔で画像を取得する場合、撮像面の露光時間が短くなるため、十分なダイナミックレンジを有する画像を取得するためには、撮像装置の撮像面を構成する画素の面積を十分に確保する必要がある。
【０００４】
しかし、一般に撮像面の面積には製造技術やコスト等に起因する制約が存在するため、撮像面を構成する画素の面積を大きくすると、撮像面の総画素数は少なくなり、得られる画像の解像度は低くなる。このような理由から、高いフレームレートの画像列を用いた画像処理装置において、処理を行う上で必要なダイナミックレンジを有する画像を取得する場合、取得する画像の解像度を低くせざるを得ず、実現可能な画像処理の種類は限られていた。
【０００５】
これに対して、撮像装置の撮像面が持つ物理的な解像度を超える高い解像度の画像を生成する画像処理として、超解像化と呼ばれる手法が提案されている。超解像化とは、動きを有する領域の速度情報を抽出し、抽出した速度情報から当該領域の１画像あたりの位置ずれ量を１画素の大きさ未満の精度で検出し、検出した位置ずれ量に基づき画像列中の複数枚の画像から画素間の輝度値を内挿することにより物理的な解像度を超える高解像度の画像を生成することをいう。以下、超解像化により生成された高解像度の画像を「超解像画像」と記述する。
【０００６】
例えば、非特許文献１においては、撮影した画像列中の任意の時点における画像に対して、その前後２つの画像から各画素のフローを表すベクトルであるオプティカルフローを求め、求めたオプティカルフローから画像間の位置ずれ量を求めることにより、顔画像の超解像化を行っている。一般に、適切な超解像画像を生成するためには、画素間の内挿に用いる位置ずれ量をいかに正確に求めるかが重要である。
【０００７】
【非特許文献１】S.Baker,T.Kanade,“Super-Resolution Optical Flow”,CMU-RI-TR-99-36,1999
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、非特許文献１で行われている位置ずれ量の算出手法を高いフレームレートの画像列に対して適用する場合、低速に移動する物体では画像間のオプティカルフローが非常に小さくなるため、高い精度で位置ずれ量を検出することができず、このような誤った位置ずれ量に基づいて超解像化を行うため実画像と大きく異なる不適切な超解像画像が生成されるという問題があった。
【０００９】
本発明は、上記に鑑みてなされたものであって、高フレームレートで撮影される画像列に対して、撮影された物体の移動速度に関わらず適切な超解像画像を安定して生成することができる画像処理装置、画像処理方法および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明は、画像処理装置において、撮像部が撮影した画像を順次記憶する画像記憶部と、前記画像記憶部が記憶した前記画像のうち、任意の時点の前記画像である基準画像に対する前記画像上の画素の移動方向および移動距離の情報を含むベクトルであるオプティカルフローを検出するフロー検出部と、前記フロー検出部が検出した前記オプティカルフローから前記移動距離が予め定められた閾値を超えるまでに要した時間を求める移動時間算出部と、前記移動時間算出部が求めた時間と前記移動距離とに基づいて前記画素の移動速度を算出する移動速度算出部と、前記フロー検出部が検出した前記オプティカルフローに含まれる前記移動方向の情報に基づいて前記移動方向の角度を算出する移動方向算出部と、前記移動方向算出部が算出した前記移動方向の角度および前記移動速度算出部が算出した前記移動速度を含む速度情報を出力する速度情報出力部と、前記速度情報出力部によって出力された前記速度情報から時系列的に連続する前記画像間の位置ずれ量を算出し、算出した前記位置ずれ量に基づいて超解像画像を生成する超解像画像生成部と、を備えたことを特徴とする。
【００１１】
また、本発明は、上記装置を実行することができる画像処理方法および画像処理プログラムである。
【発明の効果】
【００１２】
本発明によれば、高いフレームレートの時系列画像において、動きを有する画素を含む領域に含まれる画素の移動速度に関わらず、当該領域内の画素の速度情報を高い精度で算出し、当該速度情報から算出した位置ずれ量に基づき超解像処理を実行することができる。このため、高フレームレートで撮影された画像のダイナミックレンジを確保しつつ、適切な超解像画像を安定して生成することができるという効果を奏する。
【発明を実施するための最良の形態】
【００１３】
以下に添付図面を参照して、この発明にかかる画像処理装置、画像処理方法、および画像処理プログラムの最良な実施の形態を詳細に説明する。
【００１４】
（第１の実施の形態）
第１の実施の形態にかかる画像処理装置は、画像間の画素のオプティカルフローを検出し、検出したオプティカルフローから画素の移動距離が予め定められた閾値を超えるまでに要した時間を求め、求めた時間と画素の移動距離とから画素の移動速度を算出し、算出した移動速度と画素の移動方向とから時系列的に連続する画像間の位置ずれ量を算出し、算出した位置ずれ量に基づき超解像画像を生成するものである。
【００１５】
ここで、オプティカルフローとは、基準画像に対する現在処理している画像上の画素の移動方向および移動距離の情報を含むベクトルをいう。また、基準画像とは、オプティカルフローを検出するための基準となる画像をいい、任意の時点の画像を基準画像とすることができる。基準画像は、例えば画素の移動距離が予め定められた閾値を越えたときに現在処理している画像に更新される。また、位置ずれ量とは、時系列的に連続する画像における対応する画素の位置の差をいう。
【００１６】
図１は、第１の実施の形態にかかる画像処理装置１００の構成を示すブロック図である。同図に示すように、画像処理装置１００は、主要なハードウェア構成として、画像記憶部１１０と、高解像度画像記憶部１５０とを備えている。また、第１の実施の形態にかかる画像処理装置１００は、主要なソフトウェア構成として、フロー検出部１２０と、速度情報生成部１３０と、超解像処理部１４０とを備えている。
【００１７】
画像記憶部１１０は、時系列画像を撮影する撮像部１０１によって撮影された画像を順次記憶する記憶部である。高解像度画像記憶部１５０は、後述する超解像処理において超解像画像生成部１４２により生成された高解像度画像を記憶する記憶部である。
【００１８】
フロー検出部１２０は、撮像部１０１によって撮影され画像記憶部１１０に記憶された時系列画像に対して、任意の時刻の基準画像を設定し、当該基準画像とそれより時間的に後の画像との間の輝度パターンから、各画素の移動方向および移動距離の情報を含むベクトルであるオプティカルフローを検出する。
【００１９】
フロー検出方法としては、従来から用いられているあらゆる方法を適用することができる。一例として、第１の実施の形態にかかる画像処理装置１００におけるフロー検出部１２０は、局所マスク設定部１２１と、相関値算出部１２２と、対応判定部１２３とを詳細な構成として備えている。
【００２０】
局所マスク設定部１２１は、時系列画像の任意の時点の画像を基準画像として設定し、基準画像およびオプティカルフローを検出している現在の画像それぞれについて、オプティカルフローを求める画素を含む局所マスクを設定する。局所マスクのサイズとしては、例えば、５×５画素、７×７画素を設定するように構成することができる。
【００２１】
相関値算出部１２２は、局所マスク設定部１２１が設定した局所マスク内の輝度情報から、基準画像の局所マスク領域と現在の画像の局所マスク領域との間の関連の度合いを示す相関値を算出する。相関値は、基準画像における局所マスク領域と、現在の画像における局所マスク領域との間で各画素の輝度を比較することにより算出する。
【００２２】
対応判定部１２３は、現在の画像の局所マスク領域内の各画素について、相関値算出部１２２により算出された相関値が予め定められた閾値以上、かつ最大となる画素を、基準画像の局所マスク領域内の各画素と対応づける処理を行う。この結果、基準画像内の各画素から後続画像内の各画素へのベクトルが定義され、このベクトルによってオプティカルフローが表される。
【００２３】
速度情報生成部１３０は、フロー検出部１２０が検出した各画素のオプティカルフローから、各画素の移動距離が一定量に達する移動時間を算出し、移動方向および移動距離と移動時間とから算出した移動速度を含む各画素の速度情報を生成する。速度情報生成部１３０は、移動時間算出部１３１と、移動速度算出部１３２と、移動方向算出部１３３と、速度情報出力部１３４とを備えている。
【００２４】
移動時間算出部１３１は、フロー検出部１２０で検出されたオプティカルフローの大きさが、指標距離に達するまでの画像数を算出することにより各画素の移動時間を算出する。ここで、指標距離とは各画素の移動距離の閾値をいい、指標距離に達する移動時間を算出し、指標距離を算出した移動時間で除算することにより、高フレームレートの画像列においても各画素の移動速度を安定して算出できるようにするために使用される。指標距離は、上述のフロー検出部１２０が高精度でオプティカルフローを検出できる値を予め求め設定しておく。
【００２５】
移動速度算出部１３２は、指標距離を、移動時間算出部１３１が算出した移動時間で除算することにより、各画素の移動速度を算出する。移動方向算出部１３３は、移動時間算出部１３１が移動時間を算出する際に用いたオプティカルフローから各画素の移動方向を算出する。移動方向は、オプティカルフローの角度によって表される。速度情報出力部１３４は、移動速度算出部１３２によって算出された移動速度の角度と移動方向算出部１３３によって算出された移動方向とを要素とする速度情報を出力する。
【００２６】
超解像処理部１４０は、速度情報生成部１３０が生成した速度情報および各画素の位置情報から、超解像処理の対象となる処理対象領域を設定し、各処理対象領域について速度情報の平均値を算出し、速度情報の平均値から画像間の位置ずれ量を求め、求めた位置ずれ量と画像記憶部１１０に記憶された過去の画像とを用いて画素間の内挿を行うことにより、超解像画像を生成する。超解像処理部１４０は、処理対象領域設定部１４１と、超解像画像生成部１４２とを備えている。
【００２７】
処理対象領域設定部１４１は、速度情報出力部１３４が出力した速度情報を参照し、超解像化の対象領域を設定する。すなわち、処理対象領域設定部１４１は、画像中の予め定められた一定値以上の面積を有する領域において、この領域に含まれる画素の移動速度および移動方向のばらつきが小さく、かつ移動速度が０より大きく１画素未満であるような領域を検出して処理対象領域として設定する。
【００２８】
超解像画像生成部１４２は、現在の画像から補間によって全画像領域の高解像度画像を生成した後、処理対象領域設定部１４１により処理対象領域として設定された領域に対して、それぞれ高解像度画像記憶部１５０に記憶された前フレームの画像に対する高解像度画像を用いて超解像化処理を行い、補間によって生成した高解像度画像と合成することにより超解像画像を生成する。
【００２９】
次に、このように構成された第１の実施の形態にかかる画像処理装置１００による画像処理について説明する。図２は、第１の実施の形態における画像処理の全体の流れを示すフローチャートである。
【００３０】
まず、撮像部１０１により画像が撮影され画像記憶部１１０に時系列画像が記憶された後、フロー検出部１２０がフロー検出処理を実行する（ステップＳ２０１）。次に、速度情報生成部１３０が速度情報生成処理を実行し（ステップＳ２０２）、最後に超解像処理部１４０が超解像処理を実行して（ステップＳ２０３）、画像処理が終了する。フロー検出処理、速度情報生成処理、超解像処理の詳細については後述する。
【００３１】
次に、このように構成された第１の実施の形態にかかる画像処理装置１００によるステップＳ２０１に示したフロー検出処理の詳細について説明する。図３は、第１の実施の形態にかかる画像処理装置１００おけるフロー検出処理の全体の流れを示すフローチャートである。
【００３２】
まず、局所マスク設定部１２１が、時系列画像の任意の時点の画像を基準画像として設定し、基準画像および後続する現在の画像において、オプティカルフローを求める画素を含む局所マスクを設定する（ステップＳ３０１）。次に、相関値算出部１２２が、基準画像における局所マスク領域と、現在の画像における局所マスク領域との間で各画素の輝度を比較し、相関値を算出する（ステップＳ３０２）。
【００３３】
相関値の算出方法としては、従来から用いられているあらゆる方法を適用することができる。例えば、比較を行う２つの領域の対応する画素の輝度の絶対値差分和や差分二乗和を算出する方法、あるいはこれを局所マスク内の平均値および分散によって正規化した値を算出する方法を利用するように構成することができる。なお、これらは一例であり、局所マスクを設定した領域間の関連の度合いを示す相関値を算出するものであればこれらに限られるものではない。
【００３４】
なお、最終的に検出するオプティカルフローの信頼度を向上させるため、局所マスクの設定条件を設けてもよい。例えば、コントラストが存在しない画素や、コントラストがあっても単一方向のエッジしか存在しない画素は、対応する画素を正しく求めることが困難であるため、局所マスクを設定しないようにするような設定条件を課すように構成することができる。なお、これらは一例であり、オプティカルフローの信頼度を向上させるための設定条件であればこれらに限られるものではない。
【００３５】
次に、対応判定部１２３が、相関値算出部１２２により算出された相関値が予め定められた閾値以上、かつ最大となる局所マスク領域の各画素を基準画像の局所マスク領域の各画素と対応づけることにより、基準画像内の各画素から現在の画像内の各画素へのベクトルであるオプティカルフローを検出する（ステップＳ３０３）。
【００３６】
次に、このように構成された第１の実施の形態にかかる画像処理装置１００によるステップＳ２０２に示した速度情報生成処理の詳細について説明する。図４は、第１の実施の形態にかかる画像処理装置１００おける速度情報生成処理の全体の流れを示すフローチャートである。
【００３７】
まず、移動時間算出部１３１が、フロー検出部３で検出されたオプティカルフローの大きさが、指標距離Ｄに達するまでの移動時間を算出する（ステップＳ４０１）。具体的には、各画素（ｘ，ｙ）において、これに続くｎ番目の画像との間で検出されたオプティカルフローを順にｆ（ｘ，ｙ；ｎ）とおき、以下の（１）式によって移動時間を算出する。
ｔ（ｘ，ｙ）＝｛ｎ｜ｆ（ｘ，ｙ；ｎ）＝Ｄ｝  ・・・（１）
【００３８】
すなわち、画素（ｘ，ｙ）におけるオプティカルフローの大きさが指標距離Ｄに等しくなるのが、後続するｎ番目の画像との間のオプティカルフローであるとき、ｎがその画素（ｘ，ｙ）の所要時間ｔ（ｘ，ｙ）として算出される。
【００３９】
次に、移動速度算出部１３２が、指標距離Ｄを、移動時間算出部１３１により算出された移動時間で除算することにより、各画素の移動速度ｖ（ｘ，ｙ）を算出する（ステップＳ４０２）。
【００４０】
次に、移動方向算出部１３３が、移動時間算出部１３１が移動時間ｔ（ｘ，ｙ）を算出する際に用いたオプティカルフローｆ（ｘ，ｙ；ｎ）｜ｎ＝ｔ（ｘ，ｙ）から、各画素の移動方向ｄ（ｘ，ｙ）を算出する（ステップＳ４０３）。移動方向は、オプティカルフローｆ（ｘ，ｙ；ｎ）の角度によって表される。
【００４１】
次に、速度情報出力部１３４が、移動速度算出部１３２によって算出された移動速度ｖ（ｘ，ｙ）と、移動方向算出部１３３によって算出された移動方向ｄ（ｘ，ｙ）とを要素とする速度情報Ｖ（ｘ，ｙ）を出力し（ステップＳ４０４）、速度情報生成処理が終了する。
【００４２】
次に、このように構成された第１の実施の形態にかかる画像処理装置１００によるステップＳ２０３に示した超解像処理の詳細について説明する。図５は、第１の実施の形態にかかる画像処理装置１００おける超解像処理の全体の流れを示すフローチャートである。
【００４３】
まず、処理対象領域設定部１４１が、超解像化の対象とする領域である処理対象領域を設定する（ステップＳ５０１）。処理対象領域を設定する方法としては、例えば、（ｉ）画像全体を任意の単位の固定領域に分割しておき、その領域内の速度情報のばらつきが予め定められた一定閾値以下の場合に処理対象領域として設定する方法、（ｉｉ）画像中の各画素について、類似した速度情報を持つ周囲の画素を探索し、これらを含む領域を処理対象領域として設定する方法を適用することができる。
【００４４】
以下に、上述の（ｉ）の例に挙げた方法の詳細について説明する。まず、処理対象領域設定部１４１は、画像を例えば８×８画素単位の領域に分割し、これらの領域について、それぞれの領域に含まれる画素の速度情報のばらつきを算出する。速度情報のうち移動速度のばらつきは、例えば、領域内でオプティカルフローが検出された画素について、その総数Ｎ、およびこれらの画素における移動速度ｖ（ｘ，ｙ）の平均ｖ0を用い、以下の（２）式によって算出することができる。
【数１】
2006245677.tif 000003
【００４５】
また、速度情報のうち移動方向のばらつきは、例えば、領域内でオプティカルフローが検出された画素について、その総数Ｎ、およびこれらのオプティカルフローを表すベクトルの角度ｄ（ｘ，ｙ）の平均値ｄ0を用い、以下の（３）式によって算出することができる。
【数２】
2006245677.tif 000004
【００４６】
処理対象領域設定部１４１は、これらの式により算出した移動速度のばらつきおよび移動方向のばらつきがそれぞれ予め定められた一定の閾値以下になった領域を１つの処理対象領域として設定する。
【００４７】
次に、上述の（ｉｉ）の例に挙げた方法の詳細について説明する。まず、処理対象領域設定部１４１は、画像を例えば８×８画素単位の領域に分割し、これらの領域内でオプティカルフローが検出された画素について、これらをオプティカルフローの角度によって分類する。次に、処理対象領域設定部１４１は、分類した各画素間において、画素の座標および移動速度の差を算出し、算出した差がそれぞれ予め定められた閾値より小さい画素をグループ化し、これらの画素およびその周囲の予め定められた一定範囲の画素を１つの処理対象領域として設定する。
【００４８】
なお、これらは一例であり、速度情報を利用して超解像化の処理対象領域を設定するものであれば、あらゆる方法を適用することができる。
【００４９】
ステップＳ５０１において処理対象領域が設定された後、超解像画像生成部１４２が、超解像画像生成処理を実行する。以下に、超解像画像生成処理の詳細について説明する。なお、以下では元の画像に対して解像度がＭ倍の超解像画像を生成する場合について説明する。
【００５０】
まず、超解像画像生成部１４２が、超解像画像生成の対象である入力画像について、画素間の輝度値を補間することにより高解像度画像を生成する（ステップＳ５０２）。補間の方法としては、双線形補間等の一般に使われているあらゆる方法を適用することができる。
【００５１】
次に、超解像画像生成部１４２は、高解像度画像記憶部１５０に記憶された前フレームの画像から処理対象領域に対応する領域を切出し、この領域に含まれる各画素について、前フレームの画像に対する位置ずれ量の分だけ１画素未満の精度で移動させた画像を生成することにより、推定高解像度画像を生成する（ステップＳ５０３）。位置ずれ量は、処理対象領域に含まれるオプティカルフローが検出された画素の移動速度の平均値を算出し、これをＭ倍することにより算出した値を用いる。
【００５２】
次に、超解像画像生成部１４２は、推定高解像度画像を補正して適切な超解像画像を生成するために、以下の処理を実行する（ステップＳ５０４〜ステップＳ５０６）。
【００５３】
まず、超解像画像生成部１４２は、推定高解像度画像に対して、入力画像と同等の解像度の推定低解像度画像を生成する（ステップＳ５０４）。この推定低解像度画像の各画素の輝度値ＰL（ｘ，ｙ）は、対応する推定高解像度画像上の対応する輝度値の平均を以下の（４）式により算出することにより求める。ここで、ＰE（ｘ，ｙ）は、推定高解像度画像における座標（ｘ，ｙ）の画素の輝度値である。
【数３】
2006245677.tif 000005
【００５４】
次に、超解像画像生成部１４２は、推定低解像度画像と入力画像を画素ごとに比較して差分を求め、その差が予め定められた閾値Ｒより大きい場合、当該差の絶対値がＲとなるような推定高解像度画像の修正量を算出する（ステップＳ５０５）。入力画像における座標（ｘ，ｙ）の画素の輝度値をＰI（ｘ，ｙ）とすると、修正量ｄｐ（ｘ，ｙ）は、以下の（５）式によって算出することができる。
【数４】
2006245677.tif 000006
【００５５】
次に、超解像画像生成部１４２は、算出した修正量ｄｐ（ｘ，ｙ）から、推定高解像度画像における対応画素｛ＰH（ｉ，ｊ）｜Ｍｘ≦ｉ＜Ｍ（ｘ＋１），Ｍｙ≦ｊ＜Ｍ（ｙ＋１）｝のそれぞれについて、以下の（６）式に従い画素の輝度値を修正することにより、超解像画像の画素ＰSを生成する（ステップＳ５０６）。
【数５】
2006245677.tif 000007
【００５６】
このようにして推定高解像度画像を修正した後（ステップＳ５０４〜ステップＳ５０６）、超解像画像生成部１４２は、補間により生成した高解像度画像の処理対象領域に該当する領域を、推定高解像度画像で上書きすることにより、超解像画像を生成する（ステップＳ５０７）。
【００５７】
次に、超解像画像生成部１４２は、すべての処理対象領域を処理したか否かを判断し（ステップＳ５０８）、すべての処理対象領域を処理していない場合は（ステップＳ５０８：ＮＯ）、次の処理対象領域に対して処理を繰り返す（ステップＳ５０３）。
【００５８】
すべての処理対象領域を処理した場合は（ステップＳ５０８：ＹＥＳ）、超解像画像生成部１４２は、生成した超解像画像を高解像度画像記憶部１５０に保存し（ステップＳ５０９）、超解像画像生成処理を終了する。
【００５９】
このように、第１の実施の形態にかかる画像処理装置１００においては、各画素の移動距離が予め定められた指標距離に達するまでの移動時間を求めることにより移動速度を算出しているため、高フレームレートで低速に移動する物体を撮影し画像間のオプティカルフローが非常に小さくなる場合においても、高い精度で移動速度を算出することが可能となる。従って、移動速度を参照して行われる超解像処理を高精度で実行することができる。
【００６０】
（第２の実施の形態）
第１の実施の形態にかかる画像処理装置１００においては、オプティカルフローを高い精度で算出し、その値を用いて超解像処理を行うことにより超解像処理を高精度で実行できるが、算出したオプティカルフローの信頼度に応じた超解像処理を行っていないため、不適切な超解像画像を生成する場合がある。
【００６１】
そこで、第２の実施の形態にかかる画像処理装置は、検出したオプティカルフローをフロー記憶部に記憶し、記憶したオプティカルフローを利用して、現在検出しているオプティカルフローの信頼度を算出し、算出した信頼度によって重み付けすることによって超解像画像をさらに高精度で生成するものである。
【００６２】
図６は、第２の実施の形態にかかる画像処理装置６００の構成を示すブロック図である。同図に示すように、第２の実施の形態においては、信頼度算出部６３５と、フロー記憶部６６０とを追加したこと、速度情報出力部６３４および超解像画像生成部６４２の機能が変更されたことが第１の実施の形態と異なっている。その他の構成および機能は、第１の実施の形態にかかる構成を表すブロック図である図１と同様であるので、同一符号を付し、ここでの説明は省略する。
【００６３】
フロー記憶部６６０は、各画素の基準画像から現在の画像までのオプティカルフローを記憶する。記憶されたオプティカルフローは、基準画像を更新するときに同時に削除し、更新された基準画像に対するオプティカルフローについて新たに記憶を開始する。
【００６４】
信頼度算出部６３５は、現在処理している画像についてのオプティカルフローの信頼度を算出する。ここで、オプティカルフローの信頼度とは、フロー検出部１２０が検出したオプティカルフローの確からしさの程度を示す値をいう。例えば、信頼度算出部６３５は、フロー記憶部６６０に記憶されたオプティカルフローのうち基準画像に対する相関値が最も大きい画像において検出されたオプティカルフローに含まれる移動方向と、現在処理している画像についてのオプティカルフローに含まれる移動方向との差が小さいオプティカルフローほど信頼度を高く算出する。信頼度の算出方法の詳細については後述する。
【００６５】
次に、このように構成された第２の実施の形態にかかる画像処理装置６００による速度情報生成処理について説明する。図７は、第２の実施の形態における速度情報生成処理の全体の流れを示すフローチャートである。
【００６６】
ステップＳ７０１からステップＳ７０３までの、移動時間算出処理、移動速度算出処理、移動方向算出処理は、第１の実施の形態にかかる画像処理装置１００におけるステップＳ４０１からステップＳ４０３までと同様の処理なので、その説明を省略する。
【００６７】
移動方向算出部１３３が、移動方向を算出した後（ステップＳ７０３）、信頼度算出部６３５が、基準画像に対する相関値が最も大きい画像において検出されたオプティカルフローの角度と、現在処理している画像についてのオプティカルフローの角度とから、現在処理している画像についてのオプティカルフローの信頼度を算出する（ステップＳ７０４）。
【００６８】
信頼度の算出方法としては、例えば以下のような方法を適用することができる。すなわち、信頼度算出部６３５は、現在検出しているオプティカルフローの角度をθ［ｒａｄ］、基準画像から現在の画像の間にフロー記憶部６６０に記憶され、大きさが０より大きく指標距離Ｄより小さいオプティカルフローのうち、相関値が最も大きなオプティカルフローの角度をθr［ｒａｄ］とし、以下の（７）式により信頼度ｒ（ｘ，ｙ；ｎ）算出する。
【数６】
2006245677.tif 000008
【００６９】
なお、上記信頼度の算出方法は一例であり、オプティカルフローの確からしさの程度を示す値を算出する方法であれば、これに限られるものではない。
【００７０】
次に、速度情報出力部６３４が、移動速度算出部１３２によって算出された移動速度ｖ（ｘ，ｙ）と、移動方向算出部１３３によって算出された移動方向ｄ（ｘ，ｙ）とに加え、信頼度算出部６３５が算出した信頼度ｒを要素とする速度情報Ｖ（ｘ，ｙ）を出力し（ステップＳ７０５）、速度情報生成処理が終了する。
【００７１】
なお、フロー記憶部６６０に記憶されたオプティカルフローの情報を用いることによって、より高い精度で移動時間や移動方向を算出するように構成してもよい。例えば、移動時間算出部１３１においては、指標距離Ｄに達するまでの画像数として、指標距離Ｄに達した最初の画像を用いる代わりに、指標距離Ｄであるオプティカルフローをフロー記憶部６６０に記憶しておき、これらの中でオプティカルフローの相関値が最大となる画像を用いるように構成してもよい。
【００７２】
また、移動方向算出部１３３においては、移動方向として指標距離Ｄに達したオプティカルフローの角度を用いる代わりに、フロー記憶部６６０に記憶された大きさが１以上のすべてのオプティカルフローの平均値を用いるように構成してもよい。
【００７３】
次に、このように構成された第２の実施の形態にかかる画像処理装置６００による超解像処理について説明する。図８は、第２の実施の形態における超解像処理の全体の流れを示すフローチャートである。
【００７４】
ステップＳ８０１からステップＳ８０６までの、処理対象領域設定処理、補間高解像度画像生成処理、推定高解像度画像生成処理は、第１の実施の形態にかかる画像処理装置１００におけるステップＳ５０１からステップＳ５０６までと同様の処理なので、その説明を省略する。
【００７５】
超解像画像生成部６４２は、推定高解像度画像を修正した後（ステップＳ８０６）、修正した推定高解像度画像の輝度値と補間による高解像度画像の輝度値とを信頼度を重み付け係数として重み付け加算することにより超解像画像を生成する（ステップＳ８０７）。
【００７６】
例えば、超解像画像生成部６４２は、処理対象領域内のオプティカルフローが検出された画素について、そのオプティカルフローの信頼度の平均値ｒAを算出してｒAと（１−ｒA）とを重み付け係数とし、修正した推定高解像度画像の輝度値ＰS（ｘ，ｙ）と画素間の補間によって生成した高解像度画像における座標（ｘ，ｙ）の画素の輝度値ＰH（ｘ，ｙ）とを重み付け加算する以下の（８）式により超解像画像の各画素の輝度値ＰR（ｘ，ｙ）を算出する。
ＰR（ｘ，ｙ）＝ｒAＰS（ｘ，ｙ）＋（１−ｒA）ＰH（ｘ，ｙ）  ・・・（８）
【００７７】
超解像画像生成部６４２が超解像画像を生成した後、ステップＳ８０８からステップＳ８０９までの完了判定処理、画像記憶処理は、第１の実施の形態にかかる画像処理装置１００におけるステップＳ５０８からステップＳ５０９までと同様の処理なので、その説明を省略する。
【００７８】
このように、第２の実施の形態にかかる画像処理装置６００においては、オプティカルフローの信頼度を重み付け係数とし、補間によって生成した高解像度画像の輝度値とオプティカルフローから算出した位置ずれ量に基づき生成した高解像度画像の輝度値とを重み付け加算するため、不適切な超解像画像の生成を抑止し、より高い精度で超解像画像の生成を実行することができる。
【００７９】
（第３の実施の形態）
一般に超解像処理においては、超解像画像と実画像との相関性は処理画像数の増加に伴い高くなる。従って、処理対象領域として設定された直後に生成した超解像画像と実画像との相関性は低い。そこで、第３の実施の形態にかかる画像処理装置は、処理対象領域として設定された直後の領域について、指標距離を移動速度で除算した値を上限とした過去の画像に遡り、そこから現在の画像までの複数枚の画像を用いて超解像処理を繰り返し行うことにより、超解像画像と実画像との相関性を向上させるものである。
【００８０】
図９は、第３の実施の形態にかかる画像処理装置９００の構成を示すブロック図である。同図に示すように、第３の実施の形態においては、超解像画像生成部９４２の機能が変更されたことが第２の実施の形態と異なっている。その他の構成および機能は、第２の実施の形態にかかる構成を表すブロック図である図６と同様であるので、同一符号を付し、ここでの説明は省略する。
【００８１】
第３の実施の形態にかかる画像処理装置９００における超解像画像生成部９４２は、初めて処理される処理対象領域に対し、画像記憶部１１０に記憶された過去の画像に遡り、過去の画像から現在の画像までの複数枚の画像を逐次超解像処理するものである。
【００８２】
次に、このように構成された第３の実施の形態にかかる画像処理装置９００による超解像処理について説明する。図１０は、第３の実施の形態における超解像処理の全体の流れを示すフローチャートである。
【００８３】
ステップＳ１００１からステップＳ１００２までの、処理対象領域設定処理、補間高解像度画像生成処理は、第１の実施の形態にかかる画像処理装置１００におけるステップＳ５０１からステップＳ５０２までと同様の処理なので、その説明を省略する。
【００８４】
超解像画像生成部９４２は、画素間の輝度値を補間することにより高解像度画像を生成した後（ステップＳ１００２）、現在の処理対象領域が前フレームの画像において処理した処理対象領域に含まれるか否かを判断する（ステップＳ１００３）。
【００８５】
現在の処理対象領域が前フレームの画像において処理した処理対象領域に含まれる場合は（ステップＳ１００３：ＹＥＳ）、超解像画像生成部９４２は第２の実施の形態にかかる画像処理装置６００と同様に、前フレームの画像のみに基づいた超解像画像の生成処理を実行する（ステップＳ１００４〜ステップＳ１００８）。
【００８６】
ステップＳ１００４からステップＳ１００８までの、推定高解像度画像生成処理は、第２の実施の形態にかかる画像処理装置６００におけるステップＳ８０３からステップＳ８０７までと同様の処理なので、その説明を省略する。
【００８７】
ステップＳ１００３において、現在の処理対象領域が前フレームの画像において処理した処理対象領域に含まれない場合は（ステップＳ１００３：ＮＯ）、超解像画像生成部９４２は、指標距離Ｄを移動速度で除算した値を上限とした過去フレームの画像に遡り、現在の画像まで超解像画像の生成処理を繰り返し実行する（ステップＳ１００９〜ステップＳ１０１５）。これにより、処理対象領域に設定された直後の領域であっても、超解像画像に使用する画像数が増加し、実画像との相関性の高い超解像画像を生成することが可能となる。
【００８８】
まず、超解像画像生成部９４２が、過去フレームの画像において処理対象領域に対応する領域を切出す（ステップＳ１００９）。次に、超解像画像生成部９４２は、切出した領域に含まれる各画素について、現在処理している画像において算出した位置ずれ量の分だけ１画素未満の精度で移動させた画像を生成することにより、推定高解像度画像を生成する（ステップＳ１０１０）。
【００８９】
次に、超解像画像生成部９４２は、推定高解像度画像に対して、入力画像と同等の解像度の推定低解像度画像を生成する（ステップＳ１０１１）。推定低解像度画像の輝度値は、第２の実施の形態にかかる画像処理装置６００と同様に、（４）式により算出する。
【００９０】
次に、超解像画像生成部９４２は、推定低解像度画像と過去フレームの画像において処理対象領域に対応する領域を切出した低解像度の部分画像を画素ごとに比較して差分を求め、その差が予め定められた閾値Ｒより大きい場合、当該差の絶対値がＲとなるような推定高解像度画像の修正量を算出する（ステップＳ１０１２）。修正量は、低解像度の部分画像における座標（ｘ，ｙ）の画素の輝度値をＰI（ｘ，ｙ）とおくことにより、第２の実施の形態にかかる画像処理装置６００と同様に、（５）式によって算出することができる。
【００９１】
次に、超解像画像生成部９４２は、算出した修正量ｄｐ（ｘ，ｙ）から、第２の実施の形態にかかる画像処理装置６００と同様に、（６）式に従い画素の輝度値を修正することにより、超解像画像の画素ＰSを生成する（ステップＳ１０１３）。
【００９２】
次に、超解像画像生成部９４２は、修正した推定高解像度画像の輝度値と補間による高解像度画像の輝度値とを信頼度を重み付け係数として重み付け加算することにより超解像画像を生成する（ステップＳ１０１４）。この際、第２の実施の形態にかかる画像処理装置６００と異なり、超解像画像生成部９４２は、補間による高解像度画像の輝度値として、過去フレームの画像において処理対象領域に対応する領域を切出した低解像度の部分画像から補間により高解像度化した部分画像の輝度値を用いる。すなわち、第３の実施の形態にかかる画像処理装置９００においては、過去フレームの画像の処理対象領域の部分画像のみを利用すれば十分であるため、補間による高解像度画像は、当該部分画像に対してのみ生成し、これを重み付け加算時に使用する。
【００９３】
次に、超解像画像生成部９４２は、対象となるすべての過去フレームの画像を処理したか否か、すなわち、現在のフレームの画像まで超解像処理を実行したか否かを判断する（ステップＳ１０１５）。対象となるすべての過去フレームの画像を処理していない場合は（ステップＳ１０１５：ＮＯ）、次の過去フレームの画像に対して処理を繰り返す（ステップＳ１００９）。対象となるすべての過去フレームの画像を処理した場合は（ステップＳ１０１５：ＹＥＳ）、完了判定処理（ステップＳ１０１６）を実行する。
【００９４】
ステップＳ１０１６からステップＳ１０１７までの完了判定処理、画像記憶処理は、第１の実施の形態にかかる画像処理装置１００におけるステップＳ５０８からステップＳ５０９までと同様の処理なので、その説明を省略する。
【００９５】
このように、第３の実施の形態にかかる画像処理装置９００においては、過去の画像に遡り、過去の画像から現在の画像までの複数枚の画像を用いて超解像処理を行うため、処理画像数の増加による超解像画像と実画像との相関性を向上させることができる。
【００９６】
第１〜第３の実施の形態にかかる画像処理装置は、ＣＰＵなどの制御装置と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＲＡＭなどの記憶装置と、ＨＤＤ、ＣＤドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置を備えており、通常のコンピュータを利用したハードウェア構成となっている。
【００９７】
第１〜第３の実施の形態にかかる画像処理装置で実行される画像処理プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
【００９８】
また、第１〜第３の実施の形態にかかる画像処理装置で実行される画像処理プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、第１〜第３の実施の形態にかかる画像処理装置で実行される画像処理プログラムをインターネット等のネットワーク経由で提供または配布するように構成しても良い。
【００９９】
また、第１〜第３の実施の形態の画像処理プログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【０１００】
第１〜第３の実施の形態にかかる画像処理装置で実行される画像処理プログラムは、上述した各部（フロー検出部、速度情報生成部、超解像処理部）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記記憶媒体から画像処理プログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、各部が主記憶装置上に生成されるようになっている。
【産業上の利用可能性】
【０１０１】
以上のように、本発明にかかる画像処理装置、画像処理方法および画像処理プログラムは、車載カメラを搭載した障害物検出装置などの、高いフレームレートで撮影された動きを有する領域を含む時系列画像を対象として超解像処理を実行する画像処理装置に適している。
【図面の簡単な説明】
【０１０２】
【図１】第１の実施の形態にかかる画像処理装置の構成を示すブロック図である。
【図２】第１の実施の形態にかかる画像処理装置おける画像処理の全体の流れを示すフローチャートである。
【図３】第１の実施の形態にかかる画像処理装置おけるフロー検出処理の全体の流れを示すフローチャートである。
【図４】第１の実施の形態にかかる画像処理装置おける速度情報生成処理の全体の流れを示すフローチャートである。
【図５】第１の実施の形態にかかる画像処理装置おける超解像処理の全体の流れを示すフローチャートである。
【図６】第２の実施の形態にかかる画像処理装置の構成を示すブロック図である。
【図７】第２の実施の形態にかかる画像処理装置おける速度情報生成処理の全体の流れを示すフローチャートである。
【図８】第２の実施の形態にかかる画像処理装置おける超解像処理の全体の流れを示すフローチャートである。
【図９】第３の実施の形態にかかる画像処理装置の構成を示すブロック図である。
【図１０】第３の実施の形態にかかる画像処理装置おける超解像処理の全体の流れを示すフローチャートである。
【符号の説明】
【０１０３】
１００  画像処理装置
１０１  撮像部
１１０  画像記憶部
１２０  フロー検出部
１２１  局所マスク設定部
１２２  相関値算出部
１２３  対応判定部
１３０  速度情報生成部
１３１  移動時間算出部
１３２  移動速度算出部
１３３  移動方向算出部
１３４  速度情報出力部
１４０  超解像処理部
１４１  処理対象領域設定部
１４２  超解像画像生成部
１５０  高解像度画像記憶部
６００  画像処理装置
６３４  速度情報出力部
６３５  信頼度算出部
６４２  超解像画像生成部
６６０  フロー記憶部
９００  画像処理装置
９４２  超解像画像生成部
【図１】
2006245677.tif 000010
【図２】
2006245677.tif 000011
【図３】
2006245677.tif 000012
【図４】
2006245677.tif 000013
【図５】
2006245677.tif 000014
【図６】
2006245677.tif 000015
【図７】
2006245677.tif 000016
【図８】
2006245677.tif 000017
【図９】
2006245677.tif 000018
【図１０】
2006245677.tif 000019