(57)【要約】      （修正有）【課題】計算資源の使用量を抑えつつ、高速、かつ、高精度に大規模一般物体の認識を可能にする、モバイル端末に適用できる線形識別器、大規模一般物体認識装置及び電子計算機を提供する。【解決手段】対象となる一般物体の画像特徴について、分類クラスごとに用意された重みベクトルと照合することで一般物体の識別を行う線形識別器であって、重みベクトルを、スカラー量子化によって圧縮した状態で保持する。【選択図】図２
2016029568.tif 000002
【特許請求の範囲】
【請求項１】
対象となる一般物体の画像特徴について、分類クラスごとに学習によって事前に求められた重みベクトルと照合することで前記一般物体の識別を行う線形識別器において、
前記重みベクトルを、スカラー量子化によって圧縮した状態で保持する
ことを特徴とする線形識別器。
【請求項２】
前記圧縮された重みベクトルの各要素のサイズが4bit以下である
ことを特徴とする請求項１に記載の線形識別器。
【請求項３】
前記重みベクトルの次元数が1000以上である
ことを特徴とする請求項１又は２に記載の線形識別器。
【請求項４】
請求項１〜３のいずれか１項に記載の線形識別器を有する
ことを特徴とする大規模一般物体認識装置。
【請求項５】
請求項４に記載の大規模一般物体認識装置を備える
ことを特徴とする電子計算機。
【請求項６】
所定の一般物体を特定するための境界を定めるパラメータである重みベクトルを、スカラー量子化によって圧縮した状態で記憶する記憶部と、
任意の一般物体が写されている画像を認識処理の対象として、前記画像の特徴を表す画像特徴量を生成する画像特徴量生成部と、
前記記憶部に記憶されている前記重みベクトル、および、前記画像特徴量生成部において生成された前記画像特徴量を用いて、認識処理の対象となる前記画像に写されている一般物体の評価値を求める演算を行う線形識別器と
を備えるモバイル端末。
【請求項７】
前記線形識別器は、前記記憶部に記憶されている重みベクトルを圧縮された状態のまま用いて前記評価値を求める演算を行う
請求項６に記載のモバイル端末。
【請求項８】
前記線形識別器により算出された評価値に従って、認識処理の対象となる前記画像に写されている一般物体を認識した認識結果を選出する処理を行う選出処理部
をさらに備える請求項６に記載のモバイル端末。
【請求項９】
認識処理の対象となる前記画像とともに、前記選出処理部により選出された認識結果を表示する出力部
をさらに備える請求項８に記載のモバイル端末。
【請求項１０】
前記一般物体を撮像する撮像部をさらに備え、
前記撮像部により所定のフレームレートで撮像される前記画像が順次、認識処理の対象とされる
請求項６に記載のモバイル端末。
【請求項１１】
分類クラスごとの学習用画像から画像特徴量を生成する画像特徴量生成部と、
前記画像特徴量生成部において生成された前記画像特徴量から、前記学習用画像に写されている一般物体を特定するための境界を定めるパラメータである重みベクトルを、前記分類クラスごとに求める重みベクトル生成部と、
前記重みベクトル生成部において求められた前記重みベクトルをスカラー量子化によって圧縮する処理を行う重みベクトル圧縮処理部と
を備えるデータ処理装置。
【請求項１２】
所定の一般物体を特定するための境界を定めるパラメータである重みベクトルを、スカラー量子化によって圧縮した状態で記憶する記憶部と、
任意の一般物体が写されている画像を認識処理の対象として、前記画像の特徴を表す画像特徴量を生成する画像特徴量生成部と、
前記記憶部に記憶されている前記重みベクトル、および、前記画像特徴量生成部において生成された前記画像特徴量を用いて、認識処理の対象となる前記画像に写されている一般物体の評価値を求める演算を行う線形識別器と
を有するモバイル端末と、
分類クラスごとの学習用画像から画像特徴量を生成する画像特徴量生成部と、
前記画像特徴量生成部において生成された前記画像特徴量から、前記学習用画像に写されている一般物体を特定するための境界を定めるパラメータである重みベクトルを、前記分類クラスごとに求める重みベクトル生成部と、
前記重みベクトル生成部において求められた前記重みベクトルをスカラー量子化によって圧縮する処理を行う重みベクトル圧縮処理部と
を有するデータ処理装置と
を備える画像認識システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、線形識別器、特に、計算資源の使用量を抑えつつ、高速且つ高精度に大規模一般物体の認識を可能にする線形識別器、大規模一般物体認識装置、電子計算機、モバイル端末、データ処理装置、および画像認識システムに関する。
【背景技術】
【０００２】
近年、電子計算機、特にスマートフォンが広く普及している。現在、クアッドコアのCPUを搭載したスマートフォンが一般になり、一世代以前のパソコンのCPUと同等のパフォーマンスを有している。
このようなスマートフォンの性能向上に伴って、スマートフォン上で画像認識を行うことが可能となった。ただし、従来の画像認識を行うシステムでは、高性能なサーバに画像を送信し、サーバ上で画像処理を行っていたため、画像認識の結果を得るためには、通信コストがかかることに加え、所望の速度を得るためにはネットワーク環境に依存していた。また、システムを使用するユーザ数の増加に伴い、サーバの計算資源（CPU、メモリ等）も増加させなければ、パフォーマンスが低下するという問題があった。
【０００３】
そこで、複数コアを有するスマートフォンの計算資源のみを活用し、リアルタイム且つ高精度に画像認識を行う手法が望まれていた。この手法が実現されれば、スマートフォン上で画像認識を行うことにより、ネットワーク環境に依存しない、通信コストがかからない、計算資源が分散される、という大きな利点がある。
【０００４】
また近年、より実用的な画像認識システム構築に向けて大規模一般物体認識への要求が増している。従来の一般物体認識では、識別に非線形識別器を用いることが一般的であり、学習サンプル数Nに対し学習コストは0(N2)〜0(N3)、必要なメモリもサポートベクトルの数だけ必要でありコストが非常に高い。だが、Deep Convolutional Neural Networkや線形識別器への適用可能な画像表現を用いることにより、大規模一般物体認識が可能となった。
【０００５】
ただし、スマートフォンでは一つのアプリケーションが使用できるメモリは限られている。例えば、一般物体の識別を行う識別器として線形サポートベクターマシン(SVM)等を用いた一般的な画像認識システムの場合には、識別のための学習に最も計算資源を必要とし、学習された識別器の重みが必要とする計算資源は、学習時に比べると小さい。そのため、サーバ等の高性能の電子計算機で一旦学習を行い、学習した後の識別器の重みを、電子計算機端末のメモリ上にそのまま全て保持することによって、一般物体の識別が可能であった。
例えば非特許文献１には、大規模一般物認識において、認識の対象物が1000種類を超えるような場合には高性能コンピュータでも学習時にデータの圧縮が必要であること、また、その手法について開示されている。
【０００６】
しかしながら、上述した一般物認識システムをスマートフォンに用いた場合、高次元多数の識別器の重みをそのまま全てメモリに保持することはできない。例えば非特許文献２には、小規模物体認識において、軽量な局所特徴量と画像表現の工夫、線形識別器によって、スマートフォン上でも高速に認識することができたことが開示されているが、非特許文献２の技術では、100種類程度の認識を行うものであり、認識に用いる重みベクトルの次元が1500次元程度と低次元になっており、100種類を大きく超えるような大規模一般物体認識には適用できなかった。
そのため、スマートフォンに適用できる程度に計算資源の使用量を抑えることができ、さらに、高精度に大規模一般物認識を行うことができる認識技術の開発が望まれている。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】J. Sanchez and F. Perronnin、High-dimensional signature compression for large-scale image classification、Proc. of IEEE Computer Vision and Pattern Recognition、pages 1665-1672、2011年
【非特許文献２】Y. Kawano and K. Yanai、Rapid mobile object recognition using fisher vector、Proc. of Asian Conference on Pattern Recognition、pages476-480、2013年
【発明の概要】
【発明が解決しようとする課題】
【０００８】
上述した課題に鑑み、本発明は、計算資源の使用量を抑えつつ、高速且つ高精度に大規模一般物体の認識を可能にする線形識別器、大規模一般物体認識装置、電子計算機、モバイル端末、データ処理装置、および画像認識システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明者らは、対象となる一般物体の画像特徴について、分類クラスごとに学習によって事前に求められた重みベクトルと照合することで前記一般物体の識別を行う線形識別器について、上記課題を解決すべく鋭意検討を行った結果、前記重みベクトルについて、スカラー量子化によって圧縮を行うことによって、高次元の重みベクトルを用いた場合であっても大幅に計算資源の使用量を低減できるとともに、重みベクトルを圧縮したまま計算に用いることができるため、認識に要する時間についても悪影響がないことを見出し、本発明を完成させるに至った。
【００１０】
本発明は、このような知見に基づきなされたもので、その要旨は以下の通りである。
本発明の線形識別器は、対象となる一般物体の画像特徴について、分類クラスごとに学習によって事前に求められた重みベクトルと照合することで前記一般物体の識別を行う線形識別器であって、前記重みベクトルを、スカラー量子化によって圧縮した状態で保持することを特徴とする。
【００１１】
また、前記線形識別器は、前記圧縮された重みベクトルの各要素のサイズが4bit以下であることが好ましい。計算資源の使用量をより低減できるためである。
【００１２】
さらに、前記重みベクトルの次元数が1000以上であることが好ましい。一般物体の識別精度と計算資源の使用量低減とを高度に両立させることができるためである。
【００１３】
本発明の大規模一般物体認識装置は、本発明の線形識別器を有することを特徴とする。
本発明の大規模一般物体認識装置によれば、計算資源の使用量を抑えつつ、高速且つ高精度に大規模一般物体の認識を可能にすることができる。
【００１４】
また、本発明の電子計算機は、本発明の大規模一般物体認識装置を備えることを特徴とする。
本発明の電子計算機によれば、計算資源の使用量を抑えつつ、高速且つ高精度に大規模一般物体の認識を可能にすることができる。
【００１５】
また、本発明のモバイル端末は、所定の一般物体を特定するための境界を定めるパラメータである重みベクトルを、スカラー量子化によって圧縮した状態で記憶する記憶部と、任意の一般物体が写されている画像を認識処理の対象として、前記画像の特徴を表す画像特徴量を生成する画像特徴量生成部と、前記記憶部に記憶されている前記重みベクトル、および、前記画像特徴量生成部において生成された前記画像特徴量を用いて、認識処理の対象となる前記画像に写されている一般物体の評価値を求める演算を行う線形識別器とを備える。
【００１６】
また、本発明のデータ処理装置は、分類クラスごとの学習用画像から画像特徴量を生成する画像特徴量生成部と、前記画像特徴量生成部において生成された前記画像特徴量から、前記学習用画像に写されている一般物体を特定するための境界を定めるパラメータである重みベクトルを、前記分類クラスごとに求める重みベクトル生成部と、前記重みベクトル生成部において求められた前記重みベクトルをスカラー量子化によって圧縮する処理を行う重みベクトル圧縮処理部とを備える。
【００１７】
また、本発明の画像認識システムは、所定の一般物体を特定するための境界を定めるパラメータである重みベクトルを、スカラー量子化によって圧縮した状態で記憶する記憶部と、任意の一般物体が写されている画像を認識処理の対象として、前記画像の特徴を表す画像特徴量を生成する画像特徴量生成部と、前記記憶部に記憶されている前記重みベクトル、および、前記画像特徴量生成部において生成された前記画像特徴量を用いて、認識処理の対象となる前記画像に写されている一般物体の評価値を求める演算を行う線形識別器とを有するモバイル端末と、分類クラスごとの学習用画像から画像特徴量を生成する画像特徴量生成部と、前記画像特徴量生成部において生成された前記画像特徴量から、前記学習用画像に写されている一般物体を特定するための境界を定めるパラメータである重みベクトルを、前記分類クラスごとに求める重みベクトル生成部と、前記重みベクトル生成部において求められた前記重みベクトルをスカラー量子化によって圧縮する処理を行う重みベクトル圧縮処理部とを有するデータ処理装置とを備える。
【発明の効果】
【００１８】
本発明によれば、計算資源の使用量を抑えつつ、高速且つ高精度に大規模一般物体の認識を可能にする線形識別器、大規模一般物体認識装置、電子計算機、モバイル端末、データ処理装置、および画像認識システムを提供することができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の一実施形態に係る識別器を用いて、一般物体の識別を行う流れを模式的に示した図である。
【図２】1000種類の一般物体の認識結果の一例を示す図である。
【図３】非圧縮重みベクトルの要素のスカラー値の分布を示した図であり、３本の縦線によって４つの値域にスカラー値が分割され、それぞれ00、01、10、11の2ビット値に量子化されることを示した図である。
【図４】256種類の一般物体の認識結果の一例について比較する図である。
【図５】画像認識システムの一実施の形態の構成例を示すブロック図である。
【図６】データ処理装置の構成例を示すブロック図である。
【図７】モバイル端末の構成例を示すブロック図である。
【図８】画像認識実行画面の表示例を示す図である。
【図９】重みベクトル生成処理について説明するフローチャートである。
【図１０】認識処理について説明するフローチャートである。
【発明を実施するための形態】
【００２０】
以下、本発明の実施形態について具体的に説明する。
(線形識別器)
本発明の一実施形態に係る線形識別器は、対象となる一般物体の画像特徴について、分類クラスごとに学習によって事前に求められた重みベクトルと照合する、例えば、前記画像特徴から得られた画像特徴ベクトルと前記重みベクトルとの内積を計算し、計算結果の評価を行うことで、前記一般物体の識別を行う線形識別器である。例えば、図１に示すように、一般物体の画像特徴について特定の装置を用いて抽出し、抽出された画像特徴について、その一般物体が何に該当するのか識別を行うことができる。
【００２１】
ここで、前記識別器とは、識別対象（一般物体）から抽出された画像特徴ベクトルを入力パターンとして、対応する概念ごとのクラス（分類クラス）に分類する機能を提供するものをいう。前記分類クラスについては、本発明では、一般物体の種類のことを意味する。
なお、本発明では、前記識別器として線形識別器を採用しているが、その理由としては、線形識別器を用いることで、識別器を単純化でき、必要とする計算資源を低減できるからである。
【００２２】
また、前記一般物体認識とは、一般物体を表している入力画像について、学習済の識別器を用いて対応する概念ごとのクラス（分類クラス）に分類することをいう。
【００２３】
なお、前記画像特徴については、前記一般物体の識別を行うことができる画像特徴であれば特に限定はされず、例えば、前記画像特徴として、Histogram of Oriented Gradient（HOG） Patch、Color-patch、Local Binary Pattern（LBP）Patch等の局所特徴や、カラーヒストグラム等の大域特徴が挙げられる。
また、前記画像特徴について、特徴量の表現は、前記カラーヒストグラム等の大域特徴量の場合には、画像から一つ得られる特徴量であるため、それ自体を画像特徴量とすることができる。また、前記局所特徴の方は多数サンプリングするので、一つのベクトルに変換する必要があり、この変換後のベクトルを画像特徴量とする。ここで、前記局所特徴量をベクトルに変換する手法として、フィッシャーベクトル（Fisher Vector）、VLAD（vector of locally aggregated descriptors）、BoF（bag-of-features）等を用いることができ、その中でも、計算資源の使用量増加を招くことなく、線形識別器でも十分な識別性能を得られる点から、フィッシャーベクトルを用いることが好ましい。
【００２４】
ここで、前記フィッシャーベクトルは、以下の式（１）で表される。
【００２５】
【数１】
2016029568.tif 000003
【００２６】
ここで、p(X｜θ)は確率密度関数、▽θlog p(X｜θ)は対数尤度の勾配、Fθをフィッシャー情報行列とすると、Fθは、Fθ−１=L’θLθに分解される。Fisher Kernel K(X，Y)=GθX’Fθ−１GθYはフィッシャーベクトルの内積で表されるため、線形識別器で効率よく識別可能になる。
【００２７】
また、前記重みベクトルとは、線形識別器において、前記分類クラスごとに学習によって事前に求められた（分類クラスごとに対応付けられた）ベクトルである。例えば前記フィッシャーベクトルを用いて前記画像特徴を現した場合には、前記重みベクトルは、フィッシャーベクトルと同じ次元数（要素数）となり、重みベクトルは、分類するクラスごとに独立して学習するため、クラス数だけ重みベクトルが必要となる。
【００２８】
そして、本発明の線形識別器は、前記重みベクトルを、スカラー量子化によって圧縮した状態で保持することを特徴とする。
前記重みベクトルの圧縮により、大幅に計算資源の使用量を低減でき、前記画像特徴と照合するための次元数を小さくすることなく、識別器の重み圧縮を行うことができるため、計算資源が限られているスマートフォン等であっても大規模一般物体認識を高精度に行うことが可能となる。加えて、前記スカラー量子化によって圧縮された重みベクトルは、圧縮された状態で識別のための計算に用いることができるため、圧縮復元に長時間を要することがなく、認識をリアルタイムに行うことができる。
【００２９】
ここで、前記スカラー量子化とは、アナログ入力信号を振幅方向に離散化すること又は既にデジタル化した信号を異なる精度のデジタル信号へ置き換える量子化のうち、信号をスカラー値として扱うものである。
また、前記識別器では、割り当てを工夫すること、例えば、重みベクトルの要素の分布に偏り（＋又は−）がある場合には、分布の平均値μをw'から引くこと（w'i=（w'−μ）／α）で圧縮性能を向上させることが好ましい。例えば、以下の式（２）に示すように、重みの各要素に対し、nbitに圧縮し非負整数を割り当てることができる。
【００３０】
【数２】
2016029568.tif 000004
【００３１】
上述のスカラー量子化によって、各重みベクトルの要素のサイズを小さくすることができるため、メモリ等の計算資源へ与える負荷を抑えることができる。なお、圧縮前の重みベクトルの要素のサイズについては、重みベクトルが一般に実数値で表現されるため、各要素は32bitもしくは64bitで表現されることが一般的である。
【００３２】
また、前記圧縮された重みベクトルを構成する各要素のサイズについては、特に限定されないものの、例えば4bit以下とすることが好ましい。本発明の線形識別器が使用する前記計算資源の、より高い削減効果が得られるためである。
【００３３】
なお、前記重みベクトルの次元数を1000以上とすることが好ましい。前記重みベクトルの次元数が1000未満の場合、次元数が小さすぎるため十分な識別性能を確保できないおそれがあるからである。
【００３４】
なお、前記重みベクトルの学習は、予め外部で行われ、学習済みの状態で識別器へと取り込むことが好ましい。一般的に、識別のための学習時、つまり前記重みベクトルを作成するための学習時が、最も計算資源を必要とすることから、予め外部で学習した重みベクトルを用いることで、必要とする計算資源を削減できるからである。例えば、本発明の線形識別器がスマートフォンに組み込まれている場合には、前記識別のための学習はＰＣで行い、学習後の重みベクトルを線形識別器に取り込むことができる。
【００３５】
なお、本発明の線形識別器の具体的な装置構成については特に限定はされず、CPU、メモリ等を備え、識別のためのプログラムを組み込むことによって線形識別器として動かすことが可能である。
【００３６】
（大規模一般物体認識装置）
本発明の一実施形態に係る大規模一般物体認識装置は、上述した本発明の線形識別器を有することを特徴とする。
本発明の線形識別器の効果によって、計算資源の使用量を抑えつつ、高速且つ高精度に大規模一般物体の認識が可能となる。
【００３７】
なお、前記大規模一般物体認識装置とは、前記線形識別器に加えて、対象となる一般物体の画像特徴を抽出する手段をさらに有し、対象となる一般物体の画像特徴の抽出〜一般物体の識別までを行うことができる装置のことである。
【００３８】
（電子計算機、その他機器）
また、本発明の一実施形態に係る電子計算機は、上述した本発明の大規模一般物体認識装置を備えることを特徴とする。
上述の構成を備えることによって、計算資源の使用量を抑えつつ、高速且つ高精度に大規模一般物体の認識が可能となる。
【００３９】
なお、前記電子計算機としては、例えば、ＰＣ、スマートフォン、デジタルカメラ、デジタルビデオカメラ、テレビ、ゲーム端末等が挙げられる。
また、前記電子計算機以外にも、上述した本発明の大規模一般物体認識装置を備え、カメラデバイスを備える機器全般及びその機器を組み込んだ機器についても、本発明による効果を享受できる。かかる機器については、例えば、冷蔵庫などの家電や、自動車等が挙げられる。
【００４０】
以下に、具体的に実験を行って得られた実験例を挙げて本発明をさらに詳しく説明するが、本発明は下記の実験例に何ら限定されるものではない。
【００４１】
実験例１では、線形識別器として、一般物体のデータセットを用いて学習した線形識別器を用意した。なお、学習したデータセットのクラス数は1000である。前記識別器の重みベクトルは、1次元あたり、スカラー量子化により1〜32bitに圧縮した。
【００４２】
＜評価＞
上記識別器を、電子計算機端末（SystemWorks PowerMasterServer S4301）に組み込んで、1000種類の一般物体について、48238回の認識を行い、認識精度を評価した。
なお、一般物体の画像特徴については、局所特徴量を、色、輝度勾配から選択し、5ピクセルごと2スケールのデンスサンプリングにより抽出した。局所特徴量はRootHOG-patchの場合には32次元、Color-patchの場合には24次元ベクトルとして抽出し、どちらに対しても次元数は保ってPCA（Principal Component Analysis）を適用した。Gaussian Mixture Model（GMM）のコンポーネント数は64、128、256とし、局所特徴量群をモデリングした。ピラミッドレベル1(1×1，2×2)として局所特徴量ごとにガウシアンの平均から導出されるFisher Vectorを作成した。GMMのコンポーネント数が64、128、256の場合に、それぞれ、RootHOG-patchのFVの次元数（RootHOG-FV）は10240、20480及び40960であり、Color-patchのFVの次元数（Color-FV）は7680、15360、30720となる。
画像特徴の照合は、データセット中の画像から同様に算出したRootHOG-FVとColor-FVに基づいて、これら２つの特徴量について別々に学習した識別器の重みベクトルとの内積をとり、それらの和をとることで評価値を取得し、one-vs-rest方式で求めた。
【００４３】
前記1000種類の一般物体の認識結果を、Gaussian Mixture  Model(GMM)のコンポーネント数が64、128、256の場合について、それぞれ図２に示す。
なお、認識精度の評価については、認識結果をTop（可能性が高い5つの認識対象）で表示する形によって示しており、Top5に一般物体が含まれることで正答とした。Top5について認識対象の正答率（（正しく認識できた数）／（認識を行った数：48238）×100%）を算出し、算出結果を図２に示す。
【００４４】
図２の結果から、GMMが64、128、256のいずれの場合においても、重みベクトルの各要素を2bitへ圧縮することで、32bitの場合と比べて、わずかに識別パフォーマンスの低下（1.81%、1.37%、0.61%程度)が見られた。また、GMMが64、128、256のいずれの場合においても、重みベクトルの各要素を1bitへ圧縮することで、重みベクトルの各要素が32bitの場合と比べて、わずかに識別パフォーマンスの低下（6.54%、4.98%、3.11%程度）が見られた。しかしながら、重みベクトルを圧縮した識別器と、圧縮のない識別器との間に、大きな正答率の差はないともいえ、重みベクトルの圧縮を行わない場合の識別器と同等に近い精度で、一般物体の識別を行えることがわかった。
また、本発明例の識別器は、重みベクトルの圧縮を行わない場合に比べて、サイズが最大で1/32となっており、大きく計算資源の削減ができていることがわかった。
なお、画像特徴の特徴量は、Fisher Vectorによる特徴ベクトル以外のもので、上記よりも次元が低い特徴ベクトル（例えば、1000次元のBag-of-Featuresベクトル）を用いた場合も上記と同様に圧縮によって大幅な性能低下が起こらないという実験結果が得られた。
【００４５】
次に、実験例２では、本発明例の線形識別器として、食事画像データセットを用いて学習した線形識別器を用意した。なお、学習した食事画像データセットの種類は256種類であり、食事画像に用いられた重みベクトルは、１次元あたり、スカラー量子化により2bitに圧縮されていた。
比較例の線形識別器として、重みベクトルを圧縮しなかったこと以外は、本発明例と同様の条件の線形識別器を用意した。なお、１次元あたりの重みベクトルのサイズは32bitである。
ここで、非圧縮重みベクトルの要素のスカラー値の分布を図３に示す。３本の縦線によって４つの値域にスカラー値が分割され、それぞれ00、01、10、11の2ビット値に量子化されることを示す。
【００４６】
＜評価＞
本発明例及び比較例のそれぞれの識別器をスマートフォン［Galaxy S5（登録商標）］（2.6GHz、Android4.4.2）に組み込んで、256種類の一般物体(食事)について、5120回の認識を行い、認識精度を評価した。
【００４７】
なお、一般物体の画像特徴については、局所特徴量を、色、輝度勾配から選択し、5ピクセルごと2スケールのデンスサンプリングにより抽出した。局所特徴量はRootHOG-patchの場合には32次元、Color-patchの場合には24次元ベクトルとして抽出し、どちらに対しても次元数は保ってPCAを適用した。Gaussian Mixture Model(GMM)のコンポーネント数は64とし、局所特徴量群をモデリングした。ピラミッドレベル2(1×1，3×1，2×2)として局所特徴量ごとにガウシアンの平均と分散から導出されるFisher Vectorを作成した。Color-FVは24576次元、RootHOG-FVは32768次元となる。
画像特徴の照合は、データセット中の食事画像から同様に算出したRootHOG-FVとColor-FVに基づいて、これら2つの特徴量について別々に学習した識別器の重みベクトルとの内積をとり、それらの和をとることで評価値を取得し、one-vs-rest方式で求めた。
本発明例について、１つの食事画像についての重みベクトルの要素のスカラー値の分布が示されており、３本の縦線によって４つの値域にスカラー値が分割され、それぞれ00、01、10、11の2ビット値に量子化されている。
【００４８】
本発明例及び比較例について、前記256種類の一般物体の認識結果を図４に示す。
なお、認識精度の評価については、認識結果をTop5（可能性が高い５つの認識対象）で表示する形によって示しており、Top1及びTop5のそれぞれについて認識対象の正答率（（正しく認識できた数）／（認識を行った数：5120）×100（％））を算出した。算出結果を図４に示す。
【００４９】
図４の結果から、本発明例と比較例との間に正答率の差はほとんどなく、重みベクトルの圧縮を行わない場合の識別器と同等の精度で、一般物体の識別を行えることがわかった。
また、本発明例の識別器は、サイズが比較例の識別器の1/16となっており、大きく計算資源の削減ができていることがわかった。そのため、次元数を増やすなどしてより高精度な識別を行える可能性がある。
さらに、本発明例の識別器を用いた場合の識別時間は、平均0.1608秒であり、高速に認識が行われていたことがわかった。
【００５０】
本発明によれば、計算資源の使用量を抑えつつ、高速且つ高精度に大規模一般物体の認識を可能にする線形識別器、大規模一般物体認識装置及び電子計算機を提供できる。
【００５１】
ここで、以下では、上述したような線形識別器を用いた一般物体の識別を、モバイル端末で実行する画像認識システムについて説明する。
【００５２】
図５は、本技術を適用した画像認識システムの一実施の形態の構成例を示すブロック図である。
【００５３】
図５に示すように、画像認識システム１１は、例えば、インターネットなどのネットワーク１２を介して、データ処理装置１３、アプリケーション提供装置１４、およびモバイル端末１５が接続されて構成され、モバイル端末１５において画像認識が行われる。なお、モバイル端末１５が画像認識を行う際においてネットワーク１２に接続されている必要はなく、モバイル端末１５は、画像認識機能を備えたカメラアプリケーションをダウンロードした後、単体で画像認識を行うことができる。
【００５４】
データ処理装置１３は、例えば、所定の演算能力を有するパーソナルコンピュータにより構成され、モバイル端末１５の処理能力で画像認識を高速かつ高精度に実行することを可能とする重みベクトルを生成する重みベクトル生成処理を行う。そして、データ処理装置１３は、生成した重みベクトルを、画像認識機能を備えたカメラアプリケーションに格納し、ネットワーク１２を介してアプリケーション提供装置１４に送信する。なお、データ処理装置１３の構成例については、図６を参照して後述する。
【００５５】
アプリケーション提供装置１４は、モバイル端末１５で実行される様々なアプリケーションを提供することができ、例えば、データ処理装置１３から送信されたカメラアプリケーションをモバイル端末１５に提供することができる。
【００５６】
モバイル端末１５は、例えば、様々なアプリケーションをダウンロードして実行することができるスマートフォンにより構成される。例えば、モバイル端末１５は、データ処理装置１３により生成された重みベクトルを格納したカメラアプリケーションを、アプリケーション提供装置１４からダウンロードして実行することで、高速かつ高精度に画像認識を行うことができる。なお、モバイル端末１５の構成例については、図７を参照して後述する。
【００５７】
このように構成される画像認識システム１１では、データ処理装置１３において予め圧縮された重みベクトルを生成し、モバイル端末１５において、単体で、その圧縮された重みベクトルを用いた画像認識が行われる。これにより、例えば、モバイル端末１５は、限られた演算資源（処理能力およびメモリ容量）であっても、1000種類の一般物体に対する画像認識を高速かつ高精度に行うことができる。
【００５８】
なお、画像認識システム１１では、ネットワーク１２を介してデータ処理装置１３で生成された重みベクトルを送信して、アプリケーション提供装置１４またはモバイル端末１５においてカメラアプリケーションに格納するようにしてもよい。例えば、カメラアプリケーションに格納される重みベクトルを適宜更新することで、モバイル端末１５による画像認識の性能を向上させることができる。
【００５９】
次に、図６は、データ処理装置１３の構成例を示すブロック図である。
【００６０】
図６に示すように、データ処理装置１３は、通信部２１、局所特徴量抽出部２２、画像特徴量生成部２３、学習用線形識別器２４、学習用データ記憶部２５、重みベクトル圧縮処理部２６、および、データ記憶部２７を備えて構成される。
【００６１】
通信部２１は、図５のネットワーク１２を介して通信を行い、例えば、データ記憶部２７に記憶されているカメラアプリケーションをアプリケーション提供装置１４に送信する。また、通信部２１は、データ処理装置１３において重みベクトル生成処理を行う際に、ネットワーク１２を介して、図示しないサーバと通信を行い、学習用のサンプル画像を１枚ずつ受信して局所特徴量抽出部２２に供給する。
【００６２】
局所特徴量抽出部２２は、通信部２１から供給される学習用のサンプル画像から、その画像に写されている一般物体を多数の特徴点において局所的に表現する特徴ベクトルを局所特徴量として抽出し、画像特徴量生成部２３に供給する。例えば、局所特徴量は、１枚の画像について数百次元の数千個の特徴ベクトルからなり、上述したようなRootHOG-patchやColor-patchなどを用いることができる。
【００６３】
画像特徴量生成部２３は、局所特徴量抽出部２２から供給される局所特徴量から、学習用のサンプル画像に写されている一般物体の全体を表現する特徴ベクトルを画像特徴量として生成し、学習用線形識別器２４に供給する。例えば、画像特徴量生成部２３は、数百次元の数千個の特徴ベクトルからなる局所特徴量を、数万次元の１つの特徴ベクトルに変換（コード化）することによって、画像特徴量を生成する。例えば、画像特徴量は、上述したようなFisher Vectorを用いることができる。
【００６４】
学習用線形識別器２４は、画像特徴量生成部２３から供給される画像特徴量を用いた学習を行い、学習用のサンプル画像に写されている一般物体を特定するための境界を定めるパラメータである重みベクトルを求める。
【００６５】
例えば、ある一般物体について、その一般物体が写された規定枚数の学習用のサンプル画像を用いて学習が行われ、学習用線形識別器２４は、１枚目の学習用のサンプル画像の画像特徴量と重み行列との内積を求めることで重みベクトルを算出する。次に、学習用線形識別器２４は、２枚目の学習用のサンプル画像の画像特徴量と重み行列との内積を求めることで重みベクトルを更新し、順次、規定枚数の学習用のサンプル画像の全てについて重みベクトルの更新を繰り返す。そして、学習用線形識別器２４は、最終的に求められた重みベクトルを、認識処理において用いる重みベクトルとして、重みベクトル圧縮処理部２６に供給する。
【００６６】
学習用データ記憶部２５は、学習用線形識別器２４が重みベクトルを求める学習を行う際に一時的に保持しておく必要のあるデータ、例えば、重みベクトルおよび重み行列を記憶する。
【００６７】
重みベクトル圧縮処理部２６は、学習用線形識別器２４から供給される重みベクトルをスカラー量子化によって圧縮し、その圧縮された重みベクトルをデータ記憶部２７に記憶されているカメラアプリケーションに格納する。即ち、上述の図３に示したように、重みベクトル圧縮処理部２６は、重みベクトルを、００，０１，１０，１１の４値で表現される２ビットに圧縮する。なお、以下では、２ビットに圧縮した重みベクトルについて説明するが、重みベクトルの圧縮は２ビットに限定されることはなく、少なくとも４ビット以下のサイズに圧縮することが好ましい。
【００６８】
例えば、重みベクトルは、マイナス無限大からプラス無限大までの値で求められ、全ての重みベクトルについての分布の標準偏差σに基づいて、重みベクトルを４値で表現する境界線（図３の３本の縦線）が決定される。この境界線は、多数の画像を用いて認識処理を行ったときに正答率が最も高くなるように実験的に決定することができ、図３の例は、この境界線が-2.2σ/2，0，2.2σ/2として求められたものである。従って、重みベクトル圧縮処理部２６は、このような境界線に従って、重みベクトルを圧縮することができる。なお、one-vs-rest法により画像分類をする場合には、画像認識を行う側の線形識別器（例えば、図７の線形識別器３６）から出力される評価値の大小関係のみが必要となる。そして、画像認識を行う側の線形識別器の出力は内積で定義されるため、このように圧縮された重みベクトルを復元する作業を行わなくても、認識処理の精度の低下を抑制することができる。
【００６９】
データ記憶部２７は、アプリケーション提供装置１４に送信されるカメラアプリケーションを記憶しており、そのカメラアプリケーションに、重みベクトル圧縮処理部２６により圧縮された重みベクトルが格納される。また、それらの重みベクトルには、それぞれの重みベクトルを求めるのに用いられた学習用のサンプル画像に写されていた一般物体の名称（分類クラス）が対応付けられている。
【００７０】
このようにデータ処理装置１３は構成されており、モバイル端末１５の処理能力で画像認識を高速かつ高精度に実行することを可能とするように、適切に圧縮された重みベクトルを生成することができる。
【００７１】
なお、データ処理装置１３としては、教師あり学習を用いるパターン認識モデルの一つであるサポートベクターマシン（support vector machine）を適用することができる。サポートベクターマシンは、未学習の画像に対して高い識別性能を得ることができる。
【００７２】
次に、図７は、モバイル端末１５の構成例を示すブロック図である。
【００７３】
図７に示すように、モバイル端末１５は、通信部３１、データ記憶部３２、撮像部３３、局所特徴量抽出部３４、画像特徴量生成部３５、線形識別器３６、選出処理部３７、および出力部３８を備えて構成される。
【００７４】
通信部３１は、図５のネットワーク１２を介して通信を行い、例えば、アプリケーション提供装置１４から提供されるカメラアプリケーションをダウンロードし、カメラアプリケーションに格納されている重みベクトルをデータ記憶部３２に記憶させる。
【００７５】
データ記憶部３２は、データ処理装置１３において生成された重みベクトルと、それぞれの重みベクトルを求めるのに用いられた学習用のサンプル画像に写されていた一般物体の名称（分類クラス）とを対応付けて記憶する。つまり、データ記憶部３２は、データ処理装置１３の重みベクトル圧縮処理部２６においてスカラー量子化が行われて圧縮された状態の重みベクトルを保持している。
【００７６】
撮像部３３は、例えば、CCD（Charge Coupled Device）やCMOS（Complementary Metal Oxide Semiconductor）イメージセンサなどの撮像素子を有して構成され、撮像素子により撮像された画像を出力する。
【００７７】
局所特徴量抽出部３４は、撮像部３３により撮像された画像を認識処理の対象として、図６の局所特徴量抽出部２２と同様に、その画像から局所特徴量を抽出して、画像特徴量生成部３５に供給する。
【００７８】
画像特徴量生成部３５は、図６の画像特徴量生成部２３と同様に、局所特徴量抽出部３４から供給される局所特徴量から、認識処理の対象となっている画像の特徴を表す画像特徴量を生成して、線形識別器３６に供給する。
【００７９】
線形識別器３６は、画像特徴量生成部３５から供給される画像特徴量と、データ記憶部３２に記憶されている全ての重みベクトルとの内積を求める演算を行い、その演算により求められる評価値を選出処理部３７に供給する。例えば、1000種類の一般物体が認識可能である場合、データ記憶部３２には、1000個の圧縮された重みベクトルＷｉ（ｉ＝1〜1000）が記憶されている。従って、線形識別器３６は、全ての重みベクトルＷｉについて順次、画像特徴量ｘとの内積（＝Ｗｉ・ｘ）を演算することによって、1000個の評価値Ｇｉ（ｘ）を求める。
【００８０】
選出処理部３７は、線形識別器３６から供給される評価値に従って、認識処理の対象となっている画像に写されている一般物体についての認識結果を出力する。例えば、選出処理部３７は、全ての評価値を降順に並べ、最も値が高い１つ（１位）の評価値を求めるのに用いられた重みベクトルに対応付けられている一般物体の名称を認識結果として選出する。または、選出処理部３７は、値が高い順に５つ（上位５位）の評価値を求めるのに用いられた重みベクトルに対応付けられている一般物体の名称を認識結果として選出する。
【００８１】
出力部３８は、例えば、液晶ディスプレイなどの表示装置を有して構成され、撮像部３３により撮像された画像とともに、選出処理部３７により認識結果として選出された一般物体の名称を、その画像に写されている一般物体の認識結果として表示する。なお、出力部３８は、例えば、スピーカを有して構成されてもよく、認識結果を音声により出力することができる。
【００８２】
このようにモバイル端末１５は構成されており、圧縮された重みベクトルを用いて線形識別器３６により演算を行うため、画像認識を高速に行うことができ、データ記憶部３２も小容量でよい。また、モバイル端末１５は、圧縮された重みベクトルをそのまま用いることで、復元作業などを行う場合と比較しても、認識処理を高速化することができる。このとき、線形識別器３６から出力される評価値の大小関係に従って選出処理部３７により認識結果が選出されるので、圧縮された重みベクトルをそのまま用いても、認識処理の精度の低下を抑制することができる。
【００８３】
図８は、モバイル端末１５において認識処理を実行したときに出力部３８の表示装置に表示される画像認識実行画面の表示例を示す図である。
【００８４】
図８に示すように、画像認識実行画面４１には、画像表示部４２および認識結果表示部４３が配置されている。
【００８５】
画像表示部４２には、撮像部３３により撮像された画像が表示されるとともに、認識処理の対象となる物体を囲むように認識枠４４が表示される。
【００８６】
認識結果表示部４３には、画像表示部４２の認識枠４４において囲われて表示されている物体に対する画像認識結果が表示される。図８の例では、上位５位の認識結果が順位に従って認識結果表示部４３に表示されている。
【００８７】
このように、画像認識実行画面４１では、認識処理の対象となる物体と、その物体に対する認識結果とを並べて表示することで、より直観的なユーザインタフェースを提供することができる。
【００８８】
また、モバイル端末１５では、例えば、撮像部３３により所定のフレームレートで撮像が行われ、順次、撮像部３３から出力される画像を対象として認識処理を行うことができる。即ち、モバイル端末１５において、線形識別器３６は、圧縮された状態の重みベクトルをそのまま（復元することなく）用いて評価値を求める演算を行うことができるので、より高速に認識結果を求めることができる。
【００８９】
これにより、モバイル端末１５は、撮像部３３を物体にかざすと、ほぼリアルタイムに画像認識実行画面４１に認識結果を表示することができる。従って、モバイル端末１５は、例えば、撮像部３３により撮像される一般物体が異なるものになると、すぐに、その一般物体の認識結果を表示することができる。
【００９０】
次に、図９は、データ処理装置１３において行われる重みベクトル生成処理を説明するフローチャートである。例えば、データ処理装置１３では、学習を行う一般物体ごとに処理が行われる。
【００９１】
ステップＳ１１において、局所特徴量抽出部２２は、通信部２１から供給される学習用のサンプル画像の局所特徴量を抽出して、画像特徴量生成部２３に供給する。
【００９２】
ステップＳ１２において、画像特徴量生成部２３は、ステップＳ１１で局所特徴量抽出部２２から供給された局所特徴量から、学習用のサンプル画像の画像特徴量を生成して、学習用線形識別器２４に供給する。
【００９３】
ステップＳ１３において、学習用線形識別器２４は、ステップＳ１２で画像特徴量生成部２３から供給された学習用のサンプル画像の画像特徴量と、重み行列との内積を演算することにより、学習用のサンプル画像の重みベクトルの算出を行う。または、ステップＳ１３の処理が２回目以降である場合には、学習用線形識別器２４は、前回のステップＳ１３で求めた重みベクトルの更新を行う。
【００９４】
ステップＳ１４において、学習用線形識別器２４は、ステップＳ１３での重みベクトルの更新について、規定回数の繰り返しを行ったか否かを判定する。例えば、ある一般物体について１０枚の学習用のサンプル画像を用いて重みベクトルを求めるように設定されているとき、ランダムに選ばれた１０枚の学習用のサンプル画像の全てを用いて、重みベクトルの更新が１０回繰り返して行われる。従って、このとき、学習用線形識別器２４は、重みベクトルの更新について、１０枚の学習用のサンプル画像の全てを用いた場合には、規定回数の繰り返しを行ったと判定し、まだ用いていない学習用のサンプル画像がある場合には、規定回数の繰り返しを行っていないと判定する。
【００９５】
ステップＳ１４において、学習用線形識別器２４が、規定回数の繰り返しを行っていないと判定した場合、処理はステップＳ１１に戻る。この場合、次の学習用のサンプル画像を処理の対象として、以下、同様の処理が行われる。
【００９６】
一方、ステップＳ１４において、学習用線形識別器２４が、規定回数の繰り返しを行ったと判定した場合、処理はステップＳ１５に進む。
【００９７】
ステップＳ１５において、学習用線形識別器２４は、所定回数の繰り返しを行って最終的に求められた重みベクトルを重みベクトル圧縮処理部２６に供給する。そして、重みベクトル圧縮処理部２６は、学習用線形識別器２４から供給された重みベクトルをスカラー量子化によって圧縮し、圧縮された重みベクトルをデータ記憶部２７に記憶されているカメラアプリケーションに格納して、処理は終了される。
【００９８】
以上のように、データ処理装置１３では、学習を行う一般物体ごとに重みベクトル生成処理が行われ、それぞれの一般物体を特定するための境界を定めるパラメータとして圧縮された重みベクトルを求めることができる。
【００９９】
次に、図１０は、モバイル端末１５において行われる認識処理について説明するフローチャートである。例えば、モバイル端末１５においてカメラアプリケーションが実行されて、撮像部３３により撮像された画像が出力されると処理が開始される。
【０１００】
ステップＳ２１において、局所特徴量抽出部３４は、撮像部３３により撮像された画像を認識処理の対象として、その画像から局所特徴量を抽出して、画像特徴量生成部３５に供給する。
【０１０１】
ステップＳ２２において、画像特徴量生成部３５は、ステップＳ２１で局所特徴量抽出部３４から供給された局所特徴量から、認識処理の対象となっている画像の画像特徴量を生成して、線形識別器３６に供給する。
【０１０２】
ステップＳ２３において、線形識別器３６は、データ記憶部３２に記憶されている重みベクトルを圧縮した状態のまま用いて、重みベクトルと画像特徴量との内積を求めることにより評価値を算出する。そして、線形識別器３６は、データ記憶部３２に記憶されている全ての重みベクトルについて順次、画像特徴量との内積を求めて、求めた全ての評価値を選出処理部３７に供給する。
【０１０３】
ステップＳ２４において、選出処理部３７は、ステップＳ２３で線形識別器３６から供給された全ての評価値に従って、認識処理の対象となっている画像に写されている一般物体の認識結果を出力する。
【０１０４】
ステップＳ２５において、出力部３８は、上述の図８に示した画像認識実行画面４１により、認識処理の対象となっている画像とともに、選出処理部３７により選出された認識結果を表示し、処理は終了される。
【０１０５】
以上のように、モバイル端末１５では、圧縮された重みベクトルを用いて認識処理を行うことで、より高速かつ高精度に一般物体を認識した認識結果を出力することができる。
【０１０６】
なお、上述したような認識処理は、モバイル端末１５に適用する他、撮像部を備えた様々な機器に適用することができる。例えば、パーソナルコンピュータ（パソコン）に既に蓄積されている大量の写真に写されている一般物体を認識し、その名称をメタデータとして記録するようなアプリケーションに適用することができる。また、例えば、セルフサービス形式の食堂において、トレーに乗せられた複数の料理の画像を認識して、自動的に合計金額やカロリーなどを算出するようなアプリケーションに適用することができる。さらに、例えば、日々の生活を記録するライフログアプリケーションの一機能として認識処理を組み込むことで、モバイル端末１５により食事を撮像すると、その食べ物の名称（メニュー）を自動的に記録することができる。また、動物園や水族館などにおいて、モバイル端末１５により動物や魚などを撮像すると、それらの名称とともに詳細な説明を表示するようなアプリケーションに適用してもよい。
【０１０７】
ところで、一般的に、形態の変化しない特定の物体を認識する特定物体認識があるが、特定物体認識は、特定の物体を様々な条件で撮像した画像のデータベースを検索することで、その特定の物体を認識するものである。例えば、特定物体認識では、特定物体において不変の特徴量どうしを比較することにより認識処理が行われる。
【０１０８】
これに対し、本技術を適用した一般物体認識は、同じ名称の一般物体でも形態が様々に変化するものを認識することができ、特定物体認識とは異なる処理が行われる。例えば、一般物体認識では、一般物体を特定するための境界を定めるパラメータである重みベクトルを用いて処理を行うのに対し、特定物体認識では、重みベクトルが用いられることはない。従って、例えば、特定物体認識においてデータベースを削減するために圧縮処理が行われていたとしても、その圧縮処理を一般物体認識で用いる重みベクトルの圧縮に適用することを当業者が容易に到達することができるとは認められない。
【０１０９】
なお、上述のフローチャートを参照して説明した各処理は、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含むものである。また、プログラムは、１つのCPU（Central Processing Unit）により処理されるものであっても良いし、複数のCPUによって分散処理されるものであっても良い。また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１１０】
なお、本実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０１１１】
１１  画像認識システム，  １２  ネットワーク，  １３  データ処理装置，  １４  アプリケーション提供装置，  １５  モバイル端末，  ２１  通信部，  ２２  局所特徴量抽出部，  ２３  画像特徴量生成部，  ２４  学習用線形識別器，  ２５  学習用データ記憶部，  ２６  重みベクトル圧縮処理部，  ２７  データ記憶部，  ３１  通信部，  ３２  データ記憶部，  ３３  撮像部，  ３４  局所特徴量抽出部，  ３５  画像特徴量生成部，  ３６  線形識別器，  ３７  選出処理部，  ３８  出力部
【図１】
2016029568.tif 000005
【図２】
2016029568.tif 000006
【図３】
2016029568.tif 000007
【図４】
2016029568.tif 000008
【図５】
2016029568.tif 000009
【図６】
2016029568.tif 000010
【図７】
2016029568.tif 000011
【図８】
2016029568.tif 000012
【図９】
2016029568.tif 000013
【図１０】
2016029568.tif 000014