(57)【特許請求の範囲】
【請求項１】
画像を時系列的に取り込む画像入力手段と、
この画像入力手段によって取り込まれた時系列画像から画像間の各画素の移動に関する情報を有するオプティカルフローを検出するフロー検出手段と、
このフロー検出手段によって検出された前記オプティカルフローにおける各画素毎のフローベクトルの信頼性を、各画素毎に検証するフロー検証手段と、
このフロー検証手段で信頼性があると認められたフローベクトルに基づいて画素の移動量が一定の移動量となる移動時間を決定し、前記決定した移動時間と前記一定の移動量と前記画素のフローベクトルの方向成分とに基づいて、前記画素の移動速度を求める速度決定手段と、
を具備し、
前記フロー検証手段は、
前記フロー検出手段によって検出された各画素毎のフローベクトルに関する情報を時系列的に蓄積するフロー蓄積手段と、
このフロー蓄積手段で蓄積された各画素毎のフローベクトルに関する時系列情報を用いて、各画素毎のフローベクトルの時系列的変化を求め、この変化に基づいて、各画素毎のフローベクトルの信頼性を算出する信頼性算出手段と、
を具備した
ことを特徴とする動画像処理装置。
【請求項２】
前記フロー蓄積手段は、
前記フロー検出手段で検出される任意の時刻における基準画像と、この基準画像と比較して時間的に前の画像、または、後の画像との間の各画素のフローベクトルに関する時系列データをそのまま記憶するか、その時系列データを前記画素の信頼性を求めるための情報、または、前記画素の移動量が一定の移動量となる移動時間を決定するための情報に加工して記憶する
ことを特徴とする請求項１記載の動画像処理装置。
【請求項３】
前記信頼性算出手段は、
前記フロー蓄積手段で蓄積された各画素のフローベクトルに関する時系列情報を用いて、前記各画素の移動方向の時系列的変化、前記各画素の移動量の時系列的変化、または、前記各画素の移動量及び移動方向の時系列的変化が、所定の規則に基づいて変化しているか否かを評価し、その評価に基づいて前記画素で検出されるフローベクトルの信頼性を算出する
ことを特徴とする請求項１記載の動画像処理装置。
【請求項４】
前記速度決定手段は、
前記フロー蓄積手段に蓄えられた各画素のフローベクトルに関する時系列情報を用いて、各画素の移動量が前記一定の移動量に達する移動時間を算出する移動時間決定手段と、
この決定した移動時間と前記一定の移動量と前記画素のフローベクトルの方向成分とから、前記画素の移動速度を求めて出力する速度情報出力手段と、
を具備した
ことを特徴とする請求項１記載の動画像処理装置。
【請求項５】
画像を時系列的に取り込む画像入力ステップと、
この画像入力ステップにおいて取り込まれた時系列画像から画像間の各画素の移動に関する情報を有するオプティカルフローを検出するフロー検出ステップと、
このフロー検出ステップにおいて検出された前記オプティカルフローにおける各画素毎のフローベクトルの信頼性を、各画素毎に検証するフロー検証ステップと、
このフロー検証ステップで信頼性があると認められたフローベクトルに基づいて画素の移動量が一定の移動量となる移動時間を決定し、前記決定した移動時間と前記一定の移動量と前記画素のフローベクトルの方向成分とに基づいて、前記画素の移動速度を求める速度決定ステップと、
を具備し、
前記フロー検証ステップは、
前記フロー検出ステップにおいて検出された各画素毎のフローベクトルに関する情報を時系列的に蓄積するフロー蓄積ステップと、
このフロー蓄積ステップで蓄積された各画素毎のフローベクトルに関する時系列情報を用いて、各画素毎のフローベクトルの時系列的変化を求め、この変化に基づいて、各画素毎のフローベクトルの信頼性を算出する信頼性算出ステップと、
を具備した
ことを特徴とする動画像処理方法。
【請求項６】
画像を時系列的に取り込む画像入力機能と、
この画像入力機能において取り込まれた時系列画像から画像間の各画素の移動に関する情報を有するオプティカルフローを検出するフロー検出機能と、
このフロー検出機能において検出された前記オプティカルフローにおける各画素毎のフローベクトルの信頼性を、各画素毎に検証するフロー検証機能と、
このフロー検証機能で信頼性があると認められたフローベクトルに基づいて画素の移動量が一定の移動量となる移動時間を決定し、前記決定した移動時間と前記一定の移動量と前記画素のフローベクトルの方向成分とに基づいて、前記画素の移動速度を求める速度決定機能と、
を実現し、
前記フロー検証機能は、
前記フロー検出機能において検出された各画素毎のフローベクトルに関する情報を時系列的に蓄積するフロー蓄積機能と、
このフロー蓄積機能で蓄積された各画素毎のフローベクトルに関する時系列情報を用いて、各画素毎のフローベクトルの時系列的変化を求め、この変化に基づいて、各画素毎のフローベクトルの信頼性を算出する信頼性算出機能と、
を実現するプログラムを記録した
ことを特徴とする動画像処理方法の記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、高速に画像を取り込むと同時に処理することが可能なセンサに入力される高速な時系列画像から、画像上の各画素の移動速度を高精度に計算可能な動画像処理装置、その方法及びその方法を記録した記録媒体に関する。
【０００２】
【従来の技術】
従来、時系列の画像をコンピュータに入力する手段としては、ＣＣＤカメラが利用されることがほとんどであり、カメラからコンピュータへのデータの転送は、ＮＴＳＣ規格に合わせて１秒間に３０フレームの速度で行われていた。このような動画像を用いて画像の各画素の移動ベクトル、すなわちオプティカルフロー（以下では、単にフローと表記する）を求める場合、自動車や素早い体の動きなど高速で移動する対象については、大きな移動ベクトルを求める必要がある。このように移動ベクトルが大きくなると、対象物の見え方の変化による画像輝度の変化が大きくなることや、対象物に隠されていた背景が見えてくるといった問題が起こり、正確な動きベクトルの検出が難しくなってくる。
【０００３】
これに対して、ジェスチャー入力型インタラクティブゲーム（画像ラボ１９９８年３  月）では、３２画素×３２画素の人工網膜チップを利用して、最高１秒間に１０００枚という高速な動き検出を行っている。このように高速な動画像を用いれば、前記のような問題を根本的に解決できると考えられる。しかし、この装置で得られる動き情報は精度、空間解像度ともに複雑な画像処理に利用するには不十分である。
【０００４】
また、超並列・超高速視覚情報処理システム（応用物理学会誌第６７巻第１  号：石川他著）では、デジタル処理を行う回路をセンサに搭載することにより、１秒間に１０００フレームの速度で様々な画像処理アルゴリズムを実行することができる。石川らは、このシステムで従来から用いられているフロー検出手法を用いてフローの検出を行っている。しかし、１  秒間に１０００フレームといった高速な動画像では、各画素のフローベクトルは非常に小さくなるため、各画素同士のフローベクトルの違いが微小になり、従来のフロー検出手法では十分な精度が得られないことがある。
【０００５】
これら従来の画像処理装置に対して、高速な動画像を用いて各画素の移動ベクトルを安定して検出する方式として、各画素の移動量がある一定量（以下、指標距離と呼ぶ）に達するまでの移動時間と移動方向を求め、指標距離を移動時間で割ることによって移動速度を求める方式が提案されている。
【０００６】
この方式では、前記移動時間や移動方向をいかに正確に求めるかが鍵となる。移動時間や移動方向を求めるためには、画像間のフローを検出する必要があるが、この方式では従来から提案されている方式をそのまま用いている。従来の手法では、フロー計算の前処理や計算途中でフローが正確に求められない点を検出しその点ではフローの計算を行わないようにし、フローの誤検出を防いでいる。
【０００７】
例えば、Ａ．Ｄ．  ＪｅｐｓｏｎとＤ．Ｊ．  Ｆｌｅｅｔ  は“Ｐｈａｓｅ  ｓｉｎｇｕｌａｒｉｔｉｅｓ  ｉｎ  ｓｃａｌｅ−ｓｐａｃｅ”，  Ｉｍａｇｅ  ａｎｄ  Ｖｉｓｉｏｎ  Ｃｏｍｐｕｔｉｎｇ，  ９：  ３３８−３４３，  １９９１で時系列画像の輝度信号の位相の特異点を検出し、フローの抽出が不安定となる画素を検出している。
【０００８】
また、Ｓ．Ｙａｍａｍｏｔｏらは、“Ｒｅａｌｔｉｍｅ  Ｍｕｌｔｉｐｌｅ  Ｏｂｊｅｃｔ  Ｔｒａｃｋｉｎｇ  Ｂａｓｅｄ  ｏｎ  Ｏｐｔｉｃａｌ  Ｆｌｏｗ  ”，Ｐｒｏｃ．  ｏｆ  Ｒ＆Ａ，  ２３２８−２３３３，  １９９５  で、画像中の近傍小領域内に単一の方向のエッジしか存在しない画素を求めて、フローの抽出が不安定となる画素を検出している。
【０００９】
しかし、これらの手法では、各フレーム単独のフローの信頼性の評価はできるが、フローの時系列的な変化による信頼性は考慮されていないという問題がある。
【００１０】
また、各画素の移動量が指標距離に達するまでの移動時間を正確に計測するには、フローの大きさの正確さが重要であるが、ある程度フローが正確に求まったとしても、１秒間に１０００フレームといった高速な動画像では、指標距離付近となるフローが時間的に何度も観測され、フレーム間のフローの計測誤差や量子化の影響で、指標距離に達する移動時間を一意に決定することが難しくなるという問題がある。さらに、従来の方式では、この移動時間を一意に適切に決定する事についても考慮されていないという問題がある。
【００１１】
【発明が解決しようとする課題】
前述のように、各画素の移動量が指標距離に達するまでの移動時間と移動方向を求めることによって移動速度を求める方式では、この移動時間や移動方向をいかに正確に求めるかが鍵となるが、これらの高精度化に関しては考えられておらず、移動ベクトルの精度に関して問題が残っている。
【００１２】
本発明は、上記問題点に鑑みなされたもので、画像を高速に取り込むと同時に処理することが可能なセンサに入力される高速な時系列画像を用いて、各画素の移動量が指標距離に達するまでの移動時間と移動方向を求め、指標距離を移動時間で割ることによって移動速度を求める処理において、画素の正確な移動速度を求める動画像処理装置、その方法及びその記録媒体を提供する。
【００１３】
【課題を解決するための手段】
請求項１の発明は、画像を時系列的に取り込む画像入力手段と、この画像入力手段によって取り込まれた時系列画像から画像間の各画素の移動に関する情報を有するオプティカルフローを検出するフロー検出手段と、このフロー検出手段によって検出された前記オプティカルフローにおける各画素毎のフローベクトルの信頼性を、各画素毎に検証するフロー検証手段と、このフロー検証手段で信頼性があると認められたフローベクトルに基づいて画素の移動量が一定の移動量となる移動時間を決定し、前記決定した移動時間と前記一定の移動量と前記画素のフローベクトルの方向成分とに基づいて、前記画素の移動速度を求める速度決定手段と、を具備し、前記フロー検証手段は、前記フロー検出手段によって検出された各画素毎のフローベクトルに関する情報を時系列的に蓄積するフロー蓄積手段と、このフロー蓄積手段で蓄積された各画素毎のフローベクトルに関する時系列情報を用いて、各画素毎のフローベクトルの時系列的変化を求め、この変化に基づいて、各画素毎のフローベクトルの信頼性を算出する信頼性算出手段と、を具備したことを特徴とする動画像処理装置である。
【００１５】
請求項２の発明は、前記フロー蓄積手段は、前記フロー検出手段で検出される任意の時刻における基準画像と、この基準画像と比較して時間的に前の画像、または、後の画像との間の各画素のフローベクトルに関する時系列データをそのまま記憶するか、その時系列データを前記画素の信頼性を求めるための情報、または、前記画素の移動量が一定の移動量となる移動時間を決定するための情報に加工して記憶することを特徴とする請求項１記載の動画像処理装置である。
【００１６】
請求項３の発明は、前記信頼性算出手段は、前記フロー蓄積手段で蓄積された各画素のフローベクトルに関する時系列情報を用いて、前記各画素の移動方向の時系列的変化、前記各画素の移動量の時系列的変化、または、前記各画素の移動量及び移動方向の時系列的変化が、所定の規則に基づいて変化しているか否かを評価し、その評価に基づいて前記画素で検出されるフローベクトルの信頼性を算出することを特徴とする請求項１記載の動画像処理装置である。
【００１７】
請求項４の発明は、前記速度決定手段は、前記フロー蓄積手段に蓄えられた各画素のフローベクトルに関する時系列情報を用いて、各画素の移動量が前記一定の移動量に達する移動時間を算出する移動時間決定手段と、この決定した移動時間と前記一定の移動量と前記画素のフローベクトルの方向成分とから、前記画素の移動速度を求めて出力する速度情報出力手段と、を具備したことを特徴とする請求項１記載の動画像処理装置である。
【００１８】
請求項５の発明は、画像を時系列的に取り込む画像入力ステップと、この画像入力ステップにおいて取り込まれた時系列画像から画像間の各画素の移動に関する情報を有するオプティカルフローを検出するフロー検出ステップと、このフロー検出ステップにおいて検出された前記オプティカルフローにおける各画素毎のフローベクトルの信頼性を、各画素毎に検証するフロー検証ステップと、このフロー検証ステップで信頼性があると認められたフローベクトルに基づいて画素の移動量が一定の移動量となる移動時間を決定し、前記決定した移動時間と前記一定の移動量と前記画素のフローベクトルの方向成分とに基づいて、前記画素の移動速度を求める速度決定ステップと、を具備し、前記フロー検証ステップは、前記フロー検出ステップにおいて検出された各画素毎のフローベクトルに関する情報を時系列的に蓄積するフロー蓄積ステップと、このフロー蓄積ステップで蓄積された各画素毎のフローベクトルに関する時系列情報を用いて、各画素毎のフローベクトルの時系列的変化を求め、この変化に基づいて、各画素毎のフローベクトルの信頼性を算出する信頼性算出ステップと、を具備したことを特徴とする動画像処理方法である。
【００１９】
請求項６の発明は、画像を時系列的に取り込む画像入力機能と、この画像入力機能において取り込まれた時系列画像から画像間の各画素の移動に関する情報を有するオプティカルフローを検出するフロー検出機能と、このフロー検出機能において検出された前記オプティカルフローにおける各画素毎のフローベクトルの信頼性を、各画素毎に検証するフロー検証機能と、このフロー検証機能で信頼性があると認められたフローベクトルに基づいて画素の移動量が一定の移動量となる移動時間を決定し、前記決定した移動時間と前記一定の移動量と前記画素のフローベクトルの方向成分とに基づいて、前記画素の移動速度を求める速度決定機能と、を実現し、前記フロー検証機能は、前記フロー検出機能において検出された各画素毎のフローベクトルに関する情報を時系列的に蓄積するフロー蓄積機能と、このフロー蓄積機能で蓄積された各画素毎のフローベクトルに関する時系列情報を用いて、各画素毎のフローベクトルの時系列的変化を求め、この変化に基づいて、各画素毎のフローベクトルの信頼性を算出する信頼性算出機能と、を実現するプログラムを記録したことを特徴とする動画像処理方法の記録媒体である。
【００２０】
本発明によれば、例えば、高速な時系列画像（動画像）を入力し、各画素の移動量がある一定の移動量量に達するまでの移動時間と移動方向を求めることによって各画素の移動速度を求める場合において、各画素のフローベクトルの信頼性を求めて、その信頼性のある画素のみを処理することにより、移動時間と移動方向の検出精度を向上させることによって、各画素の移動速度を正確に求めることが可能となる。
【００２１】
【発明の実施の形態】
以下、図面を参照して本発明の一実施形態を説明する。
【００２２】
図１に本実施形態の基本的な構成例を示す。
【００２３】
１秒間に１０００フレームといった高速な画像が取得可能な装置である画像入力部０によって得られた動画像系列から、フロー検出部１によって、任意の時刻の基準フレームを設定し、この基準フレームとそれより時間的に後のフレームとの間の各画素のフロー（以下では、画像間フローと呼ぶ）を計算する。
【００２４】
図２の場合、基準フレームのある画素（ｘ，ｙ）  が、ｎフレーム後に画素（ｘ＋ｕ，ｙ＋ｖ）  に移動したとすると、その画素（ｘ，ｙ）  の画像間フローは（ｕ，ｖ）  となる。フロー検証部２により、各画素で求めた画像間フローの信頼性を検証し、速度決定部３で、各画素で求めた画像間フローの大きさが指標距離に達するまでの時間と移動方向を求めることによって、各画素の速度情報を求め出力する。
【００２５】
図２では、点（ｘ，ｙ）  の画像間フローが、（ｘ，ｙ）  から一定の指標距離Ｄ画素に達するまでのフレーム数（時間）を求める。
【００２６】
基本的に、各画素のフローベクトルの大きさはＤをフレーム数で割ることによって求め、その方向は画像間フローの方向から求める。
【００２７】
（ａ）  フロー検出部１
フロー検出部１は、基準フレーム設定部１０、指標距離設定部１１、フロー計算部１２からなる（図３参照）。
【００２８】
（ａ−１）  基準フレーム設定部１０
画像間フローを求めるには、まず基準フレームを設定する必要があるので、基準フレーム設定部１０ではこれを設定する。
【００２９】
基準フレームの設定方針として、
（ｉ）  全画素について基準フレームは同じフレームとする方法、
（ｉｉ）各画素で異なった基準フレームを設定する方法
がある。
【００３０】
（ｉ）  の方法としては、あらかじめ定められた時間経過する度に、基準フレームを現在のフレームに更新する方法や、画像間フローが検出されている画素の内あらかじめ定めた割合の画素において、画像間フローの大きさが指標距離を越えたと判断されたら基準フレームを現在のフレームに更新する方法がある。
【００３１】
（ｉｉ）の方法としては、各画素毎に、画像間フローの大きさが指標距離を越えたと判断されたら、その画素の基準フレームを現在のフレームに更新する。
【００３２】
（ａ−２）  指標距離設定部１１
本方式では、各画素の移動距離、つまり画像間フローの大きさが指標距離に達するまでの時間と移動方向を求めることによって各画素の速度を求める。
【００３３】
指標距離設定部１１では、この指標距離を設定して「Ｄ」とする。
【００３４】
Ｄの選択は任意であるが、後で述べるように、各画素の画像間フローに関する時系列データを用いて画像間フローの信頼性の検証を行うため、この検証を行うのに必要なデータを得られるように指標距離Ｄを設定する必要がある。また、フロー計算部１２で用いるフロー検出手法でフローが精度よく求められる範囲にＤを設定する必要もある。
【００３５】
ある画素（ｘ，ｙ）  が（ｘ＋ｕ，ｙ＋ｖ）  に移動したときの移動距離を（ｕ２  ＋ｖ２  ）  １／２  と定義すれば、移動距離がＤに達するのは（ｘ，ｙ）  を中心とする半径Ｄの円周上となる。また、移動距離をｍａｘ（｜ｕ  ｜，  ｜ｖ  ｜）と定義すれば移動距離がＤとなるのは、（ｘ，ｙ）  を対角線の中点に持つ一辺が２Ｄの正方形の外周上となる。
【００３６】
（ａ−３）  フロー計算部１２
フロー計算部１２では、基準フレーム設定部１０で設定した基準フレームと後続のフレームとの間の画像間フローを計算する。
【００３７】
ここで用いるフロー抽出手法には、従来から提案されている様々な手法を用いることができる。
【００３８】
一例として、図４に画像中の小領域の輝度パターンの対応付けに基づく方式の詳細な構成例を示す。
【００３９】
この方式の場合、フロー計算部１２は、局所マスク設定部１２０  、相関値計算部１２１  、対応判定部１２２  よりなる。
【００４０】
［局所マスク設定部１２０  ］
局所マスク設定部１２０  において、画像間フローを求めたい画素を含む局所マスク（サイズは５×５や７×７画素など）を各々の画像中に設定する。
【００４１】
ただし、局所マスク内のコントラストがない画素は、特徴がなく正しいフローを求めることが困難なため、局所マスクを設定しない。
【００４２】
また、局所マスク内でコントラストがあっても、単一方向のエッジしか存在しない画素も、正しいフローを求めるには特徴が不完全であるため、局所マスクを設定しない。
【００４３】
［相関値計算部１２１  ］
次に相関値計算部１２１  において、基準フレームの輝度分布を  ｆｂ  （ｘ，ｙ）  、それに続くｎフレーム後のフレームの輝度分布を  ｆｎ  （ｘ，ｙ）  とすると、基準フレームの各画素（ｘ，ｙ）  を中心とした局所マスクＷｂ  （ｘ，ｙ）  と、後続のフレームにおける同一座標、及びその周囲の画素を中心とした局所マスクＷｎ  （ｘ＋ｕ，ｙ＋ｖ）  の間の輝度信号の分布の相関値ｓ（ｕ，ｖ；ｘ，ｙ，ｎ）として、次式で表される相関係数を用いる事ができる。
【００４４】
【数１】
0003609679.tif 000002
ここで、μｂ  （ｘ，ｙ）  、μｎ  （ｘ＋ｕ，ｙ＋ｖ）はそれぞれ局所マスクＷｂ  （ｘ，ｙ）  、Ｗｎ  （ｘ＋ｕ，ｙ＋ｖ）  内の輝度の平均値、σｂ  （ｘ，ｙ）  、σｎ  （ｘ＋ｕ，ｙ＋ｖ）はそれぞれ局所マスクＷｂ  （ｘ，ｙ）  、Ｗｎ  （ｘ＋ｕ，ｙ＋ｖ）  内の輝度の分散である。
【００４５】
その他にも、これを簡略化した手法として、相互相関
【数２】
0003609679.tif 000003
や、相互相関を局所マスクの平均値で正規化したものを用いる方法、あるいは、マスクどうしの対応している画素の輝度の差分の自乗和（ＳＳＤ：Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）や、差分の絶対値の和（ＳＡＤ：Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）  を用いる方法、また差分の自乗や絶対値の和をマスク内の輝度の平均値及び分散値で正規化したものを用いる方法などが考えられる。
【００４６】
ただし、相関係数や相互相関を用いる方法では、輝度パターンの類似度が高いものほど相関値が大きくなるが、輝度の差分を用いる方法では輝度パターンの類似度が高いものほど相関値が小さくなる。
【００４７】
以下の説明では、輝度パターンの類似度が高いものほど相関値が大きいとする。
【００４８】
高速な動画像を用いる場合、連続するフレーム間のフローは非常に小さくなる。このことを利用して、基準フレームと後続フレームの局所マスク間の相関値を計算するとき、相関値を計算する画素を通常の場合よりも削減することができ、計算量を減らすことができる。
【００４９】
［対応判定部１２２  ］
次に対応判定部１２２  において、各フレームの各画素について前記相関値がしきい値以上、かつ最大となる画素の組を求める。この結果、基準フレームの各画素から後続のフレーム内の対応画素へのベクトルが定義され、このベクトルが画像間フローを表す。
【００５０】
つまり、（１）式で表されるような相関値のうち、基準フレームからｎフレーム後の画素（ｘ，ｙ）  の最大、かつ、しきい値以上の相関値をｓ（ｕ  ｍ  ，ｖｍ  ；ｘ，ｙ，ｎ）  とすると、画像間フローは（ｕｍ  ，ｖｍ  ）  となる。
【００５１】
以下では、この最大の相関値をｓ（ｘ，ｙ，ｎ）と表記する。
【００５２】
（ｂ）  フロー検証部２
フロー検証部２は、フロー蓄積部２０、信頼性計算部２１からなる（図５参照）。
【００５３】
（ｂ−１）  フロー蓄積部２０
フロー蓄積部２０では、後に続く信頼性計算部２１や速度決定部３で必要となる、各画素の基準フレームから現在のフレームまでの画像間フローに関するデータを蓄積する。
【００５４】
例えば、各画素（ｘ，ｙ）  について、基準フレームとそれに続くｎ番目のフレームとの間で計算された画像間フローｖ（ｘ，ｙ，ｎ）とその相関値ｓ（ｘ，ｙ，ｎ）を蓄積することが考えられる。
【００５５】
実際には、これらすべてを蓄積しておくのは膨大な記憶領域を必要とするため、信頼性計算部２１や速度決定部３での処理内容に必要な情報を、画像間フローｖ（ｘ，ｙ，ｎ）とその相関値ｓ（ｘ，ｙ，ｎ）から得て蓄積する。蓄積する必要のあるデータの種類は、後続の処理に依存するため、データの詳細については後述（速度決定部３参照）する。
【００５６】
蓄積されたデータは、基準フレームを更新するとき同時にクリアし、新たに蓄積を開始する。
【００５７】
（ｂ−２）  信頼性計算部２１
信頼性計算部２１では、画像間フローの大きさが指標距離Ｄに達するまでの画像間フローの方向によって各画素の信頼性を評価する。
【００５８】
指標距離Ｄより小さい画像間フローが観測されたフレームまでの集合をＮ１  （ｘ，ｙ）  とする。ただし、大きさ０の画像間フローは方向が定義できないため除く。
【００５９】
Ｎ１  （ｘ，ｙ）  は次式のように表される。
【００６０】
【数３】
0003609679.tif 000004
ここで、｜ｖ  ｜はベクトルｖ  の大きさを表し、α０  、αＤ  は正の定数で、それぞれ画像間フローの大きさを０，Ｄとみなす範囲を表す。
【００６１】
図７は画素（ｘ，ｙ）  についての模式図である。
【００６２】
画像間フローの終点が画素（ｘ，ｙ）  を中心とする半径α０  の円内（図７の領域１）にあるとき、その画像間フローは大きさ０と見なし、半径Ｄ−α０  の円外かつ半径Ｄ＋α０  の円内（図７の領域３）に終点があるとき、その画像間フローの大きさはＤとみなす。よって、フレーム集合Ｎ１  は図７の領域２  の内部に、（ｘ，ｙ）  の対応点が見つかったフレームの集合となる。
【００６３】
画素（ｘ，ｙ）  に関するフレーム集合Ｎ１  （ｘ，ｙ）  で表されるフレームの画像間フローのうち、最も信頼性の高い（相関値の大きい）画像間フローをｖ（ｘ，ｙ，ｎ  ｒ  （ｘ，ｙ））と表す（図７参照）。ここで、  ｎｒ  （ｘ，ｙ）  は、最も信頼性の高い（相関値が大きい）画像間フローが観測されたフレームで、次式で表される。
【００６４】
【数４】
0003609679.tif 000005
フレームｎの、画素（ｘ，ｙ）  の画像間フローの方向ｄ（ｘ，ｙ，ｎ）を、画像の水平方向と画像間フローのなす角と定義すると、最も信頼性の高い（相関値が大きい）画像間フローの方向  ｄｒ  （ｘ，ｙ）  は、次式で表される。
【００６５】
【数５】
0003609679.tif 000006
画像間フローの大きさが指標距離Ｄとほぼ等しくなるフレームの集合は次式で表される。
【００６６】
【数６】
0003609679.tif 000007
つまり、終点が図７の領域３の内部にある画像間フローが観測されたフレームがＮ２  （ｘ，ｙ）  の各要素となる。Ｎ２  （ｘ，ｙ）  に属するフレームｎ２で観測された画像間フロー  ｖ（ｘ，ｙ，ｎ２  ）  の信頼性は、大きさがＤ付近に達する以前で最も信頼性の高かった画像間フロー  ｖ（ｘ，ｙ，ｎｒ  ）  のなす角が小さいほど高いと考えられるので、信頼性の指標  ｒ（ｘ，ｙ，ｎ２  ）  を次式のように計算する。
【００６７】
【数７】
0003609679.tif 000008
ただし、Ｎ２  （ｘ，ｙ）  で表されるフレーム以外ではｒ（ｘ，ｙ，ｎ）＝∞とする。
【００６８】
このように計算した信頼性の指標  ｒ（ｘ，ｙ，ｎ２  ）  があるしきい値を上回ったらその画素は信頼性がないとし、その画像間フローを用いない。
【００６９】
（ｃ）  速度決定部３
図６に速度決定部３の構成図を示す。
【００７０】
速度決定部３は、移動時間決定部３０と速度情報出力部３１からなる。以下でこれらの構成例を示す。
【００７１】
（ｃ−１）  移動時間決定部３０
移動時間決定部３０では、フロー蓄積部２０で記憶されている画像間フローに関する時系列データを用いて、信頼性計算部２１で信頼性があると判断された画素の画像間フローの大きさが、指標距離設定部１１で設定した指標距離に達するまでのフレーム数を計測する。フロー検出部１  で述べた、小領域の輝度パターンの対応付けに基づく方式では、画像間フローは画素単位の精度であるため、１秒間に１０００フレームといった高速の動画像では、画像間フローの大きさが数フレームに渡って指標距離Ｄと等しくなる。これらのフレームから適切なフレームを選択しないと、各画素の速度を精度よく求めることはできない。
【００７２】
画像間フローが指標距離Ｄと等しくなるフレームの集合Ｎ２  （ｘ，ｙ）  の中から次式を満たすフレームを、画像間フローが指標距離Ｄに達したフレームｋ（ｘ，ｙ）として選択する（図８参照）。
【００７３】
【数８】
0003609679.tif 000009
すなわち、画素（ｘ，ｙ）  について、画像間フローの大きさが指標距離Ｄにほぼ等しくなるフレーム集合Ｎ（ｘ，ｙ）  のうち、画像中の小領域の輝度パターンの相関値が最も大きくなるフレームを、指標距離に達したフレームとして選択する。
【００７４】
基準フレームからフレームｋ（ｘ，ｙ）までのフレーム数が指標距離に達したフレーム数である。
【００７５】
［画像間フローに関する情報の記憶内容］
このような信頼性計算部２１と移動距離決定部３０の構成にした場合、フロー蓄積部２０で時系列の画像間フローとその相関値を全て蓄積しておく必要はなく、各画素について以下の５つの画像間フローに関する情報を記憶しておけばよい。
【００７６】
１  ．第１の情報
画像間フローの大きさが、指標距離Ｄより小さく０でない（フレーム集合Ｎ１（ｘ，ｙ）で表される）フレームでの画像間フローの相関値のうち、最大の相関値。
【００７７】
２  ．第２の情報
第１の情報における最大の相関値をとる画像間フローの方向。
【００７８】
３  ．第３の情報
画像間フローの大きさが指標距離Ｄとほぼ等しくなる（フレーム集合Ｎ２（ｘ，ｙ）で表される）フレームでの画像間フローの相関値のうち、最大の相関値。
【００７９】
４  ．第４の情報
第３の情報における最大の相関値をとる画像間フローの方向。
【００８０】
５  ．第５の情報
基準フレームから、第３の情報における最大の相関値をとるフレームまでのフレーム数。
【００８１】
以上で述べた手法では、移動時間はフレーム単位の解像度しか得られない。
【００８２】
そこで、相関値が最大となったフレームｋ（ｘ，ｙ）の前後のｍフレームの相関値｛ｓ（ｘ，ｙ，ｋ−ｍ）  、…、ｓ（ｘ，ｙ，ｋ）、…、ｓ（ｘ，ｙ，ｋ＋ｍ）｝  に二次曲線をフィッティングし、二次曲線が最小となるフレームｋ’（ｘ，ｙ）  を求めることによって、より精度の高い移動時間を求めることも可能である（図８参照）。
【００８３】
この場合、フロー蓄積部２０で蓄積しておく情報は、前記の第３、５の情報を次のように変更すればよい。
【００８４】
・変更後の第３の情報
画像間フローの大きさが指標距離Ｄとほぼ等しくなる（フレーム数集合Ｎ２（ｘ，ｙ）で表される）フレームでの画像間フローの相関値のうち、最大の相関値と、その前後の数フレームの相関値。
【００８５】
・変更後の第５の情報
基準フレームから、変更後の第３の情報で蓄積した相関値をとるフレームまでのフレーム数。
【００８６】
また、移動方向についても画素単位の解像度しか得られないので、指標距離に達したフレームｋ（ｘ，ｙ）において、相関値計算部１２１  で計算した各画像間フローの相関値ｓ（ｕ，ｖ；ｘ，ｙ，ｋ）のうち、例えば図９の左図の網掛け部のように最大の相関値ｓ（１，−２；ｘ，ｙ，ｋ）  をとる画素とその両隣の画素の相関値ｓ（０，−２；ｘ，ｙ，ｋ），  ｓ（２，−２；ｘ，ｙ，ｋ）に二次曲線を当てはめて、図９の右図のように二次曲線が最大値をとる角度  ｄ’（ｘ，ｙ，ｋ）  を移動方向として求めることによって、精度を高める事も可能である。この場合、フロー蓄積部２０で蓄積しておく情報は、前記の第４の情報を次のように変更すればよい。
【００８７】
・変更後の第４の情報
第３の情報における最大の相関値をとる画像間フローの方向と、その両隣の画素の画像間フローの方向。
【００８８】
［速度情報出力部３１］
速度情報出力部３１は、移動時間決定部３０で得られた移動時間と移動方向を入力として、速度情報を出力する。
【００８９】
例えば、指標距離Ｄを移動時間で割って、各画素の速度ベクトルの大きさを求め、各画素について速度ベクトルの大きさと方向の２つのデータを出力する方法、あるいは、各画素の移動ベクトルの要素を出力する方法、あるいは、移動時間と移動方向をそのまま出力する方法などが考えられる。
【００９０】
〈変更例１〉
本発明は、前記実施例で記載した内容に限定されるものではない。
【００９１】
フロー検出部１において、前記実施例では画像間フローの検出に画像中の小領域の輝度パターンの対応付けに基づく方法を用いたが、これの代わりに既に提案されている様々な方法を用いることができる。
【００９２】
〈変更例２〉
信頼性計算部２１において、画像間フローの大きさが指標距離Ｄより小さいフレームの信頼できる画像間フローの方向（（４）式参照）として、例えばこれらのフレームの画像間フローの角度の平均値などを用いることもできる。
【００９３】
この場合、フロー蓄積部２０で蓄積しておく情報は、画像間フローの角度の和とフレーム集合Ｎ１  （ｘ，ｙ）  の要素の個数で、信頼性計算部２１において前記フローの角度の和を前記要素の数で割ることによって、画像間フローの角度の平均値を求めることができる。この方法では、相関値のようなフロー検出部１から出力される画像間フローの計算の信頼性の情報を必要としない。
【００９４】
〈変更例３〉
（６）式の各画素の画像間フローの信頼性として、得られたフローベクトルの角度の分散を用いることも考えられる。
【００９５】
分散が大きいほど得られたフローの方向には一貫性がなく、信頼性が低いと考えられる。この場合、フロー蓄積部２０で記憶しておく情報は、画像間フローの角度Ｓｄ（ｘ，ｙ）の和と、角度の自乗和Ｓｄ（ｘ，ｙ）２と、足し算の回数ｍで、信頼性計算部２１において次式によって、角度の分散σ２ｄ（ｘ，ｙ）を計算する。
【００９６】
【数９】
0003609679.tif 000010
〈変更例４〉
これまで実施例の信頼性計算部２１の説明や、変更例で述べてきたように、画像間フローの信頼性に画像間フローの角度に関する指標を用いる以外にも、画像間フローの大きさに関する指標を用いる方法も考えられる。
【００９７】
画像間フローの大きさは、画像間フローの大きさが指標距離Ｄに達するまでのフレーム数に反比例するので、例えば、指標距離Ｄ＝２のとき、（６）式の代わりに次式を用いることも考えられる。
【００９８】
【数１０】
0003609679.tif 000011
これは、例えばＤ＝２のときには、  ｎｒ  （ｘ，ｙ）  が大きさ１の画像間フローが観測された時のフレーム数となるので、大きさ２の画像間フローが観測されるのは、基準フレームからのフレーム数が  ２×  ｎｒ  （ｘ，ｙ）  である可能性が高いということを利用している。
【００９９】
また、  ｎｒ  （ｘ，ｙ）  の代わりにＮ１  （ｘ，ｙ）  の要素の平均値や中間値を用いることも考えられる。
【０１００】
〈変更例５〉
移動時間決定部３０では、画像間フローが指標距離Ｄに達するフレームとして、画像間フローの大きさが、指標距離Ｄにほぼ等しくなるまでのフレームの集合Ｎ２  （ｘ，ｙ）  の要素の平均値、中間値、あるいは、最小フレーム数と最大フレーム数の中央の値を用いることなどが考えられる。
【０１０１】
〈変更例６〉
速度出力部３１で速度を様々な形態で出力することを述べたが、さらにその信頼性も付加して出力することも考えられる。
【０１０２】
例えば、信頼計算部２１でしきい値処理を行わずに、各画素の画像間フローの信頼性をそのまま出力し、速度決定部３で計算される速度とともに出力することが考えられる。
【０１０３】
また、速度決定部３で計算した速度の信頼性は画像間フローの計算の信頼性にも依存するので、フロー検出部１  で計算された画像間フローの相関値を速度の信頼性としてともに出力することなども考えられる。
【０１０４】
〈変更例７〉
上記実施形態では、１秒間に１０００フレームよりなる高速画像について対象としたため、各画素の移動軌跡は、略直線運動として推定できるが、例えば、各画素の移動がそれ以上に早く、かつ、直線運動以外の規則的な運動（例えば、渦巻き状の運動）をする場合には、その動きを考慮して信頼性計算部２１で各画素の信頼性を計算すればよい。なお、高速画像でなく、これより低速で画像を取得する場合も同様にして各画素の動きを考慮すればよい。
【０１０５】
【発明の効果】
本発明によれば、例えば、高速な時系列画像（動画像）を入力し、各画素の移動量がある一定の移動量量に達するまでの移動時間と移動方向を求めることによって各画素の移動速度を求める場合において、各画素のフローベクトルの信頼性を求めて、その信頼性のある画素のみを処理することにより、移動時間と移動方向の検出精度を向上させ、各画素の移動速度を正確に求めることが可能となり、画素の移動速度を用いる画像処理の精度向上に貢献する。
【図面の簡単な説明】
【図１】本発明の一実施形態の構成を示すブロック図である。
【図２】画像間フローの概念の説明図である。
【図３】図１のフロー検出部の一実施形態を示すブロック図である。
【図４】図３のフロー計算部の一実施形態を示すブロック図である。
【図５】図１のフロー検証部の一実施形態を示すブロック図である。
【図６】図１の画像間速度決定部の一実施形態を示すブロック図である。
【図７】画像間フローの信頼性計算手法の一実施形態を示す説明図である。
【図８】移動時間を決定する手法の説明図である。
【図９】移動方向をの精度を向上する手法の説明図である。
【符号の説明】
０…画像入力部
１…フロー検出部
１０…基準フレーム設定部
１１…指標距離設定部
１２…フロー計算部
１２０…局所マスク設定部
１２１…相関値計算部
１２２…対応判定部
２…フロー検証部
２０…フロー蓄積部
２１…信頼性計算部
３０…移動時間決定部
３１…速度情報出力部
【図１】
0003609679.tif 000012
【図２】
0003609679.tif 000013
【図３】
0003609679.tif 000014
【図４】
0003609679.tif 000015
【図５】
0003609679.tif 000016
【図６】
0003609679.tif 000017
【図７】
0003609679.tif 000018
【図８】
0003609679.tif 000019
【図９】
0003609679.tif 000020