説明

認識装置、認識方法、プログラム及び記録媒体

【課題】画像データなどのロバストなパターン認識を実現するのに適した認識装置等を提供する。
【解決手段】データのパターンを認識する認識装置1は、データのヒストグラムを高精度に近似するヒストグラム近似公式(ヒストグラム関数)を生成するヒストグラム関数作成部5と、ヒストグラム関数を用いてデータを複数のクラスの少なくとも1つに分類する分類部9とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本願発明は、認識装置、認識方法、プログラム及び記録媒体に関し、特にデータのパターンを認識する認識装置等に関する。
【背景技術】
【0002】
従来、例えば画像データなどに対して、ヒストグラムの重なり具合により、コンピュータによるパターン認識処理を行うことは知られていた(非特許文献1、非特許文献2参照)。
【0003】
【非特許文献1】K.Kashino、外2名著,Quick Search Method for Audio and Video Signals Based on Histogram Pruning,IEEE Transaction on Multimedia,vol.5,No.3,2003,p.348-357
【非特許文献2】B.Schiele、外1名著,Recognition Using Multidimensional Receptive Field Histograms,Proc.of European Conference on Computer Vision,1996,p.610-619
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、ヒストグラムを用いてパターン認識処理を行う場合、まったく異なった種類のデータでもヒストグラムが似ている場合がある。また、認識能力はノイズの影響を受けやすい。そのため、ヒストグラムを用いた方法によっては、ロバストなパターン認識処理を充分に実現することはできなかった。
【0005】
そこで、本願発明は、例えば画像データなどのデータに対し、ロバストなパターン認識を実現するのに適した認識装置等を提案することを目的とする。
【課題を解決するための手段】
【0006】
請求項1に係る発明は、データのパターンを認識する認識装置であって、前記データのヒストグラムを近似する関数を生成する関数作成手段と、前記関数生成手段により生成された関数を用いて前記データを複数のクラスの少なくとも1つに分類する分類手段と、を備えるものである。
【0007】
請求項2に係る発明は、区間[c,d]に含まれるM個のデータy(m=0,1,…,M−1)のパターンを認識する認識装置であって、正整数Nに対し式(eq1)と式(eq2)の少なくとも一方により表されるデータyに対するヒストグラム関数f(x)を生成するヒストグラム関数作成手段と、前記ヒストグラム関数f(x)を用いてデータyを複数のクラスの少なくとも1つに分類する分類手段と、を備える認識装置である。
【0008】
【数1】

【0009】
請求項3に係る発明は、請求項2記載の認識装置であって、前記データyにはP個のパラメータα(p=1,…,P)が含まれ、訓練データを用いてパラメータαを決定する決定手段を備えるものである。
【0010】
請求項4に係る発明は、請求項3記載の認識装置であって、前記決定手段がパラメータαの複数の組み合わせを決定し、前記分類手段がパラメータαの組み合わせのうち全部又は一部を用いてデータyの分類を行うものである。
【0011】
請求項5に係る発明は、データのパターンを認識する認識方法であって、関数作成手段が、前記データのヒストグラムを近似する関数を生成する関数作成ステップと、分類手段が、前記関数生成手段により生成された関数を用いて前記データを複数のクラスの少なくとも1つに分類する分類ステップと、を含む認識方法である。
【0012】
請求項6に係る発明は、コンピュータを、請求項1から4のいずれかに記載の認識装置として機能させるためのプログラムである。
【0013】
請求項7に係る発明は、請求項6記載のプログラムを記録した記録媒体である。
【0014】
なお、本願発明を、画像の濃淡値のパターンを認識する認識装置であって、前記画像の濃淡値により得られたデータCi,jに対し、画像領域をΩとし、式(eq3)と式(eq4)の少なくとも一方により表されるヒストグラム関数f(x)を生成するヒストグラム関数作成手段と、データCi,jを前記ヒストグラム関数f(x)を用いて複数のクラスの少なくとも1つに分類する分類手段と、を備えるものとして捉えてもよい。
【0015】
また、データCi,jには2種類のパラメータλ、λ(l=−L,…,L)が含まれており、これらの2種類のパラメータは、訓練画像の濃淡値から得られたデータCi,jに対するヒストグラム関数f(x)のクラス内分散は小さく、かつ、クラス間分散は大きくなるように決められるものであってもよい。
【0016】
【数2】

【発明の効果】
【0017】
本願発明によれば、データのヒストグラムを高精度に近似するヒストグラム近似公式(ヒストグラム関数)を用いてパターン認識処理を行うことにより、ロバストなパターン認識処理を実現することができる。
【0018】
さらに、従来のヒストグラムを用いた方法は、データが既知でないとヒストグラムが構成できなかったため、未知のパラメータを含むものを扱うことはできなかった。本発明によれば、例えば請求項3にあるように、ヒストグラム関数に含まれているデータに未知のパラメータが含まれていてもよい。そして、決定手段は、訓練データに対するヒストグラム関数の分散が、クラス内では小さく、かつ、クラス間では大きくなるように、未知のパラメータを学習させてパラメータを決定するようにしてもよい。このようなパラメータを用いると、データのパターン認識処理を飛躍的に向上させることができる。
【0019】
本願発明によれば、例えば、様々な時系列信号の識別、画像認識、一般物体認識、遺伝子配列やマイクロアレイデータのクラスタリング、3次元モデルの認識等を行うことが可能となる。例えば、ネットワークカメラで取得された動物体の認識は一般物体認識の範疇に入り、認識が難しいと言われている。本願発明は、このような分野であってもロバストなパターン認識処理を実現することが可能となる。
【発明を実施するための最良の形態】
【0020】
本願発明の実施の形態について、以下説明する。
【実施例1】
【0021】
図1は、本願発明の実施の形態に係る認識装置1の一例を示す概要ブロック図である。認識装置1は、分類対象となるデータを取得するデータ取得部3と、データに対するヒストグラム関数を生成するヒストグラム関数生成部5と、データにパラメータが含まれている場合にパラメータを決定する決定部7と、ヒストグラム関数生成部5により生成されたヒストグラム関数を用いて分類対象となるデータを複数のクラスのいずれかに分類する分類部9と、分類部9による分類結果を表示する結果表示部11を備える。
【0022】
ヒストグラム関数生成部5により生成されるヒストグラムは、一般的には、式(1)又は式(2)により与えられる。すなわち、M個のデータy(m=0,1,…,M−1)が区間[c,d]に含まれる場合に、データyに対するヒストグラム関数は、正整数Nに対し、式(1)により与えられる。また、式(2)は式(1)と同等である。
【0023】
【数3】

【0024】
なお、データy(m=0,1,…,M−1)は未知のパラメータαp(p=1,…,P)を含んでいてもよい。オリジナルなデータをyorgm(m=0,1,…,M−1)で表したとき、未知のパラメータはいろいろな形でyorgmと関わっていてもよい。したがって、ymは、作用素Iを用いて式(3)のような汎関数の形で書くことができる。
【0025】
【数4】

【0026】
以下では、データ取得部3により取得されたデータは画像の濃淡値に関するものとして図1の認識装置の動作の一例を具体的に説明する。
【0027】
データCi,jは、データ取得部3により取得された画像の濃淡値に基づいて式(4)及び式(5)により生成されたものとする。また、リフティング低周波成分には共通の水平方向のパラメータλ及び垂直方向のパラメータλ(l=−L,…,L)が含まれていると仮定する。
【0028】
【数5】

【0029】
ヒストグラム関数生成部5は、式(6)で示されるCi,jに対するヒストグラム関数f(x)を生成する。式(7)は、式(6)と同等であり、式(6)に代えて式(7)を用いてもよく、また、式(6)と式(7)の双方を用いてもよい。
【0030】
【数6】

【0031】
続いて、決定部7によるパラメータの決定処理について説明する。S個のクラスのそれぞれに対してT個の訓練画像が与えられるとする。決定部7は、リフティング低周波成分に共通に含まれる水平方向のパラメータ及び垂直方向のパラメータを、クラス内分散が小さく、かつ、クラス間分散が大きくなるように決定する。この決定法は、式(8)の汎関数Jを最小にするように決定することと同等である。
【0032】
【数7】

【0033】
決定部7は、Jを最小化アルゴリズムを用いて最小化する。そのためには、Jの水平方向のパラメータ及び垂直方向のパラメータに関する勾配である式(9)の計算が必要である。それは、式(10)の両辺を水平方向及び垂直方向のパラメータに関して微分することにより計算することができる。式(10)は、左辺のfν(x)、fμ(x)に式(6)を代入し、コサイン関数の積和公式を用いて整理することにより得られるものである。(なお、μについてのaμ[k]等は、νに関するaν[k]等と同様のものである)
【0034】
【数8】

【0035】
分類部9は、決定部7により決定されたパラメータを用いて、後に図面を用いて説明するように、画像データのパターン認識処理を行う。結果表示部11は、分類部9による分類結果を表示する。
【実施例2】
【0036】
続いて、式(1)及び式(2)の導出について、c=−1、d=1の場合、すなわち、データyが区間[−1,1]に含まれる場合につき、説明する。
【0037】
前記区間[−1,1]を2N+1等分し、部分空間[(2n-1)/(2N+1),(2n+1)/(2N+1))における前記データyの度数をg(n=−N,…,N)で表すと、gの離散フーリエ変換は式(11)で与えられ、離散フーリエ逆変換は式(12)で与えられる。
【0038】
【数9】

【0039】
式(11)をコサイン関数とサイン関数を用いて書き換え、コサイン関数とサイン関数のテイラー展開を用い、さらにx=2n/(2N+1)と置くと、式(11)は式(13)のように書くことができる。
【0040】
【数10】

【0041】
ここで、部分区間[(2n-1)/(2N+1),(2n+1)/(2N+1))に属するyの代表値をzで表すと、zは部分区間[(2n-1)/(2N+1),(2n+1)/(2N+1))の中点2n/(2N+1)のいずれかなので、式(14)で示されるモーメント関係が成り立つ。式(14)を用いると、式(15)が成り立つ。
【0042】
【数11】

【0043】
式(15)を式(12)に代入すると、サイン関数は奇関数なので虚数部が0となり、式(16)が成り立つ。
【0044】
【数12】

【0045】
ここで、式(17)の両辺をk=1からk=Nまで加え、U(z)について整理すると式(18)が成り立つ。そして、zをπ(z−x)にもどすと式(19)が得られる。
【0046】
【数13】

【0047】
式(19)において、代表値zをyで近似し、分点xを、区間[−1,1]を動く変数xに拡張すれば、式(1)が得られる。また、式(16)において、代表値zをyに、xをxに置き換えれば式(2)が得られる。
【実施例3】
【0048】
続いて、道路上を走行している車両の種類(車種)が、ミニカー、セダン、バン、トラック又はバスのいずれであるかをリアルタイムで識別する問題を例にとり、本願発明の優位性・実用性を具体的に説明する。
【0049】
図1のデータ取得部3は、市販のネットワークカメラを用いて走行車両の画像を取得する。取得された画像には、走行車両の他、さまざまな物体が写りこんでいる。連続する3枚の画像から差画像を計算し、さらにその重心を計算して動物体のみを検出する。動物体の周りの画素値は0にしておく。
【0050】
図2は、図1の決定部7がパラメータを決定するために用いられる25枚の訓練画像を示す図である。車種はミニカー、セダン、バン、トラック、バスの5種類であり、クラス数Sは5である。各クラスから5枚の画像を選び、計25枚の画像を訓練画像として用いる。
【0051】
図2に示した25枚の訓練画像は、ダイアデックウェーブレット変換がなされ、リフティング低周波成分が作成され、正規化される(式(4)、式(5)参照)。ヒストグラム関数生成部5は、正規化された画像からヒストグラム関数fν,t(x),t=1,…,5、ν=1,…,5を作成する。決定部7は、生成されたヒストグラム関数を汎関数(7)に代入し最小化アルゴリズムを用いてJを最小化する。(以下では、Jを最小化することを「学習」ともいう。)
【0052】
図3は、決定されたパラメータをもつヒストグラム関数(以下、「第一種ヒストグラム関数」という。)をクラス毎に示す図である。(a)はミニカーを、(b)はセダンを、(c)はバンを、(d)はトラックを、(e)はバスを示す。(c)バンの場合、いずれもx=0において谷があり、左側のピークより右側のピークの方が高い。この現象は他のクラスでは見られないもので、バンの特徴を表している。(e)バスの場合、いずれも区間[-0.2,-0.1]において、急激に増加しており、この現象も他のクラスには見られない。したがって、(e)のグラフもバスの特徴を表している。残りの3クラスについては、得られたヒストグラム関数での識別が困難であるので、残りの3クラスだけで未知パラメータの再学習を行う。
【0053】
図4は、ミニカー、セダン、トラックの3つのクラスの訓練画像に対して再学習したヒストグラム関数(以下、「第二種ヒストグラム関数」という。)をクラス毎に示す図である。(a)はミニカー、(b)はセダン、(c)はトラックを示す。図4により、各クラスにそれぞれ異なった特徴があることがわかる。たとえば、y軸をある閾値で切れば(b)セダンの場合、x=0におけるヒストグラム関数値が存在しないし、(a)ミニカーの場合、y軸より右側が膨らんでいる。(c)トラックの場合は、ほぼ対称で分散が大きい。このように、学習することによってヒストグラム関数に画像の特徴が現れてくる。このような特徴をルール化すれば識別が可能となる。
【0054】
図5は、パラメータがすべて0の場合(リフティングを行わない場合)のヒストグラム関数を示す図である。(a)〜(e)に関しては図3と同様である。これらのヒストグラム関数からは、クラス毎の特徴を見出すことは困難である。
【0055】
以上より、学習されたヒストグラム関数から車両のタイプを識別することができる。
【0056】
図6は、認識装置1による識別手順を示すフロー図である。まず、データ取得部3は、画像データを取得する(図6のステップST1)。取得された画像データはダイアデックウェーブレット変換がなされ(図6のステップST2)、ヒストグラム関数生成部5は、二種類のヒストグラム関数を作成する(図6のステップST3)。続いて、分類部9は、以下の分類処理を行う(図6のステップST4)。
【0057】
まず、分類部9は、第一種ヒストグラム関数がx=0において谷があり、y軸の右側にあるピークが左側のそれよりも高いか(条件A)を判定する(図6のステップST11)。条件Aが成り立つならば、画像はバンと判定する(図6のステップST12)。条件Aが成り立たないならば、図6のステップST13の処理を行う。
【0058】
図6のステップST13において、分類部9は、第一種ヒストグラム関数がx=-0.15において急峻であるか(条件B)を判定する。条件Bが成り立つならば、画像はバスと判定する(図6のステップST14)。条件Bが成り立たないならば、図6のステップST15の処理を行う。
【0059】
図6のステップST15において、分類部9は、第二種ヒストグラム関数のx=0における値が閾値1より小さく、x=0.5における傾きが閾値2より大きいか(条件C)、又は、第二種ヒストグラム関数のx=0における値が閾値1より大きく、x=0.5における傾きが閾値3より小さく、その傾きとx=-0.5における傾きの和が閾値4より大きいか(条件C)を判定する。条件CとCのいずれかが成り立つならば、画像はミニカーと判定する(図6のステップST16)。条件CもCも成り立たないならば、図6のステップST17の処理を行う。
【0060】
図6のステップST17において、分類部9は、第二種ヒストグラム関数のx=0における値が閾値1より大きく、x=0.5における傾きが閾値5より大きいか(条件D)、又は、第二種ヒストグラム関数のx=0における値が閾値1より大きく、x=0.5における傾きが閾値6より大きいか(条件D)を判定する。条件DとDのいずれかが成り立つならば、画像はセダンと判定する(図6のステップST18)。条件DもDも成り立たないならば、図6のステップST19の処理を行う。
【0061】
図6のステップST19において、分類部9は、第二種ヒストグラム関数のx=0における値が閾値1より小さく、x=-0.5における傾きが閾値7より小さいか(条件E)、又は、第二種ヒストグラム関数のx=0における値が閾値1より大きく、分散が閾値7より大きく、歪が閾値8より小さいか(条件E)を判定する。条件EとEのいずれかが成り立つならば、画像はトラックと判定する(図6のステップST20)。条件EもEも成り立たないならば、認識不能と判定する(図6のステップST21)。なお、認識不能については、訓練データは用意されずパラメータ決定では考慮されないものの、分類にのみ用いられるクラスとして捉えてもよい。
【0062】
続いて、テスト画像を用いた認識実験について説明する。認識実験は、クラス毎に15枚のテスト画像を選び、計75枚のテスト画像に対して行った。図7は、認識実験におけるテスト画像の一部を示す図である。実験では、まず、5クラスの訓練画像に対して学習されたパラメータを用いてすべてのテスト画像のリフティング低周波成分を計算し、それらを正規化する。また、正規化されたリフティング低周波成分から第一種ヒストグラム関数を計算する。次に、ミニカー、セダン、トラックの3クラスの訓練画像に対して再学習されたパラメータを用いて、すべてのテスト画像のリフティング低周波成分を計算する。そして、それらを正規化し、正規化されたリフティング低周波成分から第二種ヒストグラム関数を計算する。得られたすべてのヒストグラム関数に図6の識別手順を適用し認識を行う。
【0063】
表1は認識結果を示す表である。認識結果からわかるように、ミニカーとセダンで80パーセント、トラックとバスで86パーセント以上、バンでは93パーセントの認識率が得られた。
【0064】
【表1】

【0065】
図8は5クラスのテスト画像に対するヒストグラム関数を示す図である。図9はミニカー、セダン、トラックの3クラスのテスト画像に対するヒストグラム関数を示す図である。図8と図3、図9と図4を比較すると、各クラスに共通の特徴が認められる。
【0066】
本実施例における認識時間は、ヒストグラム関数に図6の識別手順を適用するだけであるので一瞬である。車両切り出しの手間やヒストグラム関数の作成時間を加えても高々1秒以内で認識できる。
【0067】
認識実験に用いたテスト画像は、ネットワークカメラで実際の走行車両から切り出されたものであり、認識が困難な対象である。原画像に自己相関法を適用して得られたシフト不変な画像に、判別分析法とリフティングウェーブレット変換を組み合わせた方法で認識を試みたが、認識率は10パーセントにも及ばなかった。そのため、本願発明には、優位性・実用性が認められる。
【図面の簡単な説明】
【0068】
【図1】本願発明の実施の形態に係る認識装置1の一例を示す概要ブロック図である。
【図2】図1の決定部7がパラメータを決定するために用いられる25枚の訓練画像を示す図である。
【図3】決定されたパラメータをもつヒストグラム関数をクラス毎に示す図である。
【図4】ミニカー、セダン、トラックの3つのクラスの訓練画像に対して再学習したヒストグラム関数をクラス毎に示す図である。
【図5】パラメータがすべて0の場合(リフティングを行わない場合)のヒストグラム関数を示す図である。
【図6】認識装置1による識別手順を示すフロー図である。
【図7】認識実験におけるテスト画像の一部を示す図である。
【図8】5クラスのテスト画像に対するヒストグラム関数を示す図である。
【図9】ミニカー、セダン、トラックの3クラスのテスト画像に対するヒストグラム関数を示す図である。
【符号の説明】
【0069】
1 認識装置、5 ヒストグラム関数生成部、7 決定部、9 分類部

【特許請求の範囲】
【請求項1】
データのパターンを認識する認識装置であって、
前記データのヒストグラムを近似する関数を生成する関数作成手段と、
前記関数生成手段により生成された関数を用いて前記データを複数のクラスの少なくとも1つに分類する分類手段と、
を備える認識装置。
【請求項2】
区間[c,d]に含まれるM個のデータy(m=0,1,…,M−1)のパターンを認識する認識装置であって、
正整数Nに対し式(eq1)と式(eq2)の少なくとも一方により表されるデータyに対するヒストグラム関数f(x)を生成するヒストグラム関数作成手段と、
前記ヒストグラム関数f(x)を用いてデータyを複数のクラスの少なくとも1つに分類する分類手段と、
を備える認識装置。

【請求項3】
前記データyにはP個のパラメータα(p=1,…,P)が含まれ、
訓練データを用いてパラメータαを決定する決定手段を備える請求項2記載の認識装置。
【請求項4】
前記決定手段はパラメータαの複数の組み合わせを決定し、
前記分類手段はパラメータαの組み合わせのうち全部又は一部を用いてデータyの分類を行う、請求項3記載の認識装置。
【請求項5】
データのパターンを認識する認識方法であって、
関数作成手段が、前記データのヒストグラムを近似する関数を生成する関数作成ステップと、
分類手段が、前記関数生成手段により生成された関数を用いて前記データを複数のクラスの少なくとも1つに分類する分類ステップと、
を含む認識方法。
【請求項6】
コンピュータを、請求項1から4のいずれかに記載の認識装置として機能させるためのプログラム。
【請求項7】
請求項6記載のプログラムを記録した記録媒体。

【図1】
image rotate

【図6】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate