(57)【要約】【課題】本発明は、マッチング探索処理中に無効フローを除去し、マッチング探索処理の処理時間の短縮を図ることを目的としている。【解決手段】このため、オプティカルフロー検出装置において、マッチングスコア算出手段とマッチングスコア差分算出手段とマッチングスコア差分判定手段とフロー内積算出手段とフロー内積評価手段とを備え、マッチング探索時、差分がしきい値以下の時に、フロー内積算出手段により内積値を算出し、フロー内積評価手段により無効フロ一を除去する。また、オプティカルフロー検出方法において、現在画像の画像データと過去画像の画像データから前回と今回のマッチングスコアの差分を算出し、マッチング探索時、差分がしきい値以下の場合に、前回までのオプティカルフローと今回のオプティカルフローで内積値を算出し、内積値でオプティカルフローの方向性を判定して無効フローを除去する。【選択図】図１
2013084140.tif 000002
【特許請求の範囲】
【請求項１】
ブロックマッチングにより過去画像と現在画像との２つの画像のオプティカルフローを検出するオプティカルフロー検出装置において、現在画像の画像データと過去画像の画像データとの間のマッチングスコアを算出するマッチングスコア算出手段と、このマッチングスコア算出手段により算出された前回のマッチングスコアと今回のマッチングスコアとの差分を算出するマッチングスコア差分算出手段と、このマッチングスコア差分算出手段により算出された差分が予め設定されたしきい値以下であるか否かを判定するマッチングスコア差分判定手段と、前回までのマッチング探索で一致判定された位置でのオプティカルフローと今回のマッチング探索で現在探索位置でのオプティカルフローとで内積値を算出するフロー内積算出手段と、このフロー内積算出手段により算出された内積値に基づいてオプティカルフローの方向性を判定して無効フローを除去するフロー内積評価手段とを備え、マッチング探索時に、前記マッチングスコア差分判定手段により差分がしきい値以下であると判定された時には、前記フロー内積算出手段により内積値を算出し、前記フロー内積評価手段により無効フロ一を除去することを特徴とするオプティカルフロー検出装置。
【請求項２】
前記フロー内積算出手段は、前回までのマッチング探索で一致判定された位置でのオプティカルフローを［ＦｗｙΔｉ１、ＦｗｙΔｊ１］、今回のマッチング探索で現在探索位置でのオプティカルフローを［ＦｗｙΔｉ２、ＦｗｙΔｊ２］とすると、下記の数式
内積値＝ＦｗｙΔｉ１・ＦｗｙΔｉ２＋ＦｗｙΔｊ１・ＦｗｙΔｊ２
で示される簡易内積によって内積値を算出することを特徴とする請求項１に記載のオプティカルフロー検出装置。
【請求項３】
ブロックマッチングにより過去画像と現在画像との２つの画像のオプティカルフローを検出するオプティカルフロー検出方法において、現在画像の画像データと過去画像の画像データとの間のマッチングスコアを算出して前回のマッチングスコアと今回のマッチングスコアとの差分を算出し、マッチング探索時に、算出された差分が予め設定されたしきい値以下であるか否かを判定し、差分がしきい値以下であると判定された場合に、前回までのマッチング探索で一致判定された位置でのオプティカルフローと今回のマッチング探索で現在探索位置でのオプティカルフローとで内積値を算出し、この内積値に基づいてオプティカルフローの方向性を判定して無効フローを除去することを特徴とするオプティカルフロー検出方法。
【請求項４】
前回までのマッチング探索で一致判定された位置でのオプティカルフローを［ＦｗｙΔｉ１、ＦｗｙΔｊ１］、今回のマッチング探索で現在探索位置でのオプティカルフローを［ＦＷｙΔｉ２、ＦｗｙΔｊ２］とすると、下記の数式
内積値＝ＦｗｙΔｉ１・ＦｗｙΔｉ２＋ＦｗｙΔｊ１・ＦｗｙΔｊ２
で示される簡易内積によって内積値を算出することを特徴とする請求項３に記載のオプティカルフロー検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はオプティカルフロー検出装置及び検出方法に係り、特に画像処理やカメラを使用した車両周囲確認技術、その他のロボットアイ等、マシンビジョンに基づく移動体検出技術に関するものである。
【背景技術】
【０００２】
オプティカルフロー検出などの画像マッチング作業では、画像内の注目点１画素のみではなく、その周辺の濃度パターンを利用したブロックマッチング（「ウィンドウマッチング」と呼ばれることもある。）に代表されるarea-based matching処理が知られている。
ブロックマッチングでは濃度パターンの利用の仕方によって幾つかの種類があるが，一般に輝度差の絶対値を利用したＳＡＤ（Sum Absolute Difference）評価法や比較ブロック内の輝度平均値による調整を施し利用するＮＣＣ（Normalized Cross-Correlation）評価法等が使用される。
それぞれ手法等に特徴があるが，ＮＣＣはＳＡＤに比べてコントラスト変化などの影響を受けにくく、ＳＡＤより優れた精度でオプティカルフローの検出を行なうことができるが計算量が大きいという性質を持っている。
ところが、路面や空等の背景に関してはブロック内に含まれる画像については、表示されるコントラスト成分が少なく、探索対象となるブロックの周辺について複数個所で一致する恐れが高い。
よって、背景とその他の対象物との区別のために検出したオプティカルフローについては、検出した一致度の大きさや、フローの向き・長さ等のマッチング処理結果から有効性や誤検出を判定しなければならない。
しかしながら、マッチング処理結果のみでは、正確なフローを判定するには材料不足となるケースが多く、ブロックマッチング処理とは別に正誤判別手法を行なうための前処理や後処理による追加対策が必要となる。
他に、ブロックマッチングでは、固有の課題として作業時に窓問題（aperture problem）による影響が発生するため、やはり追加の対策が必要となる。
例えば、事前に対象画像の画質を改善し外乱の影響を取り除くような前処理手段、閾値を探索条件に合わせて動的に調整する同時進行型の判定手段、異なるサイズのテンプレートを使用し多段分解能で判別する手段、あるいはＳＯＢＥＬフィルタ等の微分処理・Harris特徴量計算等の固有箇所抽出処理等を施す等、feature-based
matchingに類する処理と組み合わせた後処理判定手法、クラスタリング判定を組み合わせた後判定手法、データベースとの比較によるパターンマッチング判定などの後処理手法を組み合わせる技術等が様々な事例が報告されている。
しかしながら、これらはブロックマッチング処理とは独立した形態で追加されるケースが多く、ブロックマッチング処理を含めた総合判定結果を得るまでに時間が増大する傾向にあり、リアルタイム性を確保するには高度なスペックのシステム・演算回路等が要求される場合が多い。
よって、コスト面を含めハードウェア化・製品化には課題が多い。
いずれの場合にせよ、元々のマッチング性能が劣り誤検出数が増えれば、追加される後判定処理の負荷や計算コストの増大を招く。
よって、ブロックマッチング処理本体を改良し精度を上げる手段を提案する。
ハードウェア化を視野に入れ、従来のブロックマッチング手法に対して、できるだけシンプルな追加要素で外乱による影響への耐性を向上し、オプティカルフローの検出精度を向上できる手法を目指す。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１６８４４２号公報
【特許文献２】特開２００８−９７１２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、従来のオプティカルフロー検出装置及び検出方法においては、マッチング性能の低い手法をそのまま移動体検出処理に応用するには、マッチング作業とは別に画質改善処理等の前処理、あるいは検出したオプティカルフロー（マッチング結果）の有効・無効判定に関する後処理の追加が必要である。
特に、後処理については、無効なフローが増すと、それだけ選別処理に時間が掛かる。
また、移動速度の大きな移動体検出作業で処理時間が嵩むと物体を画面上で連続して捕らえるのが困難となる。
よって、できるだけ計算負荷が軽く、余計な無効フローを検出することなく作業を行なう手法の改善が必要となる。
【０００５】
ここで、従来手法を、図２７のオプティカルフロー検出装置の制御用フローチャートに沿って説明する。
【０００６】
このオプティカルフロー検出装置の手法を説明する制御用プログラムがスタート（２０１）すると、ＭｘＭ個の指定オフセットテーブル（２０２ｂ）から探索順位と該当オプティカルフローの序列を作成し、データテーブル化する（以下、「序列テーブル（２０２ａ）」という。）処理（２０２）に移行する。
この処理（２０２）の後には、スコアを記録する画像と同幅・高さのメモリを用意し、初期化する（以下、「スコアバッファ」という。）処理（２０３）に移行する。
そして、処理（２０３）の後には、フローを記録する画像と同幅・高さのメモリを用意し、初期化する（以下、「フローバッファ」という。）処理（２０４）に移行する。
この処理（２０４）の後に、作業開始の処理（２０５）を経て、画像ＩＭＧ１取得の処理（２０６）、及び、画像ＩＭＧ２取得の処理（２０７）を行い、前記序列テーブル（２０２ａ）の現位置はＭｘＭ個を超過したか否かの判断（２０８）に移行する。
この前記序列テーブル（２０２ａ）の現位置はＭｘＭ個を超過したか否かの判断（２０８）において、判断（２０８）がＹＥＳの場合には、オプティカルフロー決定の処理（２０９）に移行し、判断（２０８）がＮＯの場合には、前記序列テーブル（２０２ａ）よりＮ回目のシフト量［ΔiＮ、ΔjＮ］を取得する処理（２１０）に移行する。
上述のオプティカルフロー決定の処理（２０９）の後には、後処理（２１１）を行う。この後処理（２１１）においては、フローを基本とした装置機能を提供する。
そして、この後処理（２１１）の後には、画像ＩＭＧ１と画像ＩＭＧ２とをスワップ（交換）し、次の動画処理の準備を行う処理（２１２）に移行し、上述した画像ＩＭＧ２取得の処理（２０７）に戻る。
また、上述した前記序列テーブル（２０２ａ）よりＮ回目のシフト量［ΔiＮ、ΔjＮ］を取得する処理（２１０）の後には、画像ＩＭＧ２の原点を［ΔiＮ、ΔjＮ］分シフトする処理（２１３）に移行する。
この画像ＩＭＧ２の原点を［ΔiＮ、ΔjＮ］分シフトする処理（２１３）の後には、画面全体、全ての画素を探索できたか否かの判断（２１４）に移行する。
この画面全体、全ての画素を探索できたか否かの判断（２１４）において、判断（２１４）がＹＥＳの場合には、上述した前記序列テーブル（２０２ａ）の現位置はＭｘＭ個を超過したか否かの判断（２０８）に戻り、判断（２１４）がＮＯの場合には、次のマッチング確認位置（検索中心）を画素［i、j］の指示点に設定する処理（２１５）に移行する。
そして、この次のマッチング確認位置（検索中心）を画素［i、j］の指示点に設定する処理（２１５）の後には、評価式はＮＣＣ・ＺＳＡＤ等であるか否かの判断（２１６）に移行する。
この評価式はＮＣＣ・ＺＳＡＤ等であるか否かの判断（２１６）において、判断（２１６）がＹＥＳの場合には、先に指示点［i、j］およびその周囲［i+u、j+v］の合計ＮｘＮ個の画素についてブック内輝度平均値を求める処理（２１７）に移行し、その後に、指示点［i、j］およびその周囲［i+u、j+v］の合計ＮｘＮ個の画素について評価式にそって一致度スコアを計算する処理（２１８）に移行する。
また、判断（２１６）がＮＯの場合には、そのまま指示点［i、j］およびその周囲［i+u、j+v］の合計ＮｘＮ個の画素について評価式にそって一致度スコアを計算する処理（２１８）に移行する。
そして、この処理（２１８）の後には、計算した一致度スコアはスコアバッファの［i、j］位置に記録されたスコアよりも優れているか否かの判断（２１９）に移行する。
この判断（２１９）において、判断（２１９）がＹＥＳの場合には、スコアバッファの［i、j］位置へ先ほど計算した一致度スコアを記録する一方、同様に、フローバッファの［i、j］位置へシフト量［ΔiＮ、ΔjＮ］を記録する処理（２２０）を行った後に、上述した画面全体、全ての画素を探索できたか否かの判断（２１４）に戻る。
また、計算した一致度スコアはスコアバッファの［i、j］位置に記録されたスコアよりも優れているか否かの判断（２１９）がＮＯの場合には、そのまま画面全体、全ての画素を探索できたか否かの判断（２１４）に戻る。
【０００７】
この発明の目的は、マッチング探索処理中に無効フローを除去し、マッチング探索処理の処理時間の短縮を図ることにある。
【課題を解決するための手段】
【０００８】
そこで、この発明は、上述不都合を除去するために、ブロックマッチングにより過去画像と現在画像との２つの画像のオプティカルフローを検出するオプティカルフロー検出装置において、現在画像の画像データと過去画像の画像データとの間のマッチングスコアを算出するマッチングスコア算出手段と、このマッチングスコア算出手段により算出された前回のマッチングスコアと今回のマッチングスコアとの差分を算出するマッチングスコア差分算出手段と、このマッチングスコア差分算出手段により算出された差分が予め設定されたしきい値以下であるか否かを判定するマッチングスコア差分判定手段と、前回までのマッチング探索で一致判定された位置でのオプティカルフローと今回のマッチング探索で現在探索位置でのオプティカルフローとで内積値を算出するフロー内積算出手段と、このフロー内積算出手段により算出された内積値に基づいてオプティカルフローの方向性を判定して無効フローを除去するフロー内積評価手段とを備え、マッチング探索時に、前記マッチングスコア差分判定手段により差分がしきい値以下であると判定された時には、前記フロー内積算出手段により内積値を算出し、前記フロー内積評価手段により無効フロ一を除去することを特徴とする。
また、ブロックマッチングにより過去画像と現在画像との２つの画像のオプティカルフローを検出するオプティカルフロー検出方法において、現在画像の画像データと過去画像の画像データとの間のマッチングスコアを算出して前回のマッチングスコアと今回のマッチングスコアとの差分を算出し、マッチング探索時に、算出された差分が予め設定されたしきい値以下であるか否かを判定し、差分がしきい値以下であると判定された場合に、前回までのマッチング探索で一致判定された位置でのオプティカルフローと今回のマッチング探索で現在探索位置でのオプティカルフローとで内積値を算出し、この内積値に基づいてオプティカルフローの方向性を判定して無効フローを除去することを特徴とする。
【発明の効果】
【０００９】
以上詳細に説明した如くこの発明によれば、マッチング探索処理中に無効フローを除去することができる。したがって、マッチング探索処理後に無効フローを除去する場合よりも処理時間を短縮することができる。
また、マッチングスコアの差分にしきい値を設定するため、照明（日照条件・陰）等の局所的な影響を除去することができる。
更に、マッチングスコアの差分に設定するしきい値を定数とすることができる。
更にまた、フロー内積評価により路面・背景等のコントラストの低い位置を判別し、無効なオプティカルフロー検出を回避することができる。また、繰り返しパターン（窓問題）の発生を軽減することができる。
また、従来のマッチング処理機能に適用することができる。
【図面の簡単な説明】
【００１０】
【図１】図１はオプティカルフロー検出装置の手法を説明する制御用フローチャートである。（実施例）
【図２】図２はオプティカルフロー検出装置のシステム構成図である。（実施例）
【図３】図３はマッチング対象比較画像及び探索位置の例を示す図である。（実施例）
【図４】図４はブロックマッチングによるオプティカルフロー検出結果例と検出フロー方向識別色を示す図である。（実施例）
【図５】図５はブロックマッチングの探索対象となるブロック間隔０、５、１０、１５を示す図である。（実施例）
【図６】図６はＳＡＤの一致度閾値なし、３００以上抽出、６１０以上抽出を示す図である。（実施例）
【図７】図７はノイズ付加前、一様ノイズ（元輝度＋１０）付加、一様ノイズ（元輝度−１０）付加を示す図である。（実施例）
【図８】図８は付加する人工ノイズ（０〜＋２４ピクセル）、ブロックマッチング処理を示す図である。（実施例）
【図９】図９はＦＯＥ内積判定処理前とＦＯＥ内積判定処理後とを示す図である。（実施例）
【図１０】図１０は移動前及び移動後を示す図である。（実施例）
【図１１】図１１は道路白線の検出結果を示す図である。（実施例）
【図１２】図１２はＦＯＥ内積判定処理前とＦＯＥ内積判定処理後との歪補正画像に関するＳＡＤ処理結果を示す図である。（実施例）
【図１３】図１３は一致度閾値なし及び一致度閾値＝０．９９９５以下抽出のＮＣＣブロックマッチング結果を示す図である。（実施例）
【図１４】図１４はノイズ付加前、一様ノイズ（元輝度＋１０）付加、一様ノイズ（元輝度−１０）付加を示す図である。（実施例）
【図１５】図１５は付加する人工ノイズ（０〜＋２４ピクセル）、ブロックマッチング処理を示す図である。（実施例）
【図１６】図１６は探索の優先順位に関する参考図である。（実施例）
【図１７】図１７は純フロー内積  閾値ｃｏｓ（１５ｄｅｇ）及び簡易フロー内積による判定［純フロー内積  閾値ｃｏｓ（９０ｄｅｇ）］を示す図である。（実施例）
【図１８】図１８は純フロー内積  閾値ｃｏｓ（１２０ｄｅｇ）を示す図である。（実施例）
【図１９】図１９はＦＯＥ内積判定実施後のＣａｓｅ（ケース）Ａ〜Ｄを示す図である。（実施例）
【図２０】図２０は道路の点Ａ〜Ｃを示す図である。（実施例）
【図２１】図２１は点Ａにおける相関表を示す図である。（実施例）
【図２２】図２２は点Ｂにおける相関表を示す図である。（実施例）
【図２３】図２３は点Ｃにおける相関表を示す図である。（実施例）
【図２４】図２４はＦＯＥ内積判定処理前及びのＦＯＥ内積判定処理後のＳＡＤベースブロックマッチング結果を示す図である。（実施例）
【図２５】図２５は通常のＦＯＥ内積判定処理前及びのＦＯＥ内積判定処理後のＮＣＣによるブロックマッチング結果（ＮＣＣ一致度０．９９９５）を示す図である。（実施例）
【図２６】図２６は本提案を組み合わせたＦＯＥ内積判定処理前及びのＦＯＥ内積判定処理後のＮＣＣによるブロックマッチング結果（ＮＣＣ一致度０．０００３）を示す図である。（実施例）
【図２７】図２７はこの発明の従来技術を示すオプティカルフロー検出装置の手法を説明する制御用フローチャートである。
【発明を実施するための形態】
【００１１】
以下図面に基づいてこの発明の実施例を詳細に説明する。
【実施例】
【００１２】
図１〜図２６はこの発明の実施例を示すものである。
図２において、１はオプティカルフロー検出装置である。
このオプティカルフロー検出装置１は、ブロックマッチングにより過去画像と現在画像との２つの画像のオプティカルフローを検出するものである。
そして、前記オプティカルフロー検出装置１は、図２に示す如く、マッチングスコア算出の処理を行うマッチングスコア算出手段２と、マッチングスコア差分算出の処理を行うマッチングスコア差分算出手段３と、マッチングスコア差分判定の処理を行うマッチングスコア差分判定手段４と、フロー内積算出の処理を行うフロー内積算出手段５と、フロー内積評価の処理を行うフロー内積評価手段６とを備えている。
そして、前記マッチングスコア算出手段２は、現在画像の画像データと過去画像の画像データとの間のマッチングスコアを算出する。
前記マッチングスコア差分算出手段３は、前記マッチングスコア算出手段２により算出された前回のマッチングスコアと今回のマッチングスコアとの差分を算出する。
前記マッチングスコア差分判定手段４は、前記マッチングスコア差分算出手段３により算出された差分が予め設定されたしきい値以下であるか否かを判定する。
前記フロー内積算出手段５は、前回までのマッチング探索で一致判定された位置でのオプティカルフローと今回のマッチング探索で現在探索位置でのオプティカルフローとで内積値を算出する。
前記フロー内積評価手段６は、前記フロー内積算出手段５により算出された内積値に基づいてオプティカルフローの方向性を判定して無効フローを除去する。
【００１３】
そして、前記オプティカルフロー検出装置１は、マッチング探索時に、前記マッチングスコア差分判定手段４により差分がしきい値以下であると判定された時には、前記フロー内積算出手段５により内積値を算出し、前記フロー内積評価手段６により無効フロ一を除去する構成を有している。
これにより、前記オプティカルフロー検出装置１は、マッチング探索処理中に無効フローを除去することができる。したがって、マッチング探索処理後に無効フローを除去する場合よりも処理時間を短縮することができる。
また、前記オプティカルフロー検出装置１は、マッチングスコアの差分にしきい値を設定するため、照明（日照条件・陰）等の局所的な影響を除去することができる。
更に、前記オプティカルフロー検出装置１は、マッチングスコアの差分に設定するしきい値を定数とすることができる。
更にまた、前記オプティカルフロー検出装置１は、フロー内積評価により路面・背景等のコントラストの低い位置を判別し、無効なオプティカルフロー検出を回避することができる。また、繰り返しパターン（窓問題）の発生を軽減することができる。
また、前記オプティカルフロー検出装置１は、従来のマッチング処理機能に適用することができる。
【００１４】
また、前記フロー内積算出手段５は、前回までのマッチング探索で一致判定された位置でのオプティカルフローを［ＦｗｙΔｉ１、ＦｗｙΔｊ１］、今回のマッチング探索で現在探索位置でのオプティカルフローを［ＦｗｙΔｉ２、ＦｗｙΔｊ２］とすると、下記の数式
内積値＝ＦｗｙΔｉ１・ＦｗｙΔｉ２＋ＦｗｙΔｊ１・ＦｗｙΔｊ２
で示される簡易内積によって内積値を算出する構成を有している。
これにより、前記フロー内積算出手段５は、構成をシンプルにすることができ、ＦＰＧＡ等のハードウェアヘの実装に有利である。
また、前記フロー内積算出手段５は、高速に処理をすることが可能になる。
【００１５】
更に、この発明は、ブロックマッチングにより過去画像と現在画像との２つの画像のオプティカルフローを検出するオプティカルフロー検出方法において、現在画像の画像データと過去画像の画像データとの間のマッチングスコアを算出して前回のマッチングスコアと今回のマッチングスコアとの差分を算出し、マッチング探索時に、算出された差分が予め設定されたしきい値以下であるか否かを判定し、差分がしきい値以下であると判定された場合に、前回までのマッチング探索で一致判定された位置でのオプティカルフローと今回のマッチング探索で現在探索位置でのオプティカルフローとで内積値を算出し、この内積値に基づいてオプティカルフローの方向性を判定して無効フローを除去するものである。
これにより、マッチング探索処理中に無効フローを除去することができる。したがって、マッチング探索処理後に無効フローを除去する場合よりも処理時間を短縮することができる。
また、マッチングスコアの差分にしきい値を設定するため、照明（日照条件・陰）等の局所的な影響を除去することができる。
更に、マッチングスコアの差分に設定するしきい値を定数とすることができる。
更にまた、フロー内積評価により路面・背景等のコントラストの低い位置を判別し、無効なオプティカルフロー検出を回避することができる。また、繰り返しパターン（窓問題）の発生を軽減することができる。
また、従来のマッチング処理機能に適用することができる。
【００１６】
更にまた、この発明のオプティカルフロー検出方法は、前回までのマッチング探索で一致判定された位置でのオプティカルフローを［ＦｗｙΔｉ１、ＦｗｙΔｊ１］、今回のマッチング探索で現在探索位置でのオプティカルフローを［ＦＷｙΔｉ２、ＦｗｙΔｊ２］とすると、下記の数式
内積値＝ＦｗｙΔｉ１・ＦｗｙΔｉ２＋ＦｗｙΔｊ１・ＦｗｙΔｊ２
で示される簡易内積によって内積値を算出するものである。
これにより、構成をシンプルにすることができ、ＦＰＧＡ等のハードウェアヘの実装に有利である。
また、高速に処理をすることが可能になる。
【００１７】
ここで、この発明におけるブロックマッチング手法の改良について説明する。
先ず、従来のブロックマッチング手法は、とりあえず指定した探索範囲を全て探索した後で、マッチング結果（「スコア」ともいう。）に対し、設定した閾値に基づく有効・無効判定を加えていた。
提案する手法では、従来の手続きを損なうことなくマッチング処理中に同時進行で無効なオプティカルフローを排除できるよう、探索過程でのマッチングスコアの変化量により起動するオプティカルフローの簡易的な内積評価に基づく方向性判定を組み合わせることで無効フロー除去の対応に当たる。
近年のオプティカルフロー検出手法は、LucasKanade法、HornSchunck法など時系列を考慮に入れた着目画素および近傍の輝度評価に基づく手法、さらにはShift法・Surf法など輝度分散値や多重解像度解析に基づく解釈を追加した手法がしばしば提案されているが、これらはＳＡＤブロックマッチング処理等の手法と比べ、よりソフトウェア的にオプティカルフロー解決ヘアプローチしているものと伺える。
本手法は、ＳＡＤブロックマッチング等に従来のマッチング・オプティカルフロー検出手法から逸脱しない構成であるため、ＦＰＧＡ等基づくハードウェア的なオプティカルフロー解決手法に適用できる。
【００１８】
マッチング処理に関する共通事項
ブロックマッチングで扱う画像は連続する動画であるが、今回はその一部を抜き出した２枚の画像を例に取り上げる。
（１）評価画像をＩＭＧ１（元画像＝過去画像）、もう一つの評価画像をＩＭＧ２（現画像）とする。
（２）画像のサイズは幅Ｗ、高さＨとする。
（３）評価するブロックの形状は円・四角形、その他の多角形等の任意形状を使用することができるが、今回は最も簡易的な正方形形状ブロックで手順を紹介する。
（４）ブロックの単位をＮ、探索する範囲をＭとする。ＭとＮで大きいほうをＬとする。
画像の探索位置はブロック中心［X、Y］＝［i、j］を基準に実行するものとする。
よって、画像全域を全て探索する場合、
Ｘは、Ｌ／２  ≦  i  ＜  Ｗ−Ｌ／２、
Ｙは、Ｌ／２  ≦  j  ＜  Ｈ−Ｌ／２
の範囲で計算を行なう。
（５）各探索はブロック中心［X、Y］＝［i、j］から［X、Y］＝［Δi、Δj］シフトした位置で一致度を評価して行なわれる。
結果、一致箇所と判断された位置について、ブロック中心［i、j］と一致箇所［i＋Δi、j＋Δj］をそれぞれ始点・終点とするオプティカルフローが検出される。
（６）以後、例に取りあげる参照図については、特に明記しない限り以下の条件でマッチング処理を行なった結果画面である。
（７）ブロックサイズ：  ９ｘ９サイズ      （Ｎ＝９）
探索範囲      ：  １５ｘ１５サイズ  （Ｍ＝１５）
ブロック間隔  ：  全画素            （ブロック間隔＝０）
【００１９】
ここで、参考として、一般的に使用される従来のＳＡＤ手法とＮＣＣ手法とについて紹介する。
一般的なＳＡＤブロックマッチング評価手法について
一般的に行なわれるＳＡＤブロックマッチングは、連続する過去と現在の２枚の画像について、まず、元画像の検査対象となる画素［i、j］を設定し、現在の画像で対応する画素［i、j］および周囲の画素［i＋Δi、j＋Δj］での輝度変化を絶対値差分（ＳＡＤ）で計算評価して、物体の移動前の位置と移動後の位置を推定する手法である。
また、信頼性を確保するために、検査対象画素［i、j］の周囲の画素を含めたＮｘＮ個のブロック単位で画素の変化を計算し、ブロック内に映る物体の移動を１つの探索対象として推定するため、「ブロックマッチング」と呼称される。
ここでは、図３のマッチング対象比較画像及び探索位置の例を示す図を開示するとともに、図４のブロックマッチングによるオプティカルフロー検出結果例と検出フロー方向識別色を示す図を開示する。
ブロックマッチングの探索対象となるブロックの間隔は任意に設定可能である。
ここでは、図５のブロックマッチングの探索対象となるブロック間隔０、５、１０、１５を示す図を開示する。
【００２０】
そして、ブロックマッチングに関する評価値を、以下の数式１のように表すことができる。
【数１】
2013084140.tif 000003
ここで、Δi、Δjをそれぞれで
−Ｍ／２  ≦  Δi  ≦  Ｍ／２
−Ｍ／２  ≦  Δj  ≦  Ｍ／２
で変化させ、ＳＡＤ（ｉ＋Δｉ、ｊ＋Δｊ）が最小となる位置をマッチング一致点、そのときのブロック中心［i、j］を始点、一致点［i＋Δi、j＋Δj］を終点として結ぶ直線が一般的にオプティカルフローと呼ばれるフローとなり、これは画面内の物体の移動方向・移動量を示唆する。
式からＳＡＤによるブロックマッチングの計算量はブロックサイズＮ、探索する範囲Ｍにて画索を参照する回数に比例することが伺える。
比較する２画像についてのブロック間ＮＣＣ比較評価でＮｘＮ回および探索位置（オフセット位置での評価）でＭｘＭ回、計（ＮｘＭ）２通りの計算が必要と考えられる。
【００２１】
ブロックマッチング処理を行なえば、各検査対象に関する移動前後の位置の推定結果を得ることができるが、そのままでは路面・上空背景などの特徴量の少ない領域と移動を行なった物体の区別をつけることができない。
通常、これらはＳＡＤ評価値の下限に閾値を設けることで下図のように移動する物体と背景等を切り分けることができる。
図６のＳＡＤの一致度閾値なし、３００以上抽出、６１０以上抽出を示す図を開示する。
【００２２】
更に、移動方向が明らかである場合は、検出したオプティカルフローの長さや方向（角度）から、さらに有効なフローを選別することができる。
例えば、バックアイカメラで走行中の自車の後方を監視し、接近車を検出する装置などでは、特開２０００−１６８４４２や特開２００８−９７１２６等で紹介されるように、無限遠点（「ＦＯＥ」ともいう。）から対象オプティカルフロー始点を結ぶ方向とオプティカルフロー自体の方向を確認し、背景と接近物体を区別することができる。
【００２３】
参考までに以下に記載する。
（１）ここでＳＡＤ評価を以下のように変形したものを「ＳＳＤブロックマッチング」と呼ぶ。
（２）その他、処理内容はＳＡＤ評価法と同等に取り扱うことが出来る。
（３）ＳＳＤは一般的にＳＡＤよりも輝度変化に関する感度が二乗で示される分大きく、使用する装置・環境等の場合によって通常のＳＡＤより有効なケースがある。
【００２４】
【数２】
2013084140.tif 000004
【００２５】
ＳＡＤブロックマッチング法の課題
課題（１）ノイズ・外乱の影響に関する耐性の低さ
通常、ＳＡＤブロックマッチング検出処理から検出されたフローに関してＳＡＤ評価値の結果から判別するのが一般的である。
しかしながら、車両に搭載したカメラ等で外部周辺の確認を行なう装置など、システムの使用環境が屋外である場合、日照条件等の環境変化、路面からの反射光、また走行中であれば構造物の影などカメラの画像には外乱が加わり、画像全体あるいは局所領域に必ず輝度の変化が発生する。
また、これら外乱にはカメラの機械的・電気的なノイズがさらに加味される。
よって、背景と移動物体を切り分けるＳＡＤ評価の閾値は常に変動することを考慮しなければならない。
しかしながら、車両に搭載したカメラ等で外部映像を撮影する場合、使用環境の変化は不可避であるため、判別閾値を定数で設定することは非常に困難である。
よって、入力画像輝度の変化に応じて、画像補正を行う、あるいは閾値を動的に最適な値に切り替え調整する等の対応が必要であると考えられる。
しかしながら、多様な使用環境の変化に柔軟に対応できるアルゴリズムの開発・実装は非常に困難である。
同じ２枚の画像を比較する場合について、元の画像に人工的なノイズを付加した場合の結果を、図７に開示する。
仮に、前述の図のように外乱が画面全体に一様に分布する場合であれば、画像全体の輝度平均値やＳＡＤ評価の閾値を動的に使用することで対応できるが、図８のように外乱が局所的に分布する場合は対応困難である。
【００２６】
課題（２）窓問題による繰り返しパターンの影響
先に紹介した無限遠点（「ＦＯＥ」）から対象オプティカルフロー始点を結ぶ方向とオプティカルフロー自体の方向を確認し、背景と接近物体を区別する手法について、移動方向と平行な白線（道路区画線）、あるいは路肩の防音遮壁・建造物等の直線成分に関しては、ブロックマッチング固有の課題として窓問題（aperture problem）による影響でこの識別法が上手く機能できないケースが発生する。
つまり、接近方向と離反方向が図９の位置関係となる。
このようにそれぞれの配置が直線関係となる場合、一致度も類似する値となる。
よって、フローの向きでも一致度でも特定できない状態で誤検出されてしまう。
図１０に移動前及び移動後を示す図を開示する。
直線成分を持つ対象上に位置するブロックでは、一致度スコアが同じ対応点が複数発生するため移動方向（フロー）の特定が困難である。
図１１に道路白線の検出結果を示す図を開示する。
特開２００８−９７１２６のように歪を補正した画像に関してマッチング処理を行なう場合は、補正をしない画像上、曲線で映る道路白線などが補正されて直線成分が強調される。
よって、繰り返しパターンによる影響を、顕著に受ける恐れがある。
さらに、これら影響は、特開２００８−９７１２６、特開２０００−１６８４４２のように検出したフローの集まりを評価単位とし、そのグループを示すサイズ等で物体を特定するような手法では、白線部に集中する誤検出の集まりが接近車両と誤判別される要因となりうる。
図１２にＦＯＥ内積判定処理前とＦＯＥ内積判定処理後との歪補正画像に関するＳＡＤ処理結果を示す図を開示する。
【００２７】
一般的なＮＣＣブロックマッチング評価手法について
ＮＣＣブロックマッチングは、先にあげたＳＡＤブロックマッチングに関する「課題（１）ノイズ・外乱の影響に関する耐性の低さ」への対策として有効な手法の一つであると考えられる。
ＮＣＣブロックマッチングでは、検索対象となる画素およびその周囲の画素ＮｘＮ個をＮｘＮ次元のベクトルとして取り扱う。
また、各ベクトルを長さで割り正規化することで、周辺の画素に対する外乱を含めた輝度変化をブロック内平均値で相殺することで外乱成分による影響を緩和することができる。
【００２８】
ＮＣＣブロックマッチングに関する評価値を、数式３のように表すことができる。
【数３】
2013084140.tif 000005
ここでΔi、Δjをそれぞれで
−Ｍ／２  ≦  Δi  ≦  Ｍ／２
−Ｍ／２  ≦  Δj  ≦  Ｍ／２
で変化させ、ＮＣＣ（ｉ＋Δｉ、ｊ＋Δｊ）が最大となる位置をマッチング一致点、そのときのブロック中心［i、j］を始点、一致点［i＋Δi、j＋Δj］を終点として結ぶ直線がオプティカルフローと呼ばれるフローとなり、同様に画面内の物体の移動を示唆する。
さらにＮＣＣ評価ではＮ２ブロック内の画素についてＮ２次元のベクトルとして取り扱い、ブロックを構成するＮ２次元の単位ベクトル内積にて一致度評価を行なう。
よって、ＮＣＣ評価値は、特に後述の「ＳＡＤ評価課題（２）」の対策に有効な効果を得ることができる。
数式３から伺えるよう評価値の最大は１．０、最小値は−１．０となる。
【００２９】
但し、ブロック内の輝度平均を毎回求めるための計算に関しては、ブロック内平均輝度計算のため、ブロック内参照回数が追加される。
オプティカルフロー検出のためには比較する２画像についての、それぞれのブロック内平均輝度の計算でＮｘＮ回、ブロック間ＮＣＣ比較評価でＮｘＮ回および探索位置（オフセット位置での評価）でＭｘＭ回、計（２ｘＮ２ｘＭ２）通りの計算が必要と考えられる。
【００３０】
ＮＣＣブロックマッチング処理を行なう場合でも、そのままでは路面・上空背景などの特徴量の少ない領域と移動を行なった物体の区別をつけることができない。
通常、これらはＮＣＣ評価値の上限に閾値を設けることで、図１３のように移動する物体と背景等を切り分けることができる。
ＮＣＣの場合、先に紹介したように外乱の影響をブロック内輝度平均値による正規化効果で相殺できるので、ＳＡＤに対して一様な外乱の場合でも、局所的な外乱の場合でも柔軟に対応できる。
ここで、図１４のノイズ付加前、一様ノイズ（元輝度＋１０）付加、一様ノイズ（元輝度−１０）付加を示す図を開示する。
ＮＣＣの場合、図１５のように外乱が局所的に分布する場合でも柔軟に対応可能である。
【００３１】
参考までに以下に記載する。
（１）ここでＮＣＣ評価法と同様、他にもＺＳＡＤやＺＳＳＤ等のブロック内輝度平均値を原点０と見立てて評価を行うマッチング法等が知られている。
（２）これら処理に関しても、ブロック内輝度平均の計算追加のため、オプティカルフロー検出のためには計（Ｎ×ＮＸＭ）２通りの計算が必要と予測される。
（３）ＺＳＡＤやＺＳＳＤの評価は、通常のＳＡＤと同様に、評価値が探索範囲内で最小となる位置を一致点として判断する。
【００３２】
【数４】
2013084140.tif 000006
【００３３】
ＮＣＣ手法に関する課題
課題（３）窓問題による繰り返しパターンの発生
先のＳＡＤ評価法の中で取り上げた課題であるが、ブロックマッチングをべ一スとする限り、ＮＣＣといえども窓問題の影響を緩和する能力は持ちえておらず、繰り返しパターンがその後のオプティカルフローに基づく処理に影響を与えるのであれば、そのまま、特開２００８−９７１２６等へ応用するのは困難である。
よって、白線検出など別途手段による後処理判定等、何らかの追加対策処理を組み合わせる必要がある。
【００３４】
課題（４）ＮＣＣにおける計算コストの増大
ＮＣＣなどブロック内の輝度平均値をゼロベースと見立てた処理では、ＮｘＮ回分の平均値計算が追加される。
さらに、平均化処理のために除算計算が必要となる。
通常、四則演算の回路処理の場合、除算計算は他の加・減・乗算に比べ数倍の計算を必要とするため、処理が遅くなる。
特に、ＮＣＣではマッチング探索１回につき、ｃｏｓによる正規化評価を行なうため、さらに計算負荷の高い分母の√計算が必要となる。
ＮＣＣでは、ｃｏｓによる正規化評価を行なうため一致度評価値は±１の範囲となる。
この範囲で精度良く作業を行なうには、浮動少数回路の導入あるいは有効桁数を調整し、大きな桁での整数計算が必要となるので、より高級な演算回路やメモリが必要となり、コストはＳＡＤ等と比較して増大する。
【００３５】
提案処理について
前述まで例に挙げたとおり、外乱の影響に対する耐性を強化し精度を維持するためには、ＮＣＣブロックマッチング手法が有効であるが、演算回路・メモリ追加など計算コストの増大が懸念される。
よって、通常のブロックマッチング処理中に、平行して背景とその他オブジェクトを切り分ける処理を行なうことで、コストの増大を抑えノイズ耐性を強化したオプティカルフローの変則評価手法を提案する。
この処理の特徴を以降抜粋する。
評価は設定した探索範囲に対し、対象検査ブロックの中心より外側に向かい捜査を行なうスパイラル探索手順を基本にマッチング処理を実施する。
但し、探索順序には以下の規則を追加する。
（１）スパイラル探索に基づき下図のように中心［０］からの連番に対応した分、現画像の原点をシフトして元画像とのマッチング処理を行なう。
（２）探索の優先順位に関しては、参照図として図１６を挙げる。
次に判別用に次の緒言について固定閾値を設定する。
（３）更新前の評価値と現行位置での評価値の差分闘値の設定。
マッチング探索処理については以下の手順で行なう。
（４）ブロック中心［i、j］画素から外側方向へ設定手順どおりの探索を開始する。
探索時にマッチング探索シフト量より発生するフローの長さが評価起動用フロー長より短い位置である場合は、従来と同じ評価手順で処理を行なう。
マッチング探索により発生するフローの長さが評価起動用フロー長を超える位置を超過する場合。
（５）前回の位置でのマッチング評価値と今回の評価値の差が大きく変動（差分閾値を超過）する場合、従来処理通りの手順で評価を行なう。
即ち、探索位置［Δi、Δj］＝［Δi１、Δj１］で一致度が向上する場合は、オプティカルフロー［Ｆｗｘｉ、Ｆｗｙｊ］を［Ｆｗｘｉ、Ｆｗｙｊ］＝［ＦｗｘΔｉ１、ＦｗｙΔｊ１］で更新し、あわせて保持している一致度評価値を更新する。
一致度が低下する場合は、次の探索位置［Δi、Δj］＝［Δi３、Δj３］での評価に移行する。
【００３６】
前回の位置でのマッチング評価値と今回の評価値の変動差が小さい（±で差分閾値以下）場合、前回の探索までに取得したフローと現在探索位置で発生するフローについて次の式によりフロー内角に関して内積評価法を行なう。
例えば、現時点の最一致箇所が［Δi、Δj］＝［Δi１、Δj１］、探索中の地点が［Δi、Δj］＝［Δi２、Δj２］である場合、
【数５】
2013084140.tif 000007
あるいは、次式のように純フロー内積値による判定でも使用可能である。
【数６】
2013084140.tif 000008
【００３７】
※  今提案の場合、計算コスト削減による高速化あるいはハードウェア化を主題とするので、フロー簡易内積による判定法を提案するものであるが、純フロー内積に関する解釈でも技術的に可能であるので紹介する。
また、純フロー内積判定闘値がｃｏｓ（１５〜９０deg）の場合、それぞれの結果に関しては大きな違いは発生しない。
よって、フロー簡易内積評価でも要求精度を確保できると推定される。
ここで、図１７の純フロー内積  閾値ｃｏｓ（１５ｄｅｇ）及び簡易フロー内積による判定［純フロー内積  閾値ｃｏｓ（９０ｄｅｇ）］を示す図を開示する。
また、図１８の純フロー内積  閾値ｃｏｓ（１２０ｄｅｇ）を示す図を開示する。
【００３８】
前式によりフロー簡易内積評価値が０以下（＝フロー内角が９０度以上）となる場合
（６）フローに関して・・・
検出したフロー［Ｆｗｘｉ●、Ｆｗｙｊ●］をＸ、Ｙ方向それぞれの成分を（Ｍ＋１）倍した、［（Ｍ＋１）Ｆｗｘｉ●、（Ｍ＋１）Ｆｗｙｊ●］で、探索中のフロー［Ｆｗｘｉ、Ｆｗｙｊ］を更新する。
※  純内積評価で判定を行なう場合は、別途内積判別閾値の追加が必要である。
例：純フロー内積評価値が設定した閾値ｃｏｓ（３０°）以下の場合は許可
（７）一致度に関して・・・
この［i、j］位置におけるマッチング評価値を差分評価値等の値を減算（ＮＣＣのときは加算）して、評価値を一致方向に向上するよう更新する。
※  Ｍ＋１倍とするのは、［i、j］位置がフローの方向成分を変えずにフロー長さから無効箇所であることを判別できる設定であるため。
【００３９】
以上の評価規則に沿って、基点［X、Y］＝［i、j］を中心に探索範囲Ｍ２以内でマッチング処理を繰り返す。
全ての探索位置でマッチング処理を完了した場合、背景となる箇所については、以下の条件で判断し誤検出フローを除去する。
（８）上記の（７）に関する操作が適用され、フローの長さが探索範囲Ｍを超えるものは誤検出箇所と判断する。
（９）上記の（７）に関する操作が適用され、判定結果値が異常値（ＳＡＤなら０以下、ＮＣＣなら１．０以上）となる位置は、誤検出箇所と判断する。
【００４０】
［手順（６）以降に関する別解］
一致度差分評価値が、小さく向きが不ぞろいなフローが検出された［i、j］位置において、装置が検出したフロー［Ｆｗｘｉ、Ｆｗｙｊ］をＭ＋１倍するだけのメモリを確保できない場合、画像と同じサイズの記録バッファを用意し、フラグを立てる。
フロー［Ｆｗｘｉ、Ｆｗｙｊ］は［Ｆｗｘｉ●、Ｆｗｙｊ●］で更新する。
つまり、フラグ用の記録バッファを利用することで、マッチング各段階での保持するフローの方向成分を失うことなく次回のフロー内積判定に利用できる。
次点以降のマッチング処理に際し、手順（５）による大幅な一致度評価値更新があった場合、従来処理通りの手順でフローとスコア値の更新を行なうと共に、フラグをリセットする。
本手法を実践する場合、ブロックマッチングの探索順序をスパイラル探索に基づきブロック中心から次第に外へと進めていく手法が好ましい。
これは、検出する順位をブロック中心に隔てなく変化させ発生するフロー方向を常に変化させることで、変化の探索順位の拘束条件に基づく誤検出を回避できるためである。
一般的に行なわれるよう、ブロックの探索を左上から右下へと探索を行なう場合、探索方向が偏ってしまい柔軟に周囲の検出フローの評価を行なう際の支障となる場合が考えられるためである。
以下の参照図である図１９のように、いずれの場合もスパイラル探索の有効性が確認できる。
【００４１】
提案特許の効果にする解説
（１）フローの内積差分判断について
通常、オプティカルフロー検出処理から検出されたフローに関して検出フローの精度を判定する場合、検出したマッチング一致度の結果に閾値を設定し判別するのが一般的である。
しかしながら、車両に搭載したカメラ等で外部周辺の確認を行なう装置など、システムの使用環境が屋外である場合、日照条件等の環境変化、路面からの反射光、また走行中であれば構造物の影などカメラの画像には外乱が加わり、画像全体あるいは局所領域に必ず輝度の変化が発生する。
また、これら外乱にはカメラの機械的・電気的なノイズがさらに加味される。
路面等、背景には関しては形状の判別ができないため、対象ブロック周辺で複数の一致度の類似箇所が発生する。
これら類似箇所は設定するブロックのサイズにもよるが、通常以下のような状態で発生すること
が伺える。
ここで、図２０の道路の点Ａ〜Ｃを示す図を開示する。
上図についてシフト（オプティカルフロー）位置と対応した検出したＳＡＤ一致度を、以下の図２１〜図２３に点Ａ〜Ｃまでの相関表で示す。
【００４２】
通常のブロックマッチングではまず指定された点を中心にＮｘＮのサイズの中で該当評価計算式に沿い一致度を算出する。
次に、画像原点をシフトした現画像と元画像を比較し、同様にスコアを計算する。
より一致度が高い箇所が検出された場合、シフト量を記録更新する。
処理を探索範囲ＭｘＭの中で繰り返し実行し、最も一致度を指すシフト量をオプティカルフローとして取り扱う。
しかしながら、前述の点Ｂ、点Ｃのような箇所については、例え一致度が優れていても、その値が他のシフト位置より突出していない。
他にも類似するスコアを持つ位置が多数存在する。
このような状態で取得したオプティカルフローからは要求される信頼性を確保できない。
【００４３】
よって、本手法では、類似する一致度同士の差は小さいことを利用し、一致度と検出された一致度を比較計算する際の差分値に対して閾値条件を設定する。
一致度の差分値が閾値以下となる箇所が確認された場合、その該当位置で検出されたフローＡ（元シフト量）と、直前までのシフト位置で計測したフローＢ（現シフト量）による一致度スコアを確認する。
差分値を確認し一致度スコアが大きく改善している場合は、そのまま従来どおりの処理を進める。
さらに一致度スコアの更新量が小さい場合は、フローＡ／Ｂ同士について（簡易）内積評価を起動し、ブロック周辺のフロー方向の内積を評価する手法を組み合わせる。
【００４４】
内積が不一致と判別された場合は、フロー情報をＭ＋１倍しオーバーフローが発生した箇所として、フローの方向性を維持したまま、背景と疑わしい箇所と識別できる状態とする（あるいは、記録フラグを立てる。）。
また、一致度が大幅に改善された場合は、保持しているフローを通常の値に更新し、オーバーフローの情報をリセットすることで再び移動体の検出を行なう状態に復旧する。
【００４５】
特徴量の豊かなブロック位置では、静止であろうと移動であろうと類似する一致度が発生する箇所は、周囲の一致度と比較し非常にユニークで限定的なスコアを発するので、通常のＳＡＤ処理等でも信頼性の高いフローを取得することができる。
標準的な特徴量しか持ち合わせないブロック位置でも移動する物体を示すブロックでは、移動に沿った方向に沿って他の方向より優れた一致度を持つ傾向となり、結果、向きのほぼ揃ったフローを発する確率が高い。
よって、フローの内積評価を繰り返すことで検出されるフローは、次第に他の方向を向くフローを排除しながら、同じ移動方向に沿ったフロー同士による一致度の選抜評価を行なう方向へ機能していく。
また、路面・背景等に関しては周辺で類似する一致度を持つが方向が異なるフローが複数回検出されるため、次第に保持するフローがオーバーフロー情報を保持する傾向へ移行する。
これは特徴量に乏しいブロック位置でも同様に機能する。
【００４６】
本手法によれば、フローを各探索位置での評価毎に評価するため、対象ブロック近傍のフローに関して、「同程度の一致度を持ち」、「同一方向を示すフローが集まっているか」どうかの判定を通常のブロックマッチング処理に加えて並行して実施することができ、特別な前処理や後処理を必要としないため、より高速に効率良く信頼性の低いフローを結果出力から排除することができる。
よって、点Ａにて発生するフローは許可し、点Ｂ／Ｃに発生するフローを排除できる。
【００４７】
特に、簡易内積評価にてフロー内積を９０度以上の直・鈍角か９０度未満の鋭角かの２値で判定し、鋭角側のフロー群を有効評価可能としたグループ単位で内積変化を評価するならば、ＮＣＣ等で求められる除算処理・正規化処理等が不要であり、加減乗算の組み合わせのみで対応できるので、ＦＰＧＡ等のハードウェア化に適する手法と判断できる。
【００４８】
（２）フローの内積差分判断を一致度差分にて起動する手法について
さらに本手法は、一致度の差分評価値を評価基準の主体とするため特にＳＡＤやＳＳＤべ一スのブロックマッチングのように日照条件等の環境・機械的電気的ノイズ等の外乱による局所領域の輝度変化に対して検出精度が低下する事例に関して非常に有効な手段であると考えられる。
つまり、外乱により局所領域的に輝度変化が発生した際、影響は周囲全てのマッチング探索位置に均等に影響することを考慮すれば、その評価を各ブロック単位での一致度差分として扱うことで、外乱による輝度変化の影響を回避可能であり、ブロックサイズＮに比例した固定の差分閾値で安定した評価を実現することができる。
また、ブロックマッチング作業時に生じる窓問題に関しても、逆向きに一致するフローの評価により若干の改善効果を得ることができる。
【００４９】
以下にマッチング処理の際に内部機能する効果を例にとり、本提案手法による有効性を示す。
ノイズがない場合のＳＡＤ評価
【数７】
2013084140.tif 000009
例えば、閾値ＴｈｒＳＡＤより低い箇所を背景と判別する場合を取り上げる。
次画像ＩＭＧ２にΔεの外乱の影響が入った場合のＳＡＤ（今回は探索範囲内ＭｘＭ内で均等ノイズとする）
【数８】
2013084140.tif 000010
ＳＡＤ（ｉ＋Δｉ、ｊ＋Δｊ）に関して外乱により発生したεＮ２の値が、閾値ＴｈｒＳＡＤより大きい場合、この探索位置は背景ではなく、対象であると判別される。
通常閾値の値ＴｈｒＳＡＤを設定する際は、余裕度を持って設定しなければならないが、検出精度を確保しようと試みる場合、閾値の幅をあまりに広く設定する方法は好ましくない。
代理の手段としてはεＮ２の影響を画質改善ＩＭＧ２から除去する、あるいはεＮ２の大きさを確認してＴｈｒＳＡＤを動的に調整しなければならないが、例えば、εＮ２が局所領域的に発生する場合、εＮ２の影響を受ける探索位置に応じて、これらの補正処理を切り替える作業は非常に負担の大きな処理となりかねない。
次画像ＩＭＧ２にΔεの外乱の影響が入った場合のＮＣＣ（同様に探索範内ＭｘＭ内で均等ノイズとする）
先の記述に沿って外乱εが探索範囲内のブロックに影響すると考えた場合、εＮ２による次画像ＩＭＧ２で探索範囲内ブロックが受ける影響はブロック内輝度平均による調整項の差分で回避できる。
【数９】
2013084140.tif 000011
【００５０】
本提案の場合
例えば、閾値ＴｈｒＳＵＤより低い箇所を類似一致箇所と判別する場合を取り上げる。
【数１０】
2013084140.tif 000012
本提案の場合、差分による評価を行なうため、周囲のブロックに対する外乱εＮ２の影響は相殺されるので、固定の閾値でも判別処理が可能である。
よって、マッチング探索ごとにＴｈｒＳＵＤの評価を行い、一致度スコアが類似であると判別されるたびにフロー方向を参照し、向きが相反するフローが検出された場合を背景としてチェックしていけば、結果的に類似方向を示す対象、すなわち特徴量を持つ物体だけを移動物体として背景等、他の要素と分類して抽出することができる。
【００５１】
（３）繰り返しパターンによる影響の軽減効果
例えば、ＦＯＥとフロー始点を結ぶ直線と検出したフローの内積による接近物体の識別について、道路白線部などに繰り返しパターンにより接近・離反の方向検出が困難な誤検出が発生することを取りあげた。
さらに、この状態における接近と離反の相反するフローを示す該当探索箇所では、一致度が近いことも記した。
本手法では、一致度が近い故にこのような状況の探索箇所の存在がフローの内積評価で明らかとなる。
よって、繰り返しパターンの軽減に効果を与える。
例えば、特開２０００−１６８４４２、特開２００８−９７１２６等のように密集して発生するフロー１群を単位とし、近傍のフローグループの集まりの大きさで接近物体の存在を確認する処理に併用すれば、白線箇所で密集する誤検出の集まりが小さくなる、あるいは細分化されるため、より精度の高い接近物体検出効果を得ることができる。
例えば、このような状況は効果説明（１）の点Ｃ項に該当するものと考えることができる。
ここで、図２４のＦＯＥ内積判定処理前及びのＦＯＥ内積判定処理後のＳＡＤベースブロックマッチング結果を示す図を開示する。
【００５２】
（４）多様なブロックマッチングへの応用
本手法は、特別な前処理・後処理をブロックマッチングに追加するのではなく、マッチング途中の処理段階でそれぞれの処理に並行するよう組み合わせて使用できる。
よって、用途はＳＡＤのみではなく、ＳＳＤ・ＮＣＣ等の他のブロックマッチング処理についても有効である。
例えば、図２５及び図２６の例では、白線位置に発生する繰り返しパターンによる誤検出の減少効果を得ることができる。
【００５３】
次に、図１の前記オプティカルフロー検出装置１の制御用フローチャートに沿って作用を説明する。
【００５４】
このオプティカルフロー検出装置１の制御用プログラムがスタート（１０１）すると、ＭｘＭ個の指定オフセットテーブル（１０２ｂ）から探索順位と該当オプティカルフローの序列を作成し、データテーブル化する（以下、「序列テーブル（１０２ａ）」という。）処理（１０２）に移行する。
この処理（１０２）の後には、スコアを記録する画像と同幅・高さのメモリを用意し、初期化する（以下、「スコアバッファ」という。）処理（１０３）に移行する。
そして、処理（１０３）の後には、フローを記録する画像と同幅・高さのメモリを用意し、初期化する（以下、「フローバッファ」という。）処理（１０４）に移行する。
この処理（１０４）の後に、作業開始の処理（１０５）を経て、画像ＩＭＧ１取得の処理（１０６）、及び、画像ＩＭＧ２取得の処理（１０７）を行い、前記序列テーブル（１０２ａ）の現位置はＭｘＭ個を超過したか否かの判断（１０８）に移行する。
この前記序列テーブル（１０２ａ）の現位置はＭｘＭ個を超過したか否かの判断（１０８）において、判断（１０８）がＹＥＳの場合には、オプティカルフロー決定の処理（１０９）に移行し、判断（１０８）がＮＯの場合には、前記序列テーブル（１０２ａ）よりＮ回目のシフト量［ΔiＮ、ΔjＮ］を取得する処理（１１０）に移行する。
上述のオプティカルフロー決定の処理（１０９）の後には、後処理（１１１）を行う。この後処理（１１１）においては、フローを基本とした装置機能を提供する。
そして、この後処理（１１１）の後には、画像ＩＭＧ１と画像ＩＭＧ２とをスワップ（交換）し、次の動画処理の準備を行う処理（１１２）に移行し、上述した画像ＩＭＧ２取得の処理（１０７）に戻る。
また、上述した前記序列テーブル（１０２ａ）よりＮ回目のシフト量［ΔiＮ、ΔjＮ］を取得する処理（１１０）の後には、画像ＩＭＧ２の原点を［ΔiＮ、ΔjＮ］分シフトする処理（１１３）に移行する。
この画像ＩＭＧ２の原点を［ΔiＮ、ΔjＮ］分シフトする処理（１１３）の後には、画面全体、全ての画素を探索できたか否かの判断（１１４）に移行する。
この画面全体、全ての画素を探索できたか否かの判断（１１４）において、判断（１１４）がＹＥＳの場合には、上述した前記序列テーブル（１０２ａ）の現位置はＭｘＭ個を超過したか否かの判断（１０８）に戻り、判断（１１４）がＮＯの場合には、次のマッチング確認位置（検索中心）を画素［i、j］の指示点に設定する処理（１１５）に移行する。
そして、この次のマッチング確認位置（検索中心）を画素［i、j］の指示点に設定する処理（１１５）の後には、評価式はＮＣＣ・ＺＳＡＤ等であるか否かの判断（１１６）に移行する。
この評価式はＮＣＣ・ＺＳＡＤ等であるか否かの判断（１１６）において、判断（１１６）がＹＥＳの場合には、先に指示点［i、j］およびその周囲［i+u、j+v］の合計ＮｘＮ個の画素についてブック内輝度平均値を求める処理（１１７）に移行し、その後に、指示点［i、j］およびその周囲［i+u、j+v］の合計ＮｘＮ個の画素について評価式にそって一致度スコアを計算する処理（１１８）に移行する。
また、判断（１１６）がＮＯの場合には、そのまま指示点［i、j］およびその周囲［i+u、j+v］の合計ＮｘＮ個の画素について評価式にそって一致度スコアを計算する処理（１１８）に移行する。
そして、この処理（１１８）の後には、計算した一致度スコアはスコアバッファの［i、j］位置に記録されたスコアと差分値（「絶対値」）を計算する処理（１１９）に移行する。
この処理（１１９）の後には、一致度スコアの差分値は大きく変化しているか否かの判断（１２０）に移行する。
この一致度スコアの差分値は大きく変化しているか否かの判断（１２０）において、判断（１２０）がＹＥＳの場合には、計算した一致度スコアはスコアバッファの［i、j］位置に記録されたスコアよりも優れているか否かの判断（１２１）に移行し、判断（１２０）がＮＯの場合には、現在のフロー［Δi、Δj］とフローバッファ［i、j］の記録値でフローの内積評価を行う処理（１２２）に移行する。
そして、この処理（１２２）の後には、フローの内積評価によりそれぞれのフローの内角の差は、条件を満たすか否かの判断（１２３）に移行する。
このフローの内積評価によりそれぞれのフローの内角の差は、条件を満たすか否かの判断（１２３）において、判断（１２３）がＹＥＳの場合には、上述した計算した一致度スコアはスコアバッファの［i、j］位置に記録されたスコアよりも優れているか否かの判断（１２１）に移行する一方、判断（１２３）がＮＯの場合には、以下の処理（１２４）を行った後に、上述した画面全体、全ての画素を探索できたか否かの判断（１１４）に戻る。
ここで、処理（１２４）の内容を列記する。
（１）フローバッファ［i、j］へ［（Ｍ＋１）Δi、（Ｍ＋１）Δj］の値を記録する。
（２）スコアバッファの［i、j］位置に記録されたスコアをより厳しい方向へ更新する。
（例えば、ＳＡＤであれば、半分にする等）
※  別解を使用するならば、
（１）フローバッファ［i、j］への登録値は［Δi、Δj］で行う。
（２）画像と同サイズのフラグバッファを用意し、フラグバッファ［i、j］の内角違反を記録する。
そして、上述した計算した一致度スコアはスコアバッファの［i、j］位置に記録されたスコアよりも優れているか否かの判断（１２１）において、判断（１２１）がＹＥＳの場合には、スコアバッファの［i、j］位置へ先ほど計算した一致度スコアを記録する一方、同様に、フローバッファの［i、j］位置へシフト量［ΔiＮ、ΔjＮ］を記録する処理（１２５）を行った後に、別解を使用しているならば、フラグバッファ［i、j］の内角違反をクリアする処理（１２６）を行い、その後に、上述した画面全体、全ての画素を探索できたか否かの判断（１１４）に戻る。
また、計算した一致度スコアはスコアバッファの［i、j］位置に記録されたスコアよりも優れているか否かの判断（１２１）がＮＯの場合には、そのまま画面全体、全ての画素を探索できたか否かの判断（１１４）に戻る。
【００５５】
なお、この発明は上述実施例に限定されるものではなく、種々の応用改変が可能である。
【００５６】
例えば、この発明の実施例においては、車両の周辺の移動障害物の危険度判定等の自動支援技術や、その他のロボットアイ等、マシンビジョンに基づく移動体検出技術などに応用することが可能である。
【符号の説明】
【００５７】
１  オプティカルフロー検出装置
２  マッチングスコア算出手段
３  マッチングスコア差分算出手段
４  マッチングスコア差分判定手段
５  フロー内積算出手段
６  フロー内積評価手段
【図１】
2013084140.tif 000013
【図２】
2013084140.tif 000014
【図３】
2013084140.tif 000015
【図４】
2013084140.tif 000016
【図５】
2013084140.tif 000017
【図６】
2013084140.tif 000018
【図７】
2013084140.tif 000019
【図８】
2013084140.tif 000020
【図９】
2013084140.tif 000021
【図１０】
2013084140.tif 000022
【図１１】
2013084140.tif 000023
【図１２】
2013084140.tif 000024
【図１３】
2013084140.tif 000025
【図１４】
2013084140.tif 000026
【図１５】
2013084140.tif 000027
【図１６】
2013084140.tif 000028
【図１７】
2013084140.tif 000029
【図１８】
2013084140.tif 000030
【図１９】
2013084140.tif 000031
【図２０】
2013084140.tif 000032
【図２１】
2013084140.tif 000033
【図２２】
2013084140.tif 000034
【図２３】
2013084140.tif 000035
【図２４】
2013084140.tif 000036
【図２５】
2013084140.tif 000037
【図２６】
2013084140.tif 000038
【図２７】
2013084140.tif 000039