(57)【要約】      （修正有）【課題】高速に処理を実現できるとともに、実現時のハードウェア規模を削減することのできる形状認識装置を提供する。【解決手段】特定の形状を認識する形状認識装置１０は、入力画像フレーム１０１から特定の形状を認識するための処理を行うリコンフィギュアラブル・デバイスで構成されるリコンフ部１１と、リコンフ部１１に入力画像フレーム１０１に含まれるエッジを検出するエッジ検出回路を構成させるためのエッジ検出回路構成情報１３０１、特定形状を検出する形状検出回路を構成させるための形状検出構成回路情報１３０２、及び特定形状の特徴を識別する形状識別回路を構成させるための形状識別回路構成情報が記憶された構成情報メモリ１３と、入力画像フレーム１０１ごとに、構成情報メモリ１３から少なくとも１の構成情報を読み出して、当該読み出した構成情報に対応する回路をリコンフ部１１に構成させる制御ＣＰＵ部１２とを備えている。【選択図】図１
2011242915.tif 000002
【特許請求の範囲】
【請求項１】
画像フレームから特定の形状を認識する形状認識装置であって、
画像フレームから特定の形状を認識するための処理を行うリコンフィギュアラブル・デバイスと、
前記リコンフィギュアラブル・デバイスに前記画像フレームに含まれるエッジを検出するエッジ検出回路を構成させるためのエッジ検出回路構成情報、前記リコンフィギュアラブル・デバイスに前記画像フレームに含まれる特定の形状を検出する形状検出回路を構成させるための形状検出構成回路情報、及び前記リコンフィギュアラブル・デバイスに前記特定の形状の特徴を識別する形状識別回路を構成させるための形状識別回路構成情報を含む構成情報が記憶された構成情報メモリと、
前記画像フレームごとに、前記構成情報メモリから前記構成情報のいずれかを読み出して、当該読み出した構成情報に対応する回路を前記リコンフィギュアラブル・デバイスに構成させる制御部と、
を備えたことを特徴とする形状認識装置。
【請求項２】
前記制御部は、ある画像フレームに対する処理のために、前記リコンフィギュアラブル・デバイスに前記形状検出回路を構成させた後、当該形状検出回路にて当該画像フレームから前記特定の形状が検出できた場合は、次に当該画像フレームに対する処理のために前記リコンフィギュアラブル・デバイスに前記形状識別回路を構成させ、該形状検出回路にて前記画像フレームから前記特定の形状が検出できなかった場合は、次に当該画像フレームの次の画像フレームに対する処理のために前記リコンフィギュアラブル・デバイスに前記エッジ検出回路を維持させることを特徴とする請求項１記載の形状認識装置。
【請求項３】
前記形状検出回路は、
投票メモリと、
前記エッジ検出回路により検出されたエッジ点について、前記投票メモリに対して、当該エッジ点の法線上の対極にある２つの投票点の投票を並行して行う２つの投票処理部と、
前記２つの投票処理部による前記投票メモリに対する投票の結果を集計する開票処理を行って、形状検出結果を得る集計開票処理部と、
を有することを特徴とする請求項１又は２記載の形状認識装置。
【請求項４】
前記形状検出回路は、さらに、
最上方の行から最下方の行へ向かって、前記エッジ検出回路により検出されたエッジ点を認識するエッジ点認識部を有し、
前記投票処理部は、前記エッジ点認識部にて認識されたエッジ点について、所定の投票距離内で投票点の投票を行い、
前記集計開票処理部は、前記エッジ点認識部にて認識されるエッジ点よりも前記投票距離以上の所定の距離だけ前の行から、すべてのエッジ点についての投票処理の終了を待たずに、前記投票処理部による投票処理と並行して、前記開票処理を開始する
ことを特徴とする請求項３に記載の形状認識装置。
【請求項５】
前記投票メモリは、前記投票処理部及び前記集計開票処理部のそれぞれに接続される２ポート構成であることを特徴とする請求項３又は４に記載の形状認識装置。
【請求項６】
前記投票メモリは、少なくとも最大投票空間に相当する行数を有するリングバッファであり、
前記集計開票処理部は、１の前記画像フレームに対する投票処理の進行に応じて、前記リングバッファがカバーする投票空間の最上方の行について開票処理を行い、
前記形状検出回路は、前記リングバッファの、開票処理が終わった行に対応する部分を開放して、当該開放した部分を、前記リングバッファがカバーする投票空間の最下方の行の次の行の投票空間として再利用するように制御する投票メモリ更新制御部をさらに有することを特徴とする請求項４又は５記載の形状認識装置。
【請求項７】
前記投票メモリは、エッジ点の位置に従って複数の種類に分類されており、
前記２つの投票処理部は、それぞれ、前記エッジ検出回路により検出されたエッジ点について、前記複数の投票メモリのうちの前記エッジ点の位置に対応する投票メモリに投票点の投票を行い、
前記形状検出回路は、さらに、前記複数の種類に対応して複数設けられ、それぞれ、前記投票メモリに対する投票の結果を前記投票メモリの種類ごとに集計する複数の投票集計部を有し、
前記集計開票処理部は、前記の複数の投票集計部の集計結果を合算することで、前記開票処理を行う
ことを特徴とする請求項３ないし請求項６のいずれかに記載の形状認識装置。
【請求項８】
前記形状検出回路は、
処理対象となる１の画像フレーム全体についてのエッジ検出情報を保存する１次画像バッファと、
前記１次画像バッファに保存された１画像フレーム分のエッジ検出情報を、重複部分を有する複数の部分に分割して、そのうちの一の部分のエッジ検出情報を読み出す画像バッファ更新制御部と、
前記画像バッファ更新制御部にて読み出されたエッジ検出情報を保存する２次画像バッファとを有し、
前記投票処理部は、前記２次画像バッファに保存されたエッジ点について投票点の投票を行い、
前記画像バッファ更新制御部は、前記投票処理部による投票の処理の進行に応じて、前記１次画像バッファから新たな部分のエッジ検出情報を読み出して前記２次画像バッファに保存することを特徴とする請求項３ないし請求項７のいずれかに記載の形状認識装置。
【請求項９】
前記画像フレーム全体についてのエッジ検出情報は、検出しようとする対象の大きさよりも大きい幅の重複部分を有するように分割されることを特徴とする請求項８に記載の形状認識装置。
【請求項１０】
前記投票メモリは、エッジ点から見た投票点の方向に応じて複数に分けられており、
前記投票処理部は、投票点のエッジ点から見た方向に対応する投票メモリに対して当該投票点の投票を行い、
前記集計開票処理部は、前記投票点が前記複数の投票メモリの何れに投票されたかを考慮して形状検出結果を得ることを特徴とする請求項３ないし請求項９のいずれかに記載の形状認識装置。
【請求項１１】
リコンフィギュアラブル・デバイスを用いて画像フレームから特定の形状を認識する形状認識方法であって、
前記リコンフィギュアラブル・デバイスにエッジ検出回路を構成させるエッジ検出回路構成ステップと、
前記エッジ検出回路構成ステップにて構成された前記エッジ検出回路にて前記画像フレームに含まれるエッジを検出してエッジ検出情報を取得するエッジ検出ステップと、
前記エッジ検出ステップにてエッジが検出された場合に、前記リコンフィギュアラブル・デバイスに形状検出回路を構成させる形状検出回路構成ステップと、
前記形状検出回路構成ステップにて構成された前記形状検出回路にて、前記エッジ検出情報を用いて、前記画像フレームに含まれる前記特定の形状を検出して、形状検出結果を取得する形状検出ステップと、
前記形状検出ステップにて前記特定の形状が検出された場合に、前記リコンフィギュアラブル・デバイスに形状識別回路を構成させる形状識別回路構成ステップと、
前記形状識別回路構成ステップにて構成された前記形状識別回路にて、前記形状検出結果を用いて、前記特定の形状の特徴を識別する形状識別ステップと、
を含むことを特徴とする形状認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像フレームから特定の形状を認識する形状認識装置に関する。本発明は、例えば走行中の車両から撮影して得られた画像フレームからリアルタイムに道路標識を認識する道路標識認識装置に適用できる。
【背景技術】
【０００２】
従来の形状認識装置では、画像フレームから特定形状を認識するにあたって、図１２に示すように、動画を構成する各画像フレームに対して、エッジ検出、形状検出、形状識別等の処理を逐次実施することで認識結果を得ている。
【０００３】
また、形状検出処理の基本アルゴリズムとしてハフ変換を採用する形状認識装置が知られている（例えば、特許文献１参照）。このハフ変換では、例えば、正三角形形状を検出する場合には、図１３に示すように、エッジ検出処理にて検出されたエッジ点について、法線方向に特定距離離れて対称に位置する所定の長さの２本の線分を投票領域とし、すべてのエッジ点に対して１つの投票空間上の投票領域に逐次投票を行う。そして、図１４のように、最終的に投票空間中で投票が予め定めた特定量以上に集中した箇所を、検出すべき特定形状の内接円の中心が存在する箇所の候補として求める。このようなハフ変換を用いることで、正三角形形状以外にも、円形状、四角形状等の任意の形状を検出できる。
【０００４】
画像フレームから特定形状を認識するためのこれらのエッジ検出、形状検出、形状識別等の処理は、すべて逐次実行されるので、簡易な実装方法としては、コンピュータ上にソフトウェアで実現する方法が考えられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】ＷＯ２００８／０１０４８８号公報（第２３頁、第１図、第２４頁、第５図、第２５頁、第１０Ａ図）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の形状認識装置では、特に形状検出処理におけるハフ変換の処理量が膨大になる。特に、ハフ変換をコンピュータ上のソフトウェアによって実現する場合は、ハフ変換の処理に膨大な時間がかかってしまい、動画を構成する各画像フレームに対してリアルタイムに形状認識結果を得ることは困難であった。
【０００７】
一方、処理の高速化を図るために、形状検出処理を行う構成をハードウェア化する場合には、エッジ検出、形状検出、形状識別等の逐次に実行される処理ごとに専用のハードウェアを構築することになる。そうすると、全体では膨大なハードウェア規模となり、コストが高くなって実現困難になる。
【０００８】
本発明は、従来の問題を解決するためになされたもので、高速な処理を実現できるとともに、ハードウェア規模を削減できる形状認識装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の形状認識装置は、画像フレームから特定の形状を認識する形状認識装置であって、画像フレームから特定の形状を認識するための処理を行うリコンフィギュアラブル・デバイスと、前記リコンフィギュアラブル・デバイスに前記画像フレームに含まれるエッジを検出するエッジ検出回路を構成させるためのエッジ検出回路構成情報、前記リコンフィギュアラブル・デバイスに前記画像フレームに含まれる特定の形状を検出する形状検出回路を構成させるための形状検出構成回路情報、及び前記リコンフィギュアラブル・デバイスに前記特定の形状の特徴を識別する形状識別回路を構成させるための形状識別回路構成情報を含む構成情報が記憶された構成情報メモリと、前記画像フレームごとに、前記構成情報メモリから前記構成情報のいずれかを読み出して、当該読み出した構成情報に対応する回路を前記リコンフィギュアラブル・デバイスに構成させる制御部とを備えた構成を有している。
【００１０】
この構成により、画像フレームから特定の形状を認識するための処理をリコンフィギュアラブル・デバイスで実行することで処理の高速化を実現できるとともに、エッジ検出、形状検出、形状識別という一連の部分処理を同一のリコンフィギュアラブル・デバイスを繰り返し使用して実現できるので、ハードウェア規模を削減できる。
【００１１】
また、本発明の形状認識装置において、前記制御部は、ある画像フレームに対する処理のために、前記リコンフィギュアラブル・デバイスに前記形状検出回路を構成させた後、当該形状検出回路にて当該画像フレームから前記特定の形状が検出できた場合は、次に当該画像フレームに対する処理のために前記リコンフィギュアラブル・デバイスに前記形状識別回路を構成させ、該形状検出回路にて前記画像フレームから前記特定の形状が検出できなかった場合は、次に当該画像フレームの次の画像フレームに対する処理のために前記リコンフィギュアラブル・デバイスに前記エッジ検出回路を維持させる。
【００１２】
この構成により、リコンフィギュアラブル・デバイスの特性を生かして、形状検出の結果に応じて、次に構成する回路を臨機応変に変更でき、無駄な処理を省いて処理を高速化できる。
【００１３】
また、本発明の形状認識装置において、前記形状検出回路は、投票メモリと、前記エッジ検出回路により検出されたエッジ点について、前記投票メモリに対して、当該エッジ点の法線上の対極にある２つの投票点の投票を並行して行う２つの投票処理部と、前記２つの投票処理部による前記投票メモリに対する投票の結果を集計する開票処理を行って、形状検出結果を得る集計開票処理部とを有している。
【００１４】
この構成により、各エッジ点のそれぞれに対して実施される２回の投票処理を１回分の投票処理時間で実施でき、投票処理を高速化できる。
【００１５】
また、本発明の形状認識装置において、さらに、最上方の行から最下方の行へ向かって、前記エッジ検出回路により検出されたエッジ点を認識するエッジ点認識部を有し、前記投票処理部は、前記エッジ点認識部にて認識されたエッジ点について、所定の投票距離内で投票点の投票を行い、前記集計開票処理部は、前記エッジ点認識部にて認識されるエッジ点よりも前記投票距離以上の所定の距離だけ前の行から、すべてのエッジ点についての投票処理の終了を待たずに、前記投票処理部による投票処理と並行して、前記開票処理を開始する。
【００１６】
この構成により、すべてのエッジ点についての投票終了を待たずに開票処理を開始し、投票処理と開票処理とを並行して進めることができるので、形状検出処理を高速化できる。
【００１７】
また、本発明の形状認識装置において、前記投票メモリは、前記投票処理部及び前記集計開票処理部のそれぞれに接続される２ポート構成である。
【００１８】
この構成により、前記投票処理部が前記投票メモリをアクセスしている間においても前記開票処理部は前記投票メモリを参照して開票処理を並行して進めることができ、形状検出処理をさらに高速化できる。
【００１９】
また、本発明の形状認識装置において、前記投票メモリは、少なくとも最大投票空間に相当する行数を有するリングバッファであり、前記集計開票処理部は、１の前記画像フレームに対する投票処理の進行に応じて、前記リングバッファがカバーする投票空間の最上方の行について開票処理を行い、前記形状検出回路は、前記リングバッファの、開票処理が終わった行に対応する部分を開放して、当該開放した部分を、前記リングバッファがカバーする投票空間の最下方の行の次の行の投票空間として再利用するように制御する投票メモリ更新制御部をさらに有している。
【００２０】
この構成により、投票空間全体に対するメモリを投票メモリとして常時備える必要がなくなり、特に走行中の車両から撮像した画像中の道路標識を検出する場合のように、検出対象の大きさが画像空間に対して非常に小さい場合、投票メモリの容量を大きく削減でき、ハードウェア規模を削減できる。
【００２１】
また、本発明の形状認識装置において、前記投票メモリは、エッジ点の位置に従って複数の種類に分類されており、前記２つの投票処理部は、それぞれ、前記エッジ検出回路により検出されたエッジ点について、前記複数の投票メモリのうちの前記エッジ点の位置に対応する投票メモリに投票点の投票を行い、前記形状検出回路は、さらに、前記複数の種類に対応して複数設けられ、それぞれ、前記投票メモリに対する投票の結果を前記投票メモリの種類ごとに集計する複数の投票集計部を有し、前記集計開票処理部は、前記の複数の投票集計部の集計結果を合算することで、前記開票処理を行う。
【００２２】
この構成により、開票処理における投票結果の集計を分割、並行して実施できるので、開票処理を高速化できる。
【００２３】
さらに、本発明の形状認識装置において、前記形状検出回路は、処理対象となる１の画像フレーム全体についてのエッジ検出情報を保存する１次画像バッファと、前記１次画像バッファに保存された１画像フレーム分のエッジ検出情報を、重複部分を有する複数の部分に分割して、そのうちの一の部分のエッジ検出情報を読み出す画像バッファ更新制御部と、前記画像バッファ更新制御部にて読み出されたエッジ検出情報を保存する２次画像バッファとを有し、前記投票処理部は、前記２次画像バッファに保存されたエッジ点について投票点の投票を行い、前記画像バッファ更新制御部は、前記投票処理部による投票の処理の進行に応じて、前記１次画像バッファから新たな部分のエッジ検出情報を読み出して前記２次画像バッファに保存する。
【００２４】
この構成により、例えばリコンフィギュアラブル・デバイスの内部の、小容量ではあるが非常に高速にアクセス可能な内部メモリ上に２次画像バッファを配置することにより、処理中に画像メモリへの膨大な量のアクセスが必要となる投票処理や開票処理を高速に実行することが可能となり、形状検出処理をさらに高速化できる。
【００２５】
また、本発明の形状認識装置において、前記画像フレーム全体についてのエッジ検出情報は、検出しようとする対象の大きさよりも大きい幅の重複部分を有するように分割される。
【００２６】
この構成により、認識対象が分割された部分空間の端部に位置した場合にも正しく認識できる。
【００２７】
また、本発明の形状認識装置において、前記投票メモリは、エッジ点から見た投票点の方向に応じて複数に分けられており、前記投票処理部は、投票点のエッジ点から見た方向に対応する投票メモリに対して当該投票点の投票を行い、前記集計開票処理部は、前記投票点が前記複数の投票メモリの何れに投票されたかを考慮して形状検出結果を得る。
【００２８】
この構成により、形状検出の精度を向上でき、又は形状の向きを判断できる。
【００２９】
本発明の別の態様は、リコンフィギュアラブル・デバイスを用いて画像フレームから特定の形状を認識する形状認識方法であって、この方法は、前記リコンフィギュアラブル・デバイスにエッジ検出回路を構成させるエッジ検出回路構成ステップと、前記エッジ検出回路構成ステップにて構成された前記エッジ検出回路にて前記画像フレームに含まれるエッジを検出してエッジ検出情報を取得するエッジ検出ステップと、前記エッジ検出ステップにてエッジが検出された場合に、前記リコンフィギュアラブル・デバイスに形状検出回路を構成させる形状検出回路構成ステップと、前記形状検出回路構成ステップにて構成された前記形状検出回路にて、前記エッジ検出情報を用いて、前記画像フレームに含まれる前記特定の形状を検出して、形状検出結果を取得する形状検出ステップと、前記形状検出ステップにて前記特定の形状が検出された場合に、前記リコンフィギュアラブル・デバイスに形状識別回路を構成させる形状識別回路構成ステップと、前記形状識別回路構成ステップにて構成された前記形状識別回路にて、前記形状検出結果を用いて、前記特定の形状の特徴を識別する形状識別ステップとを含んでいる。
【発明の効果】
【００３０】
本発明は、形状認識のために必要な各処理を逐次実行するための回路を、同一のリコンフィギュアラブル・デバイスを繰り返し使用して構築できるので、ハードウェア規模を削減できるとともに、形状認識処理の全体の処理量の大半を占める形状検出処理の高速化を実現できる。
【図面の簡単な説明】
【００３１】
【図１】本発明の第１の実施の形態における形状認識装置のブロック図
【図２】本発明の第１の実施の形態における形状検出回路のブロック図
【図３】本発明の第１の実施の形態における投票点の方向を説明する図
【図４】本発明の第１の実施の形態におけるエッジ点と投票点の関係を示す図
【図５】本発明の第１の実施の形態における形状認識装置の動作説明のためのフロー図
【図６】本発明の第２の実施の形態における形状検出回路のブロック図
【図７】本発明の第３の実施の形態における形状検出回路のブロック図
【図８】本発明の第４の実施の形態における形状検出回路のブロック図
【図９】本発明の第５の実施の形態における形状検出回路のブロック図
【図１０】本発明の第６の実施の形態における形状検出回路のブロック図
【図１１】本発明の第６の実施の形態における画像フレームの分割を説明する図
【図１２】従来の形状認識装置の動作説明のためのフロー図
【図１３】従来の形状認識装置におけるエッジ点と投票領域の関係を示す図
【図１４】従来の形状認識装置における投票点の集約位置を説明する図
【発明を実施するための形態】
【００３２】
以下、本発明の実施の形態の形状認識装置について、図面を用いて説明する。
【００３３】
（第１の実施の形態）
図１は、第１の実施の形態の形状認識装置のブロック図である。本実施の形態の形状認識装置１０は、ダイナミック・リコンフィギュアラブル・デバイスで構成されるリコンフ部１１と、制御ＣＰＵ部１２と、構成情報メモリ１３と、メモリ１４とを含んで構成される。リコンフ部１１には、入力画像フレーム１０１が入力される。リコンフ部１１は、形状認識結果１０２を形状認識装置１０の外部に出力する。本実施の形態では、形状認識装置１０は、走行中の車両から撮影して得られた画像フレームが入力画像フレーム１０１として入力され、その入力画像フレーム１０１から道路標識を認識して、注意喚起を目的とするアプリケーションに形状認識結果１０２を出力する。
【００３４】
構成情報メモリ１３には、リコンフ部１１上にエッジ検出回路を構成するためのエッジ検出回路構成情報１３０１、リコンフ部１１上に形状検出回路を構成するための形状検出回路構成情報１３０２、及びリコンフ部１１状に形状識別回路を構成するための形状識別回路構成情報１３０３を含む構成情報が記憶されている。
【００３５】
制御ＣＰＵ部１２は、入力画像フレーム１０１ごとに、構成情報メモリ１３より各構成情報を逐次呼び出して、リコンフ部１１上に展開して、その構成情報に対応する回路を構成させる。具体的には、制御ＣＰＵ部１２は、エッジ検出回路構成情報１３０１を呼び出してリコンフ部１１上に展開することで、リコンフ部１１上にエッジ検出回路を構成し、形状検出回路構成情報１３０２を呼び出してリコンフ部１１上に展開することで、リコンフ部１１上に形状検出回路を構成し、形状識別回路構成情報１３０３を呼び出してリコンフ部１１上に展開することで、リコンフ部１１上に形状識別回路を構成する。
【００３６】
エッジ検出回路は、入力画像フレーム１０１からエッジを検出して、エッジ検出情報を出力する回路である。エッジ検出情報には、エッジが存在する座標空間の座標の論理値、即ち入力画像フレーム１０１におけるエッジ上の点（以下、「エッジ点」という）の位置を示す座標情報と、それに付随する法線方向の情報が含まれる。エッジ点の法線方向は、そのエッジ点が、周囲の他のエッジ点と接続されて構成されると予想される線分に対する法線の方向である。
【００３７】
形状検出回路は、エッジ検出情報に基づいて特定の形状を検出して形状検出結果を出力する回路である。形状検出回路は、エッジ検出情報に含まれるエッジ点に対して、形状検出処理を行う。形状検出回路は、形状検出処理において、各エッジ点に対して、順次ハフ変換による投票処理を実施し、投票後に開票処理を実施して、認識対象の候補となる形状の有無及びその位置、大きさ等を含む形状検出結果を得る。
【００３８】
形状識別回路は、形状検出結果から形状を識別して形状認識結果１０２を出力する回路である。形状識別回路は、形状検出回路で得られた形状検出結果に対して、形状識別処理を行う。形状識別回路は、形状検出結果について、形状検出部分に対応する部分画像を参照して、認識対象であるかどうかの識別を実施し、対象であることが識別できた場合は、形状認識結果１０２を出力する。
【００３９】
図２は、本実施の形態の形状検出回路のブロック図である。図２に示す形状検出回路１１０は、制御ＣＰＵ部１２が構成情報メモリ１３から形状検出回路構成情報１３０２を呼び出して、リコンフ部１１上に展開することで構成される回路である。
【００４０】
図２において、本実施の形態の形状認識装置１０における形状検出回路１１０は、エッジ点画像メモリ１１１と、エッジ点認識部１１２と、第１投票点投票処理部１１３と、第２投票点投票処理部１１４と、８個の投票メモリ１１５１〜１１５８と、集計開票処理部１１６とを備えた構成を有する。エッジ点画像メモリ１１１は、エッジ点認識部１１２に接続されている。エッジ点認識部１１２は、第１投票点投票処理部１１３及び第２投票点投票処理部１１４に接続されている。第１投票点投票処理部１１３及び第２投票点投票処理部１１４は、それぞれ８個の投票メモリ１１５１〜１１５８に接続されている。８個の投票メモリ１１５１〜１１５８は、それぞれ集計開票処理部１１６に接続されている。
【００４１】
形状検出回路１１０には、エッジ検出情報１１０１が入力される。このエッジ検出情報１１０１は、制御ＣＰＵ部１２が構成情報メモリ１３からエッジ検出回路構成情報１３０１を呼び出してリコンフ部１１上に展開することでエッジ検出回路が構成された際に、エッジ検出回路が入力画像フレーム１０１から検出した情報である。このエッジ検出情報１１１０１は、エッジ検出回路にて生成された後にメモリ１４に保存される。制御ＣＰＵ部１２が構成情報メモリ１３から形状検出回路構成情報１３０２を呼び出してリコンフ部１１上に展開することで形状検出回路１１０が構成されると、形状検出回路１１０は、メモリ１４から画像フレームごとにエッジ検出情報１１０１を読み出してエッジ点画像メモリ１１１に保存する。
【００４２】
エッジ点認識部１１２は、エッジ点画像メモリ１１１に保存されたエッジ検出情報１１０１に基づいて、逐次エッジ点を認識して投票処理を開始する。第１投票点投票処理部１１３は、投票処理の対象となったエッジ点の法線（当該エッジ点の座標情報が示す座標を通り、かつ当該エッジ点の法線方向情報が示す方向に伸びる直線）上の一方側の投票点について投票処理を行う。第２投票点投票処理部１１４は、投票処理の対象となったエッジ点の法線上の他方側の投票点について投票処理を行う。
【００４３】
投票点は、図３に示すように、エッジ点を中心として、上方向、右上方向、右方向、右下方向、下方向、左下方向、左方向、左上方向の８方向のいずれかに分類される。８個の投票メモリもこれに対応して、上方向投票メモリ１１５１と、右上方向投票メモリ１１５２と、右方向投票メモリ１１５３と、右下方向投票メモリ１１５４と、下方向投票メモリ１１５５と、左下方向投票メモリ１１５６と、左方向投票メモリ１１５７と、左上方向投票メモリ１１５８を含んでいる。
【００４４】
第１投票点投票処理部１１３及び第２投票点投票処理部１１４は、エッジ点認識部１１２で認識された各エッジ点について、投票メモリ１１５１〜１１５８のうちの投票点の方向に対応する投票メモリに対して当該投票点の投票を行う。投票メモリ１１５１〜１１５８のアドレスは投票空間の座標に対応している。第１投票点投票処理部１１３及び第２投票点投票処理部１１４が投票メモリ１１５１〜１１５８に投票点の投票を行うと、投票メモリ１１５１〜１１５８の当該投票点に対応するアドレスのカウント値がインクリメントされる。このカウント値が当該投票点についての投票結果となる。集計開票処理部１１６は、同一座標について８個の投票メモリ１１５１〜１１５８のそれぞれのカウント値（得票数）を合算して評価することで形状検出結果１１０２を生成する。
【００４５】
以下、投票及び集計の処理について詳しく説明する。まず、円形状を検出する場合を説明する。円形状の検出は、例えば、速度標識の認識に応用できる。
【００４６】
円形状の検出処理では、エッジ点認識部１１２で認識されたエッジ点の集合が形成する円形状の中心を探索する。このために、第１投票点投票処理部１１３及び第２投票点投票処理部１１４は、エッジ点からその法線方向の対極に距離ｒだけ離れた点を投票点として投票を行う。具体的には、第１投票点投票処理部１１３及び第２投票点投票処理部１１４は、投票メモリの当該投票点の座標値に対応するアドレスのカウント値をインクリメントする。このとき、第１投票点投票処理部１１３及び第２投票点投票処理部１１４は、上述のように、８個の投票メモリ１１５１〜１１５８のうち、当該投票点のエッジ点から見た方向に対応する投票メモリに対して投票を行う。
【００４７】
この投票処理をエッジ点認識部１１２で認識されたすべてのエッジ点について行った後、同一座標について投票メモリ１１５１〜１１５８のそれぞれのカウント値を集計開票処理部１１６にて集計する。集計開票処理部１１６は、投票が特定の点（座標）に集中していれば、即ち、得票数が特に高い点があれば、その点をそれらのエッジ点の集合が形成する円形状の中心と判断する。
【００４８】
投票点が特定の点に集中していなかった場合には、そのことは、その距離ｒが、エッジ点の集合が形成する円形状の半径として正しくなかったことを意味している。この場合は、第１投票点処理部１１３及び第２投票点投票処理部１１４は、距離ｒの値を変更して再度すべてのエッジ点について上記のような投票及び集計の処理を行う。
【００４９】
ｒを所定の範囲内で変更しながら上記の処理を繰り返し、集計開票処理部１１６による集計の結果、投票点が特定の点（座標）に集中すれば、その投票点が集中した点を中心として、そのときのｒを半径とする円形状があると判断する。ｒを所定の範囲内で変更しながら上記の処理を繰り返しても、投票点が特定の点に集中しなかった場合には、集計開票処理部１１６は、その範囲内のｒを半径とする円形状は存在しないと判断する。
【００５０】
本実施の形態では、上述のように投票点についての８つの方向に対応して投票メモリが８つに分けられているので、円形状の中心として投票点が集中する場合には、８つの投票メモリそれぞれの当該投票点に対する投票数はほぼ等しくなるはずである。よって、集計開票処理部１１６は、円形状の中心点であると判断する際に、同一の座標についての各投票メモリにおける得票数が分散していることを条件とすることで、円形状の検出の精度を向上できる。
【００５１】
以下、図４を参照して説明する。エッジ点認識部１１２が、エッジ点画像メモリ１１１上の座標空間上で、投票処理対象となるエッジ点Ｅを認識すると、そのエッジ点Ｅから法線Ｎ上の対極にそれぞれ距離ｒだけ離れた点が投票点Ｖ1、Ｖ2として投票される。このとき、一方側の投票点Ｖ1については、第１投票点投票処理部１１３が投票を行い、他方側の投票点Ｖ2については第２投票点投票処理部１１４が投票を行う。
【００５２】
具体的には、第１投票点投票処理部１１３は、認識されたエッジ点Ｅの座標を（ｘ1，ｙ1）とし、そのエッジ点の法線がエッジ点Ｅを原点とするｘ−ｙ座標のｘ軸となす角度をθとすると、投票点Ｖ1として点（ｘ1＋ｒ×ｃｏｓθ，ｙ1＋ｒ×ｓｉｎθ）に対応するアドレスに投票をする。図５の例では、エッジ点Ｅからみて投票点Ｖ1は、右方向であるので、第１投票点投票処理部１１３は、この投票点Ｖ1の投票を右方向投票メモリ１１５３に対して行う。
【００５３】
一方、第２投票点投票処理部１１４は、認識されたエッジ点Ｅから法線方向の他方側に距離ｒだけ離れた投票点Ｖ2を投票する。投票点Ｖ2の座標は、（ｘ1−ｒ×ｃｏｓθ，ｙ1−ｒ×ｓｉｎθ）である。投票点Ｖ2は、エッジ点Ｅから見て左方向であるので、第２投票点投票処理部１１４は、この投票点Ｖ2の投票を左方向投票メモリ１１５７に対して行う。第１投票点投票処理部１１３及び第２投票点投票処理部１１４のこれらの動作は、並行して同時に実行する。
【００５４】
そして、全エッジ点に対して同様の投票処理を終えた後、集計開票部１１６は、同一座標についての８個の投票メモリ１１５１〜１１５８のカウント値をそれぞれ合算して、その合計を当該座標に対する得票数とする。集計開票部１６は、得票数が一定値以上になっている座標があれば、その座標を検出対象である円形状の中心座標の候補と判定し、そのときの距離ｒとともに、形状検出結果１１０２として出力する。得票数が一定値以上になっている座標がない場合には、距離ｒの値を変更して上記の処理を繰り返す。
【００５５】
次に、正三角形形状を検出する際の動作を説明する。正三角形形状の検出は、例えば、停止標識の認識に応用できる。
【００５６】
正三角形形状の認識では、エッジ点認識部１１２で認識されたエッジ点の集合が形成する正三角形形状の内接円の中心を探索する。このために、第１投票点投票処理部１１３及び第２投票点投票処理部１１４は、エッジ点からその法線方向の対極に距離ｒだけ離れ、その法線方向と直交する所定の長さの線分（投票領域ともいう）上の点を投票点として投票を行う。
【００５７】
これをすべてのエッジ点について行った後、集計開票処理部１１６は、同一座標について投票メモリのカウント値を集計して、投票が特定の点（座標）に集中していれば、その点をそれらのエッジ点の集合が形成する正三角形形状の内接円の中心と判断する。投票が特定の点に集中していなかった場合には、そのことは、その距離ｒが、エッジ点の集合が形成する正三角形形状の内接円の半径として正しくなかったことを意味しているので、距離ｒの値を変更して再度すべてのエッジ点について上記のような投票処理を行い、集計を行う。
【００５８】
ｒを所定の範囲内で変更しながら上記の処理を繰り返し、投票が特定の点（座標）に集中すれば、その投票が集中した点を中心として、そのときのｒを半径とする内接円を有する正三角形形状があると判断する。ｒを所定の範囲内で変更しながら上記の処理を繰り返しても、投票が特定の点に集中しなかった場合には、その範囲内のｒを半径とする内接円を有する正三角形形状は存在しないと判断する。
【００５９】
本実施の形態では、上述のように投票点についての８つの方向に対応して投票メモリが８つに分けられているので、逆正三角形形状（下向きの正三角形形状）の内接円の中心として投票が集中する場合には、８つの投票メモリのうちの右上方向投票メモリ１１５２、下方向投票メモリ１１５５、及び左上方向投票メモリ１１５８に投票されるはずである。
【００６０】
よって、集計開票処理部１１６は、正三角形形状の内接円の中心点であると判断する際に、投票の集中した点が、右上方向投票メモリ１１５２、下方向投票メモリ１１５５、及び左上方向投票メモリ１１５８に投票された点であることを条件とすることで、上向きの正三角形形状と区別して、下向きの正三角形形状を検出できる。なお、上向きの正三角形形状を検出する場合には、投票の集中した点が、上方向投票メモリ１１５１、右下方向投票メモリ１１５４、及び左下方向投票メモリ１１５６に投票された点であることを条件とすればよい。
【００６１】
正三角形形状を検出する場合にも、各エッジ点に対して、第１投票点投票処理部１１３が法線方向の一方側の投票点の投票処理を行い、第２投票点投票処理部１１４が法線方向の他方側の投票点の投票処理を行う。そして、これらの第１投票点投票処理部１１３及び第２投票点投票処理部１１４の投票処理は同時に並行して行われる。
【００６２】
以上のように構成された形状認識装置１０について、図５を用いてその動作を説明する。まず、制御ＣＰＵ部１２は、形状認識装置１０に入力画像フレーム１０１が入力されているかどうかを判断する（ステップＳ５１）。入力画像フレーム１０１の入力がない場合には（ステップＳ５１でＮＯ）、入力があるまでステップＳ５１を繰り返す。
【００６３】
入力画像フレーム１０１があった場合は（ステップＳ５１でＹＥＳ）、構成情報メモリ１３からエッジ検出回路構成情報１３０１を読み出して、リコンフ部１１上にエッジ検出回路を構成する（ステップＳ５２）。リコンフ部１１上にエッジ検出回路が構成されると、エッジ検出回路は、入力画像フレーム１０１に対してエッジ検出を行う（ステップＳ５３）。
【００６４】
次に、制御ＣＰＵ部１２は、エッジ検出処理によってエッジが検出されたか否かを判断する（ステップＳ５４）。エッジが検出された場合は（ステップＳ５４でＹＥＳ）、エッジ検出回路は、メモリ１４にエッジ検出情報を保存して、その後、制御ＣＰＵ部１２は、構成情報メモリ１３から形状検出回路構成情報１３０２を読み出して、リコンフ部１１上に形状検出回路を構成する（ステップＳ５５）。リコンフ部１１上に形状検出回路が構成されると、形状検出回路は、上述のように、エッジ点の各々に対する投票処理及び投票結果の集計処理を含む形状検出処理を行い、形状検出結果を得る（ステップＳ５６）。
【００６５】
次に、制御ＣＰＵ部１２は、形状検出処理によって特定の形状が検出されたか否かを判断する（ステップＳ５７）。特定の形状が検出された場合は（ステップＳ５７でＹＥＳ）、形状検出回路は、メモリ１４に形状検出結果を保存して、その後、制御ＣＰＵ部１２は、構成情報メモリ１３から形状識別回路構成情報１３０３を読み出して、リコンフ部１１上に形状識別回路を構成する（ステップＳ５８）。リコンフ部１１上に形状識別回路が構成されると、形状識別回路は、各形状検出結果について、形状検出部分に対応する部分画像を参照して認識対象であるかどうかの識別を実施する（ステップＳ５９）。制御ＣＰＵ部１２は、認識対象であることが識別できたか否かを判断し（ステップＳ６０）、識別できた場合は（ステップＳ６０でＹＥＳ）、形状認識結果１０２を出力する（ステップＳ６１）。
【００６６】
ステップＳ６１を終了すると、ステップＳ５１に戻り、制御ＣＰＵ部１２は、次の入力画像フレーム１０１の有無を判断する。このようにして、入力画像フレーム１０１の入力がある限り、以上の処理を逐次繰り返して実行する。
【００６７】
エッジ検出処理にてエッジ点が検出されなかった場合（ステップＳ５４でＮＯ）、形状検出処理にて形状が検出されなかった場合（ステップＳ５７でＮＯ）、及び形状識別処理にて認識対象を識別できなかった場合（ステップＳ６０でＮＯ）には、その時点でステップＳ５１に戻って新たな入力画像フレーム１０１について再びエッジ検出処理から処理を始める。
【００６８】
即ち、制御ＣＰＵ部１２は、必ずしもエッジ検出回路、形状検出回路、形状識別回路の順でリコンフ部１２に回路を構成するのではなく、例えば、形状検出回路で形状検出を行った結果、形状が検出されなかった場合には、その入力画像フレームについては、形状識別回路を構成することなく、次の入力画像フレームのためにエッジ検出回路を構成する。このように、制御ＣＰＵ部１２は、逐次処理において、後続の処理の要否に応じて臨機応変に構成する回路を選択する。
【００６９】
このような第１の実施の形態の形状認識装置１０によれば、リコンフ部１１上で形状認識に必要な処理、特に形状検出処理を実行することで高速化を実現できるとともに、形状認識に必要な一連の処理を同一のリコンフ部１１を繰り返し使用して実現できるので、ハードウェア規模を削減することができる。
【００７０】
また、第１の実施の形態の形状検出回路によれば、第１投票点投票処理部１１３と第２投票点投票処理部１１４がエッジ点の法線方向の対極のそれぞれについて、並行して同時に投票処理を実行するので、全エッジ点の各々に対して実施される２回の投票処理を１回分の投票処理時間で実施でき、処理を高速化できる。
【００７１】
（第２の実施の形態）
次に、本発明の第２の実施の形態の形状認識装置を説明する。第２の実施の形態の形状認識装置は、第１の実施の形態の形状認識装置と同一の構成を有する。本実施の形態の形状認識装置は、形状検出回路に特徴を有する。
【００７２】
図６は、本実施の形態の形状検出回路のブロック図である。図６に示すように、本実施の形態の形状検出回路１２０は、上記の第１の実施の形態の形状検出回路１１０と同様に、エッジ点画像メモリ１２１と、エッジ点認識部１２２と、第１投票点投票処理部１２３と、第２投票点投票処理部１２４と、８つの投票メモリ１２５１〜１２５８と、集計開票処理部１２６とを備えた構成を有している。
【００７３】
但し、本実施の形態の形状検出回路１２０は、第１の実施の形態の形状検出回路１１０と異なり、エッジ点認識部１２２が、集計開票処理部１２６に接続されている。本実施の形態の形状検出回路１２０において、エッジ点画像メモリ１２１、第１投票点投票処理部１２３、第２投票点投票処理部１２４、投票メモリ１２５１〜１２５８の構成及び動作は、第１の実施の形態の対応する要素と同様である。
【００７４】
エッジ点認識部１２２は、第１の実施の形態のエッジ点認識部１１２と同様に、エッジ点画像メモリ１１１に保存されたエッジ検出情報１１０１に基づいて逐次エッジ点を認識して投票処理を開始する。エッジ点認識部１２２は、エッジ点画像メモリ１２１の最上方の行より最下方の行へ１行ずつエッジ点の有無を調べていく。エッジ点認識部１２２は、エッジ点を認識すると、第１投票点投票処理部１２３と第２投票点投票処理部１２４に対して投票処理を実施するよう指示するとともに、どの行のエッジ点まで投票処理が進行したかを集計開票処理部１２６に逐次通知する。
【００７５】
第１の実施の形態で説明したように、第１投票点投票処理部１２３及び第２投票点投票処理部１２４は、円形状検出の場合は、投票処理の対象となるエッジ点から法線方向の対極に距離ｒだけ離れた点に投票をする。従って、エッジ点認識部１２２で認識されて投票処理の対象となるエッジ点から距離ｒ以上離れた行は、投票されることはない。また、正三角形形状検出の場合は、投票処理の対象となるエッジ点から法線方向の対極に距離ｒだけ離れて法線方向に直交する所定長さの線分上の点に投票をする。従って、この線分の長さをｋとすると、エッジ点認識部１２２で認識されて投票処理の対象となるエッジ点から、｛ｒ2＋（ｋ／２）2｝1/2以上離れた行は、投票されることはない。
【００７６】
特に、エッジ点認識部１２２は、エッジ点画像メモリ１２１に記憶されている１フレーム分のエッジ検出情報１１０１の上の行から下の行に向けて順にエッジ点を認識していくので、エッジ点より上の行であって上記の距離（以下、この距離を「投票距離」という）以上離れた行は、ｒを変更して再び最上行からの投票が行われるまで、再び投票が行われることはない。よって、このように投票が終了して再び最上行からの投票が行われるまで投票が行わることのない行については、すべての行のエッジ点について投票処理が完了するのを待たずに開票処理を行うことができる。
【００７７】
そこで、本実施の形態のエッジ点認識部１２２は、どの行のエッジ点まで投票処理が進行しているかを示す情報、及びそのときに採用している距離ｒの値を集計開票処理部１２６に通知する。集計開票処理部１２６は、投票処理の対象となるエッジ点の行が最上方の行から投票距離を超える所定の距離進んだ時点で、最上方の行に関しては投票処理が終了したと判定し、１入力画像フレームのすべてのエッジ点についての投票が終了するのを待たずに、開票処理を実施する。
【００７８】
開票処理の際には、これと並行して、第１投票点投票処理部１２３及び第２投票点投票処理部１２４が投票メモリ１２５１〜１２５８への投票を行っているので、集計開票処理部１２６は、第１投票点投票処理部１２３及び第２投票点投票処理部１２４が投票のために投票メモリ１２５１〜１２５８にアクセスしていない間に、投票メモリ１２５１〜１２５８を参照して集計処理を行う。
【００７９】
その後は、順次エッジ点認識部１２２で認識されて投票処理の対象となるエッジ点の行が下に行くにつれて、集計開票処理部１２６が開票処理を行う行も下に移動させていく。このようにして、本実施の形態の形状検出回路１２０の集計開票処理部１２６は、エッジ点認識部１２２から通知される、投票処理の対象となるエッジ点が存在する行及び距離ｒの情報に基づいて、それ以上投票される可能性がなくなった座標について、すべてのエッジ点の投票処理を待たずに開票処理を行う。
【００８０】
このような第２の実施の形態の形状検出回路１２０によれば、集計開票処理部１２６は、第１投票点投票処理部１１３と第２投票点投票処理部１１４が１入力画像フレームのすべてのエッジ点の投票処理を終了するのを待たずに、開票処理を開始するので、投票処理と開票処理とを並行に進めることができ、さらに処理を高速化できる。
【００８１】
（第３の実施の形態）
次に、本発明の第３の実施の形態の形状認識装置を説明する。第３の実施の形態の形状認識装置は、第１の実施の形態の形状認識装置と同一の構成を有する。本実施の形態の形状認識装置は、形状検出回路に特徴を有する。
【００８２】
図７は、本実施の形態の形状検出回路のブロック図である。図７に示すように、本実施の形態の形状検出回路１３０は、上記の第２の実施の形態の形状検出回路１２０と同様に、エッジ点画像メモリ１３１と、エッジ点認識部１３２と、第１投票点投票処理部１３３と、第２投票点投票処理部１３４と、８つの投票メモリ１３５１〜１３５８と、集計開票処理部１３６とを備えた構成を有している。そして、第２の実施の形態の形状検出回路１２０と同様に、エッジ点認識部１３２が、集計開票処理部１３６に接続されている。
【００８３】
本実施の形態の形状検出回路１３０では、上方向投票メモリ１３５１と、右上方向投票メモリ１３５２と、右方向投票メモリ１３５３と、右下方向投票メモリ１３５４と、下方向投票メモリ１３５５と、左下方向投票メモリ１３５６と、左方向投票メモリ１３５７と、左上方向投票メモリ１３５８は、それぞれ２ポートメモリで構成される。各投票メモリ１３５１〜１３５８の一方のポートはそれぞれ第１投票点投票処理部１３３と第２投票点投票処理部１３４に接続され、他方のポートはそれぞれ集計開票処理部１３６に接続されている。
【００８４】
本実施の形態の形状検出回路１３０において、エッジ点画像メモリ１３１、エッジ点認識部１３２、第１投票点投票処理部１３３、第２投票点投票処理部１３４の構成及び動作は第２の実施の形態の対応する要素と同様である。
【００８５】
集計開票処理部１３６は、第２の実施の形態の集計開票処理部１２６と同様に、第１投票点投票処理部１３３及び第２投票点投票処理部１３４が１入力画像フレームのすべてのエッジ点について投票処理を終了するのを待たずに開票処理を開始する。本実施の形態では、投票メモリ１３５１〜１３５８がそれぞれ２ポートメモリで構成されているため、集計開票処理部１３６から各投票メモリへのアクセスポートが、第１投票点投票処理部１３３及び第２投票点投票処理部１３４から各投票メモリへのアクセスポートと別である。よって、集計開票処理部１３６は、第１投票点投票処理部１３３と第２投票点投票処理部１３４から各投票メモリへのアクセスの有無に関係なく、第１投票点投票処理部１３３と第２投票点投票処理部１３４から各投票メモリへのアクセスと並行して各投票メモリにアクセスして集計処理を行う。
【００８６】
このような第３の実施の形態の形状検出回路１３０によれば、第１投票点投票処理部１３３及び第２投票点投票処理部１３４が各投票メモリにアクセスしている間においても、集計開票処理部１３６は、各投票メモリを参照して開票処理を進めることができ、さらに処理を高速化できる。
【００８７】
（第４の実施の形態）
次に、本発明の第４の実施の形態の形状認識装置を説明する。第４の実施の形態の形状認識装置は、第１の実施の形態の形状認識装置と同一の構成を有する。本実施の形態の形状認識装置は、形状検出回路に特徴を有する。
【００８８】
上述のように、本発明の実施の形態の形状認識装置では、リコンフ部１１上で形状認識のための各部分処理を実行することで処理の高速化を実現できるとともに、一連の部分処理を同一のリコンフ部１１を繰り返し使用して実現できるので、ハードウェア規模を削減できる。しかしながら、リコンフ部１１における処理では、内部メモリへのアクセスは高速であるが、リコンフ部１１の内部に大きなメモリ容量を確保することは困難である。十分な容量を確保できる外部のメモリを利用する場合には、メモリへのアクセスが遅くなり、リコンフ部１１は本来のハードウェアとしての高速性を維持できなくなる。そこで、本実施の形態では、リコンフ部１１内部の限られたメモリ容量を有効に活用して形状検出処理を行う形状検出回路を提供する。
【００８９】
図８は、本実施の形態の形状検出回路のブロック図である。図８に示すように、本実施の形態の形状検出回路１４０は、上記の第１の実施の形態の形状検出回路１１０と同様に、エッジ点画像メモリ１４１と、エッジ点認識部１４２と、第１投票点投票処理部１４３と、第２投票点投票処理部１４４と、集計開票処理部１４６とを備えている。これらエッジ点画像メモリ１４１、エッジ点認識部１４２、第１投票点投票処理部１４３、第２投票点投票処理部１４４の構成及び動作は第１の実施の形態の対応する要素と同様である。
【００９０】
本実施の形態の形状検出回路１４０は、さらに投票メモリ更新制御部１４７を備えている。また、各投票メモリはリングバッファで構成されている。投票メモリは、上方向投票リングバッファ１４５１と、右上方向投票リングバッファ１４５２と、右方向投票リングバッファ１４５３と、右下方向投票リングバッファ１４５４と、下方向投票リングバッファ１４５５と、左下方向投票リングバッファ１４５６と、左方向投票リングバッファ１４５７と、左上方向投票リングバッファ１４５８とを含んでいる。これらの８個のリングバッファは、それぞれ投票メモリ更新制御部１４７に接続されて、投票メモリ更新制御部１４７により制御される。
【００９１】
本実施の形態では、第２及び第３の実施の形態と同様にして、投票される可能性がなくなった行については、すべてのエッジ点の投票処理を待たずに開票処理を行うことを前提として、リングバッファ１４５１〜１４５８は、そのような開票処理の際の集計に必要な行数分だけの投票点を格納するようにリングバッファ状に構成されている。投票メモリ更新制御部１４７は、リングバッファ１４５１〜１４５８の投票領域を更新する。
【００９２】
以下、投票リングバッファ１４５１〜１４５８の容量（行数）について詳しく説明する。第１投票点投票処理部１４３及び第２投票点投票処理部１４４は、上記の実施の形態と同様に、エッジ点について距離ｒを所定の範囲内で変更しながら１入力画像フレームに対する投票及び集計の処理を行うことで、円形状検出の場合は当該円形状の中心点を探索し、正三角形形状検出の場合には当該正三角形の内接円の中心を探索する。そして、第２及び第３の実施の形態では、投票処理を行うエッジ点から、距離ｒに基づく投票距離を超える所定の距離だけ過ぎた行については、すべてのエッジ点の投票処理が終了するのを待たずに開票処理をするようにした。
【００９３】
この投票距離は、上述のように距離ｒに基づくものであって、距離ｒの増加に伴って増加するものである。従って、ｒの変更範囲をｒmin≦ｒ≦ｒmaxとすると、投票距離は、１入力画像フレームに対して上記のようにｒを変更しながら円形状の中心点や正三角形の内接円の中心を探索する全課程を通して、ｒ＝ｒmaxのときに最も長くなる。
【００９４】
一般的には、円形状の中心点を探索するのに用いるｒmaxと、正三角形の内接円の中心を探索するのに用いるｒmaxと、その他の形状を検出するのに用いるｒmaxとはそれぞれ異なり、ｒと投票距離との関係も異なる。これらの中で最も長くなる投票距離を「最長投票距離」と呼ぶこととする。エッジ点から上下それぞれの方向に最長投票距離に対応する行数分（最長投票距離の２倍に対応する行数分）がそのエッジ点から投票される可能性がある空間となる。この空間を最大投票空間と呼ぶこととする。リングバッファ１４５１〜１４５８は、この最大投票空間内の投票点を格納できるだけの容量があればよい。よって、各リングバッファ１４５１〜１４５８は、最大投票空間をカバーできる所定の行数分の容量を有している。
【００９５】
投票メモリ更新制御部１４７は、投票処理の進行に応じて、各リングバッファ１４５１〜１４５８のアドレスと投票空間の座標との関連付けを更新する。具体的には、投票メモリ更新制御部１４７は、リングバッファ１４５１〜１４５８の、開票処理が終わった行に対応するアドレスを開放し（即ち、そのアドレスに記録されているカウント値をクリアし）、その開放したアドレスを、リングバッファ１４５１〜１４５８がカバーしている投票空間の直下の行に割り当てて、その新たな行に対する投票をカウントするためのアドレスとして再利用するように、更新を行う。投票メモリ更新制御部１４７がこのような更新を行うことで、第１投票点投票処理部１４３及び第２投票点投票処理部１４４による投票処理の対象となる行が下に進むにつれて、リングバッファ１４５１〜１４５８がカバーする投票空間も下に移動していくことになる。
【００９６】
このような第４の実施の形態の形状検出回路１４０によれば、１入力画像フレームの処理について、画像フレーム全体に対応する容量を有するメモリを投票メモリとして備える必要がなくなり、特に走行中の車両から撮像した画像中の道路標識を検出する場合のように、認識対象の大きさが画像フレームに対して非常に小さい場合（ｒmaxが小さい場合）、投票メモリの容量を大きく削減でき、ハードウェア規模を削減できることとなる。
【００９７】
（第５の実施の形態）
次に、本発明の第５の実施の形態の形状認識装置を説明する。第５の実施の形態の形状認識装置は、第１の実施の形態の形状認識装置と同一の構成を有する。本実施の形態の形状認識装置は、形状検出回路に特徴を有する。
【００９８】
図９は、本実施の形態の形状検出回路のブロック図である。図９に示すように、本実施の形態の形状検出処理部１５０は、上記の第３の実施の形態の形状検出回路１３０と同様に、エッジ点画像メモリ１５１と、エッジ点認識部１５２と、第１投票点投票処理部１５３と、第２投票点投票処理部１５４とを備えた構成を有している。
【００９９】
投票メモリに関しては、第３の実施の形態と同様に、エッジ点からみた投票点の方向に応じて８つの方向別に別々に設けるとともに、１つの方向に対応する投票メモリが更に偶数行用と奇数行用とに分けられている。即ち、投票メモリは、全部で１６個あり、偶数行上方向投票メモリ１５５１と、奇数行上方向投票メモリ１５５２と、偶数行右上方向投票メモリ１５５３と、奇数行右上方向投票メモリ１５５４と、偶数行右方向投票メモリ１５５５と、奇数行右方向投票メモリ１５５６と、偶数行右下方向投票メモリ１５５７と、奇数行右下方向投票メモリ１５５８と、偶数行下方向投票メモリ１５５９と、奇数行下方向投票メモリ１５６０と、偶数行左下方向投票メモリ１５６１と、奇数行左下方向投票メモリ１５６２と、偶数行左方向投票メモリ１５６３と、奇数行左方向投票メモリ１５６４と、偶数行左上方向投票メモリ１５６５と、奇数行左上方向投票メモリ１５６６とを含む。
【０１００】
形状検出回路１５０は、更に、偶数行用の投票メモリに対する投票の結果を集計する偶数行投票集計部１５６８と、奇数行用の投票メモリに対する投票の結果を集計する奇数行投票集計部１５６９と、偶数行及び奇数行に関して集計された投票結果を合算して最終的な開票処理を行う開票処理部１５６を有する。偶数行投票集計部１５６８及び奇数行投票集計部１５６９は、開票処理部１５６に接続されている。また、エッジ点認識部１５２は、開票処理部１５６に接続されている。
【０１０１】
１６個の投票メモリは、いずれも２ポートメモリで構成され、一方のポートは、第１投票点投票部１５３及び第２投票点投票部１５４に接続される。偶数行用の投票メモリの他方のポートは、偶数行投票集計部１５６８に接続されており、奇数行用の投票メモリの他方のポートは、奇数行投票集計部１５６９に接続されている。
【０１０２】
上記の実施の形態と同様に、第１投票点投票処理部１５３及び第２投票点投票処理部１５４は、エッジ点からみた投票点の方向に応じて、対応する方向の投票メモリに投票を行うが、このとき、エッジ点が偶数行にある場合には、偶数行用の投票メモリに投票し、エッジ点が奇数行にある場合には、奇数行用の投票メモリに投票をする。
【０１０３】
開票処理部１５６は、エッジ点認識部１５２からの投票処理の進行状況の通知を受けて開票処理を実施するが、このとき、投票空間の偶数行に関する投票結果の集計と、奇数行に関する投票結果の集計を、それぞれ偶数行投票集計部１５６８と奇数行投票集計部１５６９において並行して実施する。偶数行投票集計部１５６８と奇数行投票集計部１５６９はそれぞれ中間的な集計結果を開票処理部１５６に通知する。開票処理部１５６は、最終的な合算と開票結果の評価を行い、形状検出結果１１０２を出力する。
【０１０４】
このような本発明の第５の実施の形態の形状検出回路１５０によれば、開票処理における投票結果の集計を偶数行と奇数行とに分割し、並行して実施できることとなり、開票処理を高速化できる。なお、エッジ点認識部１５２、第１投票点投票処理部１５３、第２投票点投票処理部１５４として、上記で説明した第１ないし第４の何れの構成を採用することもできる。
【０１０５】
（第６の実施の形態）
次に、本発明の第６の実施の形態の形状認識装置を説明する。第６の実施の形態の形状認識装置は、第１の実施の形態の形状認識装置と同一の構成を有する。本実施の形態の形状認識装置は、形状検出回路に特徴を有する。
【０１０６】
図１０は、本実施の形態の形状検出回路のブロック図である。本実施の形態の形状検出処理部１６０は、６４０ピクセル×４８０ピクセル（ＶＧＡサイズ）の画像空間に展開されるエッジ検出情報１１０１から、３２ピクセル×３２ピクセル程度の大きさを持つ道路標識の部分形状、例えば速度標識における円形状を検出する。形状検出回路１６０は、１次画像バッファ１６１と、２次画像バッファ１６７と、画像バッファ更新制御部１６８を備えている。
【０１０７】
１次画像バッファ１６１は、エッジ検出情報１１０１をＶＧＡサイズの入力画像フレームを１フレームごとに暫定的に保存する。画像バッファ更新制御部１６８は、１次画像バッファ１６１に格納されたエッジ検出情報１１０１のうちの２５６ピクセル×４８０ピクセル分のエッジ検出情報のみを読み出して２次画像バッファ１６７に保存する。
【０１０８】
図１１は、１次画像バッファ１６１に保存されるエッジ検出情報と２次画像バッファ１６７に読み出されるエッジ検出情報との関係を示す図である。画像バッファ更新制御部１６８は、全幅６４０ピクセルの入力画像フレームの画像空間を、境界において検出対象形状の２倍程度の幅である６４ピクセルの幅を持たせて、２５６ピクセル幅ずつの３つの部分空間に分割して、１つずつ２次画像バッファ１６７に読み出す。２次画像バッファ１６７は、従って、３つに分割された空間の１つ分のエッジ検出情報を格納する容量を有する。
【０１０９】
エッジ点認識部１６２及び投票処理部１６３は、２次画像バッファ１６７に読み出された部分空間のみに対して形状検出処理を実施し、その部分空間に対する形状検出処理が終了すると、画像バッファ更新制御部１６８は、次の分割された部分空間のエッジ検出情報を１次画像バッファから読み出して２次画像バッファ１６７に保存するという更新処理を行う。
【０１１０】
図１１に示すように、３つの部分空間は互いに重複している。このように部分空間を重複させて２次画像バッファ１６８に読み出すのは、認識対象が分割された部分空間の端部に位置した場合に正しく認識できないことを避けるためである。このために、少なくとも認識対象の大きさの幅分を重複させる。より好ましくは、上記第２の実施の形態で説明した投票距離も考慮して、認識対象の大きさの１．５〜２．０倍程度重複させる。
【０１１１】
このような第６の実施の形態の形状検出回路１６０によれば、ダイナミック・リコンフィギュアラブル・デバイスの内部の、小容量ではあるが非常に高速にアクセス可能な内部メモリ上に２次画像バッファ１６７を配置することにより、処理中に画像バッファ内のエッジ検出情報への膨大な量のアクセスが必要となる前記投票や開票の処理を高速に実行することが可能となり、形状検出処理をさらに高速化できる。なお、エッジ点認識部１６２、投票処処理部１６３、投票メモリ１６５、開票処理部１６６として、上記で説明した第１ないし第５の何れの構成を採用することもできる。
【産業上の利用可能性】
【０１１２】
以上のように、本発明にかかる形状認識装置は、高速な処理を実現できるとともに、ハードウェア規模を削減できるという効果を有し、画像から特定の形状を検出して認識する形状認識装置等に適用できる。特に、本発明に係る形状認識装置は、走行中の車両にて撮影した画像からリアルタイムに道路標識を認識する道路標識認識装置に適用できる。
【符号の説明】
【０１１３】
１０  形状認識装置
１１  リコンフ部
１２  制御ＣＰＵ部
１３  構成情報メモリ
１３０１  エッジ検出回路構成情報
１３０２  形状検出回路構成情報
１３０３  形状識別回路構成情報
１４  メモリ
１０１  入力画像フレーム
１０２  形状認識結果
１１０  形状検出回路
１１１  エッジ点画像メモリ
１１２  エッジ点認識部
１１３  第１投票点投票処理部
１１４  第２投票点投票処理部
１１５１  上方向投票メモリ
１１５２  右上方向投票メモリ
１１５３  右方向投票メモリ
１１５４  右下方向投票メモリ
１１５５  下方向投票メモリ
１１５６  左下方向投票メモリ
１１５７  左方向投票メモリ
１１５８  左上方向投票メモリ
１１６  集計開票処理部
１１０１  エッジ検出情報
１１０２  形状検出結果
１２０  形状検出回路
１２１  エッジ点画像メモリ
１２２  エッジ点認識部
１２３  第１投票点投票処理部
１２４  第２投票点投票処理部
１２５１  上方向投票メモリ
１２５２  右上方向投票メモリ
１２５３  右方向投票メモリ
１２５４  右下方向投票メモリ
１２５５  下方向投票メモリ
１２５６  左下方向投票メモリ
１２５７  左方向投票メモリ
１２５８  左上方向投票メモリ
１２６  集計開票処理部
１３０  形状検出回路
１３１  エッジ点画像メモリ
１３２  エッジ点認識部
１３３  第１投票点投票処理部
１３４  第２投票点投票処理部
１３５１  上方向投票メモリ
１３５２  右上方向投票メモリ
１３５３  右方向投票メモリ
１３５４  右下方向投票メモリ
１３５５  下方向投票メモリ
１３５６  左下方向投票メモリ
１３５７  左方向投票メモリ
１３５８  左上方向投票メモリ
１３６  集計開票処理部
１４０  形状検出回路
１４１  エッジ点画像メモリ
１４２  エッジ点認識部
１４３  第１投票点投票処理部
１４４  第２投票点投票処理部
１４５１  上方向投票リングバッファ
１４５２  右上方向投票リングバッファ
１４５３  右方向投票リングバッファ
１４５４  右下方向投票リングバッファ
１４５５  下方向投票リングバッファ
１４５６  左下方向投票リングバッファ
１４５７  左方向投票リングバッファ
１４５８  左上方向投票リングバッファ
１４６  集計開票処理部
１４７  投票メモリ更新制御部
１５０  形状検出回路
１５１  エッジ点画像メモリ
１５２  エッジ点認識部
１５３  第１投票点投票処理部
１５４  第２投票点投票処理部
１５５１  偶数行上方向投票メモリ
１５５２  奇数行上方向投票メモリ
１５５３  偶数行右上方向投票メモリ
１５５４  奇数行右上方向投票メモリ
１５５５  偶数行右方向投票メモリ
１５５６  奇数行右方向投票メモリ
１５５７  偶数行右下方向投票メモリ
１５５８  奇数行右下方向投票メモリ
１５５９  偶数行下方向投票メモリ
１５６０  奇数行下方向投票メモリ
１５６１  偶数行左下方向投票メモリ
１５６２  奇数行左下方向投票メモリ
１５６３  偶数行左方向投票メモリ
１５６４  奇数行左方向投票メモリ
１５６５  偶数行左上方向投票メモリ
１５６６  奇数行左上方向投票メモリ
１５６８  偶数行投票集計部
１５５９  奇数行投票集計部
１５６  開票処理部
１６０  形状検出回路
１６１  １次画像バッファ
１６２  エッジ点認識部
１６３  投票処理部
１６５  投票メモリ
１６６  開票処理部
１６７  ２次画像バッファ
１６８  画像バッファ更新制御部
【図１】
2011242915.tif 000003
【図２】
2011242915.tif 000004
【図３】
2011242915.tif 000005
【図４】
2011242915.tif 000006
【図５】
2011242915.tif 000007
【図６】
2011242915.tif 000008
【図７】
2011242915.tif 000009
【図８】
2011242915.tif 000010
【図９】
2011242915.tif 000011
【図１０】
2011242915.tif 000012
【図１１】
2011242915.tif 000013
【図１２】
2011242915.tif 000014
【図１３】
2011242915.tif 000015
【図１４】
2011242915.tif 000016