プログラム及び情報処理システム
【課題】画像の分類精度を従来よりも高くする。
【解決手段】判別基準値算出部30が、複数の分類それぞれについて、受付画像の特徴量と、複数の学習画像の特徴量と、に基づいて、受付画像が当該分類に属するか否かを判別する判別基準値を特定する。属否可能性算出部34が、複数の分類それぞれについて、複数の学習画像に基づいて特定される、その分類に属する画像が他の分類にも属する可能性、あるいは、その分類に属さない画像が他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、その分類と他の分類についての判別基準値と、に基づいて、受付画像がその分類に属する可能性の高低を表す値を特定する。出力部38が、属否可能性算出部34により特定される値に基づいて特定される、受付画像が属する分類を示す情報を出力する。
【解決手段】判別基準値算出部30が、複数の分類それぞれについて、受付画像の特徴量と、複数の学習画像の特徴量と、に基づいて、受付画像が当該分類に属するか否かを判別する判別基準値を特定する。属否可能性算出部34が、複数の分類それぞれについて、複数の学習画像に基づいて特定される、その分類に属する画像が他の分類にも属する可能性、あるいは、その分類に属さない画像が他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、その分類と他の分類についての判別基準値と、に基づいて、受付画像がその分類に属する可能性の高低を表す値を特定する。出力部38が、属否可能性算出部34により特定される値に基づいて特定される、受付画像が属する分類を示す情報を出力する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム及び情報処理システムに関する。
【背景技術】
【0002】
近年、画像に検索のためのキーワード(標識、ラベル)を自動的に付与する画像自動アノテーション技術が、画像検索のための1つの重要な技術となっている。この技術により、人がキーワードを画像に付与する作業を不要とすることができる。
【0003】
非特許文献1には、画像から局所的な特徴量を抽出して、その画像全体の分布を計算して画像特徴とし、各ラベルに対して設けられた確率化したバイナリサポートベクタマシンにより、ラベルの事後確率を計算し、一番高い事後確率に対応するラベルを未知画像に付与する技術が開示されている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】K.S.Goh, "Using One-Classand Two-Class SVMs for Multiclass Image Annotation", IEEE Trans. OnKnowledge and Data Engineering, Vol.17, No.10, Oct.2005
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明は、画像の分類精度を従来よりも高くすることを目的とする。
【課題を解決するための手段】
【0006】
請求項1に記載の発明は、プログラムであって、複数の分類のうちの少なくとも1つの分類を特定する対象となる画像を受け付ける画像受付手段、前記複数の分類それぞれについて、前記画像受付手段が受け付ける画像の特徴量と、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像の特徴量と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属するか否かを判別する基準となる判別基準値を特定する判別基準値特定手段、前記複数の分類それぞれについて、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像に基づいて特定される、当該分類に属する画像が他の分類にも属する可能性、あるいは、当該分類に属さない画像が前記他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、当該分類と前記他の分類についての前記判別基準値と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する分類属否可能性特定手段、前記分類属否可能性特定手段により特定される前記値に基づいて特定される、前記画像受付手段が受け付ける画像が属する少なくとも1つの分類を示す情報を出力する出力手段、としてコンピュータを機能させることとしたものである。
【0007】
請求項2に記載の発明は、請求項1に記載のプログラムであって、前記分類属否可能性特定手段が、前記各分類について、当該分類とは異なるすべての分類それぞれについての前記相関情報及び前記判別基準値の組合せに基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定することとしたものである。
【0008】
請求項3に記載の発明は、情報処理システムであって、複数の分類のうちの少なくとも1つの分類を特定する対象となる画像を受け付ける画像受付手段と、前記複数の分類それぞれについて、前記画像受付手段が受け付ける画像の特徴量と、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像の特徴量と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属するか否かを判別する基準となる判別基準値を特定する判別基準値特定手段と、前記複数の分類それぞれについて、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像に基づいて特定される、当該分類に属する画像が他の分類にも属する可能性、あるいは、当該分類に属さない画像が前記他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、当該分類と前記他の分類についての前記判別基準値と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する分類属否可能性特定手段と、前記分類属否可能性特定手段により特定される前記値に基づいて特定される、前記画像受付手段が受け付ける画像が属する少なくとも1つの分類を示す情報を出力する出力手段と、を含むこととしたものである。
【発明の効果】
【0009】
請求項1,3に記載の発明によれば、本発明の構成を有しない場合と比較して、画像の分類精度が高くなる。
【0010】
請求項2に記載の発明によれば、画像がある分類に属する可能性の高低が、その分類とは異なるすべての分類との間の相関に基づいて特定される。
【図面の簡単な説明】
【0011】
【図1】本発明の一実施形態に係る情報処理装置のハードウェア構成の一例を示す図である。
【図2】本発明の一実施形態に係る情報処理装置により実現される機能の一例を示す機能ブロック図である。
【図3】学習モデル情報の一例を示す図である。
【図4】第1の相関マトリックス情報の一例を示す図である。
【図5】第2の相関マトリックス情報の一例を示す図である。
【図6】確率モデル情報の一例を示す図である。
【図7】本実施形態に係る情報処理装置で行われる処理の流れの一例を示すフロー図である。
【図8】比較例における確率モデル情報の一例を示す図である。
【図9】第1の相関マトリックス情報の一例を示す図である。
【図10】第2の相関マトリックス情報の一例を示す図である。
【図11】標識の認識率の比較結果の一例を示す図である。
【図12】標識motorbikeに対する判別基準値によって、最適化された標識sheepのsigmoid関数の一例を示す図である。
【図13】標識motorbikeに対する判別基準値によって、最適化された標識sheepのsigmoid関数の一例を示す図である。
【図14】標識の認識率の比較結果の一例を示す図である。
【図15】標識personに対する判別基準値によって、最適化された標識catのsigmoid関数の一例を示す図である。
【図16】標識personに対する判別基準値によって、最適化された標識catのsigmoid関数の一例を示す図である。
【図17】確率モデル情報に含まれるパラメータチルダAの一具体例を示す図である。
【発明を実施するための形態】
【0012】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【0013】
図1は、本実施形態に係る情報処理システムとして機能する情報処理装置10のハードウェア構成の一例を示す図である。図1に例示するように、本実施形態に係る情報処理装置10は、例えば、制御部12、記憶部14、ユーザインタフェース(UI)部16、を含んでいる。これらの要素は、バスなどを介して接続される。制御部12は、CPU等のプログラム制御デバイスであり、情報処理装置10にインストールされるプログラムに従って動作する。記憶部14は、ROMやRAM等の記憶素子やハードディスクドライブなどである。記憶部14には、制御部12によって実行されるプログラムなどが記憶される。また、記憶部14は、制御部12のワークメモリとしても動作する。UI部16は、ディスプレイ、マイク、マウス、キーボードなどであり、利用者が行った操作の内容や、利用者が入力した音声を制御部12に出力する。また、このUI部16は、制御部12から入力される指示に従って情報を表示出力したり音声出力したりする。
【0014】
図2は、本実施形態に係る情報処理装置10により実現される機能の一例を示す機能ブロック図である。図2に例示するように、情報処理装置10は、本実施形態では、例えば、画像受付部20、学習モデル情報記憶部22、相関マトリックス情報記憶部24、確率モデル情報記憶部26、特徴量抽出部28、判別基準値算出部30、判別基準値重み付け部32、属否可能性算出部34、分類決定部36、出力部38、学習部40、を含むものとして機能する。学習モデル情報記憶部22、相関マトリックス情報記憶部24、確率モデル情報記憶部26は、記憶部14を主として実現される。その他の要素は制御部12を主として実現される。また、学習部40は、例えば、サポートベクタマシン等の識別器を含んでいる。
【0015】
これらの要素は、コンピュータである情報処理装置10にインストールされたプログラムを、情報処理装置10の制御部12で実行することにより実現されている。このプログラムは、例えば、CD−ROM、DVD−ROMなどのコンピュータ読み取り可能な情報記録媒体を介して、あるいは、インターネットなどの通信手段を介して情報処理装置10に供給される。
【0016】
本実施形態では、例えば、画像受付部20が受け付ける画像に、予め定められたL種類の標識(ラベル)のうちの少なくとも1つが関連付けられることとなる。本実施形態では、L種類の標識それぞれに、標識番号j(j=1,・・・,L)が割り当てられている。また、本実施形態では、標識と画像の分類とが1対1で対応している。すなわち、ある分類に属する画像には、その分類に対応する標識が関連付けられることとなる。なお、画像は複数の分類に属することもあり得る。その場合には、画像に複数の標識が関連付けられることとなる。
【0017】
本実施形態では、学習モデル情報記憶部22に、予め、図3に例示する学習モデル情報50が記憶されている。本実施形態では、学習モデル情報50は、情報処理装置10が学習の対象となる複数の画像(学習画像)を学習することにより生成される。学習モデル情報50は、上述の標識番号、サポートベクタ情報、パラメータ情報、を含んでいる。学習モデル情報50は、例えば、標識に対応する特徴量と他の標識に対応する特徴量とを識別するバイナリサポートベクタマシンの学習モデルを表す情報である。サポートベクタ情報及びパラメータ情報は、後述する判別基準値を算出する基礎となる情報である。また、図3に示すように、標識番号iに対応付けられるサポートベクタ情報の値は(xi1,xi2,・・・,xiNi)、パラメータ情報の値は(ai1,ai2,・・・,aiNi)及びbiである。学習画像に基づく、学習モデル情報50の生成処理については後述する。
【0018】
また、本実施形態では、相関マトリックス情報記憶部24に、予め、図4に例示する第1の相関マトリックス情報52−1、及び、図5に例示する第2の相関マトリックス情報52−2が記憶されている。第1の相関マトリックス情報52−1、及び、第2の相関マトリックス情報52−2は、情報処理装置10が複数の学習画像を学習することにより生成される。これらの学習画像は、学習モデル情報50の生成の際に用いられる学習画像と同じであっても異なっていても構わない。第1の相関マトリックス情報52−1のi行j列の値Rijには、例えば、標識番号jの標識が関連付けられている学習画像に標識番号iの標識も関連付けられている条件付確率P(Ci|Cj)と、学習画像に標識番号iの標識が関連付けられている確率P(Ci)との差の絶対値Rij=|P(Ci)−P(Ci|Cj)|が設定される。学習画像に標識番号jの標識が関連付けられているときに、その学習画像に標識番号iの標識も関連付けられている場合には、そうでない場合よりもP(Ci|Cj)の値が大きくなる。一方、学習画像に標識番号jの標識が関連付けられていないときに、その学習画像に標識番号iの標識も関連付けられていない場合には、そうでない場合よりもP(Ci|Cj)の値が小さくなる。いずれにしても、標識番号iの標識と標識番号jの標識とに学習画像に関連付けられているか否かについての相関がある場合には、|P(Ci)−P(Ci|Cj)|の値は大きくなる。一方、その相関がない場合は、|P(Ci)−P(Ci|Cj)|の値は小さくなる。独立である場合は、|P(Ci)−P(Ci|Cj)|の値はゼロとなる。
【0019】
一方、第2の相関マトリックス情報52−2のi行j列の値R’ijには、例えば、標識番号jの標識が関連付けられていない学習画像に標識番号iの標識も関連付けられていない条件付確率P(C’i|C’j)と、学習画像に標識番号iの標識が関連付けられていない確率P(C’i)との差の絶対値R’ij=|P(C’i)−P(C’i|C’j)|が設定される。
【0020】
また、本実施形態では、確率モデル情報記憶部26に、予め、図6に例示する確率モデル情報54が記憶されている。本実施形態では、確率モデル情報54は、情報処理装置10が複数の学習画像を学習することにより生成される。これらの学習画像は、確率モデル情報54の生成の際に用いられる学習画像と同じであっても異なっていても構わない。確率モデル情報54は、L行L列の行列(i行j列の値はチルダAij(上方に〜が配置されたAij))であるパラメータチルダA及び各行に割り当てられる要素(i行に対応付けられるこの要素の値はチルダBi(上方に〜が配置されたBi))であるパラメータチルダBが含まれている。本実施形態では、図6に示すように、確率モデル情報54における、i行目のパラメータが、標識番号iの標識に対応するパラメータとなっている。確率モデル情報54は、本実施形態では、例えば、sigmoid関数のパラメータベクトルである。学習画像に基づく、確率モデル情報54の生成処理については後述する。
【0021】
ここで、本実施形態に係る情報処理装置10で行われる処理の流れの一例を、図7に例示するフロー図を参照しながら説明する。
【0022】
まず、画像受付部20が、分類の対象となる画像(すなわち、上述のL種類の標識のうちの少なくとも1つが関連付けられることとなる画像)を受け付けて、この画像の画素行列を出力する(S101)。以下、S101に示す処理で受け付ける画像を、受付画像と呼ぶこととする。なお、S101に示す処理で、一般的な前処理(例えば、移動、色の修正、変形、フォーマットの変換、ノイズ削除等)を行ってもよい。
【0023】
そして、特徴量抽出部28が、例えば、受付画像の特徴量を特定する(S102)。本処理例では、特徴量抽出部28は、例えば、受付画像に含まれる各画素のRGB値、normalized−RGB値、HSV値、LAB値、robustHue特徴量(van de Weijer, C. Schmid, "Coloring Local Feature Extraction", ECCV 2006を参照)Gabor特徴量、DCT特徴量、SIFT特徴量、GIST特徴量等を特定する。そして、特徴量抽出部28は、予め、学習コーパスからK−Meansクラスタリングによって生成されたコードブックに基づいて、抽出された特徴量を量子化する。そして、特徴量抽出部28は、量子化された特徴量の受付画像全体におけるヒストグラムを、S102に示す処理における特徴量ベクトルxとして特定する。
【0024】
そして、判別基準値算出部30が、S102に示す処理で特定された受付画像の特徴量と、学習モデル情報記憶部22に予め記憶されている学習モデル情報50とに基づいて、受付画像が各分類に属するか否か(受付画像に標識を関連付けるか否か)を判別する基準となる値である判別基準値を算出する(S103)。本実施形態では、判別基準値算出部30は、例えば、各分類について(各標識について)、判別基準値を算出する。例えば、判別基準値算出部30は、次式を計算することにより、標識番号iの標識に対応付けられる判別基準値Fi(i=1,・・・,L)を算出する。なお、次式において、Kはカーネル関数(例えば、ガウシアンカーネル)、太文字のxはS102に示す処理で特定される受付画像の特徴量ベクトルである。xinは、学習モデル情報50に含まれるサポートベクタ情報の値である。ain及びbiの値は、学習モデル情報50に含まれるパラメータ情報の値である。判別基準値Fiは、標識に対応する分類に属する画像については、大きな値をとり、その他の画像については小さな値をとる。判別基準値は、例えば、対応する分類と他の分類とを識別するバイナリサポートベクタマシンの決定関数の出力である。
【0025】
【数1】
【0026】
そして、判別基準値重み付け部32が、S103に示す処理で算出された、標識番号iの標識に対応付けられる判別基準値Fi(i=1,・・・,L)に対する、相関マトリックス情報52に基づく重み付けを行う(S104)。判別基準値重み付け部32は、具体的には、例えば、各標識について、その標識に対応付けられるL個の重み付け済判別基準値を算出する。以下、標識番号iの標識に対応付けられるL個の重み付け済判別基準値をF’ij(j=1,・・・,L)で表すこととする。
【0027】
判別基準値重み付け部32は、例えば、標識番号j(j=1,・・・,L)の標識に対応付けられる判別基準値Fjの値がゼロより大きい際に、第1の相関マトリックス情報52−1に含まれる値Rjiが予め定められた閾値よりも大きいか否かを確認する。そして、判別基準値重み付け部32は、値Rjiが閾値よりも大きい場合に、重みwijの値を1に設定し、そうでない場合に、重みwijの値を0に設定する。標識番号j(j=1,・・・,L)の標識に対応付けられる判別基準値Fjの値がゼロより小さい際に、第2の相関マトリックス情報52−2に含まれる値R’jiが予め定められた閾値よりも大きいか否かを確認する。そして、判別基準値重み付け部32は、値R’jiが閾値よりも大きい場合に、重みwijの値を1に設定し、そうでない場合に、重みwijの値を0に設定する。そして、判別基準値重み付け部32は、F’ij=Fj×wijという数式に従って、F’ij(j=1,・・・,L)の値を算出する。以上の処理を各i(i=1,・・・,L)について繰り返し実行することで、F’ij(i=1,・・・,L,j=1,・・・,L)の値が算出される。
【0028】
そして、属否可能性算出部34が、F’ijの値、及び、確率モデル情報54に基づいて、次式を計算することにより、各i(i=1,・・・,L)についての、属否可能性の値チルダpi(上方に〜が配置されたpi)の値を算出する(S105)。次式において、Tは特徴量を表している。チルダAij及びチルダBiの値は、上述の確率モデル情報54に含まれる値を指す。チルダpiは標識番号iの標識に対応する事後確率である。
【0029】
【数2】
【0030】
そして、分類決定部36は、チルダpi(i=1,・・・,L)の値に基づいて、受付画像が属する分類(すなわち、受付画像に関連付けられる標識)を決定する(S106)。本実施形態では、分類決定部36は、例えば、チルダpi(i=1,・・・,L)の値が予め定められた閾値以上である標識番号を特定する。そして、分類決定部36は、特定された標識番号のうち、チルダpi(i=1,・・・,L)の値が大きいものから順に、予め定められた個数以下の標識番号を特定する。分類決定部36は、このようにして特定された標識番号に対応する分類を、受付画像が属する分類として特定する。
【0031】
そして、出力部38が、S106に示す処理で決定された分類に対応する少なくとも1つの標識を受付画像に関連付けて、記憶部14に出力するとともに、標識番号をディスプレイ等のUI部16に表示出力する(S107)。このようにして、本処理例によれば、受付画像が属する分類が決定され、対応する標識が受付画像に関連付けられるとともに、標識番号がディスプレイ等に表示出力されることとなる。
【0032】
ここで、情報処理装置10による学習モデル情報50の生成処理の一例について説明する。
【0033】
まず、画像受付部20が、学習の対象となる画像(学習画像)を複数(例えば、N個)受け付ける。各学習画像には、その学習画像が属する分類に対応する標識が少なくとも1つ関連付けられている。そして、特徴量抽出部28は、各学習画像の特徴量を抽出する。特徴量抽出部28は、具体的には、例えば、学習画像に含まれる各画素のRGB値、normalized−RGB値、HSV値、LAB値、robustHue特徴量(van de Weijer, C. Schmid, "Coloring Local Feature Extraction", ECCV 2006を参照)、Gabor特徴量、DCT特徴量、SIFT特徴量、GIST特徴量等を特定する。そして、特徴量抽出部28は、予め、学習コーパスからK−Meansクラスタリングによって生成されたコードブックに基づいて、抽出された特徴量を量子化する。そして、特徴量抽出部28は、量子化された特徴量の受付画像全体におけるヒストグラムを、学習画像の特徴量ベクトルとして特定する。以下、第nの学習画像(n=1,・・・,N)から特定される特徴量ベクトルをxnで表す。
【0034】
そして、学習部40は、各識別番号j(j=1,・・・,L)についての、サポートベクタ情報及びパラメータ情報の特定処理を実行する。ここで、識別番号jのサポートベクタ情報及びパラメータ情報の特定処理は、例えば、第nの学習画像(n=1,・・・,N)の特徴量ベクトルxnと、第nの学習画像が識別番号jに対応する標識に関連付けられているか否かを示す値tn(識別番号jに対応する標識に関連付けられている場合は、tn=+1。そうでない場合は、tn=0。)とを対応付ける処理(この処理により、N組のベクトルと値の組合せ(x1,t1),・・・,(xN,tN)が生成される。)、これらN組のベクトルと値の組合せをサポートベクタマシン(SVM)により学習する処理(例えば、N.Cristianini and J.Shawe-Taylor, "An Introduction to Support Vector Machines and Other Kernel-based Learning Methods", Chapter6. Cambridge University Press 2000の最適化基準のもとで、1-v-OthersのバイナリSVMのパラメータを学習する処理)、識別番号jに対応するサポートベクタ情報及びパラメータ情報を特定する処理、を順に実行することにより実現される。本実施形態では、学習部40は、tn=+1に対応付けられている特徴量ベクトルxnを正例として、tn=0に対応付けられている特徴量ベクトルxnを負例として学習する。そして、学習部40は、上述のようにして特定されたサポートベクタ情報及びパラメータ情報に、対応する識別番号が関連付けられた学習モデル情報50を学習モデル情報記憶部22に出力する。
【0035】
このようにして、学習モデル情報記憶部22に学習モデル情報50が記憶されることとなる。
【0036】
次に、情報処理装置10による確率モデル情報54の生成処理の一例について説明する。
【0037】
まず、画像受付部20が、学習の対象となる画像(学習画像)を複数受け付ける。これらの学習画像は、学習モデル情報50の生成処理に用いた学習画像と同じものであっても異なっていても構わない。ここでは、標識番号iの標識の学習に用いられる学習画像の数は、Miであることとする。各学習画像には、その学習画像が属する分類に対応する標識が少なくとも1つ関連付けられている。そして、情報処理装置10は、各学習画像について、上述のS102〜S104に示す処理と同様の処理により、重み付け済判別基準値(Fijn)’を特定する。そして、学習部40が、学習の対象となる標識(例えば、標識番号iの標識)が関連付けられている学習画像の重み付け済判別基準値を正例として取り扱い(tin=+1)、学習の対象となる標識(例えば、標識番号iの標識)が関連付けられていない学習画像の重み付け済判別基準値を負例として取り扱う(tin=0)設定を行った上で、次式で表される尤度が最大となるパラメータチルダAij及びチルダBiを、バックトラッキング線形探索法(backtracking linear search)を用いたニュートン法によって(Nocedal,J.and S.J.Wright: “Numerical Optimization” Algorithm 6.2. New York, NY: Springer- Verlag, 1999.参照)計算する。次式において、(Fijn)’の値は、標識番号iの標識の学習に用いられるn番目の学習画像(n=1,・・・,Mi)についての重み付け済判別基準値を表している。また、Tは特徴量を表している。
【0038】
【数3】
【0039】
そして、学習部40は、上述のようにして特定されたチルダAij及びチルダBiの値が含まれる確率モデル情報54を確率モデル情報記憶部26に出力する。
【0040】
このようにして、確率モデル情報記憶部26に確率モデル情報54が記憶されることとなる。
【0041】
ここで、本実施形態の一比較例について説明する。
【0042】
本比較例に係る情報処理装置10は、図2に例示する構成と比較して、判別基準値重み付け部32を含まないという点が異なる。
【0043】
また、本比較例では、確率モデル情報記憶部26に、図8に例示する確率モデル情報54が記憶される。この確率モデル情報54では、例えば、各識別番号について2つのパラメータ(例えば、識別番号iに対しては、パラメータAi及びパラメータBi)が関連付けられている。
【0044】
そして、本比較例では、学習部40は、学習対象となる複数の画像それぞれについて、k番目の学習画像が学習の対象となる標識(例えば、標識番号iの標識)が関連付けられている場合に判別基準値Fkを正例として取り扱い(tk=+1)、学習の対象となる標識(例えば、標識番号iの標識)が関連付けられていない場合に判別基準値Fkを負例として取り扱う(tk=0)設定を行った上で、次式で表される尤度が最大となるパラメータAi及びBiを、バックトラッキング線形探索法(backtracking linear search)を用いたニュートン法によって(Nocedal,J.and S.J.Wright: “Numerical Optimization” Algorithm 6.2. New York, NY: Springer- Verlag, 1999.参照)計算する。次式において、Fkの値は、標識番号iの標識の学習に用いられるk番目の学習画像についての判別基準値Fkの値を表している。また、A、Bの値は、それぞれ、標識番号iに対応するパラメータA、Bの値を示している。
【0045】
【数4】
【0046】
そして、本比較例では、属否可能性算出部34が、受付画像のついての判別基準値Fi(i=1,・・・,L)の値、及び、確率モデル情報54に基づいて、次式を計算することにより、各i(i=1,・・・,L)についての、属否可能性の値piの値を算出する(S105)。次式において、piが標識番号iの標識に対応する事後確率である。また、A、Bの値は、それぞれ、標識番号iに対応するパラメータA、Bの値を示している。
【0047】
【数5】
【0048】
本実施形態に係る情報処理装置10は、相関マトリックス情報52を用いて属否可能性の値を算出するという点が少なくとも比較例に係る情報処理装置10と異なっている。
【0049】
ここで、本実施形態に係る情報処理装置10により相関マトリックス情報52に基づく重み付け済判別基準値の算出を行う場合と、行わない場合との比較結果の一例について説明する。なお、ここでは、図9に例示する第1相関マトリックス情報52−1及び図10に例示する第2相関マトリックス情報52−2を用いることとする。
【0050】
以下の説明では、例えば、標識sheepに対応付けられる重み付け済判別基準値の値をFsheepと、標識sheepに対応する事後確率をPsheep、標識sheepに対応する上述したtの値をtsheepで表す。なお、標識sheep以外の標識についても同様の表現とする。
【0051】
まず、第1の相関マトリックス情報52−1に基づく重み付け済判別基準値の算出を行う場合と行わない場合との比較結果の一例について説明する。図11に、第1の相関マトリックス情報52−1を用いて重み付け済判別基準値の算出を行う場合と行わない場合との、標識の認識率の比較結果を示す。図11で実施した比較では、判別基準値の値が0より大きい画像を用いた。また、図11において、丸印は、重み1が設定されるデータを示しており、バツ印は、重み0が設定されるデータを示している。
【0052】
図11のFmotorbikeに着目し、重み付け済判別基準値の算出を行う場合と行わない場合との違いを可視化する。図12に、標識motorbikeに対する判別基準値によって、最適化された標識sheepのsigmoid関数を示す。ここでは、Fmotorbike>0の判別基準値も選択の対象となる。図13に、同一の判別基準値に対して、図9に例示する第1の相関マトリックス情報52−1に基づき、Fmotorbike>0の判別基準値を事後確率の算出の基礎としないようにした、標識sheepのsigmoid関数の、標識motorbikeの判別基準値に依存する部分を示す。図12でも図13でも、Fmotorbike<0の判別基準値については選択されている。
【0053】
図12及び図13において、丸印の点は、標識sheepが関連付けられている画像から抽出した特徴量(tsheep=1)であり、バツ印の点は、標識sheepが関連付けられていない画像から抽出した特徴量(tsheep=0)である。横軸は、標識motorbikeの学習モデルに対応する判別基準値Fmotorbikeを示している。図13の例では、Fmotorbike<0のデータについては、判別基準値の重みが1となる。Fmotorbike>0のデータについては、判別基準値の重みが0となる。
【0054】
図12ではFmotorbike>0に該当するデータ(図12の右半分のデータ)の影響で、sigmoid関数の特性が、図13のsigmoid関数よりも緩やかなカーブとなり、Fmotorbikeの値がPsheepの値に与える影響が小さくなっていることがわかる。一方、図13ではFmotorbikeの値がPsheepの値に与える影響が図12のsigmoid関数よりも大きくなっていることがわかる。また、図11に示すように、本比較結果では、第1の相関マトリックス情報52−1を用いて重み付け済判別基準値の算出を行う場合の方が、行わない場合よりも、標識sheepの認識率が高くなっている。
【0055】
次に、第2の相関マトリックス情報52−2を用いて重み付け済判別基準値の算出を行う場合と行わない場合との比較結果の一例について説明する。図14に、第2の相関マトリックス情報52−2を用いて重み付け済判別基準値の算出を行う場合と行わない場合との、標識の認識率の比較結果を示す。図14で実施した比較では、判別基準値の値が0より小さい画像を用いた。また、図14において、丸印は、重みとして1が設定されるデータを示しており、バツ印は、重みとして0が設定されるデータを示している。
【0056】
図14のFpersonに着目し、重み付け済判別基準値の算出を行う場合と行わない場合との違いを可視化する。図15に、標識personに対する判別基準値によって、最適化された標識catのsigmoid関数を示す。ここでは、Fperson<0の判別基準値も選択の対象となる。図16に、同一の判別基準値に対して、図15に例示する第2の相関マトリックス情報52−2に基づき、Fperson<0の判別基準値を事後確率の算出の基礎としないようにした、標識catのsigmoid関数の、標識personの判別基準値に依存する部分を示す。図15でも図16でも、Fperson>0の判別基準値については選択されている。
【0057】
図15及び図16において、丸印の点は、標識catが関連付けられている画像から抽出した特徴量(tcat=1)であり、バツ印の点は、標識catが関連付けられていない画像から抽出した特徴量(tcat=0)である。横軸は、標識personの学習モデルに対応する判別基準値Fpersonを示している。
【0058】
図16の例では、Fperson>0のデータについては、判別基準値の重みが1となる。Fperson<0のデータについては、判別基準値の重みが0となる。
【0059】
図15ではFperson<0に該当するデータ(図15の左半分のデータ)の影響で、sigmoid関数の特性が、図16のsigmoid関数よりもより緩やかなカーブとなり、Fpersonの値がPcatの値に与える影響が小さくなっていることがわかる。一方、図16ではFpersonの値がPcatの値に与える影響が図15のsigmoid関数よりも大きくなっていることがわかる。また、図14に示すように、本比較結果では、第2の相関マトリックス情報52−2を用いて重み付け済判別基準値の算出を行う場合の方が、行わない場合よりも、標識catの認識率が高くなっている。
【0060】
図17に、本比較での確率モデル情報54に含まれるパラメータチルダAの一具体例を示す。図17からも、本比較において標識の相関性が活用されていることがわかる。例えば、行busと列carのパラメータチルダAの値が負であり、その絶対値が大きいために、標識busと標識carの正の相関性を表せていることがわかる。同様に、行busと列motorbikeのパラメータチルダAの値が正であり、その絶対値も大きいために、標識busと標識motorbikeの負の相関性を表せていることがわかる。それにより、標識busに関連付けられている画像の判別性能が高くなっている。一方、行busと列carのパラメータチルダAの値がゼロに近く、標識dogと標識carに相関性がないということも表している。
【0061】
なお、本発明は上述の実施形態に限定されるものではない。また、上記の具体的な数値や文字列は例示であり、これらの数値や文字列には限定されない。
【符号の説明】
【0062】
10 情報処理装置、12 制御部、14 記憶部、16 ユーザインタフェース(UI)部、20 画像受付部、22 学習モデル情報記憶部、24 相関マトリックス情報記憶部、26 確率モデル情報記憶部、28 特徴量抽出部、30 判別基準値算出部、32 判別基準値重み付け部、34 属否可能性算出部、36 分類決定部、38 出力部、40 学習部、50 学習モデル情報、52 相関マトリックス情報、54 確率モデル情報。
【技術分野】
【0001】
本発明は、プログラム及び情報処理システムに関する。
【背景技術】
【0002】
近年、画像に検索のためのキーワード(標識、ラベル)を自動的に付与する画像自動アノテーション技術が、画像検索のための1つの重要な技術となっている。この技術により、人がキーワードを画像に付与する作業を不要とすることができる。
【0003】
非特許文献1には、画像から局所的な特徴量を抽出して、その画像全体の分布を計算して画像特徴とし、各ラベルに対して設けられた確率化したバイナリサポートベクタマシンにより、ラベルの事後確率を計算し、一番高い事後確率に対応するラベルを未知画像に付与する技術が開示されている。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】K.S.Goh, "Using One-Classand Two-Class SVMs for Multiclass Image Annotation", IEEE Trans. OnKnowledge and Data Engineering, Vol.17, No.10, Oct.2005
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明は、画像の分類精度を従来よりも高くすることを目的とする。
【課題を解決するための手段】
【0006】
請求項1に記載の発明は、プログラムであって、複数の分類のうちの少なくとも1つの分類を特定する対象となる画像を受け付ける画像受付手段、前記複数の分類それぞれについて、前記画像受付手段が受け付ける画像の特徴量と、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像の特徴量と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属するか否かを判別する基準となる判別基準値を特定する判別基準値特定手段、前記複数の分類それぞれについて、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像に基づいて特定される、当該分類に属する画像が他の分類にも属する可能性、あるいは、当該分類に属さない画像が前記他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、当該分類と前記他の分類についての前記判別基準値と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する分類属否可能性特定手段、前記分類属否可能性特定手段により特定される前記値に基づいて特定される、前記画像受付手段が受け付ける画像が属する少なくとも1つの分類を示す情報を出力する出力手段、としてコンピュータを機能させることとしたものである。
【0007】
請求項2に記載の発明は、請求項1に記載のプログラムであって、前記分類属否可能性特定手段が、前記各分類について、当該分類とは異なるすべての分類それぞれについての前記相関情報及び前記判別基準値の組合せに基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定することとしたものである。
【0008】
請求項3に記載の発明は、情報処理システムであって、複数の分類のうちの少なくとも1つの分類を特定する対象となる画像を受け付ける画像受付手段と、前記複数の分類それぞれについて、前記画像受付手段が受け付ける画像の特徴量と、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像の特徴量と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属するか否かを判別する基準となる判別基準値を特定する判別基準値特定手段と、前記複数の分類それぞれについて、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像に基づいて特定される、当該分類に属する画像が他の分類にも属する可能性、あるいは、当該分類に属さない画像が前記他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、当該分類と前記他の分類についての前記判別基準値と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する分類属否可能性特定手段と、前記分類属否可能性特定手段により特定される前記値に基づいて特定される、前記画像受付手段が受け付ける画像が属する少なくとも1つの分類を示す情報を出力する出力手段と、を含むこととしたものである。
【発明の効果】
【0009】
請求項1,3に記載の発明によれば、本発明の構成を有しない場合と比較して、画像の分類精度が高くなる。
【0010】
請求項2に記載の発明によれば、画像がある分類に属する可能性の高低が、その分類とは異なるすべての分類との間の相関に基づいて特定される。
【図面の簡単な説明】
【0011】
【図1】本発明の一実施形態に係る情報処理装置のハードウェア構成の一例を示す図である。
【図2】本発明の一実施形態に係る情報処理装置により実現される機能の一例を示す機能ブロック図である。
【図3】学習モデル情報の一例を示す図である。
【図4】第1の相関マトリックス情報の一例を示す図である。
【図5】第2の相関マトリックス情報の一例を示す図である。
【図6】確率モデル情報の一例を示す図である。
【図7】本実施形態に係る情報処理装置で行われる処理の流れの一例を示すフロー図である。
【図8】比較例における確率モデル情報の一例を示す図である。
【図9】第1の相関マトリックス情報の一例を示す図である。
【図10】第2の相関マトリックス情報の一例を示す図である。
【図11】標識の認識率の比較結果の一例を示す図である。
【図12】標識motorbikeに対する判別基準値によって、最適化された標識sheepのsigmoid関数の一例を示す図である。
【図13】標識motorbikeに対する判別基準値によって、最適化された標識sheepのsigmoid関数の一例を示す図である。
【図14】標識の認識率の比較結果の一例を示す図である。
【図15】標識personに対する判別基準値によって、最適化された標識catのsigmoid関数の一例を示す図である。
【図16】標識personに対する判別基準値によって、最適化された標識catのsigmoid関数の一例を示す図である。
【図17】確率モデル情報に含まれるパラメータチルダAの一具体例を示す図である。
【発明を実施するための形態】
【0012】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【0013】
図1は、本実施形態に係る情報処理システムとして機能する情報処理装置10のハードウェア構成の一例を示す図である。図1に例示するように、本実施形態に係る情報処理装置10は、例えば、制御部12、記憶部14、ユーザインタフェース(UI)部16、を含んでいる。これらの要素は、バスなどを介して接続される。制御部12は、CPU等のプログラム制御デバイスであり、情報処理装置10にインストールされるプログラムに従って動作する。記憶部14は、ROMやRAM等の記憶素子やハードディスクドライブなどである。記憶部14には、制御部12によって実行されるプログラムなどが記憶される。また、記憶部14は、制御部12のワークメモリとしても動作する。UI部16は、ディスプレイ、マイク、マウス、キーボードなどであり、利用者が行った操作の内容や、利用者が入力した音声を制御部12に出力する。また、このUI部16は、制御部12から入力される指示に従って情報を表示出力したり音声出力したりする。
【0014】
図2は、本実施形態に係る情報処理装置10により実現される機能の一例を示す機能ブロック図である。図2に例示するように、情報処理装置10は、本実施形態では、例えば、画像受付部20、学習モデル情報記憶部22、相関マトリックス情報記憶部24、確率モデル情報記憶部26、特徴量抽出部28、判別基準値算出部30、判別基準値重み付け部32、属否可能性算出部34、分類決定部36、出力部38、学習部40、を含むものとして機能する。学習モデル情報記憶部22、相関マトリックス情報記憶部24、確率モデル情報記憶部26は、記憶部14を主として実現される。その他の要素は制御部12を主として実現される。また、学習部40は、例えば、サポートベクタマシン等の識別器を含んでいる。
【0015】
これらの要素は、コンピュータである情報処理装置10にインストールされたプログラムを、情報処理装置10の制御部12で実行することにより実現されている。このプログラムは、例えば、CD−ROM、DVD−ROMなどのコンピュータ読み取り可能な情報記録媒体を介して、あるいは、インターネットなどの通信手段を介して情報処理装置10に供給される。
【0016】
本実施形態では、例えば、画像受付部20が受け付ける画像に、予め定められたL種類の標識(ラベル)のうちの少なくとも1つが関連付けられることとなる。本実施形態では、L種類の標識それぞれに、標識番号j(j=1,・・・,L)が割り当てられている。また、本実施形態では、標識と画像の分類とが1対1で対応している。すなわち、ある分類に属する画像には、その分類に対応する標識が関連付けられることとなる。なお、画像は複数の分類に属することもあり得る。その場合には、画像に複数の標識が関連付けられることとなる。
【0017】
本実施形態では、学習モデル情報記憶部22に、予め、図3に例示する学習モデル情報50が記憶されている。本実施形態では、学習モデル情報50は、情報処理装置10が学習の対象となる複数の画像(学習画像)を学習することにより生成される。学習モデル情報50は、上述の標識番号、サポートベクタ情報、パラメータ情報、を含んでいる。学習モデル情報50は、例えば、標識に対応する特徴量と他の標識に対応する特徴量とを識別するバイナリサポートベクタマシンの学習モデルを表す情報である。サポートベクタ情報及びパラメータ情報は、後述する判別基準値を算出する基礎となる情報である。また、図3に示すように、標識番号iに対応付けられるサポートベクタ情報の値は(xi1,xi2,・・・,xiNi)、パラメータ情報の値は(ai1,ai2,・・・,aiNi)及びbiである。学習画像に基づく、学習モデル情報50の生成処理については後述する。
【0018】
また、本実施形態では、相関マトリックス情報記憶部24に、予め、図4に例示する第1の相関マトリックス情報52−1、及び、図5に例示する第2の相関マトリックス情報52−2が記憶されている。第1の相関マトリックス情報52−1、及び、第2の相関マトリックス情報52−2は、情報処理装置10が複数の学習画像を学習することにより生成される。これらの学習画像は、学習モデル情報50の生成の際に用いられる学習画像と同じであっても異なっていても構わない。第1の相関マトリックス情報52−1のi行j列の値Rijには、例えば、標識番号jの標識が関連付けられている学習画像に標識番号iの標識も関連付けられている条件付確率P(Ci|Cj)と、学習画像に標識番号iの標識が関連付けられている確率P(Ci)との差の絶対値Rij=|P(Ci)−P(Ci|Cj)|が設定される。学習画像に標識番号jの標識が関連付けられているときに、その学習画像に標識番号iの標識も関連付けられている場合には、そうでない場合よりもP(Ci|Cj)の値が大きくなる。一方、学習画像に標識番号jの標識が関連付けられていないときに、その学習画像に標識番号iの標識も関連付けられていない場合には、そうでない場合よりもP(Ci|Cj)の値が小さくなる。いずれにしても、標識番号iの標識と標識番号jの標識とに学習画像に関連付けられているか否かについての相関がある場合には、|P(Ci)−P(Ci|Cj)|の値は大きくなる。一方、その相関がない場合は、|P(Ci)−P(Ci|Cj)|の値は小さくなる。独立である場合は、|P(Ci)−P(Ci|Cj)|の値はゼロとなる。
【0019】
一方、第2の相関マトリックス情報52−2のi行j列の値R’ijには、例えば、標識番号jの標識が関連付けられていない学習画像に標識番号iの標識も関連付けられていない条件付確率P(C’i|C’j)と、学習画像に標識番号iの標識が関連付けられていない確率P(C’i)との差の絶対値R’ij=|P(C’i)−P(C’i|C’j)|が設定される。
【0020】
また、本実施形態では、確率モデル情報記憶部26に、予め、図6に例示する確率モデル情報54が記憶されている。本実施形態では、確率モデル情報54は、情報処理装置10が複数の学習画像を学習することにより生成される。これらの学習画像は、確率モデル情報54の生成の際に用いられる学習画像と同じであっても異なっていても構わない。確率モデル情報54は、L行L列の行列(i行j列の値はチルダAij(上方に〜が配置されたAij))であるパラメータチルダA及び各行に割り当てられる要素(i行に対応付けられるこの要素の値はチルダBi(上方に〜が配置されたBi))であるパラメータチルダBが含まれている。本実施形態では、図6に示すように、確率モデル情報54における、i行目のパラメータが、標識番号iの標識に対応するパラメータとなっている。確率モデル情報54は、本実施形態では、例えば、sigmoid関数のパラメータベクトルである。学習画像に基づく、確率モデル情報54の生成処理については後述する。
【0021】
ここで、本実施形態に係る情報処理装置10で行われる処理の流れの一例を、図7に例示するフロー図を参照しながら説明する。
【0022】
まず、画像受付部20が、分類の対象となる画像(すなわち、上述のL種類の標識のうちの少なくとも1つが関連付けられることとなる画像)を受け付けて、この画像の画素行列を出力する(S101)。以下、S101に示す処理で受け付ける画像を、受付画像と呼ぶこととする。なお、S101に示す処理で、一般的な前処理(例えば、移動、色の修正、変形、フォーマットの変換、ノイズ削除等)を行ってもよい。
【0023】
そして、特徴量抽出部28が、例えば、受付画像の特徴量を特定する(S102)。本処理例では、特徴量抽出部28は、例えば、受付画像に含まれる各画素のRGB値、normalized−RGB値、HSV値、LAB値、robustHue特徴量(van de Weijer, C. Schmid, "Coloring Local Feature Extraction", ECCV 2006を参照)Gabor特徴量、DCT特徴量、SIFT特徴量、GIST特徴量等を特定する。そして、特徴量抽出部28は、予め、学習コーパスからK−Meansクラスタリングによって生成されたコードブックに基づいて、抽出された特徴量を量子化する。そして、特徴量抽出部28は、量子化された特徴量の受付画像全体におけるヒストグラムを、S102に示す処理における特徴量ベクトルxとして特定する。
【0024】
そして、判別基準値算出部30が、S102に示す処理で特定された受付画像の特徴量と、学習モデル情報記憶部22に予め記憶されている学習モデル情報50とに基づいて、受付画像が各分類に属するか否か(受付画像に標識を関連付けるか否か)を判別する基準となる値である判別基準値を算出する(S103)。本実施形態では、判別基準値算出部30は、例えば、各分類について(各標識について)、判別基準値を算出する。例えば、判別基準値算出部30は、次式を計算することにより、標識番号iの標識に対応付けられる判別基準値Fi(i=1,・・・,L)を算出する。なお、次式において、Kはカーネル関数(例えば、ガウシアンカーネル)、太文字のxはS102に示す処理で特定される受付画像の特徴量ベクトルである。xinは、学習モデル情報50に含まれるサポートベクタ情報の値である。ain及びbiの値は、学習モデル情報50に含まれるパラメータ情報の値である。判別基準値Fiは、標識に対応する分類に属する画像については、大きな値をとり、その他の画像については小さな値をとる。判別基準値は、例えば、対応する分類と他の分類とを識別するバイナリサポートベクタマシンの決定関数の出力である。
【0025】
【数1】
【0026】
そして、判別基準値重み付け部32が、S103に示す処理で算出された、標識番号iの標識に対応付けられる判別基準値Fi(i=1,・・・,L)に対する、相関マトリックス情報52に基づく重み付けを行う(S104)。判別基準値重み付け部32は、具体的には、例えば、各標識について、その標識に対応付けられるL個の重み付け済判別基準値を算出する。以下、標識番号iの標識に対応付けられるL個の重み付け済判別基準値をF’ij(j=1,・・・,L)で表すこととする。
【0027】
判別基準値重み付け部32は、例えば、標識番号j(j=1,・・・,L)の標識に対応付けられる判別基準値Fjの値がゼロより大きい際に、第1の相関マトリックス情報52−1に含まれる値Rjiが予め定められた閾値よりも大きいか否かを確認する。そして、判別基準値重み付け部32は、値Rjiが閾値よりも大きい場合に、重みwijの値を1に設定し、そうでない場合に、重みwijの値を0に設定する。標識番号j(j=1,・・・,L)の標識に対応付けられる判別基準値Fjの値がゼロより小さい際に、第2の相関マトリックス情報52−2に含まれる値R’jiが予め定められた閾値よりも大きいか否かを確認する。そして、判別基準値重み付け部32は、値R’jiが閾値よりも大きい場合に、重みwijの値を1に設定し、そうでない場合に、重みwijの値を0に設定する。そして、判別基準値重み付け部32は、F’ij=Fj×wijという数式に従って、F’ij(j=1,・・・,L)の値を算出する。以上の処理を各i(i=1,・・・,L)について繰り返し実行することで、F’ij(i=1,・・・,L,j=1,・・・,L)の値が算出される。
【0028】
そして、属否可能性算出部34が、F’ijの値、及び、確率モデル情報54に基づいて、次式を計算することにより、各i(i=1,・・・,L)についての、属否可能性の値チルダpi(上方に〜が配置されたpi)の値を算出する(S105)。次式において、Tは特徴量を表している。チルダAij及びチルダBiの値は、上述の確率モデル情報54に含まれる値を指す。チルダpiは標識番号iの標識に対応する事後確率である。
【0029】
【数2】
【0030】
そして、分類決定部36は、チルダpi(i=1,・・・,L)の値に基づいて、受付画像が属する分類(すなわち、受付画像に関連付けられる標識)を決定する(S106)。本実施形態では、分類決定部36は、例えば、チルダpi(i=1,・・・,L)の値が予め定められた閾値以上である標識番号を特定する。そして、分類決定部36は、特定された標識番号のうち、チルダpi(i=1,・・・,L)の値が大きいものから順に、予め定められた個数以下の標識番号を特定する。分類決定部36は、このようにして特定された標識番号に対応する分類を、受付画像が属する分類として特定する。
【0031】
そして、出力部38が、S106に示す処理で決定された分類に対応する少なくとも1つの標識を受付画像に関連付けて、記憶部14に出力するとともに、標識番号をディスプレイ等のUI部16に表示出力する(S107)。このようにして、本処理例によれば、受付画像が属する分類が決定され、対応する標識が受付画像に関連付けられるとともに、標識番号がディスプレイ等に表示出力されることとなる。
【0032】
ここで、情報処理装置10による学習モデル情報50の生成処理の一例について説明する。
【0033】
まず、画像受付部20が、学習の対象となる画像(学習画像)を複数(例えば、N個)受け付ける。各学習画像には、その学習画像が属する分類に対応する標識が少なくとも1つ関連付けられている。そして、特徴量抽出部28は、各学習画像の特徴量を抽出する。特徴量抽出部28は、具体的には、例えば、学習画像に含まれる各画素のRGB値、normalized−RGB値、HSV値、LAB値、robustHue特徴量(van de Weijer, C. Schmid, "Coloring Local Feature Extraction", ECCV 2006を参照)、Gabor特徴量、DCT特徴量、SIFT特徴量、GIST特徴量等を特定する。そして、特徴量抽出部28は、予め、学習コーパスからK−Meansクラスタリングによって生成されたコードブックに基づいて、抽出された特徴量を量子化する。そして、特徴量抽出部28は、量子化された特徴量の受付画像全体におけるヒストグラムを、学習画像の特徴量ベクトルとして特定する。以下、第nの学習画像(n=1,・・・,N)から特定される特徴量ベクトルをxnで表す。
【0034】
そして、学習部40は、各識別番号j(j=1,・・・,L)についての、サポートベクタ情報及びパラメータ情報の特定処理を実行する。ここで、識別番号jのサポートベクタ情報及びパラメータ情報の特定処理は、例えば、第nの学習画像(n=1,・・・,N)の特徴量ベクトルxnと、第nの学習画像が識別番号jに対応する標識に関連付けられているか否かを示す値tn(識別番号jに対応する標識に関連付けられている場合は、tn=+1。そうでない場合は、tn=0。)とを対応付ける処理(この処理により、N組のベクトルと値の組合せ(x1,t1),・・・,(xN,tN)が生成される。)、これらN組のベクトルと値の組合せをサポートベクタマシン(SVM)により学習する処理(例えば、N.Cristianini and J.Shawe-Taylor, "An Introduction to Support Vector Machines and Other Kernel-based Learning Methods", Chapter6. Cambridge University Press 2000の最適化基準のもとで、1-v-OthersのバイナリSVMのパラメータを学習する処理)、識別番号jに対応するサポートベクタ情報及びパラメータ情報を特定する処理、を順に実行することにより実現される。本実施形態では、学習部40は、tn=+1に対応付けられている特徴量ベクトルxnを正例として、tn=0に対応付けられている特徴量ベクトルxnを負例として学習する。そして、学習部40は、上述のようにして特定されたサポートベクタ情報及びパラメータ情報に、対応する識別番号が関連付けられた学習モデル情報50を学習モデル情報記憶部22に出力する。
【0035】
このようにして、学習モデル情報記憶部22に学習モデル情報50が記憶されることとなる。
【0036】
次に、情報処理装置10による確率モデル情報54の生成処理の一例について説明する。
【0037】
まず、画像受付部20が、学習の対象となる画像(学習画像)を複数受け付ける。これらの学習画像は、学習モデル情報50の生成処理に用いた学習画像と同じものであっても異なっていても構わない。ここでは、標識番号iの標識の学習に用いられる学習画像の数は、Miであることとする。各学習画像には、その学習画像が属する分類に対応する標識が少なくとも1つ関連付けられている。そして、情報処理装置10は、各学習画像について、上述のS102〜S104に示す処理と同様の処理により、重み付け済判別基準値(Fijn)’を特定する。そして、学習部40が、学習の対象となる標識(例えば、標識番号iの標識)が関連付けられている学習画像の重み付け済判別基準値を正例として取り扱い(tin=+1)、学習の対象となる標識(例えば、標識番号iの標識)が関連付けられていない学習画像の重み付け済判別基準値を負例として取り扱う(tin=0)設定を行った上で、次式で表される尤度が最大となるパラメータチルダAij及びチルダBiを、バックトラッキング線形探索法(backtracking linear search)を用いたニュートン法によって(Nocedal,J.and S.J.Wright: “Numerical Optimization” Algorithm 6.2. New York, NY: Springer- Verlag, 1999.参照)計算する。次式において、(Fijn)’の値は、標識番号iの標識の学習に用いられるn番目の学習画像(n=1,・・・,Mi)についての重み付け済判別基準値を表している。また、Tは特徴量を表している。
【0038】
【数3】
【0039】
そして、学習部40は、上述のようにして特定されたチルダAij及びチルダBiの値が含まれる確率モデル情報54を確率モデル情報記憶部26に出力する。
【0040】
このようにして、確率モデル情報記憶部26に確率モデル情報54が記憶されることとなる。
【0041】
ここで、本実施形態の一比較例について説明する。
【0042】
本比較例に係る情報処理装置10は、図2に例示する構成と比較して、判別基準値重み付け部32を含まないという点が異なる。
【0043】
また、本比較例では、確率モデル情報記憶部26に、図8に例示する確率モデル情報54が記憶される。この確率モデル情報54では、例えば、各識別番号について2つのパラメータ(例えば、識別番号iに対しては、パラメータAi及びパラメータBi)が関連付けられている。
【0044】
そして、本比較例では、学習部40は、学習対象となる複数の画像それぞれについて、k番目の学習画像が学習の対象となる標識(例えば、標識番号iの標識)が関連付けられている場合に判別基準値Fkを正例として取り扱い(tk=+1)、学習の対象となる標識(例えば、標識番号iの標識)が関連付けられていない場合に判別基準値Fkを負例として取り扱う(tk=0)設定を行った上で、次式で表される尤度が最大となるパラメータAi及びBiを、バックトラッキング線形探索法(backtracking linear search)を用いたニュートン法によって(Nocedal,J.and S.J.Wright: “Numerical Optimization” Algorithm 6.2. New York, NY: Springer- Verlag, 1999.参照)計算する。次式において、Fkの値は、標識番号iの標識の学習に用いられるk番目の学習画像についての判別基準値Fkの値を表している。また、A、Bの値は、それぞれ、標識番号iに対応するパラメータA、Bの値を示している。
【0045】
【数4】
【0046】
そして、本比較例では、属否可能性算出部34が、受付画像のついての判別基準値Fi(i=1,・・・,L)の値、及び、確率モデル情報54に基づいて、次式を計算することにより、各i(i=1,・・・,L)についての、属否可能性の値piの値を算出する(S105)。次式において、piが標識番号iの標識に対応する事後確率である。また、A、Bの値は、それぞれ、標識番号iに対応するパラメータA、Bの値を示している。
【0047】
【数5】
【0048】
本実施形態に係る情報処理装置10は、相関マトリックス情報52を用いて属否可能性の値を算出するという点が少なくとも比較例に係る情報処理装置10と異なっている。
【0049】
ここで、本実施形態に係る情報処理装置10により相関マトリックス情報52に基づく重み付け済判別基準値の算出を行う場合と、行わない場合との比較結果の一例について説明する。なお、ここでは、図9に例示する第1相関マトリックス情報52−1及び図10に例示する第2相関マトリックス情報52−2を用いることとする。
【0050】
以下の説明では、例えば、標識sheepに対応付けられる重み付け済判別基準値の値をFsheepと、標識sheepに対応する事後確率をPsheep、標識sheepに対応する上述したtの値をtsheepで表す。なお、標識sheep以外の標識についても同様の表現とする。
【0051】
まず、第1の相関マトリックス情報52−1に基づく重み付け済判別基準値の算出を行う場合と行わない場合との比較結果の一例について説明する。図11に、第1の相関マトリックス情報52−1を用いて重み付け済判別基準値の算出を行う場合と行わない場合との、標識の認識率の比較結果を示す。図11で実施した比較では、判別基準値の値が0より大きい画像を用いた。また、図11において、丸印は、重み1が設定されるデータを示しており、バツ印は、重み0が設定されるデータを示している。
【0052】
図11のFmotorbikeに着目し、重み付け済判別基準値の算出を行う場合と行わない場合との違いを可視化する。図12に、標識motorbikeに対する判別基準値によって、最適化された標識sheepのsigmoid関数を示す。ここでは、Fmotorbike>0の判別基準値も選択の対象となる。図13に、同一の判別基準値に対して、図9に例示する第1の相関マトリックス情報52−1に基づき、Fmotorbike>0の判別基準値を事後確率の算出の基礎としないようにした、標識sheepのsigmoid関数の、標識motorbikeの判別基準値に依存する部分を示す。図12でも図13でも、Fmotorbike<0の判別基準値については選択されている。
【0053】
図12及び図13において、丸印の点は、標識sheepが関連付けられている画像から抽出した特徴量(tsheep=1)であり、バツ印の点は、標識sheepが関連付けられていない画像から抽出した特徴量(tsheep=0)である。横軸は、標識motorbikeの学習モデルに対応する判別基準値Fmotorbikeを示している。図13の例では、Fmotorbike<0のデータについては、判別基準値の重みが1となる。Fmotorbike>0のデータについては、判別基準値の重みが0となる。
【0054】
図12ではFmotorbike>0に該当するデータ(図12の右半分のデータ)の影響で、sigmoid関数の特性が、図13のsigmoid関数よりも緩やかなカーブとなり、Fmotorbikeの値がPsheepの値に与える影響が小さくなっていることがわかる。一方、図13ではFmotorbikeの値がPsheepの値に与える影響が図12のsigmoid関数よりも大きくなっていることがわかる。また、図11に示すように、本比較結果では、第1の相関マトリックス情報52−1を用いて重み付け済判別基準値の算出を行う場合の方が、行わない場合よりも、標識sheepの認識率が高くなっている。
【0055】
次に、第2の相関マトリックス情報52−2を用いて重み付け済判別基準値の算出を行う場合と行わない場合との比較結果の一例について説明する。図14に、第2の相関マトリックス情報52−2を用いて重み付け済判別基準値の算出を行う場合と行わない場合との、標識の認識率の比較結果を示す。図14で実施した比較では、判別基準値の値が0より小さい画像を用いた。また、図14において、丸印は、重みとして1が設定されるデータを示しており、バツ印は、重みとして0が設定されるデータを示している。
【0056】
図14のFpersonに着目し、重み付け済判別基準値の算出を行う場合と行わない場合との違いを可視化する。図15に、標識personに対する判別基準値によって、最適化された標識catのsigmoid関数を示す。ここでは、Fperson<0の判別基準値も選択の対象となる。図16に、同一の判別基準値に対して、図15に例示する第2の相関マトリックス情報52−2に基づき、Fperson<0の判別基準値を事後確率の算出の基礎としないようにした、標識catのsigmoid関数の、標識personの判別基準値に依存する部分を示す。図15でも図16でも、Fperson>0の判別基準値については選択されている。
【0057】
図15及び図16において、丸印の点は、標識catが関連付けられている画像から抽出した特徴量(tcat=1)であり、バツ印の点は、標識catが関連付けられていない画像から抽出した特徴量(tcat=0)である。横軸は、標識personの学習モデルに対応する判別基準値Fpersonを示している。
【0058】
図16の例では、Fperson>0のデータについては、判別基準値の重みが1となる。Fperson<0のデータについては、判別基準値の重みが0となる。
【0059】
図15ではFperson<0に該当するデータ(図15の左半分のデータ)の影響で、sigmoid関数の特性が、図16のsigmoid関数よりもより緩やかなカーブとなり、Fpersonの値がPcatの値に与える影響が小さくなっていることがわかる。一方、図16ではFpersonの値がPcatの値に与える影響が図15のsigmoid関数よりも大きくなっていることがわかる。また、図14に示すように、本比較結果では、第2の相関マトリックス情報52−2を用いて重み付け済判別基準値の算出を行う場合の方が、行わない場合よりも、標識catの認識率が高くなっている。
【0060】
図17に、本比較での確率モデル情報54に含まれるパラメータチルダAの一具体例を示す。図17からも、本比較において標識の相関性が活用されていることがわかる。例えば、行busと列carのパラメータチルダAの値が負であり、その絶対値が大きいために、標識busと標識carの正の相関性を表せていることがわかる。同様に、行busと列motorbikeのパラメータチルダAの値が正であり、その絶対値も大きいために、標識busと標識motorbikeの負の相関性を表せていることがわかる。それにより、標識busに関連付けられている画像の判別性能が高くなっている。一方、行busと列carのパラメータチルダAの値がゼロに近く、標識dogと標識carに相関性がないということも表している。
【0061】
なお、本発明は上述の実施形態に限定されるものではない。また、上記の具体的な数値や文字列は例示であり、これらの数値や文字列には限定されない。
【符号の説明】
【0062】
10 情報処理装置、12 制御部、14 記憶部、16 ユーザインタフェース(UI)部、20 画像受付部、22 学習モデル情報記憶部、24 相関マトリックス情報記憶部、26 確率モデル情報記憶部、28 特徴量抽出部、30 判別基準値算出部、32 判別基準値重み付け部、34 属否可能性算出部、36 分類決定部、38 出力部、40 学習部、50 学習モデル情報、52 相関マトリックス情報、54 確率モデル情報。
【特許請求の範囲】
【請求項1】
複数の分類のうちの少なくとも1つの分類を特定する対象となる画像を受け付ける画像受付手段、
前記複数の分類それぞれについて、前記画像受付手段が受け付ける画像の特徴量と、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像の特徴量と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属するか否かを判別する基準となる判別基準値を特定する判別基準値特定手段、
前記複数の分類それぞれについて、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像に基づいて特定される、当該分類に属する画像が他の分類にも属する可能性、あるいは、当該分類に属さない画像が前記他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、当該分類と前記他の分類についての前記判別基準値と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する分類属否可能性特定手段、
前記分類属否可能性特定手段により特定される前記値に基づいて特定される、前記画像受付手段が受け付ける画像が属する少なくとも1つの分類を示す情報を出力する出力手段、
としてコンピュータを機能させることを特徴とするプログラム。
【請求項2】
前記分類属否可能性特定手段が、前記各分類について、当該分類とは異なるすべての分類それぞれについての前記相関情報及び前記判別基準値の組合せに基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する、
ことを特徴とする請求項1に記載のプログラム。
【請求項3】
複数の分類のうちの少なくとも1つの分類を特定する対象となる画像を受け付ける画像受付手段と、
前記複数の分類それぞれについて、前記画像受付手段が受け付ける画像の特徴量と、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像の特徴量と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属するか否かを判別する基準となる判別基準値を特定する判別基準値特定手段と、
前記複数の分類それぞれについて、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像に基づいて特定される、当該分類に属する画像が他の分類にも属する可能性、あるいは、当該分類に属さない画像が前記他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、当該分類と前記他の分類についての前記判別基準値と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する分類属否可能性特定手段と、
前記分類属否可能性特定手段により特定される前記値に基づいて特定される、前記画像受付手段が受け付ける画像が属する少なくとも1つの分類を示す情報を出力する出力手段と、
を含むことを特徴とする情報処理システム。
【請求項1】
複数の分類のうちの少なくとも1つの分類を特定する対象となる画像を受け付ける画像受付手段、
前記複数の分類それぞれについて、前記画像受付手段が受け付ける画像の特徴量と、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像の特徴量と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属するか否かを判別する基準となる判別基準値を特定する判別基準値特定手段、
前記複数の分類それぞれについて、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像に基づいて特定される、当該分類に属する画像が他の分類にも属する可能性、あるいは、当該分類に属さない画像が前記他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、当該分類と前記他の分類についての前記判別基準値と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する分類属否可能性特定手段、
前記分類属否可能性特定手段により特定される前記値に基づいて特定される、前記画像受付手段が受け付ける画像が属する少なくとも1つの分類を示す情報を出力する出力手段、
としてコンピュータを機能させることを特徴とするプログラム。
【請求項2】
前記分類属否可能性特定手段が、前記各分類について、当該分類とは異なるすべての分類それぞれについての前記相関情報及び前記判別基準値の組合せに基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する、
ことを特徴とする請求項1に記載のプログラム。
【請求項3】
複数の分類のうちの少なくとも1つの分類を特定する対象となる画像を受け付ける画像受付手段と、
前記複数の分類それぞれについて、前記画像受付手段が受け付ける画像の特徴量と、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像の特徴量と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属するか否かを判別する基準となる判別基準値を特定する判別基準値特定手段と、
前記複数の分類それぞれについて、それぞれ前記複数の分類のうちの少なくとも1つの分類に属する複数の画像に基づいて特定される、当該分類に属する画像が他の分類にも属する可能性、あるいは、当該分類に属さない画像が前記他の分類にも属さない可能性、の少なくとも一方を表す相関情報と、当該分類と前記他の分類についての前記判別基準値と、に基づいて、前記画像受付手段が受け付ける画像が当該分類に属する可能性の高低を表す値を特定する分類属否可能性特定手段と、
前記分類属否可能性特定手段により特定される前記値に基づいて特定される、前記画像受付手段が受け付ける画像が属する少なくとも1つの分類を示す情報を出力する出力手段と、
を含むことを特徴とする情報処理システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2012−174083(P2012−174083A)
【公開日】平成24年9月10日(2012.9.10)
【国際特許分類】
【出願番号】特願2011−36675(P2011−36675)
【出願日】平成23年2月23日(2011.2.23)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
【公開日】平成24年9月10日(2012.9.10)
【国際特許分類】
【出願日】平成23年2月23日(2011.2.23)
【出願人】(000005496)富士ゼロックス株式会社 (21,908)
【Fターム(参考)】
[ Back to top ]