(57)【要約】【課題】低コストのハードウェアで画像認識機能を実現する。【解決手段】本実施の形態の画像認識装置は、クロックに同期して共起ペアを順次抽出し、抽出した共起ペアに対応して入力層と中間層の接続部分の重み付けを設定して、入力層に順次１票を入力する。一方、中間層は、順次入力される票数を加算・記憶していく。この動作を継続すると、ヒストグラムを作成せずに、ヒストグラムを入力層に入力した場合と同じ値が中間層で実現する。このようにして、本実施の形態の画像認識装置は、莫大なメモリを消費するヒストグラムの作成を回避して画像認識処理を行うことができる。これにより、メモリ資源の節約、回路の簡略化、及び計算速度の向上を図ることができ、画像認識装置を好適に集積回路化することができる。【選択図】図１９
2020166341.tif 000002
【特許請求の範囲】
【請求項１】
画像認識対象の特徴要素を取得する特徴要素取得手段と、
前記特徴要素が直接入力され、該特徴要素に複数値の重みを付ける加算層を有し、前記加算層で前記特徴要素が順次加算された加算値を用いて識別対象を認識する画像認識手段と、
を具備したことを特徴とする画像認識装置。
【請求項２】
前記画像認識手段は、前記特徴要素に対して２値の重みを付けるバイナリネットワークである、
ことを特徴とする請求項１に記載の画像認識装置。
【請求項３】
前記画像認識手段は、前記特徴要素が順次加算された加算値の合計値を取得した後に前記画像認識の画像認識結果を確定する画像認識結果出力手段を備える、
ことを特徴とする請求項１又は請求項２に記載の画像認識装置。
【請求項４】
前記画像認識手段は、前記特徴要素が順次加算された加算値の合計値に対応する画像認識結果を、当該記憶の更新に伴って順次更新し、当該更新した画像認識結果が所定回数連続して同じであった場合に、画像認識結果を出力する、
ことを特徴とする請求項１又は請求項２記載の画像認識装置。
【請求項５】
画像を取得する画像取得手段と、
前記取得した画像の画素の画素値として輝度を取得する画素値取得手段と、を備え、
前記特徴要素取得手段は、前記取得した前記輝度による輝度勾配方向に基づいて、前記画像認識対象の特徴を表す特徴量の複数種類の特徴要素を、特徴要素毎に順次取得し、
前記画像認識手段は、前記特徴要素毎に前記加算層で順次加算される、
ことを特徴とする請求項１から請求項４までのうちの何れか１の請求項に記載の画像認識装置。
【請求項６】
前記特徴要素取得手段は、前記輝度勾配方向の共起に基づいて前記特徴要素を取得することを特徴とする請求項５に記載の画像認識装置。
【請求項７】
前記画像取得手段は、同一被写体の異なる解像度の画像を取得し、
前記特徴要素取得手段は、前記輝度勾配方向の前記異なる解像度の画像に渡る共起に基づいて前記特徴要素を取得することを特徴とする請求項６に記載の画像認識装置。
【請求項８】
前記取得した特徴要素のうち、所定の特徴要素を選択して前記加算層に入力する選択手段、
を具備したことを特徴とする請求項１から請求項７のうちの何れか１の請求項に記載の画像認識装置。
【請求項９】
前記取得した特徴要素を順次複製して前記加算層に入力する複製手段、
を具備したことを特徴とする請求項１から請求項８のうちの何れか１の請求項に記載の画像認識装置。
【請求項１０】
画像認識対象の特徴要素を取得する特徴要素取得機能と、
前記特徴要素が直接入力され、該特徴要素に複数値の重みを付ける加算層を有し、前記加算層で前記特徴要素が順次加算された加算値を用いて識別対象を認識する画像認識機能と、
をコンピュータで実現する画像認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像認識装置、及び画像認識プログラムに関し、例えば、学習した対象を画像認識するものに関する。
【背景技術】
【０００２】
近年、カメラで撮影した画像から、特定の対象を認識し、これを識別する技術が急速に進展しており、例えば、自動車の運転支援や医療の診断支援など、多方面で利用されつつある。
これら、画像認識技術では、何らかの手法により画像から特徴量を抽出し、これを画像認識対象（例えば、歩行者などの人）の特徴量と比較することにより、当該画像に画像認識対象が存在するか否かを判断している。
このような画像認識を行うものに非特許文献１の技術がある。
【０００３】
当該技術は、画像の局所的な輝度勾配方向（輝度の勾配方向）を特徴要素とし、これの出現回数を２次元ヒストグラムで表すことにより被写体の特徴量を抽出するＨＯＧ特徴量を特徴記述部に用いている。そして、当該技術は、ＨＯＧ特徴量をＳＶＭ（ｓｕｐｐｏｒｔ  ｖｅｃｔｏｒ  ｍａｃｈｉｎｅ）で分類することにより当該特徴量が人によるものかどうかを識別している。
【０００４】
この他に画像から特徴量を抽出する技術には、ＨＯＧ特徴量より頑健性を有するＣｏＨＯＧ特徴量や、更に頑健性を有するＭＲＣｏＨＯＧ特徴量などがある。
ＣｏＨＯＧ特徴量は、画像中の輝度勾配方向の共起ペア（輝度勾配方向の組）を特徴要素とし、その出現回数を２次元ヒストグラムで表したものである。
また、ＭＲＣｏＨＯＧ特徴量は、同一被写体の異なる解像度の画像間での輝度勾配方向の共起ペアを特徴要素とし、その出現回数を２次元ヒストグラムで表したものである。
【０００５】
ところで、従来は、これらの特徴量を用いる場合、メモリにヒストグラムを作成し、共起ペアに応じてこれに投票（対応する共起ペアの出現回数をカウントアップ）していた。
そのため、ヒストグラム作成のたびにメモリを大規模に確保する必要があり、これを集積回路などのハードウェアに実装する際、回路が大規模になってコストが大きくなってしまうという問題があった。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Ｔｏｍｏｋｉ  Ｗａｔａｎａｂｅ，  Ｓａｔｏｓｈｉ  Ｉｔｏ  ｅｔｃ．；”Ｃｏ−ｏｃｃｕｒｒｅｎｃｅ  Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔｓ  ｆｏｒ  Ｈｕｍａｎ  Ｄｅｔｅｃｔｉｏｎ”，  ＩＰＳＪ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ  ａｎｄ  Ａｐｐｌｉｃａｔｉｏｎｓ，  Ｖｏｌ．２  ｐｐ．３９−４７，  ２０１０
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明は、低コストのハードウェアで画像認識機能を実現することを目的とする。
【課題を解決するための手段】
【０００８】
（１）本発明は前記目的を達成するために、請求項１に記載の発明では、画像認識対象の特徴要素を取得する特徴要素取得手段と、前記特徴要素が直接入力され、該特徴要素に複数値の重みを付ける加算層を有し、前記加算層で前記特徴要素が順次加算された加算値を用いて識別対象を認識する画像認識手段と、を具備したことを特徴とする画像認識装置を提供する。
（２）請求項２に記載の発明では、前記画像認識手段は、前記特徴要素に対して２値の重みを付けるバイナリネットワークである、ことを特徴とする請求項１に記載の画像認識装置を提供する。
（３）請求項３に記載の発明では、前記画像認識手段は、前記特徴要素が順次加算された加算値の合計値を取得した後に前記画像認識の画像認識結果を確定する画像認識結果出力手段を備える、ことを特徴とする請求項１又は請求項２に記載の画像認識装置を提供する。
（４）請求項４に記載の発明では、前記画像認識手段は、前記特徴要素が順次加算された加算値の合計値に対応する画像認識結果を、当該記憶の更新に伴って順次更新し、当該更新した画像認識結果が所定回数連続して同じであった場合に、画像認識結果を出力する、ことを特徴とする請求項１又は請求項２記載の画像認識装置を提供する。
（５）請求項５に記載の発明では、画像を取得する画像取得手段と、前記取得した画像の画素の画素値として輝度を取得する画素値取得手段と、を備え、前記特徴要素取得手段は、前記取得した前記輝度による輝度勾配方向に基づいて、前記画像認識対象の特徴を表す特徴量の複数種類の特徴要素を、特徴要素毎に順次取得し、前記画像認識手段は、前記特徴要素毎に前記加算層で順次加算される、ことを特徴とする請求項１から請求項４までのうちの何れか１の請求項に記載の画像認識装置を提供する。
（６）請求項６に記載の発明では、前記特徴要素取得手段は、前記輝度勾配方向の共起に基づいて前記特徴要素を取得することを特徴とする請求項５に記載の画像認識装置を提供する。
（７）請求項７に記載の発明では、前記画像取得手段は、同一被写体の異なる解像度の画像を取得し、前記特徴要素取得手段は、前記輝度勾配方向の前記異なる解像度の画像に渡る共起に基づいて前記特徴要素を取得することを特徴とする請求項６に記載の画像認識装置を提供する。
（８）請求項８に記載の発明では、前記取得した特徴要素のうち、所定の特徴要素を選択して前記加算層に入力する選択手段、を具備したことを特徴とする請求項１から請求項７のうちの何れか１の請求項に記載の画像認識装置を提供する。
（９）請求項９に記載の発明では、前記取得した特徴要素を順次複製して前記加算層に入力する複製手段、を具備したことを特徴とする請求項１から請求項８のうちの何れか１の請求項に記載の画像認識装置を提供する。
（１０）請求項１０に記載の発明では、画像認識対象の特徴要素を取得する特徴要素取得機能と、前記特徴要素が直接入力され、該特徴要素に複数値の重みを付ける加算層を有し、前記加算層で前記特徴要素が順次加算された加算値を用いて識別対象を認識する画像認識機能と、をコンピュータで実現する画像認識プログラムを提供する。
【発明の効果】
【０００９】
本発明によれば、ヒストグラムの作成を要しないため、低コストのハードウェアで画像認識機能を実現することができる。
【図面の簡単な説明】
【００１０】
【図１】画像認識装置を実装したコンピュータの構成の一例を示した図である。
【図２】ＨＯＧ特徴量の概念を説明するための図である。
【図３】ＣｏＨＯＧ特徴量の概念を説明するための図である。
【図４】ＭＲＣｏＨＯＧ特徴量の概念を説明するための図である。
【図５】計算方法を説明するための図である。
【図６】特徴抽出部の回路構成を示した図である。
【図７】解像度変換処理を説明するための図である。
【図８】勾配方向算出部などの動作を説明するための図である。
【図９】垂直方向のデータ延ばし処理を説明するための図である。
【図１０】水平方向のデータ延ばし処理を説明するための図である。
【図１１】共起ペア計算部が共起ペアを計算する仕組みを説明するための図である。
【図１２】入力部と認識部の構成を説明するための図である。
【図１３】ＢＮＮの仕組みを説明するための図である。
【図１４】入力層と中間層の一部を示した図である。
【図１５】中間層と出力層の一部を示した図である。
【図１６】画像処理手順を説明するためのフローチャートである。
【図１７】半導体装置の構成例を示した図である。
【図１８】変形例を説明するための図である。
【図１９】本実施の形態の概要を説明するための図である。
【発明を実施するための形態】
【００１１】
（１）実施形態の概要
図１９は、本実施の形態の概要を説明するための図である。
図１９（ａ）に示したように、従来の画像認識装置は、画像から（↑→）、（↓←）、・・・などと、勾配輝度方向の共起ペアを順次抽出すると、これを仕分けしてその出現回数を加算することによりメモリ上のヒストグラムに投票（カウントアップ）する。
これによって、例えば、（↑→）は８票、（↓←）は２票、・・・などといったヒストグラムによって当該画像の特徴量が記述される。
そして、従来の画像認識装置は、ヒストグラムが完成すると、これを予め画像認識対象を学習してあるニューラルネットワークの入力層に入力し、画像認識結果を出力層から得ている。
【００１２】
これに対し、本実施の形態の画像認識装置は、図１９（ｂ）に示したように、クロックに同期して共起ペアを順次抽出し、抽出した共起ペアに対応して入力層と中間層の接続部分の重み付けを設定して、入力層に順次１票を入力する。一方、中間層は、順次入力される票数を加算・記憶していく。
この動作を継続すると、ヒストグラムを作成せずに、ヒストグラムを入力層に入力した場合と同じ値が中間層で実現する。
なお、従来技術におけるヒストグラムへの投票は、対応する共起ペアの出現回数をカウントアップすることをいい、一方、ヒストグラムを作成しない本実施形態における投票は、共起ペア等の特徴要素に対して学習結果による重み付けをしたうえで中間層に順次入力することをいう。
【００１３】
このようにして、本実施の形態の画像認識装置は、莫大なメモリを消費するヒストグラムの作成を回避して画像認識処理を行うことができる。
これにより、メモリ資源の節約、回路の簡略化、及び計算速度の向上を図ることができ、画像認識装置を好適に集積回路化することができる。
【００１４】
（２）実施形態の詳細
図１は、本実施形態に係る画像認識装置２００を実装したコンピュータ８０の構成の一例を示した図である。
コンピュータ８０は、例えば、車両に搭載されて、自動運転やナビゲーションなどの運転支援に用いられる。
なお、以下では画像認識装置２００が画像認識処理を行う場合について説明するが、この技術は、音声認識や医療診断など、人工知能が行う識別処理に広く適用することができる。
【００１５】
コンピュータ８０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）８１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）８２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）８３、カメラ８４、画像認識装置２００、記憶装置８５、入力装置８７、出力装置８８などから構成されている。
【００１６】
ＣＰＵ８１は、記憶装置８５に記憶されたアプリケーションプログラムに従って所望の処理を行うほか、コンピュータ８０の各部の制御などを行う。
ＲＯＭ８２は、ＣＰＵ８１がコンピュータ８０を動作させるための基本的なプログラムやパラメータなどを記憶した読み取り専用のメモリである。
ＲＡＭ８３は、ＣＰＵ８１がアプリケーション機能を発揮するためのワーキングメモリを提供する読み書きが可能なメモリである。
画像認識装置２００が行った画像認識の識別結果は、ＲＡＭ８３に記憶され、アプリケーションプログラムに従って利用される。
カメラ８４は、動画撮影カメラであって、被写体を動画撮影して動画フレームからなる画像データ（以下、単に画像と記す）を時系列に従って画像認識装置２００に出力する。
なお本実施形態における画像認識装置２００、画像認識用の専用のハードウェアを半導体装置で形成し、このハードウェアで画像認識を行うように構成しているが、ＣＰＵ８１が画像認識用のプログラムに従って画像の特徴量抽出を含む画像認識を行うように構成することも可能である。
また、画像認識装置２００を含むコンピュータ８０全体を、半導体装置で形成した専用のハードウェアで構成するようにしてもよい。
【００１７】
記憶装置８５は、例えば、ハードディスクや半導体メモリなどの記憶媒体を用いた記憶装置であり、ＣＰＵ８１に画像認識による識別結果を用いた応用処理を行わせるためのアプリケーションプログラムなどを記憶している。
また、記憶装置８５は、アプリケーションプログラムの動作設定などを記憶するデータ記憶部も備えている。
この動作設定は、例えば、画像認識装置２００が人物を検出した場合に、ドライバにアラームを発するか否かといった内容がユーザによって設定されたものである。
【００１８】
入力装置８７は、コンピュータ８０に各種の情報を入力する装置であり、ユーザがコンピュータ８０を操作するための操作ボタンなどの入力デバイスで構成されている。
出力装置８８は、コンピュータ８０が各種の情報を出力する装置であり、例えば、操作画面を表示したり、カメラ８４が撮影した動画上で画像認識装置２００が検知した人（歩行者）を矩形で囲って表示したりする液晶ディスプレイなどの出力デバイスで構成されている。
【００１９】
画像認識装置２００は、画像から画像認識対象である人（一般の歩行者とする）を画像認識することにより識別し、その画像認識結果を出力するハードウェア装置である。
画像認識装置２００は、画像から当該画像の特徴量（ＭＲＣｏＨＯＧ特徴量など）を構成する構成要素である特徴要素（共起ペアなど）を抽出する特徴抽出部２１、重みテーブル２０３を参照することにより当該抽出した特徴要素を重み付けして認識部２０１に入力する入力部２０２、及び、ニューラルネットワークを用いて画像認識対象を認識する認識部２０１を備えている。
【００２０】
次に、本実施の形態で用いる画像の特徴量について説明する。
画像認識技術には、画像から特徴量として輝度勾配分布を抽出し、これを予め学習した画像の輝度勾配分布と比較することにより対象を認識するものがある。
輝度勾配分布による特徴量としては、ＨＯＧ特徴量（Ｈｉｓｔｏｇｒａｍｓ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔｓ）が有名であり、盛んに研究されている。
【００２１】
ＨＯＧ特徴量を発展させた特徴量にＣｏＨＯＧ特徴量（Ｃｏ−ｏｃｃｕｒｒｅｎｃｅ  ＨＯＧ）があり、ＨＯＧ特徴量よりも頑健性（ロバスト性）を有している。
そして、近年、ＣｏＨＯＧ特徴量よりも更に頑健性を有するＭＲＣｏＨＯＧ特徴量（Ｍｕｌｔｉ  Ｒｅｓｏｌｕｔｉｏｎ  ＣｏＨＯＧ）が提案されている。
ＭＲＣｏＨＯＧ特徴量は、極めて高い頑健性を有していることが実験により明らかになっている。
【００２２】
これらの特徴量は、輝度勾配方向に基づく要素を特徴要素とし、これを投票した出現回数を度数とする２次元ヒストグラムによって記述される。
画像認識装置２００は、これらのヒストグラムによって特徴量が記述される対象に対してヒストグラムを作成せずに、特徴要素を学習結果による重み付けをしたうえで中間層に順次入力することで画像認識を可能とするものであり、上記の特徴量以外であっても、ヒストグラムによって特徴量を記述するものに広く適用することができる。
【００２３】
次に、ＨＯＧ特徴量、ＣｏＨＯＧ特徴量、及びＭＲＣｏＨＯＧ特徴量について説明する。
図２は、ＨＯＧ特徴量の概念を説明するための図である。
ＨＯＧ特徴量は、次の手順により画像から抽出される。
図２（ａ）左図に示した画像１０１は、対象を観測する観測窓などによる注目画像領域とする。
まず、画像１０１を矩形のセル１０２ａ、１０２ｂ、・・・に分割する。
次に、図２（ａ）右図に示したように、セル１０２ごとに各画素（ピクセル）の輝度勾配方向（低輝度から高輝度に向かう方向）を例えば８方向に量子化する。
【００２４】
次に、図２（ｂ）に示したように、量子化した輝度勾配方向を階級とし、出現回数を度数とするヒストグラムを生成することにより、セル１０２に含まれる輝度勾配方向のヒストグラム１０６をセル１０２ごとに作成する。
そして、セル１０２をいくつか集めたブロック単位でヒストグラム１０６の合計度数が１となるように正規化する。
【００２５】
図２（ａ）左図の例では、セル１０２ａ、１０２ｂ、１０２ｃ、１０２ｄから１ブロックが形成されている。
このようにしてヒストグラム１０６ａ、１０６ｂ、・・・を図２（ｃ）のように一列に並べて正規化したものが画像１０１のＨＯＧ特徴量１０７である。
ＨＯＧ特徴量の場合は、輝度勾配方向が特徴要素となり、これのヒストグラムが特徴量となる。
【００２６】
図３は、ＣｏＨＯＧ特徴量の概念を説明するための図である。
ＣｏＨＯＧ特徴量は、局所領域における２画素間の輝度勾配方向の共起ペアに着目した特徴量であり、次の手順により画像から抽出される。
図３（ａ）に示したように、画像１０１を矩形のセル１０２ａ、１０２ｂ、・・・に分割する。なお、セルは、ブロックとも呼ばれる。
【００２７】
ＣｏＨＯＧ特徴量では、セル１０２ａ、１０２ｂ、・・・に注目画素１１０を設定し、注目画素１１０の輝度勾配方向と、注目画素１１０から距離１〜４にある画素の輝度勾配方向との組合せ（共起ペア）により共起行列（注目画素１１０に関するヒストグラム）を作成する。なお、注目画素１１０との組合せに係る画素はオフセットと呼ばれる。
【００２８】
例えば、注目画素１１０からの距離は、数式で表されるが、当該数式を適用すると、図３（ａ）に示したように、距離１の画素として、注目画素１１０に隣接する画素１ａ〜１ｄが得られる。
なお、注目画素１１０の上と左の画素が組合せに含まれないのは、一番上の画素行の左端から右方向に向けて順に注目画素１１０を設定して処理していくため、既に処理が終了しているからである。
【００２９】
次に、注目画素１１０と画素１ａの輝度勾配方向を観察する。輝度勾配方向は、例えば８方向に量子化されており、図では方向を矢線で示してある。
注目画素１１０の輝度勾配方向は、右方向で画素１ａの輝度勾配方向は、右上方向である。そのため、これによる共起ペアは、（右方向、右上方向）となる。
そこで、図３（ｂ）の共起行列１１３で、（行番号、列番号）＝（右方向、右上方向）の要素に１票を投じる。
図３（ｂ）の例では、注目画素１１０と画素１ａの輝度勾配方向の組みとして、行番号として右方向の矢印が記載された行と、列番号として右上方向の矢印が記載された列の要素に１が加算された結果、当該要素の値が１０になっている。
【００３０】
なお、本来は、共起行列１１３を立体的なヒストグラムで描き、票数を高さ方向の棒グラフで表すべきであるが、図を簡略化するため票数を数値で表している。
以下、同様に注目画素１１０と画素１ｂ、１ｃ、１ｄとの組合せによる投票（計数）を行う。
【００３１】
図３（ｃ）に示したように、注目画素１１０を中心に、距離２の画素は画素１ａ〜１ｄの外周にある画素２ａ〜２ｆ、距離３の画素は更にその外周の画素３ａ〜３ｈ、距離４の画素は更にその外周の画素４ａ〜４ｌと規定されている。
これらについても同様に注目画素１１０と組合せて共起行列１１３に投票する。
【００３２】
以上の投票処理をセル１０２を構成する全画素について行い、画素ごとの共起行列が得られる。
更に、これを全てのセル１０２で行い、全ての共起行列の成分を図３（ｄ）に示したように一列に並べて正規化したヒストグラムが画像１０１のＣｏＨＯＧ特徴量１１７である。
ＣｏＨＯＧ特徴量の場合は、同一画像上の輝度勾配方向の共起ペアが特徴要素となり、これのヒストグラムが特徴量となる。
【００３３】
図４は、ＭＲＣｏＨＯＧ特徴量を説明するための図である。
ＭＲＣｏＨＯＧ特徴量は、同じ画像の異なる解像度間で共起をみることでオフセット数を大幅に削減する。
まず、図４（ａ）に示したように、元画像から解像度（画像サイズ）の異なる画像を生成することにより高解像度画像１２０（元画像）、中解像度画像１２１、低解像度画像１２２を得る。画像中の升目は、画素を表している。図示しないが、これら各解像度画像にもセル（ブロックとも呼ばれる）が設定されている。
そして、高解像度画像１２０、中解像度画像１２１、及び低解像度画像１２２のそれぞれの画素について量子化した輝度勾配方向を計算する。
【００３４】
ＭＲＣｏＨＯＧ特徴量の抽出には、中解像度画像１２１、低解像度画像１２２を用いるが、分かり易くするために、図４（ｂ）に示したように、中解像度画像１２１と低解像度画像１２２を中解像度画像１２１ａと低解像度画像１２２ａに引き延ばし、高解像度画像１２０と同じサイズにする。
【００３５】
次に、図４（ｃ）に示したように、ＣｏＨＯＧ特徴量と同様に、高解像度画像１２０の注目画素１２５における輝度勾配方向と、その周囲の高解像度画像１２０の画素１ａ〜１ｄの輝度勾配方向との共起（輝度勾配方向の組合せ）を取って、図示しない共起行列に投票する。
【００３６】
次に、高解像度画像１２０の注目画素１２５と、画素１ａ〜１ｄの外周にある中解像度画像１２１ａの画素２ａ〜２ｄとの共起に従って共起行列に投票し、更に、注目画素１２５と、画素２ａ〜２ｄの外周にある低解像度画像１２２ａの画素３ａ〜３ｄとの共起に従って共起行列に投票する。
【００３７】
このようにして、高解像度画像１２０の注目画素１２５に対して、高解像度画像１２０内での組合せ、中解像度画像１２１ａとの組合せ、低解像度画像１２２ａとの組合せで共起を取った共起行列が得られる。
この処理を、高解像度画像１２０のセル内の各画素に対して行い、更に、全てのセルについて行う。
これにより、高解像度画像１２０の画素ごとの共起行列が得られる。
【００３８】
同様にして、更に、中解像度画像１２１ａに注目画素を設定した場合の各解像度画像との共起行列、低解像度画像１２２ａに注目画素を設定した場合の各解像度画像との共起行列を計算し、全ての共起行列の成分を図４（ｄ）に示したように一列に並べて正規化したヒストグラムが高解像度画像１２０のＭＲＣｏＨＯＧ特徴量１２７である。
【００３９】
なお、この例では、高解像度画像１２０に注目画素を設定した場合の共起行列、中解像度画像１２１ａに注目画素を設定した場合の共起行列、低解像度画像１２２ａに注目画素を設定した場合の共起行列を連結したヒストグラムをＭＲＣｏＨＯＧ特徴量としたが、何れか１つ、例えば、高解像度画像１２０に注目画素を設定した場合の共起行列によるヒストグラムをＭＲＣｏＨＯＧ特徴量とすることも可能である。
また、何れか２つを組合せてもよいし、更に、解像度を増やして４種類以上の解像度画像で共起をとってもよい。
【００４０】
ＭＲＣｏＨＯＧ特徴量の場合は、同一被写体の複数の解像度による画像上の輝度勾配方向の共起ペアが特徴要素となり、これのヒストグラムが特徴量となる。
ＭＲＣｏＨＯＧ特徴量によって、ＣｏＨＯＧより大幅に特徴量を減らすことができる一方、頑健性がＣｏＨＯＧよりも高いことが実験から明らかになっている。
これは、解像度を低下させることによりノイズが低減することと、注目画素から離れた部分との共起をみるためではないかと推測されている。
以上、輝度勾配方向に基づく３つの特徴量について説明したが、本実施の形態では、これら３つのうちで最も優れているＭＲＣｏＨＯＧ特徴量を採用した。
【００４１】
以下、画像認識装置２００の構成を詳細に説明するが、その前に、数学的な計算式のハードウェアへの適用形態について説明する。
ＭＲＣｏＨＯＧ特徴量を算出するためには、平方根、除算、逆正接を計算する必要がある。
ところが、コンピュータは、加算によって平方根などの各種計算をするため、これらの演算は、負荷が大きい。
そのため、計算速度を高速化したり、ＩＣチップ化（集積回路化）できるように回路規模を適正なものにするためには、ハードウェアに適した計算方法を考案する必要がある。
【００４２】
図５は、本実施形態で用いる計算方法を説明するための図である。
図５（ａ）の式（１）のｍ（ｘ、ｙ）は、座標（ｘ、ｙ）にある画素の輝度勾配の勾配強度の計算式を示している。
なお、文字化け防止のために、下付の小文字は、全角文字で表す。
【００４３】
ｆｘ（ｘ、ｙ）、ｆｙ（ｘ、ｙ）は、それぞれ、ｘ方向（水平方向・横方向）とｙ方向（垂直方向・縦方向）の輝度の勾配強度である。
ｆｘ（ｘ、ｙ）、ｆｙ（ｘ、ｙ）は、数学的には、輝度をｘ方向、ｙ方向に偏微分して求めるが、本実施形態では、ｆｘ（ｘ、ｙ）を着目画素の水平方向（左右横方向）両隣に隣接する画素の輝度の差分で表し、ｆｙ（ｘ、ｙ）を着目画素の垂直方向（上下縦方向）両隣に隣接する画素の輝度の差分で表す。
【００４４】
式（１）に示したように、勾配強度は、平方根を含んでいるが、ユーグリッド距離をマンハッタン距離に置き換えることにより、式（１）を式（２）の加算式で近似する。
この置き換えは、図５（ａ）の右図に示したように、地点ＴＳ間のユーグリッド距離である（ｔ自乗＋ｓ自乗）の平方根を、マンハッタン距離であるｔ＋ｓで近似するものである。名称のマンハッタンは、米国都市のマンハッタンの街路が碁盤の目状であることに由来する。
【００４５】
勾配強度は、輝度勾配に係る輝度の高低差が大きいほど大きくなる量であり、ゼロオフセットに用いられる。
勾配強度が所定の閾値に達しないものに関しては、例えば、共起を取らないなどの所定の処理を行うが、画像の識別精度に与える影響が小さいため、本実施形態では、当該処理については説明を省略する。
実験の結果、ユーグリッド距離をマンハッタン距離で置き換えても画像認識能力には、殆ど影響しないことが確認された。
【００４６】
図５（ｂ）の式（３）は、一般に使用される輝度勾配方向θの計算式を示している。
式（３）は、ｆｘ（ｘ、ｙ）によるｆｙ（ｘ、ｙ）の除算と、逆正接（ａｒｃｔａｎｇｅｎｔ）の計算が含まれているため、計算に必要な処理負荷が大きくなる。
そこで、本実施形態では、ＭＲＣｏＨＯＧ特徴量の計算で必要なのは、式（３）による正確な値ではなく、量子化された輝度勾配方向であることに着目し、式（３）を用いずに、ｆｘ（ｘ、ｙ）とｆｙ（ｘ、ｙ）の組と輝度勾配方向を対応させた対応テーブルを用意し、これによってｆｘ（ｘ、ｙ）とｆｙ（ｘ、ｙ）の組を量子化された輝度勾配方向に写像する。
【００４７】
図５（ｃ）は、角度θの範囲と量子化した輝度勾配方向θとの関係を表したものである。
本実施形態では、一例として、輝度勾配方向を８方向に量子化するものとする。
ここでは、図５（ｃ）に示すように、輝度勾配方向θが０°≦θ＜４５°のものは０°に量子化し、４５°≦θ＜９０°のものは４５°に量子化し、他の角度も同様に、９０°、１３５°、１８０°、２２５°、２７０°、３１５°に量子化するものとする。
【００４８】
この手法では、まず、分類１１に従って、ｆｘ（ｘ、ｙ）とｆｙ（ｘ、ｙ）の正負の組合せをａ〜ｄに分類する。
分類ａはｆｘ（ｘ、ｙ）とｆｙ（ｘ、ｙ）が共に正の場合、分類ｂはｆｘ（ｘ、ｙ）とｆｙ（ｘ、ｙ）が共に負の場合、分類ｃはｆｘ（ｘ、ｙ）が正でｆｙ（ｘ、ｙ）が負の場合、分類ｄは、ｆｘ（ｘ、ｙ）が負でｆｙ（ｘ、ｙ）が正の場合である。
【００４９】
次に、ｆｘ（ｘ、ｙ）とｆｙ（ｘ、ｙ）の大小関係を比較し、分類１２に従って、量子化された輝度勾配方向に対応させる。
分類がａで、ｙがｘ以下の場合は、０°に対応させ、ｙがｘより大きい場合は、４５°に対応させる。
分類がｂで、−ｙがｘ以下の場合は、９０°に対応させ、−ｙがｘより大きい場合は、１３５°に対応させる。
【００５０】
分類がｃで、ｙがｘ以上の場合は、１８０°に対応させ、ｙがｘより小さい場合は、２２５°に対応させる。
分類がｄで、−ｙがｘ以上の場合は、２７０°に対応させ、−ｙがｘより小さい場合は、３１５°に対応させる。
このように、本実施形態では、分類１１、１２によって構成される対応テーブルを参照することにより、逆正接や除算を使用せずに、高速に量子化された輝度勾配方向を得ることができる。
【００５１】
このように、本実施形態の画像処理装置は、注目画素の隣接画素の輝度を用いて注目画素の水平方向の輝度勾配強度ｆｘ（ｘ、ｙ）、及び垂直方向の輝度勾配強度ｆｙ（ｘ、ｙ）を取得し、当該取得した水平方向の輝度勾配強度と垂直方向の輝度勾配強度を、水平方向の輝度勾配強度と垂直方向の輝度勾配強度の正負及び大小と、量子化した勾配方向と、を対応させた対応テーブルで参照して量子化した輝度勾配方向を出力している。
【００５２】
次に、画像認識装置２００の構成について説明する。
図６は、画像認識装置２００を構成する特徴抽出部２１の回路構成を示した図である。
画像入力部２３は、動画カメラから送信されてくるフレームの画像の輝度を画素順（当該画素が画像で配置されている順序）に基づいて順次出力する。
ＭＲＣｏＨＯＧ特徴量を計算するには、画像を構成する各画素の輝度が有ればよい。そのため、画像認識装置２００は、ＹＵＹＶ形式で形成された画像の画素のＹ（輝度）を画素値として利用する。
【００５３】
ここでは、予め画像から輝度を抽出したものを画像入力部２３に入力してもよいし、または、画像入力部２３が画像から輝度を抽出してもよい。
本実施形態では、一例として前者、即ち、予めＹＵＹＶ形式の画像から輝度データＹを抽出し、これを画像として画像入力部２３に入力するものとする。
【００５４】
このように、画像入力部２３は、画像を取得する画像取得手段、及び画像の画素の画素値として輝度を取得する画素値取得手段として機能している。
以下では、画像のｉ行目ｊ列の画素の輝度データや後述の輝度勾配方向を（ｉ−ｊ）などと対応する画素の行番号と列番号で表すことにする。
【００５５】
画像４０は、図８（ａ）に示したように、１行目の輝度データ（０−０）、（０−１）、（０−２）、・・・、（０−ｎ）、２行目の輝度データ（１−０）、（１−１）、（１−２）、・・・、・・・、（１−ｎ）、ｍ行目の輝度データ（ｍ−０）、（ｍ−１）、（ｍ−２）、・・・、（ｍ−ｎ）から構成されている。
【００５６】
画像入力部２３は、動画カメラから送られてくる画像４０から輝度データを上の行から右方向に順に読み出し、輝度データ（０−０）、（０−１）、（０−２）、・・・、（０−ｎ）、（１−０）、（１−１）、・・・の順に出力する。
【００５７】
図６に戻り、画像入力部２３の出力線は、３ラインバッファ２５ａ、中解像度部２４ｂ、低解像度部２４ｃに配線されており、画像入力部２３が出力した輝度データは、３ラインバッファ２５ａ、中解像度部２４ｂ、低解像度部２４ｃのそれぞれに同時に出力される。
なお、図６では、高解像度の輝度データの配線を太線の矢線で表し、中解像度の輝度データの配線を細線の矢線で表し、低解像度の輝度データの配線を点線で示している。
【００５８】
中解像度部２４ｂと低解像度部２４ｃは、それぞれ、画像４０の解像度（サイズ）を１／２と１／４に変換する解像度変換回路である。
これらの解像度変換回路により、画像４０から解像度が１／２、１／４の画像が生成される。
なお、画像４０は、解像度を変換せずにそのまま高解像度画像としても使用される。
【００５９】
解像度を変換する（リサイズする）方法には、最近隣接補間、バイリニア補間、バイキュビック補間などがある。
最近隣接補間は、リサイズ前の画素を抜き出してそのまま使う方法であり、バイリニア補間は、対象画素を中心とする２×２の領域を加重平均する方法であり、バイキュビック補間は、対象画素を中心とする４×４の領域を３次関数によって補間する方法である。
特徴抽出部２１では、計算が単純で、更に、検出精度が高まる最近隣接補間を採用した。
【００６０】
図７は、中解像度部２４ｂ、低解像度部２４ｃによる解像度変換処理を説明するための図である。
中解像度部２４ｂは、画像４０ｂに示したように、画像入力部２３が送信してくる画像４０の輝度データのうち、斜線で示した１つおきの頻度で輝度データを読み込み、その他の輝度データを読み飛ばすことにより、垂直方向・水平方向の輝度データが１つおきとなった解像度１／２の画像データを生成する。
【００６１】
低解像度部２４ｃは、画像４０ｃに示したように、画像入力部２３が送信してくる画像４０の輝度データのうち、斜線で示した３つおきの頻度で輝度データを読み込み、その他の輝度データを読み飛ばすことにより、垂直方向・水平方向の輝度データが３つおきとなった解像度１／４の画像データを生成する。
【００６２】
このような輝度データの間引きを行うことによって、中解像度部２４ｂは、解像度が１／２となった中解像度画像を生成・出力し、低解像度部２４ｃは、解像度が１／４となった低解像度画像を生成・出力する。
最近隣接補間を採用したため、不要なデータを読み飛ばし、必要なデータを拾うという計算負荷の小さい簡単な処理によって解像度を変更することができる。
【００６３】
図６に戻り、３ラインバッファ２５ａは、高解像度画像の輝度データを蓄えて、３行分を並列して勾配方向算出部２６ａに出力する回路である。
勾配方向算出部２６ａは、３行分の輝度データを用いて高解像度画像における注目画素の輝度勾配方向を表す輝度勾配方向データを出力する回路である。
【００６４】
３ラインバッファ２５ｂは、中解像度画像の輝度データを蓄えて、３行分を並列して勾配方向算出部２６ｂに出力する回路である。
勾配方向算出部２６ｂは、３行分の輝度データを用いて中解像度画像における注目画素の輝度勾配方向を表す輝度勾配方向データを出力する回路である。
【００６５】
３ラインバッファ２５ｃは、低解像度画像の輝度データを蓄えて、３行分を並列して勾配方向算出部２６ｃに出力する回路である。
勾配方向算出部２６ｃは、３行分の輝度データを用いて低解像度画像における注目画素の輝度勾配方向を表す輝度勾配方向データを出力する回路である。
【００６６】
図８は、３ラインバッファ２５ａと勾配方向算出部２６ａの詳細な動作を説明するための図である。
図８（ａ）を用いて先に説明したように、画像入力部２３からは、高解像度画像の画像４０の輝度データが（０−０）、（０−１）、・・・と出力される。
【００６７】
３ラインバッファ２５ａは、図８（ｂ）に示したように、これら輝度データを行別に３行分蓄えて、これら３行分を並列して勾配方向算出部２６ａに出力する。
図８（ｂ）の例では、画像４０の２行目の輝度データ（１−０）、（１−１）、（１−２）、・・・と、３行目の輝度データ（２−０）、（２−１）、（２−２）、・・・と、４行目の輝度データ（３−０）、（３−１）、（３−２）、・・・を画素の列を揃えながら並行して勾配方向算出部２６ａに出力している場合を表している。
【００６８】
勾配方向算出部２６ａは、並列して出力される３行分の輝度データの入力を受け付けて、量子化された輝度勾配方向を出力する。
図８に示したように、勾配方向算出部２６ａは、３行３列の記憶素子の配列を備えており、３ラインバッファ２５ａの出力に同期して３行３列分の輝度データを取り込んで、これら輝度データによる輝度を読み取る。
【００６９】
図に示したように、勾配方向算出部２６は、３行３列の輝度データのうち、中央の輝度データを注目画素に設定する。図の例では、太線の矩形で囲った輝度データ（２−１）が注目画素の輝度データとなる。
【００７０】
そして、勾配方向算出部２６ａは、注目画素と水平方向に隣接する輝度データ（２−２）、（２−０）の輝度の差分から水平方向の輝度勾配強度ｆｘ（ｘ、ｙ）を算出し、注目画素と垂直方向に隣接する輝度データ（１−１）、（３−１）の輝度の差分から垂直方向の輝度勾配強度ｆｙ（ｘ、ｙ）を算出する。
【００７１】
勾配方向算出部２６ａは、ｆｘ（ｘ、ｙ）とｆｙ（ｘ、ｙ）を求めると、これを図５の式（２）に代入してｍ（ｘ、ｙ）を求め、ｍ（ｘ、ｙ）が閾値に達していない場合は、所定の処理を行う。
ｍ（ｘ、ｙ）が閾値に達している場合は、ｆｘ（ｘ、ｙ）、ｆｙ（ｘ、ｙ）を対応テーブルで参照して、当該画素の量子化した輝度勾配方向を表す輝度勾配方向データ（２−１）を出力する。
このように、輝度勾配方向データは、輝度データと同様に画素に対応して生成される。
【００７２】
次のクロックでは、輝度データの列が１つ移動し、勾配方向算出部２６ａ２に示したように、次の輝度データ（２−２）が注目画素となって、輝度勾配方向データ（２−２）が出力される。
このように、勾配方向算出部２６ａは、クロックごとに輝度勾配方向データを順次出力する。
また、勾配方向算出部２６ａは、最後の列に達すると、行が１つ分進み、次の行の輝度データを注目画素とする輝度勾配方向データを出力する。
【００７３】
同様に、３ラインバッファ２５ｂと勾配方向算出部２６ｂは、中解像度画像の輝度勾配方向データを出力し、３ラインバッファ２５ｃと勾配方向算出部２６ｃは、低解像度画像の輝度勾配方向データを出力する。
【００７４】
このように、勾配方向算出部２６ａに配設された３行３列の記憶素子の配列には、注目画素の位置と、これに隣接する隣接画素の位置が対応づけられており、この位置の対応を用いて、クロックに従って順次送られてくる輝度データにおいて、注目画素の輝度データと隣接画素の輝度データを順次特定していく。
これら注目画素の位置や隣接画素の位置を通過する順序は、画像入力部２３が輝度データを出力した順序によって定まる。
【００７５】
これは、バケツリレー式に順次送られてくる輝度データの経路上に、注目画素用の窓と隣接画素用の窓を設け、これらの窓で観察することにより、注目画素の輝度データと隣接画素の輝度データを特定しているのと論理的に同じである。
【００７６】
図６に戻り、縦方向２倍部２７ｂと縦方向４倍部２７ｃは、それぞれ、中解像度画像と低解像度画像について、垂直方向の輝度勾配方向データを垂直方向に２倍、４倍に延ばす回路である。
この処理は、後に共起ペア計算部３０ａなどで共起を読み取る際のタイミングを合わせるためのものである。
【００７７】
図９は、垂直方向のデータ延ばし処理を説明するための図である。
データ５１は、データ延ばし前の輝度勾配方向データの構成を示している。各升目が各輝度勾配方向データを表しており、これらが対応する画素の順に並べられている。
データ５１の各行を複製して、複製元の行と隣接させて配置すると、垂直方向に２倍に延ばしたデータ５２と、４倍に延ばしたデータ５３が得られる。
【００７８】
この手法により、縦方向２倍部２７ｂは、勾配方向算出部２６ｂから出力された中解像度画像の輝度勾配方向データを行ごとに複製して縦方向（垂直方向）に２倍に延ばす。
また、縦方向４倍部２７ｃは、勾配方向算出部２６ｃから出力された低解像度画像の輝度勾配方向データを行ごとに複製して縦方向に４倍に延ばす。
【００７９】
図６に戻り、バッファ２８ａ、２８ｂ、２８ｃは、それぞれ、勾配方向算出部２６ａ、縦方向２倍部２７ｂ、縦方向４倍部２７ｃから出力される高解像度画像の輝度勾配方向データ、中解像度画像の輝度勾配方向データ、低解像度画像の輝度勾配方向データを一時的に記憶しておくバッファである。
【００８０】
タイミングコントローラ２９は、高解像度画像、中解像度画像、低解像度画像の輝度勾配方向データを共起ペア計算部３０ａ、３０ｂ、３０ｃに送出するタイミングを制御する制御回路である。
タイミングコントローラ２９は、これら各解像度画像の輝度勾配方向データがバッファ２８ａ、２８ｂ、２８ｃに揃うまで待機し、これらが揃ったら出力する。
これにより、解像度変更によってずれてしまった解像度画像ごとの出力タイミングを揃えることができる。
【００８１】
高解像度画像の輝度勾配方向データは図の太線、中解像度画像の輝度勾配方向データは図の細線、低解像度画像の輝度勾配方向データは図の点線、といったように、各解像度画像の輝度勾配方向データは、それぞれ異なる配線から出力される。
これらの配線は、それぞれ、共起ペア計算部３０ａ、３０ｂ、３０ｃと接続しており、これによって、解像度画像別の輝度勾配方向データが共起ペア計算部３０ａ、３０ｂ、３０ｃに送信される。
【００８２】
更に、タイミングコントローラ２９は、共起ペア計算部３０ａ、３０ｂ、３０ｃが共起を取るタイミングを合わせるために、中解像度画像と低解像度画像の輝度勾配方向データを、それぞれ水平（横）方向に２倍、４倍に延ばす。
【００８３】
図１０は、水平方向のデータ延ばし処理を説明するための図である。
データ列５５、５６、５７は、それぞれ、タイミングコントローラ２９が、高解像度画像、中解像度画像、低解像度画像の輝度勾配方向データを出力するタイミングを表している。
【００８４】
例えば、タイミングコントローラ２９は、データ列５５に示されるように、高解像度画像の輝度勾配方向データに対して、１番目のデータから順次３０番目のデータまで１回ずつ出力する。
これに対して、中解像度画像の輝度勾配方向データに対しては、データ列５６に示されるように、１番目のデータを１回、２番目のデータから１５番目のデータをそれぞれ２回ずつ、１６番目のデータを１回、高解像度画像の輝度勾配方向データの出力タイミングに合わせて出力する。
また、低解像度画像の輝度勾配方向データに対しては、データ列５７に示されるように、１番目のデータを３回、２番目のデータから７番目のデータを４回ずつ、８番目のデータを３回、高解像度画像の輝度勾配方向データの出力タイミングに合わせて出力する。
なお、データ列５６とデータ列５７の最初と最後における出力回数がそれぞれ２回ずつ、４回ずつでないのは、データ列５５による幅と同じ幅に調整するためである。
これにより、中解像度画像、低解像度画像の輝度勾配方向データが水平方向に、それぞれ２倍、４倍に延ばされる。
【００８５】
図６に戻り、共起ペア計算部３０ａ、３０ｂ、３０ｃは、それぞれ、タイミングコントローラ２９から出力された輝度勾配方向データを用いて共起ペアを入力部２０２に出力する回路である。
共起ペア計算部３０ａ、３０ｂ、３０ｃは、それぞれ、高解像度画像、中解像度画像、低解像度画像の画素を注目画素とする共起ペアを作成して出力する。
【００８６】
図１１は、共起ペア計算部３０ａが共起ペアを計算する仕組みを説明するための図である。
共起ペア計算部３０ａは、タイミングコントローラ２９から送信されてくる輝度勾配方向データ（輝度勾配方向）を解像度別に２行に渡って記憶する、高解像度画像用の２ラインバッファ６１−１、中解像度画像用の２ラインバッファ６１−２、低解像度画像用の２ラインバッファ６１−３を備えている。
そして、２ラインバッファ６１−１〜６１−３は、それぞれ、以下の要領で出力部６３−１〜６３−３から共起ペアを出力する。
なお、以下では、２ラインバッファ６１−１、６１−２、・・・を特に区別しない場合は単に２ラインバッファ６１と記す。他の構成要素についても同様とする。
【００８７】
２ラインバッファ６１−１、６１−２、６１−３の右側には、それぞれ、各２ラインバッファ６１−１、６１−２、６１−３に記憶された輝度勾配方向データの配置を図示してある。
輝度勾配方向データの位置を示す符号は、図４（ｃ）の位置の符号に対応させてある（輝度勾配方向は対応していない）。また、注目画素に対応する輝度勾配方向データを太線の矩形で囲み、投票のためにこれと組合せる相手の画素の輝度勾配方向データを○で囲んである。
【００８８】
図に示したように、２ラインバッファ６１−１、６１−２、６１−３には、それぞれ、高解像度画像、中解像度画像、低解像度画像の輝度勾配方向データが２行３列分配置される。
なお、画像入力部２３が輝度データを出力した順に配置するため、２ラインバッファ６１−１、６１−２、６１−３での配置は、図４（ｃ）と左右が逆になっている。
【００８９】
まず、共起ペア計算部３０ａは、注目画素１２５の輝度勾配方向データと画素１ａ〜１ｄの輝度勾配方向データとの組合せに基づく共起ペアをクロックに同期して出力部６３−１から順次出力する。
更に、共起ペア計算部３０ａは、注目画素１２５の輝度勾配方向データと、画素２ａ〜２ｄの輝度勾配方向データとの組合せに基づく共起ペアをクロックに同期して出力部６３−２から順次出力し、注目画素１２５の輝度勾配方向データと、画素３ａ〜３ｄの輝度勾配方向データとの組合せに基づく共起ペアをクロックに同期して出力部６３−３から順次出力する。
【００９０】
共起ペア計算部３０ａは、当該注目画素１２５についての共起ペアの出力が完了すると、２ラインバッファ６１−１、６１−２、６１−３に記憶している輝度勾配方向データの列を１つ進める。
これにより、共起ペア計算部３０ａは、画素１ａに対応する輝度勾配方向データを注目画素１２５の位置に配置し、これを用いた共起ペアの作成と出力を順次行う。
共起ペア計算部３０ａは、以上の動作を繰り返すことにより、高解像度画像の各画素に対する共起ペアを作成して順次出力する。
【００９１】
図６に戻り、共起ペア計算部３０ｂ、３０ｃも共起ペア計算部３０ａと同様にして、それぞれ、中解像度画像の画素を注目画素とした場合の共起ペアと、低解像度画像の画素を注目画素とした場合の共起ペアを順次出力する。
特徴抽出部２１は、以上のように構成されており、各回路は、クロックに同期して同時に動作し、流れ作業にて順次処理を行って、動画カメラから出力される画像をリアルタイムで処理することにより、画像データから複数解像度に渡る輝度勾配方向の共起ペアを作成して順次出力する。
【００９２】
以上のように、特徴抽出部２１は、画素値から被写体の特徴を表す特徴量の各特徴要素を順次取得する特徴要素取得手段として機能している。
この特徴要素は、輝度勾配方向に基づくものであり、特に、輝度勾配方向の共起に基づくものであり、更には、輝度勾配方向の異なる解像度の画像に渡る共起に基づいている。
【００９３】
次に、画像認識装置２００を構成する入力部２０２、認識部２０１について説明する。
従来技術では、これら共起ペアをそれぞれの解像度の共起行列に投票した後、連結してメモリにヒストグラムを作成し、これによってＭＲＣｏＨＯＧ特徴量を作成してからＢＮＮ（Ｂｉｎａｒｉｚｅｄ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ）に投票していたところ、画像認識装置２００は、ヒストグラムの作成は行わずに、共起ペアを入力部２０２から認識部２０１のＢＮＮに直接投票することによりヒストグラムを作成したのと同様の効果を発揮する。
【００９４】
図１２の各図は、入力部２０２と認識部２０１の構成を説明するための図である。
図１２（ａ）に示したように、入力部２０２は、入力ノード２１１−１、２１１−２、・・・からなる入力層を備えており、それぞれ出力部６３−１、６３−２、・・・、６３−ｎがクロックに同期して順次出力する共起ペアの入力を順次受け付ける。
【００９５】
より詳細には、図１２（ｂ）に示したように、出力部６３−１は、（→↑）、（↑↑）、・・・といったように、抽出した各種の共起ペアをクロックに同期して順次出力し、入力ノード２１１−１は、これらの入力をクロックに同期して順次受け付ける。
【００９６】
そして、入力部２０２は、重みテーブル２０３を参照し、入力ノード２１１−１と中間層を構成する各ノード、即ち、中間ノード２１３−１、２１３−２との間の接続部分の重み付けを設定し、当該重み付けに基づいて中間ノード２１３−１、２１３−２に１票（１又は−１）を投票する。
他の、出力部６３−２、６３−３、・・・や入力ノード２１１−２、２１１−３、・・・についても同様である。
【００９７】
図１２（ｃ）に示したように、重みテーブル２０３は、各出力部６３について共起ペアと重み付けの対応を記憶している。これらの重み付けは、学習によって得られたものであり１と−１の２値の何れかに２値化されている。
入力部２０２は、重みテーブル２０３を参照しながら出力部６３から入力される共起ペアに対応してノード間の接続部分の重み付けを順次設定することにより、共起ペアに基づいてヒストグラムに投票するのと同様の効果を中間ノード２１３に発揮させる。
このように入力部２０２は、予め画像認識対象について学習した重み付けを用いて特徴要素に対応する入力値を順次取得する入力値取得手段として機能している。
【００９８】
図１２（ａ）に戻り、認識部２０１は、中間ノード２１３−１、２１３−２からなる中間層と、出力ノード２１５−１、２１５−２からなる出力層を備えており、入力部２０２の入力層と共に３層のＢＮＮを構成している。
なお、これは一例であって、中間層を更に多層化したり、中間層や出力層のノード数を増減させたりすることも可能である。中間層が１層でノードが１つの場合でも実験では識別が可能であった。
また、画像認識装置２００では、入力部２０２を設けて入力層を配置したが、特徴抽出部２１と認識部２０１を直結し、出力部６３に重みテーブル２０３による重み設定機能を持たせてもよい。
更に、ＢＮＮではなく、一般のニューラルネットワークを用いることも可能である。
【００９９】
このように構成された認識部２０１は、ＢＮＮ、即ち、２値化したニューラルネットワークによって特徴量を識別する。
認識部２０１で、ＢＮＮを用いたのは、一般の浮動小数点を用いたニューラルネットワークでは、乗算などを行うためハードウェア回路が大面積となってしまい、半導体装置への実装が困難なためである。
後述するように、ＢＮＮは、重みを１と−１の２値とし、加算器やカウンタなどを用いて構成できるため、回路面積が、例えば、浮動小数点を用いた場合の１００分の１程度になり、ハードウェアへの実装が容易であると共に消費電力も小さくなる。そして、ＢＮＮは、小規模な回路構成にもかかわらず、実用に十分耐えうる識別性能を発揮する。
【０１００】
図１３は、ＢＮＮの仕組みを説明するための図である。
ＢＮＮ２１０は、入力ノード２１１−ｉ（ｉ＝１、２、３）からなる入力層と、隠れユニットを構成する中間ノード２１３−ｊ（ｊ＝１、２）からなる中間層（隠れ層）と、出力ノード２１５−ｋ（ｋ＝１、２、３）からなる出力層を有している。
なお、前述したように、画像認識装置２００では、入力層は入力部２０２に形成され、中間層と出力層は認識部２０１に形成されている。
【０１０１】
これらノードは、ニューラルネットワークのノードを構成する計算ユニット（パーセプトロン）であって、各層間で各ノードを全結合することによりニューラルネットワークを形成している。
入力ノード２１１−ｉから中間ノード２１３−ｊへの出力に対しては、｛−１、１｝の２値の何れかの値をとる計算の重みＷｊｉが設定される。
画像認識装置２００の場合は、入力部２０２が重みテーブル２０３を参照しながら共起ペアに応じてクロックに同期しながらＷｊｉを順次動的に設定する。
中間ノード２１３−ｊから出力ノード２１５−ｋへの出力に対しては、学習によって決定された｛−１、１｝の２値の何れかの値をとる計算の重みＷｋｊが設定されている。Ｗｋｊは固定値である。
【０１０２】
なお、図ではｉ、ｊ、ｋを下付の添え字で表しているが、明細書中では文字化けを防止するため通常の大きさで記す。他の要素についても同様とする。
また、図では、変数ｘ、ｙ、ｚ、ｗを小文字で記しているが、明細書中では、変数と添え字の視認性をよくするために、これらをＸ、Ｙ、Ｚ、Ｗの大文字で記す。
【０１０３】
入力ノード２１１−ｉへの入力Ｘｉは、特徴抽出部２１が入力部２０２に投じる１票であり、特徴抽出部２１が共起ペアを出力するごとに１となる。
この１票を中間ノード２１３−１へ加算するのか、あるいは減算するのか、また、中間ノード２１３−２へ加算するのか、あるいは減算するのかが、入力部２０２が設定するＷｊｉによって決定される。
【０１０４】
中間ノード２１３の活性化関数は｛−１、１｝に２値化されており、中間ノード２１３−ｊの出力Ｙｊは、｛−１、１｝の２値の何れかをとる。
出力ノード２１５−ｋは、中間ノード２１３の出力を合計し、その符号を｛−１、１｝の２値で出力する。
出力ノード２１５−ｋの出力Ｚｋは、ｋ番目の識別対象に対応している。例えば、出力ノード２１５−１は、人に対応しており、人を識別した場合は、Ｚ１＝１を出力し、人物を検出しなかった場合は、Ｚ１＝−１を出力する。他の出力ノード２１５も同様である。
画像認識装置２００では、出力ノード２１５−２は、背景に対応しており、出力ノード２１５−３は、設けられていないが、例えば、信号機などの他の認識対象に対応させることができる。
以下に、これらの演算について説明する。
【０１０５】
図１４は、図１３の部分２２０（入力層と中間層の一部）を示した図である。
入力ノード２１１−ｉは、入力されたＸｉ（＝１）にＷｊｉに基づく演算ｆ（Ｘｉ、Ｗｊｉ）を行って中間ノード２１３−ｊに出力する。この演算は、Ｘｉの符号をＷｊｉの符号に揃えるものであって、Ｗｊｉが１ならｆ（Ｘｉ、Ｗｊｉ）＝Ｘｉ＝１となり、Ｗｊｉが−１ならｆ（Ｘｉ、Ｗｊｉ）＝−Ｘｉ＝−１となる。
図の例では、入力ノード２１１−２、２１１−３が、それぞれｆ（Ｘ２、Ｗ２２）とｆ（Ｘ３、Ｗ２３）を計算して中間ノード２１３−２に出力している。
入力ノード２１１は、出力部６３から順次入力されるＸｉについて順次行い中間ノード２１３に順次出力する。
【０１０６】
中間ノード２１３は、カウンタを備えており、入力ノード２１１から順次入力される１票（１又は−１）をカウンタに入力してその合計値を順次記憶する。即ち、入力ノード２１１から値が入力されるたびに、式２２５に従って、入力された値を合計値に加算して合計値を順次更新していく。
【０１０７】
そして、中間ノード２１３は、カウンタに記憶した合計値が０以上ならＹｊ＝１を出力し、それ以外ならＹｊ＝−１を出力することによりその符号を順次出力する。
中間ノード２１３は、この合計値の記憶と出力の更新を、画像入力部２３に入力された画像の処理が終了するまで継続し、次の画像の処理を行う際に初期値に戻って同様の処理を繰り返す。
【０１０８】
このように、中間層は、入力値のネットワーク入力を順次受け付け、当該受け付けた入力値を式２２５（図１４）に従って順次加算して順次記憶すると共に当該記憶した加算値に対応する値を順次出力する加算ノードとからなる加算層として機能している。
【０１０９】
図１５は、図１３の部分２２１（中間層と出力層の一部）を示した図である。
中間ノード２１３−ｊが出力したＹｊは、中間層と出力層の重み付けＷｋｊに従って重み付けされて出力ノード２１５−ｋに入力される。
この処理は、中間ノード２１３−ｊが、Ｘｎｏｒ（Ｙｊ、Ｗｋｊ）従ってＹｊとＷｋｊの否定排他的論理和をとり、その結果をクロックに同期して出力ノード２１５−ｋに順次出力することにより行われる。
例えば、（Ｙｊ、Ｗｋｊ）が（１、１）及び（−１、−１）の場合には、中間ノード２１３−ｊは、出力ノード２１５−ｋに１を出力し、その他の場合には−１を出力する。
【０１１０】
一方、出力ノード２１５−ｋもカウンタを備えており、各中間ノード２１３から送られてきた２値の値を式２２６（図１５）に従って順次加算しながら記憶し、当該記憶した値が０以上だったらＺｋ＝１を順次出力し、それ以外ならＺｋ＝−１を順次出力することによりその符号を出力する。
【０１１１】
出力ノード２１５は、この合計値の記憶と出力（即ち、画像認識結果）の更新を、画像入力部２３に入力された画像の処理が終了するまで継続し、次の画像の処理を行う際に初期値に戻って同様の処理を繰り返す。
【０１１２】
このように、出力層は、予め画像認識対象について学習した重み付けを用いて加算ノード（中間ノード２１３）とネットワーク接続し、当該加算層（中間層）が出力した値のネットワーク入力を順次受け付けるとともに、当該受け付けた値の合計値を順次記憶し、当該記憶した合計値に対応する画像認識結果を出力する画像認識結果出力手段として機能している。
【０１１３】
図１２（ａ）に戻り、特徴抽出部２１が共起ペアを入力部２０２に入力を開始すると、これに同期して中間ノード２１３と出力ノード２１５も順次値を出力する。
これによって中間ノード２１３にヒストグラム相当の値が形成されていくが、開始した当初は、これが完成途上であるため、出力ノード２１５の値は、人になったり背景になったりする。
【０１１４】
そして、画像の全ての共起ペアを処理すると、出力ノード２１５の出力が確定し、人であると認識した場合は、出力ノード２１５−１が１で出力ノード２１５−２が−１になり、背景と認識した場合は、出力ノード２１５−２が１で出力ノード２１５−１が−１になる。
このように画像認識結果取得手段は、特徴量の全ての特徴要素に対応する合計値を取得した後に画像認識結果を確定する。
【０１１５】
また、ある程度共起ペアの処理が進むと、出力ノード２１５の出力がほぼ確定してくる。そこで、例えば、所定回数連続して同じ画像認識結果を出力した場合など、所定の条件を満たす場合は、それを画像認識結果として出力するように構成することもできる。
この場合、画像認識結果出力手段は、出力層に記憶した合計値に対応する画像認識結果を当該記憶の更新にともなって順次更新し、当該更新した画像認識結果が所定回数連続して同じであった場合に、画像認識結果を出力している。
【０１１６】
図１６は、画像認識装置２００が行う画像処理手順を説明するためのフローチャートである。
なお、画像認識装置２００は、以下のステップ５〜４５の各処理をクロックに同期して平行して行う。
まず、画像入力部２３が画像４０の輝度データを出力し、中解像度部２４ｂと低解像度部２４ｃが、中解像度、低解像度に解像度を変換した輝度データを出力する（ステップ５）。
【０１１７】
そして、３ラインバッファ２５ａ、２５ｂ、２５ｃが、それぞれ、高解像度画像、中解像度画像、低解像度画像の輝度データを３行分バッファリングする（ステップ１０）。
次いで、勾配方向算出部２６ａ、２６ｂ、２６ｃが、それぞれ、高解像度画像、中解像度画像、低解像度画像の画素の輝度勾配方向を算出し、輝度勾配方向データを出力する（ステップ１５）。
【０１１８】
次に、縦方向２倍部２７ｂ、縦方向４倍部２７ｃが、それぞれ、中解像度画像と低解像度画像の輝度勾配方向データを垂直方向に２倍、４倍に延ばす（ステップ２０）。
高解像度画像の輝度勾配方向データ、２倍に垂直に延ばされた中解像度画像の輝度勾配方向データ、及び４倍に垂直に延ばされた低解像度画像の輝度勾配方向データは、それぞれ、バッファ２８ａ、２８ｂ、２８ｃにバッファリングされる。
【０１１９】
次に、タイミングコントローラ２９が、タイミングを揃えて各解像度の輝度勾配方向データを出力する。
タイミングコントローラ２９は、この際に、中解像度画像と低解像度画像の輝度勾配方向データを水平方向に２倍、４倍に延ばして出力する（ステップ２５）。
【０１２０】
次に、共起ペア計算部３０ａ、３０ｂ、３０ｃは、タイミングコントローラ２９から出力された各解像度の輝度勾配方向データを用いて、共起ペアを生成し、出力部６３から入力部２０２の入力層に入力する（ステップ３０）。
次に、入力部２０２は、重みテーブル２０３を参照して、当該共起ペアに対応する重み付けＷｊｉを取得し、これを用いて中間層に投票する（ステップ３５）。
【０１２１】
これに対し、中間層は、入力層からの入力を受け付けると共に前回の合計値に今回の入力値を加算し、当該加算後の合計値を記憶すると共に当該加算後の合計値に対応する値を出力層に出力する（ステップ４０）。
出力層は、中間層からの入力を受け付けると共に前回の合計値に今回の入力値を加算し、当該加算後の合計値を記憶する（ステップ４５）。
【０１２２】
そして、まだ投票していない共起ペアがある場合（ステップ５０；Ｎ）、画像認識装置２００は、ステップ１０〜ステップ４５の処理を継続し、全ての共起ペアを投票した場合（ステップ５０；Ｙ）、出力層の画像認識結果を確定して出力する（ステップ５５）。
【０１２３】
図１７は、画像認識装置２００を用いて半導体装置を構成した例を示した図である。
半導体装置７１は、例えば、ＩＣチップによって構成されており、プロセッサ７７、ＲＡＭ７８、ＭＲＣｏＨＯＧアクセラレータ７２、アフィンアクセラレータ７６、ビデオ入力インターフェース７３、ビデオ出力インターフェース７４、入出力インターフェース７５などが内部に形成されている。
ＭＲＣｏＨＯＧアクセラレータ７２は、画像認識装置２００の回路構成が組み込まれており、ビデオ入力インターフェース７３から動画データの入力を受け付けて、フレーム画像から共起ペアを生成して画像認識を行い、その結果を出力する。
【０１２４】
（第１の変形例）
図１８（ａ）は、第１の変形例を説明するための図である。
ＭＲＣｏＨＯＧ特徴量では、共起ペアの出現回数を用いて画像の特徴量を記述し、これを用いて画像認識しているが、共起ペアの中には、画像認識において重要度の高いものや低いものがある。
そこで、本変形例では、重要度の高い共起ペアをＲｅａｌ  ＡｄａＢｏｏｓｔなどの識別器で予め調べておき、これを重みテーブル２０３に設定しておくことにより、入力部２０２で重要度の高い共起ペアを選択して認識部２０１に入力する。
これにより、処理対象となる共起ペア数を削減することができ、回路の小型化や消費電力の低減が期待できる。
【０１２５】
このように重要度の高い共起ペアを選択して入力し、重要度の低い共起ペアの入力を省略するため、本変形例に係る重みテーブル２０３は、省略対象の共起ペアの重み付けＷｊｉを（０、０）に設定する。
図の例では、出力部６３−１から出力される共起ペア（↑↑）に対して重み付けを（０、０）に設定しており、当該共起ペアが入力されても入力部２０２は、これを認識部２０１に投票しない。
本変形例では、入力部２０２は、特徴要素のうち、所定の特徴要素を選択して加算層に入力する選択手段として機能している。
【０１２６】
（第２の変形例）
車両への搭載など、画像認識装置２００には様々な使用環境が想定されるため、場合によっては低次元な特徴量によって画像認識する必要性も生じる可能性がある。
そこで、本変形例では、特徴要素による投票を複製することにより画像認識精度を高める。
図１８（ｂ）に示したように、入力部２０２には、入力ノード２１１−１に対応して入力ノード２１１−１ａと入力ノード２１１−１ｂが設けられている。
【０１２７】
入力部２０２は、入力ノード２１１−１に共起ペアが入力されると、重みテーブル２０３で当該共起ペアに対する重み付けを参照する。
そして、入力部２０２は、入力ノード２１１−１ａ、及び入力ノード２１１−１ｂと、中間ノード２１３との間の接続部分の重み付けを当該参照した重み付けに設定し、これら２つの入力ノード２１１−１ａ、入力ノード２１１−１ｂから中間ノード２１３へそれぞれ１票ずつ投票する。
これにより、当該共起ペアによる投票が複製されて２票分行われるため、共起ペアを複製して入力したのと同様となる。
【０１２８】
入力部２０２の他の入力ノード２１１についても同様に２個ずつ複製用のノードが設けられており、入力部２０２は、投票を複製して行う。
複製して同時に投票を行うことにより、投票によって表現できる値が｛−１、１｝から｛−２、０、２｝に増えるため画像認識精度が向上する。３倍以上に複製すると、更に、表現できる値が増える。
【０１２９】
このように、入力部２０２は、特徴要素を順次複製して加算層に入力する複製手段として機能している。
特徴要素を複製して投票すると画像認識精度が向上するが、これは以下の理由によるものと考えられる。
【０１３０】
以上、第１の変形例と第２の変形例について説明したが、これらを組み合わせることも可能である。
この場合、画像認識装置２００は、入力部２０２によって、認識部２０１に入力する共起ペアを選択すると共に、選択後の共起ペアを複製して認識部２０１に投票する。
【０１３１】
以上に説明したように、特徴記述にヒストグラムへの投票を行う必要のあるアルゴリズムと、認識部にＤＮＮ（ｄｅｅｐ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）の一つであるＢＮＮを用いて対象を識別する際、共起ヒストグラムを作成する代わりに、入力層から中間層に対して共起ペアによる加減算を直接行うことにより、ヒストグラムを作成しなくても同等の識別が可能になる。
これによって、ヒストグラム作成と同様の効果を持ちながら消費メモリを削減することができる。
従来ヒストグラムの作成に２４キロバイト程度要していたところ、画像認識装置２００では、中間ノード２１３を１６ビットとすると、２×１６＝３２ビットでヒストグラムを作成したのと同じ効果を得ることができる。
【０１３２】
以上に説明した、実施の形態、及び変形例によって次のような効果を得ることができる。
（１）画像認識装置２００は、ＢＮＮを用いて識別を行う際、中間層に直接特徴要素を加減算することで、ヒストグラム作成と同様の効果を持ちながら、消費メモリを削減することができる。
（２）ＢＮＮは、中間層での計算を重みと活性化関数（−１、１）の２値化することにより処理コスト低減を図っている。
（３）ＢＮＮは、ハードウェアに実装する際、加算器とカウンタで計算できるため、小コストで実装することができる。
（４）画像認識装置２００は、ヒストグラム作成の計算を待たずに画像認識による識別処理を実行できるため、処理全体をパイプライン化することができ、処理速度の高速化が行える。
（５）各回路は、クロックに同期して一斉に動作し、左から流れてきたデータを順次（逐次）処理して右に流す流れ作業を同時に行うことによって画像認識を行うため、ハードウェアへの実装が容易となる。
【０１３３】
なお、説明した実施形態、及び変形例は、次のように構成することも可能である。
（１）請求項１
画像を取得する画像取得手段と、
前記取得した画像の画素の画素値を取得する画素値取得手段と、
前記取得した画素値から被写体の特徴を表す特徴量の複数種類の特徴要素を順次取得する特徴要素取得手段と、
予め画像認識対象について学習した重み付けを用いて前記取得した特徴要素に対応する入力値を順次加算して順次記憶すると共に当該記憶した加算値を用いて画像認識する画像認識手段と、
を具備したことを特徴とする画像認識装置。
（２）構成２
前記画像認識手段は、
予め画像認識対象について学習した重み付けを用いて前記取得した特徴要素に対応する入力値を順次取得する入力層と、
前記取得した入力値を順次受け付け、前記受け付けた入力値を順次加算して順次記憶すると共に当該記憶した加算値に対応する値を順次出力する加算ノードとからなる加算層と、
予め画像認識対象について学習した重み付けを用いて前記加算ノードと接続し、前記加算層が出力した値のネットワーク入力を順次受け付けるとともに、当該受け付けた値の合計値を順次記憶し、当該記憶した合計値に対応する画像認識結果を出力する画像認識結果出力層と、
を有するニューラルネットワークであることを特徴とする構成１に記載の画像認識装置。
（３）構成３
前記ニューラルネットワークは、バイナリネットワークであることを特徴とする構成１に記載の画像認識装置。
（４）構成４
前記画像認識結果出力手段は、前記特徴量の全ての特徴要素に対応する前記合計値を取得した後に前記画像認識結果を確定することを特徴とする構成１、構成２、又は構成３に記載の画像認識装置。
（５）構成５
前記画像認識結果出力手段は、前記記憶した合計値に対応する画像認識結果を当該記憶の更新にともなって順次更新し、
当該更新した画像認識結果が所定回数連続して同じであった場合に、画像認識結果を出力することを特徴とする構成１、構成２、又は構成３に記載の画像認識装置。
（６）構成６
前記画素値取得手段は、画素値として輝度を取得し、
前記特徴要素取得手段は、前記輝度による輝度勾配方向に基づいて前記特徴要素を取得することを特徴とする構成１から５までのうちの何れか１の構成に記載の画像認識装置。
（７）構成７
前記特徴要素取得手段は、前記輝度勾配方向の共起に基づいて前記特徴要素を取得することを特徴とする構成６に記載の画像認識装置。
（８）構成８
前記画像取得手段は、同一被写体の異なる解像度の画像を取得し、
前記特徴要素取得手段は、前記輝度勾配方向の前記異なる解像度の画像に渡る共起に基づいて前記特徴要素を取得することを特徴とする構成７に記載の画像認識装置。
（９）構成９
前記取得した特徴要素のうち、所定の特徴要素を選択して前記加算層に入力する選択手段を具備したことを特徴とする構成１から構成８のうちの何れか１の構成構成に記載の画像認識装置。
（１０）構成１０
前記取得した特徴要素を順次複製して前記加算層に入力する複製手段を具備したことを特徴とする構成１から構成９のうちの何れか１の構成に記載の画像認識装置。
（１１）構成１１
画像を取得する画像取得機能と、
前記取得した画像の画素の画素値を取得する画素値取得機能と、
前記取得した画素値から被写体の特徴を表す特徴量の複数種類の特徴要素を順次取得する特徴要素取得機能と、
予め画像認識対象について学習した重み付けを用いて前記取得した特徴要素に対応する入力値を順次加算して順次記憶すると共に当該記憶した加算値を用いて画像認識する画像認識機能と、
をコンピュータで実現する画像認識プログラム。
（１２）構成１２
画像を取得する画像取得手段と、
前記取得した画像の画素の画素値を取得する画素値取得手段と、
前記取得した画素値から被写体の特徴を表す特徴量の各特徴要素を順次取得する特徴要素取得手段と、
予め画像認識対象について学習した重み付けを用いて前記取得した特徴要素に対応する入力値を順次取得する入力値取得手段と、
前記取得した入力値のネットワーク入力を順次受け付け、前記受け付けた入力値を順次加算して順次記憶すると共に当該記憶した加算値に対応する値を順次出力する加算ノードとからなる加算層と、
予め画像認識対象について学習した重み付けを用いて前記加算ノードとネットワーク接続し、前記加算層が出力した値のネットワーク入力を順次受け付けるとともに、当該受け付けた値の合計値を順次記憶し、当該記憶した合計値に対応する画像認識結果を出力する画像認識結果出力手段と、
を具備したことを特徴とする画像認識装置。
【符号の説明】
【０１３４】
１ａ〜４ｌ  画素
２１  特徴抽出部
２３  画像入力部
２４ｂ  中解像度部
２４ｃ  低解像度部
２５ａ、２５ｂ、２５ｃ  ３ラインバッファ
２６ａ、２６ｂ、２６ｃ  勾配方向算出部
２７ｂ  縦方向２倍部
２７ｃ  縦方向４倍部
２８ａ、２８ｂ、２８ｃ  バッファ
２９  タイミングコントローラ
３０ａ、３０ｂ、３０ｃ  共起ペア計算部
４０  画像
５１、５２、５３  データ
５５、５６、５７  データ列
６１  ２ラインバッファ
６３  出力部
７１  半導体装置
７２  ＭＲＣｏＨＯＧアクセラレータ
７３  ビデオ入力インターフェース
７４  ビデオ出力インターフェース
７５  入出力インターフェース
７６  アフィンアクセラレータ
７７  プロセッサ
７８  ＲＡＭ
８０  コンピュータ
８１  ＣＰＵ
８２  ＲＯＭ
８３  ＲＡＭ
８４  カメラ
８５  記憶装置
８７  入力装置
８８  出力装置
１０１  画像
１０２  セル
１０６  ヒストグラム
１０７  ＨＯＧ特徴量
１１０  注目画素
１１３  共起行列
１１７  ＣｏＨＯＧ特徴量
１２０  高解像度画像
１２１  中解像度画像
１２２  低解像度画像
１２５  注目画素
１２７  ＭＲＣｏＨＯＧ特徴量
２００  画像認識装置
２０１  認識部
２０２  入力部
２０３  重みテーブル
２１０  ＢＮＮ
２１１  入力ノード
２１３  中間ノード
２１５  出力ノード
２２０、２２１  部分
２２５、２２６  式
【図１】
2020166341.tif 000003
【図２】
2020166341.tif 000004
【図３】
2020166341.tif 000005
【図４】
2020166341.tif 000006
【図５】
2020166341.tif 000007
【図６】
2020166341.tif 000008
【図７】
2020166341.tif 000009
【図８】
2020166341.tif 000010
【図９】
2020166341.tif 000011
【図１０】
2020166341.tif 000012
【図１１】
2020166341.tif 000013
【図１２】
2020166341.tif 000014
【図１３】
2020166341.tif 000015
【図１４】
2020166341.tif 000016
【図１５】
2020166341.tif 000017
【図１６】
2020166341.tif 000018
【図１７】
2020166341.tif 000019
【図１８】
2020166341.tif 000020
【図１９】
2020166341.tif 000021