(57)【要約】【課題】短い処理時間で検知性能の高い画像認識装置を提供すること。【解決手段】画像認識装置１００は、複数のブロックに分割した画像から複数のブロックごとに勾配特徴量を計算する勾配特徴演算部１２０と、勾配特徴量の組み合わせパタンを複数記憶する組み合わせパタン記憶部１６０と、複数のブロックにおける共起特徴量を組み合わせパタンごとに算出する共起特徴演算部１３１とを備える。また、複数のブロックごとに算出された共起特徴量を組み合わせパタンごとに加算して加算値を算出する算術演算部１３２と、加算値から統計データを生成する統計データ生成部１４０とを備える。そして、画像に対して所定の大きさのウィンドウを定め、ウィンドウ内における統計データに基づき、ウィンドウ内に所定の画像が含まれるか否かを認識する画像認識演算部を備える。【選択図】図１
2018022315.tif 000002
【特許請求の範囲】
【請求項１】
複数のブロックに分割した画像から前記複数のブロックごとに勾配特徴量を計算する勾配特徴演算部と、
前記勾配特徴量の組み合わせパタンを複数記憶する組み合わせパタン記憶部と、
複数のブロックにおける共起特徴量を前記組み合わせパタンごとに算出する共起特徴演算部と、
前記組み合わせパタンごとに前記共起特徴量を加算して加算値を算出する算術演算部と、
前記加算値から統計データを生成する統計データ生成部と、
前記画像に対して所定の大きさのウィンドウを定め、前記ウィンドウ内における前記統計データに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する画像認識演算部と、を備える、
画像認識装置。
【請求項２】
前記勾配特徴量は輝度勾配の方向と輝度勾配の大きさとからなり、
前記輝度勾配の大きさは所定のしきい値に基づいて二値で表される、
請求項１に記載の画像認識装置。
【請求項３】
前記組み合わせパタンは、
第１のブロックにおける勾配特徴量と、第２のブロックにおける勾配特徴量との組み合わせである、
請求項１に記載の画像認識装置。
【請求項４】
前記組み合わせパタンは、
前記第１のブロックに対する前記第２のブロックの相対的な位置情報がさらに含まれる、
請求項３に記載の画像認識装置。
【請求項５】
前記ウィンドウはそれぞれが２以上のブロックを含む複数のセルに分割されており、
前記統計データ生成部はセルごとの統計データを生成し、
前記セルごとの統計データを前記ウィンドウ内で統合する統計データ統合部をさらに備える、
請求項１に記載の画像認識装置。
【請求項６】
前記画像認識装置は、重み付け値を記憶する重み付け値記憶部をさらに備え、
前記画像認識演算部は、前記統計データと前記重み付け値とに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する、
請求項５に記載の画像認識装置。
【請求項７】
前記重み付け値記憶部には、サポートベクターマシーンの重みベクトルとバイアスが格納され、
前記画像認識演算部はサポートベクターマシーンを含む、
請求項６に記載の画像認識装置。
【請求項８】
前記画像認識装置は、
取り込んだ前記画像を複数のサイズに縮小変換する画像変換部をさらに備える、
請求項５に記載の画像認識装置。
【請求項９】
前記組み合わせパタン記憶部または前記重み付け値記憶部は、前記ウィンドウ内における前記セルの位置に応じた組み合わせパタンまたは重み付け値を記憶する、
請求項６に記載の画像認識装置。
【請求項１０】
前記画像認識装置は、
取り込んだ前記画像にトリミング処理を行う画像変換部をさらに備える、
請求項１に記載の画像認識装置。
【請求項１１】
前記算術演算部は、前記セル内のブロック数の合計と、前記共起特徴量の組み合わせパタンの数とを積算したビット数以上のデータを処理する演算器を備える、
請求項５に記載の画像認識装置。
【請求項１２】
カメラと、
複数のブロックに分割した画像から前記複数のブロックごとに勾配特徴量を計算する勾配特徴演算部と、
前記勾配特徴量の組み合わせパタンを複数記憶する組み合わせパタン記憶部と、
複数のブロックにおける共起特徴量を前記組み合わせパタンごとに算出する共起特徴演算部と、
前記複数のブロックごとに算出された前記共起特徴量を前記組み合わせパタンごとに加算して加算値を算出する算術演算部と、
前記加算値から統計データを生成する統計データ生成部と、
前記画像に対して所定の大きさのウィンドウを定め、前記ウィンドウ内における前記統計データに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する画像認識演算部と、を備える、
画像認識システム。
【請求項１３】
前記勾配特徴量は輝度勾配の方向と輝度勾配の大きさとからなり、
前記輝度勾配の大きさは所定のしきい値に基づいて二値で処理される、
請求項１２に記載の画像認識システム。
【請求項１４】
画像認識装置によって実行される画像認識方法であって、
複数のブロックに分割した画像から前記複数のブロックごとに勾配特徴量を計算し、
前記勾配特徴量の組み合わせパタンを複数記憶する記憶部から読み出し、
複数のブロックにおける共起特徴量を読み出した前記組み合わせパタンごとに算出し、
前記組み合わせパタンごとに前記共起特徴量を加算して加算値を算出し、
前記加算値から統計データを生成し、
前記画像に対して所定の大きさのウィンドウを定め、該ウィンドウ内における前記統計データに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する、
画像認識方法。
【請求項１５】
前記勾配特徴量は輝度勾配の方向と輝度勾配の大きさとからなり、
前記輝度勾配の大きさは所定のしきい値に基づいて二値で表される、
請求項１４に記載の画像認識方法。
【請求項１６】
前記組み合わせパタンは、
第１のブロックにおける勾配特徴量と、第２のブロックにおける勾配特徴量との組み合わせである、
請求項１４に記載の画像認識方法。
【請求項１７】
前記組み合わせパタンは、
前記第１のブロックに対する前記第２のブロックの相対的な位置情報がさらに含まれる、
請求項１６に記載の画像認識方法。
【請求項１８】
前記ウィンドウはそれぞれが２以上のブロックを含む複数のセルに分割されており、
前記統計データはセルごとの統計データとして生成されており、
前記セルごとの統計データを前記ウィンドウ内で統合する、
請求項１４に記載の画像認識方法。
【請求項１９】
前記画像認識装置は、重み付け値を記憶する重み付け値記憶部を備え、
前記画像認識方法は、
前記重み付け値を前記記憶部から読み出し、
前記統計データと前記重み付け値とに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する、
請求項１８に記載の画像認識方法。
【請求項２０】
（Ａ）複数のウィンドウにおいて請求項１４に記載の画像認識処理を行い、
（Ｂ）（Ａ）の結果に基づいてウィンドウの位置を決定し、
（Ｃ）決定されたウィンドウ位置の近傍の複数のウィンドウに対して請求項１４に記載の画像認識処理を行い、
（Ｄ）（Ｃ）の結果に基づいて所定の画像が含まれるか否かを認識する、
画像認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像認識装置に関し、例えば短い処理時間で検知性能の高い画像認識装置に関する。
【背景技術】
【０００２】
近年、モバイルや車載向けに自律移動、自律運転を目的とした高度なパタン認識技術が必要とされている。一方、モバイル機器や車載機器に搭載する画像認識装置の演算能力は限られている。そこで、少ない計算量で高い認識性能を有するアルゴリズムの開発が求められている。
【０００３】
文献１によれば、特徴量変換装置にバイナリデータとして取得した画像の特徴量を入力し、共起特徴量の組み合わせを論理演算器によって演算させる。そしてこの演算結果を統合することにより、非線形変換特徴ベクトルを生成する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−１５０１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、文献１に記載の装置は取得した特徴ベクトルの要素について全ての組み合わせを演算するため処理時間が長いという問題があった。
【０００６】
その他の課題と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００７】
一実施の形態によれば、
画像認識装置は、複数のブロックに分割した画像から前記複数のブロックごとに勾配特徴量を計算する勾配特徴演算部と、前記勾配特徴量の組み合わせパタンを複数記憶する組み合わせパタン記憶部と、複数のブロックにおける共起特徴量を前記組み合わせパタンごとに算出する共起特徴演算部と、前記複数のブロックごとに算出された前記共起特徴量を前記組み合わせパタンごとに加算して加算値を算出する算術演算部と、前記加算値から統計データを生成する統計データ生成部と、前記画像に対して所定の大きさのウィンドウを定め、前記ウィンドウ内における前記統計データに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する画像認識演算部と、を備える。
【０００８】
なお、上記実施の形態の装置を方法やシステムに置き換えて表現したもの、該装置または該装置の一部の処理をコンピュータに実行せしめるプログラム、該装置を備えた撮像装置なども、本実施の態様としては有効である。
【発明の効果】
【０００９】
前記一実施の形態によれば、短い処理時間で検知性能の高い画像認識装置を提供できる。
【図面の簡単な説明】
【００１０】
【図１】実施の形態１に係るブロック図である。
【図２】実施の形態１に係るブロック図である。
【図３】実施の形態１に係るハードウェア構成図である。
【図４】実施の形態１に係る勾配特徴量に関する説明図である。
【図５】実施の形態１に係る組み合わせ辞書に関する説明図である。
【図６】実施の形態１に係るウィンドウ計算部１８０の処理を説明する図である。
【図７】実施の形態１に係るフローチャートである。
【図８】実施の形態１に係るフローチャートである。
【図９】実施の形態２に係る組み合わせ辞書に関する説明図である。
【図１０】実施の形態２に係るウィンドウ計算部１８１の処理を説明する図である。
【図１１】実施の形態３に係るブロック図である。
【図１２】実施の形態３に係るブロック図である。
【図１３】実施の形態３に係るハードウェア構成図である。
【図１４（ａ）】実施の形態３に係る辞書の生成方法を説明する図である。
【図１４（ｂ）】実施の形態３に係る特徴ベクトルの並び替えを説明する図である。
【図１４（ｃ）】実施の形態３に係る辞書のデータ更新システムを説明する図である。
【図１５】実施の形態３に係る画像変換処理を説明する図である。
【図１６】実施の形態３に係る画像分割を説明するための図である。
【図１７】実施の形態３に係るフローチャートである。
【図１８】実施の形態３に係るフローチャートである。
【図１９】実施の形態３に係る算術演算部を説明するための図である。
【図２０】実施の形態４に係るブロック図である。
【図２１】実施の形態４に係るハードウェア構成図である。
【発明を実施するための形態】
【００１１】
説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。また、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
【００１２】
また、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００１３】
＜実施の形態＞
まず、これから説明する実施の形態で使用される技術についての概要を説明する。画像の特徴量を算出してパタン認識を行う技術は様々な手法が開発されている。例えば、ＨＯＧ（histograms of oriented gradients）という手法が広く知られている。この手法は、画像内のエッジ勾配を取得し、ベクトルのヒストグラムを算出する。これをＨＯＧ特徴量という。ＨＯＧ特徴量を解析することにより、画像認識装置は画像内の対象物を認識することが可能となる。またこれとは別の手法として、すでに取得した特徴量を組み合わせて新たな特徴量とする「共起特徴量」を用いる画像認識技術が知られている。共起特徴量を用いれば、異なる２点の特徴量を組み合わせることで物体の形状を大まかに認識することができる。
【００１４】
＜実施の形態１＞
図１は、実施の形態１に係る画像認識装置の機能ブロックの概要を説明するための図である。画像認識装置１００は、勾配特徴演算部１２０、組み合わせ辞書１６０、ウィンドウ計算部１８０、画像認識演算部１５０を備える。ウィンドウ計算部１８０は共起特徴演算部１３１、算術演算部１３２、統計データ生成部１４０より構成されている。
【００１５】
画像認識装置１００は画像を取り込むと、勾配特徴演算部１２０に情報を入力する。勾配特徴演算部１２０は、後述する画像データの勾配特徴量を演算し、演算結果をウィンドウ計算部１８０に出力する。
【００１６】
ウィンドウ計算部１８０は、所定の大きさに定められたウィンドウ内における画像の特徴量を算出し、算出結果を画像認識演算部１５０に出力する。以下にウィンドウ計算部１８０が備える各機能ブロックについて説明する。
【００１７】
共起特徴演算部１３１は、勾配特徴演算部１２０からの演算結果を受け、組み合わせ辞書１６０に格納されている組み合わせパタンに基づいて、共起特徴量の演算を行い、演算結果を算術演算部１３２に出力する。
【００１８】
算術演算部１３２は、共起特徴演算部１３１から演算結果を受け、共起特徴量を加算する。算術演算部１３２は、加算結果を統計データ生成部１４０に出力する。
【００１９】
統計データ生成部１４０は、算術演算部１３２から演算結果を受け、統計データを生成する。統計データは、例えばヒストグラムである。統計データ生成部１４０は、生成したデータを画像認識演算部１５０に出力する。
【００２０】
画像認識演算部１５０は、算術演算部１３２からデータを受け、ウィンドウ内に対象となる画像が含まれるか否かを演算する。ここで画像認識演算部１５０が行う演算は、例えば所定のしきい値に基づく差分や、参照テーブルに基づく比較等である。画像認識演算部１５０は、このような演算結果を画像認識装置１００の外部へ出力する。
【００２１】
次に、図２を参照しながら共起特徴演算部１３１の詳細について説明する。共起特徴演算部１３１は、複数のビット選択部（ビット選択部１ａ、ビット選択部１ｂ、・・・ビット選択部Ｐａ、ビット選択部Ｐｂ）及び複数の論理演算部（論理演算部１、・・・、論理演算部Ｐ）を備える。複数のビット選択部は組み合わせ辞書１６０から組み合わせパタンを参照し、それぞれ勾配特徴量を読み取る。複数のビット選択部は、２つのビット選択部がペアになって構成されている。そして、複数のビット選択部はそれぞれ接続している複数の論理演算部へ値を出力する。複数の論理演算部は、それぞれ複数のビット選択部から受けた値を論理演算し、結果を出力する。例えば、ビット選択部１ａと、ビット選択部１ｂとはペアである。そしてビット選択部１ａ及びビット選択部１ｂは、それぞれが論理演算部１へ値を出力する。
【００２２】
続いて、図３は、実施の形態１に係る画像認識装置１００のハードウェア構成を例示したものである。画像認識装置１００は、ＣＰＵ（central  processing  unit）１０１、画像処理部１０２、画像バッファ１０３、主記憶部１０４を備え、これらは通信バスにより接続されている。ＣＰＵ１０１及び画像処理部１０２は制御や計算を行うプロセッサである。画像バッファは取り込んだ画像を一時的に蓄積する一次記憶装置であり、例えばＤＲＡＭ（Dynamic Random Access Memory）やＳＲＡＭ（Static Random Access Memory）である。主記憶部１０４は、組み合わせ辞書１６０や画像認識演算部の処理に必要なデータ等を記憶している。主記憶部１０４は不揮発性の記憶装置であり、例えばＥＥＰＲＯＭ（Electrically  Erasable  Programmable  Read-Only  Memory）、フラッシュメモリ、ＦｅＲＡＭ（Ferroelectric  Random  Access  Memory）である。
【００２３】
ＣＰＵ１０１は、画像取得部１０５、統計データ生成部１３３、画像認識演算部１５０、辞書取得部８００を備える。画像取得部１０５は、画像認識装置１００に画像を取り込むときの処理を行う。辞書取得部８００は、主記憶部に格納された組み合わせ辞書の情報を画像処理部１０２に転送する。統計データ生成部１４０及び画像認識演算部１５０、勾配特徴演算部１２０、共起特徴演算部１３１、算術演算部１３２、組み合わせ辞書１６０は図１において説明した機能を有するためここでの説明は省略する。
【００２４】
ＣＰＵ１０１及び画像処理部１０２に格納されている各ブロックは、それぞれの機能を鑑みて適宜配置されている。しかし、これらの配置は変更しても構わないし、プロセッサは１つでも２つ以上でも構わない。
【００２５】
次に、図４を参照しながら勾配特徴量について説明する。勾配特徴演算部１２０は、各ブロックについて、そのブロックの隣接するブロックに対する輝度勾配を計算する。そして、勾配特徴演算部１２０は、勾配ベクトルの方向を所定の方向に近似した勾配方向と、勾配ベクトルの大きさをバイナリ化した値である勾配特徴量とに分ける。
【００２６】
画像３００は、カメラにより撮影された画像を取り込んだ画像データであり、予め複数のブロックに分割されている。例えば画像３００内のウィンドウ３０３はｘ方向に８分割、ｙ方向に１６分割されており、全部で１２８個のブロック３０４により構成されている。ブロック３０４の中の画素数は複数でも１つでも構わない。
【００２７】
勾配特徴演算部１２０は、ブロック３０４について勾配特徴量を計算する場合、ブロック３０４に隣接する上下左右の４個のブロックとの輝度値の差分をそれぞれ演算する。そして勾配特徴演算部１２０は、予め割り当てられた勾配方向における輝度値の差分が、所定のしきい値よりも大きいか否かを判定し、バイナリ出力する。例えば、勾配特徴演算部１２０は、演算した輝度値の差分から、勾配方向の例３０５のそれぞれに近似した輝度勾配を算出する。ここで示す例では、ブロック３０４における方向０の輝度値の差分は所定のしきい値よりも大きいとする。その場合、勾配特徴演算部１２０は、ブロック３０４における勾配方向０の勾配特徴量として１を出力する。勾配特徴演算部１２０は、全ての勾配方向についての演算を行い、ブロック３０４の勾配特徴量として表３０６の値を出力する。ここに示す例では、１つのブロックに対して出力される勾配特徴量は８ビットである。
【００２８】
勾配特徴演算部１２０が、勾配特徴量をバイナリ出力することにより、この後に行う共起特徴量の演算は単純な論理演算によって行うことができる。そのため、画像認識装置１００の処理速度を速くすることができる。
【００２９】
次に、図５を参照しながら、組み合わせ辞書１６０の構成について説明する。組み合わせ辞書１６０には対象となる画像が含まれるか否かを判断するための勾配方向のペアが複数格納されている。表３１０は、組み合わせ辞書１６０の構成を例示したものである。パタン番号Ｃ１は、Ｑ個の組み合わせパタンにそれぞれ割り当てられた番号である。パタン番号Ｃ１は、０から順に１ずつ増加し、最後のパタン番号はＱ−１である。選択部Ｃ２は、共起特徴演算部１３１のビット選択部１ａ〜ビット選択部Ｐａに出力される勾配方向が格納されている。選択部Ｃ３は、選択部Ｃ２のペアとなるビット選択部１ｂ〜ビット選択部Ｐｂに出力される勾配方向が格納されている。ここに示す例では、パタン番号０の場合、ビット選択部１ａに出力する勾配方向は０であり、ビット選択部１ｂに出力する勾配方向は３である。
【００３０】
次に、図６を参照しながら、ウィンドウ計算部１８０が行う演算について説明する。表３２０は、ウィンドウ３０３内の各ブロックにおける勾配特徴量である。表３３０は、共起特徴演算部が表３２０の勾配特徴量から共起特徴量を算出した算出結果である。表３４０は、算術演算部１３２が表３３０の算出結果を組み合わせパタンごとに加算した加算結果である。グラフ３５０は、統計データ生成部１４０が表３４０の加算結果から生成した統計データである。
【００３１】
共起特徴演算部１３１は、図５に例示した組み合わせ辞書１６０を参照して、各ビット選択部に入力する値を表３２０から選択する。また、共起特徴演算部１３１は、ブロックｐ＝０からブロックｐ＝Ｐ−１までの共起特徴量を演算する。すなわち、共起特徴演算部１３１は、まずブロックｐ＝０について、組み合わせ辞書１６０を参照して共起特徴量を演算する。共起特徴演算部１３１は、組み合わせ辞書１６０のパタン番号０、選択部Ｃ２を参照する。パタン番号０における選択部Ｃ２の値は０である。よって、共起特徴演算部１３１は、ビット選択部１ａに、ブロックｐ＝０における勾配方向０に対応する勾配特徴量を入力する。すなわち、共起特徴演算部１３１は、表３２０の勾配特徴量３２１の値である１を入力する。続いて、共起特徴演算部１３１は、パタン番号０の選択部Ｃ２に対応する選択部Ｃ３を参照する。パタン番号０における選択部Ｃ３の値は２である。よって、共起特徴演算部１３１は、ビット選択部１ｂに、ブロックｐ＝１〜ブロックｐ＝Ｐ−１における勾配方向２に対応する勾配特徴量を順次入力する。すなわち、共起特徴演算部１３１は、表３２０の勾配特徴量３２２の値をビット選択部１ｂに順次入力する。ここに示す例では、ブロックｐ＝２における勾配方向２の勾配特徴量は１である。よって、ビット選択部１ａとビット選択部１ｂの論理積は１となる。共起特徴演算部１３１は、ブロックｐ＝０における組み合わせパタン０の共起特徴量に１を出力する。ここに示す例では、表３３０における値３３１に１が表示されている。
【００３２】
同様に、共起特徴演算部１３１は、ブロックｐ＝０における組み合わせパタン１の共起特徴量を演算する。組み合わせ辞書１６０のパタン番号１の選択部Ｃ２の値は０である。よって、共起特徴演算部１３１は、ビット選択部２ａに対して、ブロックｐ＝０における勾配方向０の勾配特徴量である１を入力する。続いて、共起特徴演算部１３１は、ビット選択部２ｂに勾配特徴量を入力する。パタン番号１の選択部Ｃ２に対応する選択部Ｃ３の値は３である。よって、共起特徴演算部１３１は、ビット選択部２ｂに、ブロックｐ＝１〜ブロックｐ＝Ｐ−１における勾配方向３に対応する勾配特徴量を順次入力する。すなわち、共起特徴演算部１３１は、表３２０の勾配特徴量３２３の値をビット選択部２ｂに順次入力する。ここに示す例では、ブロックｐ＝０からブロックｐ＝Ｐ−１の範囲において勾配方向３の勾配特徴量が１となるものはない。よって、ビット選択部２ａとビット選択部２ｂの論理積は０となる。共起特徴演算部１３１は、ブロックｐ＝０における組み合わせパタン０の共起特徴量に０を出力する。ここに示す例では、表３３０における値３３２に０が表示されている。
【００３３】
共起特徴演算部１３１は、同様にしてブロックｐ＝０における全ての組み合わせパタンの共起特徴量を演算する。共起特徴演算部１３１は、ブロックｐ＝０における全ての共起特徴量の演算を終えると、ブロック番号をインクリメントし、ブロックｐ＝Ｐ−１まで演算を繰り返す。このようにして共起特徴演算部１３１は、ウィンドウ内の全てのブロックにおける全ての組み合わせパタンに対する共起特徴量を演算する。そして、共起特徴演算部１３１は、表３３０に示す値を算術演算部１３２に出力する。
【００３４】
算術演算部１３２は、共起特徴演算部１３１から受けたデータを、組み合わせパタンごとに加算する。そして共起特徴演算部１３１は、表３４０に示す加算結果を、統計データ生成部１４０に出力する。
【００３５】
統計データ生成部１４０は、算術演算部１３２から受けたデータを基に、統計データを生成する。具体的には、統計データ生成部１４０は、各桁を結合し、表３５０に示すようなヒストグラムとなるデータを生成する。そして統計データ生成部１４０は、生成した統計データをウィンドウ計算部１８０の出力として、画像認識演算部１５０に出力する。
【００３６】
ここに示す例では、ウィンドウ３０３は１２８のブロックに分割されており、勾配方向は０〜７の８通りである。そのため、画像認識装置１００がウィンドウ３０３内の全てのブロックについて、全ての勾配方向の組み合わせである共起特徴量を全て演算する場合、非常に膨大な組み合わせの演算を行うこととなる。しかし、組み合わせ辞書１６０の値に基づいて選択的に演算を行う場合は、画像認識装置１００は短い時間で処理を行うことができる。
【００３７】
次に図７を参照しながら画像認識装置１００の処理の概要を説明する。まず、画像認識装置１００は、複数のブロックに分割された画像３００を取り込み、勾配特徴演算部１２０に入力する（ステップＳ１０）。
【００３８】
勾配特徴演算部１２０は、図４を参照しながら説明した輝度勾配を算出する（ステップＳ１１）。そして勾配特徴演算部１２０は、輝度勾配をバイナリ変換する（ステップＳ１２）さらに勾配特徴演算部１２０は、バイナリデータをウィンドウ計算部１８０に出力する。
【００３９】
ウィンドウ計算部１８０は、入力されたバイナリデータに基づき特徴抽出演算を行う（ステップＳ１３）。そしてウィンドウ計算部１８０は、生成した統計データを画像認識演算部１５０に出力する。画像認識演算部１５０は、ウィンドウ計算部１８０より出力された統計データを受け、ウィンドウ内に対象となる画像が含まれるか否かを認識する演算を行う（ステップＳ１４）。そして画像認識演算部１５０は、演算結果を画像認識装置１００の外部へ出力する（ステップＳ１５）。画像認識演算部１５０は、例えば、対象となる画像が含まれている場合には１、含まれていない場合には０を出力することができる。
【００４０】
次に図８を参照しながらウィンドウ計算部１８０において行われる特徴抽出演算処理について説明する。図４に示すように、ウィンドウ計算部１８０は、起点となるブロック３０２の位置を順次移動させながら、所定の大きさであるウィンドウ３０３を移動させ、特徴抽出演算処理を繰り返す。図４の例では、起点となるブロック３０２はウィンドウ３０３の左上角のブロックである。ブロック３０２は、ブロックｍ＝０の位置から、ウィンドウが右下角に至るブロックｍ＝Ｍ−１の位置までｘ及びｙ方向に順次移動を繰り返すループ処理を行う（ステップＳ２０）。
【００４１】
ウィンドウ３０３の位置を決定した後、共起特徴演算部１３１は、ウィンドウ３０３内のブロック３０４の位置を順次決定するループ処理を行う（ステップＳ２１）。ここに示す例では、ブロックｐ＝０からブロックｐ＝Ｐ−１まで順次ブロック番号をインクリメントする。
【００４２】
ブロック３０４の位置を決定した後、共起特徴演算部１３１は、各ブロックにおける共起特徴量の演算を行う。共起特徴演算部１３１は、組み合わせ辞書１６０を参照して勾配方向を選択する。組み合わせ辞書１６０には０からＱ−１までの組み合わせパタンが格納されている。尚、Ｑは２以上の整数である。共起特徴演算部１３１は、各ブロックにおいて組み合わせ辞書１６０に格納されている組み合わせパタンを順次読み出すループ処理を行う（ステップＳ２２）。共起特徴演算部１３１は、ｑ番目の組み合わせパタンに基づいて、選択部Ｃ２の勾配方向を読み出し（ステップＳ２３）、また、選択部Ｃ２に対応する選択部Ｃ３の勾配方向を読み出す（ステップＳ２４）。そして共起特徴演算部１３１は、論理演算部ｑにおいてこれらの論理積を演算し、組み合わせパタンごとに共起特徴量を出力する（ステップＳ２５）。共起特徴演算部１３１は、ｑ＝Ｑ−１になるまで処理を繰り返した後、ループ処理を終了する（ステップＳ２６）。
【００４３】
算術演算部１３２は、共起特徴演算部１３１が出力する共起特徴量であるバイナリデータを受け、ｐ番目のブロックにおける共起特徴量を組み合わせパタンごとに加算し、統計データ生成部１４０に出力する（ステップＳ２７）。算術演算部１３２は、ｐ＝Ｐ−１になるまで処理を繰り返した後、ループ処理を終了する（ステップＳ２８）。
【００４４】
統計データ生成部１４０は、算術演算部１３２が出力したデータを受け、統計データを生成し、画像認識演算部１５０に出力する（ステップＳ２９）。ウィンドウ計算部１８０は、ｍ＝Ｍ−１になるまで処理を繰り返した後、ループ処理を終了する（ステップＳ３０）。
【００４５】
以上に説明したように、組み合わせ辞書に基づいて共起特徴量を演算することにより、ウィンドウ内の勾配特徴量を選択的に演算することが可能となり、短い処理時間で検知性能の高い画像認識装置を提供できる。
【００４６】
＜実施の形態２＞
次に、実施の形態２について説明する。実施の形態２は、組み合わせ辞書１６１に格納された情報が実施の形態１に係る組み合わせ辞書１６０と異なるのみである。従って、それ以外の重複する事項については説明を省略する。
【００４７】
図９は、実施の形態２に係る組み合わせ辞書１６１について説明するための図である。組み合わせ辞書１６１は、組み合わせ辞書１６０の情報に加えて、ブロックの相対的な位置情報を含む点が実施の形態１との相違点である。ブロックの相対位置情報３５１はアドレス番号０から１４までが図に示す通りの位置関係で配置されていることを表している。相対位置情報３５１は、選択された一のブロックの位置をアドレス番号０としたときの、他のブロックの相対的な位置を表している。例えば、ブロックｐ＝０における共起特徴量を演算する場合、アドレス番号１はｘ方向に隣接するブロックを指す。表３５３は組み合わせパタン番号Ｃ１、選択部Ｃ２、選択部Ｃ３が格納され、さらに位置情報Ｃ４が格納されている。このように、図９の例では、組み合わせ辞書１６１に、相対位置情報３５１及び表３５２を含む。
【００４８】
次に、図１０を参照しながら、実施の形態２に係るウィンドウ計算部１８０が行う演算について説明する。表３６０は、ウィンドウ３０３内の各ブロックにおける勾配特徴量である。表３７０は、共起特徴演算部が表３６０の勾配特徴量から共起特徴量を算出した算出結果である。
【００４９】
共起特徴演算部１３１は、図９に例示した組み合わせ辞書１６１を参照して、各ビット選択部に入力する値を表３６０から選択する。また、共起特徴演算部１３１は、ブロックｐ＝０からブロックｐ＝Ｐ−１までの共起特徴量を演算する。すなわち、共起特徴演算部１３１は、まずブロックｐ＝０について、組み合わせ辞書１６１を参照して共起特徴量を演算する。共起特徴演算部１３１は、組み合わせ辞書１６１のパタン番号０、選択部Ｃ２を参照する。パタン番号０における選択部Ｃ２の値は０である。よって、共起特徴演算部１３１は、ビット選択部１ａに、ブロックｐ＝０における勾配方向０に対応する勾配特徴量を入力する。すなわち、共起特徴演算部１３１は、表３６０の勾配特徴量３６１の値である１を入力する。続いて、共起特徴演算部１３１は、パタン番号０の選択部Ｃ２に対応する、選択部Ｃ３を参照する。パタン番号０における選択部Ｃ３の値は２である。次に、共起特徴演算部１３１は、パタン番号０の選択部Ｃ４を参照する。パタン番号０における選択部Ｃ４の値は１である。よって、共起特徴演算部１３１は、勾配方向にＣ３の値である２を選択し、アドレス番号にＣ４の値である１を選択する。その結果、共起特徴演算部１３１は、ビット選択部１ｂにブロックｐ＝１における勾配方向２の値を入力する。すなわち、共起特徴演算部１３１は、表３６０の勾配特徴量３６２の値である０を入力する。よって、ビット選択部１ａは１となり、ビット選択部１ｂは０となるため、論理積は０となる。ここに示す例では、表３７０における値３７１に０が表示されている。
【００５０】
同様に、共起特徴演算部１３１は、ブロックｐ＝０における組み合わせパタン番号１の共起特徴量を演算する。パタン番号１における選択部Ｃ２の値は０である。よって、共起特徴演算部１３１は、ビット選択部１ａに、ブロックｐ＝０における勾配方向０に対応する勾配特徴量を入力する。すなわち、共起特徴演算部１３１は、表３６０の勾配特徴量３６１の値である１を入力する。続いて、共起特徴演算部１３１は、パタン番号１の選択部Ｃ３を参照する。パタン番号１における選択部Ｃ３の値は７である。次に、共起特徴演算部１３１は、パタン番号１の選択部Ｃ４を参照する。パタン番号１における選択部Ｃ４の値は２である。よって、共起特徴演算部１３１は、勾配方向にＣ３の値である７を選択し、アドレス番号にＣ４の値である２を選択する。その結果、共起特徴演算部１３１は、ビット選択部１ｂにブロックｐ＝２における勾配方向７の値を入力する。すなわち、共起特徴演算部１３１は、表３６０の勾配特徴量３６３の値である１を入力する。よって、ビット選択部１ａは１となり、ビット選択部１ｂは１となるため、論理積は１となる。ここに示す例では、表３７０における値３７２に１が表示されている。これ以降の説明は実施の形態１と同様になるため、省略する。
【００５１】
このように、位置情報も加えた組み合わせ辞書に基づいて共起特徴量を演算することにより、ウィンドウ内の勾配特徴量を選択的に演算することが可能となり、短い処理時間で検知性能の高い画像認識装置を提供できる。
尚、組み合わせ辞書の具体的な格納方法、アドレス情報の範囲などはここに説明した内容に限ったものではなく、様々なパタンで実施することが可能である。
【００５２】
＜実施の形態３＞
次に、実施の形態３の具体的な説明をする前に、実施の形態３に係る技術的な背景について概略を説明する。
【００５３】
実施の形態１、２に例示した画像認識装置の画像処理に加えて、更に画像処理を行うことにより、認識精度を高めることができる。例えば、取り込んだ画像に含まれる対象画像の大きさは一定ではない。そのため、画像と、ウィンドウとの相対的な大きさを変換させることにより、認識性能を高めることができる。また、対象画像が含まれる可能性が極めて低い部分の画像データを予め除去しておくことにより、処理速度を上げることができる。また、ウィンドウの位置変更を行うステップ幅を大きくとり、対象となる画像が含まれる可能性が高いウィンドウの付近に対して再度小さいステップ幅で特徴量抽出処理を行うことにより、処理速度を上げることができる。
【００５４】
また、演算により算出した統計データに対して、予め学習した重み付け値を積算又は加算することにより、認識精度を高めることができる。このような重み付けを行う技術の一例としては、ＳＶＭ（support vector machine）を用いる手法が知られている。例えば、識別器の認識モデルをｆ（ｘ）、特徴ベクトルをｘ＝［ｘ１，ｘ２，・・・］、重みベクトルをｗ＝［ｗ１，ｗ２，・・・］バイアスをｂとして関係を表すと、ｆ（ｘ）＝ｗＴｘ＋ｂとなる。このｆ（ｘ）が正の場合が対象物、負の場合が非対象物であると判別することができる。この手法により、画像認識装置の認識性能を高めることができる。
【００５５】
次に、実施の形態３に係る画像認識装置２００について説明する。図１１は、実施の形態２に係る機能ブロック図である。ここでは実施の形態１と比較して異なる点についてのみ説明し、重複する部分の説明は省略する。
【００５６】
画像認識装置２００は、実施の形態１に係る画像認識装置１００に加えて、画像変換部１１０、重み付け値辞書１７０を備える。またウィンドウ計算部１８１はセル計算部１３０を備え、さらに統計データ統合部１４１を備える。セル計算部１３０は、共起特徴演算部１３１、算術演算部１３２、そして統計データ生成部１４０を含む。勾配特徴演算部１２０、共起特徴演算部１３１、算術演算部１３２、統計データ生成部１４０、組み合わせ辞書１６０は、実施の形態１の説明と同様なので、説明を省略する。
【００５７】
画像変換部１１０は、画像データを取り込み、所定の画像変換処理を行い、処理後の画像データを勾配特徴演算部１２０に出力する。
【００５８】
ウィンドウ計算部１８１は、ウィンドウ内を複数のセルに分割し、統計データをセルごとに生成する。そしてセルごとの統計データをさらにウィンドウ内で結合して画像認識演算部１５１に出力する。結合された統計データは、例えばウィンドウ内の共起特徴量をヒストグラムにしたものである。
【００５９】
画像認識演算部１５１は、統計データ統合部１４１から出力されたデータを受け、重み付け値辞書１７０のデータを参照して画像認識演算を行う。重み付けの演算は、例えばサポートベクターマシーンを用いることができる。画像認識演算部１５１は、演算結果に基づいて、画像内に対象となる画像が含まれているか否かを導出し、結果を画像認識装置２００の外部に出力する。
【００６０】
次に、図１２を参照しながらセル計算部１３０の詳細について説明する。セル計算部１３０は、勾配特徴演算部１２０から勾配特徴量についてのバイアスデータを受け、共起特徴演算部１３１に入力する。共起特徴演算部１３１、算術演算部１３２、統計データ生成部１４０の機能は実施の形態１において説明したものと同様である。ただし、ここで処理されるデータはウィンドウを分割したセル内のデータである。統計データ生成部１４０は、セル内の画像データに基づいて統計データを生成し、これを統計データ統合部１４１に出力する。
【００６１】
次に、図１３を参照しながら、画像認識装置２００のハードウェア構成について説明する。尚、実施の形態１に係る画像認識装置１００と重複する部分についての説明は省略する。
【００６２】
画像認識装置２００は、ＣＰＵ２０１、画像処理部２０２、画像バッファ１０３、主記憶部２０４を備え、これらは通信バスにより接続されている。ＣＰＵ２０１は、画像取得部１０５、統計データ生成部１４０、統計データ統合部１４１、画像認識演算部１５１、辞書取得部８００を備える。画像処理部２０２は、画像変換部１１０、勾配特徴演算部１２０、共起特徴演算部１３１、算術演算部１３２を備える。主記憶部２０４は、組み合わせ辞書１６０、重み付け値辞書１７０を備える。
【００６３】
次に、主記憶部２０４に格納されている組み合わせ辞書１６０及び重み付け値辞書１７０について説明する。組み合わせ辞書１６０及び重み付け値辞書１７０は、認識対象となる対象画像のデータと、認識対象ではない非対象画像のデータとを取り込み、学習器が予め学習することにより生成される。
【００６４】
図１４（ａ）は、重み付け値辞書と組み合わせ辞書を生成する方法を説明した図である。このような方法は、例えばコンピュータ又は専用のプログラムを実行するための学習器を備える装置により実行される。対象画像４０１は、認識対象が撮影された画像の画像データであって、複数の画像データである。非対象画像４０２は、認識対象とは異なるものが撮影された画像の画像データであって、複数の画像データである。対象画像４０１及び非対象画像４０２は、学習器４０３に入力される。
【００６５】
学習器４０３は、対象画像４０１及び非対象画像４０２の画像を受け、勾配特徴量をそれぞれ演算し、演算したデータに基づいて対象画像の特徴と、非対象画像の特徴を学習する（Ｓ１００）。そして学習器４０３は、学習した結果を重み付け値辞書１７０の値として出力する。重み付け値辞書１７０がＳＶＭを採用する場合は、学習器４０３は、重みベクトルｗｉとバイアスｂを重み付け値辞書１７０に出力する。適切な学習が行われると、対象物の画像に係る特徴ベクトルｗｉの値は正の値となり、非対象物の画像に係る特徴ベクトルｗｉの値は負の値となり、どちらにも該当しない画像に係る特徴ベクトルｗｉの値はゼロに近くなる。特徴ベクトルｗｉの絶対値は、その確からしさに基づいて決定される。例えば、対象物の画像では普遍的に検出され、非対象物の画像ではめったに検出されない特徴ベクトルｗｉは、符号が正となり、値は相対的に大きくなる。
【００６６】
次に、学習器４０３は、演算したデータを優先度に従って並び替える（ステップＳ１０１）。図１４（ｂ）は実施の形態３に係る特徴ベクトルの並び替えを説明する図である。学習器４０３は、対象画像の勾配特徴量を高い優先度に並べ替え、そこから共起する勾配特徴量を導出する。学習器４０３は、例えば、重みベクトルｗｉの絶対値の大きさを優先度の高さとみなしてデータを並び替える。具体的には、学習器４０３は特徴ベクトルがｘ＝［ｘ０，ｘ２，．．．，ｘ７］で表わされる。この場合、重みベクトルｗｉの値は、例えば表４１０のような値に設定される。学習器４０３は、重みベクトルｗｉの絶対値を計算し、その絶対値の大きさでデータを並び替える。並び替えを行った結果、表４１１に示すように、特徴ベクトルｘ１の重みベクトルｗｉが最も大きな値となるため、優先度が最も高くなる。
【００６７】
次に、学習器４０３は、共起する勾配特徴量の組み合わせを選択する（ステップＳ１０２）。学習器４０３は、選択した組み合わせを組み合わせ辞書１６０に出力し、処理を終了する。
【００６８】
なお、学習器４０３は、組み合わせ辞書１６０及び重み付け値辞書１７０を逐次更新しても良い。例えば、図１４（ｃ）に例示するように、学習器４０３と、画像認識装置２００とは、離れた場所に存在し、ネットワーク４２０を介して互いに接続している。学習器４０３が新たな画像を取り込み、組み合わせ辞書１６０又は重み付け値辞書１７０を更新した場合、これらの辞書データは、ネットワーク４２０経由で画像認識装置２００に送られる。画像認識装置２００は、新たな辞書データを受けると、組み合わせ辞書１６０又は重み付け値辞書１７０のデータを更新する。
【００６９】
次に、図１５を参照しながら画像変換部１１０について説明する。画像変換部１１０は、取り込んだ画像の変換処理を行う。例えば、画像変換部１１０は、画像５０４を受け、画像サイズを縮小する変換処理を行う。ここに示す例では、画像変換部１１０は縮小した画像５０５および画像５０６を生成する。画像５０５は画像５０４よりも少ない画素数によって画像が構成されており、画像５０４はさらに少ない画素数によって画像が構成されている。
【００７０】
ところで、ウィンドウ計算部１８１に係るウィンドウ５０３は画像５０４〜画像５０６に対して一定のサイズで処理を行う。従って、図１５に示すように、ウィンドウ５０３は、縮小された画像に対しては相対的に異なるサイズの画像を認識することができる。
【００７１】
次に、図１６を参照しながらセル５０８について説明する。画像認識装置２００は、取り込んだ画像５０５に対してウィンドウ５０３を移動させながら画像認識処理を行う。ウィンドウ５０３は複数のセル５０８により構成される。ここに示す例では、ウィンドウ５０３は８個のセルによって構成される。また、それぞれのセル５０８は、複数のブロック５０９により構成される。ここに示す例では、セル５０８は１６個のブロック５０９により構成される。
【００７２】
このように、ウィンドウ５０３を複数のセルにより構成することにより、ウィンドウ５０３内の認識処理をセルごとに行うことができる。
【００７３】
次に図１７及び図１８を参照しながら画像認識装置２００の処理の概要について説明する。図１７は画像認識装置２００が行う処理を例示したフローチャートである。実施の形態１において説明した内容と重複する処理については説明を省略する。まず、画像認識装置２００は、複数のブロックに分割された画像３００を取り込み、画像変換部１１０に入力する（ステップＳ１０）。
【００７４】
次に、画像変換部１１０は、取り込んだ画像の変換処理を行う（ステップＳ４０）。画像変換部１１０は、例えば図１６に例示したように画像サイズを縮小する変換処理を行う。
【００７５】
次に、画像変換部１１０は、変換処理をした画像データを、勾配特徴演算部１２０に出力する。ステップＳ１１、ステップＳ１２の処理は実施の形態１において説明した内容と同様なのでここでは省略する。勾配特徴演算部１２０は演算結果であるバイナリデータをウィンドウ計算部１８１に出力する。
【００７６】
次に、ウィンドウ計算部１８１は、入力されたバイナリデータに基づき特徴抽出演算を行う（ステップＳ４１）。ウィンドウ計算部１８１は、演算した結果生成された統計データを画像認識演算部１５１に出力する。画像認識演算部１５１は、ウィンドウ計算部１８１より出力された統計データを受け、識別演算を行う（ステップＳ４２）。そして画像認識演算部１５１は、結果を画像認識装置２００の外部へ出力する（ステップＳ４３）。
【００７７】
次に、画像認識演算部１５１が行う処理の具体例について説明する。画像認識演算部１５１は、統計データ統合部１４１から出力されたデータを受け、画像認識演算を行う。その際、画像認識演算部１５１は、重み付け値辞書１７０のデータを参照する。重み付けの演算は、例えばＳＶＭを用いることができる。例えば、統計データ統合部１４１から以下のような値がＳＶＭの特徴ベクトルとして出力される。
ｘ＝［ｘ１，ｘ２，・・・，ｘｍ］
これに対して、重みベクトルｗｉは例えば以下のように定義される。
ｗｉ＝［ｗ１，ｗ２，・・・，ｗｍ］
そして、以下の演算を行う。
2018022315.tif 000003
演算の結果、ｆ（ｘ）が正の値であれば、ウィンドウ内に対象となる画像が含まれていることを示す。さらにその値が大きいほど対象となる画像が含まれているといえる。
【００７８】
次に図１８を参照しながらウィンドウ計算部１８１において行われる特徴抽出演算処理について説明する。実施の形態１と同様に、ウィンドウ計算部１８１は、ウィンドウ５０３を移動させ、特徴抽出演算処理を繰り返す。このとき、ウィンドウ５０３起点となるブロックは、図１６に示すように、ブロックｍ＝０の位置からｍ＝Ｍ−１の位置までｘ及びｙ方向に順次移動を繰り返すループ処理を行う（ステップＳ２０）。
【００７９】
ウィンドウの位置を決定した後、セル計算部１３０は、ウィンドウ５０３内のセル５０８の位置を順次決定するループ処理を行う（ステップＳ５１）。図１６に示すように、セル５０８はセルｎ＝０の位置からセルｎ＝Ｎ−１の位置まで移動を繰り返す。
【００８０】
共起特徴演算部１３１は、セルの位置を決定した後、セル内のブロック５０９の位置を順次決定するループ処理を行う（ステップＳ２１）。図１６に示すように、ブロック５０９はブロックｐ＝０の位置からブロックｐ＝Ｎ−１の位置まで移動を繰り返す。
【００８１】
ブロックの位置を決定した後、共起特徴演算部１３１は、各ブロックにおける共起特徴量の演算を行う。ここで共起特徴演算部１３１、セル内において共起特徴量の有無の演算を行う。具体的には、実施の形態１において説明した内容と同様であるため、ステップＳ２２〜ステップＳ２６については、ここでの説明は省略する。
【００８２】
算術演算部１３２は、共起特徴演算部１３１が出力する共起特徴量であるバイナリデータを受け、ｐ番目のブロックにおける共起特徴量を、組み合わせパタンごとに加算する（ステップＳ２７）。算術演算部１３２は、ｐ＝Ｐ−１になるまで処理を繰り返した後、ループ処理を終了する（ステップＳ２８）。
【００８３】
セル計算部１３０は、算術演算部１３２が出力したデータを統計データ生成部１４０へ入力し、セル内の統計データを生成する（ステップＳ５２）。セル計算部１３０は、ｎ＝Ｎ−１になるまで処理を繰り返した後、ループ処理を終了する（ステップＳ５３）。
【００８４】
ウィンドウ計算部１８１は、セル計算部１３０が出力した統計データを統計データ統合部１４１へ入力し、統計データを統合する（ステップＳ５４）。ウィンドウ計算部１８１は、ｍ＝Ｍ−１になるまで処理を繰り返した後、ループ処理を終了する（ステップＳ３０）。
【００８５】
このように、変換処理した画像について組み合わせ辞書に基づいて共起特徴量を演算することにより、短い処理時間で検知性能の高い画像認識装置を提供できる。
【００８６】
実施の形態３では、ウィンドウ内を複数のセルに分割するため、セルごとに異なる演算を行うことが可能となる。例えば、画像認識装置２００は、ウィンドウ内におけるセルの位置に応じた組み合わせパタン辞書を備えることができる。また、画像認識装置２００は、ウィンドウ内におけるセルの位置に応じた重み付け値辞書を備えることができる。
【００８７】
例えば、図１６におけるウィンドウ５０３は画像内に人間が含まれるか否かを認識することを目的としているとする。その場合、ウィンドウ５０３に含まれる８個のセル５０８の内、上側に位置する４個のセル５０８は人間の上半身を認識することができればよい。その場合、共起特徴量としては、人間の上半身を認識するための組み合わせ辞書を適用すればよい。また、重み付けについても、人間の上半身を認識するための重み付けを行えばよい。
【００８８】
こうすることにより、辞書の記憶容量は増加するが、さらに短い処理時間で検知性能の高い画像認識装置を提供できる。
【００８９】
また、画像変換部１１０は、取り込んだ画像に対して対象となる画像が含まれる可能性が低い部分を削除する処理を行うこともできる。図１５において、画像５０４の上部エリア５００は、人間が含まれる可能性が低い。そのため、画像変換部１１０は、この部分をトリミング加工して出力することができる。
【００９０】
こうすることにより、短い処理時間の画像認識装置を提供できる。
【００９１】
また、算術演算部１３２は、セル内のブロック数の合計と、共起特徴量の組み合わせパタンの数の合計とを積算したビット数以上のデータを処理する演算器を備えることができる。図１９を参照しながら、算術演算部１３２の例について説明する。図１９は、ウィンドウが８個のセルに分割される。また、１個のセルは１６個のブロックに分割される。この例では、共起特徴量の組み合わせパタンの数はｄ０からｄ７の８個である。この場合、ブロックごとに演算される共起特徴量は、ｘ０ｙ０ブロックに８ビット、ｘ１ｙ０ブロックに８ビットが少なくとも割り当てられる。ここに示す例では、セル内の全てのブロックについて共起特徴量を計算した場合、加算結果は最大で１６になる。算術演算の１６をバイナリデータで表す場合は、演算器５１０は５ビット以上あれば足りる。これを組み合わせパタンの数である８個分備えると、演算器５１０は４０ビット以上となる。つまり、算術演算部１３２の演算器５１０は４０ビット以上のビット配列を備える。そして算術演算部１３２は、これらのデータを加算する際、各ブロックにおける各組み合わせパタンの共起特徴量を順次演算することはしない。算術演算部１３２は、代わりにｘｉｙｊのブロックに示したように、４０ビット以上（図１９の例では４８ビット）のビット配列を持つ演算器５１０を用意し、それぞれの組み合わせパタンに直接共起特徴量を加算する。
【００９２】
このような演算器５１０によって演算することにより、演算器５１０の桁数は増えるが、算術演算部の演算サイクルが削減され、高速な演算を行うことが可能となる。そのため、短い処理時間の画像認識装置を提供できる。
【００９３】
また、画像認識装置２００は、ウィンドウの位置を移動するステップ数を多段階で処理することができる。図１６において、ウィンドウ５０３は、起点ブロック５０２の位置を順次変更しながら共起特徴量の抽出を行う。このとき開始位置をブロックｍ＝０として、ｘ方向に例えば８ブロックずつ進め、ウィンドウが右端に到達するとｙ方向に１ブロック進める。すなわち、画像認識装置２００は、第１のウィンドウ位置として、ｘ方向に８ステップずつ進めたウィンドウについての画像認識処理を行う。画僧認識処理の結果、画像認識装置２００は、対象となる画像が含まれる可能性が高いウィンドウを判定する。そして、画像認識装置２００は、対象となる画像が含まれる可能性が高いと判定したウィンドウの近傍の複数のウィンドウについて、例えばｘ方向に１ブロックずつ位置を変更して画像認識処理を行う。
【００９４】
このような処理を行うことで、短い処理時間の画像認識装置を提供できる。
【００９５】
＜実施の形態４＞
次に、実施の形態４に係る画像認識システムについて説明する。尚、すでに説明した内容と重複する場合は説明を省略する。
【００９６】
図２０は実施の形態４に係る画像認識システム６００の機能ブロック図である。図２１は実施の形態４に係る画像認識システム６００のハードウェア構成である。図２０、図２１に示すように、画像認識システム６００は実施の形態１に例示した画像認識装置１００に加えカメラ９００を備える。カメラ９００は、撮像素子、レンズ、を備える。カメラ９００は、画像を撮影すると、画像認識装置１００に画像を転送する。カメラ９００は通信バスによりＣＰＵ１０１、画像処理部１０２、画像バッファ１０３、主記憶部１０４と接続されている。ＣＰＵ１０１はカメラを制御する制御部を備えていてもよい。
【００９７】
このようなシステムによって、短い処理時間で検知性能の高い画像認識システムを提供することができる。
【００９８】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は既に述べた実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において種々の変更が可能であることはいうまでもない。
【００９９】
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
（付記１）
複数のブロックに分割した画像から前記複数のブロックごとに勾配特徴量を計算する勾配特徴演算部と、
前記勾配特徴量の組み合わせパタンを複数記憶する組み合わせパタン記憶部と、
複数のブロックにおける共起特徴量を前記組み合わせパタンごとに算出する共起特徴演算部と、
前記組み合わせパタンごとに前記共起特徴量を加算して加算値を算出する算術演算部と、
前記加算値から統計データを生成する統計データ生成部と、
前記画像に対して所定の大きさのウィンドウを定め、前記ウィンドウ内における前記統計データに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する画像認識演算部と、を備える、
画像認識装置。
（付記２）
前記勾配特徴量は輝度勾配の方向と輝度勾配の大きさとからなり、
前記輝度勾配の大きさは所定のしきい値に基づいて二値で表される、
付記１に記載の画像認識装置。
（付記３）
前記組み合わせパタンは、
第１のブロックにおける勾配特徴量と、第２のブロックにおける勾配特徴量との組み合わせである、
付記１に記載の画像認識装置。
（付記４）
前記組み合わせパタンは、
前記第１のブロックに対する前記第２のブロックの相対的な位置情報がさらに含まれる、
付記３に記載の画像認識装置。
（付記５）
前記ウィンドウはそれぞれが２以上のブロックを含む複数のセルに分割されており、
前記統計データ生成部はセルごとの統計データを生成し、
前記セルごとの統計データを前記ウィンドウ内で統合する統計データ統合部をさらに備える、
付記１に記載の画像認識装置。
（付記６）
前記画像認識装置は、重み付け値を記憶する重み付け値記憶部をさらに備え、
前記画像認識演算部は、前記統計データと前記重み付け値とに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する、
付記５に記載の画像認識装置。
（付記７）
前記重み付け値記憶部には、サポートベクターマシーンの重みベクトルとバイアスが格納され、
前記画像認識演算部はサポートベクターマシーンを含む、
付記６に記載の画像認識装置。
（付記８）
前記画像認識装置は、
取り込んだ前記画像を複数のサイズに縮小変換する画像変換部をさらに備える、
付記５に記載の画像認識装置。
（付記９）
前記組み合わせパタン記憶部または前記重み付け値記憶部は、前記ウィンドウ内における前記セルの位置に応じた組み合わせパタンまたは重み付け値を記憶する、
付記６に記載の画像認識装置。
（付記１０）
前記画像認識装置は、
取り込んだ前記画像にトリミング処理を行う画像変換部をさらに備える、
付記１に記載の画像認識装置。
（付記１１）
前記算術演算部は、前記セル内のブロック数の合計と、前記共起特徴量の組み合わせパタンの数とを積算したビット数以上のデータを処理する演算器を備える、
付記５に記載の画像認識装置。
（付記１２）
カメラと、
複数のブロックに分割した画像から前記複数のブロックごとに勾配特徴量を計算する勾配特徴演算部と、
前記勾配特徴量の組み合わせパタンを複数記憶する組み合わせパタン記憶部と、
複数のブロックにおける共起特徴量を前記組み合わせパタンごとに算出する共起特徴演算部と、
前記複数のブロックごとに算出された前記共起特徴量を前記組み合わせパタンごとに加算して加算値を算出する算術演算部と、
前記加算値から統計データを生成する統計データ生成部と、
前記画像に対して所定の大きさのウィンドウを定め、前記ウィンドウ内における前記統計データに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する画像認識演算部と、を備える、
画像認識システム。
（付記１３）
前記勾配特徴量は輝度勾配の方向と輝度勾配の大きさとからなり、
前記輝度勾配の大きさは所定のしきい値に基づいて二値で処理される、
付記１２に記載の画像認識システム。
（付記１４）
画像認識装置によって実行される画像認識方法であって、
複数のブロックに分割した画像から前記複数のブロックごとに勾配特徴量を計算し、
前記勾配特徴量の組み合わせパタンを複数記憶する記憶部から読み出し、
複数のブロックにおける共起特徴量を読み出した前記組み合わせパタンごとに算出し、
前記組み合わせパタンごとに前記共起特徴量を加算して加算値を算出し、
前記加算値から統計データを生成し、
前記画像に対して所定の大きさのウィンドウを定め、該ウィンドウ内における前記統計データに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する、
画像認識方法。
（付記１５）
前記勾配特徴量は輝度勾配の方向と輝度勾配の大きさとからなり、
前記輝度勾配の大きさは所定のしきい値に基づいて二値で表される、
付記１４に記載の画像認識方法。
（付記１６）
前記組み合わせパタンは、
第１のブロックにおける勾配特徴量と、第２のブロックにおける勾配特徴量との組み合わせである、
付記１４に記載の画像認識方法。
（付記１７）
前記組み合わせパタンは、
前記第１のブロックに対する前記第２のブロックの相対的な位置情報がさらに含まれる、
付記１６に記載の画像認識方法。
（付記１８）
前記ウィンドウはそれぞれが２以上のブロックを含む複数のセルに分割されており、
前記統計データはセルごとの統計データとして生成されており、
前記セルごとの統計データを前記ウィンドウ内で統合する、
付記１４に記載の画像認識方法。
（付記１９）
前記画像認識装置は、重み付け値を記憶する重み付け値記憶部を備え、
前記画像認識方法は、
前記重み付け値を前記記憶部から読み出し、
前記統計データと前記重み付け値とに基づき、前記ウィンドウ内に所定の画像が含まれるか否かを認識する、
付記１８に記載の画像認識方法。
（付記２０）
前記重み付け値はサポートベクターマシーンの重みベクトルとバイアスであり、
前記統計データと前記重み付け値とに基づき、サポートベクターマシーンを用いて前記ウィンドウ内に所定の画像が含まれるか否かを認識する、
付記１９に記載の画像認識方法。
（付記２１）
前記組み合わせパタンまたは前記重み付け値は、前記ウィンドウ内における前記セルの位置に応じた組み合わせパタンまたは重み付け値である、
付記１８に記載の画像認識方法。
（付記２２）
前記画像認識方法は、
取り込んだ前記画像にトリミング処理を行う、
付記１４に記載の画像認識方法。
（付記２３）
前記画像認識方法は、
取り込んだ前記画像を複数のサイズに縮小変換する、
付記１４に記載の画像認識方法。
（付記２４）
（Ａ）複数のウィンドウにおいて付記１４に記載の画像認識処理を行い、
（Ｂ）（Ａ）の結果に基づいてウィンドウの位置を決定し、
（Ｃ）決定されたウィンドウ位置の近傍の複数のウィンドウに対して付記１４に記載の画像認識処理を行い、
（Ｄ）（Ｃ）の結果に基づいて所定の画像が含まれるか否かを認識する、
画像認識方法。
（付記２５）
前記共起特徴量をブロックごとに計算し、
前記ブロックの前記共起特徴量を、前記共起特徴量の組み合わせごとに逐次加算し統計データを生成する、
付記１８に記載の画像認識方法。
【符号の説明】
【０１００】
１００、２００  画像認識装置
１０１、２０１  ＣＰＵ
１０２、２０２  画像処理部
１０３  画像バッファ
１０４、２０４  主記憶部
１０５  画像取得部
１１０  画像変換部
１２０  勾配特徴演算部
１３０  セル計算部
１３１  共起特徴演算部
１３２  算術演算部
１４０  統計データ生成部
１４１  統計データ統合部
１５０、１５１  画像認識演算部
１６０、１６１  組み合わせ辞書
１７０  重み付け値辞書
１８０、１８１  ウィンドウ計算部
５１０  演算器
６００  画像認識システム
８００  辞書取得部
９００  カメラ
【図１】
2018022315.tif 000004
【図２】
2018022315.tif 000005
【図３】
2018022315.tif 000006
【図４】
2018022315.tif 000007
【図５】
2018022315.tif 000008
【図６】
2018022315.tif 000009
【図７】
2018022315.tif 000010
【図８】
2018022315.tif 000011
【図９】
2018022315.tif 000012
【図１０】
2018022315.tif 000013
【図１１】
2018022315.tif 000014
【図１２】
2018022315.tif 000015
【図１３】
2018022315.tif 000016
【図１４（ａ）】
2018022315.tif 000017
【図１４（ｂ）】
2018022315.tif 000018
【図１４（ｃ）】
2018022315.tif 000019
【図１５】
2018022315.tif 000020
【図１６】
2018022315.tif 000021
【図１７】
2018022315.tif 000022
【図１８】
2018022315.tif 000023
【図１９】
2018022315.tif 000024
【図２０】
2018022315.tif 000025
【図２１】
2018022315.tif 000026