説明

情報処理装置、情報処理方法、およびプログラム

【課題】ユーザに対して摂取カロリーなどの喫食情報を正確に提供する。
【解決手段】本開示の情報処理装置は、料理を被写体として撮像された撮像画像における各料理の領域を切出すことにより料理画像を生成する切出し部と、生成された前記料理画像を同一被写体毎にグルーピングするグルーピング部とを含む。本開示は、喫食管理システムに適用することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法、およびプログラムに関し、特に、ユーザが喫食する料理を撮像した画像に基づいてユーザの喫食情報を管理できるようにした情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【0002】
従来、飲食店で喫食した料理のカロリーを知ることができるシステムが存在する。当該システムでは、飲食店で提供された料理をカメラ付き携帯端末にて撮像し、料理の画像とその飲食店の情報を所定のサーバに通知することにより、料理の喫食による摂取カロリーなどの情報がサーバからユーザのカメラ付き携帯端末に通知されるようになされている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2004−118562号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述したシステムにおいては、飲食店毎に料理とカロリーとが対応付けられているテーブルがサーバに保持されているので、例えば、テーブルに存在しない飲食店の料理や、自宅などで調理された料理については、そのカロリーなどの情報を得ることができなかった。
【0005】
また、出てきた料理を撮像するに際しては、同一被写体(料理)を複数回撮像することが想定される。上述したシステムにおいては、得られる複数の画像のうちのどれをサーバに通知するかの選択がユーザに必須となり、この場合、摂取カロリーの判定に適した画像をユーザが必ずしも選択できているとは限らない。
【0006】
さらに、同一被写体(料理)が写った複数の画像の選択をユーザが省略した場合、実際には1度しか喫食していない料理が複数回喫食したものとされ、摂取カロリーが誤って判定されてしまうことが起こり得た。
【0007】
本開示はこのような状況に鑑みてなされたものであり、ユーザに対して摂取カロリーなどの喫食情報を正確に提供できるようにするものである。
【課題を解決するための手段】
【0008】
本開示の一側面である情報処理装置は、料理を被写体として撮像された撮像画像における各料理の領域を切出すことにより料理画像を生成する切出し部と、生成された前記料理画像を同一被写体毎にグルーピングするグルーピング部とを含む。
【0009】
本開示の一側面である情報処理装置は、同一被写体毎にグルーピングされた前記料理画像の各グループから代表料理画像を選択する選択部と、選択された前記代表料理画像を解析し、解析結果に基づいて前記代表料理画像の被写体である料理のカロリーまたは栄養バランスの少なくとも一方を判定する栄養判定部と、前記栄養判定部の判定結果をユーザに提示する提示部とをさらに含むことができる。
【0010】
前記選択部は、同一被写体毎にグルーピングされた前記料理画像の各グループから、前記栄養判定部による判定に適した前記代表料理画像を選択することができる。
【0011】
前記選択部は、ユーザからの操作に従い、同一被写体毎にグルーピングされた前記料理画像の各グループから前記代表料理画像を選択することができる。
【0012】
グルーピング部は、生成された全ての前記料理画像に対してペアを設定し、前記ペアを成す2枚の料理画像の被写体が同一であるか否かの判定結果に基づいて、前記料理画像を同一被写体毎にグルーピングすることができる。
【0013】
グルーピング部は、生成された全ての前記料理画像に対してペアを設定し、前記ペアを成す2枚の料理画像の撮像日時または撮像位置が所定の閾値を越える場合、前記2枚の料理画像の被写体は同一ではないと判定することができる。
【0014】
前記切出し部は、前記撮像画像における各料理が盛り付けられている食器の領域を切出すことにより前記料理画像を生成することができる。
【0015】
本開示の一側面である情報処理装置は、料理を被写体として撮像することにより前記撮像画像を生成する撮像部をさらに含むことができる。
【0016】
本開示の一側面である情報処理方法は、情報処理装置による、料理を被写体として撮像された撮像画像における各料理の領域を切出すことにより料理画像を生成する切出しステップと、生成された前記料理画像を同一被写体毎にグルーピングするグルーピングステップとを含む。
【0017】
本開示の一側面であるプログラムは、コンピュータを、料理を被写体として撮像された撮像画像における各料理の領域を切出すことにより料理画像を生成する切出し部と、生成された前記料理画像を同一被写体毎にグルーピングするグルーピング部として機能させる。
【0018】
本開示の一側面においては、料理を被写体として撮像された撮像画像における各料理の領域を切出すことにより料理画像が生成され、生成された前記料理画像が同一被写体毎にグルーピングされる。
【発明の効果】
【0019】
本開示の一側面によれば、摂取カロリーなどの喫食情報を正確に提供できる。
【図面の簡単な説明】
【0020】
【図1】本開示を適用した喫食管理システムの構成例を示すブロック図である。
【図2】図1の重複画像除去部の構成例を示すブロック図である。
【図3】第1の喫食管理処理を説明するフローチャートである。
【図4】喫食管理処理の対象となる撮像画像などの例を示す図である。
【図5】提示部による画面表示の一例を示す図である。
【図6】提示部による画面表示の一例を示す図である。
【図7】提示部による画面表示の一例を示す図である。
【図8】提示部による画面表示の一例を示す図である。
【図9】第2の喫食管理処理を説明するフローチャートである。
【図10】喫食管理システムの要素を離散的に配置した例を示すブロック図である。
【図11】喫食管理システムの要素を離散的に配置した例を示すブロック図である。
【図12】喫食管理システムの要素を離散的に配置した例を示すブロック図である。
【図13】喫食管理システムの要素を離散的に配置した例を示すブロック図である。
【図14】リアルタイム喫食管理処理を説明するフローチャートである。
【図15】コンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【0021】
以下、本開示を実施するための最良の形態(以下、実施の形態と称する)について、図面を参照しながら詳細に説明する。
【0022】
<1.実施の形態>
[喫食管理システムの構成例]
図1は、本開示の実施の形態である喫食管理システムの構成例を示している。この喫食管理システム10は、画像データベース(DB)11、重複画像除去部12、栄養判定部13、および提示部14から構成される。
【0023】
画像データベース(DB)11には、喫食する料理を被写体としてユーザが撮像した複数の撮像画像(以下、撮像画像群と称する)が保持されているものとする。各撮像画像には、撮影日時、撮影位置(緯度、経度等)などから成る属性情報が付加されている。なお、撮像画像については、皿や椀などの複数の食器に盛り付けられている複数の料理を1枚の画像にまとめて撮像したものでもいいし、食器毎に個別に撮像したものでもよい。また、同一の被写体(料理)が複数の撮像画像に重複して写っていてもよい。また、動画像をキャプチャして得られる静止画像を撮像画像とするようにしてもよい。
【0024】
重複画像除去部12は、画像データベース11に保持されている撮像画像から料理毎の領域を切出すことによって料理画像を生成する。重複画像除去部12は、複数の料理画像を同一の被写体が写っているものごとにグルーピングを行い、料理画像の各グループからそれぞれ1枚の代表料理画像を選択する。
【0025】
栄養判定部13は、料理画像の各グループからそれぞれ選択された代表料理画像について画像解析を行い、その解析結果に基づいて料理と量を特定する。さらに、栄養判定部13は、予め保持する料理とカロリーおよび栄養価などの対応表に基づいて、特定した料理のカロリー、栄養価などを判定する。
【0026】
提示部14は、栄養判定部13による判定結果に基づき、所定の単位期間(1日間、1週間、1ヶ月など)におけるユーザが喫食した料理の品目、摂取したカロリー、栄養価などを、ユーザの喫食情報としてユーザに提示する。
【0027】
図2は、重複画像除去部12の詳細な構成例を示している。重複画像除去部12は、料理切出し部21、同一料理判定部22、画像選択部23、および操作入力部24から成る。
【0028】
料理切出し部21は、画像データベース11に保持されている複数の撮像画像を取得し、各撮像画像から料理毎の領域を切出すことによって料理画像を生成する。具体的には、各料理はそれぞれ食器に盛られており、食器については、矩形、円形、または楕円形であると想定する。したがって、撮像画像から矩形、円形、または楕円形の食器が写っている領域を切出すことにより料理画像を生成する。
【0029】
なお、上述したように食器毎に切出す方法の他、料理自体の色成分、テクスチャの特徴に基づいて、料理画像を生成するようにしてもよい。
【0030】
同一料理判定部22は、全ての料理画像について他の料理画像とのペアを設定し、各ペアを成す2枚の料理画像について同一被写体(料理)であるか否かを判定する。この判定では、画像の類似度を算出する既存のアルゴリズムを用いることができる。
【0031】
なお、ペアを成す2枚の料理画像(の元の撮影画像)の撮影日時が所定の時間以上離れている場合、またはペアを成す2枚の料理画像(の元の撮影画像)の撮影場所が所定の距離以上離れている場合、たとえ類似した料理画像であってもその料理は1回で喫食したものではなく、別の機会に同じものを喫食している可能性が高いので、類似度の算出を省略して、同一被写体(料理)ではないと判定するようにしてもよい。
【0032】
さらに、同一料理判定部22は、全てのペアに対する判定結果に基づいて、同一被写体が写っている料理画像をグルーピングする。
【0033】
画像選択部23は、グループ毎に属する複数の料理画像の中から1枚の代表料理画像を選択する。具体的には、後段の栄養判定部13にて料理の種類と量がより正確に判定できることを基準として評価値を設定し、その評価値が最も高いものを代表料理画像として選択する。評価値としては、例えば、以下の例を挙げることができる。
【0034】
(1)喫食した量をより正確に判定できるので、食器内により料理が残っている料理画像ほど高い評価とする。
(2)料理の種類と喫食した量をより正確に判定できるので、料理がより真上から撮像されている料理画像ほど高い評価とする。
(3)ユーザが複数の人物と一緒に食事している場合、ユーザ側に位置する料理ほど他の人物が喫食したのではなくユーザが喫食したと考えられるので、撮像画像においてよりユーザ(撮像者)側に写っていた料理画像ほど高い評価とする。
(4)料理の種類と喫食した量をより正確に判定できるので、料理がより遮蔽なく撮像されている料理画像ほど高い評価とする。
(5)料理の種類をより正確に判定できるので、撮像時の露出に過不足なく適切な撮像条件で撮像されている料理画像ほど高い評価とする。
【0035】
操作入力部24は、ユーザの操作を入力する。すなわち、画像選択部23による代表料理画像の選択結果を提示してユーザに修正させることができる。また、上述したように評価値に基づいて画像選択部23が代表料理画像を選択するのではなく、同一のグループに属する料理画像をユーザに提示して、ユーザに代表料理画像を選択させるようにしてもよい。
【0036】
[動作説明]
次に、喫食管理システム10による喫食管理処理について説明する。
【0037】
図3は、第1の喫食管理処理を説明するフローチャートであり、図4は、処理の対象とされる撮像画像などを示している。
【0038】
なお、この喫食管理処理の前提として、既に画像データベース11には、ユーザが喫食した料理を撮像して得られた複数の撮像画像(撮像画像群)が保持されているものとする。
【0039】
ステップS1において、重複画像除去部12は、画像データベース11から、例えば図4Aに示されるような撮像画像群を取得する。ステップS2において、重複画像除去部12の料理切出し部21は、撮像画像群の各撮像画像から料理毎の領域を切出すことによって、図4Bに示すような料理画像を生成する。
【0040】
ステップS3において、同一料理判定部22は、全ての料理画像について他の料理画像とのペアを設定する。ステップS4において、同一料理判定部22は、各ペアを成す2枚の料理画像について同一被写体(料理)であるか否かを判定し、ステップS5において、全てのペアに対する判定結果に基づいて、図4Cに示すように、同一被写体が写っている料理画像をグルーピングする。
【0041】
ステップS6において、画像選択部23は、各グループについて、グループに属する複数の料理画像の中から1枚の代表料理画像を選択する。ステップS7において、栄養判定部13は、料理画像の各グループからそれぞれ選択された料理画像について画像解析を行い、その解析結果に基づいて料理と量を特定する。さらに、栄養判定部13は、予め保持する料理とカロリーおよび栄養価などの対応表に基づいて、特定した料理のカロリー、栄養価などを判定する。
【0042】
ステップS8において、提示部14は、栄養判定部13による判定結果に基づき、ユーザの喫食情報としてユーザに提示する。具体的には、例えば、図5に示すように、処理対象とした撮像画像の一覧を表示したり、図6に示されるように、一日間で喫食した料理の料理画像を一覧表示したり、図7に示されるように、1ヶ月間毎日の摂取カロリーを一覧表示したり、図8に示されるように、1ヶ月間に摂取した料理の栄養バランスを表示したりする。なお、一覧表示される単位期間は、1日間、1週間、1ヶ月間など任意に変更が可能である。また、栄養バランスについては、図示するビタミン、タンパク質、炭水化物、脂質、ミネラル以外の要素を含めてもよい。また、主食、主菜、副菜、乳製品、果物などに分類して表示するようにしてもよい。
【0043】
以上で、第1の喫食管理処理の説明を終了する。
【0044】
なお、第1の喫食管理処理においては、撮像画像から直ちに料理画像を切出すようにしていたが、類似した撮像画像をグルーピングして1枚を選択し、選択した撮像画像から料理画像を切出すようにしてもよい。
【0045】
図9は、第1の喫食管理処理を上述したように変更した第2の喫食管理処理を説明するフローチャートである。
【0046】
第2の喫食管理処理においても、前提として、既に画像データベース11には、ユーザが喫食した料理を撮像して得られた複数の撮像画像(撮像画像群)が保持されているものとする。
【0047】
ステップS11において、重複画像除去部12は、画像データベース11から、例えば図4Aに示されるような撮像画像群を取得する。ステップS12において、重複画像除去部12の同一料理判定部22は、撮像画像群の各撮像画像を、類似したものが同じグループに属するようにグルーピングを行う。ステップS13において、画像選択部23は、撮像画像の各グループについて、グループに属する複数の撮像画像の中から1枚を選択しての頃を廃棄する。この選択は、上述した第1の喫食管理処理のステップS6における選択と同様の基準で判断される。
【0048】
ステップS14乃至S20については、上述した第1の喫食管理処理のステップS2乃至S8と同様なので、その説明は省略する。以上に説明した第2の喫食管理処理によれば、料理画像を切出す前段において撮像画像の数を削減することができる。
【0049】
[変形例]
ところで、図1に示された喫食管理システム10の構成例においては、その構成要素の配置について言及していないが、各構成要素を離散的に配置するようにしてもよい。
【0050】
図10乃至図13は、喫食管理システム10の構成要素を離散的に配置した例を示している。
【0051】
図10の場合、インターネットを介して接続されるユーザ端末30とサーバ40により喫食管理システム10を構成し、ユーザ端末30に画像データベース11、および重複画像除去部12を設け、サーバ40に栄養判定部13、および提示部14を設けている。
【0052】
図11の場合、インターネットを介して接続されるユーザ端末30とサーバ40により喫食管理システム10を構成し、ユーザ端末30に画像データベース11、重複画像除去部12、および提示部14を設け、サーバ40に栄養判定部13を設けている。
【0053】
図12の場合、インターネットを介して接続されるユーザ端末30とサーバ40により喫食管理システム10を構成し、インターネット上に画像データベース11を設け、ユーザ端末30に重複画像除去部12、および提示部14を設け、サーバ40に栄養判定部13を設けている。
【0054】
図13の場合、インターネットを介して接続されるユーザ端末30とサーバ40により喫食管理システム10を構成し、ユーザ端末30に撮像部51、および提示部14を設け、サーバ40に重複画像除去部12、および栄養判定部13を設けている。
【0055】
図13に示されたように、ユーザ端末30に撮像部51を設けることにより、画像データベース11を省略できるとともに、食事中の料理を随時撮像してリアルタイムに解析し、摂取カロリーや栄養バランスなどをユーザに提示することができるリアルタイム喫食管理処理が可能となる。
【0056】
図14は、図13に示された喫食管理システム10によるリアルタイム喫食管理処理を説明するフローチャートである。
【0057】
このリアルタイム喫食管理処理は、ユーザの食事と並行して実行されることを想定しており、ユーザ端末30に対する所定の捜査に対応して開始される。ユーザはユーザ端末30の撮像部51を利用して、喫食する料理を撮像し、撮像された画像(撮像画像)はインターネットを介してサーバ50に送信されるものとする。
【0058】
ステップS31において、サーバ50の重複画像除去部12は、ユーザ端末30から撮像画像が送信されるまで待機し、送信された場合、処理をステップS32に進める。ステップS32において、重複画像除去部12の料理切出し部21は、撮像画像から料理毎の領域を切出すことによって料理画像を生成する。
【0059】
ステップS33において、同一料理判定部22は、ステップS32で切出された各料理画像について、その被写体(料理)が既に栄養判定済みの料理画像と同一であるか否かを判定し、ステップS34において、その判定結果をユーザ端末30に通知する。ユーザ端末30の提示部14は、撮像画像から切出された料理画像の被写体(料理)が既に栄養判定済みの料理画像と同一であるか否かの判定結果をユーザに提示する。ステップS35において、ユーザ端末30の提示部14は、この提示に対するユーザからの修正操作を受け付けてサーバ50に通知する。例えば、同じ料理を追加注文して2回以上食べたような場合、既に栄養判定済みの料理画像と同一であると判定されるが、そのときには、ユーザは既に栄養判定済みの料理画像とは異なると判定結果を修正するようにする。
【0060】
ステップS36において、栄養判定部13は、栄養判定を行っていないと判定された料理画像について画像解析を行い、その解析結果に基づいて料理と量を特定する。さらに、栄養判定部13は、予め保持する料理とカロリーおよび栄養価などの対応表に基づいて、特定した料理のカロリー、栄養価などを判定する。
【0061】
ステップS37において、栄養判定部13は、栄養判定済みの料理画像を同一料理判定部22に通知する。これにより、栄養判定済みの料理画像が同一料理判定部22に登録されて、次回以降のステップS33の処理で、切出された料理画像と比較されることになる。
【0062】
ステップS38において、栄養判定部13は、栄養判定結果をユーザ端末30に通知する。この通知に応じ、ユーザ端末30の提示部14は、栄養判定部13による判定結果に基づき、ユーザの喫食情報としてユーザに提示する。
【0063】
ステップS39において、ユーザ端末30の提示部14は、リアルタイム喫食管理処理を終了するか否かをユーザに選択させる。ここで、終了が選択されない場合、処理はステップS31に戻されてそれ以降が繰り返される。終了が選択された場合、当該リアルタイム喫食管理処理は終了される。
【0064】
以上説明したように、リアルタイム喫食管理処理によれば、ユーザは食事中の料理について累積されてゆく摂取カロリー、栄養バランスなどをリアルタイムに把握することができる。
【0065】
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0066】
図15は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【0067】
このコンピュータ100において、CPU(Central Processing Unit)101,ROM(Read Only Memory)102,RAM(Random Access Memory)103は、バス104により相互に接続されている。
【0068】
バス104には、さらに、入出力インタフェース105が接続されている。入出力インタフェース105には、キーボード、マウス、マイクロホンなどよりなる入力部106、ディスプレイ、スピーカなどよりなる出力部107、ハードディスクや不揮発性のメモリなどよりなる記憶部108、ネットワークインタフェースなどよりなる通信部109、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア111を駆動するドライブ110が接続されている。
【0069】
以上のように構成されるコンピュータ100では、CPU101が、例えば、記憶部108に記憶されているプログラムを、入出力インタフェース105およびバス104を介して、RAM103にロードして実行することにより、上述した一連の処理が行われる。
【0070】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであってもよいし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであってもよい。
【0071】
また、プログラムは、1台のコンピュータにより処理されるものであってもよいし、複数のコンピュータによって分散処理されるものであってもよい。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであってもよい。
【0072】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0073】
なお、本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【0074】
10 喫食管理システム, 11 画像データベース, 12 重複画像除去部, 13 栄養判定部, 14 提示部, 21 料理切出し部, 22 同一料理判定部, 23 画像選択部, 24 操作入力部, 30 ユーザ端末, 50 サーバ, 51 撮像装置, 100 コンピュータ, 101 CPU

【特許請求の範囲】
【請求項1】
料理を被写体として撮像された撮像画像における各料理の領域を切出すことにより料理画像を生成する切出し部と、
生成された前記料理画像を同一被写体毎にグルーピングするグルーピング部と
を含む情報処理装置。
【請求項2】
同一被写体毎にグルーピングされた前記料理画像の各グループから代表料理画像を選択する選択部と、
選択された前記代表料理画像を解析し、解析結果に基づいて前記代表料理画像の被写体である料理のカロリーまたは栄養バランスの少なくとも一方を判定する栄養判定部と、
前記栄養判定部の判定結果をユーザに提示する提示部と
をさらに含む情報処理装置。
【請求項3】
前記選択部は、同一被写体毎にグルーピングされた前記料理画像の各グループから、前記栄養判定部による判定に適した前記代表料理画像を選択する
請求項2に記載の情報処理装置。
【請求項4】
前記選択部は、ユーザからの操作に従い、同一被写体毎にグルーピングされた前記料理画像の各グループから前記代表料理画像を選択する
請求項2に記載の情報処理装置。
【請求項5】
グルーピング部は、生成された全ての前記料理画像に対してペアを設定し、前記ペアを成す2枚の料理画像の被写体が同一であるか否かの判定結果に基づいて、前記料理画像を同一被写体毎にグルーピングする
請求項2に記載の情報処理装置。
【請求項6】
グルーピング部は、生成された全ての前記料理画像に対してペアを設定し、前記ペアを成す2枚の料理画像の撮像日時または撮像位置が所定の閾値を越える場合、前記2枚の料理画像の被写体は同一ではないと判定する
請求項5に記載の情報処理装置。
【請求項7】
前記切出し部は、前記撮像画像における各料理が盛り付けられている食器の領域を切出すことにより前記料理画像を生成する
請求項2に記載の情報処理装置。
【請求項8】
料理を被写体として撮像することにより前記撮像画像を生成する撮像部を
さらに含む請求項2に記載の情報処理装置。
【請求項9】
情報処理装置の情報処理方法において、
情報処理装置による、
料理を被写体として撮像された撮像画像における各料理の領域を切出すことにより料理画像を生成する切出しステップと、
生成された前記料理画像を同一被写体毎にグルーピングするグルーピングステップと
を含む情報処理方法。
【請求項10】
コンピュータを、
料理を被写体として撮像された撮像画像における各料理の領域を切出すことにより料理画像を生成する切出し部と、
生成された前記料理画像を同一被写体毎にグルーピングするグルーピング部と
して機能させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2013−25728(P2013−25728A)
【公開日】平成25年2月4日(2013.2.4)
【国際特許分類】
【出願番号】特願2011−162790(P2011−162790)
【出願日】平成23年7月26日(2011.7.26)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】