説明

食事画像解析方法、食事画像解析プログラムおよび食事画像解析装置

【課題】食事のバランスを容易にユーザに把握させることを課題とする。
【解決手段】食事画像解析装置10の取得部13aは、食事画像を取得する。そして、抽出部13bは、食事画像から器の位置を検出し、食事部分のみを抽出する。続いて、作成部13cは、食材画像の画素値を色ごとに分類し、食材画像の色頻度分布を作成する。そして、色算出部13dは、色種類数および色割合を算出する。続いて、スコア算出部13eは、色種類数および色割合に基づいて、スコアを算出する。その後、出力部12は、算出されたスコアを出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、食事画像解析方法、食事画像解析プログラムおよび食事画像解析装置に関する。
【背景技術】
【0002】
従来から、様々な色の食材を摂取することでバランスが良い食事をとることができるということが知られている。そして、栄養士等が様々な色を含むバランスの良い食生活を促すなどの栄養指導を行っている。
【0003】
また、栄養管理のために、ユーザが摂取した食事の画像を解析することで、ユーザが摂取した食事の量を計測する技術がある。さらに、食事画像から、栄養バランスの一つの指標である食事バランスガイドに沿って、主食、副食などのグループをバランスよく摂取しているか判定する技術がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−204105号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記した従来の技術では、食事のバランスをユーザが把握するのが容易でないという課題があった。つまり、ユーザが摂取した食事の量を計測する技術では、ユーザの食事による摂取量を計測するが、食事のバランスを把握することができない。また、主食、副食などのグループをバランスよく摂取しているか判定する技術では、主食、副食などのグループをバランスよく摂取しているかを把握することができるが、様々な色の食材を摂取しているか判定することができない。
【0006】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、食事のバランスを容易にユーザに把握させることを目的とする。
【課題を解決するための手段】
【0007】
上述した課題を解決し、目的を達成するため、この食事画像解析方法は、記憶領域に記憶された画像を取得し、取得した画像に含まれる食事部分を特定し、特定した食事部分に含まれる複数の画素各々の値に基づいて、該複数の画素の色頻度分布を作成し、作成した色頻度分布に基づいて、食事部分に含まれる色種類数を算出し、算出した色種類数に基づき、食事バランス数値を算出し、算出した食事バランス数値を出力する。
【発明の効果】
【0008】
開示の方法は、食事のバランスを容易にユーザに把握させることができる。
【図面の簡単な説明】
【0009】
【図1】図1は、実施例1に係る食事画像解析装置の機能的構成を示すブロック図である。
【図2】図2は、食事画像の例を示す図である。
【図3】図3は、登録された器の形状の例を示す図である。
【図4】図4は、食材の位置を特定した結果を示す図である。
【図5】図5は、消失点について説明する図である。
【図6】図6は、登録された器の形状を消失点に向かう線に合わせて変換する処理を説明する図である。
【図7】図7は、食材画像の抽出処理を説明する図である。
【図8】図8は、食材画像の色頻度分布を説明する図である。
【図9】図9は、器の数とサイズから量を推定する処理を説明する図である。
【図10】図10は、食事バランスに関する情報の一例を示す図である。
【図11】図11は、実施例1に係る食事画像解析装置の処理動作を示すフローチャートである。
【図12】図12は、食事画像解析プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【0010】
以下に添付図面を参照して、この発明に係る食事画像解析方法、食事画像解析プログラムおよび食事画像解析装置の実施例を詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例1】
【0011】
以下の実施例では、実施例1に係る食事画像解析装置の構成および処理の流れを順に説明し、最後に実施例1による効果を説明する。
【0012】
[食事画像解析装置の構成]
最初に、図1を用いて、食事画像解析装置の機能的構成を説明する。図1は、実施例1に係る食事画像解析装置の構成を示すブロック図である。図1に示すように、この食事画像解析装置10は、入力部11、出力部12、制御部13、記憶部14を有する。以下にこれらの各部の処理を説明する。
【0013】
入力部11は、カメラなどで撮影された、食事部分を含む食事画像などを入力するものであり、キーボードやマウスなどを有する。また、出力部12は、食事のバランスをスコア化した食事バランス数値を表示するものであり、モニタやスピーカなどを有する。
【0014】
制御部13は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。また、制御部13は取得部13a、抽出部13b、作成部13c、色算出部13dおよびスコア算出部13eを有する。なお、制御部13には、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などを適用する。
【0015】
取得部13aは、入力部11によって入力された食事部分を含む食事画像を取得する。ここで、取得部13aが取得する食事画像について図2の例を用いて説明する。図2は、食事画像の例を示す図である。例えば、図2に例示するように、取得部13aは、食事画像として、ごはん、味噌汁、魚、漬け物などの食事部分と、器や箸などの食事部分以外の部分とが映った食事画像を取得する。その後、取得部13aは、取得した食事画像を抽出部13bに通知する。
【0016】
抽出部13bは、取得部13aが取得した食事画像から食事部分を抽出する。例えば、抽出部13bは、食事画像から食器を検出し、食器の形状特徴を利用して食事部分のみを抽出する。まず、図3を用いて、食事画像に含まれる食器について説明する。食事画像に含まれる食器の形状は、様々なバリエーションがあるが、円形、楕円形、四角形のものが多い。このため、図3に例示するように、円形、楕円形、四角形などの食器の形状を、検出すべき形状として事前に登録しておく。図3は、登録された器の形状の例である。図3の例では、1番目に正方形、2番目に楕円形、3番目に長方形、4番目に円形の図形などが登録されている。
【0017】
そして、抽出部13bは、既存の技術である幾何学的ハッシングや一般化ハフ変換を用いて、食事画像中の円形、楕円形、四角形などを検出する。図4の例を挙げて説明すると、抽出部13bは、食事画像から円形の食器を3つ、長方形の食器を1つ検出している。図4は、食材の位置を特定した結果を示す図である。なお、ここで幾何学的ハッシングとは、平行移動や回転、スケールの変化に対応できる形状検出手法である。また、一般化ハフ変換とは、形状とポーズ、回転角度の組み合わせで任意の幾何学的図形を検出する手法である。
【0018】
なお、上記の抽出部13bの処理では、食事画像が斜めから撮影された場合には、食器の形状が変形して食器の形状を検出するのに不都合が発生する場合がある。このため、抽出部13bは、図5に示すように、ハフ変換により画像から直線を抽出し、平行線が交わる消失点を算出する。図5は、消失点について説明する図である。
【0019】
そして、抽出部13bは、図6に示すように、算出された消失点を利用して、事前に登録された食器の形状(図3参照)を撮影画像に合わせた形状に変形させる。そして、抽出部13bは、変形された形状を検出すべき食器の形状として食器の画像を検出することで、食事斜画像が斜めから撮影された食事画像からでも食器の形状を検出することができる。図6は、登録された器の形状を消失点に向かう線に合わせて変換する処理を説明する図である。
【0020】
食器の形状を検出した後、抽出部13bは、検出した食器の内側の画像を抽出する。図7を用いて詳しい処理を説明すると、抽出部13bは、図7に示すように、食器の形状を検出した食事画像を基に、食器の形状の外側を黒で塗りつぶしたマスク画像を作成する。そして、抽出部13bは、図7に示すように、食事画像とマスク画像とを重畳して、食事部分のみを抽出する。図7は、食材画像の抽出処理を説明する図である。その後、抽出部13bは、抽出した食事部分のデータを作成部13cに通知する。
【0021】
作成部13cは、抽出部13bによって抽出された食事部分の色頻度分布を作成する。例えば、作成部13cは、食材画像のデジタルデータからRGB値を取得し、色相(H)、彩度(S)、輝度(I)の情報に変換する。変換式の例を挙げると、作成部13cは、下記(1)式を用いて、RGB値をから色相(H)に算出する。また、作成部13cは、(2)式を用いて、RGB値をから彩度(S)に算出する。また、作成部13cは、(3)式を用いて、RGB値をから輝度(I)に変換する。
【0022】
【数1】

【0023】
【数2】

【0024】
【数3】

【0025】
そして、作成部13cは、図8に示すように、食事画像における食事部分の各画素の色を判定し、食事画像における食事部分の画素を色ごとに分類して、食事部分の色頻度分布を作成する。図8の例では、食事画像における食事部分の画素を色ごとに分類して、食事部分の色頻度分布を作成する。その後、作成部13cは、作成した色頻度分布を色情報記憶部14aに格納する。
【0026】
色算出部13dは、色情報記憶部14aに記憶された色頻度分布に基づいて、食事部分に含まれる色種類数および色割合を算出する。例えば、図8の例では、食事部分に含まれる色が緑、黄、赤、茶、白および黒(その他)であるため、色算出部13dは、色種類数「6」を算出する。
【0027】
また、色算出部13dは、食事部分の画素数に対する各色の画素数の割合である色割合を算出する。例えば、図8の例では、色算出部13dは、色頻度分布に基づいて、緑が12%、黄色が8%、赤が12%、茶が25%、白が4%、黒(その他)が39%であることを算出する。その後、色算出部13dは、算出した色種類数および色割合を色情報記憶部14aに格納する。
【0028】
スコア算出部13eは、色情報記憶部14aから色種類数および色割合を読み出し、色種類数および色割合に基づいた食事バランス数値を算出する。例えば、スコア算出部13eは、色種類数が多いほど、また、色割合が予め設定された色割合に近いほど食事バランス数値が大きくなるように、食事バランス数値を算出する。ここで、食事バランス数値(以下、スコアという)の算出方法の例について詳しく説明する。スコア算出部13eは、食事部分における各色の割合が所定の閾値より大きいかそれぞれ判定し、閾値より大きい色数と閾値より大きい色割合とを乗算してスコアを算出する。その後、スコア算出部13eは、算出したスコアを食事バランス記憶部14bに記憶する。なお、スコア算出部13eは、色種類のみに基づいて、スコアを算出してもよい。
【0029】
具体例を挙げて説明すると、例えば、閾値が10%で設定され、食事部分における各色の割合が、白60%、緑24%、赤8%、黄8%である場合に、スコア算出部13eは、閾値より大きい色が白および緑の2色であると判定する。そして、スコア算出部13eは、「2色×(0.6+0.24)=1.68」により、スコアが「1.68」であると算出する。このスコアは、値が高いほど食事のバランスが良いことを示している。例えば、1色が100%であった場合、すなわち食事のバランスが悪い場合には、「1色×1.0=1.0」により、スコアが「1.0」となり、スコアが上記の例と比較して低くなる。
【0030】
また、スコア算出部13eは、食事部分における色バランスだけでなく、食事回数、食事の時間帯、食事の量、食事場所などに応じて、スコアを増減させてもよい。以下、食事の色バランス以外のスコアの算出方法について説明する。例えば、スコア算出部13eは、一日における食事回数が3回なら3点、2回なら2点、それ以外なら1点をスコアに加算する。また、スコア算出部13eは、就寝前3時間の間の食事があった場合には、スコアから0.5点減算する。具体例を挙げると、1日3色、うち1回が就寝前であった場合には、「3食−0.5(就寝前減点)=2.5」でスコアに2.5点加算する。
【0031】
また、例えば、スコア算出部13eは、1ヶ月の食事の色のヒストグラムをとり、同じ配色(例えば、カレーなら黄色60%、白40%など)がどのくらいの割合で出現しているか、また、同じ配色が連続してないかをチェックしてポイントを増減させる。具体例を挙げると、1ヶ月に食べた食事のカラーバリエーションが10種類以上だった場合には10ポイント加算する。これにより、1ヶ月の食事における偏食の傾向をスコアに反映することができる。
【0032】
また、例えば、スコア算出部13eは、食事の量に応じて、スコアを増減させる。ここで、食事画像から食事の量を推定する方法について図9を用いて説明する。図9は、器の数とサイズから量を推定する処理を説明する図である。スコア算出部13eは、食器の数と食器のサイズにより、食事の量を算出する。ここで、図9に示すように、箸のサイズを基準にして、食器のサイズを算出する。
【0033】
つまり、食器やお盆に比べて箸のサイズは大体同じ大きさであることが多く、食器やお盆に比べてサイズの変動幅が小さい箸を基準にして箸のサイズを算出する事で、食器のサイズを適切に推定することができる。食事の量を算出した後、スコア算出部13eは、食事の量が所定の範囲内にあれば、1点加算し、食事の量が多いまたは少ないために所定の範囲外であれば、1点減算する。
【0034】
また、例えば、スコア算出部13eは、食事場所に応じて、スコアを増減させる。例えば、スコア算出部13eは、GPS(Global Positioning System)などで場所情報を取得し、自宅で食事した場合には、1点加算し、自宅以外で食事した場合には、1点減算する。
【0035】
このように、スコア算出部13eは、スコアを算出した後、出力部12を介してスコアを出力する。ここで、スコア算出部13eは、毎回の食事ごとにスコアを算出して出力してもよいし、一日ごとにスコアを算出して出力してもよいし、一ヶ月分統合してスコアを算出して出力してもよい。また、スコア算出部13eは、図10に例示するように、一日における食事時間、食事の量、色配分、場所などの情報を時間ごとに記録した一日の食事表を作成してもよい。図10は、食事バランスに関する情報の一例を示す図である。この場合に、スコア算出部13eは、スコアを出力する際に、その日一日の食事表も一緒に出力してもよい。
【0036】
記憶部14は、制御部13による各種処理に必要なデータおよびプログラムを格納する。また、記憶部14は、色情報記憶部14aおよび食事バランス記憶部14bを有する。なお、記憶部14とは、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ (flash memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。
【0037】
色情報記憶部14aは、作成部13cによって作成された色頻度分布、色算出部13dによって算出された色種類数および色割合を記憶する。食事バランス記憶部14bは、スコア算出部13eによって算出されたスコア、スコア算出部13eによって作成された一日の食事表(図10参照)を記憶する。
【0038】
[食事画像解析装置による処理]
次に、図11を用いて、実施例1に係る食事画像解析装置10による処理を説明する。図11は、実施例1に係る食事画像解析装置の処理動作を示すフローチャートである。
【0039】
図11に示すように、まず、食事画像解析装置10の取得部13aは、食事画像を取得する(ステップS101)。そして、食事画像解析装置10の抽出部13bは、食事画像から器の位置を検出し(ステップS102)、食事部分のみを抽出する(ステップS103)。例えば、抽出部13bは、既存の技術である幾何学的ハッシングや一般化ハフ変換を用いて食事画像中の円形、楕円形、四角形などを検出することで、食器の形状を検出し、検出した食器の内側の画像を食事部分として抽出する。
【0040】
続いて、食事画像解析装置10の作成部13cは、食材画像の画素値を色ごとに分類し、食材画像の色頻度分布を作成する(ステップS104)。例えば、作成部13cは、食材画像のデジタルデータからRGB値を取得し、色相(H)、彩度(S)、輝度(I)の情報に変換する。そして、作成部13cは、食事画像における食事部分の各画素の色を判定し、食事画像における食事部分の画素を色ごとに分類して、食事部分の色頻度分布を作成する。
【0041】
そして、食事画像解析装置10の色算出部13dは、色種類数および色割合を算出する(ステップS105)。続いて、食事画像解析装置10のスコア算出部13eは、色種類数および色割合に基づいて、スコアを算出する(ステップS106)。例えば、スコア算出部13eは、食事部分における各色の割合が所定の閾値より大きいかそれぞれ判定し、閾値より大きい色数と閾値より大きい色割合とを乗算してスコアを算出する。その後、出力部12は、算出されたスコアを出力し(ステップS107)、処理を終了する。
【0042】
[実施例1の効果]
上述してきたように、実施例1に係る食事画像解析装置10は、食事画像を取得し、取得した画像から食事部分を抽出し、食事部分の色頻度分布を作成する。そして、色頻度分布に基づいて、食事部分に含まれる色種類数および色割合を算出し、色種類数および色割合に基づいたスコアを算出し、スコアを出力する。このため、食事のバランスを容易にユーザに把握させることが可能である。
【0043】
また、実施例1に係る食事画像解析装置10は、色種類数が多いほど、また、色割合が予め設定された色割合に近いほど食事バランス数値が大きくなるように、スコアを算出する。このため、食事バランスを示すスコアをより精度よく算出することが可能である。
【0044】
また、実施例1に係る食事画像解析装置10は、食事回数、食事の時間帯、食事の量、食事場所に応じて、スコアを増減するので、食事バランスを示すスコアをより精度よく算出することが可能である。
【0045】
また、実施例1に係る食事画像解析装置10は、所定期間内における食事バランス数値を統合して算出し、算出した所定期間における食事バランス数値を出力するので、長期的な食事のバランスを容易にユーザに把握させることが可能である。
【実施例2】
【0046】
さて、これまで実施例1について説明したが、上述した実施例1以外にも、種々の異なる形態が実施されてもよい。そこで、以下では実施例2として本実施例に含まれる他の実施例を説明する。
【0047】
(1)システム構成等
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、取得部13aと抽出部13bを統合してもよい。
【0048】
(2)プログラム
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをコンピュータで実行することによって実現することができる。そこで、以下では、図12を用いて、上記の実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図12は、食事画像解析プログラムを実行するコンピュータを示す図である。
【0049】
図12に示すように、食事画像解析装置としてのコンピュータ600は、HDD610、RAM620、ROM630およびCPU640をバス650で接続して構成される。
【0050】
そして、ROM630には、上記の実施例と同様の機能を発揮する食事画像解析プログラム、つまり、図12に示すように、取得プログラム631、抽出プログラム632、作成プログラム633、色算出プログラム634およびスコア算出プログラム635が予め記憶されている。なお、プログラム631〜635については、図1に示した食事画像解析装置10の各構成要素と同様、適宜統合または分散してもよい。
【0051】
そして、CPU640が、これらのプログラム631〜635をROM630から読み出して実行することで、図12に示すように、各プログラム631〜635は、取得プロセス641、抽出プロセス642、作成プロセス643、色算出プロセス644およびスコア算出プロセス645として機能するようになる。
【0052】
また、HDD610には、図12に示すように、色データ611およびスコアデータ612が設けられる。そして、CPU640は、色データ611およびスコアデータ612に対してデータを登録するとともに、色データ611およびスコアデータ612を読み出してRAM620に格納し、RAM620に格納されたデータに基づいて処理を実行する。
【符号の説明】
【0053】
10 食事画像解析装置
11 入力部
12 出力部
13 制御部
13a 取得部
13b 抽出部
13c 作成部
13d 色算出部
13e スコア算出部
14 記憶部
14a 色情報記憶部
14b 食事バランス記憶部

【特許請求の範囲】
【請求項1】
コンピュータが、
記憶領域に記憶された画像を取得し、
取得した前記画像に含まれる食事部分を特定し、
特定した前記食事部分に含まれる複数の画素各々の値に基づいて、該複数の画素の色頻度分布を作成し、
作成した前記色頻度分布に基づいて、前記食事部分に含まれる色種類数を算出し、
算出した前記色種類数に基づき、食事バランス数値を算出し、
算出した食事バランス数値を出力することを特徴とする食事画像解析方法。
【請求項2】
前記コンピュータは、さらに、
前記色頻度分布に基づいて、前記食事部分に含まれる色の割合を算出し、
前記食事バランス数値を算出する処理において、
さらに、前記色の割合に基づいて、該食事バランス数値を算出することを特徴とする請求項1記載の食事画像解析方法。
【請求項3】
前記色種類数が多いほど、また、前記色割合が予め設定された色割合に近いほど前記食事バランス数値が大きくなるように、前記食事バランス数値を算出することを特徴とする請求項2記載の食事画像解析方法。
【請求項4】
食事回数、食事の時間帯、食事の量、食事場所に応じて、前記食事バランス数値を増減することを特徴とする請求項1〜3のいずれか一つに記載の食事画像解析方法。
【請求項5】
所定期間内における前記食事バランス数値を統合して算出し、
算出した所定期間における前記食事バランス数値を出力することを特徴とする請求項1〜4のいずれか一つに記載の食事画像解析方法。
【請求項6】
取得した前記画像から食器を検出し、検出した食器の内側の画像を食事部分として特定することを特徴とする請求項1〜5のいずれか一つに記載の食事画像解析方法。
【請求項7】
コンピュータに、
記憶領域に記憶された画像を取得し、
取得した前記画像に含まれる食事部分を特定し、
特定した前記食事部分に含まれる複数の画素各々の値に基づいて、該複数の画素の色頻度分布を作成し、
作成した前記色頻度分布に基づいて、前記食事部分に含まれる色種類数を算出し、
算出した前記色種類数に基づき、食事バランス数値を算出し、
算出した食事バランス数値を出力する
処理を実行させる食事画像解析プログラム。
【請求項8】
記憶領域に記憶された画像を取得する取得部と、
前記取得部によって画像に含まれる食事部分を特定する特定部と、
前記特定部によって特定された食事部分に含まれる複数の画素各々の値に基づいて、該複数の画素の色頻度分布を作成する作成部と、
前記作成部によって作成された色頻度分布に基づいて、前記食事部分に含まれる色種類数を算出する色算出部と、
前記色算出部によって算出された色種類数に基づき、食事バランス数値を算出するスコア算出部と、
前記スコア算出部によって算出された食事バランス数値を出力する出力部と、
を有することを特徴とする食事画像解析装置。

【図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