JP5691533B2 - 情報処理装置、方法及びプログラム - Google Patents

情報処理装置、方法及びプログラム Download PDF

Info

Publication number
JP5691533B2
JP5691533B2 JP2011004532A JP2011004532A JP5691533B2 JP 5691533 B2 JP5691533 B2 JP 5691533B2 JP 2011004532 A JP2011004532 A JP 2011004532A JP 2011004532 A JP2011004532 A JP 2011004532A JP 5691533 B2 JP5691533 B2 JP 5691533B2
Authority
JP
Japan
Prior art keywords
meal
dish
image
area
similarity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011004532A
Other languages
English (en)
Other versions
JP2012146159A (ja
Inventor
秋吾 中村
秋吾 中村
正樹 石原
正樹 石原
馬場 孝之
孝之 馬場
遠藤 進
進 遠藤
昌彦 杉村
昌彦 杉村
上原 祐介
祐介 上原
増本 大器
大器 増本
茂美 長田
茂美 長田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011004532A priority Critical patent/JP5691533B2/ja
Publication of JP2012146159A publication Critical patent/JP2012146159A/ja
Application granted granted Critical
Publication of JP5691533B2 publication Critical patent/JP5691533B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Medical Treatment And Welfare Office Work (AREA)

Description

本技術は、食事の内容を撮影した食事画像の解析技術に関する。
近年、日々の生活習慣によって引き起こされる生活習慣病が問題となっている。生活習慣病の主な原因の一つが偏った食生活であると考えられている。健康管理のため食事のカロリーに気を配る人は多く、理想的な食生活に近づけるよう専門家の指導を受けたいというニーズもある。現在、ユーザが撮影した食事画像などを送信すると管理栄養士などの専門家がユーザにコメントを返すというサービスが行われているが、このサービスは専門家を介するため費用が高くなり、利用できるユーザが限られてしまっている。より多くのユーザが利用できるよう費用を安く抑えるために、サービスの自動化が好ましい。
食事画像からカロリーを自動算出する従来技術は、食事認識部に食事認識技術を利用する方法を用いている。食事認識技術とは、食事の内容を撮影した食事画像に含まれている食事品目の名称及び領域を認識する技術である。従来技術では、食事認識技術を用いて食事画像から各食事品目名を取り出し、予め用意してあるカロリーデータベースから各食事品目名に対応するカロリーを読み出し、それらを合計することで食事全体のカロリーを算出する。しかし、この従来技術では、入力した食事画像に含まれている全ての食事品目をユーザが摂取することを前提としている。
また、予め食事画像中に存在する皿と食事品目についての情報をデータベースに登録することで、食前及び食後の画像から各食事品目名と領域を認識して対応付けを行う技術も存在している。この技術では、まず使用する皿と食事品目の対応を食事品目データベースに登録しておき、食前と食後の食事画像から皿の領域を検出し、皿で食事品目データベースを検索して、食前と食後で同一の皿領域を見つけ、それらに含まれる食事領域を抽出、比較し、食事が減った割合からユーザが摂取した食事量を算出し、各食事品目の食事量を加味してカロリーを合計し、食事全体のカロリーを算出する。
しかし、この方法は、食事画像に含まれる皿と食事品目の情報について事前登録が必要であるため、病院内での食事のように使用される皿が事前に分かっている場所においては適用可能である。しかしながら、一般的な人々の日常では食事シーンによって使用される皿は様々であり、食事品目も毎回変わるため、事前に皿や食事品目の登録ができずこの方法の適用は不可能である。また、食前画像と食後画像から食事領域を検出する際に、事前登録した皿情報のみを用いているため、同じような皿が複数存在する場合や、食事で皿が大きく隠れてしまっている場合に領域検出を誤ってしまう可能性がある。
Taichi Joutou, Keiji Yanai, "A food image recognition system with multiple kernel learning", Proceedings of the 16th IEEE international conference on Image processing, November 07-10, 2009, Cairo, Egypt.
特開2005−70908号公報
従って、本技術の目的は、一側面において、正確に摂取カロリーを算出するための技術を提供することである。
本情報処理装置は、(A)食事前における皿の状態を撮影した食前画像と、食後における皿の状態を撮影した食後画像とを格納する画像格納部と、(B)画像格納部に格納されている食前画像と食後画像とに基づき、食前画像における皿領域の各々について、当該皿領域の皿部分と食後画像における各皿候補領域の皿部分との第1の類似度を算出し、第1データ格納部に格納する皿部分類似度算出部と、(C)画像格納部に格納されている食前画像と食後画像とに基づき、食前画像における皿領域の各々について、当該皿領域の食事部分と食後画像における各皿候補領域の食事部分との第2の類似度を算出して、第1データ格納部に格納する食事部分類似度算出部と、(D)食前画像における皿領域の各々について、第1データ格納部に格納されている第1の類似度と第2の類似度とから算出される第3の類似度が最も大きい値となる食後画像における皿候補領域を特定する領域特定部と、(E)食前画像における皿領域の各々について、当該皿領域の食事部分と、当該皿領域について特定された、食後画像における皿候補領域の食事部分とに基づき食事摂取割合を算出し、第2データ格納部に格納する摂取割合算出部と、(F)食前画像における皿領域に載せられている食事のカロリー数と食前画像における皿領域について第2データ格納部に格納されている食事摂取割合との積を、食前画像における皿領域の全てについて加算することで総摂取カロリーを算出し、第3データ格納部に格納するカロリー計算部とを有する。
正確に摂取カロリーを算出することができるようになる。
図1は、本技術の実施の形態におけるシステム概要図である。 図2は、第1の実施の形態に係る情報処理装置の機能ブロック図である。 図3Aは、第1の実施の形態の処理フローを示す図である。 図3Bは、食事認識結果格納部に格納されるデータの一例を示す図である。 図4は、皿領域検出部の検出結果の一例を示す図である。 図5は、皿部分の類似度を算出する処理の処理フローを示す図である。 図6Aは、皿領域の一例を示す図である。 図6Bは、食前画像の皿部分マスクの一例を示す図である。 図7は、食後画像の皿部分マスクの一例を示す図である。 図8は、合成皿部分マスクの生成を説明するための模式図である。 図9は、皿部分差分画像を生成するための演算を説明するための模式図である。 図10は、食事部分の類似度を算出する処理の処理フローを示す図である。 図11Aは、食前画像の食事部分マスクの一例を示す図である。 図11Bは、食後画像の食事部分マスクの一例を示す図である。 図12は、合成食事部分マスクの生成を説明するための模式図である。 図13は、食事部分差分画像を生成するための演算を説明するための模式図である。 図14は、第1データ格納部に格納されるデータの一例を示す図である。 図15は、オムライスの食前の状態の一例を表す図である。 図16は、オムライスの食後の状態の一例を示す図である。 図17は、第2データ格納部に格納されるデータの一例を示す図である。 図18は、第1の実施の形態の処理フローを示す図である。 図19は、第4データ格納部に格納されるデータの一例を示す図である。 図20は、第2の実施の形態における統合類似度算出部111の機能ブロック図である。 図21は、第2の実施の形態における処理フローを示す図である。 図22は、距離格納部に格納されるデータの一例を示す図である。 図23は、第2の実施の形態において第2データ格納部に格納されるデータの一例を示す図である。 図24は、コンピュータの機能ブロック図である。
[実施の形態1]
本実施の形態に係るシステムの概要を図1に示す。例えば携帯電話ネットワークやインターネット等のネットワーク10には、本実施の形態における主要な処理を実施する情報処理装置1000が接続されており、例えばデジタルカメラ機能付きの携帯電話機であるユーザ端末も無線で接続されている。ユーザは、ユーザ端末を操作して、食事が皿に載せられている食前の状態を撮影し、ネットワーク10を介して情報処理装置1000へ食前画像として送信させる。さらに、ユーザは、ユーザ端末を操作して、食後の皿の状態を撮影し、ネットワーク10を介して情報処理装置1000へ食後画像として送信させる。情報処理装置1000は、食前画像及び食後画像を受信し、以下で述べる処理を実施して、カロリー計算結果を、送信元のユーザ端末に返信する。
なお、このようなサービス提供形態だけではなく、情報処理装置1000の機能をユーザ端末に備えさせて、ユーザ端末のみでカロリー計算ができるようにしても良い。ユーザ端末は、携帯電話機ではなく、カメラ機能及び通信機能を有する他の端末装置であってもよい。また、単にカメラであって、別途パーソナルコンピュータなどから、当該カメラで撮影した食事画像を、情報処理装置1000に送信するようにしても良い。さらに、このパーソナルコンピュータ自体が情報処理装置1000である場合もある。
次に、図2に情報処理装置1000の機能ブロック図を示す。情報処理装置1000は、入力部100と、画像データ格納部101と、皿領域検出部102と、食事認識部103と、食事認識結果格納部104と、皿領域データ格納部105と、皿候補領域検出部106と、皿候補領域データ格納部107と、皿部分類似度算出部108と、第1データ格納部109と、食事部分類似度算出部110と、統合類似度算出部111と、重み算出部112と、第2データ格納部113と、対応領域選択部114と、第3データ格納部115と、摂取割合算出部116と、第4データ格納部117と、カロリーデータベース(DB)118と、カロリー計算部119と、第5データ格納部120と、出力部121とを有する。
入力部100は、例えばネットワーク10を介して送信されてきた画像データを、画像データ格納部101に格納する。皿領域検出部102は、画像データ格納部101から食前画像を読み出し、食事認識部103と連携して皿領域検出処理を実施して、処理結果を皿領域データ格納部105に格納する。食事認識部103は、皿領域検出部102と連携して処理を実施して、処理結果を食事認識結果格納部104に格納する。皿候補領域検出部106は、画像データ格納部101から食後画像を読み出して皿領域検出処理を実施して、処理結果を皿候補領域データ格納部107に格納する。皿部分類似度算出部108は、皿領域データ格納部105及び皿候補領域データ格納部107に格納されているデータを用いて処理を実施し、処理途中のデータ及び処理結果を第1データ格納部109に格納する。食事部分類似度算出部110は、皿領域データ格納部105、第1データ格納部109及び皿候補領域データ格納部107に格納されているデータを用いて処理を実施し、処理途中のデータ及び処理結果を第1データ格納部109に格納する。
統合類似度算出部111は、第1データ格納部109等に格納されているデータを用いて処理を行い、第2データ格納部113に格納する。なお、統合類似度算出部111は、皿領域データ格納部105及び皿候補領域データ格納部107に格納されているデータや重み算出部112の処理結果を用いる場合もある。重み算出部112は、第1データ格納部109や皿領域データ格納部105に格納されるデータを用いて処理を行う。
対応領域選択部114は、第2データ格納部113及び第1データ格納部109に格納されているデータを用いて処理を行い、処理結果を第3データ格納部115に格納する。摂取割合算出部116は、第3データ格納部115に格納されているデータを用いて処理を行い、処理結果を第4データ格納部117に格納する。カロリー算出部119は、カロリーDB118に格納されているデータと第4データ格納部117に格納されているデータを用いて処理を実施し、処理結果を第5データ格納部120に格納する。出力部121は、第5データ格納部120に格納されているデータを、処理要求元のユーザ端末に送信する。
次に、図3A乃至図19を用いて図2に示した情報処理装置1000の処理内容を説明する。まず、皿領域検出部102は、画像データ格納部101に格納されている食前画像から皿領域候補を抽出し、皿領域候補の画像データを食事認識部103に出力する。食事認識部103は、皿領域候補の画像データから食事品目を特定するための処理を実施する。そして、食事認識部103は、食事品目が特定できた皿領域候補を皿領域として特定し、当該皿領域の識別子に対応付けて食事品目を食事認識結果格納部104に格納する。また、食事認識部103は、食事品目が特定できた皿領域候補の識別子を皿領域検出部102に出力し、皿領域検出部102は、この出力データに基づき、皿領域の画像データを皿領域データ格納部105に格納する(図3A:ステップS1)。
より具体的には、皿領域検出部102は、食前画像から楕円や四角の検出を行うことで皿領域候補を抽出する。楕円や四角の検出には一般化ハフ変換(例えば、D.H. Ballard, "Generalizing the Hough Transform to Detect Arbitrary Shapes", Pattern Recognition, Vol.13, No.2, p.111-122, 1981.を参照のこと)などを用いる。
さらに、食事認識部103は、各皿領域候補の画像から特徴量を抽出して特徴ベクトルを生成し、特徴ベクトルから食事が含まれているか否かを判定する識別器を用いる。例えば、特徴量は、SIFT(例えば米国特許第6711293号やDavid G. Lowe, "Object recognition from local scale-invariant features," International Conference on Computer Vision, Corfu, Greece (September 1999), pp. 1150-1157.を参照のこと。)やSURF(例えば国際特許公報WO2007/128452号やHerbert Bay, Andreas Ess, Tinne Tuytelaars, Luc Van Gool, "SURF: Speeded Up Robust Features", Computer Vision and Image Understanding (CVIU), Vol. 110, No. 3, pp. 346-359, を参照のこと)などの局所特徴量である。特徴ベクトルはBag-of-words(例えば、Csurka, G., Bray, C., Dance, C. and Fan, L. “Visual categorization with bags of keypoints,”in Proc. of ECCV Workshop on Statistical Learning in Computer Vision, pp. 59.74(2004).等を参照のこと)と呼ばれる表現で生成する。そして、識別器にはサポートベクターマシン(Support Vector Machine)を用いる。また、識別器は、認識対象とする食事の種類と同じ数だけ用意し、1つの識別器は1種類の食事を識別する。それぞれの識別器は認識対象の食事画像を用いて事前に学習を行っているものとする。このように食事認識部103の処理自体は、既に知られた技術に基づくので、これ以上述べない。なお、図3Bに示すようなデータが食事認識結果格納部104に格納される。図3Bの例では、皿領域毎に、食事品目(例えば食事品目の識別子)が登録されるようになっている。
また、皿領域検出部102の検出結果の一例を図4に示す。皿領域検出部102は、例えば図4の点線で囲まれた領域を皿領域候補として検出する。図4の例でも分かるように、検出結果だけでは、箸袋まで皿領域候補として特定されてしまう。そのため、食事認識部103によって食事品目が特定された場合に、有効な皿領域として取り扱うようにする。すなわち、箸袋は食事品目が特定されないので、箸袋の領域を以下では処理しない。皿領域データ格納部105には、例えば、皿領域の識別子と、食前画像内における皿領域の位置を表すデータ(例えば領域の左上の座標値)と、皿領域の画像データとが格納される。
また、皿候補領域検出部106は、画像データ格納部101に格納されている食後画像から皿候補領域を抽出し、皿候補領域データ格納部107に格納する(ステップS3)。処理自体は、皿領域検出部102と同様であり、食後画像から楕円や四角を検出する。但し、食後画像の場合は、食事が食べられて残っていないか、残っていても食前状態とは見た目が変わってしまっている場合もあり、食事認識部103では皿領域候補が有効であるか判定することはできない。そこで、以降の処理で、どの皿領域候補が有効であり、食前画像におけるどの皿領域と対応するかを特定する。なお、皿候補領域データ格納部107には、例えば、皿候補領域の識別子と、食後画像内における皿候補領域の位置を表すデータ(例えば領域の左上の座標値)と、皿候補領域の画像データとが格納される。
次に、皿部分類似度算出部108は、皿領域データ格納部105において、食前画像における未処理の皿領域を1つ特定する(ステップS5)。そして、皿部分類似度算出部108は、特定された皿領域と食後画像における各皿候補領域との組み合わせについて、皿部分の類似度Spを算出し、第1データ格納部109に格納する(ステップS7)。
本ステップでは、皿領域から食事部分を排除した皿部分にのみ着目し、皿部分の類似度を算出する。この処理については、図5を用いて説明する。最初に、皿領域から皿部分の抽出を行う。例えば図6Aのような皿領域を処理する場合を考える。図6Aのような皿領域に対して、色クラスタリングなどにより減色処理を施し、皿領域内の外側周辺の連続した色クラスを選択して、当該色クラスと同一色の領域を選択領域として特定する。そして、皿部分類似度算出部108は、黒画像(画素値=0)の上に、選択領域のみを白(画素値=1)で塗りつぶした二値画像である皿部分マスクを生成し、第1データ格納部109に格納する(図5:ステップS31)。図6Bに、食前画像の皿部分マスクの一例を示す。
同様に、皿部分類似度算出部108は、皿候補領域データ格納部107に格納されている各皿候補領域についても同様の処理を実施する。すなわち、食後画像の各皿候補領域について皿部分マスクを生成し、第1データ格納部109に格納する(ステップS33)。そうすると、例えば、図7に示すような食後画像の皿部分マスクが得られる。なお、以下の演算では、皿領域の画像と皿候補領域の画像のサイズは同一の方が好ましいので、皿候補領域の画像のサイズを、皿領域の画像に合わせるスケーリング処理を実施する。なお、ステップS33については、図3Aの処理の繰り返しの初回のみ実施すればよい。2回目以降は、第1データ格納部109に格納されたデータをそのまま使用できる。
そして、図8に模式的に示すように、皿部分類似度算出部108は、食前画像の皿部分マスクと食後画像の皿部分マスクとの論理積を算出することで、合成皿部分マスクを生成し、第1データ格納部109に格納する(ステップS35)。合成皿部分マスクは、食前及び食後ともに皿が見えている領域を白で表す。
その後、図9に模式的に示すように、皿部分類似度算出部108は、食前画像における皿領域と、食後画像における皿候補領域との輝度値についての差分を算出して、グレースケールの差分画像を生成する。輝度値についての差分値については絶対値とする。さらに、皿部分類似度算出部108は、このグレースケールの差分画像と合成皿部分マスクとの論理積を算出することで、皿部分差分画像を生成し、第1データ格納部109に格納する(ステップS37)。皿部分差分画像は、グレースケールの画像となる。よって、皿部分差分画像は、黒い部分ほど食前と食後で輝度値の差が少なく、白い部分ほど食前と食後で輝度値の差が大きいことを表している。
このような処理は、食前画像における皿領域と食後画像における皿候補領域との組み合わせ毎に実施され、組み合わせ毎に皿部分差分画像が生成される。
そして、皿部分類似度算出部108は、以下の式に従って、食前画像における皿領域と食後画像における皿候補領域との組み合わせ毎に、皿部分差分画像の画素値から類似度Spを算出し、第1データ格納部109に格納する(ステップS39)。
(1)式におけるNは、皿部分差分画像の画素数を表し、piはi番目の画素の画素値を表す。なお、画素値は0から1までの値に分布するようになっている。例えば、0から255で分布する場合には、0から1の範囲にマッピングする。
例えば、図14に示すようなデータが第1データ格納部109に格納される。図14の例では、皿候補領域毎に、類似度Spの値が登録されるようになっている。なお、図14の例では、類似度Sfの値も登録されるようになっているが、類似度Sfについては後の処理で登録される。
また、食事部分類似度算出部110は、特定された皿領域と食後画像における各皿候補領域との組み合わせについて、食事部分の類似度Sfを算出し、第1データ格納部109に格納する(ステップS9)。この処理については図10を用いて説明する。
本ステップでは、皿領域から皿部分を排除した食事部分にのみ着目し、食事部分の類似度を算出する。最初に、食前画像における皿領域から食事部分の抽出を行う。既に、皿部分マスクが生成されているので、食事部分類似度算出部110は、皿部分マスクの白黒を反転させることによって、食前画像についての食事部分マスクを生成し、第1データ格納部109に格納する(図10:ステップS41)。図6Bの皿部分マスクの場合には、図11Aに示すような食事部分マスクが生成される。
食後画像における皿候補領域の各々についても、食事部分類似度算出部110は、食後画像についての皿部分マスクの白黒を反転させることによって、食後画像についての食事部分マスクを生成し、第1データ格納部109に格納する(ステップS43)。図7の皿部分マスクの場合には、図11Bに示すような食事部分マスクが生成される。なお、以下の演算では、皿領域の画像と皿候補領域の画像のサイズは同一の方が好ましいので、皿候補領域の画像のサイズを、皿領域の画像に合わせるスケーリング処理を実施する。ステップS43についても、図3Aの処理の繰り返しの初回のみ実施すればよい。2回目以降は、第1データ格納部109に格納されたデータをそのまま使用できる。
そして、図12に模式的に示すように、食事部分類似度算出部110は、食前画像の食事部分マスクと食後画像の食事部分マスクとの論理積を算出することで、合成食事部分マスクを生成し、第1データ格納部109に格納する(ステップS45)。合成食事部分マスクは、食前及び食後ともに食事が見えている領域を白で表す。
その後、図13に模式的に示すように、食事部分類似度算出部110は、食前画像における皿領域と、食後画像における皿候補領域との輝度値についての差分を算出して、グレースケールの差分画像を生成する。輝度値についての差分値については絶対値とする。なお、このようなグレースケールの差分画像については、ステップS37でも生成されているので、第1データ格納部109に格納しておき、それを用いるようにしても良い。さらに、食事部分類似度算出部110は、このグレースケールの差分画像と合成食事部分マスクとの論理積を算出して、食事部分差分画像を生成し、第1データ格納部109に格納する(ステップS47)。食事部分差分画像は、グレースケールの画像となる。よって、食事部分差分画像は、黒い部分ほど食前と食後で輝度値の差が少なく、白い部分ほど食前と食後で輝度値の差が大きいことを表している。
このような処理は、食前画像における皿領域と食後画像における皿候補領域との組み合わせ毎に実施され、組み合わせ毎に食事部分差分画像が生成される。
そして、食事部分類似度算出部110は、以下の式に従って、食前画像における皿領域と食後画像における皿候補領域との組み合わせ毎に、食事部分差分画像の画素値から類似度Sfを算出し、第1データ格納部109に格納する(ステップS49)。
(2)式におけるNは、食事部分差分画像の画素数を表し、piはi番目の画素の画素値を表す。なお、画素値は0から1までの値に分布するようになっている。例えば、0から255で分布する場合には、0から1の範囲にマッピングする。図14に示すようなデータ(Sfの部分を含む。)が第1データ格納部109に格納されることになる。
また、重み算出部112は、例えば皿領域データ格納部105に格納されている皿領域の画像データを用いて、類似度Sp及びSfの重み付け加算に用いられる重み値wを算出し、統合類似度算出部111に出力する(ステップS11)。
重み値wの算出法は様々に存在しているが、例えば食事の複雑度に基づく方法を用いる。
食事の見た目は食事の種類によって大きく異なる傾向がある。例えば、図15及び図16のように、オムライスや冷奴などの食前の見た目が単純であったり構造的であるものは、食後では見た目が大きく変化する傾向があり、その場合は食事部分の類似度に対する信頼性は低くなる。一方で、チャーハンや野菜炒めなどの食前の見た目が構造的でなく乱雑であるものは食後においても食前の見た目と変わらない傾向があり、その場合は食事部分の類似度に対する信頼性は高くなる。
そこで、食事部分が乱雑であるかどうかを表す指標として画像エントロピーを用いる。食前画像の画像エントロピーが小さい場合は、見た目が単純であったり構造的であると判断し、重み値wを小さく設定し、食前画像のエントロピーが大きい場合は、見た目が構造的でなく乱雑であると判断し、重み値wを大きく設定することで、適切な統合類似度を算出できるようになる。
食前画像における皿領域の食事部分についてのエントロピーを加味した重み値wを、次のような処理で算出する。まず、食前画像における皿領域についてヒストグラム特徴量を抽出する。ヒストグラム特徴量は、輝度ヒストグラム、色ヒストグラム、SIFTやSURFなどの局所特徴量をbag-of-words で表現したvisual wordヒストグラムなどを用いる。
そして、ヒストグラムを、当該ヒストグラムにおける各ビン(出現頻度のカウント)の値を合計した値が1になるように正規化し、各ビンについての出現頻度を求め、以下の式により重み値wを算出する。
(3)式において、Nはヒストグラムのビンの数であり、ri は、i番目のビンについての出現頻度(合計値が1になるように正規化されているので出現割合)である。
重み算出部112は、例えばこのような演算によって、重み値wを算出して、重み値wを統合類似度算出部111に出力する。
なお、フーリエ変換やウェーブレット変換などの周波数分析手法で、高周波成分の大きさを抽出することにより、複雑度を算出した上で、重み値wを算出しても良い。
次に、統合類似度算出部111は、第1データ格納部109に格納されている類似度Sp及びSfと、重み値wとから、食前画像における皿領域と食後画像における各皿候補領域との組み合わせについて統合類似度を算出して、第2データ格納部113に格納する(ステップS13)。
以下に示す式で統合類似度Sは算出される。
S=(1−w)Sp+wSf
このように食事部分の類似度Sfと皿部分の類似度Spとをwによる重み付け加算したものとなる。本実施の形態では、重み値wが大きいほど食事部分が重視され、小さいほど皿部分が重視される統合類似度が算出される。ステップS13の処理を実施すると、例えば図17に示すようなデータが、第2データ格納部113に格納される。図17の例では、皿候補領域毎に、統合類似度Sの値が登録されるようになっている。
そして、対応領域選択部114は、統合類似度Sが最大となる皿候補領域を特定し、摂取割合を算出するために用いるので第1データ格納部109から処理に係る皿領域についての食事部分マスクと統合類似度Sが最大となる皿候補領域についての食事部分マスクとを読み出して、第3データ格納部115に格納する(ステップS15)。皿領域の識別子及び統合類似度Sが最大となる皿候補領域の識別子も、第3データ格納部115に格納する。処理は、端子Aを介して図18の処理に移行する。
図18の処理の説明に移行して、例えば皿部分類似度算出部108は、食前画像において未処理の皿領域が存在するか判断する(図18:ステップS17)。未処理の皿領域が存在する場合には、端子Bを介してステップS5に戻る。
一方、食前画像における未処理の皿領域が存在しなければ、摂取割合算出部116は、第3データ格納部115に格納されているデータから、食前画像における皿領域毎に、摂取割合を算出し、第4データ格納部117に格納する(ステップS19)。
本実施の形態では、対応する領域について、食前画像の食事部分マスクから食後画像の食事部分マスクを引くことで、食前と食後の食事部分における変化量がわかる。従って、食事部分における変化の割合を、ユーザの摂取割合として算出する。具体的には、以下の式で算出する。
(4)式において、Nは、食前画像の皿部分マスクの画素数であり、pbiは食前画像の食事部分マスクのi番目の画素値を表し、paiは食後画像の食事部分マスクのi番目の画素値を表す。このように、食前画像の皿部分マスクの画素値の累積値に対する、画素値の差の累積値の割合で、摂取割合が算出される。第4データ格納部117には例えば図19に示すようなデータが格納される。図19の例では、皿領域毎に、摂取割合vの値が登録されるようになっている。
そして、カロリー算出部119は、食事認識結果格納部104から各皿領域の食事品目を読み出して、カロリーDB118から対応するカロリー数を読み出し、第4データ格納部117から各皿領域の摂取率を読み出し、これらから摂取カロリーを算出し、第5データ格納部120に格納する。
カロリーDB118は、例えば食事品目毎に、典型的なカロリー数が登録されている。食事認識結果格納部104には、皿領域毎に食事品目名が登録されているので、各食事品目に対応するカロリー数を読み出す。同様に、第4データ格納部117には、各皿領域について摂取割合vが登録されているので、これを読み出し、以下の式で摂取カロリーcを算出する。
(5)式において、ciは、i番目の皿領域の食事品目のカロリー数を表し、viは、i番目の皿領域の摂取割合を表す。
出力部121は、第5データ格納部120に格納されている摂取カロリーcを、要求元のユーザ端末に出力する(ステップS21)。これによって、ユーザは、正確な摂取カロリーcを自動的に得ることができるようになる。
[実施の形態2]
上で述べた実施の形態1では、画像データだけで統合類似度Sを算出する処理フローを示したが、本実施の形態では、以下のような観点で統合類似度を補正することで、食前画像と食後画像との領域対応付けの精度を向上させる。
具体的には、実際の食事シーンでは、ほとんどの場合、食前と食後で各食事品目の位置があまり変わらない傾向がある。例えば、図4のような食前画像における皿の配置は、食後であってもほとんど変わらない場合が多い。従って、食前と食後で皿領域の移動量が小さい場合は、同一の食事品目である可能性が高いと判断でき、逆に皿領域の移動量が大きい場合は、同一の食事品目である可能性が低いと判断できる。
このため、本実施の形態では、図20に示すような統合類似度算出部111を採用する。本実施の形態における統合類似度算出部111は、類似度算出部1111と、類似度格納部1112と、距離算出部1113と、距離格納部1114と、拡張統合類似度算出部1115とを有する。
類似度算出部1111は、第1データ格納部109に格納されているデータから、食前画像における皿領域と食後画像における各皿候補領域との組み合わせについて統合類似度Sを算出し、類似度格納部1112に格納する。距離算出部1113は、皿領域データ格納部105と皿候補領域データ格納部107とに格納されているデータを用いて距離算出処理を実施し、食前画像における皿領域と食後画像における各皿候補領域との組み合わせについて距離データを、距離格納部1114に格納する。
拡張統合類似度算出部1115は、類似格納部1112と距離格納部1114とに格納されているデータを用いて処理を実施し、処理結果を第2データ格納部113に格納する。
次に、図21乃至図23を用いて図2及び図20に示した情報処理装置1000の処理内容を説明する。まず、皿領域検出部102は、画像データ格納部101に格納されている食前画像から皿領域候補を抽出し、皿領域候補の画像データを食事認識部103に出力する。食事認識部103は、皿領域候補の画像データから食事品目を特定するための処理を実施する。そして、食事認識部103は、食事品目が特定できた皿領域候補を皿領域として特定し、当該皿領域の識別子に対応付けて食事品目を食事認識結果格納部104に格納する。また、食事認識部103は、食事品目が特定できた皿領域候補の識別子を皿領域検出部102に出力し、皿領域検出部102は、この出力データに基づき、皿領域の画像データを皿領域データ格納部105に格納する(図21:ステップS101)。ステップS1と同様であるから、これ以上は述べない。皿領域データ格納部105には、例えば、皿領域の識別子と、食前画像内における皿領域の位置を表すデータ(例えば領域の左上の座標値)と、皿領域の画像データとが格納される。
また、皿候補領域検出部106は、画像データ格納部101に格納されている食後画像から皿候補領域を抽出し、皿候補領域データ格納部107に格納する(ステップS103)。処理自体は、皿領域検出部102と同様であり、食後画像から楕円や四角を検出する。なお、皿候補領域データ格納部107には、例えば、皿候補領域の識別子と、食後画像内における皿候補領域の位置を表すデータ(例えば領域の左上の座標値)と、皿候補領域の画像データとが格納される。
次に、皿部分類似度算出部108は、皿領域データ格納部105において、食前画像における未処理の皿領域を1つ特定する(ステップS105)。そして、皿部分類似度算出部108及び食事部分類似度算出部110は、統合類似度算出処理を実施する(ステップS107)。この処理については、ステップS7乃至S13と同様であり、ここでは詳細な説明は省略する。なお、類似度算出部1111によりステップS107は実施される。
そして、距離算出部1113は、特定された皿領域と食後画像における各皿候補領域との組み合わせについて距離dを算出し、距離格納部1114に格納する(ステップS109)。距離は、例えばユークリッド距離とし、例えば図22に示すようなデータが、距離格納部1114に格納される。図22の例では、皿候補領域毎に、距離dが登録されるようになっている。
その後、拡張統合類似度算出部1115は、距離格納部1114に格納されている距離dのうち最大値dmaxを特定し(ステップS111)、特定された皿領域と食後画像における各皿候補領域の組み合わせについて、拡張統合類似度Seを算出し、第2データ格納部113に格納する(ステップS113)。
拡張統合類似度Seについては、以下の式で算出される。
dは、食前画像における皿領域と食後画像における皿候補領域との距離を表す。また、Kは、移動距離の影響度を表す0乃至1の定数である。従って、K=0のときは距離を加味しない統合類似度だけで拡張統合類似度が算出され、K=1のときは統合類似度を加味しない距離だけで拡張統合類似度が算出される。なお、健康管理サービスにおける一般的なユーザの場合には、K=0.3乃至0.4程度を設定することによって適切な拡張統合類似度が算出されることが経験的に知られている。
ステップS113を実施することによって、例えば図23に示すようなデータが、第2データ格納部113に格納されることになる。図23の例では、皿候補領域毎に、拡張統合類似度Seの値が登録されるようになっている。
その後、対応領域選択部114は、第2データ格納部113に格納されている拡張統合類似度Seが最大となる皿候補領域を特定し、摂取割合を算出するために用いるので第1データ格納部109から処理に係る皿領域についての食事部分マスクと統合類似度Seが最大となる皿候補領域についての食事部分マスクとを読み出して、第3データ格納部115に格納する(ステップS115)。皿領域の識別子及び拡張統合類似度Seが最大となる皿候補領域の識別子も、第3データ格納部115に格納する。処理は、端子Aを介して図18の処理に移行する。本実施の形態でも、図18の処理については同じであるので、説明を省略する。
以上のような処理を実施することによって、皿領域と皿候補領域とをより精度良く対応付けることができるようになる。
[実施の形態3]
また、以下で述べるような方法で重みwを算出するようにしても良い。食事の見た目は、食前と食後で変わる場合がある。一般的に、食事の見た目は食べた量によって大きく変わる傾向がある。例えば、ほとんど食べられてしまった食事は、食前の形を留めていない場合が多く、その場合は食事部分の類似度に対して信頼性は低くなる。一方で、ほとんど食べられなかった食事は、食後においても食前の形を留めており、その場合は食事部分の類似度に対して信頼性は高くなる。
従って、本実施の形態では、食前と食後で食事部分の変化量が大きい場合は、食事部分の類似度が与える影響を少なくするため、重みwを小さく設定する。また、食前と食後で食事の変化量が小さい場合は、食事部分の類似度が与える影響を大きくするため、重みwを大きく設定する。
そこで、適切な統合類似度を求めるために、食前画像の皿領域における食事部分の面積に対する、食後画像の皿領域における食事部分の面積の比によって、食前食後での食事部分の変化を加味した重みwを算出する。この重みwは以下の(7)式で算出される。
Nは食前画像の食事部分マスクのピクセル数(サイズは同じなので食後画像の合成食事部分マスクのピクセル数も同じ)である。paiは、食後画像における皿候補領域の合成食事部分マスクのi番目のピクセル値である。また、pbiは、食前画像における皿領域の合成食事部分マスクのi番目のピクセル値である。これらの合成食事マスクは二値画像であるから、そのピクセル値は0又は1である。
従って、重み算出部112は、第1データ格納部109から、皿領域の合成食事部分マスクと、各皿候補領域の合成食事部分マスクとを読み出して、上で述べた(7)式に従って、各皿候補領域について重みwを算出し、統合類似算出部111に出力する。
これ以外の処理については実施の形態1と同じであるから、説明を省略する。
この手法では、食事の変化量が大きいと食事の見た目の変化も大きくなるという知識を前提とし、食前画像の皿領域と、食後の皿候補領域とが正しく対応付けられている場合において、統合類似度ができるだけ大きくなるように重みを設定するものである。
正しくない対応付けの場合は、適切でない重みが設定されるため算出される統合類似度にも影響は出るものの、前提とする知識が成立する状況下においては、それよりも正しく対応付けられた場合の統合類似度の方が大きくなる傾向があるため、問題なく本手法が有効に機能する。
[実施の形態4]
さらに、他の方法にて重みwを算出するようにしても良い。第3の実施の形態で述べた重み算出手法は、ユーザが摂取した食事量に基づき食事部分の類似度に対する信頼性を決定する手法である。ユーザが食事を多く摂取すると、食事部分の見た目も変わり、食事部分の面積も減るため、食事部分の類似度が与える影響を少なくする考え方を採用したものである。この方法は、食事の種類を問わず、平均的に適切な重みを算出できる特性を有する。一方、第1の実施の形態で示した重み算出手法は、食前の食事特徴から食事部分の類似度に対する信頼性を決定する手法である。オムライスのような食事は、食前と食後で見た目が変わりやすいため、食事部分の類似度が与える影響を少なくするという考え方に基づく。この手法は一部の食事に対しては、極めて適切な重みを算出できる。
このように、上で述べた手法は特性が異なっている。もし、撮影対象の食事の種類が限られていて、オムライスのような見た目が変わりやすい食事が対象にない場合は、第1の実施の形態で述べた重み算出手法のみを用いれば良い。一方で、見た目が変わりやすい食事が頻繁に出ることがわかっている場合は、食事の複雑度による重み算出法を用いれば良い。
しかしながら、撮影対象の食事が限定されていない場合は、どちらか片方だけでなく、両方の特性を併せ持つ重み算出方法を適用することが望ましい。そのような場合、第3の実施の形態で述べた第1の重みwaと第1の実施の形態で述べた第2の重みwbとの平均値((8)式)を採用しても良い。
(8)式を採用して重み値を算出することで、両方の特性を併せ持つ重みを算出することができるようになる。
以上本技術の実施の形態を説明したが、本技術はこれに限定されない。例えば、上で述べた機能ブロック図は一例であって、必ずしも実際のプログラムモジュール構成とは一致しない。また、処理フローについても、処理結果が変わらない限り変更することができる。例えば処理順番を入れ替えたり、複数のステップを並列実行することができる。具体的には、食前画像と食後画像との処理については並列実行できる場合がある。
さらに、システム構成についても、上でも述べたように1つの装置で全ての機能を有するようにしても良いし、複数の装置で機能分担を行うようにしても良い。特に、画像を撮影する装置と、画像を送信したり処理結果を受信したりする装置を別にすることも可能である。
なお、上で述べた情報処理装置1000は、コンピュータ装置であって、図24に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本実施の形態をまとめると、以下のようになる。
本実施の形態に係る情報処理方法は、(A)食事前における皿の状態を撮影した食前画像と、食後における皿の状態を撮影した食後画像とを格納する画像格納部に格納されている食前画像と食後画像とに基づき、食前画像における皿領域の各々について、当該皿領域の皿部分と食後画像における各皿候補領域の皿部分との第1の類似度を算出し、第1データ格納部に格納する皿部分類似度ステップと、(B)画像格納部に格納されている食前画像と食後画像とに基づき、食前画像における皿領域の各々について、当該皿領域の食事部分と食後画像における各皿候補領域の食事部分との第2の類似度を算出して、第1データ格納部に格納する食事部分類似度算出ステップと、(C)食前画像における皿領域の各々について、第1データ格納部に格納されている第1の類似度と第2の類似度とから算出される第3の類似度が最も大きい値となる食後画像における皿候補領域を特定する領域特定ステップと、(D)食前画像における皿領域の各々について、当該皿領域の食事部分と、当該皿領域について特定された、食後画像における皿候補領域の食事部分とに基づき食事摂取割合を算出し、第2データ格納部に格納する摂取割合算出ステップと、(E)食前画像における皿領域に載せられている食事のカロリー数と食前画像における皿領域について第2データ格納部に格納されている前記食事摂取割合との積を、食前画像における皿領域の全てについて加算することで総摂取カロリーを算出し、第3データ格納部に格納するカロリー計算ステップとを含む。
このように皿部分と食事部分とに分けて類似度を算出した上で統合することで、より精度良く食前画像の皿領域と食後画像の皿候補領域とを対応付けることができるようになる。従って、一般的な食前画像及び食後画像によって、カロリー計算を精度良く行うことができるようになる。
また、上で述べた皿部分類似度算出ステップが、食前画像における皿領域の皿部分と食後画像における各皿候補領域の皿部分との差を表す皿部分差分画像を生成し、当該皿部分差分画像から皿部分についての第1の類似度を算出するステップを含むようにしてもよい。
さらに、上で述べた食事部分類似度算出ステップが、食前画像における皿領域の食事部分と食後画像における各皿候補領域の食事部分との差を表す食事部分差分画像を生成し、当該食事部分差分画像から食事部分についての第2の類似度を算出するステップを含むようにしてもよい。
また、上で述べた領域特定ステップにおいて、第1の類似度と第2の類似度との重み付け加算により第3の類似度を算出するようにしてもよい。皿部分と食事部分とのいずれを重要視するのかを設定できる。
さらに、上で述べた領域特定ステップが、食前画像における皿領域の各々について、食後画像における各皿候補領域との距離を算出し、当該距離によって第3の類似度を補正するステップを含むようにしてもよい。食前と食後とでは皿を移動させることは多くない。例えば距離が短い場合には可能性が高くなるので第3の類似度を増加させるようにしても良い。
また、本情報処理方法は、食前画像における皿領域の画像エントロピーに基づく重み値を算出する重み算出ステップをさらに含むようにしても良い。例えば、画像エントロピーが高い場合には、食前から食後へ画像の変化が小さいと考えられ、画像エントロピーが低い場合には、食前から食後へ画像の変化が大きいと考えられる。そのため、画像エントロピーが高い場合には食事部分の重みを高くするような設定が好ましい。
さらに、本情報処理方法は、食前画像における皿領域の食事部分に対する、食後画像における皿候補領域の食事部分の面積比に応じた重み値を算出する重み算出ステップをさらに含むようにしてもよい。食前から食後へ画像の変化が小さい場合には食事部分の重みを大きくする方が良い場合もある。
また、上で述べた摂取割合算出ステップが、食前画像における皿領域の各々について、当該皿領域の食事部分の二値画像の画素値と、当該皿領域について特定された、食後画像における皿候補領域の食事部分の二値画像の画素値との差の総和を、食前画像における皿領域の食事部分の二値画像の画素値の総和で除することで食事摂取割合を算出するステップを含むようにしてもよい。これによって、より正確に食事摂取割合を推定することができる。
さらに、上で述べた皿部分類似度算出ステップが、食前画像から皿領域における皿部分を抽出して得られる第1の二値画像と、食後画像から皿候補領域における皿部分を抽出して得られる第2の二値画像との論理積により第1の合成二値画像を生成し、食前画像における皿領域と食後画像における皿候補領域との輝度についての差分の絶対値と第1の合成二値画像との論理積により皿部分差分画像を生成するステップを含むようにしてもよい。
また、上で述べた食事部分類似度算出ステップが、食前画像の皿領域における食事部分についての第3の二値画像と、食後画像の皿候補領域における食事部分についての第4の二値画像との論理積により第2の合成二値画像を生成し、食前画像の皿領域と食後画像の皿領域との輝度についての差分と第2の合成二値画像との論理積により食事部分差分画像を生成するステップを含むようにしてもよい。
さらに、上で述べた領域特定部が、食前画像における皿領域の各々について、食後画像における各皿候補領域との距離を算出し、当該距離が短いほど大きな値となるように第3の類似度を補正するようにしてもよい。
なお、上で述べたような処理をコンピュータに実施させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、CD−ROMなどの光ディスク、光磁気ディスク、半導体メモリ(例えばROM)、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、RAM等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
食事前における皿の状態を撮影した食前画像と、食後における皿の状態を撮影した食後画像とを格納する画像格納部と、
前記画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との第1の類似度を算出し、第1データ格納部に格納する皿部分類似度算出部と、
前記画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との第2の類似度を算出して、前記第1データ格納部に格納する食事部分類似度算出部と、
前記食前画像における皿領域の各々について、前記第1データ格納部に格納されている前記第1の類似度と前記第2の類似度とから算出される第3の類似度が最も大きい値となる前記食後画像における皿候補領域を特定する領域特定部と、
前記食前画像における皿領域の各々について、当該皿領域の食事部分と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分とに基づき食事摂取割合を算出し、第2データ格納部に格納する摂取割合算出部と、
前記食前画像における皿領域に載せられている食事のカロリー数と前記食前画像における皿領域について前記第2データ格納部に格納されている前記食事摂取割合との積を、前記食前画像における皿領域の全てについて加算することで総摂取カロリーを算出し、第3データ格納部に格納するカロリー算出部と、
を有する情報処理装置。
(付記2)
前記皿部分類似度算出部が、
前記食前画像における皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との差を表す皿部分差分画像を生成し、当該皿部分差分画像から皿部分についての第1の類似度を算出する
付記1記載の情報処理装置。
(付記3)
前記食事部分類似度算出部が、
前記食前画像における皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との差を表す食事部分差分画像を生成し、当該食事部分差分画像から食事部分についての第2の類似度を算出する
付記1又は2記載の情報処理装置。
(付記4)
前記領域特定部が、
前記第1の類似度と前記第2の類似度との重み付け加算により前記第3の類似度を算出する
付記1乃至3のいずれか1つ記載の情報処理装置。
(付記5)
前記領域特定部が、
前記食前画像における皿領域の各々について、前記食後画像における各皿候補領域との距離を算出し、当該距離によって前記第3の類似度を補正する
付記1乃至4のいずれか1つ記載の情報処理装置。
(付記6)
前記食前画像における皿領域の画像エントロピーに基づく重み値を算出する重み算出部
をさらに有する付記4記載の情報処理装置。
(付記7)
前記食前画像における皿領域の食事部分に対する、前記食後画像における皿候補領域の食事部分の面積比に応じた重み値を算出する重み算出部
をさらに有する付記4記載の情報処理装置。
(付記8)
前記摂取割合算出部が、
前記食前画像における皿領域の各々について、当該皿領域の食事部分の二値画像の画素値と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分の二値画像の画素値との差の総和を、前記食前画像における皿領域の食事部分の二値画像の画素値の総和で除することで食事摂取割合を算出する
付記1乃至7のいずれか1つ記載の情報処理装置。
(付記9)
食事前における皿の状態を撮影した食前画像と、食後における皿の状態を撮影した食後画像とを格納する画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との第1の類似度を算出し、第1データ格納部に格納する皿部分類似度ステップと、
前記画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との第2の類似度を算出して、前記第1データ格納部に格納する食事部分類似度算出ステップと、
前記食前画像における皿領域の各々について、前記第1データ格納部に格納されている前記第1の類似度と前記第2の類似度とから算出される第3の類似度が最も大きい値となる前記食後画像における皿候補領域を特定する領域特定ステップと、
前記食前画像における皿領域の各々について、当該皿領域の食事部分と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分とに基づき食事摂取割合を算出し、第2データ格納部に格納する摂取割合算出ステップと、
前記食前画像における皿領域に載せられている食事のカロリー数と前記食前画像における皿領域について前記第2データ格納部に格納されている前記食事摂取割合との積を、前記食前画像における皿領域の全てについて加算することで総摂取カロリーを算出し、第3データ格納部に格納するカロリー計算ステップと、
を含み、コンピュータにより実行される情報処理方法。
(付記10)
前記皿部分類似度算出ステップが、
前記食前画像における皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との差を表す皿部分差分画像を生成し、当該皿部分差分画像から皿部分についての第1の類似度を算出するステップ
を含む付記9記載の情報処理方法。
(付記11)
前記食事部分類似度算出ステップが、
前記食前画像における皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との差を表す食事部分差分画像を生成し、当該食事部分差分画像から食事部分についての第2の類似度を算出するステップ
を含む付記9又は10記載の情報処理方法。
(付記12)
前記領域特定ステップにおいて、
前記第1の類似度と前記第2の類似度との重み付け加算により前記第3の類似度を算出する
付記9乃至11のいずれか1つ記載の情報処理方法。
(付記13)
前記領域特定ステップが、
前記食前画像における皿領域の各々について、前記食後画像における各皿候補領域との距離を算出し、当該距離によって前記第3の類似度を補正するステップ
を含む付記10乃至12のいずれか1つ記載の情報処理方法。
(付記14)
前記食前画像における皿領域の画像エントロピーに基づく重み値を算出する重み算出ステップ
をさらに含む付記12記載の情報処理方法。
(付記15)
前記食前画像における皿領域の食事部分に対する、前記食後画像における皿候補領域の食事部分の面積比に応じた重み値を算出する重み算出ステップ
をさらに含む付記12記載の情報処理方法。
(付記16)
前記摂取割合算出ステップが、
前記食前画像における皿領域の各々について、当該皿領域の食事部分の二値画像の画素値と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分の二値画像の画素値との差の総和を、前記食前画像における皿領域の食事部分の二値画像の画素値の総和で除することで食事摂取割合を算出するステップ
を含む付記9乃至15のいずれか1つ記載の情報処理方法。
(付記17)
食事前における皿の状態を撮影した食前画像と、食後における皿の状態を撮影した食後画像とを格納する画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との第1の類似度を算出し、第1データ格納部に格納する皿部分類似度ステップと、
前記画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との第2の類似度を算出して、前記第1データ格納部に格納する食事部分類似度算出ステップと、
前記食前画像における皿領域の各々について、前記第1データ格納部に格納されている前記第1の類似度と前記第2の類似度とから算出される第3の類似度が最も大きい値となる前記食後画像における皿候補領域を特定する領域特定ステップと、
前記食前画像における皿領域の各々について、当該皿領域の食事部分と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分とに基づき食事摂取割合を算出し、第2データ格納部に格納する摂取割合算出ステップと、
前記食前画像における皿領域に載せられている食事のカロリー数と前記食前画像における皿領域について前記第2データ格納部に格納されている前記食事摂取割合との積を、前記食前画像における皿領域の全てについて加算することで総摂取カロリーを算出し、第3データ格納部に格納するカロリー計算ステップと、
を、コンピュータに実行させる情報処理プログラム。
(付記18)
前記皿部分類似度算出ステップが、
前記食前画像における皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との差を表す皿部分差分画像を生成し、当該皿部分差分画像から皿部分についての第1の類似度を算出するステップ
を含む付記17記載の情報処理プログラム。
(付記19)
前記食事部分類似度算出ステップが、
前記食前画像における皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との差を表す食事部分差分画像を生成し、当該食事部分差分画像から食事部分についての第2の類似度を算出するステップ
を含む付記17又は18記載の情報処理プログラム。
(付記20)
前記領域特定ステップにおいて、
前記第1の類似度と前記第2の類似度との重み付け加算により前記第3の類似度を算出する
付記17乃至19のいずれか1つ記載の情報処理プログラム。
(付記21)
前記領域特定ステップが、
前記食前画像における皿領域の各々について、前記食後画像における各皿候補領域との距離を算出し、当該距離によって前記第3の類似度を補正するステップ
を含む付記17乃至19のいずれか1つ記載の情報処理プログラム。
(付記22)
前記食前画像における皿領域の画像エントロピーに基づく重み値を算出する重み算出ステップ
をさらに含む付記20記載の情報処理プログラム。
(付記23)
前記食前画像における皿領域の食事部分に対する、前記食後画像における皿候補領域の食事部分の面積比に応じた重み値を算出する重み算出ステップ
をさらに含む付記20記載の情報処理プログラム。
(付記24)
前記摂取割合算出ステップが、
前記食前画像における皿領域の各々について、当該皿領域の食事部分の二値画像の画素値と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分の二値画像の画素値との差の総和を、前記食前画像における皿領域の食事部分の二値画像の画素値の総和で除することで食事摂取割合を算出するステップ
を含む付記17乃至23のいずれか1つ記載の情報処理プログラム。
100 入力部
101 画像データ格納部
102 皿領域検出部
103 食事認識部
104 食事認識結果格納部
105 皿領域データ格納部
106 皿候補領域検出部
107 皿候補領域データ格納部
108 皿部分類似度算出部
109 第1データ格納部
110 食事部分類似度算出部
111 統合類似度算出部
112 重み算出部
113 第2データ格納部
114 対応領域選択部
115 第3データ格納部
116 摂取割合算出部
117 第4データ格納部
118 カロリーDB
119 カロリー算出部
120 第5データ格納部
121 出力部

Claims (10)

  1. 食事の品目に対応するカロリー数を記憶するカロリー記憶部と、
    食事前における皿の状態を撮影した食前画像と、食後における皿の状態を撮影した食後画像とを格納する画像格納部と、
    前記食前画像における皿領域に載せられている食事の品目を識別し、認識結果記憶部に格納する食事認識部と、
    前記画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との第1の類似度を算出し、第1データ格納部に格納する皿部分類似度算出部と、
    前記画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との第2の類似度を算出して、前記第1データ格納部に格納する食事部分類似度算出部と、
    前記食前画像における皿領域の各々について、前記第1データ格納部に格納されている前記第1の類似度と前記第2の類似度とから算出される第3の類似度が最も大きい値となる前記食後画像における皿候補領域を特定する領域特定部と、
    前記食前画像における皿領域の各々について、当該皿領域の食事部分と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分とに基づき食事摂取割合を算出し、第2データ格納部に格納する摂取割合算出部と、
    前記食前画像における皿領域に載せられている食事について、前記認識結果記憶部に格納されている前記食事の品目に対応するカロリー数を前記カロリー記憶部から読み出し、読み出された当該食事のカロリー数と前記食前画像における皿領域について前記第2データ格納部に格納されている前記食事摂取割合との積を、前記食前画像における皿領域の全てについて加算することで総摂取カロリーを算出し、第3データ格納部に格納するカロリー計算部と、
    を有する情報処理装置。
  2. 前記皿部分類似度算出部が、
    前記食前画像における皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との差を表す皿部分差分画像を生成し、当該皿部分差分画像から皿部分についての第1の類似度を算出する
    請求項1記載の情報処理装置。
  3. 前記食事部分類似度算出部が、
    前記食前画像における皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との差を表す食事部分差分画像を生成し、当該食事部分差分画像から食事部分についての第2の類似度を算出する
    請求項1又は2記載の情報処理装置。
  4. 前記領域特定部が、
    前記第1の類似度と前記第2の類似度との重み付け加算により前記第3の類似度を算出する
    請求項1乃至3のいずれか1つ記載の情報処理装置。
  5. 前記領域特定部が、
    前記食前画像における皿領域の各々について、前記食後画像における各皿候補領域との距離を算出し、当該距離によって前記第3の類似度を補正する
    請求項1乃至4のいずれか1つ記載の情報処理装置。
  6. 前記食前画像における皿領域の画像エントロピーに基づく重み値を算出する重み算出部
    をさらに有する請求項4記載の情報処理装置。
  7. 前記食前画像における皿領域の食事部分に対する、前記食後画像における皿候補領域の食事部分の面積比に応じた重み値を算出する重み算出部
    をさらに有する請求項4記載の情報処理装置。
  8. 前記摂取割合算出部が、
    前記食前画像における皿領域の各々について、当該皿領域の食事部分の二値画像の画素値と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分の二値画像の画素値との差の総和を、前記食前画像における皿領域の食事部分の二値画像の画素値の総和で除することで食事摂取割合を算出する
    請求項1乃至7のいずれか1つ記載の情報処理装置。
  9. 食事前における皿の状態を撮影した食前画像と、食後における皿の状態を撮影した食後画像とを格納する画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との第1の類似度を算出し、第1データ格納部に格納する皿部分類似度ステップと、
    前記食前画像における皿領域に載せられている食事の品目を識別し、認識結果記憶部に格納する食事認識ステップと、
    前記画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との第2の類似度を算出して、前記第1データ格納部に格納する食事部分類似度算出ステップと、
    前記食前画像における皿領域の各々について、前記第1データ格納部に格納されている前記第1の類似度と前記第2の類似度とから算出される第3の類似度が最も大きい値となる前記食後画像における皿候補領域を特定する領域特定ステップと、
    前記食前画像における皿領域の各々について、当該皿領域の食事部分と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分とに基づき食事摂取割合を算出し、第2データ格納部に格納する摂取割合算出ステップと、
    前記食前画像における皿領域に載せられている食事について、前記認識結果記憶部に格納されている前記食事の品目に対応するカロリー数を、食事の品目に対応するカロリー数を記憶するカロリー記憶部から読み出し、読み出された当該食事のカロリー数と前記食前画像における皿領域について前記第2データ格納部に格納されている前記食事摂取割合との積を、前記食前画像における皿領域の全てについて加算することで総摂取カロリーを算出し、第3データ格納部に格納するカロリー計算ステップと、
    を含み、コンピュータにより実行される情報処理方法。
  10. 食事前における皿の状態を撮影した食前画像と、食後における皿の状態を撮影した食後画像とを格納する画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の皿部分と前記食後画像における各皿候補領域の皿部分との第1の類似度を算出し、第1データ格納部に格納する皿部分類似度ステップと、
    前記食前画像における皿領域に載せられている食事の品目を識別し、認識結果記憶部に格納する食事認識ステップと、
    前記画像格納部に格納されている前記食前画像と前記食後画像とに基づき、前記食前画像における皿領域の各々について、当該皿領域の食事部分と前記食後画像における各皿候補領域の食事部分との第2の類似度を算出して、前記第1データ格納部に格納する食事部分類似度算出ステップと、
    前記食前画像における皿領域の各々について、前記第1データ格納部に格納されている前記第1の類似度と前記第2の類似度とから算出される第3の類似度が最も大きい値となる前記食後画像における皿候補領域を特定する領域特定ステップと、
    前記食前画像における皿領域の各々について、当該皿領域の食事部分と、当該皿領域について特定された、前記食後画像における皿候補領域の食事部分とに基づき食事摂取割合を算出し、第2データ格納部に格納する摂取割合算出ステップと、
    前記食前画像における皿領域に載せられている食事について、前記認識結果記憶部に格納されている前記食事の品目に対応するカロリー数を、食事の品目に対応するカロリー数を記憶するカロリー記憶部から読み出し、読み出された当該食事のカロリー数と前記食前画像における皿領域について前記第2データ格納部に格納されている前記食事摂取割合との積を、前記食前画像における皿領域の全てについて加算することで総摂取カロリーを算出し、第3データ格納部に格納するカロリー計算ステップと、
    を、コンピュータに実行させる情報処理プログラム。
JP2011004532A 2011-01-13 2011-01-13 情報処理装置、方法及びプログラム Active JP5691533B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011004532A JP5691533B2 (ja) 2011-01-13 2011-01-13 情報処理装置、方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011004532A JP5691533B2 (ja) 2011-01-13 2011-01-13 情報処理装置、方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2012146159A JP2012146159A (ja) 2012-08-02
JP5691533B2 true JP5691533B2 (ja) 2015-04-01

Family

ID=46789657

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011004532A Active JP5691533B2 (ja) 2011-01-13 2011-01-13 情報処理装置、方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5691533B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6238067B2 (ja) * 2014-01-10 2017-11-29 清水建設株式会社 誘虫予測方法及び誘虫予測システム
JP6352751B2 (ja) * 2014-09-26 2018-07-04 京セラ株式会社 電子機器および電子機器におけるカロリーの表示方法
JP2021022199A (ja) * 2019-07-29 2021-02-18 LINE Pay株式会社 端末のデータの分類方法、端末、プログラム
JP7256907B1 (ja) * 2022-01-07 2023-04-12 日本コンピュータビジョン株式会社 情報処理プログラム、情報処理装置及び情報処理方法
CN114973237B (zh) * 2022-06-07 2023-01-10 慧之安信息技术股份有限公司 基于图象识别的光盘率检测方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005070908A (ja) * 2003-08-20 2005-03-17 Matsumoto Takashi 院内用食事摂取量の計測方法と計測システム
JP2008204105A (ja) * 2007-02-19 2008-09-04 Shikoku Chuboki Seizo Kk 自動食事摂取量計測システム及び自動食事摂取量計測方法

Also Published As

Publication number Publication date
JP2012146159A (ja) 2012-08-02

Similar Documents

Publication Publication Date Title
US9336459B2 (en) Interactive content generation
Ciocca et al. Food recognition: a new dataset, experiments, and results
Deng et al. Image aesthetic assessment: An experimental survey
Miyazaki et al. Image-based calorie content estimation for dietary assessment
US9633282B2 (en) Cross-trained convolutional neural networks using multimodal images
US8594385B2 (en) Predicting the aesthetic value of an image
US10949702B2 (en) System and a method for semantic level image retrieval
JP5621897B2 (ja) 処理方法、コンピュータプログラム及び処理装置
US8750602B2 (en) Method and system for personalized advertisement push based on user interest learning
WO2017000716A2 (zh) 图片的管理方法、装置及终端设备
CN105518678B (zh) 搜索方法、搜索装置和用户设备
CN113711235A (zh) 使用深度学习网络从用户照片进行重量测量的系统和方法
TWI498845B (zh) 飲食管理方法與系統
CN107808120A (zh) 眼镜定位方法、装置及存储介质
JP5691533B2 (ja) 情報処理装置、方法及びプログラム
CN108229674A (zh) 聚类用神经网络的训练方法和装置、聚类方法和装置
CN112991238B (zh) 基于纹理色彩混合式的食物图像分割方法、系统、介质
Oliveira et al. A mobile, lightweight, poll-based food identification system
CN111666905B (zh) 模型训练方法、行人属性识别方法和相关装置
Sun et al. Foodtracker: A real-time food detection mobile application by deep convolutional neural networks
EP1889207A2 (en) System and method for enabling the use of captured images through recognition
Zhang et al. Detection of regions of interest in a high-spatial-resolution remote sensing image based on an adaptive spatial subsampling visual attention model
US20220392252A1 (en) Facial Skin Detection Method and Apparatus
JP2017027227A (ja) ラベル推定関数学習装置、方法、ラベル推定装置、方法及びプログラム
Xu et al. Low complexity image quality measures for dietary assessment using mobile devices

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131007

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140610

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140709

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150119

R150 Certificate of patent or registration of utility model

Ref document number: 5691533

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150