1.は
じ め に
深層学習の登場によって画像認識の性能は飛躍的に向 上し,1 000 種類の物体カテゴリー認識をはじめ多くの 認識タスクにおいて,すでに人間を上回る性能が実現さ れているといわれている.食事画像認識は一般物体認識 の性能が向上した 2010 年前後からその応用問題として 盛んに研究されてきたが,現在,一般的な料理カテゴリー の認識に関しては実用的な精度を達成しており,ほぼ解 決済みの問題となりつつある.例えば,Google Photo や iCloudPhotoなどのクラウド写真管理サービスや GoogleCloudVision APIなどの画像認識WebAPIサービスでは,
一般的なタグに加えて食事カテゴリーのタグ付けも画像 認識によって自動的に行われるようになっている. 一方,スマートフォンの普及によって食事画像の撮影 は容易になり,撮影した食事画像を認識することで健康 管理を行う需要が増大している.実際に,FoodLog,カ ロミル,あすけん,MyFitnessPal など多数のスマート フォンアプリを用いた商用食事記録管理サービスが存在 し,多数の利用者を集めている.また,病気などで食事 制限が必要な人や,病院での患者の食事の記録など,よ り切実に手軽な食事記録手段が必要な場面もある.そう した中で,一部の商用サービスでは,すでに深層学習に よる食事画像認識を利用している.ただし,現状のサー ビスでは,食事のカテゴリー自動認識は可能であるもの の,摂取カロリー量に関しては,料理の分量を手動で入 力する必要があったり,単に料理の種類ごとの標準的カ ロリー量が表示されるだけであったりして,実用的なレ ベルで食事の「量」の認識は実現されているとはいえな い状況である. 食事画像認識を食事管理に実用的に利用するために は,食事カテゴリー認識に加えて食事量,カロリー量, 栄養素量など「量」に関する認識が不可欠である.こう した「量」の認識は食事特有の問題であり,一般的な物 体認識の技術がそのまま利用可能な食事のカテゴリー認 識と異なり,大規模公開データセットが存在しないこと もあり,研究は十分進んでいるとはいえず,今後の重要 な研究課題として残されている.また,ほかにも,正確 なカロリー量や栄養素量の推定のために必要な料理を構 成する材料の認識,食べ残した食事の認識や量推定など の課題も存在する. そうした状況で,研究レベルの食事画像認識では,深 層学習による画像カテゴリー認識手法がそのまま適用可 能な料理カテゴリー認識の研究から,食材認識や写真か らのレシピ検索,食事量やカロリー量推定などに研究の 中心が移りつつあり,さらには料理の魅力度推定や食事 画像生成,高精度になった食事画像認識エンジンを用い た SNS の食事写真分析など,新たな取組みも行われて いる.本稿では,こうした状況を踏まえて,食事画像認 識研究のこれまでと,最新の現状について,データセッ トや我々の取組みも含めて紹介し,さらに今後の研究の 方向について考察する.
2.
初期の食事画像認識研究
食事画像認識は基本的には一般物体認識 [柳井 07] の 応用問題であり,一般物体認識手法を応用することで研 究が行われてきた.食事画像認識の研究は,局所特徴と それに基づく Bag-of-Features(BoF)表現が一般化し, 一般物体認識技術が発展した 2009 年あたりから本格的 に行われるようになった. 海外では,米国パデュー大学の Prof. Delp のグループ の Technology-Assisted Dietary Assessment(TADA) プロジェクト [Zhu 08],国内では,東京大学の相澤 清晴研究室による FoodLog プロジェクト [Aizawa 15,Kitamura 09]や著者のグループが,それぞれ 2009 年
前後から論文発表を始めている.国際ワークショッ プ Workshop on Multimedia for Cooking and Eating Activities(CEA)が ACM Multimedia の併設ワーク ショップとして初めて開催されたのも 2009 年である.
当時は,データセットが整備されておらず,研究を行
食事画像認識の現状と今後
Research Trends on Food Image Recognition
柳井 啓司
電気通信大学大学院情報理工学研究科情報学専攻/人工知能先端研究センターKeiji Yanai Department of Informatics. / Artificial Intelligence eXploration Research Center, The University of Electro-Communications. [email protected], http://mm.cs.uec.ac.jp/
Keywords:
food image recognition, food calorie estimation, generic object recognition, deep learning. 「料理情報の知的処理」うには自前でデータセットを作成することが必要で,研 究室内で撮影した少数の画像のみを利用することが多 かった.例えば,TADA プロジェクトの研究 [Zhu 08] では,50 枚の食事画像だけで研究が行われている. そうした中,2009 年に Intel の Chen らによって世界 初の公開食事画像データセットとして Pittsburgh Fast-food Image Dataset(PFID)[Chen 09] が発表された. アメリカの大手ファストフードチェーンのメニューの 食品 61 種類合計 1 098 枚の食事画像からなる,当時に おいては大規模なデータセットであったため,その後 PFIDを用いた研究が多く行われ,ハンバーガーの野菜・ パン・肉など食材の位置関係を特徴ベクトルにする手法 [Yang 10]など,PFID に特化した手法なども提案された. 同じく 2009 年には,著者のグループからも同じ国際会 議(IEEE ICIP)(しかもポスターの場所が PFID の隣) で食事画像認識の研究発表を行った [Joutou 09].PFID は研究室で収集した画像であったが,我々は食事画像 研究で初めて Web から収集した画像を利用し,日本の 食事 50 種類各 100 枚の合計 5 000 枚からなる食事デー タセットを構築した.この 50 種類は現在,食事画像認 識研究で広く使われている UEC-FOOD100 [Matsuda 12a]の一部となっているが,当時はまだ非公開であった. この研究では,SIFT 特徴の BoF 表現,色ヒストグラム, Gabor特徴など 9 種類の視覚的特徴を Multiple Kernel Learning(MKL)を用いた方法で特徴統合することで, 50種類の料理について 61.3%の割合で正しく分類する ことができた. これらの研究は食事のカテゴリー分類であったが,同 じく 2009 年には,Puri らによって初めて,複数視点か らの三次元形状推定による食事カロリー量推定が試みら れている [Puri 09]. それまでの多くの研究では,認識対象の画像には料 理は 1 種類しか含まれていないことが前提となってい たが,我々はそれまでの 50 種類を 100 種類に拡張した うえで,ご飯,味 汁,おかずが含まれる「定食」のよ うな 500 枚の複数品画像を追加し,さらにすべての画 像中の料理一品ごとにバウンディングボックスを付与 し,100 種類 12 740 枚の食事画像データセット
UEC-FOOD100(図 1)として公開した [Matsuda 12a].なお,
UEC-FOOD100とその拡張版である 256 種類 28 897 枚
の UEC-FOOD256 [Kawano 14a] は,現在でもなお,す べての画像に画像中での料理の位置を表すバウンディン グボックスが付与された唯一の食事画像データセットで あり,後述する food-101 [Bossard 14] とともに食事画 像分類のための標準ベンチマークデータセットとして広 く利用されている.この研究では,当時の最新の物体検 出手法や領域分割手法,食器検出のため円検出,を組み 合わせて,食事領域候補を出し,それぞれの候補矩形に 対して [Joutou 09] の方法で複数の皿の含まれる食事画 像に対する認識を実現した.さらに,[Matsuda 12b] で は,manifold ranking の手法を用いて共起関係を考慮し た複数食事認識を実現した. 我々のグループでは,UEC-FOOD100 に対応した食 事認識エンジンを Android スマートフォンで動作するア プリケーション“FoodCam”として実装することも行っ た.BoF と色ヒストグラムを統合して 0.26 秒で認識で きる初代バージョン [Kawano 13b],BoF より精度が高 い FisherVector(FV)を利用し 0.065 秒で認識可能な 2代目バージョン [Kawano 13a] を発表した.2 代目で, 100種類の認識精度は 51.9%で,候補上位 5 位以内に正 解の食事名が入る精度は 79.2%であった [Kawano 15]. 図 2 に“FoodCam”のスクリーンショットを示す.カ ロリー量も表示されるが,量の推定は行っておらず,ス ライダーでユーザが手動で食事量を指定することで,カ ロリー推定を実現している.また手動で認識領域を指定 することで,複数品の認識に対応している. 2010年 に は 東 大 の 相 澤 研 究 室 を 母 体 と す る ベ ン チャー企業の foo.log が設立され,画像認識技術を用いた 商用の食事記録サービス FoodLog が開始された [Aizawa 15, Kitamura 09].サービスは無料公開されており,ユー ザ登録のみで誰もが利用可能である.サービス開始当初 は Web 画面での利用を前提としていたが,現在におい ては iOS/Android のアプリから使うのが一般的な使い方 となっている.サービス開始当初から,FoodLog では画 像認識によって主食,主菜,副菜などの食事バランスの 自動推定が行われており,その後,その時点での最新の 食事画像認識の技術を取り入れて進化を続けている.基 図 1 UEC-FOOD100 の 100 種類の食事画像の一部 図 2 リアルタイム 100 種類食事認識の Android アプリ FoodCam
本的に認識はサーバサイドで行うが,最新の iOS 版のア プリには深層学習に基づく認識エンジンが実装され,ア プリサイドでも食事画像認識が可能となり,さらに複数 の料理が 1 枚の写真に含まれている場合でも個々の料理 の位置が認識されるようになっている.ただし,量に関 してはユーザがおおよその量を指定してやる必要がある など,一部手動の操作が必要になっている.相澤研究室 では,FoodLog の実データを活用した食事画像認識の個 人適応の研究にも力を入れている [Horita 18b].こうし た研究は実サービスのデータが必要なため,ほかでは行 われておらず,世界でも唯一無二の研究となっている.
3.
深層学習時代の食事画像認識
ImageNet Large-Scale Visual Recognition Challenge 2012(ILSVRC 2012) の 1 000 種 類 画 像 分 類 タ ス ク においてトロント大学チームが圧倒的な性能差で勝利 して以来,深層学習技術である Deep Convolutional Neural Network(CNN)が画像認識の基本技術となっ た [Krizhevsky 12].数年前までの標準的な技術であっ た SIFT をはじめとする局所特徴量の BoF 表現と SVM の組合せは,その後“hand-crafted features”とされ, すでに昔の技術として扱われている.それは,CNN が単に 1 000 種類の物体認識で成功しただけでなく, ILSVRCの 100 万枚規模の大規模画像データで事前学習 (pre-training)したネットワークを,数万枚規模の小規 模なデータセットを用いて再学習(fine-tuning)するこ とによって,小規模データの認識においても従来を大幅 に上回る認識性能を実現可能であることが示されたこと が大きい.実際,食事認識でも 1 000 種類データセット で事前学習したネットワークを用いることが一般的であ る.さらに,現在においては,物体検出,領域分割,画 像説明文生成に至るまでほぼすべての画像認識のタスク が ILSVRC の 100 万枚で事前学習した CNN を利用す ることによって,その最高性能が大きく書き換えられて いることは,ご承知のとおりである. 食事画像認識にも,その波は当然押し寄せており, ILSVRC2012で CNN による画像認識の有効性を示し た Alex Krizhevsky が開発した深層学習ソフトである CUDA-Convnetを利用して,2014 年には加賀谷らが初 めて CNN による食事画像の学習を行った [Kagaya 14]. しかしながら,現在小規模データの CNN で一般的に用 いられる,大規模データで事前学習したモデルを再学習 するという学習方法を採らなかったため,精度はあまり 高いものではなかった.なお,CUDA-Convnet は使い 方が難解なツールで,当時,これを使って新しいモデル を学習することができたのはごくわずかの研究者であっ た.現在では,さまざまな深層学習フレームワークが手 軽に利用可能であるため,学習データさえあれば,誰で も容易に CNN による食事画像を含めた一般物体認識を 行うことが可能となっており,これは当時では考えられ ない状況である. その後,CUDA-Convnet 以外にも深層学習ツールが 登場し,我々のグループでは河野らが1 000種類画像デー タで学習した Overfeat [Sermanet 14] を使って CNN 特 徴量を抽出し,従来利用していた FV と組み合わせて SVMで学習することによって,UEC-FOOD100 の分類 精度が FV 単独の 65.3%から 72.3%まで向上することを 示した.ただし,Overfeat のネットワークは一般的な 1 000種類物体で学習したものであったため,CNN 特 徴量単体では 57.6%で FV には及ばなかった [Kawano 14b].その後,ImageNet の通常の 1 000 種類に加え て,ImageNet 全 21 841 カテゴリーの中から food 関連 の 1 000 種類を選び合計 2 000 種類として,Caffe [Jia 14]を用いて AlexNet [Krizhevsky 12] を事前学習した ネットワークを用いて CNN 特徴量を抽出して,それの みで SVM で分類したところ 71.8%となり,大幅な性能 向上が得られた.このことから,学習済みネットワーク を使う場合は,同じドメインである食事画像で事前学 習してあったほうが性能が大幅に高いことが示された [Yanai 15].さらにこのネットワークを UECFOOD100 で fine-tuning して CNN を使って分類を行ったとこ ろ,最高性能の 78.5%が得られた(その後,VGG-16 [Simonyan 15]を使うと 81%が得られることを確認し ている).Food 1 000 種類を含む 2 000 種類での事前学 習は,その後のモバイルアプリ DeepFoodCam 用のネッ トワークでも継続して行っている.なお,この研究では ImageNet全 21 841 カテゴリー中の food 関連の 1 000 種類の画像を事前学習に利用したが,この 1 000 種類と いうのは数ある食事画像認識用のデータセットを押し退 けて,図らずも世界最大の食事カテゴリー数となってお り,ImageNet のフルセット版は世界最大の食事画像デー タセットにもなっていることが判明した(同様に,動物, 植物などおそらくほとんどのドメインにおいて一般的に 使われる詳細画像データセットよりも ImageNet のほう が規模が大きいと思われる).
2014年 に は ECCV に お い て ETH の Bossard ら [Bossard 14]が食事 SNS サイトの foodspotting. com から収集した 101 種類各 1 000 枚という 1 カテ ゴリー当たりの画像枚数がこれまでにない多さを誇る ETH-Food101datasetを使った研究を発表した.論文の 提案内容は Random Forest によるものであったが,カ テゴリー当たりの画像枚数の多さから ETH-Food101 は CNN
の学習に適しており,論文中の実験では,hand-crafted featureと Random Forest を用いた提案手法よ りも,特に工夫せずに Caffe を使って AlexNet を学習し たほうが良い結果になるという CNN の高性能さを皮肉 な形で示すことになってしまっている.このデータセッ トは,CNN 時代の標準的な食事画像データセットとし て広く利用されており,提案手法自体よりもデータセッ
ト論文として有名になっている. 2014年以降多くの CNN による食事認識が提案され ているが,その多くが通常の一般物体に対する手法を そのまま食事画像データセットに適用しただけの研究が 大部分であった.それに対して,香港市立大学の Chen らは 2016 年に,料理カテゴリーに加えて,画像から 確認可能な食材ラベルも追加した 172 カテゴリー合計 110 241枚からなる中国料理の食事画像データセット VIREO Food-172を構築し,食事向きの新しい手法とし て Multi-task CNN を利用した料理カテゴリーと食材ラ ベルの同時学習を提案した [Chen 16].これにより,別々 に学習するよりも,料理と食材の双方の推定精度が向上 することが示され,さらに推定された食材ベクトルに よって,類似食事画像検索が高精度に可能となることが 示された.UEC-FOOD100 にも同様の食材ラベルを追 加付与し,82.1%という UEC-FOOD100 での当時の最 高分類精度も達成している. 2016年には,スマートフォン内で認識を行う食事画 像認識モバイルアプリにも CNN が利用されるように なった.当時はモバイル用のフレームワークは存在せず, 我々のグループでは,Caffe で学習したモデルから C 言 語の実行コードを直接生成する Caffe2C [Tanno 16b] を 作成し,FoodCam の CNN 版の DeepFoodCam [Tanno
16a]を実現した. 一般に,CNN のモバイル化で問題になるのは,膨大 なパラメータと計算量への対応である.AlexNet は 1 パラメータを 32 bit で表現すると約 240 MB が必要で あり,これは明らかにモバイル実装には向いていない. AlexNetのパラメータの大部分は最後の 3 層の全結合層 であるので,全結合層をもたない Network-In-Network (NIN)[Lin 13] を採用することで 30 MB に抑えること ができ,さらに 8 bit で表現することで,性能低下 0.5% があるものの 7.5 MB とすることができた.1 枚の画像 の認識には NIN を用いた場合,約 10 億回の四則演算 が必要であるが,ネットワークモデルの C 言語ソース コードへの直接変換,マルチスレッド化,ARM プロ セッサの SIMD 命令である Neon の利用,さらに 7×7 のフィルタを 7×1 と 1×7 に分解し計算量を削減する Flattened CNN [Jin 15]などの高速化テクニックを駆使
して,iPhone 7Plus で 1 回の認識時間 55.7 ms,UEC-FOOD100の分類精度 78.8%(top1),5 位以内 95.2%(top 5)を実現し,従来手法による FoodCam よりも高速な 認識を実現した.NIN は全結合をもたない Fully CNN であるため入力画像は可変とすることが可能であり,入 力画像を 227×227 から 160×160 にサイズダウンする と,71.5%(top 1),93.7%(top 5)と若干性能低下す るものの 26.2 ms になり,真の実時間認識を達成するこ とができた [Yanai 16].なお,現在(2018 年 10 月)に おいては,CoreML や TensorflowLite などスマートフォ ン用の深層学習実行フレームワークが公開されている ため,GPU 計算機で学習した食事画像認識のモデルを iPhoneや Android 上で動作させることは極めて容易と なっている. な お, 最 新 の 研 究 で は,ResNet の 改 良 版 で あ る WideResNetが適用され,研究開始当初の 2012 年の UEC-FOOD100の公開当初に分類率 51.6%(top 1),5 位以内 76.8%(top 5)だった UEC-Food100 の 100 種 類食事カテゴリー認識の精度 [Matsuda 12a] が 89.6% (top 1),99.2%(top 5)まで飛躍的に向上している [Martinel 18].Top 5 がすでに 100%近くになっており, 炒飯とピラフ,オムライスとオムレツなど画像だけでは 互いに区別が困難なカテゴリーが含まれていることも考 えると,研究的にはこれ以上性能を上げることが難しい 段階まできているといえる.そのため,料理カテゴリー 分類単体の研究はもはやあまり行われず,後述する画像 からのレシピ検索や,カテゴリーとカロリー量のマルチ タスク学習など,タスクの一部に料理カテゴリー認識が 含まれる研究が多くなってきている.
4.
食事量・カロリー量推定
食事画像認識は主に一般物体認識の応用問題として 扱われてきたが,海外では医療応用として食事管理の ために取り組んでいるグループもある.例えば,米国 Purdue大学 [Zhu 08],スイス Bern 大学 [Dehais 16] な どにおいては,食事管理のために,食事画像からの食事 カロリー量や炭水化物などの栄養素量推定が研究されて いる.現在,カロリー消費量は腕時計型の運動量計を装 着することによってある程度自動に把握することができ るが,カロリー摂取量の把握は食事からカロリー量を推 定しない限り難しい.もし写真を 1 枚撮影するだけでそ れが可能となれば,カロリー入出力量の管理が容易にな り,人間の健康にとってさまざまな有用な応用が期待で きることとなる.しかしながら,現状では,食事種類数 が限定されている,実験室内や病院の食堂など限定され ている,食事種類の認識のみで自動で,量に関してはユー ザが直接入力する必要があるなど,完全自動カロリー量 推定を実用的な規模・精度では実現できてはいない. 食事量および食事カロリー量の推定の標準的なアプ ローチとしては,(1)領域分割による二次元量推定,(2) 複数視点画像からの三次元形状復元に基づく三次元量 推定,(3)3D センサや 3D モデル当てはめ,もしくは CNNを用いた単視点からの三次元量推定,(4)画像か らの回帰による直接のカロリー量推定,が研究されてい る.(1)~(3)は,カテゴリーごとの単位面積もしくは 単位体積当たりのカロリー量密度を掛け合わせることに よって,カロリー量を推定する.正確に推定するには, キャリブレーションカードなどの実形状および実寸法既 知の基準物体を同時に撮影することが一般的である.4·1 領域分割による二次元量推定 これは最もスタンダードな方法で,領域分割手法と組 み合わせると学習データは少数でも問題なく,研究の当 初から行われている [Zhu 08].ただし,一般にカロリー 量密度は食事カテゴリーに依存するので,食事カテゴ リー認識が必要である.食事カテゴリー認識と領域分割 を組み合わせた研究が多くなされている. 例えば,Dehais ら [Dehais 15] は,まずエッジベース の皿検出を行い,次に領域併合法で料理領域を切り出し, 各料理領域を SVM でカテゴリー分類した.CalorieCam
[Okamoto 16a]では,皿検出,GrabCut による料理領
域抽出,CNN によるカテゴリー分類を行い,実寸既知 の基準物体領域の抽出結果と合わせて,カロリー量推定 を行う.これらの処理はすべてスマートフォン上で完結 している.数藤ら [Sudo 14] は super-pixel を用いたセ マンティック領域分割を主な食材 29 種類に関して行っ た後,カロリー量密度を利用せずに,各食材の出現ピ クセル頻度の 29 次元ヒストグラムから SVR(Support Vector Regression)を用いて,直接カロリー量推定を行っ た.この研究では基準物体を用いていないので,後述す る [Ege 18a] と同じく,標準的なサイズを仮定している ことになる. CNNによる領域分割を用いる研究もある.ただし, 食事画像データセットで画素単位のアノテーションがあ るものが存在しないため通常の CNN による領域分割の 手法の利用は難しく,下田ら [Shimoda 15] はラベル情 報のみで学習可能な弱教師あり領域分割を利用したカロ リー量推定を行った.図 3 が結果の例となる.ここでは, 味 汁茶碗,ご飯茶碗など大きさの変動が少ない食器に 優先順位を付け,シーン中で最も大きさの変動が小さい 食器の大きさを標準基準サイズとして基準物体なしで実 寸を推定し,面積比とカテゴリーに応じた密度比からカ ロリー量を求めるという手法を提案している.そのため, UECFOOD100種類のすべての食事に対応できているも のの,弱教師あり学習のため,領域分割の精度が十分で ないという問題点がある. 基準物体の代わりに,iPhone の ARKit に実装され
た Visual Inertial Odometry を用いることで実寸を計測 し,基準物体なしで実寸に基づくカロリー量推定を行う ARDeepCaloriCam V2 [Tanno 18b]も提案されている. 4·2 複数視点による三次元量推定 複数視点による三次元復元はかつてはコンピュータビ ジョンの主要トピックでもあったため,多くの研究がな されている. Puriら [Puri 09] は,複数種類の料理が載った皿の領 域分割と,複数視点からの三次元形状復元を用いて,各 料理の体積を推定し,料理ごとに事前に定義されたカロ リー量密度を用いてカロリー量推定を行った.三次元形 状復元は,SIFT などの局所特徴量と RANSAC による 対応点探索を行いカメラ行列を求めて三次元復元を行う 標準的な方法を利用していた.2009 年に行われた研究 で,食事カロリー量推定における先駆的な研究として知 られている. ほかにも,サーバ処理ベースのモバイルアプリDietCam [Kong 12], 基 準 物 体 に 親 指 を 使 う Pouladzadhe ら [Pouladzadeh 14]の研究などがある. 4·3 単視点による三次元量推定 単視点アプローチには,3D センサ利用,3D モデル 当てはめ,CNN による単視点奥行推定を利用したもの, の 3 通りが存在する.
Chenら [Chen 12] は,Kinect で取得した RGB-D 画 像を利用して食事の三次元形状を推定しカロリー量推定 を行った.Xu ら [Xu 13] は料理カテゴリーごとの典型的 な 3D 形状モデルを当てはめることで体積推定を行いカ ロリー量推定を行った.CNN による単視点奥行推定を 最初に取り入れたのは Google が提案した Im2Calories [Myers 15]である.Google は論文を投稿した国際会議 の査読期間中に Im2Calories のプレスリリースを行い, Androidアプリとして公開することを公表したが,実際 にはカロリー量推定の困難さからプロジェクトは中断し ているようで,現在に至るまで提供されていない.Lu ら [Lu 18] も CNN を用いた食事の三次元推定を行った. 具体的には Mask R-CNN [He 16] を拡張して,奥行推 定と三次元推定のレイヤを追加し,領域分割と体積推定 を同時に実現した. 4·4 回帰による量推定 東 京 大 学 相 澤 研 究 室 の 宮 崎 ら [Miyazaki 11] は, FoodLog [Aizawa 15, Kitamura 09]の食事画像 6 512 枚 に人手で付与したカロリー量付きの画像データベースを 構築し,カロリー量未知の食事画像から類似画像検索を 行い,上位 5 枚の平均カロリー量を未知画像のカロリー 量として推定する手法を提案した.この方法は,料理カ テゴリーの情報をいっさい利用しないため,どのような 種類の料理でも認識対象にすることもできるが,2011 図 3 CNN 領域分割によるカロリー推定例
年に行われたため古典的特徴量のみが利用され,誤差 ±20%の範囲に 39%,推定値と真値の間の相関係数が 0.32という結果で,実用的に使うには十分といえる精度 ではなかった. 著者の研究室の會下らは,CNN による特徴量学習を 用いて同様の画像検索ベースのカロリー量推定の実験を 行い,上位 20 枚のカロリー量の平均値を推定値として 用いた場合,15 種類の食事に関して誤差± 20%の範囲 に 51.8%,相関係数 0.81 と大幅に推定精度を改善でき ることを示した [Ege 17, 會下 18c].なお,宮崎らのカ ロリー量付き画像データは商用サービス FoodLog の画 像を利用しており非公開であったため,我々の研究では 複数のレシピサイトから 8 万枚のカロリー量付き画像を 収集して利用した. 會下らは,レシピ情報の料理カテゴリー,食材情報, 料理手順,カロリー量の四つを Multi-task CNN で同 時学習し,画像から直接カロリー量を推定する手法も 提案している [Ege 18a].[會下 18c] と同じデータセッ トで評価した結果,誤差± 20%の範囲に 50.1%,相関 係数 0.82 で,検索ベースとほぼ同程度の性能が得られ, カロリー量のみで Single-task 学習した場合の 45.9%, 0.78を改善できることも示された.このネットワークは
UEC-FOOD100で再学習された YOLOv2 [Redmon 17] と組み合わせることにより,リアルタイム料理検出・カ ロリー量推定アプリ DeepCarorieCam およびその AR 表示バージョン ARDeepCaloriCam [Tanno 18a] として 実装された(図 4). さらに物体検出器の YOLOv2 を拡張して,料理の位 置とカロリー量を同時推定する方法も會下らによって 提案されている [Ege 18b].なお,料理のバウンディン グボックスとカロリー量が同時にアノテーションされ た食事画像データセットは存在しないので,代わりに UECFOOD100のバウンディングボックスと,レシピサ イトから収集した 8 万枚のカロリー量付き画像を交互に 学習することによって,同時推定を実現した. 食事画像からのカロリー量推定には,以上のように, 量推定を行う方法と,画像から直接推定する方法の 2 通 りがある.前者はカテゴリーごとに固定の密度を利用す るため誤差が大きい,後者は基準物体がないため,大盛 りなどの量の変化に対応しにくい,などの問題点があり, いずれも今後のさらなる研究が必要である.研究を促進 するためにも,今後はカロリー量付きの大規模食事画像 データセットの整備と公開が望まれる. これまでの食事「量」推定は,食べる前にすべての 食事が用意されていることが前提であったが,焼肉や鍋 物などの食事中に少量を繰り返し取り分けながら食事を する場合は,その前提が成り立たない.そこで,食事者 の動作を認識し,食べたものと個数をカウントすること で,摂取カロリー量推定を行う GrillCam というモバイ ルアプリも提案されている [Okamoto 16b](図 5).なお, 食事の摂取カロリー量のリアルタイム推定は,画像を使 わないセンサベースの研究が多く行われており,咀そ嚼しゃく音 [Amft 09]や口周辺の筋繊維の動き [Farooq 17] などをセ ンサで取得して,摂取量を推定する研究が行われている.
5.
食事画像認識の最新動向
現在,研究レベルでは食事カテゴリー認識の精度が十 分向上したこともあって,カロリー量推定以外にも,料 理の食材認識,画像からの料理レシピ検索,深層学習画 像生成技術を用いた食事画像生成など多様な研究が行わ れるようになりつつあり,新たな研究の広がりを見せて いる. 最近,料理レシピサイトが一般的になり,大量の画像 付き料理レシピ情報を容易に入手できるようになったた め,画像による料理レシピ検索の研究が盛んになりつつ ある.特に,CNN による画像特徴量と食材や料理手順 の特徴ベクトルを同じ空間に埋め込む(embedding)こ とによって料理画像とレシピの双方向からのマルチモー ダル検索に関する研究が行われている. Salvadorらは,食材と調理手順の Word2Vec 表現とLSTMを用いた recipe encoder,VGG16 や ResNet50 などの pre-trained model を food image encoder として, 全結合層で対応するレシピと画像の互いのベクトルのコ サイン類似度が最大化するように変換した埋込みベクト ルを求めることで,レシピと画像のマルチモーダル検 索を実現する方法 im2recipe を提案した [Salvador 17]. この研究では,100 万枚のレシピ画像データベースが用 いられている.Chen らは食材ベクトルとレシピ画像の 類似度を求めるネットワークを提案し,食材とレシピ検 索の双方向検索を実現した [Chen 17b].さらに,料理写 真のグリッドごとに食材,調理法,切り方を推定して,
その推定結果のベクトルを用いて画像からのレシピ検索 を行う方法も提案している [Chen 17a].
食事画像認識の応用として,Twitter や Instagram などの SNS 食事画像の大規模分析も行われている. Twitterの食事分析 [Yanai 14],Instagram の食事分析
[Ofli 17, Rich 16]などがこれまで存在している.どれも 最初にハッシュタグやキーワードで絞り込んで,その後 に食事画像を選別するために食事画像認識が利用されて いる. また,深層学習による画像生成・変換によって,食事 画像を生成・変換することも行われている.レシピから の食事画像生成 [Ito 18],unsupervised domain 変換技 術である CycleGAN [Zhu 17] を食事に応用した食事画 像変換 [Horita 18b] などが行われている.図 6 に食事画 像変換の例を示す.図中の左の食事画像がカレー,うな 丼,牛丼,冷やし中華,ミートスパゲティ,ラーメンに 変換されている. 食事画像認識の一種ではあるが,カテゴリー認識とも カロリー量推定とも異なる「魅力度推定」という研究も 行われている.食事写真は食事記録以外にも SNS にアッ プする目的で撮影されることが多く,いかに「インスタ 映え」する食事写真を撮影するか,ということもスマホ ユーザにとっては大きな関心事である.高橋らはさまざ まな視点から撮影した魅力度付きの 10 種類の食事写真 データセット NU-FOOD360x10 を公開し,食事写真の 魅力度を推定する手法を提案している [Takahashi 17]. この研究では,研究室で撮影した画像で実験を行ってい るが,実際の食事をスマートフォンでリアルタイムに認 識すれば,最も魅力的に見えるカメラ位置をユーザに指 示して撮影することも可能となるであろう.さらには, 深層学習による食事生成・変換技術と組み合わせること によって,魅力度を増幅した写真に変換することもでき る.最後に,食事写真の魅力度を向上させる研究の一例 として,ラーメン写真の魅力を半減させるレンゲを深層 学習による画像変換によって消す研究を紹介する.堀田 らは,図 7 に示すようにレンゲの写ったラーメン写真か ら自然なレンゲ消去を実現し,ラーメン写真の魅力度を 向上させることに成功した [Horita 18a].
6.ま
と め
本稿では,食事画像認識の過去から深層学習時代の研 究,「量」推定に関する研究,新しい食事画像研究とし てのクロスモーダルレシピ検索や食事画像生成・変換に ついて紹介した.カロリー量・栄養素量推定の高精度化, レシピ検索の高度化,また食事画像を自由に変換するエ ンタテイメント的な応用など,今後の研究が期待される. なお,最近(2018 年 8 月),ArXiv に食事画像認識に 関する大変詳細なサーベイ論文 [Min 18] が発表された. この分野に興味のある方にはぜひ一読をお勧めする.◇ 参 考 文 献 ◇
[Aizawa 15] Aizawa, K. and Ogawa, M.: Foodlog: Multimedia tool for healthcare applications, IEEE MultiMedia, Vol. 22, No. 2, pp. 4-8(2015)
[Amft 09] Amft, O., Kusserow, M. and Tröster, G.: Bite weight prediction from acoustic recognition of chewing, IEEE Trans.
on Biomedical Engineering, Vol. 56, No. 6, pp. 1663-1672
(2009)
[Bossard 14] Bossard, L., Guillaumin, M. and Gool, L. V.: Food-101 - Mining discriminative components with random forests,
Proc. European Conf. on Computer Vision(2014)
[Chen 09] Chen, M., Dhingra, K., Wu, W., Yang, L., Sukthankar, R. and Yang, J.: PFID: Pittsburgh fast-food image dataset,
Proc. IEEE Int. Conf. on Image Processing, pp. 289-292(2009) [Chen 12] Chen, M., Yang, Y., Ho, C., Wang, S., Liu, S., Chang, E., Yeh, C. and Ouhyoung, M.: Automatic Chinese food identification and quantity estimation, SIGGRAPH Asia
Technical Briefs, p. 29(2012)
[Chen 16] Chen, J. and Ngo, C. W.: Deep-based ingredient recognition for cooking recipe retrieval, Proc. ACM Int. Conf.
Multimedia, pp. 32-41(2016)
[Chen 17a] Chen, J. J., Ngo, C. W. and Chua, T. S.: Cross-modal recipe retrieval with rich food attributes, Proc. ACM Int. Conf.
Multimedia(2017)
[Chen 17b] Chen, J. J., Pang, L. and Ngo, C. W.: Cross-modal recipe retrieval: How to cook this dish?, Proc. Int. Conf. on
Multimedia Modeling(MMM)(2017)
[Dehais 15] Dehais, J., Anthimopoulos, M. and Mougiakakou, S.: Dish detection and segmentation for dietary assessment on smartphones, Proc. Int. Workshop on Multimedia Assisted
Dietary Management(MADIMA), pp. 432-440(2015) [Dehais 16] Dehais, J., Anthimopoulos, M. and Mougiakakou, S.:
GoCARB: A smartphone application for automatic assessment of carbohydrate intake, Proc. ACM MM Workshop on
Multimedia Assisted Dietary Management(2016)
[Ege 17] Ege, T. and Yanai, K.: Comparison of two approaches for direct food calorie estimation, Proc. Int. Workshop on
Multimedia Assisted Dietary Management(MADIMA)(2017) 図 6 食事画像変換の例
図 7 (上)レンゲが写ったラーメン写真.(下)画像変換によっ てレンゲが除去されたラーメン写真
[Ege 18a] Ege, T. and Yanai, K.: Image-based food calorie estimation using recipe information, IEICE Trans. on
Information and Systems, Vol. E101-D, No. 5, pp. 1333-1341
(2018)
[Ege 18b] Ege, T. and Yanai, K.: Multi-task learning of dish detection and calorie estimation, Proc. Int. Workshop on
Multimedia Assisted Dietary Management(MADIMA)(2018) [會下 18c] 會下拓実,下田 和,柳井啓司:CNN 特徴量学習に基
づく画像検索による食事画像カロリー量推定,信学論,Vol. J101-D, No. 8, pp. 1099-1109(2018)
[Farooq 17] Farooq, M. and Sazonov, E.: Segmentation and characterization of chewing bouts by monitoring temporalis muscle using smart glasses with piezoelectric sensor, IEEE
Journal of Biomedical and Health Informatics, Vol. 21, No. 6,
pp. 1495-1503(2017)
[He 16] He, K., Gkioxari, G., Dollar, P. and Girshick, R.: Mask RCNN, Proc. IEEE Int. Conf. on Computer Vision(2016) [Horita 18a] Horita, D., Cho, J., Ege, T. and Yanai, K.: Ramen
spoon eraser: CNN-based photo transformation for improving attractiveness of ramen photos, Proc. ACM Symp. on Virtual
Reality Software and Technology(VRST)(2018)
[Horita 18b] Horita, D., Tanno, R., Shimoda,W. and Yanai, K.: Food category transfer with conditional cycle GAN and a large-scale food image dataset, Proc. Int. Workshop on Multime
dia Assisted Dietary Management(MADIMA)(2018) [Ito 18] Ito, Y., Shimoda, W. and Yanai, K.: Food image generation
using a large amount of food images with conditional GAN: RamenGAN and RecipeGAN, Proc. Int. Workshop on
Multimedia Assisted Dietary Management(MADIMA)(2018) [Jia 14] Jia, Y., Shelhamer, E., Donahue, J., Karayev, S., Long, J., Girshick, R., Guadarrama, S. and Darrell, T.: Caffe: Convolutional architecture for fast feature embedding, Proc.
ACM Int. Conf. Multimedia, pp. 675-678(2014)
[Jin 15] Jin, J., Dundar, A. and Culurciello, E.: Flattened convolutional neural networks for feedforward acceleration,
Proc. Int. Conf. on Learning Representations Workshop Track
(ICLRWS)(2015)
[Joutou 09] Joutou, T. and Yanai, K.: A food image recognition system with multiple kernel learning, Proc. IEEE Int. Conf. on
Image Processing, pp. 285-288(2009)
[Kagaya 14] Kagaya, H., Aizawa, K. and Ogawa, M.: Food detection and recognition using convolutional neural network,
Proc. ACM Int. Conf. Multimedia, pp. 1085-1088(2014) [Kawano 13a] Kawano, Y. and Yanai, K.: Rapid mobile food
recognition using fisher vector, Proc. Asian Conf. on Pattern
Recognition(2013)
[Kawano 13b] Kawano, Y. and Yanai, K.: Real-time mobile food recognition system, Proc. IEEE CVPR Int. Workshop on Mobile
Vision(IWMV)(2013)
[Kawano 14a] Kawano, Y. and Yanai, K.: Automatic expansion of a food image dataset leveraging existing categories with domain adaptation, Proc. ECCV Workshop on Transferring and
Adapting Source Knowledge in Computer Vision(TASK-CV) (2014)
[Kawano 14b] Kawano, Y. and Yanai, K.: Food image recognition with deep convolutional features, Proc. ACM UbiComp
Workshop on Smart Technology for Cooking and Eating Activities(CEA)(2014)
[Kawano 15] Kawano, Y. and Yanai, K.: FoodCam: A real-time food recognition system on a smartphone, Multimedia Tools
and Applications, Vol. 74, pp. 5263-5287(2015)
[Kitamura 09] Kitamura, K., Yamasaki, T. and Aizawa, K.: Food- Log: Capture, analysis and retrieval of personal food images via web, Proc. ACM Multimedia Workshop on Multimedia for
Cooking and Eating Activities(CEA), pp. 23-30(2009) [Kong 12] Kong, F. and Tan, J.: DietCam: Automatic dietary
assessment with mobile camera phones, Proc. Pervasive and
Mobile Computing, pp. 147-163(2012)
[Krizhevsky 12] Krizhevsky, A., Ilya, S. and Hinton, G. E.: ImageNet classification with deep convolutional neural networks, Advances in Neural Information Processing
Systems, pp. 1097-1105(2012)
[Lin 13] Lin, M., Chen, Q. and Yan, S.: Network in network, Proc.
Int. Conf. on Learning Represenation Conference Track(2013) [Lu 18] Lu, Y., Allegra, D., Anthimopoulos, M., Stanco, F., Farinella, G. M. and Mougiakakou, S. G.: A multi-task learning approach for meal assessment, Proc. Int. Workshop on
Multimedia Assisted Dietary Management(MADIMA)(2018) [Martinel 18] Martinel, N., Foresti, G. L. and Micheloni, C.:
Wide-slice residual networks for food recognition, Proc. IEEE Winter
Conf. on Applications of Computer Vision(WACV)(2018) [Matsuda 12a] Matsuda, Y., Hoashi, H. and Yanai, K.:
Recognition of multiple-food images by detecting candidate regions, Proc. IEEE Int. Conf. on Multimedia and Expo, pp. 1554-1564(2012)
[Matsuda 12b] Matsuda, Y. and Yanai, K.: Multiple-food recognition considering co-occurrence employing manifold ranking, Proc. IAPR Int. Conf. on Pattern Recognition(ICPR) (2012)
[Min 18] Min, W., Jiang, S., Liu, L., Rui, Y. and Jain, R.: A survey on food computing, arXiv preprint arXiv:1808.07202(2018) [Miyazaki 11] Miyazaki, T., Chaminda, G., Silva, D. and Aizawa,
K.: Imagebased calorie content estimation for dietary assessment, Proc. IEEE ISM Workshop on Multimedia for
Cooking and Eating Activities(CEA)(2011)
[Myers 15] Myers, A., Johnston, N., Rathod, V., Korattikara, A., Gorban, A., Silberman, N., Guadarrama, S., Papandreou, G., Huang, J. and Murphy, K. P.: Im2Calories: Towards an automated mobile vision food diary, Proc. IEEE Int. Conf. on
Computer Vision(2015)
[Ofli 17] Ofli, F., Aytar, Y., Weber, I., Hammouri, al R. and Torralba, A.: Is Saki #Delicious?: The food perception gap on instagramand its relation to health, Proc. Int. Conf. on World
Wide Web, pp. 509-518(2017)
[Okamoto 16a] Okamoto, K. and Yanai, K.: An automatic calorie estimation system of food images on a smartphone, Proc. ACM
MM Workshop on Multimedia Assisted Dietary Management
(2016)
[Okamoto 16b] Okamoto, K. and Yanai, K.: GrillCam: A real-time eating action recognition system, Proc. Int. Conf. on
Multimedia Modelling(MMM)(2016)
[Pouladzadeh 14] Pouladzadeh, P., Shirmohammadi, S. and Almaghrabi, R.: Measuring calorie and nutrition from food image, IEEE Trans. on Instrumentation and Measurement, pp. 1947-1956(2014)
[Puri 09] Puri, M., Zhu, Z., Yu, Q., Divakaran, A. and Sawhney, H.: Recognition and volume wstimation of food intake using a mobile device, Proc. Workshop on Applications of Computer
Vision(WACV)(2009)
[Redmon 17] Redmon, J. and Farhadi, A.: YOLO9000: Better, faster, stronger, Proc. IEEE Computer Vision and Pattern
Recognition(2017)
[Rich 16] Rich, J., Haddadi, H. and Hospedales, T. M.: Towards bottom-up analysis of social food, Proc. Int. Conf. on Digital
Health Conference, pp. 111-120(2016)
[Salvador 17] Salvador, A., Hynes, N., Aytar, Y., Marin, J., Ofli, F., Weber, I. and Torralba, A.: Learning cross-modal embeddings for cooking recipes and food images, Proc. IEEE Computer
Vision and Pattern Recognition(2017)
[Sermanet 14] Sermanet, P., Eigen, D., Zhang, X., Mathieu, M., Fergus, R. and LeCun, Y.: Overfeat: Integrated recognition, localization and detection using convolutional networks, Proc.
Int. Conf. on Learning Representations(2014)
[Shimoda 15] Shimoda, W. and Yanai, K.: CNN-Based food image segmentation without Pixel-wise annotation, Proc. 1st
Int. Workshop on Multimedia Assisted Dietary Management
(MADIMA)(2015)
[Simonyan 15] Simonyan, K. and Zisserman, A.: Very deep convolutional networks for large-scale image recognition, Proc.
Int. Conf. on Learning Representation(ICLR)(2015) [Sudo 14] Sudo, K., Murasaki, K., Shimamura, J. and Taniguchi,
semantic segmentation, Proc. ACM UbiComp Workshop on
Smart Technology for Cooking and Eating Activities(CEA) (2014)
[Takahashi 17] Takahashi, K., Doman, K., Kawanishi, Y., Hirayama, T., Ide, T., Deguchi, D. and Murase, H.: Estimation of the attractiveness of food photography focusing on main ingredients, Proc. Workshop on Multimedia for Cooking and
Eating Activities(CEA)(2017)
[Tanno 16a] Tanno, R., Okamoto, K. and Yanai, K.: DeepFood-Cam: A DCNN-based real-time mobile food recognition system, Proc. ACMMM Workshop on Multimedia Assisted
Dietary Management(MADiMa)(2016)
[Tanno 16b] Tanno, R. and Yanai, K.: Caffe2C: A framework for easy implementation of CNN-based mobile applications, Proc.
Int. Workshop on Mobile Ubiquitous Systems, Infrastructures, Communications, and AppLications(MUSICAL)(2016) [ Ta n n o 18a ] Ta n n o , R . , E g e , T. a n d Ya n a i , K . : A R
DeepCalorieCam: An iOS App for food calorie estimation with augmented reality, Proc. Int. Multimedia Modeling Conference (MMM)(2018)
[ Ta n n o 18b ] Ta n n o , R . , E g e , T. a n d Ya n a i , K . : A R DeepCalorieCam V2: Food calorie estimation with CNN and AR-based actual size estimation, Proc. ACM Symp. on Virtual
Reality Software and Technology(VRST)(2018)
[Xu 13] Xu, C., He, Y., Khannan, N., Parra, A., Boushey, C. and Delp, E.: Image-based food volume estimation, Proc. Int.
Workshop on Multimedia for Cooking & Eating Activities, pp.
75-80(2013)
[柳井 07] 柳井啓司:一般物体認識の現状と今後,情処学論:コン ピュータビジョン・イメージメディア,Vol. 48, No. SIG16(CVIM
19),pp. 1-24(2007)
[Yanai 14] Yanai, K. and Kawano, Y.: Twitter food image mining and analysis for one hundred kinds of foods, Proc. Pacifi t-Rim
Conf. on Multimedia(PCM)(2014)
[Yanai 15] Yanai, K. and Kawano, Y.: Food image recognition using deep convolutional network with pre-training and fi ne-tuining, Proc. ICME Workshop on Multimedia for Cooking and
Eating Activities(CEA)(2015)
[Yanai 16] Yanai, K., Tanno, R. and Okamoto, K.: Effi cient mobile implementation of a CNN-based object recognition system,
Proc. ACM Int. Conf. Multimedia(2016)
[Yang 10] Yang, S., Chen, M., Pomerleau, D. and Sukthankar, R.: Food recognition using statistics of pairwise local features,
Proc. IEEE Computer Vision and Pattern Recognition(2010) [Zhu 08] Zhu, F., Mariappan, A., Boushey, C. J., Kerr, D., Lutes,
K. D., Ebert, D. S. and Delp, E. J.: Technology-assisted dietary assessment, Proc. IS&T/SPIE Conf. on Computational
Imaging VI(2008)
[Zhu 17] Zhu, J.-Y., Park, T., Isola, P. and Efros, A. A.: Unpaired image-to-image translation using cycle-consistent adversarial networks, Proc. IEEE Int. Conf. on Computer Vision(2017)
2018年 10 月 24 日 受理