(57)【要約】【課題】マハラノビス平方距離による判別分析において、オブジェクトの内部構造の情報を反映させて、判別の精度を上げる。【解決手段】本発明による学習データ生成装置は、マハラノビス平方距離によるオブジェクト判別分析のための学習データを生成する学習データ生成装置であって、抽出されたオブジェクト領域とそのオブジェクト領域を構成する画素の濃度に従って領域分割を行い、複数の小領域を生成し、複数の小領域間の隣接関係を表すグラフを生成し、複数の小領域のうち隣接する小領域の濃度・高さ・幅の差の絶対値の重み付き和であるグラフのエッジの属性値を特徴量として、その全ての特徴量を含む特徴量データを生成する。そして、生成された特徴量データをオブジェクト領域のオブジェクト種類ごとにまとめ、この特徴量データに関し、最大個数の特徴量を有する特徴量データに合わせて特徴量の個数がその最大個数よりも少ない特徴量データにダミーの特徴量を追加して学習用データとする。【選択図】図１
2007334755.tif 000002
【特許請求の範囲】
【請求項１】
マハラノビス平方距離によるオブジェクト判別分析のための学習データを生成する学習データ生成装置であって、
複数のオブジェクトが撮影された濃淡画像からオブジェクト領域を抽出する領域抽出手段と、
前記抽出されたオブジェクト領域とそのオブジェクト領域を構成する画素の濃度に従って領域分割を行い、複数の小領域を生成するオブジェクト領域分割手段と、
前記複数の小領域間の隣接関係を表すグラフを生成する隣接関係グラフ生成手段と、
前記複数の小領域のうち隣接する小領域の濃度・高さ・幅の差の絶対値の重み付き和であるグラフのエッジの属性値を特徴量として、その全ての特徴量を含む特徴量データを生成する特徴量データ生成手段と、
前記生成された特徴量データを前記オブジェクト領域のオブジェクト種類ごとにまとめる特徴量データ整理手段と、
前記特徴量データ整理手段によってまとめられた特徴量データに関し、最大個数の特徴量を有する特徴量データに合わせて特徴量の個数がその最大個数よりも少ない特徴量データにダミーの特徴量を追加する特徴量追加手段と、を備え、
前記特徴量追加手段で得られた特徴量データを学習用データとすることを特徴とする学習データ生成装置。
【請求項２】
さらに、前記特徴量追加手段によって得られた特徴量データの個数がその特徴量の個数に満たない場合に、既存の特徴量データの特徴量の順序をランダムに並び替えて新しい特徴量データを生成し、追加することにより、特徴量データの個数が特徴量データの特徴量の個数と同じになるようにする特徴量データ追加手段を備えることを特徴とする請求項１に記載の学習データ生成装置。
【請求項３】
前記特徴量追加手段は、前記ダミーの特徴量として前記まとめられた特徴量データが有する特徴量のうち最大値を示す特徴量を追加することを特徴とする請求項１又は２に記載の学習データ生成装置。
【請求項４】
マハラノビス平方距離によるオブジェクト判別装置であって、
判別対象のオブジェクトの特徴量データを生成する特徴量データ生成手段と、
学習データとして、オブジェクト種ごとの特徴量データを記憶する学習データ記憶手段と、
前記学習データについて前記オブジェクト種毎に平均及び分散・共分散行列を算出する演算手段と、
前記判別対象のオブジェクトの特徴量データと前記学習データのオブジェクト種毎の平均及び分散・共分散行列に基づいて、マハラノビス平方距離を計算し、最小距離を取るオブジェクト種を判別結果として出力する判別手段と、を備え、
前記学習データ記憶手段は、学習データ生成用の複数のオブジェクトが撮影された濃淡画像からオブジェクト領域を抽出し、前記抽出されたオブジェクト領域とそのオブジェクト領域を構成する画素の濃度に従って領域分割を行い、複数の小領域を生成し、前記複数の小領域間の隣接関係を表すグラフを生成し、前記複数の小領域のうち隣接する小領域の濃度・高さ・幅の差の絶対値の重み付き和であるグラフのエッジの属性値を特徴量としてその全ての特徴量を含む特徴量データを生成し、前記生成された特徴量データを前記オブジェクト領域のオブジェクト種類ごとにまとめ、このまとめられた特徴量データに関し、最大個数の特徴量を有する特徴量データに合わせて特徴量の個数がその最大個数よりも少ない特徴量データにダミーの特徴量を追加することによって生成された学習データを記憶することを特徴とするオブジェクト判別装置。
【請求項５】
さらに、前記判別対象のオブジェクトの特徴量データが有する特徴量の個数が前記オブジェクト種毎の学習データが有する特徴量の個数よりも少ない場合に、前記判別対象のオブジェクトの特徴量データにダミーの特徴量を追加して前記学習データの特徴量の個数に合わせる特徴量追加手段を備えることを特徴とする請求項４に記載のオブジェクト判別装置。
【請求項６】
前記学習データ記憶手段は、さらに、特徴量データの個数がその特徴量の個数に満たない場合に、既存の特徴量データの特徴量の順序をランダムに並び替えて新しい特徴量データを生成し、追加することにより、特徴量データの個数が特徴量データの特徴量の個数と同じになるようにして得られた学習データを記憶することを特徴とする請求項４又は５に記載のオブジェクト判別装置。
【請求項７】
前記学習データ記憶手段は、前記ダミーの特徴量として前記まとめられた特徴量データが有する特徴量のうち最大値を示す特徴量を追加することにより生成された学習データ記憶することを特徴とする請求項４乃至６の何れか１項に記載のオブジェクト判別装置。
【請求項８】
コンピュータを請求項１乃至３のいずれかに記載の学習データ生成装置として機能させるためのプログラム。
【請求項９】
コンピュータを請求項４乃至８のいずれかに記載のオブジェクト判別装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習データ生成装置及びオブジェクト判別装置に関し、特に、オブジェクトが異なる複数の形状等を含む内部構造を持つ場合に適合する学習データ生成装置及びオブジェクト判別装置に関するものである。
【背景技術】
【０００２】
例えば食品を扱う工場や販売店では、衛生管理のために常時害虫の調査を行っている。この調査のため、従来は接着剤を塗った紙、いわゆる捕虫紙を一定の時間の間、所定の場所に配置し、捕虫紙に捕らえられた虫を人手で分類していた。このような虫の分類作業は人が虫眼鏡を用いて１つ１つの虫を確認するので時間がかかるとともに、経験や能力の個人差が大きいことから結果にばらつきがあることが問題となっていた。
そこで、コンピュータを用いて分類及び識別作業の自動化することが望まれている。
【０００３】
そして、オブジェクトを分類するには幾何特徴量を用いる手法が良く使われている。幾何特徴量というのはオブジェクトの面積・周囲長・円形度・縦横比など図形の形状に関する測度である。この手法では、まず、複数のオブジェクトが撮影された濃淡画像を２値化して２値画像を生成し、次に、ラベリングの処理により連結成分を取り出し、さらに、各連結成分の幾何特徴量（オブジェクトの面積、高さ、幅等）を計算し、最後に幾何特徴量に閾値処理を行うことによりオブジェクトの分類をする。例えば、非特許文献１では、バナナ・りんご・みかんなどの果物を対象として円形度の違いから長い形状のバナナを取り出した例が記述されている。
【０００４】
【非特許文献１】Ｃ言語で学ぶ実践画像処理（平成４年、八木伸行・他７名著、オーム社）
【非特許文献２】http://kuva.mis.hiroshima-u.ac.jp/~asano/Kougi/99s/JouhouToukei2/6-16.html
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、幾何特徴量を用いる手法はオブジェクトの一面しか捉えていない。すなわち、幾何特徴量はオブジェクトの輪郭の情報だけに基づいているが、オブジェクトが内部構造を持つ場合がある。例えば、虫を考えると、虫は頭・胸・腹・足から構成されており、さらに、頭は触角・眼・口などの下部構造を持っている。
【０００６】
このような場合、オブジェクト全体を一つの領域で扱うのは適切でなく、幾何特徴量を用いる方法ではオブジェクトを確実に認識することは困難である。従って、オブジェクトを構成する小領域に分けて、それぞれの小領域について処理する必要があるが、これには幾何特徴量を用いる手法は向いていない。
【０００７】
本発明は上述のような状況に鑑みてなされたものであり、輪郭だけでは正確に判別できないようなオブジェクトをより正確に判別できるようにするための特徴量を生成する学習データ生成装置、及びその特徴を用いてオブジェクトの判別を行うオブジェクト判別装置を提供するものである。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明では、学習用のオブジェクト特徴量を生成するときには、まず、画像入力装置から入力された画像はそのまま濃淡画像としてメモリに格納され、それと並行して入力画像は２値化されて２値画像もメモリに格納される。そして、処理装置内の各モジュール（オブジェクトの領域の特徴量算出、特徴量データの分類、ダミーの特徴量の追加、ランダムに並び替えた特徴量データの追加）の処理が実行され、それによって生成された特徴量データが学習用データとして特徴量データ格納部に格納される。この学習用データとしての特徴量データは、オブジェクト判別に用いられる。
【０００９】
また、オブジェクトを判別するときには、まず判別対象の画像が画像入力装置から入力され、その濃淡画像及び２値画像がメモリに格納される。そして、入力画像の特徴量がモジュール（オブジェクトの領域の特徴量算出）によって算出される。一方、他のモジュール（平均と分散・共分散行列算出、逆行列算出）によって学習用のオブジェクト特徴量からオブジェクト種毎に平均及び分散・共分散行列、並びにその逆行列を求める。そして、モジュール（マハラノビス距離算出）によって判別対象の特徴量データと各オブジェクト種のマハラノビス平方距離を算出し、最小の距離を与えるオブジェクト種を判別結果として出力する。
【００１０】
即ち、本発明による学習データ生成装置は、マハラノビス平方距離によるオブジェクト判別分析のための学習データを生成する学習データ生成装置であって、複数のオブジェクトが撮影された濃淡画像からオブジェクト領域を抽出する領域抽出手段と、前記抽出されたオブジェクト領域とそのオブジェクト領域を構成する画素の濃度に従って領域分割を行い、複数の小領域を生成するオブジェクト領域分割手段と、前記複数の小領域間の隣接関係を表すグラフを生成する隣接関係グラフ生成手段と、前記複数の小領域のうち隣接する小領域の濃度・高さ・幅の差の絶対値の重み付き和であるグラフのエッジの属性値を特徴量として、その全ての特徴量を含む特徴量データを生成する特徴量データ生成手段と、前記生成された特徴量データを前記オブジェクト領域のオブジェクト種類ごとにまとめる特徴量データ整理手段と、前記特徴量データ整理手段によってまとめられた特徴量データに関し、最大個数の特徴量を有する特徴量データに合わせて特徴量の個数がその最大個数よりも少ない特徴量データにダミーの特徴量を追加する特徴量追加手段と、を備え、前記特徴量追加手段で得られた特徴量データを学習用データとすることを特徴とする。
【００１１】
学習データ生成装置は、さらに、前記特徴量追加手段によって得られた特徴量データの個数がその特徴量の個数に満たない場合に、既存の特徴量データの特徴量の順序をランダムに並び替えて新しい特徴量データを生成し、追加することにより、特徴量データの個数が特徴量データの特徴量の個数と同じになるようにする特徴量データ追加手段を備える。
【００１２】
また、前記特徴量追加手段は、前記ダミーの特徴量として前記まとめられた特徴量データが有する特徴量のうち最大値を示す特徴量を追加する。
【００１３】
本発明によるオブジェクト判別装置は、マハラノビス平方距離によるオブジェクト判別装置であって、判別対象のオブジェクトの特徴量データを生成する特徴量データ生成手段と、学習データとして、オブジェクト種ごとの特徴量データを記憶する学習データ記憶手段と、前記学習データについて前記オブジェクト種毎に平均及び分散・共分散行列を算出する演算手段と、前記判別対象のオブジェクトの特徴量データと前記学習データのオブジェクト種毎の平均及び分散・共分散行列に基づいて、マハラノビス平方距離を計算し、最小距離を取るオブジェクト種を判別結果として出力する判別手段と、を備える。ここで、前記学習データ記憶手段は、学習データ生成用の複数のオブジェクトが撮影された濃淡画像からオブジェクト領域を抽出し、前記抽出されたオブジェクト領域とそのオブジェクト領域を構成する画素の濃度に従って領域分割を行い、複数の小領域を生成し、前記複数の小領域間の隣接関係を表すグラフを生成し、前記複数の小領域のうち隣接する小領域の濃度・高さ・幅の差の絶対値の重み付き和であるグラフのエッジの属性値を特徴量としてその全ての特徴量を含む特徴量データを生成し、前記生成された特徴量データを前記オブジェクト領域のオブジェクト種類ごとにまとめ、このまとめられた特徴量データに関し、最大個数の特徴量を有する特徴量データに合わせて特徴量の個数がその最大個数よりも少ない特徴量データにダミーの特徴量を追加することによって生成された学習データを記憶している。
【００１４】
さらに、オブジェクト判別装置は、前記判別対象のオブジェクトの特徴量データが有する特徴量の個数が前記オブジェクト種毎の学習データが有する特徴量の個数よりも少ない場合に、前記判別対象のオブジェクトの特徴量データにダミーの特徴量を追加して前記学習データの特徴量の個数に合わせる特徴量追加手段を備えることを特徴とする。
【００１５】
前記学習データ記憶手段は、さらに、特徴量データの個数がその特徴量の個数に満たない場合に、既存の特徴量データの特徴量の順序をランダムに並び替えて新しい特徴量データを生成し、追加することにより、特徴量データの個数が特徴量データの特徴量の個数と同じになるようにして得られた学習データを記憶することを特徴とする。なお、前記学習データ記憶手段は、前記ダミーの特徴量として前記まとめられた特徴量データが有する特徴量のうち最大値を示す特徴量を追加することにより生成された学習データ記憶する。
【００１６】
さらなる本発明の特徴は、以下本発明を実施するための最良の形態および添付図面によって明らかになるものである。
【発明の効果】
【００１７】
本発明の学習データ生成装置によれば、輪郭だけでは正確に判別できないようなオブジェクトをより正確に判別できるようにするための特徴量データ（学習データ）を提供することができる。また、本発明のオブジェクト判別装置によれば、そのような学習データを用いているので未知のオブジェクトをより正確に判別することができる。
【発明を実施するための最良の形態】
【００１８】
本発明に係る実施形態は、オブジェクト判別に用いる学習データを生成する過程とその学習データに基づいて実際に未知のオブジェクトを判別する過程に大別される。以下、添付図面を用いて本発明の実施形態について説明する。
【００１９】
＜装置のハードウェア構成＞
図１は、本発明の一実施形態に係るハードウェアシステム（特徴量生成装置並びにオブジェクト判別装置）の構成を示すブロック図である。ハードウェアシステムは、入力装置、出力装置、処理装置、および記憶装置で構成されている。入力装置として、スキャナやデジカメなどの画像入力装置１０１とキーボード１０２がシステムに結合されている。キーボード１０２はパラメータの入力やコマンドの起動などに使われる。出力装置として、ディスプレイ１１２がシステムに結合している。ディスプレイ１１２は各種の画像の表示などに使われる。
【００２０】
処理装置１０３は、オブジェクトの領域の特徴量を算出するモジュール１０４、特徴量データの分類を支援するモジュール１０５、ダミーの特徴量を追加するモジュール１０６、および、ランダムに並び替えた特徴量データを追加するモジュール１０７の四つのモジュールを含む。記憶装置１０８は、モジュール１０４の入出力である濃淡画像格納部１０９と２値画像格納部１１０と４つの全てのモジュールからアクセスされる特徴量データ格納部１１１とを含む。
【００２１】
学習用のオブジェクト特徴量を生成するときには、まず、画像入力装置１０１から入力された画像はそのまま濃淡画像として濃淡画像格納部１０９に格納され、それと並行して入力画像は２値化されて２値画像格納部１１０にも格納される。そして、処理装置１０３内の各モジュール１０４乃至１０７の処理が実行され、それによって生成された特徴量データが学習用データとして特徴量データ格納部１１１に格納される。この学習用データとしての特徴量データは、オブジェクト判別に用いられる。
【００２２】
また、オブジェクトを判別するときには、まず判別対象の画像が画像入力装置１０１から入力され、その濃淡画像が濃淡画像格納部１０９に、２値画像が２値画像格納部１１０に格納される。そして、入力画像の特徴量がモジュール１０４によって算出される。一方、モジュール１１３及び１１４によって学習用のオブジェクト特徴量からオブジェクト種毎に平均及び分散・共分散行列、並びにその逆行列を求める。そして、モジュール１１５によって判別対象の特徴量データと各オブジェクト種のマハラノビス平方距離を算出し、最小の距離を与えるオブジェクト種を判別結果として出力する。
【００２３】
＜学習用のオブジェクト特徴量生成処理＞
図２は、学習用のオブジェクト特徴量生成処理の概要を示すフローチャートである。なお、各ステップの処理は、各モジュール１０４乃至１０７及び記憶装置１０８が協働して実行される。
【００２４】
図２において、ステップＳ２０１では、モジュール１０４が、複数のオブジェクトが撮影された濃淡画像からオブジェクトの領域を抽出し、オブジェクトの領域ごとに特徴量を算出する。ここでの特徴量は、従来とは異なり、オブジェクトの領域を濃度にしたがって領域分割して生成された小領域間の隣接関係を表すグラフのエッジの属性値である。ここで隣接関係とは、分割されて生成された各小領域のどれとどれが隣接するかを示す情報である。そして、属性値は、エッジの両端のノードが表す小領域の濃度・高さ・幅の差の絶対値の重み付き和として定義される。したがって、オブジェクトの領域の特徴量は隣接する小領域の組の数だけある。また、あるオブジェクトに対してその全ての特徴量の集合を特徴量データと呼ぶことにする。なお、ステップＳ２０１の動作の詳細はさらに後述する。
【００２５】
ステップＳ２０２では、一枚の濃淡画像には多種のオブジェクトが混在するので、利用者によって識別されたオブジェクトの種類が入力され、モジュール１０５がステップＳ２０１で得られた特徴量データを入力されたオブジェクトの種類ごとにまとめる。つまり入力された画像を目視してその画像が示すオブジェクトの種類（後述するクラス：例えば虫の種類）を特定され、その特定されたオブジェクトの種類ごとに特徴量が整理される。
【００２６】
ステップＳ２０３では、モジュール１０６は、特徴量の個数が少ない特徴量データにダミーの特徴量を追加して数を合わせる（処理の具体的内容はさらに後述する）。一般に特徴量データの特徴量の個数は様々であるが、マハラノビス距離を示すコストの算出の際には個数を合わせた方が特徴ベクトルの次元を単一にでき、演算の正確性・単純化を実現できるからである。なお、ダミーの特徴量の値は実際の特徴量の最大値としている。
【００２７】
ステップＳ２０４では、モジュール１０７が「特徴量データの個数≧特徴量データの特徴量の個数」という条件を満たすように、乱数を用いて特徴量データを追加する。この条件は後半の過程で生成される分散・共分散行列のランク（階数）が特徴量の個数より少なくならないようになるための必要条件である。既存の特徴量データ中の特徴量の順序をランダムに並び替えて新しい特徴量データを生成して、追加する。
【００２８】
以上のようにして生成された特徴量データは、オブジェクト種毎に特徴量データ格納部１１１に格納される。
【００２９】
＜ステップＳ２０１の処理の詳細＞
図３は、図２におけるステップＳ２０１のオブジェクトの領域の特徴量を算出する処理の詳細を示すフローチャートである。また、図４は特徴量算出処理の具体例を示す図であり、図５はステップＳ３０６におけるナンバリング処理の具体的内容を示す図である。なお、図３のフローチャートにおける動作主体は特に断らない限り、モジュール１０４である。
【００３０】
ステップＳ３０１において、複数のオブジェクトの像４０１及び４０２を含む入力の濃淡画像（図４Ａ）の２値化画像４０３及び４０４（オブジェクトの領域を“１”とする画像：図４Ｂ参照）を取得する。なお、図４において、背景は見易さを考慮して“・”で示されている。
【００３１】
つぎに、ステップＳ３０２で、２値画像４０３及び４０４をラベリング処理して画像４０５及び４０６を生成する。ここでラベリングとは、同じ連結成分に属する画素に同じ番号を付け、異なる連結成分には異なる番号を付ける処理である。図４Ｃにおいては、オブジェクト４０５が１に、オブジェクト４０６が２にそれぞれ番号付けされている。ここでは画像のスキャン順に番号を付しているが、必ずしもこの順番である必要はなく、４０６を１に４０５を２にラベリングしてもよい。なお、ラベリングのアルゴリズムについては周知であり、例えば非特許文献1の中にも記載されている。
【００３２】
続いて、ステップＳ３０３で、変数iに初期値０を設定する。また、ステップＳ３０４では、図４Ｃの画像からi番目のオブジェクトの領域を取り出した画像を取得する。図４Ｄでは、２と番号付けされたオブジェクトを取り出した画像４０７が取得されている。
【００３３】
次に、ステップＳ３０５では、濃淡画像４０２と画像４０７を参照し、i番目のオブジェクトの領域上の画素の濃度のレベル数を多段階の閾値により減らして、小領域に領域分割する。小領域の画素は一定の減らされた濃度を持つことになる。例えば、図４Ｅにおいて、濃淡画像４０２と画像４０７を参照して、オブジェクトの領域の濃度を２で除算した結果である画像４０８が画素の濃度レベルが減らされた画像となっている。画像４０８では、画素の値が３の小領域が２つ、画素の値が４の小領域が１つ存在している。
【００３４】
次に、ステップＳ３０６で、画像４０８にナンバリングを行って、小領域を番号付けした画像４０９を生成する。なお、ナンバリングの処理は、詳しくは図５に示すような処理である。すなわち、画像５０１はナンバリングの対象となる画像で、値４と値３の画素を含んでいる。まず、値４の画素を切り出して、２値画像５０２を生成する。次に、この２値画像５０２にラベリングを適用して、画像５０４を生成する。同様に、画像５０１から値３の画素を切り出して、２値画像５０３を生成する。次に、この２値画像５０３にラベリングを適用して、画像５０５を生成する。画像５０５は２つの小領域を含む。次に、画像５０４と画像５０５を合成して画像５０６を生成する。まず、画像５０４の値１の画素を画像５０６にそのまま複写する。次に、既に画像５０６中には値１の画素があるので、画像５０５の値１と値２の画素を画像５０６に１だけ加えた値にして複写する。一般に、ナンバリングは以上のような切り出し・ラベリング・合成によって実現することができる。図４Ｆは、画像４０８の小領域をナンバリングしてできた画像４０９を示している。小領域１と小領域２は隣接しており、小領域１と小領域３は隣接している。小領域２と小領域３は離れている。
【００３５】
ステップＳ３０７では、ステップＳ３０６でラベリングされた画像における各小領域の濃度・高さ・幅などを計測する。そして、ステップＳ３０８で、画像４０９から、各小領域をノードとし、隣接する小領域の組をエッジとする隣接グラフを生成する。この隣接関係を表したものが図４Ｇの隣接グラフである。
【００３６】
ステップＳ３０９で、隣接グラフを参照して、隣接する小領域の濃度・高さ・幅のそれぞれの差の絶対値の重み付き和を算出して、エッジの属性値とする。オブジェクトの特徴量Ｐｉｊは隣接グラフのエッジの情報により隣接する小領域の組 （ｉ，ｊ）にアクセスし、次式（１）により算出される。
【００３７】
【数１】
2007334755.tif 000003
特徴量データはあるオブジェクトに属す全ての特徴量を一次元に並べたものである。
【００３８】
最後に、ステップＳ３１０で、全てのオブジェクトの領域を処理したか判定して、そうであれば終了し、そうでなければステップＳ３１１で変数iを一つ増やし、ステップＳ３０４に戻ってループする。
以上のような処理に従って、学習用のオブジェクト特徴量データが生成される。
【００３９】
＜オブジェクト特徴量データの内容＞
図６Ａはオブジェクトの特徴量を算出した結果、生成される特徴量データのレコードのフォーマットを示す図である。このレコードはｉｄの要素とオブジェクトの種類を示す種別と特徴量の要素の並びから構成されている。特徴量の個数は隣接グラフ（図４Ｇ参照）のエッジの数だけあるので、固定されるものではない。
【００４０】
また、図６Ｂは、複数の特徴量データをオブジェクトの種類ごとに分類する様子を示したものである。画像Ａ１には４つのオブジェクトがあり、その種類はクラス１・クラス２・クラス３の３種類があるとする。また、画像Ａ２には３つのオブジェクトがあり、その種類は同じく３種類あるとする。なお、オブジェクトの種類の判別は人手によって行われる（ステップＳ２０２に相当）。矢印の下には、特徴量データが種類に従って分類された結果が示されている。クラス１には３つの特徴量データが属し、クラス２とクラス３には共に２つの特徴量データが属している。
【００４１】
特徴量データの分類を支援するモジュール１０５はユーザに一個のオブジェクトの像をディスプレイ１１２に表示し、そのオブジェクトの種類（クラス）の入力を要求する。この機能によってユーザによるオブジェクト分類の労力負担が軽減されるという効果を奏するものである。
【００４２】
上述のように特徴量データの特徴量の個数は一定ではない。例えば、図６ＢのｉｄがＰ１０１の特徴量データは４つの特徴量を含み、ｉｄがＰ１０３の特徴量データは５つの特徴量を含む。しかし、判別の過程で特徴量ベクトルの次元をユニークにするためには、特徴量データの特徴量の個数は同じである必要がある。
【００４３】
そこで、本実施形態では、特徴量の少ない特徴量データにダミーの特徴量を追加する。ダミーの特徴量の値は全ての実際の特徴量の最大値である。図７Ａでは、ｉｄがＰ１０１とＰ２０３の特徴量データにダミーの特徴量Ｍａｘが追加されて、特徴量の個数が５つになるようにしてある。例えば、図７Ａにおける各特徴量データの中でｃ３が最大値を示している場合には、Ｍａｘにｃ３がダミーの特徴量として追加される。
【００４４】
また、分散・共分散行列のランク（階数）が特徴量の個数より少なくなると、マハラノビス平方距離が異常値を取ることがある。異常値を取らないためには、特徴量データの個数が特徴量データの特徴量の個数以上であるという条件を満たす必要がある。このため、既存の特徴量データ中の特徴量の順序をランダムに並び替えて新しい特徴量データを生成して、追加する。図７Ｂは図７ＡのｉｄがＰ１０１とＰ２０３の特徴量データから２つの特徴量データを生成して、追加したものである。なお、ランダムに並べ替えたものを追加するのは、行列の一次独立性を担保するためである。
【００４５】
図８は特徴量データの特徴量をランダムに並び替えるアルゴリズムを示すフローチャートである。配列Ｐは入力の特徴量の配列であり、配列Ｑは出力の並び替えられた特徴量の配列である。配列Ｐ０は作業用の配列である（例えば、図７におけるＰ１０１とＰ１０３が該当する）。定数ｓｉｚｅは特徴量の個数を示す。ステップＳ８０１からステップＳ８０４までは変数ｉについてのループを形成し、配列Ｐを配列Ｐ０に複写する。ステップＳ８０５からステップＳ８１３までは変数ｉについての別のループを形成している。ステップＳ８０７で、変数ｉｄｘに０から（ｓｉｚｅ-ｉ-１）の間の一様乱数を取得する。ｒａｎｄ（）は十分大きな正の整数の乱数を発生する関数である。記号％は除算の余りを与える演算子である。ステップＳ８０８で、配列Ｐ０のｉｄｘ番目の要素Ｐ０［ｉｄｘ］の値をＱ［ｉ］に代入する。言い換えると、配列Ｐ０の要素をランダムに選んで、それを配列Ｑに先頭から詰めて順次代入する。ステップＳ８０９からステップＳ８１２までは変数ｊについてのループを形成している。このループで、配列Ｐ０に対してｉｄｘ番目の要素を取り除いて後ろから詰める。
【００４６】
＜オブジェクト判別処理の概要＞
図９は、入力された画像のオブジェクトを判別する処理の概要を示すフローチャートである。なお、各ステップの処理は、各モジュール１０４、１１３乃至１１５及び記憶装置１０８が協働して実行される。
【００４７】
まずステップＳ９０１では、判別対象のオブジェクトの特徴量データを算出する。この処理は、図２のステップＳ２０１と同様なのでここではその説明を省略する。なお、判別対象のオブジェクトの特徴量の個数が学習用データの特徴量の個数よりも少ないときには、判別対象に対して特徴量の最大値を追加して特徴量の個数を合わせる。逆に判別対象のオブジェクトの特徴量の個数が学習用データの特徴量の個数よりも多いときには、判別困難であるとして判別不能であることを利用者に通知し、またそのオブジェクトを学習用データとして登録するように利用者に促すようにしてもよい。
【００４８】
ステップＳ９０２では、オブジェクト種ごとの特徴量データを学習データとして、平均と分散・共分散行列を算出する。ｊ番目の特徴量の平均は次式（２）で定義される。
【００４９】
【数２】
2007334755.tif 000004
【００５０】
また、分散・共分散行列は次式（３）で定義される。
【数３】
2007334755.tif 000005
【００５１】
続いて、ステップＳ９０３では、オブジェクト種ごとに分散・共分散行列からその逆行列を算出する。
【００５２】
そして、ステップＳ９０４では、判別対象のオブジェクトの特徴量データとオブジェクト種ごとの平均と分散・共分散行列の逆行列からマハラノビス平方距離を計算し、最小値をとるオブジェクト種を判別対象のオブジェクトの種類であると判別する。マハラノビス平方距離は次式（４）のように定義される。
【００５３】
【数４】
2007334755.tif 000006
【００５４】
そして、マハラノビス平方距離が最小のオブジェクト種を判別されたオブジェクトとして出力する。なお、マハラノビス距離の詳細については、上記非特許文献２で詳細に説明されている。
【００５５】
＜オブジェクト判別処理の詳細＞
図９で説明したオブジェクト判別処理の詳細について、図１０を用いてさらに説明する。
図１０は、学習データに基づいて未知のオブジェクトを判別する過程を詳細に示すフローチャートである。なお、図１０における各ステップの処理も、各モジュール１０４、１１３乃至１１５及び記憶装置１０８が協働して実行される。
【００５６】
ステップＳ１００１からステップＳ１００５までは変数ｉについてのループを形成している。ｎ＿ｋＯｂｊはオブジェクト種の個数を示す。また、ｋＯｂｊ［ｉ］はｉ番目のオブジェクト種を示す。このループでは各オブジェクト種の平均と分散・共分散行列とその逆行列を算出している。ステップＳ１００６以降は未知のオブジェクトと各オブジェクト種とのマハラノビス平方距離を計算し、その最小値をとるオブジェクト種を見出して、判別対象のオブジェクトの種類であると判別している。ステップＳ１００６で、０番目のオブジェクト種と判別対象のオブジェクトＯｂｊｅｃｔのマハラノビス平方距離を計算して、その値をｄＭｉｎに代入する。関数ｄはオブジェクト種と判別対象のオブジェクトの間のマハラノビス距離を値として返す関数である。ステップＳ１００７で、この時のオブジェクト種をｋＭｉｎに記録しておく。ステップＳ１００８からステップＳ１０１４までは変数ｉについてのループを形成している。残りの各オブジェクト種についてマハラノビス平方距離を計算し（ステップＳ１０１０）、その値ｖがｄＭｉｎより小さければ（ステップＳ１０１１）、ｖをｄＭｉｎに代入し（ステップＳ１０１２）、その時のオブジェクト種をｋＭｉｎに代入する（ステップＳ１０１３）。全てのオブジェクト種について調べ終えると、ループから脱出して、マハラノビス平方距離の最小値をとるオブジェクト種の情報を返す。このオブジェクト種が判別結果となる。
【００５７】
以上、本実施形態によれば、オブジェクトの内部構造の情報を考慮して学習用の特徴量データを生成し、その特徴量データを用いてマハラノビス平方距離を演算しているので、高精度のオブジェクトの判別が実現可能となる。
【００５８】
また、学習用の特徴量データを生成するときに各クラスにおいて特徴量の個数が少ない特徴量データに対してはダミーの特徴量として対象クラスにおける特徴量の最大値を追加している（図６及び図７参照）ので、オブジェクト判別の際のマハラノビス平方距離演算で扱う特徴量ベクトルの次元をユニークにすることができ、よって演算を安定的に実行することができるようになる。
【００５９】
さらに、各クラスにおいて、特徴量データの個数が特徴量の個数よりも少ない場合には、既存の特徴量データの何れかから特徴量の順序をランダムに並び替えて新しい特徴量データとして生成して追加しているので、マハラノビス平方距離が常に正常値をとることができ、よって正確にオブジェクトを判別することができるようになる。
【００６０】
なお、実施形態の機能を実現するソフトウェアのプログラムコードによっても本発明は実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フロッピィ（登録商標）ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【００６１】
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
【００６２】
また、実施の形態の機能を実現するソフトウェアのプログラムコードがネットワークを介して配信されることにより、システム又は装置のハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納され、そのシステム又は装置のコンピュータ（又はＣＰＵやＭＰＵ）が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行することによっても、達成されるようにしてもよい。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施形態によるハードウェアシステムのブロック図である。
【図２】学習データを生成する過程の概要を示すフローチャートである。
【図３】オブジェクトの領域の特徴量を算出するアルゴリズムの詳細を示すフローチャートである。
【図４】オブジェクトの領域の特徴量の算出の際、生成される画像と隣接グラフである。
【図５】ナンバリングのアルゴリズムの概念を説明するための図である。
【図６】特徴量データのレコードのフォーマットと特徴量データの分類を説明する図である。
【図７】ダミーの特徴量の追加とランダムに並び替えた特徴量データの追加を説明する図である。
【図８】特徴量データの特徴量をランダムに並び替えるアルゴリズムを示すフローチャートである。
【図９】未知のオブジェクトを判別する過程の概要を示すフローチャートである。
【図１０】未知のオブジェクトを判別する過程の詳細を示すフローチャートである。
【符号の説明】
【００６４】
１０１…画像入力装置、１０２…キーボード、１０３…処理装置、１０４…オブジェクトの領域の特徴量算出モジュール、１０５…特徴量データの分類の支援モジュール、１０６…ダミーの特徴量の追加モジュール、１０７…ランダムに並び替えた特徴量データの追加モジュール、１０８…記憶装置、１０９…濃淡画像格納部、１１０…２値画像格納部、１１１…特徴量データ格納部、１１２…ディスプレイ、１１３…オブジェクト種毎の平均・分散・共分散行列算出モジュール、１１４…逆行列算出モジュール、１１５…マハラノビス距離算出モジュール
【図１】
2007334755.tif 000007
【図２】
2007334755.tif 000008
【図３】
2007334755.tif 000009
【図４】
2007334755.tif 000010
【図５】
2007334755.tif 000011
【図６】
2007334755.tif 000012
【図７】
2007334755.tif 000013
【図８】
2007334755.tif 000014
【図９】
2007334755.tif 000015
【図１０】
2007334755.tif 000016