(57)【要約】【課題】  画像中の各小領域から抽出された特徴量に基づいて画像中の各領域のクラスを識別する方法では、信頼度が高いにも関わらず誤検出する場合があった。【解決手段】  学習用画像を用いて第１識別器を学習し、第１識別器による学習評価画像の識別結果を評価し、第１識別器では識別が難しい小領域を選択する。次に、選択された小領域を含む領域を識別するための第２の識別器を学習する。最後に、第１識別器による識別結果と第２識別器による識別結果とを統合して、統合識別器を学習する。【選択図】  図１０
2016099668.tif 000002
【特許請求の範囲】
【請求項１】
画像の領域ごとにクラスを識別するための第１の識別器を、学習用画像を用いて学習する第１の学習工程と、
学習した前記第１の識別器により、学習評価画像の領域ごとのクラスを識別する学習時識別工程と、
前記第１の識別器による前記学習評価画像に対するクラスの識別結果が誤っている誤識別領域を選択する選択工程と、
選択された前記誤識別領域を含む領域を用いて、学習データを生成する生成工程と、
前記生成された学習データのクラスを識別する第２の識別器を学習する第２の学習工程とを有することを特徴とする学習方法。
【請求項２】
前記生成工程は、前記学習評価画像の正解データに基づいて前記誤識別領域を含む領域を選択し、当該選択された領域を用いて前記学習データを生成することを特徴とする請求項１に記載の学習方法。
【請求項３】
前記生成工程は、ユーザからの指示に基づいて前記誤識別領域を含む領域を選択し、当該選択された領域を用いて前記学習データを生成することを特徴とする請求項１に記載の学習方法。
【請求項４】
前記生成工程は、前記誤識別領域を含む領域を正事例とし、前記誤識別領域を含む領域と同一の形状を有し且つ前記第１の識別器が誤って識別したクラスを有する前記学習評価画像の領域を負事例として、前記学習データを生成することを特徴とする請求項１から３のいずれか１項に記載に記載の学習方法。
【請求項５】
前記生成工程は、前記正事例の領域から抽出される特徴量と前記負事例の領域から抽出される特徴量との距離に基づいて、前記誤識別領域を含む領域のサイズを設定することを特徴とする請求項４に記載の学習方法。
【請求項６】
前記学習用画像と前記学習評価画像とは同じ画像のデータであることを特徴する請求項１から５のいずれか１項に記載の学習方法。
【請求項７】
前記第１の識別器による識別結果と前記第２の識別器による識別結果を統合する統合識別器を学習する第３の学習工程を更に有することを特徴とする請求項１から６のいずれか１項に記載の学習方法。
【請求項８】
前記統合識別器によって前記学習評価画像の領域ごとのクラスを識別した結果の評価値と前記第１の識別器によって前記学習評価画像の領域ごとのクラスを識別した結果の評価値とを求める評価工程を更に有し、
前記統合識別器の識別結果の評価値が前記第１の識別器の識別結果の評価値よりも所定値以上高くなるまで、前記誤識別領域を含む領域のサイズを異ならせて前記第２の学習工程を繰り返すことを特徴とする請求項７に記載の学習方法。
【請求項９】
認識対象画像から、第２の識別器によりクラスを識別すべき領域を検出する検出工程と、
第１の識別器を用いて前記認識対象画像の領域ごとにクラスを識別する識別工程と、
前記検出工程の検出結果と前記識別工程の識別結果とに基づいて、前記認識対象画像の領域ごとのクラスを識別する統合識別工程とを有することを特徴とする画像認識方法。
【請求項１０】
前記第１の識別器および第２の識別器として、請求項１から６のいずれか１項に記載の学習方法によって学習された第１の識別器および第２の識別器を用いることを特徴とする請求項９に記載の画像認識方法。
【請求項１１】
前記認識対象画像に付帯する付帯情報を取得する取得工程を更に有し、
前記検出工程は、取得された前記付帯情報に基づいて、複数の第２の識別器から前記検出工程で用いる第２の識別器を選択することを特徴とする請求項９または１０に記載の画像認識方法。
【請求項１２】
前記付帯情報とは、前記認識対象画像が撮影されたときの位置情報、前記認識対象画像を撮影したカメラにより得られる情報、前記認識対象画像が撮影されたときにカメラで用いられたパラメータ、前記認識対象画像を撮影した際のカメラのオートフォーカスの情報、前記認識対象画像のシーン特徴量のいずれかであることを特徴とする請求項１１に記載の画像認識方法。
【請求項１３】
画像の領域ごとにクラスを識別するための第１の識別器を、学習用画像を用いて学習する第１の学習手段と、
学習した前記第１の識別器により、学習評価画像の領域ごとのクラスを識別する学習時識別手段と、
前記第１の識別器による前記学習評価画像に対するクラスの識別結果が誤っている誤識別領域を選択する選択手段と、
選択された前記誤識別領域を含む領域を用いて、学習データを生成する生成手段と、
前記生成された学習データのクラスを識別する第２の識別器を学習する第２の学習手段とを有することを特徴とする学習装置。
【請求項１４】
認識対象画像から、第２の識別器によりクラスを識別すべき領域を検出する検出手段と、
第１の識別器を用いて前記認識対象画像の領域ごとにクラスを識別する識別手段と、
前記検出手段の検出結果と前記識別手段の識別結果とに基づいて、前記認識対象画像の領域ごとのクラスを識別する統合識別手段とを有することを特徴とする画像認識装置。
【請求項１５】
コンピュータに、請求項１から８のいずれか１項に記載の学習方法を実行させるためのプログラム。
【請求項１６】
コンピュータに、請求項９から１２のいずれか１項に記載の画像認識方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力画像中の被写体の検出、および被写体ごとに領域を分割するための技術に関する。
【背景技術】
【０００２】
従来から、画像シーンの認識や被写体に応じた画質補正等の後段処理のために、被写体ごとに領域を分割し、被写体の分類に関するクラスを識別する処理が知られている。非特許文献１に記載の方法では、まず、色情報、テクスチャ情報に基づいて入力画像をＳＰ（スーパーピクセル）と呼ばれる小領域に分割する。そして、分割した各小領域のクラスをＲｅｃｕｒｓｉｖｅ−Ｎｅｕｒａｌ−Ｎｅｔｗｏｒｋｓ（ＲＮＮｓ）と呼ばれる識別器を用いて識別する。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Ｒ．Ｓｏｃｈｅｒ，“Ｐａｒｓｉｎｇ  Ｎａｔｕｒａｌ  Ｓｃｅｎｅｓ  ａｎｄ  Ｎａｔｕｒａｌ  Ｌａｎｇｕａｇｅ  ｗｉｔｈ  Ｒｅｃｕｒｓｉｖｅ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ”，Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｍａｃｈｉｎｅ  Ｌｅａｒｎｉｎｇ  ２０１１．
【非特許文献２】Ｐ．Ｋｒａｈｅｎｂｕｈｌ，“Ｅｆｆｉｃｉｅｎｔ  Ｉｎｆｅｒｅｎｃｅ  ｉｎ  Ｆｕｌｌｙ  Ｃｏｎｎｅｃｔｅｄ  ＣＲＦｓ  ｗｉｔｈ  Ｇａｕｓｓｉａｎ  Ｅｄｇｅ  Ｐｏｔｅｎｔｉａｌｓ”，Ｎｅｕｒａｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍｓ  ２０１１．
【非特許文献３】Ｊ．Ｔｉｇｈｅ，Ｓ．Ｌａｚｅｂｎｉｋ，“Ｆｉｎｄｉｎｇ  Ｔｈｉｎｇｓ：Ｉｍａｇｅ  Ｐａｒｓｉｎｇ  ｗｉｔｈ  Ｒｅｇｉｏｎｓ  ａｎｄ  Ｐｅｒ−Ｅｘｅｍｐｌａｒ  Ｄｅｔｅｃｔｏｒｓ”，ＣＶＰＲ２０１３．
【非特許文献４】Ａ．Ｏｌｉｖａ  ａｎｄ  Ａ．Ｔｏｒｒａｌｂａ，“Ｍｏｄｅｌｉｎｇ  ｔｈｅ  ｓｈａｐｅ  ｏｆ  ｔｈｅ  ｓｃｅｎｅ：ａ  ｈｏｌｉｓｔｉｃ  ｒｅｐｒｅｓｅｎｔａｔｉｏｎ  ｏｆ  ｔｈｅ  ｓｐａｔｉａｌ  ｅｎｖｅｌｏｐｅ”，Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，２００１．
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、非特許文献１の方法のように、単に小領域から抽出された特徴量に基づいて画像中の各領域のクラスを識別する方法では、信頼度が高い（識別スコア、識別尤度が高い）にも関わらず誤検出する場合がある。たとえば、空の一部を切り出した小領域と青い壁の一部を切り出した小領域のように、特徴量の近い小領域を識別器で識別することは難しい。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の学習方法によれば、画像の領域ごとにクラスを識別するための第１の識別器を、学習用画像を用いて学習する第１の学習工程と、学習した前記第１の識別器により、学習評価画像の領域ごとのクラスを識別する学習時識別工程と、前記第１の識別器による前記学習評価画像に対するクラスの識別結果が誤っている誤識別領域を選択する選択工程と、選択された前記誤識別領域を含む領域を用いて、学習データを生成する生成工程と、前記生成された学習データのクラスを識別する第２の識別器を学習する第２の学習工程とを有することを特徴とする。
【発明の効果】
【０００６】
以上の構成によれば、本発明は、画像認識装置により認識対象画像を認識する際、クラスの識別が難しい小領域が認識対象画像にあっても、その誤検出を軽減でき、画像を精度よく認識することができる。
【図面の簡単な説明】
【０００７】
【図１】第１の実施形態に関わる画像認識システムの構成図。
【図２】第１の実施形態に関わる認識対象画像を説明する図。
【図３】第１の実施形態において認識対象画像に対する処理を概念的に説明する図。
【図４】第１の実施形態に関わる画像認識装置のハードウェア構成を示す図。
【図５】第１の実施形態に関わる画像認識装置の機能構成を示す図。
【図６】各実施形態に関わる画像認識処理を示すフローチャート。
【図７】第１の実施形態に関わる事例の検出方法を説明する図。
【図８】第１の実施形態において画像認識処理を概念的に説明する図。
【図９】第１の実施形態に関わる統合処理を説明する図。
【図１０】各実施形態に関わる学習装置の機能構成を示す図。
【図１１】各実施形態に関わる学習処理を示すフローチャート。
【図１２】第１の実施形態において第１識別器を学習する際の画像の例を示す図。
【図１３】第１の実施形態において第１識別器学習工程のフローチャート。
【図１４】第１の実施形態に関わる誤識別領域選択工程の処理を説明する図。
【図１５】第１の実施形態において負事例を生成する処理を説明するフローチャート。
【図１６】第１の実施形態において第２識別器で学習する学習データを示す図。
【図１７】第１の実施形態において負事例を生成する処理を説明する図。
【図１８】第１の実施形態において統合識別器学習工程における処理のフローチャート。
【図１９】第３の実施形態において統合識別器評価工程における処理のフローチャート。
【発明を実施するための形態】
【０００８】
［第１の実施形態］
以下、図面を参照して本発明の実施形態を詳細に説明する。
【０００９】
図１は、本実施形態に係る画像認識システムを示す構成図である。本実施形態の画像認識システムは、カメラ１０と画像認識装置２０とがネットワークを介して接続されている。なお、カメラ１０と画像認識装置２０とが一体に構成されていてもよい。カメラ１０によって撮影された画像は画像認識装置２０へと出力され、画像認識装置２０はカメラ１０より出力された画像を取得する。本実施形態では、図１に示すようなシーン３０をカメラ１０が撮影し、画像認識装置２０がこの認識対象画像を処理する形態について説明する。
【００１０】
図２は、本実施形態の認識対象画像を説明する図である。図２（ａ）は、カメラ１０によってシーン３０を撮影することにより得られた認識対象画像１００を示している。本実施形態の画像認識装置２０は、画像を認識するために、取得した認識対象画像の各小領域のクラスを識別し、認識対象画像を領域分割する。本実施形態において、クラスとは、図２（ｂ）に示されるように、ｓｋｙ、ｔｒｅｅ、ｃａｒ等といった被写体の分類に関するクラスカテゴリー名のことであり、クラスは認識対象画像の各画素に対して割り当てられる。
【００１１】
図３は、本実施形態において、認識対象画像の各領域のクラスを識別する処理を概念的に説明する図である。図３（ａ）に示すように、認識対象画像を縦方向、横方向にそれぞれ分割して成る領域を処理の単位領域とし、クラスを識別する。本実施形態では、このクラス識別の処理の単位を画素単位としている。図３（ｂ）は、図３の（ａ）の左上部分を拡大した図であり、各画素１０３にｓｋｙカテゴリーが割り当てられている様子を示している。このように、本実施形態では、認識対象画像１００の各画素１０３にクラスが割り当てられることで、領域分割が実現される。
【００１２】
図４は、画像認識装置２０のハードウェア構成を示すブロック図である。ＣＰＵ４０１は、画像認識装置２０全体を制御する。ＣＰＵ４０１がＲＯＭ４０３やＨＤ４０４等に格納されたプログラムを実行することにより、後述する画像認識装置２０の機能構成及び画像認識装置２０に係るフローチャートの処理が実現される。ＲＡＭ４０２は、ＣＰＵ４０１がプログラムを展開して実行するワークエリアとして機能する記憶領域を有する。ＲＯＭ４０３は、ＣＰＵ４０１が実行するプログラム等を格納する記憶領域を有する。ＨＤ４０４は、ＣＰＵ４０１が処理を実行する際に要する各種のプログラム、閾値に関するデータ等を含む各種のデータを格納する記憶領域を有する。操作部４０５は、ユーザによる入力操作を受け付ける。表示部４０６は、画像認識装置２０の情報を表示する。ネットワークＩ／Ｆ４０７は、画像認識装置２０と外部の機器とを接続する。
【００１３】
図５は、本実施形態における画像認識装置２０の機能構成を示す図である。前述したとおり、本実施形態の画像認識装置２０は、カメラ１０とネットワークを介して接続されている。また、画像認識装置２０は、取得部５０１、識別部５０２、検出部５０４を有する。更に、画像認識装置２０は、必要な情報を記憶、保持するための手段として第１識別器保持部５０３、第２識別器保持部５０５、第１統合識別器保持部５０７を有する。なお、第１識別器保持部５０３、第２識別器保持部５０５、第１統合識別器保持部５０７は、画像認識装置２０とは別体の不揮発性記憶装置に設けられていてもよい。画像認識装置２０が有するこれらの各機能の詳細については、図６等を用いて後述する。
【００１４】
図６（ａ）は、本実施形態における認識対象の画像を処理する際の画像認識処理を示すフローチャートである。まず、各工程の処理の概要を述べる。
【００１５】
取得工程Ｓ１１０では、取得部５０１がカメラ１０によって撮影された認識対象画像を入力データとして受信する。検出工程Ｓ１２０では、検出部５０４が第２識別器保持部５０５に記憶されている第２識別器を用いて、予め第２識別器で学習しておいた事例を検出する。事例の検出方法および学習方法については、後述する。第２識別器が複数ある場合には複数回適用して事例を検出する。検出結果は、統合識別部５０６に送信される。
【００１６】
識別工程Ｓ１３０では、識別部５０２が第１識別器保持部５０３に記憶されている第１識別器を用いて、認識対象画像の各領域のクラスを識別する。各領域のクラス識別結果は、統合識別部５０６に送信される。統合識別工程Ｓ１４０では、統合識別部５０６が第２識別器による検出結果および第１識別器による識別結果を統合して、認識対象画像の領域ごとにクラス識別を実行する。
【００１７】
次に、図６（ａ）に示したフローチャートに従って、各処理のより具体的な処理について述べる。
【００１８】
取得工程Ｓ１１０では、取得部５０１がカメラ１０によって撮影された認識対象画像を入力データとして受信する。この認識対象画像は、予め撮影されて外部装置に記憶されていてもよい。この場合、取得部５０１は、認識対象画像を外部装置から取得する。
【００１９】
次に、検出工程Ｓ１２０では、検出部５０４が第２識別器保持部５０５に記憶されている第２識別器を用いて、予め第２識別器で学習しておいた事例を検出する。事例の学習方法については、学習時の処理を説明する際に述べる。
【００２０】
図７は、本実施形態における事例の検出方法を説明するための図である。事例の検出は、図７（ａ）に示すように、認識対象画像１００に対して検出ウィンドウ１１０をスキャンさせることで行う。図７（ｂ）は、検出すべき事例が検出ウィンドウ１１０で検出される様子を示すものである。
【００２１】
そして、事例の存在位置を示すためのマスク１１１が学習時に記憶されていて、図７（ｃ）に示すようにマスク１１１を認識対象画像１００の検出位置に重ね合わせることで、事例に対応する領域が抽出される。マスク１１１は、事例が存在している画素に１、存在しない画素には０が記録されている。もしくは存在確率として０〜１の実数値が記録されていてもよい。
【００２２】
検出ウィンドウで検出処理を行った結果は、各画素における検出スコア（もしくは尤度、０〜１の実数値とする）として出力される。具体的には、各画素における検出結果（スコア）は、検出器が出力するスコア（尤度）にマスク１１１に記録されている事例の存在確率をかけ合わせたものになる。各画素における検出結果（スコア）をＳＤ（ｘ、ｙ）とおくと、以下の数１式となる。
ＳＤ（ｘ，ｙ）＝Ｓ（ｘ０，ｙ０）・Ｍａｓｋ（ｘ−ｘ０，ｙ−ｙ０）    ・・・数１
ここで、Ｓ（ｘ０、ｙ０）はｘ０、ｙ０における検出器（第２識別器）が出力するスコア（尤度）である。Ｍａｓｋ（ｘ−ｘ０、ｙ−ｙ０）は、ｘ、ｙにおける事例の存在確率を表している。複数の検出結果が存在する場合（１つの検出器によって多数の検出位置が検出され、検出結果が複数存在する場合）には、複数の検出結果を各画素で平均化すればよい。これにより、認識対象画像の各画素に対して０〜１の実数値が割り当てられる。以下、これを検出スコアマップと記載する。
【００２３】
なお、事例を検出する際、マスク１１１を認識対象画像１００の検出位置に重ね合わせたあと、グラフカットなどを用いて輪郭をリファインしてもよい。リファインした場合は、そののちに数１式で示したように認識対象画像１００に対して検出スコアを算出すればよい。また、ここでは１つの事例のみを検出器によって検出する例について述べたが、複数の事例を検出してもよい。その場合は、各事例に対して検出スコアマップを保持しておく。
【００２４】
次に、識別工程Ｓ１３０では、識別部５０２が第１識別器保持部５０３に記憶されている第１識別器を用いて、認識対象画像のクラス識別を行う。図８は、認識対象画像に対する識別工程Ｓ１３０の処理を示す図である。本実施形態においては、図８（ａ）、（ｂ）に示すように、撮影された認識対象画像１００を分割して成る小領域１０１ごとにクラスを識別する。ここで、小領域とは、画像中における１画素以上であって所定値以下の画素で構成される領域を意味する。本実施形態においては、非特許文献３に記載されているようなＳＰ（スーパーピクセル）と呼ばれる小領域に分割する。なお、その他ブロック分割などを用いるようにしてもよい。
【００２５】
本実施形態において、第１識別器は小領域１０１から特徴量を抽出し、その特徴量を入力とする識別器に相当する。このような識別器としては、例えば、非特許文献１に示すＲｅｃｕｒｓｉｖｅ−Ｎｅｕｒａｌ−Ｎｅｔｗｏｒｋｓ（ＲＮＮｓ）を用いることができる。または、ＳｕｐｐｏｒｔＶｅｃｔｏｒＭａｓｈｉｎｅｓ（ＳＶＭｓ）などの特徴量を入力して識別結果が出力される識別器であってもよい。本実施形態の識別結果は、予め定義されている各クラスに対して０から１の値域をとり、その値が高いほど信頼度が高いことを示す。第１識別器の学習方法については、学習時の処理を説明する際に述べる。
【００２６】
なお、本実施形態においては、認識対象画像を予め小領域に分割し、小領域ごとに第１識別器によってクラス識別を行う方法について説明したが、これに限定されるものではない。例えば、非特許文献２に示されるような条件付き確率場ＣＲＦ（Ｃｏｎｄｉｔｉｏｎａｌ−Ｒａｎｄｏｍ−Ｆｉｅｌｄ）を用いて、領域分割及びクラス識別を同時に行ってもよい。また、本実施形態においては、図８（ｂ）に示すように、各小領域は重なり合うことなく認識対象画像上に配置されるとしているが、重なり合っていてもよい。その場合の統合方法については、後述する。
【００２７】
次に、統合識別工程Ｓ１４０では、統合識別部５０６が、検出工程Ｓ１２０における検出結果と識別工程Ｓ１３０におけるクラス識別結果とを統合して最終結果を出力する。図９は、本実施形態における統合処理を説明するための図である。図９（ａ）は認識対象画像、図９（ｂ）は第２識別器による検出結果、図９（ｃ）は第１識別器による識別結果、図９（ｄ）は統合による最終的な画像のクラス識別結果を表している。ここでいう検出結果とは、図９（ｂ）に示すように、検出ウィンドウ１１０によって検出された事例の検出位置に対してマスク１１１を認識対象画像に重ね合わせたものに相当し、実際には前述の数１式で示したように各画素に対して検出スコアを算出したものである。
【００２８】
本実施形態における統合方法としては、以下の二つの方法のいずれかを用いることができる。
【００２９】
１つ目の方法としては、検出工程Ｓ１２０において検出器（第２識別器）が出力するスコア（尤度）のうち、予め定められた閾値以上の検出結果に対応するマスクを重畳し、それ以外の領域には第１識別器による識別結果を採用する。図９（ｂ）に示すように検出された事例に対応するマスク１１１を図９（ｄ）のように重畳する。検出された事例の全てのマスクを重畳したのちに、それ以外の領域に対して、図９（ｃ）に示す第１識別器による識別結果を重畳することで最終的なクラス識別結果とする。小領域同士が重なりあっている場合には、一度小領域ごとにクラスを識別したあと各画素で所属している小領域のクラス識別結果を平均化や投票処理することなどにより決定すればよい。また、検出処理によって得られたマスクと第１識別器に利用した小領域が重なっている場合には、どちらかの結果を優先的に採用してもよいし、重なっている領域のみ信頼度の高い結果を採用してもよい。
【００３０】
２つ目の方法としては、予め学習された統合識別器を利用する。統合識別器の学習方法については後述し、ここでは識別時の統合識別器の利用方法について説明する。本実施形態では、各画素における検出工程Ｓ１２０の検出結果と各画素における識別工程Ｓ１３０におけるクラス識別結果を入力として、各画素のクラスを識別する統合識別器を利用する。各画素における識別結果とは、その画素が含まれる小領域に対するクラス識別の結果のことである。
【００３１】
事例を検出する第２識別器の数をＮｄ、第１識別器によって識別されるクラス数をＣとすると、各画素で統合識別器に入力される入力ベクトルの次元数はＮｄ＋Ｃ次元となる。その入力ベクトルに対して、最終的に出力するクラス数Ｃに対応するＣ次元の出力値を統合識別器によって出力する。ここでは第１識別器で識別するクラス数と最終的に出力するクラス数は同数であるとしているが、異なる数でもよい。
【００３２】
また、ここでは、各画素で統合識別を行ったが、識別工程Ｓ１３０で用いた小領域ごとに統合識別を行ってもよいし、統合識別用に小領域やブロックを規定して小領域やブロックごとに統合処理を行ってもよい。その場合は、統合識別器に入力する前に、検出スコアマップおよび第１識別器による識別結果を小領域やブロックごとに平均化する。
【００３３】
以上説明した方法によって、検出工程における検出結果と識別工程における識別結果とが統合されて、最終的に図９（ｄ）の結果が得られる。このあと、非特許文献２に開示されているような条件付き確率場ＣＲＦ（Ｃｏｎｄｉｔｉｏｎａｌ−Ｒａｎｄｏｍ−Ｆｉｅｌｄ）を用いて各画素のクラスを再推定してもよい。
【００３４】
次に、本実施形態における検出工程Ｓ１２０、識別工程Ｓ１３０で利用する第１識別器および第２識別器の学習方法について説明する。
【００３５】
図１０（ａ）は、本実施形態における学習装置３００の機能構成を示す図である。なお、学習装置３００のハードウェア構成は図４に示した画像認識装置２０と同様である。ここでは、学習装置３００が図５の画像認識装置２０とは別に構成されているものとして説明するが、学習装置３００が画像認識装置２０と一体に構成されて、画像認識装置２０に学習装置３００の各機能部が含まれるよう構成されていてもよい。即ち、画像認識装置２０のＣＰＵ４０１がＲＯＭ４０３やＨＤ４０４等に格納されたプログラムを実行することにより、学習装置３００の機能構成及び学習装置３００に係るフローチャートの処理が実現されるようにしてもよい。
【００３６】
学習装置３００は、第１識別器学習部３０１、学習時識別部３０２、誤識別領域選択部３０３、第２識別器学習データ生成部３０４、第２識別器学習部３０５、統合識別器学習部３０６を有する。更に、学習装置３００は、必要なデータを記憶、保持するための手段として学習用画像保持部３５１、学習評価画像保持部３５２、第１識別器保持部３５３、第２識別器学習データ保持部３５４、第２識別器保持部３５５、第２統合識別器保持部３５６を有している。学習装置３００が有する各機能の詳細については、図１１（ａ）等を用いて後述する。
【００３７】
図１１（ａ）は、本実施形態における学習に関する処理を示すフローチャートである。
【００３８】
まず、第１識別器学習工程Ｔ１１０では、第１識別器学習部３０１が、学習用画像保持部３５１に保持されている学習用画像を用いて、第１識別器を学習する。図１２は、第１識別器の学習に用いられる学習用画像を説明するための図である。本実施形態では、学習用画像として、例えば図１２（ａ）に示されるような画像５０と、図１２（ｂ）に示されるような、画像５０の各画素のクラス名が定義されている正解データ（以下ＧＴ（グランドトゥルース）と記載）とを利用する。このとき複数の識別器を学習してもよいが、ここでは、説明の簡略化のため識別器を１つ学習するものとする。第１識別器学習部３０１で学習された第１識別器は、第１識別器保持部３５３に送信される。
【００３９】
次に、学習時識別工程Ｔ１２０では、学習時識別部３０２が、第１識別器学習工程Ｔ１１０で学習された第１識別器を用いて、学習評価画像保持部３５２に保持されている学習評価画像の領域のクラス識別を行う。ここでは、学習評価画像と前述の学習用画像の画像５０とを区別して説明しているが、学習評価画像と前述の学習用画像は同じデータであってもよい。学習時識別部３０２でクラス識別された結果は、誤識別領域選択部３０３に送信される。
【００４０】
次に、誤識別領域選択工程Ｔ１３０では、誤識別領域選択部３０３が、学習時識別工程Ｔ１２０において識別されたクラス識別結果から誤識別領域を選択する。誤識別領域選択部３０３は、クラス識別結果と学習評価画像保持部３５２に保持されている学習評価画像のＧＴとを比較することにより、誤識別領域を選択する。誤識別領域の選択方法は、後で詳しく説明する。
【００４１】
次に、第２識別器学習データ生成工程Ｔ１４０では、第２識別器学習データ生成部３０４が、誤識別領域選択工程Ｔ１３０で選択された誤識別領域に基づいて第２識別器で学習する学習データを生成する。この生成方法については、後で詳しく説明する。第２識別器学習データ生成部３０４によって生成された学習データは、第２識別器学習データ保持部３５４に送信される。
【００４２】
次に、第２識別器学習工程Ｔ１５０では、第２識別器学習部３０５が、第２識別器学習データ生成工程Ｔ１４０で生成された学習データを用いて第２識別器を学習する。
【００４３】
最後に、統合識別器学習工程Ｔ１６０では、統合識別器学習部３０６が、第１識別器学習工程Ｔ１１０で学習した第１識別器の識別結果と第２識別器学習工程Ｔ１５０で学習した第２識別器の識別結果とを統合する統合識別器もしくパラメータを学習する。
【００４４】
次に、図１１（ａ）に示したフローチャートに従って、各工程の具体的な処理について述べる。
【００４５】
まず、第１識別器学習工程Ｔ１１０では、第１識別器学習部３０１が、第１識別器の学習を行う。第１識別器は、先に説明したように各画素のクラスを識別できるものであればどのような識別器であってもよい。本実施形態においては、小領域から特徴量を抽出し、その特徴量を入力とする識別器の１つであるＲｅｃｕｒｓｉｖｅ−Ｎｅｕｒａｌ−Ｎｅｔｗｏｒｋｓ（ＲＮＮｓ）を用いて説明する。ＲＮＮｓについては、非特許文献１に詳細な説明がなされている。
【００４６】
図１３は、第１識別器学習部３０１により実行される第１識別器学習工程の処理の詳細なフローを示したものである。図中のＭは、第１識別器の学習に用いる学習評価画像の数を示している。
【００４７】
まず、Ｔ１２０１では、第１識別器の学習に用いる学習用画像のリストを設定する。
【００４８】
次に、Ｔ１２０２では、Ｔ１２０１で設定された学習画像リストに基づいて、第１識別器の学習に用いる各学習用画像を小領域に分割する。例えば、画像認識処理の識別工程Ｓ１３０で説明したようなＳＰ（スーパーピクセル）と呼ばれる小領域に分割する。
【００４９】
次に、Ｔ１２０３では、Ｔ１２０２で分割された各小領域の特徴量を抽出する。もしくは、全学習用画像それぞれの特徴量を予め抽出しておいて、この工程では学習画像リストに基づいて特徴量をロードしてもよい。Ｔ１２０２、Ｔ１２０３の処理は、全学習用画像の全小領域に対して行われる。特徴量の例としては、各小領域内の色特徴やテクスチャ特徴の統計量を用いればよく、例えば、ＲＧＢ、ＨＳＶ、Ｌａｂ、ＹＣｂＣｒ色空間の各成分や、Ｇａｂｏｒ  ｆｉｌｔｅｒ、ＬｏＧのフィルタ応答を用いることができる。色特徴は、４（色空間）×３（成分）の１２次元となる。また、フィルタ応答は、Ｇａｂｏｒ  ｆｉｌｔｅｒ、ＬｏＧフィルタの数に対応した次元数となる。
【００５０】
さらには、小領域ごとに特徴付けを行うため、各小領域内の画素ごとに得られる特徴量から統計量を求める。用いる統計量は、平均、標準偏差、歪度、尖度の４つを用いるとする。歪度は分布の非対称性の度合いを示し、尖度は分布が平均の近くに密集している度合いを示す統計量である。よって、色特徴は４（色空間）×３（成分）×４（統計量）の４８次元となり、テクスチャ特徴の次元数は（フィルタ応答数）×４（統計量）となる。また、この他に小領域の重心座標や小領域の面積などを特徴量としてもよい。
【００５１】
次に、Ｔ１２０４では、第１判別器が学習する領域のクラス定義およびクラス数を設定する。クラス数は２以上であればよい。例えば、図１２（ｂ）の学習用画像には、ｓｋｙ、ｂｕｉｌｄｉｎｇ、ｔｒｅｅ、ｒｏａｄ、ｂｏｄｙが定義されている。この場合、クラス数を５クラスとしてもよいし、ｂｕｉｌｄｉｎｇ、ｔｒｅｅ、ｒｏａｄ、ｂｏｄｙを合わせて１つのクラスとして、そのクラスとｓｋｙの２クラスを識別する識別器を学習してもよい。
【００５２】
次に、Ｔ１２０５では、Ｔ１２０４で定義されたクラスを識別する第１識別器を学習する。学習された第１識別器は第１識別器保持部３５３に記憶される。
【００５３】
学習時識別工程Ｔ１２０では、学習時識別部３０２が、第１識別器学習工程Ｔ１１０により学習された第１識別器を用いて学習評価画像に対してクラスの識別を行う。ここでは、第１識別器の数は１、学習評価画像はＮ枚とし、合計Ｎ回のクラス識別を行う。このクラス識別では、先の第１識別器学習工程Ｔ１１０で定義した小領域に学習評価画像を分割して、各小領域の特徴量に基づいてクラスを識別する。本実施形態における第１識別器であるＲｅｃｕｒｓｉｖｅ−Ｎｅｕｒａｌ−Ｎｅｔｗｏｒｋｓ（ＲＮＮｓ）は、先に定義した各クラスに対する尤度を出力する。
【００５４】
第１識別器で識別するクラス数をＣとすると、各小領域に対する第１識別器の判別器結果ＳＲは、以下の数２式で表される。
ＳＲ＝｛Ｓ１，Ｓ２，・・・，Ｓｃ｝    ・・・数２
ここで各Ｓｃ（ｃ＝１、２、・・・、Ｃ）は、各クラスに対する尤度である。クラスを識別するにあたっては、上記の数２式に基づき、各小領域に対して最も尤度の高いクラスを割り当てる。各学習評価画像に対するクラス識別の結果は、誤識別領域選択部３０３に送信される。
【００５５】
次に、誤識別領域選択工程Ｔ１３０では、誤識別領域選択部３０３が、学習評価画像に対する識別結果とＧＴ（グランドトゥルース）とを比較することで、誤識別領域を選択する。図１４は、誤識別領域選択工程の処理を説明する図である。図１４（ａ）は、学習評価画像１２０に対して第１識別器によってクラスを識別した小領域およびその識別結果を示している。また、図１４（ｂ）は、学習評価画像のＧＴ１３０を示している。誤識別領域選択部３０３は、図１４（ａ）の識別結果と図１４（ｂ）のＧＴとを比較して、誤識別領域１２１を選択する。誤識別領域選択部３０３は、各学習評価画像に対して誤識別領域を取得する。
【００５６】
次に、第２識別器学習データ生成工程Ｔ１４０では、第２識別器学習データ生成部３０４が、誤識別領域選択工程Ｔ１３０で選択された誤識別領域に基づいて、第２識別器で学習する学習データを生成する。図１５は、第２識別器学習データ生成部３０４によって実行される第２識別器学習データ生成工程Ｔ１４０の詳細な処理のフローチャートである。図中のＬは選択する誤識別領域の数であり、生成される学習データ数に対応する。
【００５７】
Ｔ１４０１では、誤識別領域選択工程Ｔ１３０で選択された誤識別領域をソートする。全ての誤識別領域に対して第２識別器で学習データを生成するようにしてもよいが、ここでは、一部の誤識別領域を用いて学習データを生成するために、誤識別領域をソートする。ソート方法は、たとえば、学習評価画像の各小領域をクラス識別した際の尤度や小領域の面積を用いればよい。たとえば、尤度の高い領域を選択すれば、尤度が高いにも関わらずクラスを誤って識別している小領域を選択することができ、小領域の特徴量のみでは識別することが難しいような小領域を選択することができる。
【００５８】
Ｔ１４０２では、Ｔ１４０１でソートした誤識別領域を１つ選択する。そして、Ｔ１４０３では、第２識別器で学習する学習データ（正事例）を生成する。図１６は、第２識別器で学習する学習データを示す。図１６（ａ）は、学習評価画像１２０から、誤識別領域１２１に近い小領域をいくつか連結して学習データ１２２を生成した例を表している。連結させる小領域は誤識別領域に近い領域で、同じクラスの領域であればいくつ連結してもよい。図１６（ｂ）は、さらに小領域をいくつか連結した例を表している。図１６（ｃ）は、図１６（ｄ）に示されるようなＧＴ１３０に基づいて、誤識別領域を含む同クラスの領域（図ではｃａｒ領域）を第２識別器の学習データとして選択している。なお、学習データの選択方法としては、誤識別を含むようにすれば、小領域を連結するのではなく矩形などで学習データを切り出してきてもよい。
【００５９】
Ｔ１４０４では、Ｔ１４０３で生成された学習データ（正事例）に対する負事例を生成する。図１７は、負事例を生成するＴ１４０４の処理を説明するための図である。図１７（ａ）は学習評価画像１２０に対して生成された学習データ１２２を示しており、図１７（ｂ）は別の学習評価画像１５０から負事例１２３を生成する様子を示している。負事例は、誤識別領域に小領域をいくつか連結して生成した学習データの形状を表すマスクを用いて、誤識別領域を検出した学習評価画像とは異なる学習評価画像の一部分を切り出すことで生成することができる。このようにして、複数の学習評価画像から、学習データと同一の形状で切り出した領域を負事例として作成する。なお、負事例は、誤識別領域で誤識別したクラスと同じクラスの領域から生成される方が効果的である。
【００６０】
Ｔ１４０５では、Ｔ１４０３で生成された学習データ（正事例）により第２識別器を学習することで、識別性能が向上するかを評価する。具体的には、Ｔ１４０３で生成された学習データ（正事例）およびＴ１４０４で生成された負事例データから特徴量を取得し、その距離を算出する。ここでは、第１識別器学習の際に用いた特徴量と同様の特徴量を用いるが、他の特徴量を用いるようにしてもよい。生成した学習データをＳＰｏｓｉ、負事例データをＳＮｅｇａ＿ｉとするとき、ＳＰｏｓｉは数３式を満たすように設定すればよい。
ａｒｇｉｍｉｎ  ｄｉｓｔ（ｆ（ＳＰｏｓｉ），ｆ（ＳＮｅｇａ＿ｉ））＞ｌ１    ・・・数３
数３式において、ｄｉｓｔは二つの特徴量の距離を計算するもので、ヒストグラム距離やユーグリッド距離などを用いることができる。また、ｆは小領域内の特徴量を示している。数３式により表現されるように、最も近接する負事例データに対する距離が所定の距離ｌ１以上であれば、その学習データを採用し、所定の距離ｌ１以下であれば再度学習データを生成する。ｌ１は０以上の任意の値でよいが、例えば、学習評価画像中で誤識別していない小領域同士の距離それぞれ算出し、その中で最も値の小さい距離を用いるようにしてもよい。
【００６１】
また、学習データと負事例データを比較するだけでなく、学習データと同じクラスの領域（この場合ｃａｒの領域）とも比較を行い、学習データと負事例データの距離は離し、且つ、同じクラスの他の領域との距離は離さないようにする。これにより、学習データが示す領域の大きさが大きくなりすぎないようできる。同じクラスの他の領域をＳ（ｃ＝ｃ（ＳＰｏｓｉ））とすると、ＳＰｏｓｉは数４式を満たすように設定すればよい。
ｄｉｓｔ（ｆ（ＳＰｏｓｉ），ｆ（ＳＮｅｇａ））＞ｌ１，ｄｉｓｔ（ｆ（ＳＰｏｓｉ），ｆ（Ｓ（ｃ＝ｃ（ＳＰｏｓｉ））））＜ｌ２    ・・・数４
ここで、数４式におけるｌ２は予め定められた所定値であり、例えば、学習評価画像中で誤識別していない小領域同士の距離を算出し、その中で最も小さい値をｌ１に、最も大きい値ｌ２とする。選択した誤識別領域の全てに対して、以上の処理を行う。
【００６２】
次に、第２識別器学習工程Ｔ１５０では、第２識別器学習部３０５が、第２識別器学習データ生成工程Ｔ１４０で生成された学習データを用いて識別器を学習する。たとえば、各学習データに対して生成した負事例を用いて、ＳｕｐｐｏｒｔＶｅｃｔｏｒＭａｓｈｉｎｅｓ（ＳＶＭｓ）を学習すればよい。学習された各識別器は第２識別器学習データ保持部３５４に保持され、識別処理において利用される。
【００６３】
最後に、統合識別器学習工程Ｔ１６０では、統合識別器学習部３０６が、第１識別器学習工程Ｔ１１０で学習した第１識別器の識別結果と第２識別器学習工程Ｔ１５０で学習した第２識別器の識別結果を統合する統合識別器もしくパラメータを学習する。
【００６４】
前述したとおり、第１識別器の識別結果と第２識別器の識別結果とを統合する統合方法は２つある。ここでは、２つ目の方法として挙げた統合識別器を利用する方法を用いるものとし、この統合識別器の学習方法について説明をする。なお、１つ目の方法を利用する場合には、検出器（第２識別器）が出力するスコア（尤度）から最終結果として採用するスコアを決めるための閾値を、学習評価画像に対して決定する。その際には、複数の閾値を設定し、学習評価画像に対して領域分割の精度が最も高くなる閾値を採用すればよい。
【００６５】
図１８は、統合識別器学習工程Ｔ１６０において、統合識別器学習部３０６が行う処理の詳細なフローチャートである。図中のＮは学習評価画像数を示している。ここでは、学習評価画像に対して再度第１識別器を用いてクラスを識別するようにしているが、学習時識別工程Ｔ１２０で行った識別結果を保持しておいてロードしてもよい。
【００６６】
Ｔ２６０１では、統合識別器の学習に用いる学習評価画像のリストを取得する。以下では学習評価画像の全画素の結果を統合識別器の学習に用いるとしているが、学習時間短縮のために間引いてもよい。また、ここでは学習評価画像を利用する例について述べているが、他の学習画像を用意してもよいし、第１識別器の学習時に用いた学習用画像を利用してもよい。
【００６７】
Ｔ２６０２では、学習評価画像のリストに従い、学習評価画像を１枚ずつロードする。次に、Ｔ２６０３では、先の第２識別器学習手段で学習された第２識別器をロードし、学習評価画像の対象位置に対して検出処理を行う。対象位置とは、学習評価画像に対して検出処理を行う対象の位置であり、通常は学習評価画像の左上から右下に対してラスタスキャンをしていく。本実施形態においても、学習評価画像の左上から右下に対してラスタスキャンすることで、検出処理を行う。なお、本実施形態では、第２識別器を１つだけとして説明するが、複数ある場合には複数の識別器を利用して検出処理を行う。なお、複数の識別器を利用した場合の統合識別器の学習方法に関しては後で述べる。
【００６８】
すべての位置で検出処理を行ったのち、処理はＴ２６０５へ進む。Ｔ２６０５では、第１識別器を用いて学習評価画像のクラス識別を行う。
【００６９】
Ｔ２６０６では、Ｔ２６０３で行われた検出処理およびＴ２６０５で行われたクラス識別の結果を結合する。各画素に対応する結合結果をＳ（ｘ、ｙ）とすると、統合結果は以下の数５式となる。
Ｓ（ｘ，ｙ）＝｛Ｓ（ｘ，ｙ）∈Ｒ，ＳＤ（ｘ，ｙ）｝    ・・・数５
ここで、Ｓ（ｘ、ｙ）∈Ｒは対象画素が含まれる小領域に対する第１識別器による識別結果を表している。また、ＳＤ（ｘ、ｙ）は数１式で現れる対象画素（ｘ、ｙ）に対応する第２識別器の識別スコアである。たとえば、第１識別器の識別するクラス数を１０として、第２識別器の数が５の場合、Ｓ（ｘ、ｙ）の次元数は１５となる。以上の作業を学習評価画像のリストに従い、各学習評価画像の全画素に対して行う。
【００７０】
Ｔ２６０７では、数５式で表されるＴ２６０６で結合した結果を入力として、各画素のクラスを識別する識別器を学習する。図１２（ｂ）の場合、ｓｋｙ、ｂｕｉｌｄｉｎｇ、ｔｒｅｅ、ｒｏａｄ、ｂｏｄｙが定義されているため、５クラスに対応してクラス尤度を出力する識別器を学習する必要がある。５クラスのいずれであるかを識別するマルチクラス識別器を学習してもよいし、各クラスについて、そのクラスであるかそれ以外のクラスであるかを識別する２クラス識別器を５個学習し、５個の識別器のうち最もクラス尤度の高いクラスに割り当てるようにしてもよい。図１２（ｂ）の場合であれば、ｓｋｙであるか、それ以外のクラスであるｂｕｉｌｄｉｎｇ、ｔｒｅｅ、ｒｏａｄ、ｂｏｄｙをまとめた４クラスのどれかであるかの２クラス識別を行う。それを他の４クラスに対しても行い、識別時には最も高い尤度を出力した２クラス識別器が識別しているクラスを割り当てる。
【００７１】
以上により、統合識別器学習工程Ｔ１６０の処理は完了し、この工程で学習された統合識別器は第２統合識別器保持部３５６に保持され、識別処理の統合識別工程Ｓ１４０において供される。上記説明では、第１統合識別器保持部５０７と第２統合識別器保持部３５６を別の構成として説明したが、画像認識装置２０と学習装置３００を一体に構成する場合には、第１統合識別器保持部５０７と第２統合識別器保持部３５６を１つの保持部としてもよい。
【００７２】
本実施形態では、各画素に対して統合識別を行う例について述べたが、数５式で表される各画素における結合結果を小領域もしくはブロックごとに平均化して入力してもよい。その場合、統合する識別器の学習時に与える教師値は小領域内で最も画素数の多いクラスを与えてもよし、小領域の面積に対する画素数を回帰値としてｓｕｐｐｏｒｔ−ｖｅｃｔｏｒ−ｒｅｇｒｅｓｓｉｏｎを学習してもよい。
【００７３】
また、本実施形態においては、全学習評価画像を用いて統合識別器を学習する例について説明したが、全学習評価画像を用いるのではなく、学習評価画像をランダムに選択してもよいし、学習評価画像内の画素をランダムに選択してもよい。
【００７４】
以上のように、本実施形態の画像認識装置２０によれば、まず、第２識別器によりクラスを識別すべき領域を検出するとともに、第１識別器を用いて前記認識対象画像の領域ごとにクラスを識別する。そして、第２識別器を用いた検出結果と第１識別器によるクラス識別を統合して、認識対象画像の各領域のクラスを識別する。この構成により、本実施形態では、クラスの識別が難しい小領域の誤検出を軽減でき、画像を高精度に認識することができる。
【００７５】
また、学習時識別部３０２が第１識別器による学習評価画像の識別結果を評価するとともに、誤識別領域選択部３０３が第１識別器では誤識別領域を、識別が難しい小領域として選択する。そして、第２識別器学習部３０５は、選択された誤識別領域を含む複数の小領域からなる領域を識別するための第２の識別器を学習する。最後に、第１識別器による識別結果と第２識別器による識別結果とを統合して、統合識別器を学習する。以上のように学習した第１識別器および第２識別器を利用する画像認識装置２０では、画像の識別精度を高めることができる。
【００７６】
［第２の実施形態］
次に、第２の実施形態として、学習時に位置情報などの付帯情報を第２識別器に対応づけておくことで、認識時にその付帯情報を取得し、その情報に基づいて複数ある第２識別器の中から必要な第２識別器を選択して識別を行う形態について説明を行う。
【００７７】
付帯情報とは、撮影の際に画像に付帯させることができる種々の情報のことである。たとえば、撮影を行った位置のＧＰＳなどの位置情報、色温度やカメラで設定された各種パラメータ等の認識対象画像を撮影したカメラにより得られる情報、ブロックや画素ごとに得られるオートフォーカスの情報、撮影画像から得られるシーン特徴量などがある。シーン特徴量とは、画像に対して一意に得られる特徴量のことであり、非特許文献５に記載されているＳｐａｔｉａｌ  Ｐｙｒａｍｉｄ  Ｍａｔｃｈｉｎｇ  Ｋｅｒｎｅｌや非特許文献４に記載されているＧＩＳＴ特徴量を利用することができる。または、画像を複数のブロックに分割し、各ブロックの色分布をヒストグラム化した特徴量などでもよい。その他、画像全体を表す特徴量や、画像の各部分から得られる特徴量を統計量として集計したものであれば利用できる。
【００７８】
本実施形態における画像認識装置２０、学習装置３００の機能構成は、第１の実施形態において図５、図１０（ａ）で示した画像認識装置２０、学習装置３００と同様であるが、一部の機能部における処理内容が第１の実施形態とは異なる。具体的には、画像認識装置２０における取得部５０１は、画像の認識処理において、認識対象画像とともに付帯情報を取得する。また、学習装置３００が用いる学習用画像および学習評価画像について、少なくとも第２識別器の学習に用いるデータに対しては付帯情報が必要である。
【００７９】
次に、本実施形態における画像の認識処理について説明する。図６（ｂ）は、本実施形態における認識対象の画像を処理する際の認識処理を示すフローチャートである。取得工程Ｓ２１０の処理内容は、第１の実施形態におけるＳ１１０と同様であるため、説明を省略する。
【００８０】
付帯情報取得工程Ｓ２２０では、取得部５０１が、取得工程Ｓ２１０において取得した認識対象画像の付帯情報を取得し、取得した付帯情報を検出部５０４に送信する。取得する付帯情報としては、前述したように、たとえば、カメラ１０にＧＰＳが搭載されていれば位置情報を取得するようにしてもよいし、もしくはカメラ１０が撮像するために用いたパラメータ等を取得するようにしてもよい。
【００８１】
検出工程Ｓ２３０では、検出部５０４が、付帯情報取得工程Ｓ２２０において得られた付帯情報に基づいて複数ある第２識別器の中から所定の第２識別器をロードし、検出処理を行う。本実施形態では、学習処理の第２識別器学習工程において、付帯情報を第２識別器と一緒に保持しておき、認識処理の際に付帯情報が近い所定数の第２識別器をロードする。または、付帯情報間の距離を定義して距離に応じて第２識別器をロードするようにしてもよい。
【００８２】
またさらに、付帯情報との距離に応じて各検出器（第２識別器）の結果を重みづけしてもよい。例えば、シーン特徴量の場合、第２識別器の学習データを取得した学習評価画像のシーン特徴量と認識対象画像のシーン特徴量との距離を算出し、付帯情報との距離に応じて各検出器の結果を重みづけする。このような距離としては、例えばヒストグラム距離などを用いることができる。また、各種撮影パラメータや色温度などの、画像に対して一意に対応する情報を付帯情報として利用する場合には、その数値を直接比較すればよい。また、ブロックや画素ごとに対応づけられたオートフォーカス情報の場合には、その得られた値をベクトル化したり、ヒストグラム化したりして比較するようにすればよい。また、それらすべての値を結合、ベクトル化して、第２識別器の学習データを取得した学習評価画像から得られるベクトルと比較するようにしてもよい。
【００８３】
第２識別器をロードした後の検出工程Ｓ２３０の処理内容は、第１の実施形態における処理内容と同様であるため、その説明を省略する。
【００８４】
識別工程統合処理Ｓ２４０および統合識別処理工程Ｓ２５０の処理内容は、第１の実施形態におけるＳ１３０およびＳ１４０と同様であるため、説明を省略する。
【００８５】
以上、本実施形態では、学習装置３００は第２識別器を学習する際に付帯情報も併せて保持し、画像を認識する認識処理の際に認識対象画像の付帯情報に基づいて第２識別器をロードする。これにより、不必要な第２識別器による検出処理を省くことででき、画像認識装置２０によるクラス識別の精度向上および高速化、省メモリ化を達成することができる。
【００８６】
［第３の実施形態］
次に、第３の実施形態として、学習処理において学習された統合識別器での識別結果を学習評価画像を用いて評価することにより、第２識別器および統合識別器による識別結果の精度を向上させる形態について説明する。なお、本実施形態において、統合識別器を評価するために用いられる学習評価画像は、他の工程で用いられる学習評価画像と同じであってもよいし、別に用意してもよい。
【００８７】
本実施形態における画像認識装置２０およびその処理フローは、第１の実施形態と同様であるため説明を省略する。次に、本実施形態における学習装置３００およびその処理フローについて説明する。図１０（ｂ）は、本実施形態における学習装置３００の機能構成を示す図である。本実施形態における学習装置３００は、第１の実施形態において図１０（ａ）で示した学習装置３００の各機能部の構成に加えて、統合識別器評価部３０７を有する。統合識別器評価部３０７の詳細な説明については、図１１（ｂ）等を用いて後述する。その他の機能部の構成については、図１０（ａ）と同様であるため説明を省略する。
【００８８】
次に、本実施形態における学習処理について説明する。図１１（ｂ）は、本実施形態において、学習装置３００が実行する学習処理を示すフローチャートである。第１識別器学習工程Ｔ３１０から統合識別器学習工程Ｔ３６０までの処理は、第１の実施形態における第１識別器学習工程Ｔ１１０から統合識別器学習工程Ｔ１６０と同様であるため、その説明を省略する。
【００８９】
統合識別器評価工程Ｔ３７０では、統合識別器評価部３０７が、統合識別器学習工程Ｔ３６０により学習された統合識別器を評価する。図１９は、統合識別器評価部３０７により実行する統合識別器評価工程Ｔ３７０の処理の詳細を示したフローチャートである。
【００９０】
Ｔ３７０１では、学習評価画像に対して、第２識別器によって学習した事例の検出処理を行う。この検出処理の方法は、認識処理における検出工程Ｓ１２０の処理内容と同様であるため、説明を省略する。
【００９１】
Ｔ３７０２では、学習評価画像に対して、第１識別器によってクラスの識別を行う。ここでの処理内容も、認識処理における識別工程Ｓ１３０の処理内容と同様であるため、説明を省略する。
【００９２】
Ｔ３７０３では、Ｔ３７０１の検出結果とＴ３７０２の識別結果とを統合し、第２統合識別器保持部３５６に記憶されている統合識別器を用いて学習評価画像の識別を行う。
【００９３】
Ｔ３７０４では、Ｔ３７０２で行った第１識別器による識別結果を学習評価画像のＧＴと比較することにより精度評価する。この精度評価には、例えば、ＰｉｘｅｌＡｃｃｕｒａｃｙを用いる。ＰｉｘｅｌＡｃｃｕｒａｃｙとは、非特許文献１などにおいて領域分割の評価によく用いられる評価値で、各画素のクラス識別結果が正解しているかどうかを集計した値である。
【００９４】
Ｔ３７０５では、Ｔ３７０３で行った統合識別器による統合識別結果を学習評価画像のＧＴと比較して精度評価する。ここでの精度評価もＴ３７０４と同様、ＰｉｘｅｌＡｃｃｕｒａｃｙを用いて評価を行う。
【００９５】
Ｔ３７０６では、Ｔ３７０４でおよびＴ３７０５で評価した識別精度を比較する。そして、第１識別器による識別精度に対して、統合識別結果の精度が所定値以上高くなっていなければ、再度第２識別器を学習する。つまり、学習評価画像に対する統合識別器による識別結果であるＰｉｘｅｌＡｃｃｕｒａｃｙが、第１識別器による識別結果であるＰｉｘｅｌＡｃｃｕｒａｃｙよりも所定値以上高くなっていなければ、再度第２識別器を学習する。
【００９６】
再度第２識別器を学習する場合には、統合識別器による識別結果であるＰｉｘｅｌＡｃｃｕｒａｃｙが第１識別器による識別結果よりも所定値以上高くなるまで、誤識別領域選択工程Ｔ３３０から統合識別器評価工程Ｔ３７０までを繰り返す。２回目以降の誤識別領域選択工程Ｔ３３０では、第１識別器による識別結果ではなく、統合識別器による統合識別結果に対して誤識別領域を選択する。選択された誤識別領域が、以前に選択されていた領域の場合には、第２識別器における学習データのサイズを変更するか特徴量を変更する。学習データのサイズを変更する場合には、先の学習データに比べて隣接する小領域を多く結合すればよい。また、以前に選択されていない誤識別領域の場合には、その領域を識別するための検出器（第２識別器）を追加すればよい。第２識別器を再学習したあとは、統合識別器を再度学習して、統合識別結果を再評価する。
【００９７】
以上、本実施形態によれば、第１の識別器による識別結果と第２の識別器による検出結果を統合した統合識別器を学習評価画像を用いて評価することにより、統合識別器による識別精度を高めることができる。
【００９８】
［第４の実施形態］
次に、第４の実施形態として、学習評価画像に対して誤識別した領域について、ユーザがクラスを定義することにより、その領域の事例に対応する第２識別器を学習する構成について説明する。好適な構成としては、ユーザが登録した学習評価画像を第１領域識別器がクラスを識別し、その結果をユーザが見て必要な箇所を誤識別領域として選択する。そして、選択された誤識別領域に基づいて、第２識別器を学習する。
【００９９】
本実施形態における画像認識装置２０およびその処理フローは、第１の実施形態と同様であるため説明を省略する。次に、本実施形態における学習装置３００およびその処理フローについて説明する。図１０（ｃ）は、本実施形態における学習装置３００の機能構成を示す図である。本実施形態における学習装置３００は、第１の実施形態において図１０（ａ）で示した学習装置３００の各機能部の構成に加えて、表示制御部３０８、学習評価画像取得部３０９を有する。表示制御部３０８、学習評価画像取得部３０９の詳細な説明については、図１１（ｃ）等を用いて後述する。その他の構成については、図１０（ａ）と同様であるため説明を省略する。
【０１００】
次に、本実施形態における学習処理について説明する。図１１（ｃ）は、本実施形態において、学習装置３００が実行する学習処理を示すフローチャートである。第１識別器学習工程Ｔ４１０の処理は、第１の実施形態における第１識別器学習工程Ｔ１１０と同様であるため、説明を省略する。
【０１０１】
学習評価画像取得工程Ｔ４２０では、学習評価画像取得部３０９が、ユーザによって学習装置３００に登録された学習用画像を取得する。取得された学習評価画像は、学習評価画像保持部３５２に送信され、記憶される。
【０１０２】
学習時識別工程Ｔ４３０では、第１識別器学習部３０１が、学習評価画像取得工程Ｔ４２０で取得した学習評価画像に対して、第１識別器を用いてクラスの識別を行う。具体的な処理内容は、第１の実施形態における学習時識別工程Ｔ１２０の処理内容と同様であるため、説明を省略する。
【０１０３】
誤識別領域選択工程Ｔ４４０では、表示制御部３０８が、学習時識別工程Ｔ４３０で用いられた学習用画像を表示部４０６に表示させる。表示部４０６に表示された学習用画像は学習時識別工程Ｔ４３０のクラス識別の際に分割された小領域の単位で選択できるようになっており、ユーザは操作部４０５（マウス等）を操作することによって誤識別領域を選択できる。誤識別領域選択部３０３は、ユーザが選択、指示した誤識別領域に関わる情報を取得することにより、誤識別領域を選択する。また、選択された誤識別領域に対するクラス定義も行われる。クラス定義は予め決められたクラスの中から、誤識別領域選択部３０３が選択するようにしてもよいし、ユーザが選択して、その選択した情報を誤識別領域選択部３０３が取得するようにしてもよい。
【０１０４】
第２識別器学習データ生成工程Ｔ４５０および第２識別器学習工程Ｔ４６０の処理は、第１の実施形態における第２識別器学習データ生成工程Ｔ１４０および第２識別器学習工程Ｔ１５０の処理内容と同様であるため、その説明を省略する。
【０１０５】
以上、本実施形態では、第１識別器学習部３０１は、ユーザにより登録された学習評価画像を用いて第１識別器を学習するとともに、誤識別領域選択部３０３が、ユーザが選択指示した誤識別領域に関わる情報を取得することにより、誤識別領域を選択する。これによって、第１識別器では識別が難しい小領域を抽出することができる。特に、本実施形態では、ユーザの選択指示に基づいて誤識別領域を選択するようにしているので、ＧＴがない学習評価画像を用いることができ、ユーザが認識させたい画像に対して識別精度の高い識別器を学習することができる。
【０１０６】
また、本発明は、上記実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１０７】
３００  学習装置
３０１  第１識別器学習部
３０２  学習時識別部
３０３  誤識別領域選択部
３０４  第２識別器学習データ生成部
３０５  第２識別器学習部
３０６  統合識別器学習部
【図１】
2016099668.tif 000003
【図２】
2016099668.tif 000004
【図３】
2016099668.tif 000005
【図４】
2016099668.tif 000006
【図５】
2016099668.tif 000007
【図６】
2016099668.tif 000008
【図７】
2016099668.tif 000009
【図８】
2016099668.tif 000010
【図９】
2016099668.tif 000011
【図１０】
2016099668.tif 000012
【図１１】
2016099668.tif 000013
【図１２】
2016099668.tif 000014
【図１３】
2016099668.tif 000015
【図１４】
2016099668.tif 000016
【図１５】
2016099668.tif 000017
【図１６】
2016099668.tif 000018
【図１７】
2016099668.tif 000019
【図１８】
2016099668.tif 000020
【図１９】
2016099668.tif 000021