画像認識を用いたモバイル食事記録システム

河野 憲之


Date: 2013年 2月 7日



1 はじめに

近年、携帯端末やPCを利用して日々の食事記録を取るサービスが増加している。 記録方法としては、テキスト入力、プルダウンメニュー選択などの方法で記録す ることが多いが、毎日複数回使用することを考えると手間が大きく、継続した利 用に飽きる恐れもある。また、スマートフォンが普及し、それに伴い、その 性能が向上している。

2 研究の目的

画像認識を用いることにより、日々の食事記録を簡単に取ることのできるシステ ムを開発する。システムは、モバイルアプリケーションとして実装する。また、 リアルタイムに正確な食事記録をとるために、コストの高いサーバとの通信なし に、モバイルデバイスの計算資源のみを用いて画像認識を行う。

3 関連研究

食事認識では、松田ら[1]は食事100種類、複数品の認識を行った。 手法は、多数特徴量に多数検出手法を用い、計算コストが非常に大きい。また、 Foodlog1では、食事画像をサーバに送ると、 バランス推定を行う。結果が誤っている場合には、ユーザが手動で修正することに なるので、結果を得た後に、正しいか確認することになる。本研究でも、食事認 識を行うが、特に計算資源を考慮し、食事認識を行う。

画像処理を利用するモバイルアプリケーションには、ロゴや芸術品を認識するGoogle Goggles2や、 葉独自の形状特徴を抽出し、認識しその種を返す、Leaf snap[2]などがある。 本研究では、食事を認識するアプリケーションを構築する。それは、リアルタイ ムに食事認識、その場で登録することにより、正確な食事記録をとることのできるシステムである。

また、Yuら[3]は、 位置検索で認識を誤った場合を考慮し、次にどの視点を撮影すれば認識可能にな るかを、 オフラインで場所ごとの顕著性を求め、オンラインで画像マッチング、Gist+SVMにより認識しやすい視点を求 め、ユーザに返すActive Query Sensing(AQS)を提案した。 本研究でも、計算コストの高い部分はユーザに補助してもらい、また、食事領域 の方向を提示することにより、ユーザインタラクティブなシステムを構築する。

4 システムの概要

1 食事記録登録

図1は本システムの認識画面である。

本システムの食事記録の流れは以下の通りである。

  1. スマートフォンを食事にかざす
  2. ユーザは必要あれば食事領域を入力する
  3. 食事認識を行う
  4. 認識結果上位を提示する
  5. ユーザは認識結果上位から食事を選択する
  6. 未選択の食事があれば、2.もしくは3.に戻る
  7. 食事画像を保存する
  8. 食事を登録する

リストの更新は一定時間ごと、食事領域は0〜4つまで可能である。

2 記録閲覧

記録した食事は、 新 毎日の食事のカロリーガイドブック 外食編/ファストフード・コンビニ編/市販食品編/家庭のおかず編 3より各料理の栄養素、 四群点数を参照し、量を元に算出したカロリーと四群点数を 日毎に、「朝食」、「昼食」、「夕食」、「その他」、「1日の合計」を閲覧 可能である。摂取目安カロリーは日本人の食事摂取基準 4を参照し 設定された年代、性別、運動習慣を元に設定している。 そして、1日ごとに5つ星で評価を与える。 その他、詳細な栄養素の閲覧、削除、共有、傾向の確認やメモ、位置情報の付与、 Google Maps上で閲覧、アップロードしてWebから閲覧、共有可能である。 図2は本システムの閲覧画面の一例である。
Figure 1: 提案システムのイメージ
1#1
Figure 2: 閲覧画面の一例
[1日ごとに閲覧] 2#2 [Webから閲覧] 3#3

5 認識手法

1 特徴量

使用する特徴量は、カラーヒストグラム、カラーモーメント、 カラーオートコレログラム、Gabor、HOG、PHOG、SURF-BoFでその性能を比較し、決定する。

画像サイズが大きい場合は、アスペクト比を保ったまま総ピクセル数3万にリ サイズする。

2 分類

分類器は線形SVMを使用し、one-versus-rest法で多クラス識別問題を解く。 線形SVMは、サポートベクトルとサポートベクトルの重みをあらかじめ計算して おくことにより 4#4の計算量で分類することが可能である。 また、分類器は特徴量ごとに設計した。

BoFベクトルなどを直接線形識別器に適用すると、識別性能が悪いため、 explicit embedding手法により、線形識別器での分類を可能にする。 本研究では、kernel feature maps[4]をL1正規化した特徴ベクトルに適用した。 また、写像には5#5カーネルの写像を利用した。

3 領域推定

背景を含むと、一般に認識性能は低下するため、 食事領域が与えられるとバックグラウンドでGrabCutを適用し、食事領域の補正を行う。

4 食事領域の方向推定

正しく認識できない場合、認識しやすい方向に導くために、 食事のある方向を推定し、提示する。 手法には、SURF-BoFを直接線形SVMに適用し、その評価値を用いたウィンドウ探 索を使用する。 探索するウィンドウは、領域を 6#6の領域と考え、 各辺が(B-2)の矩形領域を、与えられている矩形領域と少なくとも1辺が接するよ うに8ピクセルごとにスライドし、それぞれから評価値を得て、最大評価値になった矩形領域の方向を提示した。 本研究では、 7#7とした。

BoFと線形SVMの評価値は、 積分画像を作成しておくことで 8#8の計算量で得るこ とが可能である。

6 実験

1 実験項目

以下の項目について評価する。
  1. 各特徴量の分類性能の評価
  2. 特徴量結合時の評価
  3. 領域推定による分類性能の評価
  4. 食事領域のある方向提示の評価
  5. 認識速度評価

2 データセット

本システムは、スマートフォン上で認識するので、同様の環境で評価する ことが望まれるが、ここでは、画像データセットを用いて評価を行う。 それは、研究室で構築された食事画像データベースから 50種類、各100枚以上、合計6,781枚の食事画像からなるデータセットである。

3 実験設定

実験1では、正解領域に対して、各特徴量の性能を比較し、使 用する特徴量を決定する。 実験2では、正解領域に対して、特徴量を組み合わせたときと、領域推定もした場合 での性能を評価する。 実験3では、前景に加え背景をx%含んだ領域での性能を評価するが、 データセット2は、カテゴリごとの画像枚数が異なるため、背景を含まない場合 と比較し、どの程度性能劣化があるか評価する。 実験4では、正解領域をx%ずらした領域で元の領域の方向を示すことので きる性能を評価する。 評価は、検証、評価用に各20枚、残りを学習用として5回実験しその平均とした。 実験3、4では評価画像は、背景を十分含むことができた合計1,912枚とした。

認識精度評価には、以下に定義する分類率を用いた。

9#9


食事領域の方向提示の評価には、以下に定義する分類率を用いた。

10#10


実験5では、リストから選択する上でのリアルタイムに認識できるか評価する。 なお、本システムは、今後一般になると考え、4コアのデバイスを想定して並列 処理を行っている。評価に使用するデバイスは、 Galaxy NoteI I(1.6GHz Quad Core Android4.1)である。

4 実験結果

1 実験1

実験結果を図3に示す。
Figure 3: 各特徴量の分類率
11#11
結果より、5#5のカーネルの写像を利用したカラーヒストグラムと SURF-BoFの 性能が高いことがわかる。ゆえに、本システムでは、カラーヒストグラムとSURF-BoFを 用いる。

2 実験2

カラーヒストグラムとSURF-BoFを組み合わせたとき、 正解領域から特徴抽出した場合、1位に53.5%、5位以内に81.6%であった。 また、正解領域に対してGrabCutを適用した場合、1位に51.7%、5位以内に 81.4%であった。

3 実験3

領域推定をしない場合は、背景を30%含むとき、1位で 16.6%、5位以内で15.6%、領域推定した場合は、1位で4.8%、5位以内で4.2% の性能劣化であった。

4 実験4

実験結果を表1に示す。


Table 1: 角度の差と領域のずれごとの分類率
領域のずれ
15% 20% 25%
角度 012#1213#132012#12 31.8% 33.8% 34.5 %
の差 012#1213#134012#12 50.3% 53.1% 54.1 %

結果より、領域のずれが大きいほど精度が高くなることがわかるが、 15%ずれた場合でも、13#132012#12以内に31.8%、13#134012#12以内に 50.3%の精度で食事領域の方向を提示可能であることがわかる。

5 実験5

実装は、まず最も処理コストの高いSURF特徴記述、コードワード割り当てを4コアで並 列処理し、次にコストの非常に小さいSURFの分類、カラーヒストグラム抽出分類はシングルコアで、 また、それと方向推定を4コアで並列処理した。GrabCutも初期モデルの作成を並列化している。

実験結果を表2に示す。

Table 2: 平均実行時間
  平均実行時間[sec]
領域推定 0.70
認識 0.26
方向提示 0.091
認識+方向提示 0.34

SURF-BoFの正規化と写像、分類、カラーヒストグラム抽出、分類は 平均0.0031sec、また、バックグラウンドで領域推定を行っている場合は、 認識部分の平均実行時間は、0.31secであった。 結果より、複数領域入力されていてもリアルタイムに認識可能であることがわかる。

7 まとめ

スマートフォン上でリアルタイムに認識し記録をとる、食事記録システムを構築 した。50種類の食事を認識し、食事領域が与えられると、バックグラウンドで領 域推定を行い、食事領域の補正を行う。また、食事領域の方向を提示することに より、認識しやすい領域を写すように促すシステムである。 そして、デバイス上で記録閲覧、Webにアップロードして閲覧共有可能である。

今後は認識対象の増加と、食の傾向はユーザごとに異なると考えられるので、ユーザ情報を収集し、 ユーザと食の傾向を調査する。そして、ユーザ情報を考慮し、最終的な出力を決定する。


Bibliography

1
松田裕司, 甫足創, 柳井啓司.
候補領域推定に基づく複数品目食事画像認識.
電子情報通信学会論文誌 D, Vol. J95-D, No. 8, pp. 1554-1564, 2012.

2
N. Kumar, P. Belhumeur, A. Biswas, D. Jacobs, W. Kress, I. Lopez, and J. Soares.
Leafsnap: A computer vision system for automatic plant species identification.
In Proc. of European Conference on Computer Vision, 2012.

3
F.X. Yu, R. Ji, and S.F. Chang.
Active query sensing for mobile location search.
In Proceedings of the 19th ACM international conference on Multimedia, pp. 3-12, 2011.

4
A. Vedaldi and A. Zisserman.
Efficient additive kernels via explicit feature maps.
IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 34, No. 3, pp. 480-492, 2012.



Footnotes

... Foodlog1
http://www.foodlog.jp
... Goggles2
http://www.google.com/mobile/goggles/
... 外食編/ファストフード・コンビニ編/市販食品編/家庭のおかず編3
香川芳子 「新 毎日の食事のカロリーガイドブック 外食編/ファス トフード・コンビニ編/市販食品編/家庭のおかず編」 女子栄養大学出版部、 2002年5月
... 可能である。摂取目安カロリーは日本人の食事摂取基準4
厚生労働省 「日本人の食事摂取基準(2010年度版)」p.61