(57)【要約】【課題】識別アプリ開発における学習用画像の収集作業、特に、識別アルゴリズム開発早期段階における初期学習用画像の収集作業を効率化する識別器学習画像生成プログラム、方法、及びシステムを提供する。【解決手段】画像入力ステップＳ１２０と、入力した画像から識別対象領域を検知し、複数の検知データＤ１２０を取得して記憶装置に記録する検知ステップＳ１３０と、複数の検知データＤ１２０を統合して学習画像候補情報を取得し、検知データＤ１２０として記憶装置に記録する候補統合ステップＳ１４０と、入力した画像から識別器を学習させるための複数の学習画像を切出し、学習画像データとして記憶装置に記録する画像切出しステップＳ１５０と、学習画像を１つ以上の集合に分類する画像分類ステップＳ１７０と、学習画像を表示する学習画像表示ステップＳ１８０とをコンピュータに実行させるプログラムによって、学習画像収集作業を効率化する。【選択図】図１
2011145791.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置または画像撮影装置から画像を入力する画像入力ステップと、
入力した前記画像から識別対象領域を検知し、少なくとも前記識別対象領域の座標情報を含む複数の検知データを取得し、前記検知データを記憶装置に記録する検知ステップと、
複数の前記検知データを統合して学習画像候補情報を取得し、前記学習画像候補情報を前記検知データとして記憶装置に記録する候補統合ステップと、
前記検知データに含まれる前記座標情報を用いて、入力した前記画像から識別器を学習させるための複数の学習画像を切出し、複数の前記学習画像を学習画像データとして出力し記憶装置に記録する画像切出しステップと、
前記学習画像を１つ以上の集合に分類する画像分類ステップと、
前記学習画像を表示装置に表示する学習画像表示ステップとを、
コンピュータに実行させるための識別器学習画像生成プログラム。
【請求項２】
請求項１記載の識別器学習画像生成プログラムであって、
前記学習画像表示ステップにより表示された前記学習画像をユーザに選択させる画像選択ステップをさらにコンピュータに実行させ、
前記画像選択ステップは、
ユーザから、前記画像分類ステップにより分類された区分に従って前記学習画像の選択を受け付けるか、または、前記学習画像表示ステップにより表示された前記学習画像から１つ以上の前記学習画像の選択を受け付け、
ユーザが選択した前記学習画像を学習画像データとして出力し記憶装置に記録する識別器学習画像生成プログラム。
【請求項３】
請求項１または２記載の識別器学習画像生成プログラムであって、
前記検知ステップは、
原画像特定情報として、前記画像入力ステップで入力した前記画像が動画の場合は時間情報を、静止画の場合はファイル名を、前記検知データに含めて記録し、
識別対象領域特定情報として、前記識別対象領域の、前記画像の画像空間上での座標情報または３次元実空間上での座標情報を、前記検知データに含めて記録し、
画像分類ステップは、
前記学習画像が属するクラス情報と前記学習画像のファイル名とを前記検知データに含めて記録する識別器学習画像生成プログラム。
【請求項４】
請求項３記載の識別器学習画像生成プログラムであって、
前記候補統合ステップは、
前記検知データが有する前記原画像特定情報と前記識別対象領域特定情報とを用いて、同一の前記画像内の同一の前記識別対象領域に対する複数の前記検知データを統合して代表領域を定め、前記代表領域の情報を前記学習画像候補情報とする識別器学習画像生成プログラム。
【請求項５】
請求項１から４のいずれか１項記載の識別器学習画像生成プログラムであって、
前記画像分類ステップは、前記集合のそれぞれに対して識別器学習に用いるクラス情報を付与する識別器学習画像生成プログラム。
【請求項６】
請求項５記載の識別器学習画像生成プログラムであって、
前記画像分類ステップは、
前記学習画像にクラスタリングを行い前記集合としてクラスタを生成し、前記クラスタのそれぞれに対して識別器学習に用いるクラス情報を付与し、
前記学習画像を前記クラスタ毎に分けて記憶装置に記録する識別器学習画像生成プログラム。
【請求項７】
請求項５記載の識別器学習画像生成プログラムであって、
前記画像分類ステップは、
分類基準となる代表画像を入力し、
前記画像切出しステップにより切出された複数の前記学習画像の前記代表画像に対する類似度または相違度を計算し、
複数の前記学習画像を、前記類似度が高い順または前記相違度が低い順に並び替えて表示装置に表示し、
ユーザが選択した１つ以上の前記学習画像を同一クラスに属するものとして記憶装置に記録する識別器学習画像生成プログラム。
【請求項８】
請求項５記載の識別器学習画像生成プログラムであって、
前記画像分類ステップは、
分類基準となる代表画像を入力し、
前記画像切出しステップにより切出された複数の前記学習画像の前記代表画像に対する類似度または相違度を計算し、
複数の前記学習画像を、前記類似度が低い順または前記相違度が高い順に並び替えて表示装置に表示し、
ユーザが選択した１つ以上の前記学習画像を、同一クラスに属する学習画像として記憶装置に記録する識別器学習画像生成プログラム。
【請求項９】
請求項５記載の識別器学習画像生成プログラムであって、
前記画像分類ステップは、
前記学習画像にクラスタリングを行い前記集合としてクラスタを生成し、前記クラスタのそれぞれに対して識別器学習に用いるクラス情報を付与し
前記クラス情報毎に分けて前記学習画像を表示装置に表示し、
ユーザから前記クラス情報の修正及びクラスの選択を受け付け、
ユーザが選択したクラスに属する前記学習画像を、同一クラスに属する学習画像として記憶装置に記録する識別器学習画像生成プログラム。
【請求項１０】
請求項６または９記載の識別器学習画像生成プログラムであって、
前記学習画像表示ステップは、
前記画像切出しステップにより切出された複数の前記学習画像を表示装置に表示し、
前記画像分類ステップにおいて付与されたクラス情報毎に、複数の前記学習画像の表示状態を分けて表示する識別器学習画像生成プログラム。
【請求項１１】
請求項７または８記載の識別器学習画像生成プログラムであって、
前記学習画像表示ステップは、
前記代表画像を表示し、
前記画像切出しステップにより切出された複数の前記学習画像と、前記類似度または前記相違度とを表示装置に表示し、
ユーザから、代表画像が属するクラス名の入力を受け付け、
ユーザから、類似度または相違度の閾値、及び個数閾値のいずれか一方または両方の入力を閾値条件として受け付け、
前記閾値条件を満たす前記学習画像の表示状態を変更する識別器学習画像生成プログラム。
【請求項１２】
記憶装置または画像撮影装置から画像を入力する画像入力ステップと、
入力した前記画像から識別対象領域を検知し、少なくとも前記識別対象領域の座標情報を含む複数の検知データを取得し、前記検知データを記憶装置に記録する検知ステップと、
複数の前記検知データを統合して学習画像候補情報を取得し、前記学習画像候補情報を前記検知データとして記憶装置に記録する候補統合ステップと、
前記検知データに含まれる前記座標情報を用いて、入力した前記画像から識別器を学習させるための複数の学習画像を切出し、複数の前記学習画像を学習画像データとして出力し記憶装置に記録する画像切出しステップと、
前記学習画像を１つ以上の集合に分類する画像分類ステップと、
前記学習画像を表示装置に表示する学習画像表示ステップとを、
備えることを特徴とする識別器学習画像生成方法。
【請求項１３】
請求項１２記載の識別器学習画像生成方法であって、
前記学習画像表示ステップにより表示された前記学習画像をユーザに選択させる画像選択ステップをさらに備え、
前記画像選択ステップは、
ユーザから、前記画像分類ステップにより分類された区分に従って前記学習画像の選択を受け付けるか、または、前記学習画像表示ステップにより表示された前記学習画像から１つ以上の前記学習画像の選択を受け付け、
ユーザが選択した前記学習画像を学習画像データとして出力し記憶装置に記録する識別器学習画像生成方法。
【請求項１４】
前記表示装置と、入力装置と、前記記憶装置と、情報処理装置とで構成され、
前記情報処理装置で、請求項１から１１のうちいずれか１項記載の識別器学習画像生成プログラムを実行することを特徴とする識別器学習画像生成システム。
【請求項１５】
前記表示装置と、入力装置と、前記記憶装置と、情報処理装置とで構成され、
前記情報処理装置で、請求項１２または１３記載の識別器学習画像生成方法を実行することを特徴とする識別器学習画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、識別器を用いた画像認識システムの開発における、識別器の学習用画像の収集技術に関するものである。
【背景技術】
【０００２】
画像認識システムは、処理性能の向上により、従来のＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）分野から、屋内外の人物監視、デジタルカメラなどの顔認識、車載カメラによる外界認識など、幅広い分野に応用されてきている。
【０００３】
特に、近年は、物体等の検知・追跡だけでなく、物体の種別の識別まで行うものが一般的になっている（例えば、人物監視であれば挙動の正常／異常の識別、顔認識であれば性別の識別など）。
【０００４】
これらの画像識別アプリケーション（以下、「識別アプリ」と称する）では、識別対象が剛体ではないために変形する、非常に多様な見た目をもつ、などの理由で、ニューラルネットワーク（ニューロ）や、サポートベクタマシン（ＳＶＭ）等の識別器を用いることが一般的である。
【０００５】
識別器を用いて画像識別を行う場合、まず、識別器を学習させるための学習画像（教示画像）を多数収集する必要がある。従来、学習画像の収集作業は人手で行う必要があり、多大な工数が必要であった。
【０００６】
例えば、１０×１０画素の画像（物体のテクスチャや形状を目視判定するには、この程度の解像度が必要）を識別する場合、この各画素を識別用特徴量とみなすと、特徴量の次元数は１００次元となる。一般的に、識別器で安定した識別を行うためには特徴量次元数の１０倍以上の学習データ数が必要といわれており、このケースでは１クラス当たり１０００枚の画像が学習データとして必要となる（識別したいクラス数が増えれば必要な画像の枚数も増える）。
【０００７】
なお、クラスとは、識別器学習において識別器に与える「正解値」や「不正解値」のことを指す。例えば、人物の性別識別の例では、男性画像に対しては「男性」、女性画像に対しては「女性」などの分類情報がクラスに該当する。さらに、識別器の種類によっては、学習画像に正解画像と不正解画像の両方を含める必要がある。例えば、人物の性別識別の例では、前記の男性画像と女性画像だけでなく背景画像などを「クラス＝その他」などとして意図的に学習させるケースがある。このケースでは、男性画像と女性画像が「正解画像」であり、背景画像などのノイズ画像が「不正解画像」である。
【０００８】
また、移動体識別を扱う動画像処理の場合は、画像１フレーム（または処理周期の１周期）ごとに学習画像を切出すという作業がある。このため、工数の問題だけでなく、切出し作業品質が維持できないために、つまり、学習画像領域が所望領域からずれるために、学習アルゴリズムが収束しない、識別性能が安定しない、などの問題を引き起こす。
【０００９】
上記のような学習画像収集の問題に対して、従来は、あらかじめ収集した初期画像を画像処理で加工（例えば、画像回転やノイズ重畳）することにより擬似学習画像を増やす装置（特許文献１）や、あらかじめ収集した学習画像群を識別に用いる特徴量空間上にマッピングすることで、その画像群が学習用画像として適切かどうかの判断を支援する方法（特許文献２）などが考案されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平７−２１３６７号公報
【特許文献２】特開２００６−２９３５２８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、従来の方法は、あらかじめ多数の画像を収集する作業自体の工数を低減するものではない。例えば、特許文献１に記載の技術では、加工前の初期画像があれば擬似データを増やすことは可能であるが、初期画像自体の収集作業は別途必要である。また、擬似画像生成時に用いる加工パターン（ノイズなど）が、実際の撮影時に得られる変化パターンと一致しない場合、識別性能に悪影響を与えることがある。
【００１２】
さらに、例えば、特許文献２では、収集した画像自体が学習に適するかどうかの目視選別作業は効率化できるが、選別対象となる画像収集作業自体の効率化はできない。また、この方法は特徴量空間へのマッピングを行うため、識別用特徴量種別が既に定まっている追加学習時には効果が期待できるものの、アルゴリズム開発途中の特徴量種別決定前の段階ではマッピング先空間が固定されないため、初期学習時点では効果が期待できない。
【００１３】
特に、人物などの非剛体識別を行う場合や、広角レンズカメラなどにより画像中の位置によって大きな画像ひずみを伴う場合には、非常に多様かつ多くの画像を初期学習用画像として収集する必要があり、その作業工数の低減が大きな課題となっている。
【００１４】
そこで、本発明は、識別アプリ開発における学習用画像の収集作業、特に、識別アルゴリズム開発早期段階における初期学習用画像の収集作業を効率化することのできる識別器学習画像生成プログラム、識別器学習画像生成方法、及び識別器学習画像生成システムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明による識別器学習画像生成プログラムは、基本的には次のような特徴を持つ。記憶装置または画像撮影装置から画像を入力する画像入力ステップと、入力した前記画像から識別対象領域を検知し、少なくとも前記識別対象領域の座標情報を含む複数の検知データを取得し、前記検知データを記憶装置に記録する検知ステップと、複数の前記検知データを統合して学習画像候補情報を取得し、前記学習画像候補情報を前記検知データとして記憶装置に記録する候補統合ステップと、前記検知データに含まれる前記座標情報を用いて、入力した前記画像から識別器を学習させるための複数の学習画像を切出し、複数の前記学習画像を学習画像データとして出力し記憶装置に記録する画像切出しステップと、前記学習画像を１つ以上の集合に分類する画像分類ステップと、前記学習画像を表示装置に表示する学習画像表示ステップとをコンピュータに実行させる。
【００１６】
また、本発明による識別器学習画像生成方法は、基本的には次のような特徴を持つ。記憶装置または画像撮影装置から画像を入力する画像入力ステップと、入力した前記画像から識別対象領域を検知し、少なくとも前記識別対象領域の座標情報を含む複数の検知データを取得し、前記検知データを記憶装置に記録する検知ステップと、複数の前記検知データを統合して学習画像候補情報を取得し、前記学習画像候補情報を前記検知データとして記憶装置に記録する候補統合ステップと、前記検知データに含まれる前記座標情報を用いて、入力した前記画像から識別器を学習させるための複数の学習画像を切出し、複数の前記学習画像を学習画像データとして出力し記憶装置に記録する画像切出しステップと、前記学習画像を１つ以上の集合に分類する画像分類ステップと、前記学習画像を表示装置に表示する学習画像表示ステップとを備える。
【００１７】
また、本発明による識別器学習画像生成システムは、前記表示装置と、入力装置と、前記記憶装置と、情報処理装置とで構成され、前記情報処理装置で、上述の識別器学習画像生成プログラムを実行すること、または、上述の識別器学習画像生成方法を実行することを特徴とする。
【発明の効果】
【００１８】
本発明により、識別アプリの開発において、識別器学習用画像の収集作業を効率化することができる。特に、画像識別アルゴリズムの開発完了後の追加学習時点に用いる追加学習用画像だけでなく、開発の早期段階における初期学習用画像の収集作業を効率化することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施例１による識別器学習画像生成プログラム及びデータの全体処理の概要を示す図。
【図２】実施例１における識別器学習画像生成システムの装置構成を示す図。
【図３】検知データのデータ形式及びデータ例を示す図。
【図４】候補統合処理のフローチャート。
【図５】実施例１における画像分類処理のフローチャート。
【図６】実施例１における学習画像表示処理のフローチャート。
【図７】実施例１における学習画像表示画面の例を示す図。
【図８】本発明の実施例２による識別器学習画像生成プログラム及びデータの全体処理の概要を示す図。
【図９】実施例２における画像分類処理のフローチャート。
【図１０】実施例２における学習画像表示処理のフローチャート。
【図１１】実施例２における学習画像表示画面の例を示す図。
【図１２】本発明の実施例３による識別器学習画像生成プログラム及びデータの全体処理の概要を示す図。
【図１３】実施例３における検知データのデータ形式及びデータ例を示す図。
【図１４】実施例３における画像分類処理のフローチャート。
【図１５】実施例３における画像選択処理のフローチャート。
【発明を実施するための形態】
【００２０】
本発明による識別器学習画像生成プログラム、識別器学習画像生成方法、及び識別器学習画像生成システムの実施例を、図面を使って説明する。以下の実施例では、説明の便宜上、識別対象領域を人物や車両などの物体として説明するが、本発明は、識別対象領域として物体以外を取り扱うことも可能である。例えば、ＦＡ検査分野における不良個所部分の画像を識別対象領域と設定した場合にも、本発明は適用可能である。このような場合には、以下の説明で物体について述べている部分を、領域について述べていると適宜読み替えればよい。
【実施例１】
【００２１】
本発明による識別器学習画像生成プログラム、識別器学習画像生成方法、及び識別器学習画像生成システムの一実施例を、図１〜図７を使って説明する。
【００２２】
なお、本実施例では、動画像処理において、自動で学習画像の収集を行う例として、車載フロントカメラによる道路標識の認識について説明する。
【００２３】
まず、図１を使って、本実施例による識別器学習画像生成プログラムとデータの全体処理の概要を説明する。本実施例による識別器学習画像生成プログラム１００は、ループ処理Ｓ１１０、Ｓ１６０、画像入力処理Ｓ１２０、検知処理Ｓ１３０、候補統合処理Ｓ１４０、画像切出し処理Ｓ１５０、画像分類処理Ｓ１７０、及び学習画像表示処理Ｓ１８０の各処理ステップによって構成され、原画像データＤ１１０、検知データＤ１２０、及び学習画像データＤ１３０の各データを入出力する。ループ処理Ｓ１１０、Ｓ１６０により、Ｓ１２０からＳ１５０までの各処理を動画中の各フレーム（または処理周期）に適用する。
【００２４】
処理周期とは、動画像処理における画像入力から認識処理、結果表示にいたる一連の処理の周期のことで、本実施例では、例えば６６ｍｓなどの映像規格にあわせた周期のことを示す。
【００２５】
原画像データＤ１１０は、識別対象となる物体を含むシーンがあらかじめ撮影された画像データであり、入力画像（原画像）として用いる。なお、原画像データＤ１１０は、本実施例では動画像処理の例なので動画データファイルであるが、発明の構成上は静止画ファイル群であっても構わない。
【００２６】
検知データＤ１２０は、検知処理Ｓ１３０によって検知された物体に関する情報を保持するデータであり、例えば、物体のＩＤや位置情報などが書き込まれる。検知データＤ１２０には、候補統合処理Ｓ１４０が行なわれる。検知データＤ１２０の詳細については、後述する。
【００２７】
学習画像データＤ１３０は、識別器学習画像生成プログラム１００による一連の処理（Ｓ１１０〜Ｓ１７０）を完了した結果として得られるデータである。具体的には、画像分類処理Ｓ１７０により情報が追加されて最終的に得られる検知データＤ１２０と、学習用静止画ファイル群とで構成されるデータである。
【００２８】
次に、識別器学習画像生成プログラム１００の処理手順の概要について説明する。
【００２９】
まず、原画像データＤ１１０から１枚の原画像を取り込み、さらにその原画像から学習画像の候補となる部分画像とその部分画像の座標情報とを抽出する（ステップＳ１１０〜Ｓ１６０）。以下、ステップＳ１２０〜Ｓ１５０の各ステップを具体的に説明する
初めに、原画像データＤ１１０から、動画中の各フレーム（または処理周期）に該当する静止画を１枚切出して、原画像として入力する（ステップＳ１２０）。
【００３０】
この静止画（原画像）に対して検知処理を行って、識別対象となる物体が映っている部分の物体座標（本実施例では、物体に外接する矩形の始点・終点座標）を得る（ステップＳ１３０）。この検知処理では、１枚の原画像に対して複数の物体座標（物体座標群）が得られる。この時点で得られる物体座標群は、厳密に正しい座標である必要はなく、ノイズを含んでもよいものと仮定する。得られた物体座標群は、検知データＤ１２０に記録する。
【００３１】
次に、得られた物体座標群に対し、相互の位置関係をチェックし、同一物体を複数誤検知している可能性が高いものを統合処理する（ステップＳ１４０）。この候補統合処理の詳細は後述する。
【００３２】
ここまでの処理によって、同一物体当たり１つの物体座標が得られるので、その物体座標に該当する領域を部分画像として切出し、学習画像データＤ１３０に記録する（ステップＳ１５０）。学習画像データＤ１３０に記録される部分画像は、ノイズ（不適切な検知結果）が消去されたデータであり、学習画像の候補（学習画像候補）となる。
【００３３】
以上のＳ１２０からＳ１５０までの各処理を、動画中の各フレームＩ（または処理周期）に適用する（ステップＳ１１０、Ｓ１６０）。
【００３４】
ステップＳ１１０〜Ｓ１６０の処理によって原画像データＤ１１０内の動画を処理し終えると、次に、切出した部分画像群（学習画像候補）に対して、分類を行う（ステップＳ１７０）。この画像分類処理の詳細は後述する。
【００３５】
最後に、最終的に学習画像として採用された画像群を表示する（ステップＳ１８０）。この学習画像表示処理の詳細は後述する。
【００３６】
なお、検知処理Ｓ１３０にて用いる検知方法は、識別アプリ（画像識別アプリケーション）ごとに異なる手法を用いることができ、公知の方法を用いて構わない。例えば、本実施例で例示する車載カメラによる円形標識認識であれば、分離度フィルタやハフ変換法による円検知などが用いられる。また、固定カメラによる侵入者検知であれば、フレーム間差分法や背景差分法による人物検知などが用いられる。これらの検知方法は、本発明における検知方法を限定するものではない。
【００３７】
さらに、原画像データＤ１１０と学習画像データＤ１３０内の学習用静止画ファイルの実現方法には、公知の方法を用いて構わない。例えば、一般的な方法として、オペレーティングシステムが提供するファイルシステム上でムービーデータまたは画像ファイルデータとして実現する方法が考えられる。
【００３８】
さらに、本実施例では、画像入力処理Ｓ１２０は、動画データを原画像データＤ１１０から入力する例を挙げているが、他の入力方法を用いても構わない。例えば、カメラなどの画像撮影装置を画像認識システムに接続し、画像撮影装置が撮影する動画像からリアルタイムに各フレームを直接取り込む方式を用いてもよい。
【００３９】
図２に、本実施例による識別器学習画像生成システムの装置構成を示す。本実施例による識別器学習画像生成システム２００は、計算機によって構成され、具体的には、情報処理装置２１０、入力装置２２０、表示装置２３０、記憶装置２４０、及び記憶媒体２５０によって構成される。
【００４０】
記憶媒体２５０には、識別器学習画像生成プログラム１００が記録される。識別器学習画像生成プログラム１００は、本実施例による識別器学習画像生成プログラムであり、記憶媒体２５０に計算機で実行可能な形式で記録され、識別器学習画像生成システム２００によって読み込まれ、実行される。
【００４１】
情報処理装置２１０は、識別器学習画像生成システム２００の全体処理を司り、識別器学習画像生成プログラム１００を実行する。
【００４２】
入力装置２２０は、識別器学習画像生成プログラム１００で行なわれる処理のうち、ユーザ２０１からの入力に関わる処理を実行する。具体的には、後述する学習画像表示画面に対する入力を処理する。
【００４３】
表示装置２３０は、識別器学習画像生成プログラム１００で行なわれる処理のうち、ユーザ２０１に対する表示に関わる処理を実行する。具体的には、後述する学習画像表示画面の表示を制御する。
【００４４】
記憶装置２４０には、原画像データＤ１１０、検知データＤ１２０、及び学習画像データＤ１３０が記憶される。これらの各データに対し、情報処理装置２１０、入力装置２２０、及び表示装置２３０では、それぞれデータ処理、入力処理、及び表示処理が実行される。
【００４５】
なお、本実施例では、記憶装置２４０と記憶媒体２５０は別の装置（媒体）として扱っているが、これらは同一の装置（媒体）でも構わない。例えば、識別器学習画像生成プログラム１００は、記憶装置２４０に格納されていてもよく、通信回線などでアクセス可能な、識別器学習画像生成プログラム１００を実行する計算機とは異なる計算機に格納されていてもよい。
【００４６】
また、本実施例における記憶装置２４０及び記憶媒体２５０は、その実現方式を限定するものではない。例えば、ハードディスクドライブでも構わないし、半導体メモリでも構わない。
【００４７】
さらに、本実施例では単一の計算機による識別器学習画像生成システムを示したが、本発明による識別器学習画像生成システムは、必ずしも単一の計算機により実現される必要はない。例えば、２つの計算機が互いに通信機能を有する場合、一方の計算機上の入力装置２２０及び表示装置２３０を利用して入出力処理を実施し、もう一方の計算機上で情報処理装置２１０及び記憶装置２４０を利用してデータ処理及び記憶処理を実施するなどしても構わない。つまり、スタンドアロン型のシステムであっても、Ｗｅｂシステムなどのマルチクライアント型システムであっても構わない。
【００４８】
図３に、検知データＤ１２０のデータ形式とデータ例を示す。検知データＤ１２０は、検知処理Ｓ１３０（図１）によって検知された物体に関する情報（物体情報）を保持するデータであり、物体ＩＤ、物体検知時間、物体の位置情報、クラス情報、及び学習画像ファイルへのパスという各情報を持つ（図３では表記の都合上、表を２つに分けているが、実際は物体ＩＤ１つ当たり１行がつながっている表である）。このうち、クラス情報、及び学習画像ファイルへのパスは、画像分類処理Ｓ１７０で設定される。
【００４９】
物体ＩＤは、個々の物体情報を特定する識別子である。
【００５０】
物体検知時間は、物体が検知された時間的位置を示す。本実施例では、時間の管理単位として動画フレーム番号を用いる。従って、物体検知時間は、入力された動画の何フレーム目に物体が検知されたかを示している。なお、時間単位として実際の時間（年月日、時分秒、ミリ秒）を用いても構わない。
【００５１】
物体の位置情報は、検知された物体の物体座標、すなわち、物体に外接する矩形の、画像空間上での始点及び終点座標を示す。なお、本実施例では、座標の管理単位として画像空間上の画素位置（ピクセル）を用いているが、実空間上の３次元座標を座標単位に用いても構わない。
【００５２】
クラス情報は、学習画像に映っている物体がどのクラスに属するかを示す。
【００５３】
学習画像ファイルパスは、物体が映っている部分画像（学習画像候補）のファイルのパスを示す。
【００５４】
検知データＤ１２０は、画像分類処理Ｓ１７０でクラス情報、及び学習画像ファイルへのパスが設定されると、学習画像データＤ１３０内に登録される。
【００５５】
図４に、図１に示した候補統合処理Ｓ１４０の処理フローを示す。
【００５６】
まず、検知データＤ１２０に登録された物体情報群の中から、同一時刻に検知され、かつ、所定距離内に存在する物体（物体群）を選択する（ステップＳ４００）。本実施例では、この際の「所定距離」はあらかじめユーザが与えておくものとする。
【００５７】
次に、選択された物体群について、座標及びサイズの平均値を計算する（ステップＳ４１０）。
【００５８】
この平均値情報を基にして、物体群を１つに統合した代表物体の座標とサイズを計算する（ステップＳ４２０）。具体的な計算方法としては、統合前の物体群のうち、平均値に最も近いものを１つ選択して代表物体とする方法や、平均座標（始点及び終点）からサイズを求めて代表物体の領域を定義しなおす方法、始点平均座標と平均サイズから終点座標を求めて代表物体の領域を定義しなおす方法などが考えられる。
【００５９】
最後に、統合前の物体群のうち、代表物体（統合後の物体）以外の物体情報を消去する（ステップＳ４３０）。
【００６０】
図５に、図１に示した画像分類処理Ｓ１７０の処理フローを示す。
【００６１】
まず、画像切出し処理Ｓ１５０で切出された部分画像群（学習画像候補）のクラスタリング処理を行い（ステップＳ５００）、学習画像候補を１つ以上の集合（クラスタ）に分類する。具体的には、例えば、画像の各画素値を特徴量ベクトルとみなして、画像１枚当たり１個の特徴量ベクトルを構成したのち、各画像の特徴量ベクトルを公知のクラスタリング法（例えば、ｋ平均法やＭｅａｎ−Ｓｈｉｆｔ法など）でクラスタリングする。
【００６２】
次に、クラスタリング処理で得られたクラスタ毎に識別コードを割り振り、その識別コードを各画像が属するクラス名として、検知データＤ１２０のクラス情報（図３参照）に設定する（ステップＳ５１０）。
【００６３】
最後に、クラスタ毎に分けて画像ファイルを出力するとともに、検知データＤ１２０の学習画像ファイルパス情報（図３参照）を設定する（ステップＳ５２０）。画像ファイルは、出力フォルダなどを分けることで、クラスタ毎に分けて出力する。
【００６４】
図６に、図１に示した学習画像表示処理Ｓ１８０の処理フローを示す。
【００６５】
まず、最終的に採用された学習画像群を一覧表示する（ステップＳ６００）。
【００６６】
次に、表示した各学習画像がそれぞれどのクラスに属するか分かるように、クラス別に表示状態を変更する（ステップＳ６１０）。この表示の例は、図7を用いて説明する。
【００６７】
図７は、学習画像表示処理Ｓ１８０により表示される学習画像表示画面の例を示す。学習画像表示画面７００には、学習画像に関する表示情報として、縮小表示された学習画像７１０と、各学習画像７１０がどのクラスに属するかを示すクラス情報７２０とが表示される。また、クラスタリングに用いたパラメータ７３０も表示される。図７の例では、ｋ平均法を用いてクラスタ分割数を３つに設定してクラスタリングした例を示している。従って、パラメータ７３０には、クラスタ分割数（クラスタ数）が表示されている。学習画像表示画面７００は、表示装置２３０（図２）に表示される。
【００６８】
学習画像表示画面７００では、各学習画像７１０の表示状態が変更され、クラス別に学習画像７１０が表示されている。
【００６９】
なお、本実施例では、学習画像表示処理Ｓ１８０のクラス別に表示状態を変更（Ｓ６１０）する方法として、図７に示したようにクラス毎に行を分けた一覧表示の例を挙げた。学習画像の表示制御方法は、図７に示した表示例に限定されるものではなく、他の方法でも構わない。例えば、縮小した学習画像の散布図表示を行い、この縮小画像の枠の色をクラス別に変えて表示するなどの方法を用いても構わない。
【００７０】
以上、実施例１の構成によれば、ある程度実用的な性能を持つ検知アルゴリズムがあれば、ノイズを含む検知結果から不適切な検知結果を消去した上で、学習画像の候補を切出し、さらに、自動的にクラス毎に分類したうえでクラス名も付与して、学習画像ファイルを生成し表示することができる。なお、仮に学習画像ファイル群にノイズ画像が残ってしまった場合でも、正解画像のクラスタとは別の（小規模な）ノイズクラスタとして分けて画像出力するために、後段でのノイズ画像の目視除去作業にかかる工数は低減される。
【実施例２】
【００７１】
本発明による識別器学習画像生成プログラム、識別器学習画像生成方法、及び識別器学習画像生成システムの別の実施例を、図８〜図１１を使って説明する。
【００７２】
なお、本実施例では、動画像処理において、学習画像の候補は自動で収集するが、候補を学習画像として採用するかどうかの最終選択はユーザが手動で行う例について説明する。本実施例は、画像認識アルゴリズムの開発初期など、検知処理の性能が低い場合に有用である。
【００７３】
まず、図８を使って、実施例２における識別器学習画像生成プログラムの全体処理の概要を説明する。実施例２による識別器学習画像生成プログラム１００は、ループ処理Ｓ１１０、Ｓ１６０、画像入力処理Ｓ１２０、検知処理Ｓ１３０、候補統合処理Ｓ１４０、画像切出し処理Ｓ１５０、画像分類処理Ｓ８１０、学習画像表示処理Ｓ８２０、及び画像選択処理Ｓ８３０の各処理ステップによって構成され、原画像データＤ１１０、検知データＤ１２０、及び学習画像データＤ１３０の各データを入出力する。
【００７４】
原画像データＤ１１０から原画像を取り込んで学習画像候補を切出すまでの処理（ステップＳ１１０〜Ｓ１６０）、原画像データＤ１１０、検知データＤ１２０、及び学習画像データＤ１３０については、実施例１と同様であるので、説明を省略する。
【００７５】
また、実施例２による識別器学習画像生成システムの装置構成も、実施例１と同様であるので、説明を省略する。
【００７６】
Ｓ１２０からＳ１５０までの各処理を繰り返して学習画像候補の切出しが完了すると、次に、実施例２における画像分類処理を実行する（ステップＳ８１０）。この処理の詳細は後述する。
【００７７】
次に、実施例２における学習画像表示処理を実行（ステップＳ８２０）する。この処理の詳細は後述する。
【００７８】
最後に、ユーザによる画像選択処理（及び画像ファイル出力処理）を行う（ステップＳ８３０）。この処理の詳細は後述する。
【００７９】
つまり、実施例２は、ユーザが手動で画像選択するのに適した、実施例１とは別の分類及び表示処理を実施することで、ユーザによる学習画像選択の作業負荷を低減するという例である。
【００８０】
図９に、実施例２における画像分類処理Ｓ８１０の処理フローを示す。
【００８１】
まず、これから収集しようとする画像の代表例となる画像（代表画像）をユーザが選択すると、選択された代表画像を入力する（ステップＳ９００）。ユーザは、代表画像として、学習画像候補の中から選んだ画像を用いてもよいし、別に確保した画像を用いてもよい。
【００８２】
次に、代表画像に対する、学習画像候補の各画像それぞれの類似度または相違度を計算する（ステップＳ９１０）。類似度と相違度は、どちらか一方だけを計算してもよいし、両方とも計算してもよい。以下の説明では、類似度を計算して代表画像の選択に使用するものとする。相違度を使用する場合には、以下の説明で、「類似度が高い」を「相違度が低い」などと適宜読み替えればよい。
【００８３】
なお、類似度や相違度の計算には、公知の方法を用いることができる。例えば、正規化相関法による相関値を用いてもよいし、ＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅ）やＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）による相違度を用いてもよい。
【００８４】
次に、類似度順に学習画像候補の順位付けを行う（ステップＳ９２０）。
【００８５】
図１０に、実施例２における学習画像表示処理Ｓ８２０の処理フローを示す。
【００８６】
まず、ユーザが選択した代表画像を参照用として表示する（ステップＳ１０００）。
【００８７】
次に、学習画像候補を類似度順に表示する（ステップＳ１０１０）。具体的な表示例としては、学習画像候補が類似度順に順位づけされている場合は類似度の高い順に、相違度順に順位づけされている場合は相違度の低い順に、それぞれ並べて表示する。つまり、表示上は、代表画像に似ている画像が画面の上位に来るように並べて表示する。また、画像と合わせて、代表画像に対する各画像の類似度（または相違度）も表示する。
【００８８】
次に、与えられた類似度閾値条件を満たす画像の表示状態を変更し（ステップＳ１０２０）、与えられた個数閾値条件を満たす画像の表示状態を変更する（ステップＳ１０３０）。これらの表示の例は、図１１を用いて説明する。
【００８９】
図１１は、実施例２における学習画像表示画面の例を示す。実施例２における学習画像表示画面１１００には、代表画像に関する表示情報として、縮小表示された代表画像１１１０とその類似度１１２０が表示される。類似度は代表画像に対する類似の度合いなので、代表画像１１１０の類似度１１２０は１．００（＝１００％）である。また、学習画像候補に関する表示情報として、縮小表示された学習画像候補１１３０とその類似度１１４０が表示される。この際、各学習画像候補１１３０は、類似度１１４０が高いほうが画面の上位に来るように並び変えて表示される。
【００９０】
さらに、類似度閾値の設定領域１１５０及び個数閾値の設定領域１１６０を用いて、それぞれの閾値を設定することができる。ここで設定された閾値条件を満たす学習画像候補１１３０に対して、自動的に表示状態を変更する。学習画像候補１１３０の表示状態は、ユーザが手動で変更することもできる（図８のステップＳ８３０）。
【００９１】
なお、図１１に示した学習画像表示画面１１００では、類似度閾値を設定できるが、代表画像の選択に相違度を使用する場合には、相違度閾値を設定できるものとする。
【００９２】
以下、画像選択処理Ｓ８３０（図８）について説明する。
【００９３】
例えば、図１１の例では、まず、類似度閾値が０．６０以上を満たす学習画像候補１１３０（学習画像表示画面１１００上で１行目の３枚と２行１列目の１枚）に対して影付き表示１１７０し、表示状態を自動的に変更する。この表示変更状態を確認しながら、ユーザがマウスカーソル等により任意の学習画像候補を選択する。例えば、学習画像表示画面１１００上で２行２列目の学習画像候補１１３０は、類似度が０．４２であり類似度閾値条件（≧０．６０）を満たさないが、ユーザが意図的に選択して追加したことによって、影付き表示１１７０がされた例を示している。
【００９４】
学習画像候補１１３０の表示状態は、個数閾値によっても自動的に変更することができる。この場合は、類似度の高い順から、個数閾値として設定された数だけ、学習画像候補１１３０を影付き表示１１７０し、表示状態を自動的に変更する。学習画像候補１１３０の表示状態は、個数閾値によって変更した場合でも、ユーザが手動で変更できる。
【００９５】
最後に、表示状態が変更された学習画像候補１１３０に対し、学習画像表示画面１１００のクラス名入力領域１１８０に入力されたクラス名を付けて、画像ファイル出力（図８のステップＳ８３０）することで、最終的な学習画像が決定される。最終的な学習画像は、学習画像データＤ１３０に記録される。
【００９６】
なお、図１１の学習画像表示画面１１００では、表示状態変更の例として影付き表示を挙げたが、他の表示方法でもよい。例えば、画像枠線の太さや色を変更してもよいし、画像の隣にチェックボックスを準備しておき、該当する画像のチェックボックスだけを選択状態にすることにより表示状態変更を表す、という方法を用いてもよい。
【００９７】
なお、ステップＳ１０１０や図１１では、類似度の高い順（または相違度の低い順）に学習画像候補を並べて表示したが、類似度の低い順（または相違度の高い順）に並べて表示してもよい。これは、ノイズ画像を消去したい場合など、代表画像に似ていない画像（不正解画像）を選択したい場合に有用である。
【００９８】
以上、実施例２の構成によれば、ごく少数の正解画像（代表画像）を準備すれば、その正解画像に類似した学習画像を多数集める作業を容易に行うことができる。このような効果は、識別における特徴量の次元数が多く、多数の学習画像が必要なケースで特に有効である。
【実施例３】
【００９９】
本発明による識別器学習画像生成プログラム、識別器学習画像生成方法、及び識別器学習画像生成システムの別の実施例を、図１２〜図１５を使って説明する。
【０１００】
なお、本実施例では、静止画像処理において、学習画像の候補は自動で収集するが、候補を学習画像として採用するかどうかの最終選択はユーザが手動で行う例について説明する。本実施例は、実施例２と同様に、画像認識アルゴリズムの開発初期など、検知処理の性能が低い場合に有用であり、ＦＡ分野における不良判定など、入力画像が静止画で得られる場合に適用できる。
【０１０１】
まず、図１２を使って、実施例３における識別器学習画像生成プログラムの全体処理の概要を説明する。実施例３による識別器学習画像生成プログラム１００は、ループ処理Ｓ１１０、Ｓ１６０、画像入力処理Ｓ１２００、検知処理Ｓ１３０、候補統合処理Ｓ１４０、画像切出し処理Ｓ１５０、画像分類処理Ｓ１２１０、学習画像表示処理Ｓ１８０、及び画像選択処理Ｓ１２２０の各処理ステップによって構成され、原画像データＤ１１０、検知データＤ１２０、及び学習画像データＤ１３０の各データを入出力する。
【０１０２】
原画像データＤ１１０から原画像を取り込んで学習画像候補を切出すまでの処理（ステップＳ１１０〜Ｓ１６０）の構成は、実施例１、２と同様である。ただし、画像入力処理（ステップＳ１２００）は異なっており、ループ処理Ｓ１１０、Ｓ１６０は、Ｓ１２００からＳ１５０までの各処理を静止画Ｉについて繰り返す。また、学習画像表示処理Ｓ１８０、原画像データＤ１１０、及び学習画像データＤ１３０は、実施例１と同様であるが、検知データＤ１２０は異なる。
【０１０３】
画像入力処理Ｓ１２００、画像分類処理Ｓ１２１０、画像選択処理Ｓ１２２０、及び検知データＤ１２０については、後述する。実施例１と同様の処理（ステップＳ１１０、Ｓ１３０〜Ｓ１６０、Ｓ１８０）とデータ（Ｄ１１０、Ｄ１３０）については、説明を省略する。
【０１０４】
また、実施例３による識別器学習画像生成システムの装置構成も、実施例１と同様であるので、説明を省略する。
【０１０５】
ここで、画像入力処理Ｓ１２００について説明する。実施例１、２の画像入力処理Ｓ１２０（図１、図８）では、動画中のフレームから切出した１枚の静止画を入力していた。実施例３の画像入力処理Ｓ１２００では、原画像データＤ１１０から静止画を１枚読み込み、原画像として入力する処理を行う（ステップＳ１２００）。
【０１０６】
ステップＳ１１０〜Ｓ１６０の処理によって学習画像候補の切出しが完了すると、次に、実施例３における画像分類処理を実行する（ステップＳ１２１０）。この処理の詳細は後述する。
【０１０７】
次に、実施例１と同様の学習画像表示処理を実行する（ステップＳ１８０）。
【０１０８】
最後に、実施例３における画像選択処理を行う（ステップＳ１２２０）。この処理の詳細は後述する。
【０１０９】
つまり、実施例３は、動画ではなく静止画から学習画像候補を切出し、実施例１、２とは異なる画像分類及び画像選択処理を実施することで、ユーザによる学習画像選択の作業負荷を低減するという例である。
【０１１０】
図１３に、実施例３における検知データＤ１２０のデータ形式とデータ例を示す。実施例３における検知データＤ１２０は、実施例１、２と同様に、物体ＩＤ、物体の位置情報、クラス情報、及び学習画像ファイルへのパスという各情報を物体情報として持つ。実施例１、２と異なる点は、物体検知時間を持たず、原画像ファイルパスを保持する点である。
【０１１１】
実施例１、２では、原画像データＤ１１０の中の動画からある時刻に該当する静止画を切出して原画像として入力するために、物体検知時間を保持していた。本実施例は、静止画像処理への適用例であり、画像を入力するには原画像となる静止画像へのファイルパス情報が必要となる。検知データＤ１２０は、この情報を原画像ファイルパスとして保持する。
【０１１２】
なお、図１３では、表記の都合上、図３と同様に表を２つに分けているが、実際は物体ＩＤ１つ当たり１行がつながった表である。
【０１１３】
図１４に、実施例３における画像分類処理Ｓ１２１０の処理フローを示す。画像分類処理Ｓ１２１０では、実施例１と同様に、画像切出し処理Ｓ１５０で切出された部分画像群（学習画像候補）のクラスタリング処理（ステップＳ５００）と、クラス情報設定処理（ステップＳ５１０）を行う。実施例１の画像分類処理Ｓ１７０との違いは、この時点では学習画像ファイルを出力しない点である。なお、クラスタリング処理（ステップＳ５００）とクラス情報設定処理（ステップＳ５１０）の具体的な処理内容も、実施例１と同様である。
【０１１４】
図１５に、実施例３における画像選択処理Ｓ１２２０の処理フローを示す。
【０１１５】
まず、図１２に示した全体処理における前段の学習画像表示処理Ｓ１８０によって、図７に示した学習画像表示画面７００と同様の学習画像表示画面が表示される。この学習画像表示画面に対し、ユーザが、マウスカーソル等で各学習画像が属するクラスの修正を行う（ステップＳ１５００）。具体的には、学習画像表示画面内で、不適切なクラスに分類されている画像を、適切なクラス領域に移動させる。
【０１１６】
次に、学習画像群として出力するクラスがユーザにより選択されると（ステップＳ１５１０）、選択されたクラスに属する画像ファイル群を学習画像として出力する（ステップＳ１５２０）。
【０１１７】
以上、実施例３の構成によれば、大まかなクラス分類は計算機で自動処理するが、そのクラス分類に誤りがある場合にはユーザが修正でき、所望のクラスの学習画像を出力することができる。このような効果は、多クラスを識別する際に、クラス間で学習画像サンプル数の偏りが大きく特定のクラスの画像を増やしたいケースで特に有効である。
【０１１８】
なお、本発明では、上記の実施例における任意の１つの処理ステップを２つ以上の処理ステップに分割して実現してもよく、また、２つ以上の任意の処理ステップを統合して１つの処理ステップとして実現してもよい。さらに、本発明による処理を実行する計算機環境において、上記の実施例における任意の１つの処理手段（処理ステップをハードウェアで実装した機能ブロック）を２つ以上の処理手段に分割して実現してもよく、また、２つ以上の任意の処理手段を統合して１つの処理手段として実現してもよい。上記の実施例は、本発明の提供する機能を損なわない限り、その実現形態を制約するものではない。
【符号の説明】
【０１１９】
１００…識別器学習画像生成プログラム、２００…識別器学習画像生成システム、２１０…情報処理装置、２２０…入力装置、２３０…表示装置、２４０…記憶装置、２５０…記憶媒体、７００…学習画像表示画面、７１０…学習画像、７２０…クラス情報、７３０…パラメータ、１１００…学習画像表示画面、１１１０…代表画像、１１２０…類似度、１１３０…学習画像候補、１１４０…類似度、１１５０…類似度閾値の設定領域、１１６０…個数閾値の設定領域、１１７０…影付き表示、１１８０…クラス名入力領域、Ｓ１１０…ループ処理、Ｓ１２０…画像入力処理、Ｓ１３０…検知処理、Ｓ１４０…候補統合処理、Ｓ１５０…画像切出し処理、Ｓ１６０…ループ処理、Ｓ１７０…画像分類処理、Ｓ１８０…学習画像表示処理、Ｓ８１０…画像分類処理、Ｓ８２０…学習画像表示処理、Ｓ８３０…画像選択処理、Ｓ１２００…画像入力処理、Ｓ１２１０…画像分類処理、Ｓ１２２０…画像選択処理、Ｄ１１０…原画像データ、Ｄ１２０…検知データ、Ｄ１３０…学習画像データ。
【図１】
2011145791.tif 000003
【図２】
2011145791.tif 000004
【図３】
2011145791.tif 000005
【図４】
2011145791.tif 000006
【図５】
2011145791.tif 000007
【図６】
2011145791.tif 000008
【図７】
2011145791.tif 000009
【図８】
2011145791.tif 000010
【図９】
2011145791.tif 000011
【図１０】
2011145791.tif 000012
【図１１】
2011145791.tif 000013
【図１２】
2011145791.tif 000014
【図１３】
2011145791.tif 000015
【図１４】
2011145791.tif 000016
【図１５】
2011145791.tif 000017