Top > Search of Japanese Patents > AUTOMATIC EVOLUTIONAL IMAGE CLASSIFICATION DEVICE, FILTER STRUCTURE GENERATION METHOD AND PROGRAM > Specification

Specification :(In Japanese)進化型画像自動分類装置、フィルタ構造生成方法、及びプログラム

Country (In Japanese)日本国特許庁(JP)
Gazette (In Japanese)特許公報(B2)
Patent Number P4660765
Publication number P2007-213480A
Date of registration Jan 14, 2011
Date of issue Mar 30, 2011
Date of publication of application Aug 23, 2007
Title of the invention, or title of the device (In Japanese)進化型画像自動分類装置、フィルタ構造生成方法、及びプログラム
IPC (International Patent Classification) G06T   7/00        (2006.01)
FI (File Index) G06T 7/00 350D
G06T 7/00 300F
Number of claims or invention 9
Total pages 21
Application Number P2006-035085
Date of filing Feb 13, 2006
Date of request for substantive examination Feb 9, 2009
Patentee, or owner of utility model right (In Japanese)【識別番号】504182255
【氏名又は名称】国立大学法人横浜国立大学
Inventor, or creator of device (In Japanese)【氏名】長尾 智晴
【氏名】森 喬顯
Representative (In Japanese)【識別番号】100111800、【弁理士】、【氏名又は名称】竹内 三明
Examiner (In Japanese)【審査官】松永 稔
Document or reference (In Japanese)特開平11-213127(JP,A)
特開2006-251955(JP,A)
特開2005-253708(JP,A)
後藤 邦博 Kunihiro Goto,遺伝的アルゴリズムを用いた有効画像特徴量学習による物体認識 Object Recognition by Learning Effective Image Features Using Genetic Algorithm,電気学会論文誌C Vol.122-C No.6 The Transactions of The Institute of Electrical Engineers of Japan,日本,(社)電気学会 The Institute of Electrical Engineers of Japan,2002年 6月 1日,第122-C巻
松井 和宏、佐藤 晴夫,遺伝的特徴選択を取り入れたブースティング,電子情報通信学会技術研究報告. PRMU, パターン認識・メディア理解,日本,社団法人電子情報通信学会 ,2003年 3月 7日,102(708),pp.87-92
松井 和宏、菅波 雄介、小杉 幸夫,MRI組織分類における遺伝的アルゴリズムによる特徴量の選択,電子情報通信学会論文誌. D-II, 情報・システム, II-情報処理 ,日本,社団法人電子情報通信学会,1997年 7月25日,J80-D-2(7),pp.1712-1721
藤嶋 航、長尾 智晴,GPによる構造最適化とGAによる数値最適化を併用した画像処理自動生成法PT-ACTIT,映像情報メディア学会誌 : 映像情報メディア,日本,社団法人映像情報メディア学会 ,2005年11月 1日,59(11),pp.1687-1693
Field of search G06T 7/00
Scope of claims (In Japanese)【請求項1】
画像の特徴量群から当該画像の分類を判定する機械学習による識別器に入力する特徴量群を算出する特徴量群算出部に入力する変換画像データを、変換対象の画像データを変換して生成するフィルタ群の構成を定義するフィルタ構造を個体として、世代毎に設けられる個体集団から、適応度に従って一部の個体群を選択し、選択した個体群に含まれる個体の生殖処理により世代交代させる進化的計算により、最適解あるいは実用解となる個体であるフィルタ構造を探索する進化型画像自動分類装置であって、以下の要素を有することを特徴とする進化型画像自動分類装置
(1)フィルタ構造を個体として、世代毎に個体集団を記憶する個体集団記憶部
(2)前記特徴量群算出部と前記識別器を有し、世代毎に、個体集団記憶部に記憶している個体集団に含まれる各個体であるフィルタ構造について、学習用画像データを変換対象として当該フィルタ構造に従って学習用の変換画像データを生成し、生成した学習用の変換画像データから特徴量群を算出し、学習用の変換画像データの特徴量群を入力して学習用画像データの正解の分類である学習用分類データを出力するように識別器を学習させ、評価用画像データを変換対象として前記フィルタ構造に従って評価用の変換画像データを生成し、生成した評価用の変換画像データから特徴量群を算出し、前記学習した識別器に、評価用の変換画像データの特徴量群を入力して分類結果を出力させ、分類結果が評価用画像データの正解の分類である評価用分類データと一致する正答率を算出し、算出した正答率を適応度として、各個体の適応度を算出する適応度計算部
(3)世代毎に、算出した適応度に従って個体集団から一部の個体群を選択する個体選択部
(4)世代毎に、選択した個体群に含まれる個体のフィルタ構造から次世代の個体となるフィルタ構造を生殖処理により生成し、生成したフィルタ構造群を次世代の個体集団として個体集団記憶部に記憶させる生殖部。
【請求項2】
フィルタ構造は、順次前段フィルタの出力画像データを入力して画像を変換する多段フィルタを示すフィルタ識別情報の列であることを特徴とする請求項1記載の進化型画像自動分類装置。
【請求項3】
進化型画像自動分類装置は、更に、実用解の条件となる適応度基準を、前記算出した適応度が越えた場合に、当該適応度のフィルタ構造を出力する学習個体出力部を有することを特徴とする請求項1記載の進化型画像自動分類装置。
【請求項4】
画像の特徴量群から当該画像の分類を判定する機械学習による識別器と、識別器に入力する特徴量群を算出する特徴量群算出部と、特徴量群算出部に入力する変換画像データを、変換対象の画像データを変換して生成するフィルタ群の構成を定義するフィルタ構造を個体として、世代毎に個体集団を記憶する個体集団記憶部とを有し、世代毎に設けられる個体集団から、適応度に従って一部の個体群を選択し、選択した個体群に含まれる個体の生殖処理により世代交代させる進化的計算により、最適解あるいは実用解となる個体であるフィルタ構造を探索する進化型画像自動分類装置によるフィルタ構造生成方法であって、以下の要素を有することを特徴とするフィルタ構造生成方法
(1)世代毎に、個体集団記憶部に記憶している個体集団に含まれる各個体であるフィルタ構造について、学習用画像データを変換対象として当該フィルタ構造に従って学習用の変換画像データを生成し、生成した学習用の変換画像データから特徴量群を算出し、学習用の変換画像データの特徴量群を入力して学習用画像データの正解の分類である学習用分類データを出力するように識別器を学習させ、評価用画像データを変換対象として前記フィルタ構造に従って評価用の変換画像データを生成し、生成した評価用の変換画像データから特徴量群を算出し、前記学習した識別器に、評価用の変換画像データの特徴量群を入力して分類結果を出力させ、分類結果が評価用画像データの正解の分類である評価用分類データと一致する正答率を算出し、算出した正答率を適応度として、各個体の適応度を算出する適応度計算工程
(2)世代毎に、算出した適応度に従って個体集団から一部の個体群を選択する個体選択工程
(3)世代毎に、選択した個体群に含まれる個体のフィルタ構造から次世代の個体となるフィルタ構造を生殖処理により生成し、生成したフィルタ構造群を次世代の個体集団として個体集団記憶部に記憶させる生殖工程。
【請求項5】
フィルタ構造は、順次前段フィルタの出力画像データを入力して画像を変換する多段フィルタを示すフィルタ識別情報の列であることを特徴とする請求項4記載のフィルタ構造生成方法。
【請求項6】
フィルタ構造生成方法は、更に、実用解の条件となる適応度基準を、前記算出した適応度が越えた場合に、当該適応度のフィルタ構造を出力する学習個体出力工程を有することを特徴とする請求項4記載のフィルタ構造生成方法。
【請求項7】
画像の特徴量群から当該画像の分類を判定する機械学習による識別器と、識別器に入力する特徴量群を算出する特徴量群算出部と、特徴量群算出部に入力する変換画像データを、変換対象の画像データを変換して生成するフィルタ群の構成を定義するフィルタ構造を個体として、世代毎に個体集団を記憶する個体集団記憶部とを有し、世代毎に設けられる個体集団から、適応度に従って一部の個体群を選択し、選択した個体群に含まれる個体の生殖処理により世代交代させる進化的計算により、最適解あるいは実用解となる個体であるフィルタ構造を探索する進化型画像自動分類装置となるコンピュータに、以下の手順を実行させるためのプログラム
(1)世代毎に、個体集団記憶部に記憶している個体集団に含まれる各個体であるフィルタ構造について、学習用画像データを変換対象として当該フィルタ構造に従って学習用の変換画像データを生成し、生成した学習用の変換画像データから特徴量群を算出し、学習用の変換画像データの特徴量群を入力して学習用画像データの正解の分類である学習用分類データを出力するように識別器を学習させ、評価用画像データを変換対象として前記フィルタ構造に従って評価用の変換画像データを生成し、生成した評価用の変換画像データから特徴量群を算出し、前記学習した識別器に、評価用の変換画像データの特徴量群を入力して分類結果を出力させ、分類結果が評価用画像データの正解の分類である評価用分類データと一致する正答率を算出し、算出した正答率を適応度として、各個体の適応度を算出する適応度計算手順
(2)世代毎に、算出した適応度に従って個体集団から一部の個体群を選択する個体選択手順
(3)世代毎に、選択した個体群に含まれる個体のフィルタ構造から次世代の個体となるフィルタ構造を生殖処理により生成し、生成したフィルタ構造群を次世代の個体集団として個体集団記憶部に記憶させる生殖手順。
【請求項8】
フィルタ構造は、順次前段フィルタの出力画像データを入力して画像を変換する多段フィルタを示すフィルタ識別情報の列であることを特徴とする請求項7記載のプログラム。
【請求項9】
プログラムは、更に、実用解の条件となる適応度基準を、前記算出した適応度が越えた場合に、当該適応度のフィルタ構造を出力する学習個体出力手順をコンピュータに実行させることを特徴とする請求項7記載のプログラム。
Detailed description of the invention (In Japanese)【技術分野】
【0001】
本発明は、画像から算出した特徴量群を用いた識別器(分類器ともいう。)による画像の分類装置に係り、特徴量群算出部の前段に設けたフィルタ列を進化的計算により最適化させることにより、特徴量群算出部のインプット画像として、当該識別器による分類に適した変換画像データを得ることにより、画像の分類の精度を向上させる技術に関する。
【背景技術】
【0002】
近年工業製品製造ラインにおいて、機械によるオートメーション化が急速に進んでいる。検品ラインにおいても不良品の抽出を画像を用いてコンピュータで処理することにより自動化する取り組みがおこなわれている。しかし現状では疵を認識する際の条件を画像処理の熟練者が手動でプログラムを組むなど、多大なコストと時間が必要とされている。さま最近パターン認識の分野で高い汎化能力を示す学習方法が考案されているが、それらを適用してもなお人間の識別能力に及ばない。
【0003】
そこで発明者の所属している研究室が提案している進化的画像処理とこれらのパターン認識の手法を組み合わせることにより、高い認識結果を得られる識別器の獲得を目指すのが本発明の目的である。進化的画像処理とは与えられた任意の画像処理を最適化問題として定式化し、その問題を進化的計算法によって解く考え方である。
【0004】
パターン認識とは、認識対象がいくつかの概念に分類できるとき、観測されたパターンをそれらの概念のうちのひとつに対応させる処理である。たとえば数字の認識は入力パターンを0~9の10種類の数字のいずれかに対応させることが目的である。
【0005】
パターンを認識する機械を実現するためには特徴量抽出と学習・識別のふたつの課程で行われる。特徴量抽出では認識対象から何らかの特徴量を計測・抽出し、それを数値化する。このような特徴量はまとめて特徴ベクトルx=(x1、x2、…、xMTとして表される。もし特徴ベクトルの選び方が適切ならば、同じクラスの特徴ベクトルは互いに似ており、異なるクラスの特徴ベクトルは互いに違っていると考えられる。ここで得られた特徴ベクトルからその対象がどのクラスに属するかを判定する識別方法を学習する。そのためにはまずクラスの帰属が既知の学習用のサンプル集合から特徴ベクトルとクラスとの確率的な対応関係を知識として学習することが必要である。このような学習は教師あり学習と呼ばれている。次に学習された特徴ベクトルとクラスとの対応関係に関する確率的知識を利用して、与えられた未知の認識対象の特徴からその認識対象がどのクラスに属していたかを決定する方式が必要となる。その際間違って識別する確率をできるだけ小さくすることが望ましい。この未知のデータに対する識別能力を汎化能力とよぶ。パターン認識の手法としてサポートベクタマシン(Support Vector Machine:SVM)を用いた。
【0006】
SVMを用いた画像分類装置について説明する。図25は、従来技術における識別器の学習実行処理に係る構成を示す図である。学習用画像データ2502と学習用分類データ2502のセットである学習用画像分類データセット2501をL個用意し、特徴量群算出部2504で学習用画像データ2502から複数の特徴量を算出する。そしてこれらの特徴量群と学習用分類データ2503を対として識別器2505に入力する処理をL個の学習用画像分類データセットについて行ない、学習実行処理を行なう。
【0007】
図26は、従来技術における識別器の分類実行処理に係る構成を示す図である。特徴量群算出部2504で判定用画像データ2601の特徴量群を算出し、その特徴量群を識別器2505に入力し、分類実行処理することにより、判定用画像データ2601の分類結果を得る。
【0008】
このようにSVMを用いた画像分類において、分類の正答率を向上させる方法として2通りのアプローチがある。ひとつはSVMの入力として、目的とする分類に適した特徴量を選択すること、もうひとつは画像からより的確に特徴量を抽出することである。
【0009】
既存の画像解析ソフトでは、1枚の画像から100を超える特徴量を得ることができる。これらの特徴量すべてをSVMに入力して分類することもできるが、実際には適切な入力特徴を選ぶことが汎化能力の向上につながる。逆に言えば特徴量を増やせば増やすほど汎化能力が向上するとは限らないのである。したがって目的とする分類に適した特徴量を用意することが重要になる。
【0010】
また画像から特徴量を算出する際に、たとえば画像にノイズがのっていて対象とする物体を的確に抽出することができない場合などは特徴量の値も正確ではなくなり、分類に悪影響を及ぼすと考えられる。このようなことを解決するためには画像にあらかじめ画像フィルタを適用し、対象物体の特徴量を的確に抽出できるようにすることが考えられる。しかしながら現在画像処理の分野で用いられているフィルタの数は膨大であり、どのフィルタをどのような順序で適用すればよいかを人手で判断するのは非常に困難である。発明者の所属する研究室ではこのような問題をGAなどの進化計算法を用いて解決する進化的画像処理を提案している。進化的画像処理とはフィルタの構造をGAや遺伝的プログラミング(Genetic Programming; GP)に適用し、目的とする画像処理を自動構築するものである。

【特許文献1】特開2001-134763号公報
【特許文献2】特開2005-309535号公報
【発明の開示】
【発明が解決しようとする課題】
【0011】
本発明では画像分類において正答率を向上させることを目標に、画像から的確な特徴量を抽出することに重きを置いて、2通りの方法を提案する。いずれも原画像をSVMでの識別器に入力する前に画像フィルタを複数回適用する構造とし、その構造をGAによって学習するものである。
【課題を解決するための手段】
【0012】
本発明に係る進化型画像自動分類装置は、
画像の特徴量群から当該画像の分類を判定する機械学習による識別器に入力する特徴量群を算出する特徴量群算出部に入力する変換画像データを、変換対象の画像データを変換して生成するフィルタ群の構成を定義するフィルタ構造を個体として、世代毎に設けられる個体集団から、適応度に従って一部の個体群を選択し、選択した個体群に含まれる個体の生殖処理により世代交代させる進化的計算により、最適解あるいは実用解となる個体であるフィルタ構造を探索する進化型画像自動分類装置であって、以下の要素を有することを特徴とする。
(1)フィルタ構造を個体として、世代毎に個体集団を記憶する個体集団記憶部
(2)前記特徴量群算出部と前記識別器を有し、世代毎に、個体集団記憶部に記憶している個体集団に含まれる各個体であるフィルタ構造について、学習用画像データを変換対象として当該フィルタ構造に従って学習用の変換画像データを生成し、生成した学習用の変換画像データから特徴量群を算出し、学習用の変換画像データの特徴量群を入力して学習用画像データの正解の分類である学習用分類データを出力するように識別器を学習させ、評価用画像データを変換対象として前記フィルタ構造に従って評価用の変換画像データを生成し、生成した評価用の変換画像データから特徴量群を算出し、前記学習した識別器に、評価用の変換画像データの特徴量群を入力して分類結果を出力させ、分類結果が評価用画像データの正解の分類である評価用分類データと一致する正答率を算出し、算出した正答率を適応度として、各個体の適応度を算出する適応度計算部
(3)世代毎に、算出した適応度に従って個体集団から一部の個体群を選択する個体選択部
(4)世代毎に、選択した個体群に含まれる個体のフィルタ構造から次世代の個体となるフィルタ構造を生殖処理により生成し、生成したフィルタ構造群を次世代の個体集団として個体集団記憶部に記憶させる生殖部。
【0013】
フィルタ構造は、順次前段フィルタの出力画像データを入力して画像を変換する多段フィルタを示すフィルタ識別情報の列であることを特徴とする。
【0014】
進化型画像自動分類装置は、更に、実用解の条件となる適応度基準を、前記算出した適応度が越えた場合に、当該適応度のフィルタ構造を出力する学習個体出力部を有することを特徴とする。
【0015】
本発明に係るフィルタ構造生成方法は、
画像の特徴量群から当該画像の分類を判定する機械学習による識別器と、識別器に入力する特徴量群を算出する特徴量群算出部と、特徴量群算出部に入力する変換画像データを、変換対象の画像データを変換して生成するフィルタ群の構成を定義するフィルタ構造を個体として、世代毎に個体集団を記憶する個体集団記憶部とを有し、世代毎に設けられる個体集団から、適応度に従って一部の個体群を選択し、選択した個体群に含まれる個体の生殖処理により世代交代させる進化的計算により、最適解あるいは実用解となる個体であるフィルタ構造を探索する進化型画像自動分類装置によるフィルタ構造生成方法であって、以下の要素を有することを特徴とする。
(1)世代毎に、個体集団記憶部に記憶している個体集団に含まれる各個体であるフィルタ構造について、学習用画像データを変換対象として当該フィルタ構造に従って学習用の変換画像データを生成し、生成した学習用の変換画像データから特徴量群を算出し、学習用の変換画像データの特徴量群を入力して学習用画像データの正解の分類である学習用分類データを出力するように識別器を学習させ、評価用画像データを変換対象として前記フィルタ構造に従って評価用の変換画像データを生成し、生成した評価用の変換画像データから特徴量群を算出し、前記学習した識別器に、評価用の変換画像データの特徴量群を入力して分類結果を出力させ、分類結果が評価用画像データの正解の分類である評価用分類データと一致する正答率を算出し、算出した正答率を適応度として、各個体の適応度を算出する適応度計算工程
(2)世代毎に、算出した適応度に従って個体集団から一部の個体群を選択する個体選択工程
(3)世代毎に、選択した個体群に含まれる個体のフィルタ構造から次世代の個体となるフィルタ構造を生殖処理により生成し、生成したフィルタ構造群を次世代の個体集団として個体集団記憶部に記憶させる生殖工程。
【0016】
フィルタ構造生成方法は、更に、実用解の条件となる適応度基準を、前記算出した適応度が越えた場合に、当該適応度のフィルタ構造を出力する学習個体出力工程を有することを特徴とする。
【0017】
本発明に係るプログラムは、
画像の特徴量群から当該画像の分類を判定する機械学習による識別器と、識別器に入力する特徴量群を算出する特徴量群算出部と、特徴量群算出部に入力する変換画像データを、変換対象の画像データを変換して生成するフィルタ群の構成を定義するフィルタ構造を個体として、世代毎に個体集団を記憶する個体集団記憶部とを有し、世代毎に設けられる個体集団から、適応度に従って一部の個体群を選択し、選択した個体群に含まれる個体の生殖処理により世代交代させる進化的計算により、最適解あるいは実用解となる個体であるフィルタ構造を探索する進化型画像自動分類装置となるコンピュータに、以下の手順を実行させることを特徴とする。
(1)世代毎に、個体集団記憶部に記憶している個体集団に含まれる各個体であるフィルタ構造について、学習用画像データを変換対象として当該フィルタ構造に従って学習用の変換画像データを生成し、生成した学習用の変換画像データから特徴量群を算出し、学習用の変換画像データの特徴量群を入力して学習用画像データの正解の分類である学習用分類データを出力するように識別器を学習させ、評価用画像データを変換対象として前記フィルタ構造に従って評価用の変換画像データを生成し、生成した評価用の変換画像データから特徴量群を算出し、前記学習した識別器に、評価用の変換画像データの特徴量群を入力して分類結果を出力させ、分類結果が評価用画像データの正解の分類である評価用分類データと一致する正答率を算出し、算出した正答率を適応度として、各個体の適応度を算出する適応度計算手順
(2)世代毎に、算出した適応度に従って個体集団から一部の個体群を選択する個体選択手順
(3)世代毎に、選択した個体群に含まれる個体のフィルタ構造から次世代の個体となるフィルタ構造を生殖処理により生成し、生成したフィルタ構造群を次世代の個体集団として個体集団記憶部に記憶させる生殖手順。
【0018】
プログラムは、更に、実用解の条件となる適応度基準を、前記算出した適応度が越えた場合に、当該適応度のフィルタ構造を出力する学習個体出力手順をコンピュータに実行させることを特徴とする。
【発明の効果】
【0019】
本発明によれば、画像から算出した特徴量群を用いた識別器による画像分類装置において、特徴量群算出部の前段に設けたフィルタ列を進化的計算により最適化させることにより、特徴量群算出部のインプット画像として、当該識別器による分類に適した変換画像データを得ることが出来る。これにより、画像分類の精度を向上させることができる。
【発明を実施するための最良の形態】
【0020】
実施の形態1.
SVMでの識別器構成の前にフィルタ列を適用する構造として、まず図1及び図2に示すような構造を考えた。つまりSVMの入力である全特徴量に対して、ある特定の1つのフィルタ列を対応させるものである。(以下この構造を[1:全]構造と表現する。)ここでフィルタ列をGAの学習対象とする。
【0021】
識別器は、機械学習により画像の特徴量群から当該画像の分類を判定するように構成されている。そして、本装置は、この識別器による学習実行処理と分類実行処理の二段階の処理を通じてフィルタ列の適応度を算出する。図1は、識別器の学習実行処理に係る構成を示す図である。学習用画像データ102と学習用分類データ103のセットである学習用画像分類データセット101をN個用意し、学習用画像データ102をフィルタ列104で画像変換し、特徴量群算出部105でその学習用の変換画像データから異なる複数の特徴量を算出する。そしてこれらの特徴量群と学習用分類データ103を対として識別器2505に入力する処理をN個の学習用画像分類データセットについて行ない、学習実行処理を行なう。学習用分類データ103は、学習用画像データ102の正解の分類を示している。
【0022】
このようにして識別器106で学習した結果を用いて、別に用意した評価用画像データを分類し、その結果の正答率を評価する。図2は、識別器の分類実行処理に係る構成を示す図である。評価用画像データ202と評価用分類データ203のセットである評価用画像分類データセット201をM個用意し、評価用画像データ202をフィルタ列104で画像変換し、特徴量群算出部105でその評価用の変換画像データから異なる複数の特徴量を算出する。そしてこれらの特徴量群を識別器2505に入力し、分類実行処理を行なう。そして分類結果が評価用分類データ203と一致するか否かを判定する。一致する場合には正答とし、不一致の場合には誤答とする。これらの処理をM個の評価用画像分類データセットについて行ない、正答率を算出する。そして、この正答率をGAの適応率として扱い、最適あるいは実用的なフィルタ列を導き出す。
【0023】
評価用分類データ203は、評価用画像データ102の正解の分類を示している。また、フィルタ列は、変換対象の画像データを変換して生成するフィルタ群の構成を定義するフィルタ構造の例である。
【0024】
このモデルは、たとえば画像が撮影された環境やカメラの性能が原因で全体的に暗くなってしまった画像やノイズがのってしまった画像に対し、それぞれガンマ補正フィルタなどで明るくしたり、ノイズ除去系のフィルタでノイズ除去する構造が学習されることを期待している。このようなフィルタ列が得られれば画像中の対象物がより鮮明になり、SVMでの分類が容易になって正答率の向上に結びつくのではないかと考えた。ここでフィルタ列の構造として様々なものが考えられる。たとえば木構造状フィルタやネットワーク状フィルタ、階層型フィルタなどである。これらのフィルタ構造は表現力が高く、高い性能を得ることが期待できる。従って、1本の直列構造のフィルタ列に限らず、他のフィルタ構造であっても構わない。
【0025】
学習は染色体をビット列ではなく実数値をそのまま用いる実数値GAを使用した。用意したフィルタ群のそれぞれに固有のフィルタ番号を割り振り、その番号を染色体に用いた。つまり、この例ではフィルタ列は、順次前段フィルタの出力画像データを入力して画像を変換する多段フィルタを示すフィルタ識別情報の列である。フィルタの長さは固定とし、画像に対して何も手を加えないNOPフィルタ(NonOperator)を用意して擬似的に可変となるようにした。また用いるフィルタとして、画像を急激に変換するようなフィルタはその画像の特徴量が失われてしまう可能性が高く適切でない。したがってあまり急激に変化しないようなフィルタを用意した。
【0026】
画像フィルタの例を示す。
番号 名称:内容
F0 NOP:何もしない(Non Operator)
F1 反転:階調値を反転させる
F2 最大値:注目画素の8近傍の階調値の最大値に置き換える
F3 最小値:注目画素の8近傍の階調値の最小値に置き換える
F4 中央値:注目画素の8近傍の階調値の中央値に置き換える
F5 平均値:注目画素の8近傍の階調値の平均値に置き換える
F6 レンジ:注目画素の8近傍の階調値の最大値と最小値の差に置き換える
F7 分散:注目画素の8近傍の分散に置き換える
F8 Prewitt:プレヴィットフィルタ
F9 Sobel:ゾーベルフィルタ
F10 縦エッジ:縦エッジを強調する
F11 横エッジ:横エッジを強調する
F12 Laplacian:ラプラシアンフィルタ
F13 鮮鋭化:エッジを強調して先鋭化する
F14 原画像差分:原画像との階調値の差分
F15 LightPixel:判別分析法による二値化しきい値より暗い画素を0
F16 DarkPixel:判別分析法による二値化しきい値より明るい画素を255
F17 二値化しきい値距離:注目画素の階調値と二値化しきい値との差に置き換える
F18 ガンマ補正(+):ガンマ補正(γ=2)
F19 ガンマ補正(-):ガンマ補正(γ=0。5)
F20 線形濃度変換:最小階調値と最大階調値の間で線形の濃度変換を行う
F21 非線形濃度変換:階調値0と255の間で非線形の濃度変換を行う
特徴量の例を示す。
番号 名称:内容
P0 平均階調値:画像中に含まれる階調値の平均値
P1 標準偏差:全画素の階調値の標準偏差
P2 最大階調値:画像中に含まれる階調値の最大値
P3 最小階調値:画像中に含まれる階調値の最小値
P4 レンジ:全画素の階調値の最大値から最小値を引いたもの
P5 1σ内確率:平均階調値±標準偏差に収まっている画素数の割合
P6 3σ外確率:平均階調値±3×標準偏差に収まっていない画素数の割合
P7 第1四分位数:階調値を昇順に並べたとき下から1/4の位置にあたる階調値
P8 中央値:階調値を昇順に並べたとき中央の位置にあたる階調値
P9 第3四分位数:階調値を昇順に並べたとき下から3/4の位置にあたる階調値
P10 最頻値:もっとも出現頻度の高い階調値
P11 歪度:階調値分布の非対称性をあらわす
P12 尖度:階調値分布のとがり具合をあらわす
P13 判別分析法しきい値:判別分析法による二値化の際のしきい値
P14 低位クラス内分散:二値化時の階調値の低い方のグループ内の分散
P15 高位クラス内分散:二値化時の階調値の高い方のグループ内の分散
P16 クラス間分散:二値化時の高低のグループ間の分散
P17 領域数:二値化後の対象領域数
P18 平均周長:二値化後の対象領域の周長の平均値
P19 最大周長:二値化後の対象領域の周長の最大値
P20 平均フェレ径縦横比:二値化後の対象領域の外接矩形の縦横比の平均値
P21 最大フェレ径縦横比:二値化後の対象領域の外接矩形の縦横比の最大値
P22 合計領域面積:二値化後の対象領域の面積の合計値
P23 平均領域面積:二値化後の対象領域の面積の平均値
P24 最大領域面積:二値化後の対象領域の面積の最大値
P25 平均円形度:二値化後の対象領域の円形度(4πS/L2)の平均
P26 水平ライン差分率:二値化後の水平ラインスキャン時に上下ラインでの階調値相違画素数の割合
P27 垂直ライン差分率:二値化後の垂直ラインスキャン時に左右ラインでの階調値相違画素数の割合
P28 最大角度:二値化後の対象領域の傾き角度の最大値
P29 最小角度:二値化後の対象領域の傾き角度の最小値
P30 平均角度:二値化後の対象領域の傾き角度の平均値
続いて、本発明に係る進化型画像自動分類装置について詳述する。図3は、進化型画像自動分類装置の構成を示す図である。進化型画像自動分類装置は、セットデータ入力部301、学習用画像分類データセット評価用画像分類データセット記憶部302、初期個体入力部303、個体集団記憶部304、適応度計算部305、適応度記憶部306、個体選択部307、選択個体記憶部308、生殖部309、及び学習個体出力部310を有している。
【0027】
図4は、進化計算アルゴリズムによる学習処理のフローを示す図である。まず、セットデータ入力部301による学習用画像分類データセット、評価用画像分類データセット入力処理(S401)を行ない、入力した学習用画像分類データセットと評価用画像分類データセットを学習用画像分類データセット評価用画像分類データセット記憶部302に記憶させる。
【0028】
次に、初期個体入力部303による初期個体入力処理(S402)で、初期個体となるフィルタ列を入力し、個体集団記憶部304に記憶させる。フィルタ列は無作為に生成されたものでよい。
【0029】
世代交代終了判定処理(S406)で、終了と判定するまで世代交代の処理を繰り返す。具体的には、適応度計算部305による適応度計算処理(S403)、個体選択部307による個体選択処理(S404)、生殖部309による生殖処理(S405)を繰り返す。当該世代の各個体(フィルタ列)の適応度を算出する適応度計算処理(S403)については、図5~図15を用いて後述する。個体選択部307による個体選択処理(S404)では、適応度に従って一部の個体群を選択する。例えば、適応度の高い個体から順に所定数の個体を選択する。生殖処理(S405)では、選択された所定数の個体を元に次世代の個体(フィルタ列)を生成する。この処理については、図16を用いて後述する。
【0030】
世代交代終了判定処理(S406)で終了と判定すると、最終世代の個体(フィルタ列)について適応度計算部305で適応度を計算し(S407)、学習個体出力部310による学習個体出力処理(S408)でそのフィルタ列と適応度を出力する。世代交代終了判定部(図示せず)では、最適解あるいは実用解を得られたと判断した場合に、終了とする。例えば、適応度が所定世代数を交代しても一定になった場合に最適解と判断して、終了する。あるいは、予め実用解の条件となる適応度基準を設定しておき、その適応度基準を前記算出した適応度が越えた場合に、終了する。
【0031】
前述の適応度計算部305による適応度計算処理(S403)について詳述する。図5は、適応度計算部の構成を示す図である。適応度計算部305は、分類学習部501、評価分類部502、及び正答率算出部503を有している。
【0032】
図6は、適応度計算処理フローを示す図である。個体(フィルタ列)毎に以下の処理を繰り返す(S601)。まず、分類学習部501による分類学習処理(S602)を行なう。この処理では、当該フィルタ列を識別器の前段に設けて識別器の学習を行なう。
【0033】
図7は、分類学習部の構成を示す図である。分類学習部501は、フィルタ列画像変換部701、特徴量群算出部702、識別器学習実行部703、及び識別器学習データ記憶部704を有している。識別器学習実行部703と識別器学習データ記憶部704は、識別器106の一部を構成している。つまり、分類学習部501は、識別器106の学習実行に係る構成を利用している。
【0034】
図8は、分類学習処理フローを示す図である。学習用画像データ毎に以下の処理を繰り返す(S801)。まず、フィルタ列画像変換部701によるフィルタ列画像変換処理(S802)を行なう。
【0035】
図9は、フィルタ列画像変換部の構成を示す図である。フィルタ列画像変換部701は、フィルタ選択部901、フィルタ実行部902~904、及び画像データバッファ906,907を有している。
【0036】
図10は、フィルタ列画像変換処理フローを示す図である。まず、学習用画像データを画像データバッファAに書き込み(S1001)、入力バッファポインタに画像データバッファAのポインタを設定し、出力バッファポインタに画像データバッファBのポインタを設定する(S1002)。入力バッファポインタと出力バッファポインタは、フィルタ選択部901内に設けられている。そして、フィルタの列に従って、順次フィルタ番号毎に以下の処理を繰り返す(S1003)。フィルタ番号により特定されるフィルタ実行部に入力バッファポインタと出力バッファポインタをセットし、当該フィルタ実行部を起動する(S1004)。フィルタ実行部は、入力バッファポインタにより特定される画像データバッファから画像データを読込み、画像を変換し、変換した画像を出力バッファポインタにより特定される画像データバッファに書込む。フィルタ実行部の処理が終了すると、入力バッファポインタと出力バッファポインタを切り替える(S1005)。この処理を、すべてのフィルタ番号について行なった時点で(S1006)、出力バッファポインタで特定される画像データバッファから変換画像データを出力する(S1007)。
【0037】
次に、特徴量群算出部702による特徴量群算出処理(図8のS803)を行なう。図11は、特徴量群算出部の構成を示す図である。複数の特徴量算出部1101~1103を有している。これらの特徴量算出部は、識別器のインプットの仕様として決定された所定の特徴量に対応する。
【0038】
図12は、特徴量群算出処理フローを示す図である。それぞれの特徴量算出部に、変換画像データを入力して特徴量を算出する。この例では、第一特徴量算出部1101による第一特徴量算出処理(S1201)、第二特徴量算出部1102による第二特徴量算出処理(S1202)、第三特徴量算出部1103による第三特徴量算出処理(S1203)を行なっている。
【0039】
そして、すべての学習用画像データについて特徴量群を算出した時点(図8のS804)で、識別器学習実行部703による識別器学習実行処理(S805)を行なう。特徴量群と学習用分類データの対をN個入力し、識別器としての学習を行なう。学習の結果は、識別器学習データ(SVMでは、分類値ということもある。)として識別器学習データ記憶部704に格納される。このデータは、後述する識別器の分類実行処理で用いられる。
【0040】
次に、評価分類部502による評価分類処理(図6のS603)を行なう。この処理では、学習した識別器の前段に当該フィルタ列を設けて、識別器による評価用画像の分類を行なう。
【0041】
図13は、評価分類部の構成を示す図である。評価分類部502は、フィルタ列画像変換部701、特徴量群算出部702、識別器分類実行部1301、及び識別器学習データ記憶部704を有している。識別器分類実行部1301と識別器学習データ記憶部704は、識別器106の一部を構成している。つまり、評価分類部502は、識別器106の分類実行に係る構成を利用している。
【0042】
図14は、評価分類処理フローを示す図である。評価用画像データ毎に以下の処理を繰り返し(S1401~S1404)、それぞれに分類結果を得る。分類学習処理と同様にフィルタ列画像変換部701によるフィルタ列画像変換処理(S1402)を行ない、次に特徴量群算出部702による特徴量群算出処理(S1403)を行なう。そして、識別器分類実行部1301による識別器分類実行処理(S1404)を行なう。この処理では、評価用の変換画像データの特徴量群を入力し、識別器学習データを用いて分類結果を算出する。そして、すべての評価用画像データについて処理した時点で終了する(S1405)。
【0043】
次に、正答率算出部503による正答率算出処理(図6のS604)を行なう。この処理では、評価用画像に対する分類結果の正答率を算出する。
【0044】
図15は、正答率算出処理フローを示す図である。分類結果毎に以下の処理を繰り返す(S1501)。分類結果は、元となった評価用画像データに対応する評価用分類データと一致するか判定し(S1502)、一致した場合には、正答数(初期値=0)をインクリメントしてカウントアップする(S1503)。そして、すべての分類結果について処理した時点で(S1504)、正答数を分類結果数(M)で割って、商を正答率とする(S1505)。
【0045】
図6の適応度算出処理は、すべての個体について上述の処理した時点で終了する。(図6のS605)
前述の生殖部309による生殖処理(図4のS405)について説明する。図16は、生殖処理フローを示す図である。交叉処理により得る個体数と、突然変異処理により得る個体数と、延命処理により得る個体数を決定する(S1601)。交叉処理(S1602)では、その個体数分の新たな個体を得る交叉を行なう。交叉は、選択個体記憶部308から複数の個体を選択し、その個体であるフィルタ列の交叉点を設定し、複数のフィルタ列間で交叉点以降の列や交叉点間のフィルタ番号列(染色体列)を相互に交換し、新たなフィルタ列を生成する。突然変異処理(S1603)では、その個体数分の新たな個体を得る突然変異を行なう。突然変異は、選択個体記憶部308から個体を選択し、変異させる単数あるいは部分列のフィルタ番号(染色体)を選択し、他のフィルタに置き換える処理を行なう。他のフィルタは、無作為に決定してよい。延命処理(S1604)では、その個体数分の個体を選択個体記憶部308から選択し、そのまま次世代の個体とする。このようにして得られた新たな個体群を、個体集団更新処理(S1605)により個体集団記憶部304に書き込む。つまり、現世代の個体群を次世代の個体群に更新する。
【0046】
実施の形態2.
前述の[1:全]構造では、SVMの入力にあたる特徴量の意味を無視して1つのフィルタ列を学習する構造であった。これに対し、それぞれの特徴量に、より分類しやすくなるような値を入力できるように図17から図19のような構造を考えた。つまりSVMの入力である特徴量それぞれに対して、1つのフィルタ列を対応させるものである。(以下この構造を[1:1]構造と表現する。)[1:全]構造と同様に、フィルタ列をGAの学習対象とする。
【0047】
この構造は前述の改善に加え、SVMに入力するある特徴量に対し、その特徴量が画像の種類ごとに明確にされるようなフィルタ列が得られることを期待したものである。たとえば希望する画像の分類がエッジが多い画像とそうでない画像であったときに、エッジ検出のフィルタと領域面積の特徴量を対応させることによって分類が容易になると考えられる。ここで、全特徴量にエッジ検出フィルタを適用することはよい結果を得られるとは考えにくく、特徴量ごとにフィルタを用意することは有用であると考えた。その一方で特徴量ごとにフィルタ列を用意することから、GAでの最適化において探索空間が膨大になり、最適解が得られにくい、あるいは時間がかかることが考えられる。
【0048】
フィルタ列の学習は、それぞれのフィルタ列部分を1つにつなげて1フィルタ列とみなし、[1:全]構造と同様の手法で学習した。
【0049】
図17は、実施の形態2に係るフィルタ列の構成を示す図である。図に示すように、1つのフィルタ列を、複数のフィルタ列部分1701~1703の連なりとして扱う。
【0050】
図18は、実施の形態2に係る識別器の学習実行処理に係る構成を示す図である。第一特徴量用フィルタ列部分1701により変換した第一特徴量用変換画像データを、特徴量群算出部105による第一特徴量算出に用い、同様に第二特徴量用フィルタ列部分1702により変換した第二特徴量用変換画像データを、特徴量群算出部105による第二特徴量算出に用い、第三特徴量用フィルタ列部分1703により変換した第三特徴量用変換画像データを、特徴量群算出部105による第三特徴量算出に用いる。
【0051】
図19は、実施の形態2に係る識別器の分類実行処理に係る構成を示す図である。分類実行処理でも、学習実行処理と同様にそれぞれの特徴量別変換画像データ(第一特徴量用変換画像データ、第二特徴量用変換画像データ、第三特徴量用変換画像データのこと)をそれぞれの特徴量算出に用いる。
【0052】
図20は、実施の形態2に係る分類学習部の構成を示す図である。フィルタ列画像変換部701への入力が、複数の特徴量別フィルタ列部分(第一特徴量用フィルタ列部分、第二特徴量用フィルタ列部分、第三特徴量用フィルタ列部分のこと)となる。
【0053】
図21は、実施の形態2に係るフィルタ列画像変換部の構成を示す図である。図22は、実施の形態2に係るフィルタ列画像変換処理フローを示す図である。特徴量別フィルタ列部分毎に以下の処理を繰り返す(S2201)。S2204では、当該特徴量用フィルタ列部分から、順次フィルタ番号毎に以下の処理を繰り返す。特徴量別フィルタ列部分に対応するループ処理が終了する毎に(S2201~S2207)、出力バッファポインタで特定される画像データバッファから特徴量別変換画像データを出力する(S2208)。そして、すべての特徴量別フィルタ列部分について処理した時点で終了する(S2209)。
【0054】
図23は、実施の形態2に係る特徴量群算出部の構成を示す図である。各特徴量算出部は、専用に変換された特徴量別変換画像データを用いてそれぞれの特徴量を算出する。
図24は、実施の形態2に係る評価分類部の構成を示す図である。分類学習部の構成と同様に、フィルタ列画像変換部701への入力が、複数の特徴量別フィルタ列部分となる。
【0055】
生殖処理では、前述の形態と同様にフィルタ列全体として交叉処理、突然変異処理、及び延命処理を行なう方法の他、特徴量別フィルタ列部分毎に交叉処理、突然変異処理、及び延命処理を行なう方法も有効である。
【0056】
前述の例では、識別器の例としては、SVMに限らず他のクラスタリングを用いてもよい。例えば、ニューラルネットワークなどの他の機械学習による識別器を用いても良い。その場合には、特徴量群を入力し、分類データを出力するように、学習用神経回路網を誤差逆伝播法で学習させ、その結果得られた結合荷重が識別器学習データとなる。そして、学習用神経回路網と同様の構成の分類用神経回路網に、特徴量群を入力し、識別器学習データ記憶部の結合荷重に従って神経回路網演算処理を行い、処理結果として分類結果を出力する。
【0057】
進化型画像自動分類装置は、コンピュータであり、各要素はプログラムにより処理を実行することができる。また、プログラムを記憶媒体に記憶させ、記憶媒体からコンピュータに読み取られるようにすることができる。コンピュータは、バスに、演算装置、データ記憶装置、メモリが接続されている。データ記憶装置は、例えばROM(Read Only Memory)やハードディスクである。メモリは、通常RAM(Random Access Memory)である。プログラムは、通常データ記憶装置に記憶されており、メモリにロードされた状態で、順次演算装置に読み込まれ処理を行う。
【図面の簡単な説明】
【0058】
【図1】識別器の学習実行処理に係る構成を示す図である。
【図2】識別器の分類実行処理に係る構成を示す図である。
【図3】進化型画像自動分類装置の構成を示す図である。
【図4】進化計算アルゴリズムによる学習処理のフローを示す図である。
【図5】適応度計算部の構成を示す図である。
【図6】適応度計算処理フローを示す図である。
【図7】分類学習部の構成を示す図である。
【図8】分類学習処理フローを示す図である。
【図9】フィルタ列画像変換部の構成を示す図である。
【図10】フィルタ列画像変換処理フローを示す図である。
【図11】特徴量群算出部の構成を示す図である。
【図12】特徴量群算出処理フローを示す図である。
【図13】評価分類部の構成を示す図である。
【図14】評価分類処理フローを示す図である。
【図15】正答率算出処理フローを示す図である。
【図16】生殖処理フローを示す図である。
【図17】実施の形態2に係るフィルタ列の構成を示す図である。
【図18】実施の形態2に係る識別器の学習実行処理に係る構成を示す図である。
【図19】実施の形態2に係る識別器の分類実行処理に係る構成を示す図である。
【図20】実施の形態2に係る分類学習部の構成を示す図である。
【図21】実施の形態2に係るフィルタ列画像変換部の構成を示す図である。
【図22】実施の形態2に係るフィルタ列画像変換処理フローを示す図である。
【図23】実施の形態2に係る特徴量群算出部の構成を示す図である。
【図24】実施の形態2に係る評価分類部の構成を示す図である。
【図25】従来技術における識別器の学習実行処理に係る構成を示す図である。
【図26】従来技術における識別器の分類実行処理に係る構成を示す図である。
【符号の説明】
【0059】
101 学習用画像分類データセット、102 学習用画像データ、103 学習用分類データ、104 フィルタ列、105 特徴量群算出部、106 識別器201、 評価用画像分類データセット、202 評価用画像データ、203 評価用分類データ、204 正答率算出部、301 セットデータ入力部302、 学習用画像分類データセット評価用画像分類データセット記憶部、303 初期個体入力部、304 個体集団記憶部、305 適応度計算部、306 適応度記憶部、307 個体選択部、308 選択個体記憶部、309 生殖部、310 学習個体出力部、501 分類学習部、502 評価分類部、503 正答率算出部、701 フィルタ列画像変換部、702 特徴量群算出部、703 識別器学習実行部、704 識別器学習データ記憶部、901 フィルタ選択部、902~904 フィルタ実行部、905 画像データバッファA、906 画像データバッファB、1101 第一特徴量算出部、1102 第二特徴量算出部、1103 第三特徴量算出部、1301 識別器分類実行部、1701 第一特徴量用フィルタ列部分、1702 第二特徴量用フィルタ列部分、1703 第三特徴量用フィルタ列部分、2501 学習用画像分類データセット、2502 学習用画像データ、2503 学習用分類データ、2504 特徴量群算出部、2505 識別器、2601 判定用画像データ。
Drawing
(In Japanese)【図1】
0
(In Japanese)【図2】
1
(In Japanese)【図3】
2
(In Japanese)【図4】
3
(In Japanese)【図5】
4
(In Japanese)【図6】
5
(In Japanese)【図7】
6
(In Japanese)【図8】
7
(In Japanese)【図9】
8
(In Japanese)【図10】
9
(In Japanese)【図11】
10
(In Japanese)【図12】
11
(In Japanese)【図13】
12
(In Japanese)【図14】
13
(In Japanese)【図15】
14
(In Japanese)【図16】
15
(In Japanese)【図17】
16
(In Japanese)【図18】
17
(In Japanese)【図19】
18
(In Japanese)【図20】
19
(In Japanese)【図21】
20
(In Japanese)【図22】
21
(In Japanese)【図23】
22
(In Japanese)【図24】
23
(In Japanese)【図25】
24
(In Japanese)【図26】
25